JP4328362B2 - 言語解析モデル学習装置、言語解析モデル学習方法、言語解析モデル学習プログラム及びその記録媒体 - Google Patents

言語解析モデル学習装置、言語解析モデル学習方法、言語解析モデル学習プログラム及びその記録媒体 Download PDF

Info

Publication number
JP4328362B2
JP4328362B2 JP2007056109A JP2007056109A JP4328362B2 JP 4328362 B2 JP4328362 B2 JP 4328362B2 JP 2007056109 A JP2007056109 A JP 2007056109A JP 2007056109 A JP2007056109 A JP 2007056109A JP 4328362 B2 JP4328362 B2 JP 4328362B2
Authority
JP
Japan
Prior art keywords
output
probability
parameter vector
segment
learning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007056109A
Other languages
English (en)
Other versions
JP2008217592A (ja
Inventor
潤 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2007056109A priority Critical patent/JP4328362B2/ja
Publication of JP2008217592A publication Critical patent/JP2008217592A/ja
Application granted granted Critical
Publication of JP4328362B2 publication Critical patent/JP4328362B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Machine Translation (AREA)

Description

本発明は言語解析処理の技術に関し、特に対象テキストに文法的又は意味的なラベルを付与するために用いる特徴パラメタベクトルを学習データ(コーパス)から作成する技術に関する。
主に対象テキスト(以下、生テキスト)に対して、品詞の付与(専門用語でタギンク又はラベリングと呼ぶ)や、単語・文節区切り又は意味のある単語の連続の抽出(専門用語でチャンキング又はセグメンテーションと呼ぶ)を行う技術がある。
計算機上では、生テキストは、文章の先頭から末尾までの一本のストリーム(一次元上の記号列)とみなして処理されることから、テキストのラベリング及びセグメンテーションは、自然言語処理/機械学習分野の用語で系列ラベリングまたは、系列セグメンテーションという問題の種類に分類される。
このような、系列セグメンテーション及び系列ラベリングの例を図1に示す。
図1に示すように、系列ラベリングとは、入力される系列に対して、ラベルを付与する問題と定義される(ただし、系列(Sequence)とは記号の列を意味し、生テキストの場合は文字列や単語列等に相当)。また、自然言語処理分野では、単語列に対して品詞タグを付与する問題等がこれに含まれる。
また、同じく図1に示すように、系列セグメンテーションとは、入力系列に対して、部分系列単位の区分(セグメント)を求める問題と定義される。ただし、セグメントとは、一つ以上の記号の連続から成る(部分)記号列である。自然言語処理分野では、単語列に対して文節区切りを付与する問題等がこれに含まれる。
前記の系列セグメンテーションは、容易に系列ラベリングに帰着させることが可能であり、かつ、系列セグメンテーション問題を直接解くモデルを扱うよりも、系列ラベリング問題として解く方が簡単であるため、一般的には、系列ラベリングのモデルを用いて問題を解き、その後にセグメントに変換する方法が用いられる。
この系列セグメンテーションから系列ラベリングを解く方法として、「IOBラベリング法」が提案されている。このIOBラベリング法では、セグメントの開始(B)と続き(I)、及びセグメント外(O)を現すラベルB,I,Oを用いてセグメントを個々のラベルに分割・変換をおこなう。
ここで、図2はIOBラベリング法を説明する図面である。図2に示すように、セグメントの開始を示すラベルBに注目することで、容易にかつ一意にラベルからセグメントに、又はセグメントからラベルに変換することが可能となる。
このように、系列セグメンテーションの問題は、IOBラベリング法により系列ラベリングと同じ問題とみなすことが可能であるため、系列ラベリングの問題として同一のモデルを用いて解くことができる。
ここで、系列ラベリング問題で、入力系列(観測データ)をx={x,…,x}、出力系列をy={y,…,y}と表すこととする。例えば、品詞タグ付けの場合は、xは生テキストに相当し、xはi番目の単語になる。また、yは、xの生テキストに対応する品詞タグ列であり、yはi番目の単語に付与される品詞となる。ここで、図3は、品詞タグ付けの例を示す図面である。図3に示すように、「山田 太郎 は 日本 の 首相 です 。」という生テキストxに対して、各単語xについてその品詞を付与することを考える。
このとき、系列ラベリング問題では、任意の一つの出力ラベルyはその周囲のラベル(例えば、yi−1やyi+1)に依存して決定される。つまり、個々のラベルyは、入力系列xのみではなく出力系列y自身に依存して決定される変数であると言える。よって、部分的に入力系列がまったく同じであっても、周囲の推定された出力ラベルによってはまったく別のラベルが付与される可能性がある。このように出力系列y自身に相互依存性(または、相互依存構造)があるような問題を機械学習の研究分野では「構造学習問題」とよび、大まかには、局所最適解を組み合わせて解を得る古典的なモデルと、出力全体の大域的な最適解を直接学習/推定するモデルに分類することができる。それぞれの代表的なモデルとして、カスケードモデルと条件付き確率場がある。
カスケードモデルは、構造学習問題を解く古典的な方法である。従来、相互依存構造を持つ問題の大域的最適解を求めるためには、計算量が非常に大きくなるため、大域的最適解を求めることは現実的な解法ではなかった。そこで、局所最適解を組み合わせて全体の解を得る方法として、カスケードモデルが提案された。
ここで、図4は、カスケードモデルを適用した系列ラベリングの例を示す説明図である。局所最適解としては、図4に示すように、個々のラベルyを独立に学習/推定する。この個々のラベルの学習/推定は、単純な分類問題とみなすことができるので、一般的に用いられる分類問題用の機械学習手法を用いることができる。つまり、カスケードモデルでは、個々のラベルごとに問題を分割して(多クラス)分類問題として一般的な学習手法を用いて解くことができる。
一方、条件付き確率場は、従来困難とされた大域的な最適解を求めるために考案されたモデルの一つである。機械学習の分野では、カスケードモデルが示すように、従来、データ中の個々のインスタンスは独立であるという仮定で学習を行ってきた。しかし、現実のデータでは、個々のインスタンス間に複雑な依存関係がある場合が多いことが知られている。
例えば、Webのホームページのカテゴリ分類の場合は、個々のインスタンス(ホームページ)を独立に扱って分類することができるが、文中の単語に対する品詞分類では、前後の文脈の情報によって与えられるラベルは異なるという特徴を持っている。
このように依存関係がある構造の学習を行う一つの方法として、マルコフ確率場(markov random field)という方法がある。ただし、マルコフ確率場は、もともと入力と出力の同時確率(p(y,x))を求める方法として用いられるモデルであり、テキストのように、入力xが既知の場合には同時確率ではなく、条件付き確率(p(x|y))を求める方が、テキストの解析モデルを直接モデル化することになるので、解析性能が高くなることが推察できる。そこで、マルコフ確率場の枠組で、同時確率ではなく条件付き確率でも問題を解けるように改良した方法として、非特許文献1及び非特許文献2には、条件付き確率場(Conditiona1 Random Fields)が提案されている。これらの方法は、周辺の文脈に依存して出力を学習/推定するためのモデルである。
数多くの実験から、条件付き確率場のように大域的な情報を用いて最適化した方が、局所的な情報を組み上げて問題を解くカスケードモデルよりも性能がよいことが示されている。
ここで、図5は、条件付き確率場を適用した系列ラベリングの例を示す説明図である。図5に示すように、系列ラベリング問題を条件付き確率場(マルコフ確率場でも同じ)でモデル化する場合には、取り得る出力ラベル系列をあらわしたラティス状の出力候補グラフに含まれるパス中から、始端ノードから終端ノードヘの最適パス(最も確率の高いパス)を求める問題に帰着される。
なお、条件付き確率場を用いてモデルを「学習(パラメタ推定とも言う)」するとは、特徴抽出により抽出された特徴に対応したパラメタベクトルの重みを決定する作業である。
また、特徴抽出とは、一般的な機械学習問題で同じ処理であるが、入力xと出力yの関係を特徴付けるような情報を抽出する処理である。基本的に、入力xから特徴を抽出する特徴抽出関数は、対象とする問題に依存して人手で決定するのが一般的である。
ここで、図6は特徴抽出の例を示す説明図である。図6に示した例では、推定したいラベル(i=4)の前後2単語と、推定したいラベルとの組み合わせで特徴を特徴ベクトルとして抽出する。このように、系列ラベリング問題の場合は、入力xと出力yとの組合せで特徴を抽出することが一般的である。図6に示した例では、任意のラベルyを推定する際に利用する特徴(関数)として、xi−2,xi−1,x,xi+1,xi+2とyの組合せを抽出する。
パラメタベクトルの重みを決定する学習は、特徴抽出関数により抽出された個々の特徴に対応するパラメタ(ベクトル)λの値を推定する問題となる。ここで「対応する」とは、個々の特徴とパラメタベクトルの要素が一対一に対応することを意味し、特徴ベクトルとパラメタベクトルの次元数は同じとなり、またi番目の特徴はi番目のパラメタベクトルの要素で重みが決定される。
条件付き確率場は以下のように定義される。入力(観測データ)に対する確率変数をx、出力に対する確率変数をy={y,…,y}とする。ここで、確率変数yがマルコフ性を満たすとき、すなわち、p(y|x,y,…,yi−1,yi+1,…,y)=p(y|x,N(y))の条件を満たすとき、(x,y)は条件付き確率場である。ただし、N(y)は、個々確率変数y間の依存関係をグラフで表した際に接続する確率変数の集合を表す。つまり、確率変数yは、接続する確率変数N(y)およびxに依存して決まる変数である。一般的に、確率変数y間の接続を表すグラフ内のクリーク集合をcとすると、条件付き確率場は、個々のクリークのポテンシャル関数の対数線形モデルになる。
ここでは、系列ラベリング問題に特化した記述なので、系列ラベリングの場合のクリークのみを議論する。系列ラベリングの場合は、図5に示したようなラティス状の出力候補グラフを用いるので、クリークはyi−1,yのラベルペアで構成されることになる。
ここで、図7は、条件付き確率場におけるクリークを説明する図面である。クリークとは、グラフ中の部分グラフのうち、完全グラフとなるノードの集合である。図7に示すように、ラティス状の出力候補グラフにおいて、隣り合う二つのノードのみが、クリークとなる。このため、リンクで結合された全ての隣り合うノードがクリークとなる。
なお、完全グラフとは、グラフ中のノードが自身以外の全てのノードとのリンクを持つ場合をいう。
図7からもわかるように、系列ラベリングでは、一つのパス中のクリーク数は系列の長さn+1(BOS(開始)ノード,EOS(終端)ノードを含むため)となる。
このとき、条件付き確率場において、任意のクリークcでの局所的な特徴をf(y,x,i)と表し、λを特徴に対応したパラメタベクトルとする。ここで、図8は条件付き確率場におけるクリーク毎の特徴の例を示す図面である。このとき、条件付き確率場上の任意の出力yに対する条件付き確率は以下のように表すことができる。
Figure 0004328362
Figure 0004328362
数式(2)において、Zλ(x)は正規化項を意味し、全ての出力の可能性の総和である。つまり条件付き確率場での条件付き確率分布p(x|y)は、出力系列yの各地点iでの局所的な特徴f(y,x,i)の重みを指数とした値の総積を、全ての可能性の出力系列の総和で割ったものとなる。
このとき、数式(1)は、次のように書き直すことができる。
Figure 0004328362
前記の数式(3)から、一つのパス全体に対する大域的な特徴はFを用いて次のように書き表すことができる。
Figure 0004328362
つまり、系列の大域的な特徴は、各地点での局所的な特徴の総和で表されることを意味する。この大域的特徴Fに従うと、数式(1)の条件付き確率場による条件付き確率は以下のように書き直すことができる。
Figure 0004328362
Figure 0004328362
任意の出力系列yの確率は、出力候補グラフ中の出力系列が表すパス上のクリークから抽出される特徴とパラメタベクトルとの内積を、指数関数を用いて変換した値を、可能な全ての出力系列全体の値で割ったものとなる。
条件付き確率場上で、入力系列xに対して最も確率の高い出力系列
Figure 0004328362
は、次式により推定できる。
Figure 0004328362
ここで、yは入力系列xに対する出力系列の候補の集合を表す。また、数式(5)中の正規化項Zλ(x)はyに依存しない値なので、最尤出力(argmax)を得る際には影響を及ぼさないので用いる必要はない。このように、数式(7)を用いて入力系列xを条件付き確率場に与えたときに、最も確率の高い出力系列yを得ることができる。
条件付き確率場の学習では、最尤推定に基づいて学習データ
Figure 0004328362
からの学習をおこなう。
Figure 0004328362
ここで、yは正解を表す。
一般的に、確率モデルでは実用上の観点から、確率の対数(対数尤度)を最大にするように学習を行う。これは、対数をとっても、最大値をとるパラメタの値は同じになる(確率と対数尤度は比例関係にある)ため、このような変換が可能である。これを一般的に、尤度最大化(Maximum Likelihood)学習と呼び、条件付き確率場上の学習では、以下の目的関数を最大化することになる。
Figure 0004328362
目的関数である数式(9)の最適解は、目的関数のパラメタλによる微分が0になる点を探せばよい。
Figure 0004328362
ただし、
Figure 0004328362
は、大域的特徴Fの期待値を意味する。ここで用いる目的関数、数式(9)は、凸関数であるので唯一の最適解を持つ。実際の最適化には、最急降下法やニュートン法などの一般的な数値最適化アルゴリズムを用いて効率的に解くことができる。
J.Lafferty, A. MaCallum, and F.Pereira. Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data. In Proc. of ICML-2001, pages 282-289, 2001. F. Sha and F. Pereira. Shallow Parsing with Conditiona1 Random Fields. In Proc. of HLT/NACCL-2003, pages 213-220, 2003. Jun Suzuki, Erik McDermott, and Hideki Isozaki. Training Conditiona1 Random Fields with Multivariate Evaluation Measures. In Association for Computational Linguistics(ACL), pages 217-224, 2006. 磯崎秀樹 鈴木潤,誤り最小化に基づく条件付き確率場の学習:言語解析への適用,言語処理学会第12回年次大会,2006年
前記のように、一般的には、条件付き確率場では、尤度最大化学習を用いて学習(パラメタベクトルλの推定)をおこなう。しかし、非特許文献3及び非特許文献4において、条件付き確率場を尤度最大化による学習(パラメタ推定)ではなく、実際に解きたいタスクの評価指標を基準として最大化(或は最小化)する学習手法が提案されている。
条件付き確率場によって学習したモデルを実問題に用いる際の性能評価は、対象とする問題に特化した評価指標を用いて性能を評価する場合がほとんどである。しかし、尤度最大化学習は、あくまで尤度(出力確率の対数)を最大化する学習であって、学習後の対象タスクの性能を最大化することは保証していない。つまり、非特許文献3及び非特許文献4で提案されている「評価指標最大化学習」は、この学習時に最適化する目的関数と、実際にタスク評価に用いる評価指標との不整合を解消することを可能としている。
具体的な例をあげる。系列セグメンテーションでは、各セグメント単位でのF値という指標を用いて系列セグメンテーションの性能を評価する。
Figure 0004328362
数式(11)において、TP,FP,FNは、それぞれtrue positive(正例の正解数),false positive(負例の正例への間違い数),false negative(正例の負例への間違い数)のセグメント数を表す。また、γは、F値を計算する上で、再現率と適合率とのトレードオフの度合いを決定するハイパーパラメータであり、目的とするタスクに合わせて人手により設定する値である。一般的には、γ=1を用いてF値を計算する。
F値とは、主に正例・負例のように2種類の出力を前提に考えられた評価指標であり、「正例(positive)」を評価対象としたい出力のクラスとし、「負例(negative)」はそれ以外(評価対象としない)の出力のクラスとする。系列セグメンテーションの場合は、IOBラベリングのOが付与されている場合を負例と考え、それ以外のラベルを全て正例として扱う。つまり、TPやFNの最大数は正例セグメント数となり、FPは全セグメント数が最大数となる。
数式(11)と数式(9)とを比べてもわかるように、F値と系列の尤度にはある程度の相関関係はあるにせよ、比例関係のような密接な関係にあるような指標ではない。具体的な対比としては、数式(9)の右辺は、サンプル毎の尤度の総和(線形)をもちいるが、数式(11)の右辺では、単純な総和ではなく正例・負例を考慮した分数の形(非線形)の式になっている。また、数式(9)は、系列全体を一単位として評価を行っているが、数式(11)では、セグメントを一単位として評価を行っている。
このように、系列セグメンテーション問題において、尤度最大化学習によって学習を行ったとしても、解決したい問題の性能を最大にする学習をしているとは限らない。非特許文献3及び非特許文献4においては、通常の尤度最大化学習をおこなうよりも解決したい問題の評価指標を最大化する学習をおこなうことによって、さらに性能が向上することが示されている。
また、この枠組を用いることで、対象とする実問題の評価関数が「正解(又は誤り)の数」を基準として計算するような評価関数であれば、どのような評価関数であっても、条件付き確率場の学習に用いる目的関数として導入することが可能となる。つまり、一般的に用いられるような実問題の評価指標は基本的に正解(又は誤り)の数を基準として計算されるため、この枠組を用いることで、現在用いられているほとんどの評価指標を用いて条件付き確率場を学習することが可能となる。
「評価指標最大化学習」では、扱いたい評価指標によって学習時の最適化法を考案しなくてはいけない。評価指標最大化学習で、ある評価指標についての最適化法(アルゴリズムを含む)を考えるにあたり、評価指標が利用する(最小)評価単位をはじめに定義する必要がある。ここでは、系列ラベリング又はセグメンテーションを対象にしているので、評価単位としては主に(1)系列全体,(2)セグメント,(3)ラベル単体という3種類が考えられる。
基本的な手段として、評価指標最大化学習では、評価単位毎の正解出力yと正解以外の出力候補y(y≠y)の差分を用いる。そして、この評価単位毎の差分を対象とする評価指標に基づいて最大化するように学習をおこなう。つまり、最も間違えやすい出力候補と正解出力との差を扱う評価指標に基づいて、その差分を大きくするということは、最終的な評価指標を最大化することになる。
条件付き確率場で系列全体としての出力yの決定関数g()は、特徴ベクトルとパラメタベクトルの内積として次のように与えられる。
Figure 0004328362
決定関数とは、入力xとパラメタベクトルλを与えたときに、ある出力yが出力される尤度(またはスコア)を表す関数である。ただし、ここでの出力yは、評価の単位が系列全体の場合を表している。また、右辺の総和iは単一のクリーク単位での特徴ベクトルの総和を表している。このとき誤り推定関数は、決定関数を用いて次のように定義できる。
Figure 0004328362
誤り推定関数とは、学習データに付けられた正解と正解以外の出力と比較してどの程度、間違えやすいかという推定量を出力する関数である。ここでは、正解と正解以外の出力候補との差分で表す。つまり、最も間違えやすい出力候補と正解との決定関数の差分が大きければ大きい程、間違えにくいということを意味する推定量である。
最終的には、この誤り推定関数d()を用いて利用したい評価指標に基づいた目的関数を構成する。つまり、評価時の評価指標の計算を、学習時には、誤り推定関数の返す値を利用して評価指標を計算するという手順になる。ただし、数式(13)を用いる場合、誤り推定関数は[-∞,∞]の値域をとるが、実際の評価指標では[0,1]の値域のみを利用したい場合が考えられる。例えば、正解率で評価する場合は、誤りの数で評価指標が構成されているので、正解を1,誤りを0として計算したい。そこで、一般的には平滑化関数を用いて値域を変換する。平滑化関数の例として、シグモイド関数等がある。ここで、図9は、平滑化関数の例を示す図面である。図9には、平滑化関数の例として、ステップ関数、シグモイド関数及びロジステック関数をあげる。
ただし、平滑化関数は計算不能等を引き起こさないための一つの手段であり、評価指標最大化学習に必須の手法や条件というわけではない。
評価単位が系列全体に対する評価指標を扱う場合には、数式(13)のような誤り推定関数d()を用いればよい。系列全体を扱う時と同様に、セグメント単位での誤り推定関数d[i,j]()(位置i〜jまでの区間の場合)を定義すればよい。
ここで、図10は、非特許文献3及び非特許文献4に記載の誤り推定計算方法を説明する図面である。図10に記載の方法では、正解パスと正解パス以外で最も出力されやすいパスとの差分を計算し、このセグメント単位での誤り推定関数を系列全体の誤り推定関数を用いて、近似的に計算をおこなっている。
ただし、正解パス以外で最も出力されやすいパスとは、対象セグメントy間で、正解パスと一致しないパスの中から選択される。
Figure 0004328362
このように、系列全体の誤り推定関数を利用してセグメントの誤り推定関数を構成しているのは、条件付き確率場が、元来系列全体に対する尤度最大化学習という枠組を提供していることから、系列全体に対する決定関数g()や誤り推定関数d()に対する効率的な計算法が確立されていたという背景がある。また逆に、評価指標最大化学習の枠組での系列ラベリング/セグメンテーションでは、セグメント単位での誤り推定関数を厳密に計算する方法・アルゴリズムがこれまで発明されていなかったため、近似的な方法を用いていたという背景もある。つまり、非特許文献3及び非特許文献4では、条件付き確率場の学習時に用いる計算アルゴリズムとほぼ同じアルゴリズムを用いることで、セグメント単位の誤り推定関数の計算を近似的に実現していた。
しかし、一方で、従来技術のように、系列全体に対する誤り推定関数を近似的に用いると、本来最適化したいセグメント単位の評価指標を真に最大化しているという保証はない。
このことを、従来技術の問題点を説明する図面である図11を参照しつつ説明する。図11に示した出力候補グラフの対象区間[i=2,j=2]において、パス単位の値を用いた場合には、c−l−o:3.8であるCノードが出力されるが、セグメント単位の値を用いた場合には、セグメント尤度が8.8のBノードが出力されてしまう。
セグメント単位で見た場合、セグメントの出力確率と系列の出力確率に基づくセグメントの出力確率には、相関はあるが一致はしないから起こる不整合である。つまり、厳密な意味で、本来の目的である評価指標を最大化していない可能性がある。
以上の問題を解決するため、本発明は、パラメタベクトルを推定する際に、評価単位(セグメント単位、ラベル単位や系列全体の場合も含む)の誤り推定関数を厳密に求め、従来法で用いる近似的な計算法と同じ計算量で実現可能な手段を提供することを目的とする。
前記の課題を解決するためになされた本発明に係る言語解析モデル学習装置は、テキストデータに所定の分類タグを付与するために使用するパラメタベクトルを、予め分類タグが付与されたテキストデータである学習データから算出するものであって、学習データに分類タグの種類を示す出力ラベル候補を対応付けた出力候補グラフと、パラメタベクトルの初期値とを記憶した記憶部と、学習データの所定の評価単位の出現確率を、パラメタベクトルを変数として周辺確率により表す決定関数を用いて、学習データの正解の要素の出現確率と、正解の要素以外で最も出力されやすい要素の出現確率との差分を誤り推定関数として計算し、推定関数を用いて設定される目的関数を最適化するパラメタベクトルを算出するパラメタ学習部とを備えることを特徴としている。
本発明に係る言語解析モデル学習装置によると、学習データの評価単位の要素の厳密な出現確率に基づく評価指標最大化学習を行うことができる。
なお、本発明のその他の態様については、後記する最良の形態において詳しく説明する。
本発明によると、従来技術と比較して様々な点が改善される。
厳密な出現確率に基づく評価指標最適化学習を行うことが可能となるため、最適化したい評価指標の意味で最良の学習結果を得ることが可能となる。従来技術は、目的関数を評価指標に置き換えるための方法論を示したが、実際に評価単位での出力確率を求める際には、従来から用いられてきた計算アルゴリズムを流用して近似値を用いていた。このため、枠組としては、評価指標最大化を行う学習法であったが、実際には評価指標を最大化していない可能性を含んでいた。一方、本発明はその問題点を改善し、厳密な出力確率に基づいて評価指標を最適化することを可能とする。
また、評価単位の出力確率を求めることができるため、この出力結果を用いてさらに処理を行う際に、出力値を確率として扱うことが可能となる。例えば、本発明を用いた固有表現抽出を行って、それを情報検索に用いる場合、出力された固有表現がどのくらい信頼性があるかといった指標として用いることができたり、確率論に基づいた情報検索システムであれば、本発明を用いた固有表現システムをそのまま情報検索システムと結合することが可能となる。従来法では、出力値が確率の定義を満たさない可能性があるため、このような状況で、そのまま出力値を扱うことができなかった。
以下、本発明の方式を説明し、その後、その方式を適用した発明を実施するための最良の形態(以下、実施形態)について説明する。
(言語モデルの学習方法の概略)
ここで、図12は、あるセグメントの出力確率を説明する図面である。
図12に示す出力候補グラフにおいて、出力系列y中の位置iから位置jまでの間のセグメントの(部分)出力系列y[i,j]の出力確率は、周辺確率を用いて以下のように定義することができる。
Figure 0004328362
数式(15)において、
Figure 0004328362
は、セグメント[i,j]間のパスを通る全てのパスの重みの総和を表している。また、α[0,i](y)及びβ[j,n](y)は、それぞれ、前側確率及び後側確率であり、[i,j]間の周辺確率を表している。図12に示した例では、α[0,i](y)は、セグメント[0,2]の確率を、β[j,n](y)は、セグメント[4,6]の確率をそれぞれ表す。そして、前側確率は、次に示す数式(16)のように定義される。
Figure 0004328362
ただし、i=0のときは、α[0,0](y)=1とする。また、Yを単一のラベルの(とりうる全てのラベル)集合とする。同様に後側確率も、次に示す数式(17)のように定義される。
Figure 0004328362
ただし、j=nのときは、β[n,n](y)=1とする。
数式(15)の分母は、yに依存しないので、最終的にセグメント単位の出現確率を基準にしたセグメント単位の決定関数は次のように表せる。
Figure 0004328362
よって、このセグメント出現確率に基づいた決定関数を用いると、誤り推定関数d()は次のように表せる。
Figure 0004328362
ここで、図13は、図12に示す出力候補グラフにおける数式(19)の意味を説明する図面である。図13に示しように、数式(19)における−g[i,j](y,x,λ)の項は、正解セグメントの出現確率を示し、それ以下の項は、正解以外で最も出力されやすいセグメントの出現確率を示している。ただし、正解以外で最も出力されやすいセグメントとは、対象区間[2,4]間で正解セグメントと一致しないセグメントの中から選択される。
周辺確率を用いることで、系列中から対象セグメントが選択される確率を厳密に求めることが可能となる。これにより、誤り推定関数は、正解セグメントが出力される確率とそれ以外のセグメントが出力される確率との差分を利用して学習を行うことになる。
誤り推定関数として、従来技術の数式(13)と数式(19)とを比較すると、表層的には従来技術でセグメント単位の決定関数を系列全体の値で近似していたものを、セグメント単位で正確に計算した値に置き換えた形になる。ただし、決定関数として、従来技術の数式(12)と数式(18)とを比較すると、従来技術では系列の重みを用いていたのに対して、本発明では周辺確率用いたセグメントの出現確率に基づいた重みを用いているという違いがわかる。
実際の計算アルゴリズムとしては、α0,k(y)やβl,n(y)は、forward-backwardアルゴリズムを用いることにより効率的に計算することが可能である。つまり、従来技術では、Viterbiアルゴリズムを前からと後ろからの2パスで計算することで、系列全体の出力確率から対象セグメントの決定関数と誤り推定関数とを近似していたが、本発明では、その代わりにforward-backwardアルゴリズムを用いて、セグメント単位の決定関数や誤り推定関数を計算する。また、従来技術に係る2パスViterbiアルゴリズムと、本発明に係るforward-backwardアルゴリズムの計算量は全く同じになることから、本発明によると、従来技術と同じ計算量で厳密なセグメント単位の出力確率に基づいた最適化が可能となる。
(テキスト解析装置)
次に、前記の方式を適用した本発明の実施形態に係るテキスト解析装置について説明する。図14は本実施形態のテキスト解析装置のブロック構成図である。図14に示すように、テキスト解析装置1は、演算装置であるCPU(Central Processing Unit)11、後記するプログラムが展開され、一時記憶されるデータが保持されるRAM(Random Access Memory)12、外部との入出力インタフェースである入出力部13及びハードディスクドライブ等からなるストレージ14とを相互に接続して構成され、パーソナルコンピュータ等を用いて具現される。
また、テキスト解析装置1のストレージ14には、CPU11が実行することで、それぞれ学習器141、推定器142及びタグ/セグメント変換器143として動作するプログラムと、各プログラムが使用又は生成する学習データ144、パラメタベクトル145、生テキスト146、タグ付きテキスト147及びセグメント別タグ付きテキスト148とが記憶されている。
なお、各プログラムの動作及び各データの内容については後記する。また、ストレージ14に記憶された各プログラム及び各データは、コンピュータで読み取り可能な各種の記録媒体(CD−ROM等)に記憶することができる。
(テキスト解析装置の動作の概略)
次に、図15は、前記の構成を有するテキスト解析装置1の処理動作の概略を説明する説明図である。図15を参照しつつ、テキスト解析装置1の処理動作を説明する。
テキスト解析装置1の動作は、タグ付きコーパスである学習データに基づいて、パラメタベクトルを計算する学習フェーズと、計算されたパラメタベクトルを用いて生テキストにタギンク又はチャンキングを行う評価フェーズとに大きく分けられる。
図15に示すように、学習フェーズでは、学習器141が、タグ付きコーパスである学習データ144の入力を受けて、パラメタベクトル145を出力する。
そして、評価フェーズに移って、推定器142が、この出力されたパラメタベクトル145を用いて、生テキスト146に対してタギングを実行し、タグ付きテキスト147を出力する。そして、タグ/セグメント変換器143が、推定器142が出力したタグ付きテキスト147に対して、チャンキングを実行し、セグメント別タグ付きテキスト148を出力する。ここで、参考として、図16に、学習器141に入力される学習データ144及び出力されるパラメタベクトル145の例を、図17に、推定器142に入力される生テキスト146及び出力されるタグ付きテキスト147の例をそれぞれ示す。
なお、推定器142における処理は、学習器141における処理において、学習データ144の代わりに生テキスト146を入力し、パラメタベクトル145の初期値の代わりに学習器141の計算したパラメタベクトル145を入力したものであるため、その詳細な説明は省略する。また、タグ/セグメント変換器143における処理は、前記のように公知のアルゴリズムを適用することができるため、同じくその詳細な説明を省略する。
また、図15に示した動作例では、推定器142は、タギングを実行してタグ付きテキスト147を出力することとしたが、チャンキングを実行してセグメント付きテキストを出力して、タグ/セグメント変換器143において、タギングを実行してセグメント別タグ付きテキスト148を出力することにしてもよい。
(学習器の構成・動作)
次に、テキスト解析装置1の構成要素のうち、学習器141について詳しく説明する。なお、学習器141は、特許請求の範囲の言語解析モデル学習装置に相当し、学習器141における処理手順は、言語解析モデル学習方法に相当している。
ここで、図18は、学習器141の詳細ブロックを示す図面である。図18に示すように、学習器141は、出力候補グラフ生成部1411、特徴抽出部1412及びパラメタ学習部1413を備えている。
出力候補グラフ生成部1411は、学習データ144及び入出力部13から入力された出力ラベル候補に基づいて出力候補グラフを生成する。特徴抽出部1412は、入出力部13から入力された特徴抽出テンプレートを取得し、出力候補グラフ生成部1411が生成した出力候補グラフ上のクリーク単位に特徴を抽出し、パラメタベクトル145の次元数を計算し、その初期値を設定する。パラメタ学習部1413は、出力候補グラフ及び特徴抽出部1412が設定したパラメタベクトル145の初期値に基づいて、学習基準アルゴリズムにより、パラメタベクトル145を学習する。
次に、図19は、学習器141の処理手順を示すフローチャートである。図19を参照しつつ、学習器141における処理手順を詳しく説明する。なお、以下の手順において、各構成要素が生成又は計算した情報は、RAMに一時記憶されるものとし、その記載は省略する。
まず、学習器141を動作させる準備として、学習に用いる評価指標を決定(主に対象とする問題の評価指標を利用)し、この決定した評価指標に基づいて評価の(最小)単位を決定する。そして、決定した評価指標及び評価の単位に基づいて、学習に用いる目的関数を決定しておく。
そして、学習器141の動作が開始され、学習器141の出力候補グラフ生成部1411は、ストレージ14から学習データ144
Figure 0004328362
を所得して(ステップS101)、RAM12に記憶する。
次に、出力候補グラフ生成部1411は、入出力部13を介して対象とする問題に依存した出力ラベル候補集合を取得し(ステップS102)、RAM12に記憶する。そして、RAM12に記憶した学習データ及び出力ラベル候補集合に基づいて、出力候補グラフを生成する(ステップS103)。
次に、出力候補グラフ生成部1411は、特徴抽出部1412に処理を受け渡し、特徴抽出部1412は、入出力部13を介して特徴抽出テンプレートを取得し(ステップS104)、RAM12に記憶する。そして、出力候補グラフ生成部1411が生成した出力候補グラフ上のクリーク単位に特徴ベクトルを抽出し、パラメタベクトル145の次元数を計算する(ステップS105)。さらに、特徴抽出部1412は、パラメタベクトル145の初期値を設定する。なお、このパラメタベクトル145の初期値とは、例えば、パラメタベクトル145の各要素を、0と設定したものである。
次に、特徴抽出部1412は、パラメタ学習部1413に処理を受け渡し、パラメタ学習部1413は、出力候補グラフ生成部1411が生成した出力候補グラフ及び特徴抽出部1412が計算した次元数を有するパラメタベクトル145の初期値に基づいて、学習基準アルゴリズムにより、パラメタベクトル145を学習し(ステップS106)、ストレージ14に学習結果を記憶する。
(パラメタ学習部における処理の詳細)
次に、図20は、パラメタ学習部1413の詳細な処理手順を示すフローチャートである。図20を参照しつつ、ステップS106におけるパラメタ学習部1413の処理をさらに詳細に説明する。
図19に示したフローチャートのステップS107に処理が移ると、パラメタ学習部1413は、その時点のパラメタベクトル145を用いて、各評価単位に対して正解出力のスコア(重み)を計算する(ステップS201)。そして、その時点のパラメタベクトル145を用いて、各評価単位に対して正解以外の出力候補(最尤出力候補)のスコアを計算する(ステップS202)。
次に、パラメタ学習部1413は、各評価単位に対して、ステップS201で計算した正解出力のスコアと、ステップS202で計算した最尤出力候補のスコアとの差分を計算する(ステップS203)。そして、事前に決定された評価指標に基づいて目的関数Lを計算する(ステップS204)。
次に、パラメタ学習部1413は、ステップS204で計算した目的関数Lの勾配∇Lλを計算して(ステップS205)、目的関数Lが収束したか否かを判定する(ステップS206)。この判定は、例えば、勾配∇Lλが所定値以下か否かで判定することができる。ここで、目的関数Lが収束してなければ(ステップS206で‘No’)、勾配∇Lλの値を用いてスコアを更新しステップS201に戻る。一方、目的関数Lが収束した場合は(ステップS206で‘Yes’)、その時点のパラメタベクトル145をストレージ14に記憶して処理を終了する(図19のステップS106に戻る)。
次に、学習器141の動作(学習フェーズ)として、系列セグメンテーションを行う2つの具体的な例を示しつつ、さらに詳しく説明する(適宜、図18〜20参照)。
(具体例1:正解率を評価指数とする系列セグメンテーション)
具体例1では、系列セグメンテーション問題で、「評価単位」を「セグメント」とし、「評価指標」を「セグメント単位の正解率」とした場合の具体例を示す。この評価単位及び評価指標の決定は、図20に示したステップS204において適用する評価指標(学習基準)を決定することに相当し、学習器141の処理の前準備として事前に決定される。
系列セグメンテーション問題で、前記のように「評価単位」を「セグメント」とし、「評価指標」を「セグメント単位の正解率」とした場合の目的関数は以下のようになる。
Figure 0004328362
ただし、正解率は、エラー率の反比例の関係にあり、数式(19)の誤り推定関数は正解のスコアが大きいときには大きなマイナスの値をとるように定義されているので(一般的に機械学習分野では誤り最小化で定義するため)、実際にはエラー率最小化を行う。
Figure 0004328362
ゆえに、目的関数を次のように定義する。
Figure 0004328362
なお、総セグメント数は定数になるので、目的関数には含めない。
その後、図19に示したフローチャートしたがって、学習器141の出力候補グラフ生成部1411は、学習データ(タグ付きコーパス)を取得する(ステップS101)。また、同時に出力ラベル候補集合を取得する(ステップS102)。
ここで、図21は、出力候補グラフ生成部1411が取得した学習データ等の例を示す図面である。図21(a)は、学習データの例を示し、「田中・一郎・は・陸上・連盟・の・会長・です」(形態素区切りは事前にあるという設定)といったテキストにラベルが付与されているものが入力される。また、このときの出力ラベル候補は図21(b)に示すように、「B−人名,I−人名,B−組織名,I−組織名,O」の5種類のラベルが出力ラベル候補集合となる。
次に、取得した学習データに基づいて、出力候補グラフ生成部1411は出力候補グラフを生成する(ステップS103)。ここで、図21(c)は、出力候補グラフ生成部1411が、図21(a)の学習データ及び図21(b)の出力ラベル集合に基づいて生成した出力候補グラフの例である。図21(c)に示した出力候補グラフは、可能性のある全ての出力候補をパスで接続したラティス形式をとる。つまり、出力候補グラフ中のBOSノードからEOSノード間の一つのパスが一つの出力に対応し、出力候補グラフは、とり得る全ての出力の候補を包含したグラフになっている。
さらに、出力候補グラフと特徴抽出テンプレートとを用いて、出力候補グラフの各ノード(またはリンク)に特徴ベクトルを付与する。
特徴抽出テンプレートは、図6に示したような形式であり、ここでは、前後2単語の特徴を用いて対象とする位置のノードの特徴ベクトルを作成する。このとき、前後2単語とノードが属する出力ラベルの組合せで特徴を生成するため、同じ位置で出力ラベルの違うノード間の特徴ベクトルは、お互い直行する(内積0になる)関係になる。
具体的な例として、図21(c)に示した出力候補グラフに対して、図22に示したような特徴ベクトルが各ノードに付与される。
以上の前処理を経て、特徴ベクトル付き出力候補グラフと、初期化されたパラメタベクトル(全ての要素が0のベクトル)とをパラメタ学習部1413に入力して、学習が開始される。
次に、パラメタ学習部1413の動作について説明する(図20参照)。例えば、図23に示した「田中 一郎 は 陸上 連盟 の 会長 です」というテキストと、正解出力が「B−人名,I−人名,O,B−組織名,I−組織名,O,O,O」の場合で、区間[4,5]を評価する場合を示す。
この区間での正解は、「B−組織名,I−組織名」なので、この二つのノードを通過する全てのパスのスコアを用いて、区間[4,5]で「B−組織名,I−組織名」が出力される周辺確率に基づいた決定関数を求める。この処理は、正解出力のスコアを計算する処理(ステップS201)に相当する。
このときの計算式には、数式(19)を用いる。前側確率のα[0,i](y)は、i=4及びy=B−組織名となる。つまり、位置4のB−組織名のノードに接続する前側のパス全てのスコアを表している。これは、forwardアルゴリズムで求められる。
また、同様に後側確率のβ[j,n](y)は、j=5及びy=I−組織名であり、位置5のI−組織名のノードに接続する後側のパスのスコアである。これも、backwardアルゴリズムにより求められる。
次に、正解セグメントを除いて最もスコアの高いセグメントを求める。この処理は、最尤出力候補のスコアを計算する処理(ステップS202)に相当する。
これは、計算方法自体は正解セグメントの計算と同じであり、同一区間内で正解以外のとり得る全てのセグメントの計算を行い、最大値のセグメントを選出すればよい。
ここで得られた正解セグメントと最尤出力候補セグメントのスコアを用いて、数式(19)を計算する。この処理は、差分を計算する処理(ステップS203)に相当する。
これで、区間[4,5]に対する誤り推定を行うことができた。ここでは、セグメント単位の正解率を用いるので、平滑化関数として1ogistic関数を用いることを考える(図9参照)。これにより、誤り推定関数の値は[0,∞]の値域をとり、正解セグメントの決定関数の値が大きければ大きいほど値が0に近い値を返す。
数式(22)のセグメントエラー率は、単なるセグメント単位の誤り推定関数の総和で計算できるので、以上の処理を各セグメントに対しておこなう。この処理は、評価指標に基づいて目的関数Lを計算する処理(ステップS204)に相当する。
そして、最終的に求めたいものは目的関数を最小化するパラメタベクトルλである。そこで、微分して0になるパラメタベクトルを求める。次に、パラメタ更新をおこなうために、目的関数(式(22))の勾配を求める。この処理は、目的関数の勾配を計算する処理(ステップS205)に相当する。
数式(22)の微分は、chain ruleを用いて以下のように分解して考えることができる。
Figure 0004328362
目的関数を平滑化関数lで微分したものは、1ogistic関数の定義にしたがって以下のようになる。
Figure 0004328362
ここで、誤り推定関数d()のパラメタに対する偏微分を示す。
Figure 0004328362
Figure 0004328362
Figure 0004328362
誤り推定関数d()のパラメタの偏微分は、対象セグメントを通るパス上の各ノード(リンク)が出力される期待値となることがわかる。ゆえに、Forward-Backwardアルゴリズムを利用することで各パラメタの勾配を効率的に計算することができる。
ここで計算した勾配を元に、一般的に用いられる数値最適化法を利用してパラメタを更新する。その際にパラメタの更新量が収束していたら学習は終了となり(ステップS206で‘Yes’)、パラメタベクトル145をストレージ14に出力して(ステップS207)処理を終了する。
一方、収束していない場合は(ステップS206で‘No’)、パラメタ学習の最初に戻る。この収束判定は、例えば、パラメタベクトルの変化量が十分小さい場合(所定の閾値以下となった場合)に収束したとみなす。
この具体例によると、目的関数として、正解セグメントの出現確率と正解セグメント以外で最も出力されやすいセグメントの出現確率との差分を用いるため、全確率を学習に用い、目的関数が連続凸関数となる。従来技術では、目的関数が非連続(凸)関数になる可能性があるため、通常の数値最適化法を単に適用するということはできなかった。つまり、非連続点に対応した数値最適化法を用いる必要があった。しかし、本具体例により、制約無しの一般的な数値最適化法を用いることが可能となり、計算効率を向上させることが可能となる。
(具体例2:F値を評価指標とする系列セグメンテーション)
次に、系列セグメンテーションで「評価単位」を「セグメント」とし、「評価指標」を「F値」とした場合の具体例を示す。ここでは、数式(11)に示したF値を最大化する場合を示す。これには、以下の式を最小化することと等価である。
Figure 0004328362
ただし、Mは正例セグメント数とする。また、FP,FNは学習時のFP(false positive)とFN(false negative)の推定値を表す。これは、数式(11)を、次のように変形した際の分母であり、分母を最小化することが全体の最大化になるということから導出される。
Figure 0004328362
数式(29)から、FP,FNの推定量FP,FNを計算することができれば、F値の最大化が可能となる。よって、正解率ではなく、系列セグメンテーションで数式(11)に示されたF値を最大化したい場合は、数式(28)を目的関数として学習をおこなう。以下、FP,FNの導出手順を説明する。
まず、FNについて説明する。前記のようにFN(false negative)、つまり、正例を間違える推定量であるFNは、誤り推定関数を用いて次のように定義できる。
Figure 0004328362
ただし、FNは正例を間違える推定量なので、正例に関してのみ計算を行えばよいため、2番目の総和は正例の正解セグメントに対してのみ計算する。
次に、FPについて示す。FPは、正例へ間違える推定量なので、負例への間違いは考慮されない。よって、誤り推定関数を計算する際に、負例への誤りは計算に含めないように式を変形する必要がある。
Figure 0004328362
ただし、正解セグメントがOであった場合は、負例への間違いというのは存在しないので、数式(19)の計算と等価となる。よって、正例へ間違える推定量であるFPは、数式(31)の誤り推定関数を用いて以下のように定義できる。
Figure 0004328362
FNに対してFPは、とりうる全てのセグメントに対して計算を行う。
以下、パラメタ学習部で勾配を求める際の式は以下のようになる。
Figure 0004328362
以下、それぞれのコンポーネント毎に示す。
まず、目的関数をFNとFPで偏微分したものは以下のようになる。
Figure 0004328362
Figure 0004328362
ただし、ZとZはそれぞれ数式(28)の分子と分母の値を示す。
次に、FNとFPとを平滑化関数lで偏微分したものは、FNとFPとがlの単なる線形和で表されるため定数となる。
平滑化関数l(ここではシグモイド関数を適用)の偏微分は定義にしたがって、次のようになる。
Figure 0004328362
最後に、誤り推定関数d()とd’()のパラメタに対する偏微分を示す。
Figure 0004328362
Figure 0004328362
Figure 0004328362
Figure 0004328362
以下、評価単位と目的関数の定義、及び目的関数と目的関数の勾配の計算以外の処理は、セグメント正解率を用いて学習する場合と全く同じ処理になるためここでは省略する。
以上、本発明の実施形態を説明したが、前記の説明において用いた数式等は、例示しものにすぎず、適用する言語モデルに応じて適宜変更可能である。よって、本発明の範囲は、特許請求の範囲に記載された技術的思想により定められる。
系列セグメンテーション及び系列ラベリングの例を示す図面である。 IOBラベリング法を説明する図面である。 品詞タグ付けの例を示す図面である。 カスケードモデルを適用した系列ラベリングの例を示す図面である。 条件付き確率場を適用した系列ラベリングの例を示す図面である。 特徴抽出の例を示す図面である。 条件付き確率場におけるクリークを説明する図面である。 条件付き確率場におけるクリーク毎の特徴の例を示す図面である。 平滑化関数の例を示す図面である。 従来技術の誤り推定計算方法を説明する図面である。 従来技術の問題点を説明する図面である。 セグメントの出力確率の例を説明する図面である。 出力候補グラフにおける数式(19)の意味を説明する図面である。 テキスト解析装置のブロック構成図である。 テキスト解析装置の処理動作の概略を説明する説明図である。 学習器の入力・出力例を示す図面である。 推定器の入力・出力例を示す図面である。 学習器の詳細ブロックを示す図面である。 学習器の処理手順を示すフローチャートである。 パラメタ学習部の詳細な処理手順を示すフローチャートである。 (a)は入力される学習データの例を示し、(b)抽出される主力ラベル候補集合を示し、(c)は生成される出力候補グラフの例を示す図面である。 出力候補グラフの各ノードに特徴ベクトルを付与した例を示す図面である。 学習データの例において、区間[4,5]を評価する場合を説明する図面である。
符号の説明
11 CPU
12 RAM
13 入手力部
14 ストレージ
141 学習器
144 学習データ
145 パラメタベクトル
1411 出力候補グラフ生成部
1412 特徴抽出部
1413 パラメタ学習部

Claims (12)

  1. テキストデータに所定の分類タグを付与するために使用するパラメタベクトルを、予め前記分類タグが付与されたテキストデータである学習データから算出する言語解析モデル学習装置であって、
    前記学習データに前記分類タグの種類を示す出力ラベル候補を対応付けた出力候補グラフと、前記パラメタベクトルの初期値とを記憶した記憶部と、
    前記学習データの一つ以上の記号の連続から成る部分記号列であるセグメントを評価単位とするセグメント単位の出現確率を、前記パラメタベクトルを変数として、対象セグメントの前側確率及び後側確率である当該セグメント間の周辺確率により表す決定関数を用いて、前記学習データの正解の要素の出現確率と、前記正解の要素以外で最も出力されやすい要素の出現確率との差分を誤り推定関数として計算し、前記誤り推定関数を用いて設定される目的関数を最適化するパラメタベクトルを算出するパラメタ学習部とを備える
    ことを特徴とする言語解析モデル学習装置。
  2. 前記目的関数は、すべての最小評価単位についての前記誤り推定関数の出力の総和であり、前記目的関数を最適化するパラメタベクトルは、前記目的関数の出力を最小にする前記パラメタベクトルである
    ことを特徴とする請求項1に記載の言語解析モデル学習装置。
  3. 前記パラメタ学習部は、
    前記出力候補グラフにおいて、出力系列y中の位置iから位置jまでの間のセグメントの部分出力系列y[i,j]の前記前側確率αを次の式(1)により計算し、前記後側確率βを次の式(2)により計算し、当該セグメント間の出現確率を前記前側確率と前記後側確率である周辺確率として、前記決定関数gを次の式(3)により計算し、同一区間内で正解以外のとり得る全てのセグメントの計算を行い、最大値のセグメントを選出して、これを最尤出力候補セグメントとし、正例の負例への間違い数を推定する場合には前記誤り推定関数dを次の式(4)により計算し、負例の正例への間違い数を推定する場合には前記誤り推定関数dを次の式(5)により計算し、
    前記目的関数は、前記式(4)および式(5)でそれぞれ計算される誤り推定関数を用いて設定される、次の式(6)に示すF値の分母であり、前記目的関数を最適化するパラメタベクトルλは、前記目的関数の出力を最小にする前記パラメタベクトルである
    ことを特徴とする請求項1に記載の言語解析モデル学習装置。
    Figure 0004328362
    ただし、xは入力系列、fは特徴ベクトル、nはセグメント数、lは単一のクリーク単位での特徴ベクトルの識別子、yiはi番目の出力ラベル、yjはj番目の出力ラベル、Yは単一のラベルのとりうる全てのラベル集合、y*は正解セグメント、BはIOBラべリング法の開始セグメントをそれぞれ示す。また、γは再現率と適合率とのトレードオフの度合いを示す定数、Mは正例セグメント数、FPは負例の正例への間違い数の推定量、FNは正例の負例への間違い数の推定量をそれぞれ示す。
  4. 前記パラメタ学習部は、
    前記決定関数を用いて前記学習データの正解の要素の出現確率と、前記正解の要素以外で最も出力されやすい要素の出現確率とを計算する際に、
    Forward-Backwardアルゴリズムを用いて前記決定関数の出力として前記各要素の出現確率を計算する
    ことを特徴とする請求項1ないし請求項3のいずれか1項に記載の言語解析モデル学習装置。
  5. 前記パラメタ学習部は、
    前記パラメタベクトルの初期値の入力を受け付け、
    前記パラメタベクトルの初期値からその時点で前記目的関数を最適化するパラメタベクトルを算出後に、前記目的関数の勾配を計算し、前記勾配が所定値以下になるまで、その時点のパラメタベクトルを用いて、前記目的関数を最適化するパラメタベクトルを再度算出し、
    前記勾配が所定値以下になった場合に、その時点のパラメタベクトルを、前記目的関数を最適化するパラメタベクトルとして出力する
    ことを特徴とする請求項1ないし請求項4のいずれか1項に記載の言語解析モデル学習装置。
  6. 予め所定の分類タグが付与されたテキストデータである学習データに前記分類タグの種類を示す出力ラベル候補を対応付けた出力候補グラフと、テキストデータに前記分類タグを付与するために使用するパラメタベクトルの初期値とが記憶された記憶部と、パラメタ学習部とを有する言語解析モデル学習装置において、前記学習データおよび前記パラメタベクトルの初期値から最適なパラメタベクトルを算出する言語解析モデル学習方法であって、
    前記言語解析モデル学習装置のパラメタ学習部は、
    前記学習データの一つ以上の記号の連続から成る部分記号列であるセグメントを評価単位とするセグメント単位の出現確率を、前記パラメタベクトルを変数として、対象セグメントの前側確率及び後側確率である当該セグメント間の周辺確率により表す決定関数を用いて、前記学習データの正解の要素の出現確率を計算するステップと、
    前記決定関数を用いて、前記正解の要素以外で最も出力されやすい要素の出現確率を計算するステップと、
    前記正解の要素の出現確率と、前記正解の要素以外で最も出力されやすい要素の出現確率との差分を誤り推定関数として計算するステップと、
    前記誤り推定関数を用いて設定される目的関数を最適化するパラメタベクトルを算出するステップと、を実行する
    ことを特徴とする言語解析モデル学習方法。
  7. 前記目的関数は、すべての最小評価単位についての前記誤り推定関数の出力の総和であり、前記目的関数を最適化するパラメタベクトルは、前記目的関数の出力を最小にする前記パラメタベクトルである
    ことを特徴とする請求項6に記載の言語解析モデル学習方法。
  8. 前記パラメタ学習部は、
    前記出力候補グラフにおいて、出力系列y中の位置iから位置jまでの間のセグメントの部分出力系列y[i,j]の前記前側確率αを次の式(1)により計算するステップと、
    前記後側確率βを次の式(2)により計算するステップと、
    当該セグメント間の出現確率を前記前側確率と前記後側確率である周辺確率として、前記決定関数gを次の式(3)により計算するステップと、
    同一区間内で正解以外のとり得る全てのセグメントの計算を行い、最大値のセグメントを選出して、これを最尤出力候補セグメントとするステップと、
    正例の負例への間違い数を推定する場合に前記誤り推定関数dを次の式(4)により計算するステップと、
    負例の正例への間違い数を推定する場合に前記誤り推定関数dを次の式(5)により計算するステップと、を実行し、
    前記目的関数は、前記式(4)および式(5)でそれぞれ計算される誤り推定関数を用いて設定される、次の式(6)に示すF値の分母であり、前記目的関数を最適化するパラメタベクトルλは、前記目的関数の出力を最小にする前記パラメタベクトルである
    ことを特徴とする請求項6に記載の言語解析モデル学習方法。
    Figure 0004328362
    ただし、xは入力系列、fは特徴ベクトル、nはセグメント数、lは単一のクリーク単位での特徴ベクトルの識別子、yiはi番目の出力ラベル、yjはj番目の出力ラベル、Yは単一のラベルのとりうる全てのラベル集合、y*は正解セグメント、BはIOBラべリング法の開始セグメントをそれぞれ示す。また、γは再現率と適合率とのトレードオフの度合いを示す定数、Mは正例セグメント数、FPは負例の正例への間違い数の推定量、FNは正例の負例への間違い数の推定量をそれぞれ示す。
  9. 前記パラメタ学習部は、
    前記決定関数を用いて前記学習データの正解の要素の出現確率を計算するステップおよび、前記決定関数を用いて記正解の要素以外で最も出力されやすい要素の出現確率を計算するステップにおいて、
    Forward-Backwardアルゴリズムを用いて前記決定関数の出力として前記各要素の出現確率を計算する
    ことを特徴とする請求項6ないし請求項8のいずれか1項に記載の言語解析モデル学習方法。
  10. 前記パラメタ学習部は、
    前記パラメタベクトルの初期値の入力を受け付けるステップと、
    前記パラメタベクトルの初期値からその時点で前記目的関数を最適化するパラメタベクトルを算出後に、前記目的関数の勾配を計算するステップと、
    前記勾配が所定値以下になるまで、その時点のパラメタベクトルを用いて、前記目的関数を最適化するパラメタベクトルを再度算出するステップと、
    前記勾配が所定値以下になった場合に、その時点のパラメタベクトルを、前記目的関数を最適化するパラメタベクトルとして出力するステップと、を実行する
    ことを特徴とする請求項6ないし請求項9のいずれか1項に記載の言語解析モデル学習方法。
  11. 請求項1ないし請求項5のいずれか1項に記載の言語解析モデル学習装置を構成する各部として、コンピュータを機能させるための言語解析モデル学習プログラム。
  12. 請求項11に記載の言語解析モデル学習プログラムを記録した
    ことを特徴とする記録媒体。
JP2007056109A 2007-03-06 2007-03-06 言語解析モデル学習装置、言語解析モデル学習方法、言語解析モデル学習プログラム及びその記録媒体 Active JP4328362B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007056109A JP4328362B2 (ja) 2007-03-06 2007-03-06 言語解析モデル学習装置、言語解析モデル学習方法、言語解析モデル学習プログラム及びその記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007056109A JP4328362B2 (ja) 2007-03-06 2007-03-06 言語解析モデル学習装置、言語解析モデル学習方法、言語解析モデル学習プログラム及びその記録媒体

Publications (2)

Publication Number Publication Date
JP2008217592A JP2008217592A (ja) 2008-09-18
JP4328362B2 true JP4328362B2 (ja) 2009-09-09

Family

ID=39837535

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007056109A Active JP4328362B2 (ja) 2007-03-06 2007-03-06 言語解析モデル学習装置、言語解析モデル学習方法、言語解析モデル学習プログラム及びその記録媒体

Country Status (1)

Country Link
JP (1) JP4328362B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101866337B (zh) * 2009-04-14 2014-07-02 日电(中国)有限公司 词性标注系统、用于训练词性标注模型的装置及其方法
JP5648913B2 (ja) * 2011-01-20 2015-01-07 日本電信電話株式会社 機能表現解析装置、素性重み学習装置、機能表現解析方法、素性重み学習方法、プログラム
CN111209385B (zh) * 2020-01-14 2024-02-02 重庆兆光科技股份有限公司 一种基于凸神经网络的咨询对话唯一答案寻优方法
CN112365178A (zh) * 2020-11-20 2021-02-12 山东大学 一种轨交隧道运营期安全评价方法、系统及存储介质

Also Published As

Publication number Publication date
JP2008217592A (ja) 2008-09-18

Similar Documents

Publication Publication Date Title
CN111783474B (zh) 一种评论文本观点信息处理方法、装置及存储介质
CN108255813B (zh) 一种基于词频-逆文档与crf的文本匹配方法
JP6509694B2 (ja) 学習装置、音声検出装置、学習方法およびプログラム
US20090271195A1 (en) Speech recognition apparatus, speech recognition method, and speech recognition program
CN109960804B (zh) 一种题目文本句子向量生成方法及装置
WO2021240707A1 (ja) データ分類システム、データ分類方法および記録媒体
JP6291443B2 (ja) 接続関係推定装置、方法、及びプログラム
CN113128203A (zh) 基于注意力机制的关系抽取方法、系统、设备及存储介质
CN110245349B (zh) 一种句法依存分析方法、装置及一种电子设备
CN111274829A (zh) 一种利用跨语言信息的序列标注方法
CN117435716B (zh) 电网人机交互终端的数据处理方法及系统
JP4328362B2 (ja) 言語解析モデル学習装置、言語解析モデル学習方法、言語解析モデル学習プログラム及びその記録媒体
JP5441937B2 (ja) 言語モデル学習装置、言語モデル学習方法、言語解析装置、及びプログラム
Gunaseelan et al. Automatic extraction of segments from resumes using machine learning
Ihou et al. Stochastic topic models for large scale and nonstationary data
JP6772394B1 (ja) 情報学習装置、情報処理装置、情報学習方法、情報処理方法及びプログラム
Heid et al. Reliable part-of-speech tagging of historical corpora through set-valued prediction
Forsati et al. Hybrid PoS-tagging: A cooperation of evolutionary and statistical approaches
JP2010272004A (ja) 判別装置及び判別方法、並びにコンピューター・プログラム
JP5379813B2 (ja) データ抽出装置、データ抽出方法、及びプログラム
JP5379812B2 (ja) データ抽出装置、データ抽出方法、及びプログラム
JP6558856B2 (ja) 形態素解析装置、モデル学習装置、及びプログラム
CN115310449A (zh) 一种基于小样本的命名实体识别方法、装置及相关介质
JP2016197289A (ja) パラメタ学習装置、類似度算出装置、方法、及びプログラム
CN115114916A (zh) 用户反馈数据的分析方法、装置及计算机设备

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090428

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090519

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090609

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090612

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4328362

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130619

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140619

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350