(57)【要約】      （修正有）【課題】Conditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置において、学習精度を向上させ、モデル性能の向上を図る。【解決手段】複数のシンボル系列の素性ベクトルと、対応する正解シンボル系列の素性ベクトルと、各シンボル系列のシンボル系列重みとからなるリストの集合を学習データとして取り込むリスト入力部１１と、目的関数のパラメータ初期化部２１と、パラメータと素性ベクトルの内積により線形スコアを算出し、その線形スコアとシンボル系列重みから指数スコアを算出するリスト内処理部２２と、リスト内処理部２２で算出された全ての指数スコア及び素性ベクトルを用いて目的関数及びその傾きを算出する目的関数算出部２３と、前記傾きから目的関数の収束を判定する収束判定部２４と、パラメータを更新するパラメータ更新部２５とを備える。【選択図】図３
2011039785.tif 000002
【特許請求の範囲】
【請求項１】
Conditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置であって、
複数のシンボル系列の素性ベクトルと、それに対応する正解シンボル系列の素性ベクトルと、それら各シンボル系列のシンボル系列重みとからなるリストの集合を学習データとして取り込むリスト入力部と、
目的関数のパラメータを初期化するパラメータ初期化部と、
前記パラメータと前記素性ベクトルとの内積により線形スコアを算出し、その線形スコアと前記シンボル系列重みとから重み付けされた指数スコアを前記各シンボル系列に対して算出するリスト内処理部と、
前記リスト内処理部で算出された全ての指数スコア及び前記素性ベクトルを用いて前記目的関数及びその傾きを算出する目的関数算出部と、
前記傾きから前記目的関数の収束を判定する収束判定部と、
前記パラメータを更新するパラメータ更新部とを備えることを特徴とする学習装置。
【請求項２】
請求項１記載のConditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置において、
前記リスト内処理部は、前記線形スコアを算出する線形スコア算出部と、その線形スコア算出部で算出された線形スコアから指数スコアを算出する指数スコア算出部と、その指数スコア算出部で算出された指数スコアに前記シンボル系列重みを乗算して前記重み付けされた指数スコアを算出する重み乗算部とよりなることを特徴とする学習装置。
【請求項３】
請求項１記載のConditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置において、
前記リスト内処理部は、前記線形スコアを算出する線形スコア算出部と、その線形スコア算出部で算出された線形スコアに前記シンボル系列重みを加算して重み付けされた線形スコアを算出する重み加算部と、その重み加算部で算出された重み付けされた線形スコアから前記重み付けされた指数スコアを算出する指数スコア算出部とよりなることを特徴とする学習装置。
【請求項４】
Conditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置におけるパラメータ学習方法であって、
複数のシンボル系列の素性ベクトルと、それに対応する正解シンボル系列の素性ベクトルと、それら各シンボル系列のシンボル系列重みとからなるリストの集合を学習データとして取り込むリスト入力過程と、
目的関数のパラメータを初期化するパラメータ初期化過程と、
前記パラメータと前記素性ベクトルとの内積により線形スコアを算出し、その線形スコアと前記シンボル系列重みとから重み付けされた指数スコアを前記各シンボル系列に対して算出するリスト内処理過程と、
前記リスト内処理過程で算出された全ての指数スコア及び前記素性ベクトルを用いて前記目的関数及びその傾きを算出する目的関数算出過程と、
前記傾きから前記目的関数の収束を判定する収束判定過程と、
前記パラメータを更新するパラメータ更新過程とを含むことを特徴とするパラメータ学習方法。
【請求項５】
請求項４記載のConditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置におけるパラメータ学習方法において、
前記リスト内処理過程は、前記線形スコアを算出する線形スコア算出過程と、その線形スコア算出過程で算出された線形スコアから指数スコアを算出する指数スコア算出過程と、その指数スコア算出過程で算出された指数スコアに前記シンボル系列重みを乗算して前記重み付けされた指数スコアを算出する重み乗算過程とよりなることを特徴とするパラメータ学習方法。
【請求項６】
請求項４記載のConditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置におけるパラメータ学習方法において、
前記リスト内処理過程は、前記線形スコアを算出する線形スコア算出過程と、その線形スコア算出過程で算出された線形スコアに前記シンボル系列重みを加算して重み付けされた線形スコアを算出する重み加算過程と、その重み加算過程で算出された重み付けされた線形スコアから前記重み付けされた指数スコアを算出する指数スコア算出過程とよりなることを特徴とするパラメータ学習方法。
【請求項７】
請求項１乃至３のいずれかに記載のConditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置としてコンピュータを機能させるためのパラメータ学習プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は機械学習分野におけるConditional Random Fields（条件付確率場）やGlobal Conditional Log-linear Modelsに関し、特にそのパラメータの学習に関する。
【背景技術】
【０００２】
Conditional Random Fields（条件付確率場：ＣＲＦｓ）やGlobal Conditional Log-linear Models（ＧＣＬＭｓ）はシンボル系列の中から最も妥当と予測されるシンボル系列を決定するための学習機械（学習装置）である。用途は自然言語処理分野だけでもラベリング、形態系解析、音声認識や機械翻訳での誤り訂正など多岐に渡る。同様の用途に適用可能な学習機械もいくつか存在するが、ＣＲＦｓやＧＣＬＭｓは目的関数の凹性に基づく最適解への収束の保証などの利点を有しており、かつ最も精度の高いモデルを生成する学習機械のひとつとして挙げられる。
【０００３】
非特許文献１にはＣＲＦｓを日本語形態素解析に適用した例が記載されており、また非特許文献２にはＧＣＬＭｓを音声認識の誤り訂正言語モデルに適用した例が記載されている。いずれも代替手法に比較し、高精度なモデル生成を実現している。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】工藤拓、山本薫、松本裕治，「Conditional Random Fieldsを用いた日本語形態素解析」，情報処理学会研究報告 2004-NL-161，Vol.2004，No.47，pp.89-96(2004)
【非特許文献２】Roark B., Saraclar M. and Collins M.「Discriminative n-gram language modeling」，Computer Speech and Language，Vol.21，No.2，pp.373-392(2007)
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、シンボル系列の中から最も妥当と予測されるシンボル系列を決定するための学習機械を使用する場合、学習データを利用して事前にモデル学習（モデルのパラメータ学習）を行う必要がある。学習データは複数のシンボル系列と、それに対応する正解シンボル系列の組からなるリストを大量に集めたものである。しかし、場合により、各シンボル系列のシンボル系列重み（重要度）が与えられる場合がある。
【０００６】
例えば、音声認識の誤り訂正言語モデルにおいて、正解単語列と対応するリスト内のシンボル系列の単語誤り率をシンボル系列重みとして与えることが下記参考文献に記載されている。
参考文献：小林彰夫、他５名，「単語ラティスの識別的スコアリングによる音声認識」            ，秋季音響学会講演論文集，pp.233-234(2007)
シンボル系列重みは人為的に与えられたモデル学習を助ける補助情報であるため、これを用いて学習を行うことは高精度なモデルの生成に繋がる。そのため、シンボル系列重みが与えられている場合にはシンボル系列重みを扱う枠組みを持つ学習機械を選択する必要がある。
【０００７】
しかるに、従来のConditional Random Fields（ＣＲＦｓ）やGlobal Conditional Log-linear Models（ＧＣＬＭｓ）はシンボル系列重みを扱う枠組みを持たない学習機械であった。
【０００８】
この発明の目的はこのような状況に鑑み、Conditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置において、シンボル系列重みを扱う枠組みを持つようにした学習装置及びそのパラメータ学習方法、プログラムを提供することにある。
【課題を解決するための手段】
【０００９】
この発明によれば、Conditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置は、複数のシンボル系列の素性ベクトルと、それに対応する正解シンボル系列の素性ベクトルと、それら各シンボル系列のシンボル系列重みとからなるリストの集合を学習データとして取り込むリスト入力部と、目的関数のパラメータを初期化するパラメータ初期化部と、前記パラメータと前記素性ベクトルとの内積により線形スコアを算出し、その線形スコアと前記シンボル系列重みとから重み付けされた指数スコアを前記各シンボル系列に対して算出するリスト内処理部と、リスト内処理部で算出された全ての指数スコア及び前記素性ベクトルを用いて前記目的関数及びその傾きを算出する目的関数算出部と、前記傾きから前記目的関数の収束を判定する収束判定部と、前記パラメータを更新するパラメータ更新部とを備える。
【００１０】
上記構成において、リスト内処理部は、好ましくは前記線形スコアを算出する線形スコア算出部と、その線形スコア算出部で算出された線形スコアから指数スコアを算出する指数スコア算出部と、その指数スコア算出部で算出された指数スコアに前記シンボル系列重みを乗算して前記重み付けされた指数スコアを算出する重み乗算部とよりなるものとされる。
【００１１】
さらに、リスト内処理部は、前記線形スコアを算出する線形スコア算出部と、その線形スコア算出部で算出された線形スコアに前記シンボル系列重みを加算して重み付けされた線形スコアを算出する重み加算部と、その重み加算部で算出された重み付けされた線形スコアから前記重み付けされた指数スコアを算出する指数スコア算出部とよりなるものとしてもよい。
【００１２】
この発明によるConditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置におけるパラメータ学習方法は、複数のシンボル系列の素性ベクトルと、それに対応する正解シンボル系列の素性ベクトルと、それら各シンボル系列のシンボル系列重みとからなるリストの集合を学習データとして取り込むリスト入力過程と、目的関数のパラメータを初期化するパラメータ初期化過程と、前記パラメータと前記素性ベクトルとの内積により線形スコアを算出し、その線形スコアと前記シンボル系列重みとから重み付けされた指数スコアを前記各シンボル系列に対して算出するリスト内処理過程と、リスト内処理過程で算出された全ての指数スコア及び前記素性ベクトルを用いて前記目的関数及びその傾きを算出する目的関数算出過程と、前記傾きから前記目的関数の収束を判定する収束判定過程と、前記パラメータを更新するパラメータ更新過程とを含む。
【００１３】
上記において、リスト内処理過程は、好ましくは前記線形スコアを算出する線形スコア算出過程と、その線形スコア算出過程で算出された線形スコアから指数スコアを算出する指数スコア算出過程と、その指数スコア算出過程で算出された指数スコアに前記シンボル系列重みを乗算して前記重み付けされた指数スコアを算出する重み乗算過程とよりなるものとされる。
【００１４】
さらに、リスト内処理過程は、前記線形スコアを算出する線形スコア算出過程と、その線形スコア算出過程で算出された線形スコアに前記シンボル系列重みを加算して重み付けされた線形スコアを算出する重み加算過程と、その重み加算過程で算出された重み付けされた線形スコアから前記重み付けされた指数スコアを算出する指数スコア算出過程とよりなるものとしてもよい。
【発明の効果】
【００１５】
この発明によれば、最適解への収束を保証したConditional Random FieldsもしくはGlobal Conditional Log-linear Modelsを用いる学習装置において、シンボル系列重みを扱う枠組みを持つ学習装置及びそのパラメータ学習方法を実現することができる。
【００１６】
よって、この発明によればシンボル系列重みなしの学習に比べ、学習精度を向上させることができ、モデル性能の向上を図ることができる。
【図面の簡単な説明】
【００１７】
【図１】ＣＲＦｓやＧＣＬＭｓを用いる既存の学習装置の機能構成例を示すブロック図。
【図２】図１に示した学習装置におけるパラメータ学習方法の手順を説明するためのフローチャート。
【図３】この発明によるＣＲＦｓやＧＣＬＭｓを用いる学習装置の一実施例の機能構成を示すブロック図。
【図４】図３に示した学習装置におけるパラメータ学習方法の手順を説明するためのフローチャート。
【図５】この発明によるＣＲＦｓやＧＣＬＭｓを用いる学習装置の他の実施例の機能構成を示すブロック図。
【図６】図５に示した学習装置におけるパラメータ学習方法の手順を説明するためのフローチャート。
【発明を実施するための形態】
【００１８】
まず、最初に、既存のConditional Random Fields（ＣＲＦｓ）及びGlobal Conditional Log-linear Models（ＧＣＬＭｓ）について説明する。
【００１９】
条件により呼称が異なるが、これらＣＲＦｓ及びＧＣＬＭｓは共に学習データが与えられたもとで次の目的関数Ｌを最小化するパラメータ（パラメータベクトル）ｗ→を求めることで学習が達成される学習機械である。
【００２０】
【数１】
2011039785.tif 000003
【００２１】
学習において各シンボル系列は素性ベクトルにより表現されている。ｆ→i,0 はｉ番目のリスト（シンボル系列集合）の正解シンボル系列の素性ベクトルであり、ｆ→i,j はｉ番目のリストに属するｊ番目のシンボル系列の素性ベクトルである。正解はリストに含まれていてもいなくてもよい。〈ｗ→，ｆ→〉はパラメータｗ→と素性ベクトルｆ→の内積を表す。
【００２２】
式（１）を用いて学習を行うと、学習データに対しての性能は高いものの、過学習により異なるデータに対する性能の低いモデルが生成される恐れがある。これを防止するために、ＣＲＦｓおよびＧＣＬＭｓにおけるパラメータ推定は一般には下式のような正則化付きの目的関数の最小化として定式化される。
【００２３】
【数２】
2011039785.tif 000004
【００２４】
この目的関数を最小化するｗ→は準ニュートン法に基づく手法により求めることができるが、この説明は本発明の範疇外であるため、ここでは省略する。一般に、式（１）の形を持つ関数は、ｗ→に対して凹型であることが知られている。そのため、大局的最適解への収束が保証される。
【００２５】
図１は既存のＣＲＦｓやＧＣＬＭｓを用いる学習装置の基本的な機能構成例を示したものであり、学習装置はリスト入力部１１と条件入力部１２とパラメータ推定部２０とよりなり、パラメータ推定部２０はパラメータ初期化部２１とリスト内処理部２２と目的関数算出部２２と収束判定部２４とパラメータ更新部２５とによって構成されている。また、リスト内処理部２２はこの例では線形スコア算出部２２ａと指数スコア算出部２２ｂとによって構成されている。
【００２６】
図２は図１に示した学習装置におけるパラメータ学習の基本的な手順を示したものであり、以下、図１及び２を参照してパラメータ学習における各部の処理及び手順について説明する。
・リスト入力（ステップＳ１）
リスト入力部１１は複数のシンボル系列の素性ベクトルと、それに対応する正解シンボル系列の素性ベクトルとからなるリストの集合を学習データとして取り込み、全てのi,jについてｆ→i,0 及びｆ→i,j が入力される。
・パラメータ初期化（ステップＳ２）
パラメータ初期化部２１は式（２）に示した目的関数Ｌのパラメータｗ→を初期化する。
・線形スコア算出（ステップＳ３）
リスト内処理部２２の線形スコア算出部２２ａはパラメータｗ→と素性ベクトルｆ→との内積により線形スコア〈ｗ→，ｆ→〉を算出する。
・指数スコア算出（ステップＳ４）
指数スコア算出部２２ｂは線形スコア〈ｗ→，ｆ→〉から指数スコアexp（〈ｗ→，ｆ→〉）を算出する。各ｉにおいて、正解シンボル系列の指数スコアexp（〈ｗ→，ｆ→i,0 〉）を含む｛exp（〈ｗ→，ｆ→i,j 〉）｜ｊ＝０，１，…，ｎｉ｝が算出される。
・目的関数及びその傾き算出（ステップＳ５）
目的関数算出部２３はリスト内処理部２２で算出された全ての指数スコア及び素性ベクトルを用いて式（２）の目的関数Ｌ及びその傾きを算出する。傾きは、
【００２７】
【数３】
2011039785.tif 000005
【００２８】
で表される。
・収束判定（ステップＳ６）
収束判定部２４は式（３）に示した傾きから目的関数Ｌの収束を判定する。
・パラメータ更新（ステップＳ７）
パラメータ更新部２５は収束判定部２４で収束未と判定された時、パラメータｗ→の更新を行う。
【００２９】
以降、最適解に収束するまでステップＳ３〜Ｓ７を繰り返し実行する。パラメータ学習は最適解への収束によって完了し、最適なパラメータｗ→が推定される。なお、収束判定条件、パラメータ更新条件、式（２）における定数Ｃ等は条件入力部１２よりパラメータ推定部２０に入力される。
【００３０】
次に、上述した既存のＣＲＦｓやＧＣＬＭｓを用いる学習装置及びそのパラメータ学習方法をベースにして、この発明の実施例を図面を参照して説明する。なお、各図において図１及び２と対応する部分には同一符号を付し、その詳細な説明を省略する。
【実施例１】
【００３１】
図３はこの発明によるＣＲＦｓやＧＣＬＭｓを用いる学習装置の実施例１の構成を示したものであり、図４は図３に示した学習装置におけるパラメータ学習の手順を示したものである。
【００３２】
この例ではリスト入力部１１には重み付きリストが入力され（ステップＳ１）、即ち入力にはシンボル系列重みが加わっており、全てのi,jについて素性ベクトルｆ→i,0  ，ｆ→i,j  及びシンボル系列重みｓi,0 ，ｓi,j が入力される。
【００３３】
リスト内処理部２２は線形スコア算出部２２ａと指数スコア算出部２２ｂと重み乗算部２２ｃとよりなり、重み乗算部２２ｃは指数スコア算出部２２ｂで算出された指数スコアexp（〈ｗ→，ｆ→〉）に対してシンボル系列重みｓを乗算し（ステップＳ１１）、重み付けされた指数スコアｓ exp（〈ｗ→，ｆ→〉）を算出する。これにより、この例ではシンボル系列重みをＣＲＦｓやＧＣＬＭｓに導入した学習装置及びその学習装置におけるパラメータ学習方法を実現することができる。
【実施例２】
【００３４】
図５はこの発明によるＣＲＦｓやＧＣＬＭｓを用いる学習装置の実施例２の構成を示したものであり、図６は図５に示した学習装置におけるパラメータ学習の手順を示したものである。
【００３５】
リスト入力部１１には実施例１と同様、重み付きリストが入力される（ステップＳ１）。
【００３６】
リスト内処理部２２はこの例では線形スコア算出部２２ａと重み加算部２２ｄと指数スコア算出部２２ｂとよりなる。重み加算部２２ｄは線形スコア算出部２２ａで算出された線形スコア〈ｗ→，ｆ→〉に対してシンボル系列重みｓを加算し（ステップＳ２１）、重み付けされた線形スコア〈ｗ→，ｆ→〉＋ｓを算出する。重み付けされた線形スコア〈ｗ→，ｆ→〉＋ｓは指数スコア算出部２２ｂに渡され、指数スコア算出部２２ｂは重み付けされた指数スコアexp（〈ｗ→，ｆ→〉＋ｓ）を算出する。これにより、この例においても実施例１と同様、シンボル系列重みをＣＲＦｓやＧＣＬＭｓに導入した学習装置及びその学習装置におけるパラメータ学習方法を実現することができる。
【００３７】
なお、上記においてリスト入力部１１に入力されるリスト（重み付きリスト）はネットワーク表現化されたものも含むものとする。
【００３８】
以下、上述した実施例１及び２におけるシンボル系列重みｓの導入（乗算，加算）が等価であること及びこの発明における目的関数Ｌも凹型であることについて説明する。
［等価な２種類のシンボル系列重みの導入］
実施例１における目的関数Ｌは次式となる。
【００３９】
【数４】
2011039785.tif 000006
【００４０】
一方、実施例２における目的関数Ｌは次式となる。
【００４１】
【数５】
2011039785.tif 000007
【００４２】
ここで、ｘ＝exp(log(x))及びexp(x)exp(y)＝exp(ｘ＋ｙ)であることを利用すると、式（４）は次式に変換できる。
【００４３】
【数６】
2011039785.tif 000008
【００４４】
式（５）と式（６）はｓがlog(ｓ)に変換されただけであることがわかる。対数は単調増加関数であるから、両者はスケーリングの違いはあれど、大きな重みを持つシンボル系列の影響力が大きくなるように設計された関数である点において共通であり、シンボル系列重みｓは役割の観点から等価な働きをしている。
［凹型な目的関数］
式（４）が凹型であることを示すために、等式変形された式（６）を用いて考える。今、ｗ→及びｆ→i,j にそれぞれ新たな要素として、ｃ及びlog(ｓi,j )を追加する。追加されたものをそれぞれＷ→及びＦ→i,j と表記する。このとき、式（６）は
【００４５】
【数７】
2011039785.tif 000009
【００４６】
となる。この式上では暗黙にｃ＝１を要請しているが、ｃも推定の対象とすると、前述した通り、この形状の関数が凹型であることは知られている。但し、Ｗ→について凹型である。ＣＲＦｓ及びＧＣＬＭｓにおける学習は目的関数のパラメータｗ→についての最小化である。従って、興味は式（７）がｗ→に関して凹型であるかどうかである。しかし、ＬがＷ→に関して凹型であるということは、あらゆるＷ→の要素ｗｋ及びｃに対して凹型であることを意味する。つまり、ｗ→に関して凹型であることは保たれる。
式（５）も同様の理由からパラメータｗ→に対して凹型であることがわかる。
【００４７】
以上説明したこの発明による学習装置及びその学習装置におけるパラメータ学習方法は、コンピュータと、コンピュータにインストールされたパラメータ学習プログラムによって実現することができる。
【００４８】
《学習により得られたモデルの使用方法》
リストから最適なシンボル系列を求める場合には、学習により得られたパラメータｗ→と各シンボル系列の素性ベクトルｆ→の内積〈ｗ→，ｆ→〉が最も大きなシンボル系列を選択する。
《検証》
日本語話し言葉コーパス（ＣＳＪ）を用い、本発明の効果を検証した。ＣＳＪは講演音声データとその書き起こしからなるデータベースである。下記の表に示したような学習用と２つの評価セットを用意した。
【００４９】
【表１】
2011039785.tif 000010
【００５０】
講演を発話単位に分割し、音声認識システムで５０００−bestリストを作成した。つまり、リストの数は発話数に一致する。そして、シンボル系列は音声認識結果であり、各リストに最大５０００のシンボル系列が存在する。素性にはｕｎｉ−，ｂｉ−，ｔｒｉ−gram boolean及び音声認識スコアを用いた。シンボル系列重み（重要度）には各シンボル系列のリスト中の順位（単語誤り率の昇順）を用いた。表中の単語誤り率は音声認識システムの出力した５０００−bestリストのうち、最も大きな認識スコアを持つ認識結果に対して算出されたものである。
【００５１】
シンボル系列を〈ｗ→，ｆ→〉の大きい順に並べ替えることにより、最終的に最も高いスコアを持つシンボル系列を新たな音声認識結果とし、その単語誤り率を比較した。即ち、モデル学習の目的は、単語誤り率の低いシンボル系列に高いスコアを与えることにある。結果は以下の通りとなった。
【００５２】
【表２】
2011039785.tif 000011
【００５３】
重み付き学習の効果でモデル性能が向上し、より低い単語誤り率を実現することができた。
【図１】
2011039785.tif 000012
【図２】
2011039785.tif 000013
【図３】
2011039785.tif 000014
【図４】
2011039785.tif 000015
【図５】
2011039785.tif 000016
【図６】
2011039785.tif 000017