JP2008217592A - Language analysis model learning device, language analysis model learning method, language analysis model learning program and recording medium - Google Patents
Language analysis model learning device, language analysis model learning method, language analysis model learning program and recording medium Download PDFInfo
- Publication number
- JP2008217592A JP2008217592A JP2007056109A JP2007056109A JP2008217592A JP 2008217592 A JP2008217592 A JP 2008217592A JP 2007056109 A JP2007056109 A JP 2007056109A JP 2007056109 A JP2007056109 A JP 2007056109A JP 2008217592 A JP2008217592 A JP 2008217592A
- Authority
- JP
- Japan
- Prior art keywords
- output
- parameter vector
- learning
- analysis model
- language analysis
- 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.)
- Granted
Links
Images
Landscapes
- Machine Translation (AREA)
Abstract
Description
本発明は言語解析処理の技術に関し、特に対象テキストに文法的又は意味的なラベルを付与するために用いる特徴パラメタベクトルを学習データ(コーパス)から作成する技術に関する。 The present invention relates to a language analysis technique, and more particularly to a technique for creating a feature parameter vector used for assigning a grammatical or semantic label to a target text from learning data (corpus).
主に対象テキスト(以下、生テキスト)に対して、品詞の付与(専門用語でタギンク又はラベリングと呼ぶ)や、単語・文節区切り又は意味のある単語の連続の抽出(専門用語でチャンキング又はセグメンテーションと呼ぶ)を行う技術がある。
計算機上では、生テキストは、文章の先頭から末尾までの一本のストリーム(一次元上の記号列)とみなして処理されることから、テキストのラベリング及びセグメンテーションは、自然言語処理/機械学習分野の用語で系列ラベリングまたは、系列セグメンテーションという問題の種類に分類される。
Mainly the subject text (hereinafter referred to as raw text) is given part-of-speech (referred to as terminology or labeling in technical terms), word / sentence breaks or extraction of meaningful words (chunking or segmentation in technical terms) Technology).
On a computer, raw text is processed as a single stream (one-dimensional symbol string) from the beginning to the end of a sentence, so text labeling and segmentation are in the natural language processing / machine learning field. Are classified into the problem types of sequence labeling or sequence segmentation.
このような、系列セグメンテーション及び系列ラベリングの例を図1に示す。
図1に示すように、系列ラベリングとは、入力される系列に対して、ラベルを付与する問題と定義される(ただし、系列(Sequence)とは記号の列を意味し、生テキストの場合は文字列や単語列等に相当)。また、自然言語処理分野では、単語列に対して品詞タグを付与する問題等がこれに含まれる。
また、同じく図1に示すように、系列セグメンテーションとは、入力系列に対して、部分系列単位の区分(セグメント)を求める問題と定義される。ただし、セグメントとは、一つ以上の記号の連続から成る(部分)記号列である。自然言語処理分野では、単語列に対して文節区切りを付与する問題等がこれに含まれる。
An example of such sequence segmentation and sequence labeling is shown in FIG.
As shown in FIG. 1, sequence labeling is defined as a problem of labeling an input sequence (however, a sequence means a sequence of symbols, and in the case of raw text) Equivalent to character strings and word strings). Further, in the natural language processing field, this includes a problem of giving a part of speech tag to a word string.
Similarly, as shown in FIG. 1, sequence segmentation is defined as a problem of obtaining a partial sequence unit segment for an input sequence. Here, a segment is a (partial) symbol string composed of a sequence of one or more symbols. In the field of natural language processing, this includes a problem of adding a phrase break to a word string.
前記の系列セグメンテーションは、容易に系列ラベリングに帰着させることが可能であり、かつ、系列セグメンテーション問題を直接解くモデルを扱うよりも、系列ラベリング問題として解く方が簡単であるため、一般的には、系列ラベリングのモデルを用いて問題を解き、その後にセグメントに変換する方法が用いられる。 The sequence segmentation can be easily reduced to sequence labeling, and is generally easier to solve as a sequence labeling problem than to deal with a model that directly solves the sequence segmentation problem. A method is used in which a problem is solved using a model of sequence labeling and then converted into segments.
この系列セグメンテーションから系列ラベリングを解く方法として、「IOBラベリング法」が提案されている。このIOBラベリング法では、セグメントの開始(B)と続き(I)、及びセグメント外(O)を現すラベルB,I,Oを用いてセグメントを個々のラベルに分割・変換をおこなう。
ここで、図2はIOBラベリング法を説明する図面である。図2に示すように、セグメントの開始を示すラベルBに注目することで、容易にかつ一意にラベルからセグメントに、又はセグメントからラベルに変換することが可能となる。
As a method for solving the sequence labeling from the sequence segmentation, an “IOB labeling method” has been proposed. In this IOB labeling method, a segment is divided and converted into individual labels using labels B, I, and O representing the start (B) and continuation (I) of the segment and the outside (O) of the segment.
Here, FIG. 2 is a diagram for explaining the IOB labeling method. As shown in FIG. 2, by paying attention to the label B indicating the start of the segment, it is possible to easily and uniquely convert from the label to the segment or from the segment to the label.
このように、系列セグメンテーションの問題は、IOBラベリング法により系列ラベリングと同じ問題とみなすことが可能であるため、系列ラベリングの問題として同一のモデルを用いて解くことができる。 Thus, the sequence segmentation problem can be regarded as the same problem as the sequence labeling by the IOB labeling method, and therefore can be solved using the same model as the sequence labeling problem.
ここで、系列ラベリング問題で、入力系列(観測データ)をx={x1,…,xn}、出力系列をy={y1,…,yn}と表すこととする。例えば、品詞タグ付けの場合は、xは生テキストに相当し、xiはi番目の単語になる。また、yは、xの生テキストに対応する品詞タグ列であり、yiはi番目の単語に付与される品詞となる。ここで、図3は、品詞タグ付けの例を示す図面である。図3に示すように、「山田 太郎 は 日本 の 首相 です 。」という生テキストxに対して、各単語xiについてその品詞を付与することを考える。 Here, in the sequence labeling problem, an input sequence (observation data) is represented as x = {x 1 ,..., X n }, and an output sequence is represented as y = {y 1 ,..., Y n }. For example, in the case of part-of-speech tagging, x corresponds to raw text and xi is the i-th word. Also, y is a part of speech tag string corresponding to the raw text of x, and y i is a part of speech given to the i th word. Here, FIG. 3 is a diagram showing an example of part-of-speech tagging. As shown in FIG. 3, it is considered that the part of speech for each word x i is given to the raw text x “Taro Yamada is the prime minister of Japan”.
このとき、系列ラベリング問題では、任意の一つの出力ラベルyiはその周囲のラベル(例えば、yi−1やyi+1)に依存して決定される。つまり、個々のラベルyiは、入力系列xのみではなく出力系列y自身に依存して決定される変数であると言える。よって、部分的に入力系列がまったく同じであっても、周囲の推定された出力ラベルによってはまったく別のラベルが付与される可能性がある。このように出力系列y自身に相互依存性(または、相互依存構造)があるような問題を機械学習の研究分野では「構造学習問題」とよび、大まかには、局所最適解を組み合わせて解を得る古典的なモデルと、出力全体の大域的な最適解を直接学習/推定するモデルに分類することができる。それぞれの代表的なモデルとして、カスケードモデルと条件付き確率場がある。 At this time, in the sequence labeling problem, any one output label y i is determined depending on the surrounding labels (for example, y i−1 or y i + 1 ). That is, it can be said that each label y i is a variable determined depending on not only the input sequence x but also the output sequence y itself. Therefore, even if the input sequences are partially the same, a completely different label may be given depending on the estimated output labels in the surrounding area. A problem in which the output sequence y itself has an interdependency (or interdependence structure) is called a “structural learning problem” in the field of machine learning research, and is roughly combined with a local optimal solution. The obtained classic model and the global optimum solution of the entire output can be classified into models that directly learn / estimate. As typical models, there are a cascade model and a conditional random field.
カスケードモデルは、構造学習問題を解く古典的な方法である。従来、相互依存構造を持つ問題の大域的最適解を求めるためには、計算量が非常に大きくなるため、大域的最適解を求めることは現実的な解法ではなかった。そこで、局所最適解を組み合わせて全体の解を得る方法として、カスケードモデルが提案された。
ここで、図4は、カスケードモデルを適用した系列ラベリングの例を示す説明図である。局所最適解としては、図4に示すように、個々のラベルyiを独立に学習/推定する。この個々のラベルの学習/推定は、単純な分類問題とみなすことができるので、一般的に用いられる分類問題用の機械学習手法を用いることができる。つまり、カスケードモデルでは、個々のラベルごとに問題を分割して(多クラス)分類問題として一般的な学習手法を用いて解くことができる。
The cascade model is a classic method for solving structural learning problems. Conventionally, in order to obtain a global optimum solution of a problem having an interdependent structure, the amount of calculation becomes very large, and thus obtaining a global optimum solution has not been a realistic solution. Therefore, a cascade model has been proposed as a method for obtaining an overall solution by combining local optimal solutions.
Here, FIG. 4 is an explanatory diagram showing an example of sequence labeling to which the cascade model is applied. As the local optimal solution, as shown in FIG. 4, each label y i is independently learned / estimated. Since learning / estimation of the individual labels can be regarded as a simple classification problem, a generally used machine learning technique for classification problems can be used. In other words, in the cascade model, the problem can be divided for each label (multi-class) and solved as a classification problem using a general learning method.
一方、条件付き確率場は、従来困難とされた大域的な最適解を求めるために考案されたモデルの一つである。機械学習の分野では、カスケードモデルが示すように、従来、データ中の個々のインスタンスは独立であるという仮定で学習を行ってきた。しかし、現実のデータでは、個々のインスタンス間に複雑な依存関係がある場合が多いことが知られている。
例えば、Webのホームページのカテゴリ分類の場合は、個々のインスタンス(ホームページ)を独立に扱って分類することができるが、文中の単語に対する品詞分類では、前後の文脈の情報によって与えられるラベルは異なるという特徴を持っている。
On the other hand, the conditional random field is one of models devised to obtain a global optimum solution that has been considered difficult in the past. In the field of machine learning, as shown by the cascade model, learning has been performed on the assumption that individual instances in the data are independent. However, it is known that in actual data, there are many cases where there are complex dependencies between individual instances.
For example, in the case of Web homepage category classification, individual instances (homepages) can be handled and classified independently, but in part-of-speech classification for words in a sentence, labels given by context information before and after are different. Has characteristics.
このように依存関係がある構造の学習を行う一つの方法として、マルコフ確率場(markov random field)という方法がある。ただし、マルコフ確率場は、もともと入力と出力の同時確率(p(y,x))を求める方法として用いられるモデルであり、テキストのように、入力xが既知の場合には同時確率ではなく、条件付き確率(p(x|y))を求める方が、テキストの解析モデルを直接モデル化することになるので、解析性能が高くなることが推察できる。そこで、マルコフ確率場の枠組で、同時確率ではなく条件付き確率でも問題を解けるように改良した方法として、非特許文献1及び非特許文献2には、条件付き確率場(Conditiona1 Random Fields)が提案されている。これらの方法は、周辺の文脈に依存して出力を学習/推定するためのモデルである。
One method for learning such a structure having a dependency relationship is a Markov random field. However, the Markov random field is a model that is originally used as a method for obtaining the joint probability (p (y, x)) of the input and output, and is not the joint probability when the input x is known as in text, Since it is possible to directly model an analysis model of text by obtaining a conditional probability (p (x | y)), it can be inferred that the analysis performance is improved. Therefore, in the framework of the Markov random field, a conditional random field (Conditiona1 Random Fields) is proposed in
数多くの実験から、条件付き確率場のように大域的な情報を用いて最適化した方が、局所的な情報を組み上げて問題を解くカスケードモデルよりも性能がよいことが示されている。
ここで、図5は、条件付き確率場を適用した系列ラベリングの例を示す説明図である。図5に示すように、系列ラベリング問題を条件付き確率場(マルコフ確率場でも同じ)でモデル化する場合には、取り得る出力ラベル系列をあらわしたラティス状の出力候補グラフに含まれるパス中から、始端ノードから終端ノードヘの最適パス(最も確率の高いパス)を求める問題に帰着される。
なお、条件付き確率場を用いてモデルを「学習(パラメタ推定とも言う)」するとは、特徴抽出により抽出された特徴に対応したパラメタベクトルの重みを決定する作業である。
Numerous experiments have shown that optimization using global information, such as a conditional random field, performs better than a cascade model that builds up local information and solves the problem.
Here, FIG. 5 is an explanatory diagram illustrating an example of sequence labeling to which a conditional random field is applied. As shown in FIG. 5, when a series labeling problem is modeled with a conditional random field (the same is true for a Markov random field), the path is included in a lattice-like output candidate graph representing a possible output label series. This results in a problem of finding the optimum path (the path with the highest probability) from the start node to the end node.
Note that “learning (also referred to as parameter estimation)” a model using a conditional random field is an operation of determining the weight of a parameter vector corresponding to a feature extracted by feature extraction.
また、特徴抽出とは、一般的な機械学習問題で同じ処理であるが、入力xと出力yの関係を特徴付けるような情報を抽出する処理である。基本的に、入力xから特徴を抽出する特徴抽出関数は、対象とする問題に依存して人手で決定するのが一般的である。
ここで、図6は特徴抽出の例を示す説明図である。図6に示した例では、推定したいラベル(i=4)の前後2単語と、推定したいラベルとの組み合わせで特徴を特徴ベクトルとして抽出する。このように、系列ラベリング問題の場合は、入力xと出力yとの組合せで特徴を抽出することが一般的である。図6に示した例では、任意のラベルyiを推定する際に利用する特徴(関数)として、xi−2,xi−1,xi,xi+1,xi+2とyiの組合せを抽出する。
Also, feature extraction is processing that extracts the information that characterizes the relationship between input x and output y, although it is the same processing in a general machine learning problem. Basically, the feature extraction function for extracting features from the input x is generally determined manually depending on the target problem.
Here, FIG. 6 is an explanatory diagram showing an example of feature extraction. In the example shown in FIG. 6, the feature is extracted as a feature vector by combining the two words before and after the label to be estimated (i = 4) and the label to be estimated. As described above, in the case of the sequence labeling problem, it is common to extract features by a combination of the input x and the output y. In the example shown in FIG. 6, combinations of x i−2 , x i−1 , x i , x i + 1 , x i + 2 and y i are used as features (functions) used when estimating an arbitrary label y i. Extract.
パラメタベクトルの重みを決定する学習は、特徴抽出関数により抽出された個々の特徴に対応するパラメタ(ベクトル)λの値を推定する問題となる。ここで「対応する」とは、個々の特徴とパラメタベクトルの要素が一対一に対応することを意味し、特徴ベクトルとパラメタベクトルの次元数は同じとなり、またi番目の特徴はi番目のパラメタベクトルの要素で重みが決定される。 Learning to determine the weight of the parameter vector is a problem of estimating the value of the parameter (vector) λ corresponding to each feature extracted by the feature extraction function. Here, “corresponding” means that each feature and parameter vector elements correspond one-to-one, the feature vector and the parameter vector have the same number of dimensions, and the i-th feature is the i-th parameter. The weight is determined by the elements of the vector.
条件付き確率場は以下のように定義される。入力(観測データ)に対する確率変数をx、出力に対する確率変数をy={y1,…,yn}とする。ここで、確率変数yがマルコフ性を満たすとき、すなわち、p(yi|x,y1,…,yi−1,yi+1,…,yn)=p(yi|x,N(yi))の条件を満たすとき、(x,y)は条件付き確率場である。ただし、N(yi)は、個々確率変数yi間の依存関係をグラフで表した際に接続する確率変数の集合を表す。つまり、確率変数yiは、接続する確率変数N(yi)およびxに依存して決まる変数である。一般的に、確率変数yi間の接続を表すグラフ内のクリーク集合をcとすると、条件付き確率場は、個々のクリークのポテンシャル関数の対数線形モデルになる。 The conditional random field is defined as follows: The random variable for the input (observed data) is x, and the random variable for the output is y = {y 1 ,..., Y n }. Here, when the random variable y satisfies the Markov property, that is, p (y i | x, y 1 ,..., Y i−1 , y i + 1 ,..., Y n ) = p (y i | x, N ( When the condition of y i )) is satisfied, (x, y) is a conditional random field. Here, N (y i ) represents a set of random variables that are connected when the dependency relationship between the individual random variables y i is represented by a graph. That is, the random variable y i is a variable determined depending on the connected random variable N (y i ) and x. In general, if c is a clique set in a graph representing the connection between random variables y i , the conditional random field is a log-linear model of the potential function of each clique.
ここでは、系列ラベリング問題に特化した記述なので、系列ラベリングの場合のクリークのみを議論する。系列ラベリングの場合は、図5に示したようなラティス状の出力候補グラフを用いるので、クリークはyi−1,yiのラベルペアで構成されることになる。
ここで、図7は、条件付き確率場におけるクリークを説明する図面である。クリークとは、グラフ中の部分グラフのうち、完全グラフとなるノードの集合である。図7に示すように、ラティス状の出力候補グラフにおいて、隣り合う二つのノードのみが、クリークとなる。このため、リンクで結合された全ての隣り合うノードがクリークとなる。
なお、完全グラフとは、グラフ中のノードが自身以外の全てのノードとのリンクを持つ場合をいう。
Here, since the description is specialized for the sequence labeling problem, only cliques in the case of sequence labeling will be discussed. In the case of series labeling, since a lattice-like output candidate graph as shown in FIG. 5 is used, the clique is composed of y i−1 , y i label pairs.
Here, FIG. 7 is a diagram for explaining a clique in a conditional random field. A clique is a set of nodes that become a complete graph among subgraphs in a graph. As shown in FIG. 7, in the lattice-like output candidate graph, only two adjacent nodes become cliques. For this reason, all adjacent nodes connected by links become cliques.
Note that a complete graph refers to a case where a node in the graph has links to all nodes other than itself.
図7からもわかるように、系列ラベリングでは、一つのパス中のクリーク数は系列の長さn+1(BOS(開始)ノード,EOS(終端)ノードを含むため)となる。
このとき、条件付き確率場において、任意のクリークciでの局所的な特徴をf(y,x,i)と表し、λを特徴に対応したパラメタベクトルとする。ここで、図8は条件付き確率場におけるクリーク毎の特徴の例を示す図面である。このとき、条件付き確率場上の任意の出力yに対する条件付き確率は以下のように表すことができる。
As can be seen from FIG. 7, in sequence labeling, the number of cliques in one path is the sequence length n + 1 (because it includes BOS (start) nodes and EOS (end) nodes).
At this time, in the conditional random field, a local feature at an arbitrary clique c i is represented as f (y, x, i), and λ is a parameter vector corresponding to the feature. Here, FIG. 8 is a drawing showing an example of features for each clique in the conditional random field. At this time, the conditional probability for an arbitrary output y on the conditional random field can be expressed as follows.
数式(2)において、Zλ(x)は正規化項を意味し、全ての出力の可能性の総和である。つまり条件付き確率場での条件付き確率分布p(x|y)は、出力系列yの各地点iでの局所的な特徴f(y,x,i)の重みを指数とした値の総積を、全ての可能性の出力系列の総和で割ったものとなる。
このとき、数式(1)は、次のように書き直すことができる。
In equation (2), Z λ (x) means a normalization term and is the sum of all output possibilities. That is, the conditional probability distribution p (x | y) in the conditional random field is the sum of the values with the weight of the local feature f (y, x, i) at each point i in the output sequence y as an index. Divided by the sum of all possible output sequences.
At this time, Formula (1) can be rewritten as follows.
前記の数式(3)から、一つのパス全体に対する大域的な特徴はFを用いて次のように書き表すことができる。 From the above equation (3), the global feature for one entire path can be written using F as follows.
つまり、系列の大域的な特徴は、各地点での局所的な特徴の総和で表されることを意味する。この大域的特徴Fに従うと、数式(1)の条件付き確率場による条件付き確率は以下のように書き直すことができる。 That is, it means that the global feature of the series is represented by the sum of local features at each point. According to this global feature F, the conditional probability by the conditional random field of Equation (1) can be rewritten as follows:
任意の出力系列yの確率は、出力候補グラフ中の出力系列が表すパス上のクリークから抽出される特徴とパラメタベクトルとの内積を、指数関数を用いて変換した値を、可能な全ての出力系列全体の値で割ったものとなる。
条件付き確率場上で、入力系列xに対して最も確率の高い出力系列
は、次式により推定できる。
The probability of an arbitrary output sequence y is the output of all possible output values obtained by converting the inner product of the feature vector extracted from the clique on the path represented by the output sequence in the output candidate graph using an exponential function. Divided by the value of the entire series.
The output sequence with the highest probability for the input sequence x on the conditional random field
Can be estimated by the following equation.
ここで、yは入力系列xに対する出力系列の候補の集合を表す。また、数式(5)中の正規化項Zλ(x)はyに依存しない値なので、最尤出力(argmax)を得る際には影響を及ぼさないので用いる必要はない。このように、数式(7)を用いて入力系列xを条件付き確率場に与えたときに、最も確率の高い出力系列yを得ることができる。 Here, y represents a set of output sequence candidates for the input sequence x. Further, since the normalized term Z λ (x) in the equation (5) does not depend on y, it does not have any influence when obtaining the maximum likelihood output (argmax), so it is not necessary to use it. Thus, when the input sequence x is given to the conditional random field using Equation (7), the output sequence y with the highest probability can be obtained.
条件付き確率場の学習では、最尤推定に基づいて学習データ
からの学習をおこなう。
In conditional random field learning, the training data is based on maximum likelihood estimation.
Learn from.
ここで、y*は正解を表す。 Here, y * represents a correct answer.
一般的に、確率モデルでは実用上の観点から、確率の対数(対数尤度)を最大にするように学習を行う。これは、対数をとっても、最大値をとるパラメタの値は同じになる(確率と対数尤度は比例関係にある)ため、このような変換が可能である。これを一般的に、尤度最大化(Maximum Likelihood)学習と呼び、条件付き確率場上の学習では、以下の目的関数を最大化することになる。 In general, in a probability model, learning is performed so as to maximize the logarithm (log likelihood) of a probability from a practical viewpoint. This is because even if the logarithm is taken, the parameter value that takes the maximum value is the same (probability and log likelihood are in a proportional relationship), and thus such conversion is possible. This is generally called maximum likelihood learning, and the following objective function is maximized in learning on a conditional random field.
目的関数である数式(9)の最適解は、目的関数のパラメタλによる微分が0になる点を探せばよい。 The optimal solution of Equation (9), which is the objective function, may be found by finding the point at which the differentiation by the parameter λ of the objective function becomes zero.
ただし、
は、大域的特徴Fの期待値を意味する。ここで用いる目的関数、数式(9)は、凸関数であるので唯一の最適解を持つ。実際の最適化には、最急降下法やニュートン法などの一般的な数値最適化アルゴリズムを用いて効率的に解くことができる。
Means the expected value of the global feature F. Since the objective function used here, Equation (9), is a convex function, it has only one optimal solution. In actual optimization, it can be solved efficiently by using a general numerical optimization algorithm such as steepest descent method or Newton method.
前記のように、一般的には、条件付き確率場では、尤度最大化学習を用いて学習(パラメタベクトルλの推定)をおこなう。しかし、非特許文献3及び非特許文献4において、条件付き確率場を尤度最大化による学習(パラメタ推定)ではなく、実際に解きたいタスクの評価指標を基準として最大化(或は最小化)する学習手法が提案されている。
As described above, generally, in the conditional random field, learning (estimation of the parameter vector λ) is performed using likelihood maximization learning. However, in
条件付き確率場によって学習したモデルを実問題に用いる際の性能評価は、対象とする問題に特化した評価指標を用いて性能を評価する場合がほとんどである。しかし、尤度最大化学習は、あくまで尤度(出力確率の対数)を最大化する学習であって、学習後の対象タスクの性能を最大化することは保証していない。つまり、非特許文献3及び非特許文献4で提案されている「評価指標最大化学習」は、この学習時に最適化する目的関数と、実際にタスク評価に用いる評価指標との不整合を解消することを可能としている。
Performance evaluation when using a model learned by a conditional random field for a real problem is almost always performed by using an evaluation index specialized for the target problem. However, likelihood maximization learning is learning that maximizes the likelihood (logarithm of the output probability), and does not guarantee that the performance of the target task after learning is maximized. In other words, “evaluation index maximization learning” proposed in
具体的な例をあげる。系列セグメンテーションでは、各セグメント単位でのF値という指標を用いて系列セグメンテーションの性能を評価する。 A specific example is given. In the sequence segmentation, the performance of the sequence segmentation is evaluated using an index called F value in each segment unit.
数式(11)において、TP,FP,FNは、それぞれtrue positive(正例の正解数),false positive(負例の正例への間違い数),false negative(正例の負例への間違い数)のセグメント数を表す。また、γは、F値を計算する上で、再現率と適合率とのトレードオフの度合いを決定するハイパーパラメータであり、目的とするタスクに合わせて人手により設定する値である。一般的には、γ=1を用いてF値を計算する。 In Equation (11), TP, FP, and FN are true positive (number of correct answers for positive examples), false positive (number of errors for positive examples of negative examples), and false negative (number of errors for negative examples of positive examples), respectively. ) Represents the number of segments. In addition, γ is a hyperparameter that determines the degree of trade-off between the recall rate and the matching rate in calculating the F value, and is a value that is manually set according to the target task. In general, the F value is calculated using γ = 1.
F値とは、主に正例・負例のように2種類の出力を前提に考えられた評価指標であり、「正例(positive)」を評価対象としたい出力のクラスとし、「負例(negative)」はそれ以外(評価対象としない)の出力のクラスとする。系列セグメンテーションの場合は、IOBラベリングのOが付与されている場合を負例と考え、それ以外のラベルを全て正例として扱う。つまり、TPやFNの最大数は正例セグメント数となり、FPは全セグメント数が最大数となる。 The F value is an evaluation index that is considered on the premise of two types of outputs, such as positive examples and negative examples. The “positive example” is the output class that is to be evaluated, and the “negative example” “(Negative)” is the other (not evaluated) output class. In the case of series segmentation, the case where O of IOB labeling is given is considered as a negative example, and all other labels are handled as positive examples. That is, the maximum number of TPs and FNs is the number of positive segments, and the total number of segments of FP is the maximum number.
数式(11)と数式(9)とを比べてもわかるように、F値と系列の尤度にはある程度の相関関係はあるにせよ、比例関係のような密接な関係にあるような指標ではない。具体的な対比としては、数式(9)の右辺は、サンプル毎の尤度の総和(線形)をもちいるが、数式(11)の右辺では、単純な総和ではなく正例・負例を考慮した分数の形(非線形)の式になっている。また、数式(9)は、系列全体を一単位として評価を行っているが、数式(11)では、セグメントを一単位として評価を行っている。
このように、系列セグメンテーション問題において、尤度最大化学習によって学習を行ったとしても、解決したい問題の性能を最大にする学習をしているとは限らない。非特許文献3及び非特許文献4においては、通常の尤度最大化学習をおこなうよりも解決したい問題の評価指標を最大化する学習をおこなうことによって、さらに性能が向上することが示されている。
As can be seen from the comparison between Equation (11) and Equation (9), although there is a certain degree of correlation between the F value and the likelihood of the sequence, an indicator that is closely related such as a proportional relationship Absent. As a specific comparison, the right side of Equation (9) uses the sum of likelihood (linear) for each sample, but the right side of Equation (11) considers positive and negative examples instead of simple summation. This is a fractional (non-linear) formula. In addition, the numerical formula (9) is evaluated with the whole series as one unit, but the numerical formula (11) is evaluated with the segment as one unit.
As described above, in the sequence segmentation problem, even if learning is performed by likelihood maximization learning, learning that maximizes the performance of the problem to be solved is not necessarily performed.
また、この枠組を用いることで、対象とする実問題の評価関数が「正解(又は誤り)の数」を基準として計算するような評価関数であれば、どのような評価関数であっても、条件付き確率場の学習に用いる目的関数として導入することが可能となる。つまり、一般的に用いられるような実問題の評価指標は基本的に正解(又は誤り)の数を基準として計算されるため、この枠組を用いることで、現在用いられているほとんどの評価指標を用いて条件付き確率場を学習することが可能となる。 In addition, by using this framework, any evaluation function can be used as long as the evaluation function of the target actual problem is calculated based on the “number of correct answers (or errors)”. It can be introduced as an objective function used for learning of a conditional random field. In other words, generally used evaluation indicators for actual problems are basically calculated based on the number of correct answers (or errors), so by using this framework, most of the currently used evaluation indicators can be calculated. It is possible to learn a conditional random field using this.
「評価指標最大化学習」では、扱いたい評価指標によって学習時の最適化法を考案しなくてはいけない。評価指標最大化学習で、ある評価指標についての最適化法(アルゴリズムを含む)を考えるにあたり、評価指標が利用する(最小)評価単位をはじめに定義する必要がある。ここでは、系列ラベリング又はセグメンテーションを対象にしているので、評価単位としては主に(1)系列全体,(2)セグメント,(3)ラベル単体という3種類が考えられる。 In “evaluation index maximization learning”, an optimization method at the time of learning must be devised according to the evaluation index to be handled. In the evaluation index maximization learning, when considering an optimization method (including an algorithm) for a certain evaluation index, it is necessary to first define the (minimum) evaluation unit used by the evaluation index. Here, since series labeling or segmentation is targeted, there are mainly three types of evaluation units: (1) whole series, (2) segments, and (3) single labels.
基本的な手段として、評価指標最大化学習では、評価単位毎の正解出力y*と正解以外の出力候補y(y≠y*)の差分を用いる。そして、この評価単位毎の差分を対象とする評価指標に基づいて最大化するように学習をおこなう。つまり、最も間違えやすい出力候補と正解出力との差を扱う評価指標に基づいて、その差分を大きくするということは、最終的な評価指標を最大化することになる。 As a basic means, the evaluation index maximization learning uses a difference between the correct output y * for each evaluation unit and the output candidate y (y ≠ y * ) other than the correct answer. Then, learning is performed so as to maximize the difference for each evaluation unit based on the evaluation index. In other words, increasing the difference based on the evaluation index that handles the difference between the output candidate that is most likely to be mistaken and the correct output maximizes the final evaluation index.
条件付き確率場で系列全体としての出力yの決定関数g()は、特徴ベクトルとパラメタベクトルの内積として次のように与えられる。 The decision function g () of the output y as a whole sequence in the conditional random field is given as the inner product of the feature vector and the parameter vector as follows.
決定関数とは、入力xとパラメタベクトルλを与えたときに、ある出力yが出力される尤度(またはスコア)を表す関数である。ただし、ここでの出力yは、評価の単位が系列全体の場合を表している。また、右辺の総和iは単一のクリーク単位での特徴ベクトルの総和を表している。このとき誤り推定関数は、決定関数を用いて次のように定義できる。 The decision function is a function representing the likelihood (or score) that a certain output y is output when an input x and a parameter vector λ are given. However, the output y here represents the case where the unit of evaluation is the entire series. The sum i on the right side represents the sum of feature vectors in a single clique unit. At this time, the error estimation function can be defined as follows using a decision function.
誤り推定関数とは、学習データに付けられた正解と正解以外の出力と比較してどの程度、間違えやすいかという推定量を出力する関数である。ここでは、正解と正解以外の出力候補との差分で表す。つまり、最も間違えやすい出力候補と正解との決定関数の差分が大きければ大きい程、間違えにくいということを意味する推定量である。 The error estimation function is a function that outputs an estimation amount indicating how much the error is likely to be mistaken compared to the correct answer attached to the learning data and the output other than the correct answer. Here, it represents with the difference of an output candidate other than a correct answer and a correct answer. In other words, this is an estimated amount that means that the larger the difference between the decision function between the output candidate that is most likely to be mistaken and the correct answer, the smaller the mistake.
最終的には、この誤り推定関数d()を用いて利用したい評価指標に基づいた目的関数を構成する。つまり、評価時の評価指標の計算を、学習時には、誤り推定関数の返す値を利用して評価指標を計算するという手順になる。ただし、数式(13)を用いる場合、誤り推定関数は[-∞,∞]の値域をとるが、実際の評価指標では[0,1]の値域のみを利用したい場合が考えられる。例えば、正解率で評価する場合は、誤りの数で評価指標が構成されているので、正解を1,誤りを0として計算したい。そこで、一般的には平滑化関数を用いて値域を変換する。平滑化関数の例として、シグモイド関数等がある。ここで、図9は、平滑化関数の例を示す図面である。図9には、平滑化関数の例として、ステップ関数、シグモイド関数及びロジステック関数をあげる。
ただし、平滑化関数は計算不能等を引き起こさないための一つの手段であり、評価指標最大化学習に必須の手法や条件というわけではない。
Finally, an objective function based on the evaluation index to be used is constructed using this error estimation function d (). That is, the evaluation index is calculated at the time of evaluation, and at the time of learning, the evaluation index is calculated using the value returned by the error estimation function. However, when Equation (13) is used, the error estimation function takes a range of [−∞, ∞], but in the actual evaluation index, only the range of [0, 1] may be used. For example, when evaluating with the correct answer rate, since the evaluation index is composed of the number of errors, it is desired to calculate the correct answer as 1 and the error as 0. Therefore, generally, the range is converted using a smoothing function. An example of the smoothing function is a sigmoid function. Here, FIG. 9 is a diagram illustrating an example of the smoothing function. FIG. 9 shows a step function, a sigmoid function, and a logistics function as examples of the smoothing function.
However, the smoothing function is one means for preventing incompatibility and the like, and is not an essential method or condition for evaluation index maximization learning.
評価単位が系列全体に対する評価指標を扱う場合には、数式(13)のような誤り推定関数d()を用いればよい。系列全体を扱う時と同様に、セグメント単位での誤り推定関数d[i,j]()(位置i〜jまでの区間の場合)を定義すればよい。
ここで、図10は、非特許文献3及び非特許文献4に記載の誤り推定計算方法を説明する図面である。図10に記載の方法では、正解パスと正解パス以外で最も出力されやすいパスとの差分を計算し、このセグメント単位での誤り推定関数を系列全体の誤り推定関数を用いて、近似的に計算をおこなっている。
ただし、正解パス以外で最も出力されやすいパスとは、対象セグメントy2y4間で、正解パスと一致しないパスの中から選択される。
When the evaluation unit deals with an evaluation index for the entire sequence, an error estimation function d () as expressed by Equation (13) may be used. Similar to the case of handling the entire sequence, an error estimation function d [i, j] () (in the case of the section from position i to j ) may be defined in units of segments.
Here, FIG. 10 is a diagram for explaining the error estimation calculation methods described in
However, the path that is most likely to be output other than the correct path is selected from paths that do not match the correct path between the target segments y 2 y 4 .
このように、系列全体の誤り推定関数を利用してセグメントの誤り推定関数を構成しているのは、条件付き確率場が、元来系列全体に対する尤度最大化学習という枠組を提供していることから、系列全体に対する決定関数g()や誤り推定関数d()に対する効率的な計算法が確立されていたという背景がある。また逆に、評価指標最大化学習の枠組での系列ラベリング/セグメンテーションでは、セグメント単位での誤り推定関数を厳密に計算する方法・アルゴリズムがこれまで発明されていなかったため、近似的な方法を用いていたという背景もある。つまり、非特許文献3及び非特許文献4では、条件付き確率場の学習時に用いる計算アルゴリズムとほぼ同じアルゴリズムを用いることで、セグメント単位の誤り推定関数の計算を近似的に実現していた。
As described above, the error estimation function of the segment is configured using the error estimation function of the entire sequence. The conditional random field originally provides a framework of likelihood maximization learning for the entire sequence. Therefore, there is a background that an efficient calculation method for the decision function g () and the error estimation function d () for the entire sequence has been established. Conversely, in sequence labeling / segmentation in the evaluation index maximization learning framework, a method / algorithm for strictly calculating an error estimation function for each segment has not been invented so far, and an approximate method is used. There is also a background that. That is, in
しかし、一方で、従来技術のように、系列全体に対する誤り推定関数を近似的に用いると、本来最適化したいセグメント単位の評価指標を真に最大化しているという保証はない。
このことを、従来技術の問題点を説明する図面である図11を参照しつつ説明する。図11に示した出力候補グラフの対象区間[i=2,j=2]において、パス単位の値を用いた場合には、c−l−o:3.8であるCノードが出力されるが、セグメント単位の値を用いた場合には、セグメント尤度が8.8のBノードが出力されてしまう。
However, on the other hand, if the error estimation function for the entire sequence is approximately used as in the prior art, there is no guarantee that the segment-by-segment evaluation index to be optimized is truly maximized.
This will be described with reference to FIG. 11, which is a drawing for explaining the problems of the prior art. In the target section [i = 2, j = 2] of the output candidate graph shown in FIG. 11, when a path unit value is used, a C node of c−l−o: 3.8 is output. However, when a segment unit value is used, a B node having a segment likelihood of 8.8 is output.
セグメント単位で見た場合、セグメントの出力確率と系列の出力確率に基づくセグメントの出力確率には、相関はあるが一致はしないから起こる不整合である。つまり、厳密な意味で、本来の目的である評価指標を最大化していない可能性がある。 When viewed in segment units, there is a mismatch between the segment output probability and the segment output probability based on the sequence output probability because there is a correlation but no match. That is, there is a possibility that the evaluation index that is the original purpose is not maximized in a strict sense.
以上の問題を解決するため、本発明は、パラメタベクトルを推定する際に、評価単位(セグメント単位、ラベル単位や系列全体の場合も含む)の誤り推定関数を厳密に求め、従来法で用いる近似的な計算法と同じ計算量で実現可能な手段を提供することを目的とする。 In order to solve the above problems, the present invention accurately calculates an error estimation function of an evaluation unit (including a segment unit, a label unit, or an entire sequence) when estimating a parameter vector, and uses an approximation used in the conventional method. It is an object to provide a means that can be realized with the same amount of calculation as a typical calculation method.
前記の課題を解決するためになされた本発明に係る言語解析モデル学習装置は、テキストデータに所定の分類タグを付与するために使用するパラメタベクトルを、予め分類タグが付与されたテキストデータである学習データから算出するものであって、学習データに分類タグの種類を示す出力ラベル候補を対応付けた出力候補グラフと、パラメタベクトルの初期値とを記憶した記憶部と、学習データの所定の評価単位の出現確率を、パラメタベクトルを変数として周辺確率により表す決定関数を用いて、学習データの正解の要素の出現確率と、正解の要素以外で最も出力されやすい要素の出現確率との差分を誤り推定関数として計算し、推定関数を用いて設定される目的関数を最適化するパラメタベクトルを算出するパラメタ学習部とを備えることを特徴としている。
本発明に係る言語解析モデル学習装置によると、学習データの評価単位の要素の厳密な出現確率に基づく評価指標最大化学習を行うことができる。
The language analysis model learning apparatus according to the present invention, which has been made to solve the above-mentioned problem, is text data in which a classification tag is assigned in advance to a parameter vector used for assigning a predetermined classification tag to text data. A storage unit that is calculated from learning data and stores an output candidate graph in which output label candidates indicating classification tag types are associated with the learning data, an initial value of the parameter vector, and a predetermined evaluation of the learning data Using a decision function that expresses the occurrence probability of a unit as a variable with a parameter vector as a marginal probability, the difference between the occurrence probability of the correct element in the training data and the appearance probability of the element that is most likely to be output other than the correct element is incorrect. A parameter learning unit that calculates a parameter vector that is calculated as an estimation function and that optimizes an objective function that is set using the estimation function. It is characterized in that.
According to the language analysis model learning device of the present invention, it is possible to perform evaluation index maximization learning based on the strict appearance probability of elements of evaluation units of learning data.
なお、本発明のその他の態様については、後記する最良の形態において詳しく説明する。 Other aspects of the present invention will be described in detail in the best mode described later.
本発明によると、従来技術と比較して様々な点が改善される。
厳密な出現確率に基づく評価指標最適化学習を行うことが可能となるため、最適化したい評価指標の意味で最良の学習結果を得ることが可能となる。従来技術は、目的関数を評価指標に置き換えるための方法論を示したが、実際に評価単位での出力確率を求める際には、従来から用いられてきた計算アルゴリズムを流用して近似値を用いていた。このため、枠組としては、評価指標最大化を行う学習法であったが、実際には評価指標を最大化していない可能性を含んでいた。一方、本発明はその問題点を改善し、厳密な出力確率に基づいて評価指標を最適化することを可能とする。
According to the present invention, various points are improved as compared with the prior art.
Since it is possible to perform evaluation index optimization learning based on a strict appearance probability, it is possible to obtain the best learning result in the meaning of the evaluation index desired to be optimized. The prior art has shown a methodology for replacing the objective function with an evaluation index. However, when actually obtaining the output probability in the evaluation unit, an approximate value is used by diverting a calculation algorithm that has been used conventionally. It was. For this reason, the framework is a learning method that maximizes the evaluation index, but there is a possibility that the evaluation index is not actually maximized. On the other hand, the present invention improves the problem and makes it possible to optimize the evaluation index based on a strict output probability.
また、評価単位の出力確率を求めることができるため、この出力結果を用いてさらに処理を行う際に、出力値を確率として扱うことが可能となる。例えば、本発明を用いた固有表現抽出を行って、それを情報検索に用いる場合、出力された固有表現がどのくらい信頼性があるかといった指標として用いることができたり、確率論に基づいた情報検索システムであれば、本発明を用いた固有表現システムをそのまま情報検索システムと結合することが可能となる。従来法では、出力値が確率の定義を満たさない可能性があるため、このような状況で、そのまま出力値を扱うことができなかった。 Further, since the output probability of the evaluation unit can be obtained, the output value can be treated as a probability when further processing is performed using this output result. For example, when performing a specific expression extraction using the present invention and using it for information retrieval, it can be used as an index of how reliable the output specific expression is, or information retrieval based on probability theory If it is a system, the named entity system using the present invention can be directly coupled to the information retrieval system. In the conventional method, there is a possibility that the output value does not satisfy the definition of the probability. Therefore, in such a situation, the output value cannot be handled as it is.
以下、本発明の方式を説明し、その後、その方式を適用した発明を実施するための最良の形態(以下、実施形態)について説明する。 Hereinafter, the system of the present invention will be described, and then the best mode (hereinafter referred to as an embodiment) for carrying out the invention to which the system is applied will be described.
(言語モデルの学習方法の概略)
ここで、図12は、あるセグメントの出力確率を説明する図面である。
図12に示す出力候補グラフにおいて、出力系列y中の位置iから位置jまでの間のセグメントの(部分)出力系列y[i,j]の出力確率は、周辺確率を用いて以下のように定義することができる。
(Outline of learning method of language model)
Here, FIG. 12 is a diagram for explaining the output probability of a certain segment.
In the output candidate graph shown in FIG. 12, the output probability of the (partial) output sequence y [i, j] of the segment between the position i and the position j in the output sequence y is as follows using the marginal probabilities: Can be defined.
数式(15)において、
は、セグメント[i,j]間のパスを通る全てのパスの重みの総和を表している。また、α[0,i](yi)及びβ[j,n](yj)は、それぞれ、前側確率及び後側確率であり、[i,j]間の周辺確率を表している。図12に示した例では、α[0,i](yi)は、セグメント[0,2]の確率を、β[j,n](yj)は、セグメント[4,6]の確率をそれぞれ表す。そして、前側確率は、次に示す数式(16)のように定義される。
In Formula (15),
Represents the sum of the weights of all the paths passing through the path between the segments [i, j]. Further, α [0, i] (y i ) and β [j, n] (y j ) are a front probability and a rear probability, respectively, and represent a peripheral probability between [i, j]. In the example shown in FIG. 12, α [0, i] (y i ) is the probability of segment [0, 2], and β [j, n] (y j ) is the probability of segment [4, 6]. Respectively. The front probability is defined as in the following formula (16).
ただし、i=0のときは、α[0,0](y0)=1とする。また、Yを単一のラベルの(とりうる全てのラベル)集合とする。同様に後側確率も、次に示す数式(17)のように定義される。 However, when i = 0, α [0, 0] (y 0 ) = 1. Also, let Y be a set of single labels (all possible labels). Similarly, the rear probability is also defined as the following formula (17).
ただし、j=nのときは、β[n,n](yn)=1とする。
数式(15)の分母は、yに依存しないので、最終的にセグメント単位の出現確率を基準にしたセグメント単位の決定関数は次のように表せる。
However, when j = n, β [n, n] (y n ) = 1.
Since the denominator of Equation (15) does not depend on y, the segment unit decision function based on the appearance probability of the segment unit can be expressed as follows.
よって、このセグメント出現確率に基づいた決定関数を用いると、誤り推定関数d()は次のように表せる。 Therefore, using a decision function based on this segment appearance probability, the error estimation function d () can be expressed as follows.
ここで、図13は、図12に示す出力候補グラフにおける数式(19)の意味を説明する図面である。図13に示しように、数式(19)における−g[i,j](y*,x,λ)の項は、正解セグメントの出現確率を示し、それ以下の項は、正解以外で最も出力されやすいセグメントの出現確率を示している。ただし、正解以外で最も出力されやすいセグメントとは、対象区間[2,4]間で正解セグメントと一致しないセグメントの中から選択される。 Here, FIG. 13 is a diagram for explaining the meaning of Equation (19) in the output candidate graph shown in FIG. As shown in FIG. 13, the term of −g [i, j] (y * , x, λ) in the equation (19) indicates the appearance probability of the correct segment, and the term below it is the most output other than the correct answer. It shows the appearance probability of the segment that is easy to be performed. However, the segment that is most likely to be output other than the correct answer is selected from the segments that do not match the correct segment in the target section [2, 4].
周辺確率を用いることで、系列中から対象セグメントが選択される確率を厳密に求めることが可能となる。これにより、誤り推定関数は、正解セグメントが出力される確率とそれ以外のセグメントが出力される確率との差分を利用して学習を行うことになる。 By using the marginal probabilities, it is possible to strictly determine the probability that the target segment is selected from the series. Thereby, the error estimation function performs learning using the difference between the probability that the correct segment is output and the probability that other segments are output.
誤り推定関数として、従来技術の数式(13)と数式(19)とを比較すると、表層的には従来技術でセグメント単位の決定関数を系列全体の値で近似していたものを、セグメント単位で正確に計算した値に置き換えた形になる。ただし、決定関数として、従来技術の数式(12)と数式(18)とを比較すると、従来技術では系列の重みを用いていたのに対して、本発明では周辺確率用いたセグメントの出現確率に基づいた重みを用いているという違いがわかる。 Comparing Equation (13) and Equation (19) of the prior art as an error estimation function, the surface layer has approximated the segment unit decision function by the value of the entire series in the surface layer. It becomes the form replaced with the accurately calculated value. However, comparing the formula (12) and formula (18) of the prior art as a decision function, the weight of the sequence is used in the prior art, whereas in the present invention, the segment appearance probability using the marginal probability is used. You can see the difference of using the weight based on.
実際の計算アルゴリズムとしては、α0,k(yk)やβl,n(yl)は、forward-backwardアルゴリズムを用いることにより効率的に計算することが可能である。つまり、従来技術では、Viterbiアルゴリズムを前からと後ろからの2パスで計算することで、系列全体の出力確率から対象セグメントの決定関数と誤り推定関数とを近似していたが、本発明では、その代わりにforward-backwardアルゴリズムを用いて、セグメント単位の決定関数や誤り推定関数を計算する。また、従来技術に係る2パスViterbiアルゴリズムと、本発明に係るforward-backwardアルゴリズムの計算量は全く同じになることから、本発明によると、従来技術と同じ計算量で厳密なセグメント単位の出力確率に基づいた最適化が可能となる。 As an actual calculation algorithm, α 0, k (y k ) and β l, n (y l ) can be efficiently calculated by using a forward-backward algorithm. That is, in the prior art, the Viterbi algorithm is calculated in two passes from the front and the back, and the target segment decision function and the error estimation function are approximated from the output probability of the entire sequence. Instead, the forward-backward algorithm is used to calculate the segment unit decision function and error estimation function. In addition, since the calculation amount of the two-pass Viterbi algorithm according to the prior art and the forward-backward algorithm according to the present invention are exactly the same, according to the present invention, the exact output probability of the segment unit with the same calculation amount as the prior art. Optimization based on the above becomes possible.
(テキスト解析装置)
次に、前記の方式を適用した本発明の実施形態に係るテキスト解析装置について説明する。図14は本実施形態のテキスト解析装置のブロック構成図である。図14に示すように、テキスト解析装置1は、演算装置であるCPU(Central Processing Unit)11、後記するプログラムが展開され、一時記憶されるデータが保持されるRAM(Random Access Memory)12、外部との入出力インタフェースである入出力部13及びハードディスクドライブ等からなるストレージ14とを相互に接続して構成され、パーソナルコンピュータ等を用いて具現される。
(Text analyzer)
Next, a text analysis apparatus according to an embodiment of the present invention to which the above method is applied will be described. FIG. 14 is a block diagram of the text analysis apparatus of this embodiment. As shown in FIG. 14, the
また、テキスト解析装置1のストレージ14には、CPU11が実行することで、それぞれ学習器141、推定器142及びタグ/セグメント変換器143として動作するプログラムと、各プログラムが使用又は生成する学習データ144、パラメタベクトル145、生テキスト146、タグ付きテキスト147及びセグメント別タグ付きテキスト148とが記憶されている。
なお、各プログラムの動作及び各データの内容については後記する。また、ストレージ14に記憶された各プログラム及び各データは、コンピュータで読み取り可能な各種の記録媒体(CD−ROM等)に記憶することができる。
Also, the storage 14 of the
The operation of each program and the contents of each data will be described later. Each program and each data stored in the storage 14 can be stored in various computer-readable recording media (CD-ROM or the like).
(テキスト解析装置の動作の概略)
次に、図15は、前記の構成を有するテキスト解析装置1の処理動作の概略を説明する説明図である。図15を参照しつつ、テキスト解析装置1の処理動作を説明する。
(Outline of operation of text analysis device)
Next, FIG. 15 is an explanatory diagram for explaining the outline of the processing operation of the
テキスト解析装置1の動作は、タグ付きコーパスである学習データに基づいて、パラメタベクトルを計算する学習フェーズと、計算されたパラメタベクトルを用いて生テキストにタギンク又はチャンキングを行う評価フェーズとに大きく分けられる。
The operation of the
図15に示すように、学習フェーズでは、学習器141が、タグ付きコーパスである学習データ144の入力を受けて、パラメタベクトル145を出力する。
そして、評価フェーズに移って、推定器142が、この出力されたパラメタベクトル145を用いて、生テキスト146に対してタギングを実行し、タグ付きテキスト147を出力する。そして、タグ/セグメント変換器143が、推定器142が出力したタグ付きテキスト147に対して、チャンキングを実行し、セグメント別タグ付きテキスト148を出力する。ここで、参考として、図16に、学習器141に入力される学習データ144及び出力されるパラメタベクトル145の例を、図17に、推定器142に入力される生テキスト146及び出力されるタグ付きテキスト147の例をそれぞれ示す。
As shown in FIG. 15, in the learning phase, the
Then, in the evaluation phase, the
なお、推定器142における処理は、学習器141における処理において、学習データ144の代わりに生テキスト146を入力し、パラメタベクトル145の初期値の代わりに学習器141の計算したパラメタベクトル145を入力したものであるため、その詳細な説明は省略する。また、タグ/セグメント変換器143における処理は、前記のように公知のアルゴリズムを適用することができるため、同じくその詳細な説明を省略する。
また、図15に示した動作例では、推定器142は、タギングを実行してタグ付きテキスト147を出力することとしたが、チャンキングを実行してセグメント付きテキストを出力して、タグ/セグメント変換器143において、タギングを実行してセグメント別タグ付きテキスト148を出力することにしてもよい。
In the processing in the
Further, in the operation example shown in FIG. 15, the
(学習器の構成・動作)
次に、テキスト解析装置1の構成要素のうち、学習器141について詳しく説明する。なお、学習器141は、特許請求の範囲の言語解析モデル学習装置に相当し、学習器141における処理手順は、言語解析モデル学習方法に相当している。
(Configuration and operation of learning device)
Next, the
ここで、図18は、学習器141の詳細ブロックを示す図面である。図18に示すように、学習器141は、出力候補グラフ生成部1411、特徴抽出部1412及びパラメタ学習部1413を備えている。
出力候補グラフ生成部1411は、学習データ144及び入出力部13から入力された出力ラベル候補に基づいて出力候補グラフを生成する。特徴抽出部1412は、入出力部13から入力された特徴抽出テンプレートを取得し、出力候補グラフ生成部1411が生成した出力候補グラフ上のクリーク単位に特徴を抽出し、パラメタベクトル145の次元数を計算し、その初期値を設定する。パラメタ学習部1413は、出力候補グラフ及び特徴抽出部1412が設定したパラメタベクトル145の初期値に基づいて、学習基準アルゴリズムにより、パラメタベクトル145を学習する。
Here, FIG. 18 is a diagram illustrating a detailed block of the
The output candidate
次に、図19は、学習器141の処理手順を示すフローチャートである。図19を参照しつつ、学習器141における処理手順を詳しく説明する。なお、以下の手順において、各構成要素が生成又は計算した情報は、RAMに一時記憶されるものとし、その記載は省略する。
Next, FIG. 19 is a flowchart showing a processing procedure of the
まず、学習器141を動作させる準備として、学習に用いる評価指標を決定(主に対象とする問題の評価指標を利用)し、この決定した評価指標に基づいて評価の(最小)単位を決定する。そして、決定した評価指標及び評価の単位に基づいて、学習に用いる目的関数を決定しておく。
First, as preparation for operating the
そして、学習器141の動作が開始され、学習器141の出力候補グラフ生成部1411は、ストレージ14から学習データ144
を所得して(ステップS101)、RAM12に記憶する。
Then, the operation of the
Is obtained (step S101) and stored in the
次に、出力候補グラフ生成部1411は、入出力部13を介して対象とする問題に依存した出力ラベル候補集合を取得し(ステップS102)、RAM12に記憶する。そして、RAM12に記憶した学習データ及び出力ラベル候補集合に基づいて、出力候補グラフを生成する(ステップS103)。
Next, the output candidate
次に、出力候補グラフ生成部1411は、特徴抽出部1412に処理を受け渡し、特徴抽出部1412は、入出力部13を介して特徴抽出テンプレートを取得し(ステップS104)、RAM12に記憶する。そして、出力候補グラフ生成部1411が生成した出力候補グラフ上のクリーク単位に特徴ベクトルを抽出し、パラメタベクトル145の次元数を計算する(ステップS105)。さらに、特徴抽出部1412は、パラメタベクトル145の初期値を設定する。なお、このパラメタベクトル145の初期値とは、例えば、パラメタベクトル145の各要素を、0と設定したものである。
Next, the output candidate
次に、特徴抽出部1412は、パラメタ学習部1413に処理を受け渡し、パラメタ学習部1413は、出力候補グラフ生成部1411が生成した出力候補グラフ及び特徴抽出部1412が計算した次元数を有するパラメタベクトル145の初期値に基づいて、学習基準アルゴリズムにより、パラメタベクトル145を学習し(ステップS106)、ストレージ14に学習結果を記憶する。
Next, the
(パラメタ学習部における処理の詳細)
次に、図20は、パラメタ学習部1413の詳細な処理手順を示すフローチャートである。図20を参照しつつ、ステップS106におけるパラメタ学習部1413の処理をさらに詳細に説明する。
(Details of processing in the parameter learning unit)
Next, FIG. 20 is a flowchart showing a detailed processing procedure of the
図19に示したフローチャートのステップS107に処理が移ると、パラメタ学習部1413は、その時点のパラメタベクトル145を用いて、各評価単位に対して正解出力のスコア(重み)を計算する(ステップS201)。そして、その時点のパラメタベクトル145を用いて、各評価単位に対して正解以外の出力候補(最尤出力候補)のスコアを計算する(ステップS202)。
When the process moves to step S107 in the flowchart shown in FIG. 19, the
次に、パラメタ学習部1413は、各評価単位に対して、ステップS201で計算した正解出力のスコアと、ステップS202で計算した最尤出力候補のスコアとの差分を計算する(ステップS203)。そして、事前に決定された評価指標に基づいて目的関数Lを計算する(ステップS204)。
Next, the
次に、パラメタ学習部1413は、ステップS204で計算した目的関数Lの勾配∇Lλを計算して(ステップS205)、目的関数Lが収束したか否かを判定する(ステップS206)。この判定は、例えば、勾配∇Lλが所定値以下か否かで判定することができる。ここで、目的関数Lが収束してなければ(ステップS206で‘No’)、勾配∇Lλの値を用いてスコアを更新しステップS201に戻る。一方、目的関数Lが収束した場合は(ステップS206で‘Yes’)、その時点のパラメタベクトル145をストレージ14に記憶して処理を終了する(図19のステップS106に戻る)。
Next, the
次に、学習器141の動作(学習フェーズ)として、系列セグメンテーションを行う2つの具体的な例を示しつつ、さらに詳しく説明する(適宜、図18〜20参照)。
Next, the operation (learning phase) of the
(具体例1:正解率を評価指数とする系列セグメンテーション)
具体例1では、系列セグメンテーション問題で、「評価単位」を「セグメント」とし、「評価指標」を「セグメント単位の正解率」とした場合の具体例を示す。この評価単位及び評価指標の決定は、図20に示したステップS204において適用する評価指標(学習基準)を決定することに相当し、学習器141の処理の前準備として事前に決定される。
系列セグメンテーション問題で、前記のように「評価単位」を「セグメント」とし、「評価指標」を「セグメント単位の正解率」とした場合の目的関数は以下のようになる。
(Specific example 1: Series segmentation with accuracy rate as evaluation index)
Specific Example 1 shows a specific example in the case of “Segmentation Unit” as “Segment” and “Evaluation Index” as “Segment Correct Rate” in the sequence segmentation problem. The determination of the evaluation unit and the evaluation index corresponds to determining the evaluation index (learning standard) to be applied in step S204 shown in FIG. 20, and is determined in advance as a preparation for the processing of the
In the sequence segmentation problem, as described above, the objective function when the “evaluation unit” is “segment” and the “evaluation index” is “the accuracy rate per segment” is as follows.
ただし、正解率は、エラー率の反比例の関係にあり、数式(19)の誤り推定関数は正解のスコアが大きいときには大きなマイナスの値をとるように定義されているので(一般的に機械学習分野では誤り最小化で定義するため)、実際にはエラー率最小化を行う。 However, the correct answer rate is inversely proportional to the error rate, and the error estimation function of Equation (19) is defined to take a large negative value when the correct answer score is large (generally, in the machine learning field). In this case, error rate minimization is actually performed.
ゆえに、目的関数を次のように定義する。 Therefore, the objective function is defined as follows.
なお、総セグメント数は定数になるので、目的関数には含めない。
その後、図19に示したフローチャートしたがって、学習器141の出力候補グラフ生成部1411は、学習データ(タグ付きコーパス)を取得する(ステップS101)。また、同時に出力ラベル候補集合を取得する(ステップS102)。
Since the total number of segments is a constant, it is not included in the objective function.
After that, according to the flowchart shown in FIG. 19, the output candidate
ここで、図21は、出力候補グラフ生成部1411が取得した学習データ等の例を示す図面である。図21(a)は、学習データの例を示し、「田中・一郎・は・陸上・連盟・の・会長・です」(形態素区切りは事前にあるという設定)といったテキストにラベルが付与されているものが入力される。また、このときの出力ラベル候補は図21(b)に示すように、「B−人名,I−人名,B−組織名,I−組織名,O」の5種類のラベルが出力ラベル候補集合となる。
Here, FIG. 21 is a diagram illustrating an example of learning data or the like acquired by the output candidate
次に、取得した学習データに基づいて、出力候補グラフ生成部1411は出力候補グラフを生成する(ステップS103)。ここで、図21(c)は、出力候補グラフ生成部1411が、図21(a)の学習データ及び図21(b)の出力ラベル集合に基づいて生成した出力候補グラフの例である。図21(c)に示した出力候補グラフは、可能性のある全ての出力候補をパスで接続したラティス形式をとる。つまり、出力候補グラフ中のBOSノードからEOSノード間の一つのパスが一つの出力に対応し、出力候補グラフは、とり得る全ての出力の候補を包含したグラフになっている。
Next, based on the acquired learning data, the output candidate
さらに、出力候補グラフと特徴抽出テンプレートとを用いて、出力候補グラフの各ノード(またはリンク)に特徴ベクトルを付与する。
特徴抽出テンプレートは、図6に示したような形式であり、ここでは、前後2単語の特徴を用いて対象とする位置のノードの特徴ベクトルを作成する。このとき、前後2単語とノードが属する出力ラベルの組合せで特徴を生成するため、同じ位置で出力ラベルの違うノード間の特徴ベクトルは、お互い直行する(内積0になる)関係になる。
Further, a feature vector is assigned to each node (or link) of the output candidate graph using the output candidate graph and the feature extraction template.
The feature extraction template has a format as shown in FIG. 6, and here, a feature vector of a node at a target position is created using features of two words before and after. At this time, since the feature is generated by the combination of the two words before and after and the output label to which the node belongs, the feature vectors between the nodes having different output labels at the same position are orthogonal to each other (the inner product is 0).
具体的な例として、図21(c)に示した出力候補グラフに対して、図22に示したような特徴ベクトルが各ノードに付与される。
以上の前処理を経て、特徴ベクトル付き出力候補グラフと、初期化されたパラメタベクトル(全ての要素が0のベクトル)とをパラメタ学習部1413に入力して、学習が開始される。
As a specific example, a feature vector as shown in FIG. 22 is given to each node for the output candidate graph shown in FIG.
Through the above pre-processing, the output candidate graph with feature vector and the initialized parameter vector (vector in which all elements are 0) are input to the
次に、パラメタ学習部1413の動作について説明する(図20参照)。例えば、図23に示した「田中 一郎 は 陸上 連盟 の 会長 です」というテキストと、正解出力が「B−人名,I−人名,O,B−組織名,I−組織名,O,O,O」の場合で、区間[4,5]を評価する場合を示す。
この区間での正解は、「B−組織名,I−組織名」なので、この二つのノードを通過する全てのパスのスコアを用いて、区間[4,5]で「B−組織名,I−組織名」が出力される周辺確率に基づいた決定関数を求める。この処理は、正解出力のスコアを計算する処理(ステップS201)に相当する。
Next, the operation of the
Since the correct answer in this section is “B-organization name, I-organization name”, using the scores of all paths passing through these two nodes, “B-organization name, I Determine a decision function based on the marginal probability that “organization name” is output. This process corresponds to the process of calculating the correct output score (step S201).
このときの計算式には、数式(19)を用いる。前側確率のα[0,i](yi)は、i=4及びy4=B−組織名となる。つまり、位置4のB−組織名のノードに接続する前側のパス全てのスコアを表している。これは、forwardアルゴリズムで求められる。
また、同様に後側確率のβ[j,n](yj)は、j=5及びy5=I−組織名であり、位置5のI−組織名のノードに接続する後側のパスのスコアである。これも、backwardアルゴリズムにより求められる。
Formula (19) is used as the calculation formula at this time. The front probability α [0, i] (y i ) becomes i = 4 and y 4 = B-organization name. That is, the scores of all the paths on the front side connected to the B-organization name node at
Similarly, β [j, n] (y j ) of the rear probability is j = 5 and y 5 = I-organization name, and the rear path connected to the node of the I-organization name at
次に、正解セグメントを除いて最もスコアの高いセグメントを求める。この処理は、最尤出力候補のスコアを計算する処理(ステップS202)に相当する。
これは、計算方法自体は正解セグメントの計算と同じであり、同一区間内で正解以外のとり得る全てのセグメントの計算を行い、最大値のセグメントを選出すればよい。
Next, the segment with the highest score is obtained except for the correct segment. This process corresponds to the process of calculating the score of the maximum likelihood output candidate (step S202).
The calculation method itself is the same as the calculation of the correct segment, and it is only necessary to calculate all possible segments other than the correct answer in the same section and select the segment with the maximum value.
ここで得られた正解セグメントと最尤出力候補セグメントのスコアを用いて、数式(19)を計算する。この処理は、差分を計算する処理(ステップS203)に相当する。
これで、区間[4,5]に対する誤り推定を行うことができた。ここでは、セグメント単位の正解率を用いるので、平滑化関数として1ogistic関数を用いることを考える(図9参照)。これにより、誤り推定関数の値は[0,∞]の値域をとり、正解セグメントの決定関数の値が大きければ大きいほど値が0に近い値を返す。
Equation (19) is calculated using the correct segment and the maximum likelihood output candidate segment score obtained here. This process corresponds to a process for calculating a difference (step S203).
Thus, error estimation for the interval [4, 5] was performed. Here, since the accuracy rate in segment units is used, it is considered to use a 1 ogistic function as a smoothing function (see FIG. 9). As a result, the value of the error estimation function takes the range [0, ∞], and the larger the value of the correct segment decision function, the closer the value is to 0.
数式(22)のセグメントエラー率は、単なるセグメント単位の誤り推定関数の総和で計算できるので、以上の処理を各セグメントに対しておこなう。この処理は、評価指標に基づいて目的関数Lを計算する処理(ステップS204)に相当する。 Since the segment error rate in the equation (22) can be calculated by simply summing the error estimation functions in segment units, the above processing is performed for each segment. This process corresponds to the process of calculating the objective function L based on the evaluation index (step S204).
そして、最終的に求めたいものは目的関数を最小化するパラメタベクトルλである。そこで、微分して0になるパラメタベクトルを求める。次に、パラメタ更新をおこなうために、目的関数(式(22))の勾配を求める。この処理は、目的関数の勾配を計算する処理(ステップS205)に相当する。
数式(22)の微分は、chain ruleを用いて以下のように分解して考えることができる。
What is finally desired is a parameter vector λ that minimizes the objective function. Therefore, a parameter vector that is differentiated to 0 is obtained. Next, in order to update parameters, the gradient of the objective function (formula (22)) is obtained. This process corresponds to the process of calculating the gradient of the objective function (step S205).
The differentiation of Equation (22) can be considered by decomposing as follows using a chain rule.
目的関数を平滑化関数lで微分したものは、1ogistic関数の定義にしたがって以下のようになる。 The objective function differentiated by the smoothing function l is as follows according to the definition of the 1 ogistic function.
ここで、誤り推定関数d()のパラメタに対する偏微分を示す。 Here, the partial differentiation with respect to the parameter of the error estimation function d () is shown.
誤り推定関数d()のパラメタの偏微分は、対象セグメントを通るパス上の各ノード(リンク)が出力される期待値となることがわかる。ゆえに、Forward-Backwardアルゴリズムを利用することで各パラメタの勾配を効率的に計算することができる。 It can be seen that the partial differentiation of the parameter of the error estimation function d () is an expected value at which each node (link) on the path passing through the target segment is output. Therefore, the gradient of each parameter can be efficiently calculated by using the Forward-Backward algorithm.
ここで計算した勾配を元に、一般的に用いられる数値最適化法を利用してパラメタを更新する。その際にパラメタの更新量が収束していたら学習は終了となり(ステップS206で‘Yes’)、パラメタベクトル145をストレージ14に出力して(ステップS207)処理を終了する。
一方、収束していない場合は(ステップS206で‘No’)、パラメタ学習の最初に戻る。この収束判定は、例えば、パラメタベクトルの変化量が十分小さい場合(所定の閾値以下となった場合)に収束したとみなす。
Based on the gradient calculated here, the parameters are updated using a generally used numerical optimization method. At this time, if the parameter update amount has converged, the learning is terminated (“Yes” in step S206), the
On the other hand, if it has not converged (“No” in step S206), the process returns to the beginning of parameter learning. This convergence determination is considered to have converged, for example, when the amount of change in the parameter vector is sufficiently small (when it is below a predetermined threshold).
この具体例によると、目的関数として、正解セグメントの出現確率と正解セグメント以外で最も出力されやすいセグメントの出現確率との差分を用いるため、全確率を学習に用い、目的関数が連続凸関数となる。従来技術では、目的関数が非連続(凸)関数になる可能性があるため、通常の数値最適化法を単に適用するということはできなかった。つまり、非連続点に対応した数値最適化法を用いる必要があった。しかし、本具体例により、制約無しの一般的な数値最適化法を用いることが可能となり、計算効率を向上させることが可能となる。 According to this specific example, since the difference between the appearance probability of the correct segment and the appearance probability of the segment that is most likely to be output other than the correct segment is used as the objective function, all the probabilities are used for learning, and the objective function becomes a continuous convex function. . In the prior art, since the objective function may be a discontinuous (convex) function, the usual numerical optimization method cannot be simply applied. In other words, it is necessary to use a numerical optimization method corresponding to discontinuous points. However, according to this specific example, it is possible to use a general numerical optimization method without restriction, and it is possible to improve calculation efficiency.
(具体例2:F値を評価指標とする系列セグメンテーション)
次に、系列セグメンテーションで「評価単位」を「セグメント」とし、「評価指標」を「F値」とした場合の具体例を示す。ここでは、数式(11)に示したF値を最大化する場合を示す。これには、以下の式を最小化することと等価である。
(Specific example 2: Series segmentation using F value as evaluation index)
Next, a specific example in the case where “evaluation unit” is “segment” and “evaluation index” is “F value” in sequence segmentation will be described. Here, the case where the F value shown in Formula (11) is maximized is shown. This is equivalent to minimizing the following equation:
ただし、Mは正例セグメント数とする。また、FPl,FNlは学習時のFP(false positive)とFN(false negative)の推定値を表す。これは、数式(11)を、次のように変形した際の分母であり、分母を最小化することが全体の最大化になるということから導出される。 However, M is the number of positive example segments. Further, FP 1 and FN 1 represent estimated values of FP (false positive) and FN (false negative) during learning. This is a denominator when Equation (11) is transformed as follows, and is derived from the fact that minimizing the denominator maximizes the whole.
数式(29)から、FP,FNの推定量FPl,FNlを計算することができれば、F値の最大化が可能となる。よって、正解率ではなく、系列セグメンテーションで数式(11)に示されたF値を最大化したい場合は、数式(28)を目的関数として学習をおこなう。以下、FPl,FNlの導出手順を説明する。 If the estimated values FP l and FN l of FP and FN can be calculated from the equation (29), the F value can be maximized. Therefore, when it is desired to maximize the F value shown in the formula (11) by the sequence segmentation instead of the correct answer rate, the learning is performed using the formula (28) as an objective function. Hereinafter, a procedure for deriving FP l and FN l will be described.
まず、FNlについて説明する。前記のようにFN(false negative)、つまり、正例を間違える推定量であるFNlは、誤り推定関数を用いて次のように定義できる。 First, FN l will be described. As described above, FN (false negative), that is, FN l , which is an estimated amount of a positive example, can be defined as follows using an error estimation function.
ただし、FNlは正例を間違える推定量なので、正例に関してのみ計算を行えばよいため、2番目の総和は正例の正解セグメントに対してのみ計算する。 However, since FN l is an estimated amount that makes a mistake in the correct example, it is only necessary to calculate for the correct example, so the second sum is calculated only for the correct answer segment of the correct example.
次に、FPlについて示す。FPlは、正例へ間違える推定量なので、負例への間違いは考慮されない。よって、誤り推定関数を計算する際に、負例への誤りは計算に含めないように式を変形する必要がある。 Next, the FP l. Since FP l is an estimated amount that is mistaken for a positive example, an error for a negative example is not considered. Therefore, when calculating the error estimation function, it is necessary to modify the equation so that errors in negative examples are not included in the calculation.
FNlに対してFPlは、とりうる全てのセグメントに対して計算を行う。
以下、パラメタ学習部で勾配を求める際の式は以下のようになる。
For FN l FP l computes for all possible segments.
Hereinafter, the equation for obtaining the gradient in the parameter learning unit is as follows.
以下、それぞれのコンポーネント毎に示す。
まず、目的関数をFNlとFPlで偏微分したものは以下のようになる。
The following is shown for each component.
First, the partial differentiation of the objective function by FN l and FP l is as follows.
ただし、ZNとZDはそれぞれ数式(28)の分子と分母の値を示す。
次に、FNlとFPlとを平滑化関数lで偏微分したものは、FNlとFPlとがlの単なる線形和で表されるため定数となる。
平滑化関数l(ここではシグモイド関数を適用)の偏微分は定義にしたがって、次のようになる。
However, each Z N and Z D shows the numerator and denominator values of the equation (28).
Next, the partial differentiation of FN l and FP l by the smoothing function l becomes a constant because FN l and FP l are represented by a simple linear sum of l.
The partial differentiation of the smoothing function l (here the sigmoid function is applied) is as follows according to the definition.
最後に、誤り推定関数d()とd’()のパラメタに対する偏微分を示す。 Finally, the partial differentiation with respect to the parameters of the error estimation functions d () and d ′ () is shown.
以下、評価単位と目的関数の定義、及び目的関数と目的関数の勾配の計算以外の処理は、セグメント正解率を用いて学習する場合と全く同じ処理になるためここでは省略する。 Hereinafter, the processing other than the definition of the evaluation unit and the objective function, and the calculation of the gradient of the objective function and the objective function is the same as the case of learning using the segment correct answer rate, and is omitted here.
以上、本発明の実施形態を説明したが、前記の説明において用いた数式等は、例示しものにすぎず、適用する言語モデルに応じて適宜変更可能である。よって、本発明の範囲は、特許請求の範囲に記載された技術的思想により定められる。 Although the embodiment of the present invention has been described above, the mathematical formulas and the like used in the above description are merely examples, and can be appropriately changed according to the language model to be applied. Therefore, the scope of the present invention is defined by the technical idea described in the claims.
11 CPU
12 RAM
13 入手力部
14 ストレージ
141 学習器
144 学習データ
145 パラメタベクトル
1411 出力候補グラフ生成部
1412 特徴抽出部
1413 パラメタ学習部
11 CPU
12 RAM
DESCRIPTION OF
Claims (12)
前記学習データに前記分類タグの種類を示す出力ラベル候補を対応付けた出力候補グラフと、前記パラメタベクトルの初期値とを記憶した記憶部と、
前記学習データの所定の評価単位の出現確率を、前記パラメタベクトルを変数として周辺確率により表す決定関数を用いて、前記学習データの正解の要素の出現確率と、前記正解の要素以外で最も出力されやすい要素の出現確率との差分を誤り推定関数として計算し、前記誤り推定関数を用いて設定される目的関数を最適化するパラメタベクトルを算出するパラメタ学習部とを備える
ことを特徴とする言語解析モデル学習装置。 A language analysis model learning device that calculates a parameter vector used for assigning a predetermined classification tag to text data from learning data that is text data to which the classification tag is assigned in advance,
An output candidate graph that associates an output label candidate indicating the type of the classification tag with the learning data, and a storage unit that stores an initial value of the parameter vector;
Using the decision function that expresses the appearance probability of the predetermined evaluation unit of the learning data by the peripheral probability using the parameter vector as a variable, the most likely output is the appearance probability of the correct element of the learning data and other than the correct element. A language analysis comprising: a parameter learning unit that calculates a difference from an appearance probability of an easy element as an error estimation function and calculates a parameter vector that optimizes an objective function set using the error estimation function Model learning device.
ことを特徴とする請求項1に記載の言語解析モデル学習装置。 The objective function is a sum of outputs of the error estimation function for all minimum evaluation units, and a parameter vector that optimizes the objective function is the parameter vector that minimizes the output of the objective function. The language analysis model learning device according to claim 1, wherein
ことを特徴とする請求項1に記載の言語解析モデル学習装置。
Forward-Backwardアルゴリズムを用いて前記決定関数の出力を計算する
ことを特徴とする請求項1ないし請求項3のいずれか1項に記載の言語解析モデル学習装置。 The parameter learning unit
The language analysis model learning device according to any one of claims 1 to 3, wherein an output of the decision function is calculated using a Forward-Backward algorithm.
前記目的関数の勾配を計算し、前記勾配が所定値以下になるまで、その時点のパラメタベクトルを用いて、前記目的関数を最適化するパラメタベクトルを再度算出する
ことを特徴とする請求項1ないし請求項4のいずれか1項に記載の言語解析モデル学習装置。 The parameter learning unit
The gradient of the objective function is calculated, and the parameter vector for optimizing the objective function is calculated again using the parameter vector at that time until the gradient becomes a predetermined value or less. The language analysis model learning device according to claim 4.
前記言語解析モデル学習装置の記憶部には、前記学習データに前記分類タグの種類を示す出力ラベル候補を対応付けた出力候補グラフと、前記パラメタベクトルの初期値とが記憶され、
前記言語解析モデル学習装置のパラメタ学習部は、
前記学習データの所定の評価単位の出現確率を、前記パラメタベクトルを変数として周辺確率により表す決定関数を用いて、前記学習データの正解の要素の出現確率を計算し、
前記決定関数を用いて、前記正解の要素以外で最も出力されやすい要素の出現確率を計算し、
前記正解の要素の出現確率と、前記正解の要素以外で最も出力されやすい要素の出現確率との差分を誤り推定関数として計算し、
前記誤り推定関数を用いて設定される目的関数を最適化するパラメタベクトルを算出する
ことを特徴とする言語解析モデル学習方法。 A language analysis model learning method in a language analysis model learning device that calculates a parameter vector used for giving a predetermined classification tag to text data from learning data that is text data to which the classification tag has been assigned in advance,
The storage unit of the language analysis model learning device stores an output candidate graph in which an output label candidate indicating the type of the classification tag is associated with the learning data, and an initial value of the parameter vector,
The parameter learning unit of the language analysis model learning device includes:
Using a decision function that represents the probability of occurrence of a predetermined evaluation unit of the learning data by a peripheral probability with the parameter vector as a variable, the probability of occurrence of the correct element of the learning data is calculated,
Using the decision function, calculate the appearance probability of the element that is most likely to be output other than the correct answer element,
Calculating the difference between the occurrence probability of the correct element and the appearance probability of the element that is most likely to be output other than the correct element as an error estimation function;
A language analysis model learning method, comprising: calculating a parameter vector that optimizes an objective function set by using the error estimation function.
ことを特徴とする請求項6に記載の言語解析モデル学習方法。 The objective function is a sum of outputs of the error estimation function for all minimum evaluation units, and a parameter vector that optimizes the objective function is the parameter vector that minimizes the output of the objective function. The language analysis model learning method according to claim 6, wherein:
ことを特徴とする請求項6に記載の言語解析モデル学習方法。
Forward-Backwardアルゴリズムを用いて前記決定関数の出力を計算する
ことを特徴とする請求項6ないし請求項8のいずれか1項に記載の言語解析モデル学習方法。 The parameter learning unit
The language analysis model learning method according to any one of claims 6 to 8, wherein an output of the decision function is calculated using a Forward-Backward algorithm.
前記パラメタベクトルを算出後に、前記目的関数の勾配を計算し、前記勾配が所定値以下になるまで、その時点のパラメタベクトルを用いて、前記目的関数を最適化するパラメタベクトルを再度算出する
ことを特徴とする請求項6ないし請求項9のいずれか1項に記載の言語解析モデル学習方法。 The parameter learning unit
After calculating the parameter vector, calculating the gradient of the objective function, and calculating again the parameter vector that optimizes the objective function using the parameter vector at that time until the gradient becomes a predetermined value or less. The language analysis model learning method according to claim 6, wherein the language analysis model is learned.
ことを特徴とする言語解析モデル学習プログラム。 A language analysis model learning program that causes a computer to function as the language analysis model learning device according to any one of claims 1 to 5.
ことを特徴とする記録媒体。 A recording medium in which the language analysis model learning program according to claim 9 is recorded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007056109A JP4328362B2 (en) | 2007-03-06 | 2007-03-06 | Language analysis model learning apparatus, language analysis model learning method, language analysis model learning program, and recording medium thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007056109A JP4328362B2 (en) | 2007-03-06 | 2007-03-06 | Language analysis model learning apparatus, language analysis model learning method, language analysis model learning program, and recording medium thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008217592A true JP2008217592A (en) | 2008-09-18 |
JP4328362B2 JP4328362B2 (en) | 2009-09-09 |
Family
ID=39837535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007056109A Active JP4328362B2 (en) | 2007-03-06 | 2007-03-06 | Language analysis model learning apparatus, language analysis model learning method, language analysis model learning program, and recording medium thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4328362B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101866337A (en) * | 2009-04-14 | 2010-10-20 | 日电(中国)有限公司 | Part-or-speech tagging system, and device and method thereof for training part-or-speech tagging model |
JP2012150694A (en) * | 2011-01-20 | 2012-08-09 | Nippon Telegr & Teleph Corp <Ntt> | Function expression analysis device, feature weight learning device, function expression analysis method, feature weight learning method, and program |
CN111209385A (en) * | 2020-01-14 | 2020-05-29 | 重庆兆光科技股份有限公司 | Consultation session unique answer optimizing method based on convex neural network |
CN112365178A (en) * | 2020-11-20 | 2021-02-12 | 山东大学 | Rail transit tunnel operation period safety evaluation method, system and storage medium |
-
2007
- 2007-03-06 JP JP2007056109A patent/JP4328362B2/en active Active
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101866337A (en) * | 2009-04-14 | 2010-10-20 | 日电(中国)有限公司 | Part-or-speech tagging system, and device and method thereof for training part-or-speech tagging model |
JP2010250814A (en) * | 2009-04-14 | 2010-11-04 | Nec (China) Co Ltd | Part-of-speech tagging system, training device and method of part-of-speech tagging model |
JP2012150694A (en) * | 2011-01-20 | 2012-08-09 | Nippon Telegr & Teleph Corp <Ntt> | Function expression analysis device, feature weight learning device, function expression analysis method, feature weight learning method, and program |
CN111209385A (en) * | 2020-01-14 | 2020-05-29 | 重庆兆光科技股份有限公司 | Consultation session unique answer optimizing method based on convex neural network |
CN111209385B (en) * | 2020-01-14 | 2024-02-02 | 重庆兆光科技股份有限公司 | Convex neural network-based consultation dialogue unique answer optimizing method |
CN112365178A (en) * | 2020-11-20 | 2021-02-12 | 山东大学 | Rail transit tunnel operation period safety evaluation method, system and storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP4328362B2 (en) | 2009-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20090271195A1 (en) | Speech recognition apparatus, speech recognition method, and speech recognition program | |
JP6509694B2 (en) | Learning device, speech detection device, learning method and program | |
CN108255813B (en) | Text matching method based on word frequency-inverse document and CRF | |
CN109960804B (en) | Method and device for generating topic text sentence vector | |
US8086548B2 (en) | Measuring document similarity by inferring evolution of documents through reuse of passage sequences | |
CN113128203A (en) | Attention mechanism-based relationship extraction method, system, equipment and storage medium | |
JP6291443B2 (en) | Connection relationship estimation apparatus, method, and program | |
WO2021240707A1 (en) | Data classification system, data classification method, and recording medium | |
CN111274829A (en) | Sequence labeling method using cross-language information | |
JP4328362B2 (en) | Language analysis model learning apparatus, language analysis model learning method, language analysis model learning program, and recording medium thereof | |
Gunaseelan et al. | Automatic extraction of segments from resumes using machine learning | |
JP5441937B2 (en) | Language model learning device, language model learning method, language analysis device, and program | |
JP2016224483A (en) | Model learning device, method and program | |
Heid et al. | Reliable part-of-speech tagging of historical corpora through set-valued prediction | |
JP6772394B1 (en) | Information learning device, information processing device, information learning method, information processing method and program | |
JP2010272004A (en) | Discriminating apparatus, discrimination method, and computer program | |
JP5379813B2 (en) | Data extraction apparatus, data extraction method, and program | |
JP5379812B2 (en) | Data extraction apparatus, data extraction method, and program | |
JP6558856B2 (en) | Morphological analyzer, model learning device, and program | |
CN115310449A (en) | Named entity identification method and device based on small sample and related medium | |
JP2016197289A (en) | Parameter learning device, similarity calculation device and method, and program | |
JP6852167B2 (en) | Confusion network distributed representation generation device, confusion network classification device, confusion network distributed representation generation method, confusion network classification method, program | |
JP5342574B2 (en) | Topic modeling apparatus, topic modeling method, and program | |
JP2021163134A (en) | Statement structure estimation method, statement structure estimation device, and statement structure estimation program | |
JP7362577B2 (en) | Information processing device, information processing method and program |
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 |