JP2004102596A - 言語理解モデル生成装置 - Google Patents
言語理解モデル生成装置 Download PDFInfo
- Publication number
- JP2004102596A JP2004102596A JP2002262935A JP2002262935A JP2004102596A JP 2004102596 A JP2004102596 A JP 2004102596A JP 2002262935 A JP2002262935 A JP 2002262935A JP 2002262935 A JP2002262935 A JP 2002262935A JP 2004102596 A JP2004102596 A JP 2004102596A
- Authority
- JP
- Japan
- Prior art keywords
- word string
- class
- corpus
- string pattern
- learning corpus
- 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.)
- Pending
Links
Images
Landscapes
- Machine Translation (AREA)
Abstract
【課題】大規模な意味タグ付き学習コーパスが用意されていれば、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる。しかし、意味タグ付き学習コーパスの構築は、通常、人手を介した作業により行われるため、大規模な意味タグ付き学習コーパスを用意するに際して、多大なコストを要する課題があった。
【解決手段】クラス決定部15によりクラスが決定された単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、そのクラス決定部15により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成する。
【選択図】 図1
【解決手段】クラス決定部15によりクラスが決定された単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、そのクラス決定部15により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
この発明は、例えば、音声対話システムや言語翻訳システムなどが、利用者の入力文をシステム内部で用いる形式的な意味表記に変換する際に利用する言語理解モデルを生成する言語理解モデル生成装置に関するものである。
【0002】
【従来の技術】
例えば、音声対話システムは、利用者が発声した入力文に応じて適切な動作を行うため、図23に示すように、言語理解部を備えて、その入力文をシステム内部で用いられる形式的な意味表記に変換する。
これまで、形式的な意味表記への変換は、入力文の構文と意味表記とを対応付ける規則(文法)を人手で記述することにより実現されてきている。しかし、人手で恣意的に記述した文法では、様々な利用者が発声する多様な表現を網羅することが難しいという問題がある。
【0003】
そこで、近年では、統計モデルを用いた次のような方法が盛んに研究されている。
実際の音声対話システムとの対話、または、それに近い条件で行った模擬対話から入力文を大量に収集し、それらの入力文に対して、意味表記をタグとして付与することにより「意味タグ付きコーパス」を構築する。
そして、意味タグ付きコーパスから、入力文の特徴と意味表記との相関を統計モデルにより抽出する。例えば、ある単語や単語列が入力文に含まれるときに、どの意味タグがどんな確率で生起するかを意味タグ付きコーパスから求めてモデル化する。
【0004】
図24は従来の言語理解モデル生成装置を示す構成図であり、図において、1は各種の入力文に意味タグが付与された学習コーパスを記憶する意味タグ付き学習コーパスメモリ、2は意味タグ付き学習コーパスメモリ1から学習コーパスの入力文を読み出し、その入力文を構成する単語列の局所的な特徴(以下、単語列パタンという)を抽出する単語列パタン抽出部、3は学習コーパスの入力文と意味タグの対応関係を参照して、単語列パタン抽出部2により抽出された単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成するパラメータ計算部、4はパラメータ計算部3により生成されたモデルパラメータを言語理解モデルとして格納する理解モデルメモリである。
【0005】
次に動作について説明する。
まず、意味タグ付き学習コーパスメモリ1には、図25に示すように、各種の入力文に意味タグが付与された学習コーパスが記憶される。意味タグとしては、入力文の質問や応答のタイプを細分類したものが付与される。
【0006】
単語列パタン抽出部2は、意味タグ付き学習コーパスメモリ1から学習コーパスの入力文を読み出し、その入力文を構成する単語列パタンを抽出する。
例えば、入力文「そのホテルで予約お願いします」からは、「その」「ホテル」などの単語1−gram、「その/ホテル」「ホテル/で」などの単語2−gram、「その/ホテル/で」「ホテル/で/予約」などの単語3−gramを抽出する。
【0007】
パラメータ計算部3は、単語列パタン抽出部2が単語列パタンを抽出すると、学習コーパスの入力文と意味タグの対応関係(単語列パタンが入力文に含まれている頻度)を参照して、単語列パタン抽出部2により抽出された単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを最大エントロピー法により計算する。
パラメータ計算部3により計算されたモデルパラメータは、言語理解モデルとして理解モデルメモリ4に格納される。
図26はモデルパラメータの一例を示し、第2列目の重みは、第3列目の単語列パタンと第4列目の意味タグとの相関の強さを表している。
【0008】
ここで、意味タグ付き学習コーパスは、音声対話システムの機能や話題の対象となる領域(以下、タスクという)に依存する。音声対話システムのタスクが異なれば、利用者が入力文として用いる表現も異なるし、入力文から抽出が必要な情報、即ち、意味表記も異なってくるからである。したがって、あるタスク用に構築した意味タグ付き学習コーパスを別タスクの言語理解モデルの構築に直接利用することはできない。
【0009】
また、従来の言語理解モデル生成装置では、大規模な意味タグ付き学習コーパスがメモリに用意されていることを前提としており、意味タグ付き学習コーパスの規模が不足している場合、規則の網羅性に関する効果が期待できない。
例えば、図25において、文番号SA0004「じゃあ仕方ないですね」の入力文が意味タグ付き学習コーパスに無い場合、単語列パタン「仕方/ない」と意味タグ「承諾」との相関を表すモデルパラメータ(図26のPA009)は言語理解モデルに獲得されない。この場合、利用者が同様の文を入力したときに誤った意味タグを推定することになる。したがって、大規模な意味タグ付き学習コーパスは必須である。
【0010】
【特許文献1】
特願2001−115249
【0011】
【発明が解決しようとする課題】
従来の言語理解モデル生成装置は以上のように構成されているので、大規模な意味タグ付き学習コーパスが用意されていれば、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる。しかし、意味タグ付き学習コーパスの構築は、通常、人手を介した作業により行われるため、大規模な意味タグ付き学習コーパスを用意するに際して、多大なコストを要する課題があった。
【0012】
この発明は上記のような課題を解決するためになされたもので、大規模な意味タグ付き学習コーパスを用意することなく、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる言語理解モデル生成装置を得ることを目的とする。
【0013】
【課題を解決するための手段】
この発明に係る言語理解モデル生成装置は、クラス決定手段によりクラスが決定された単語列パタンと学習コーパス記憶手段に記憶されている学習コーパスの入力文を照合して、そのクラス決定手段により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するようにしたものである。
【0014】
この発明に係る言語理解モデル生成装置は、単語列パタンが属するクラスを決定する際、参照コーパスの入力文と意味タグの対応関係を参照して、その単語列パタンの意味属性を決定し、その意味属性に基づいて類似関係にある単語列パタンを判別してクラスを決定するようにしたものである。
【0015】
この発明に係る言語理解モデル生成装置は、学習コーパスの入力文を構成する単語列パタンと上記入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成するようにしたものである。
【0016】
この発明に係る言語理解モデル生成装置は、学習コーパスの入力文と意味タグの対応関係を考慮して、単語列パタンが属するクラスを決定するようにしたものである。
【0017】
この発明に係る言語理解モデル生成装置は、学習コーパスの入力文を構成する単語列パタンと上記入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成し、クラス決定手段により決定されたクラスを考慮して、そのモデルパラメータを書き換えるようにしたものである。
【0018】
この発明に係る言語理解モデル生成装置は、モデルパラメータを書き換える際、学習コーパスの入力文と意味タグの対応関係を考慮して、そのモデルパラメータの重みを調整するようにしたものである。
【0019】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図1はこの発明の実施の形態1による言語理解モデル生成装置を示す構成図であり、図において、11は対象タスク(例えば、ホテル予約)用に収集された入力文に意味タグが付与された学習コーパスを記憶する意味タグ付き学習コーパスメモリ(学習コーパス記憶手段)、12は対象タスクと必ずしも一致しない参照タスク(例えば、観光案内)用に収集された入力文に意味タグが付与された参照コーパスを記憶する意味タグ付き参照コーパスメモリ(参照コーパス記憶手段)、13は意味タグ付き参照コーパスメモリ12に記憶されている参照コーパスの入力文を構成する単語列の局所的な特徴(以下、単語列パタンという)を抽出する単語列パタン抽出部、14は参照コーパスの入力文と意味タグの対応関係を参照して、単語列パタン抽出部13により抽出された単語列パタンの意味属性を決定する意味属性決定部、15は意味属性決定部14により決定された意味属性に基づいて類似関係にある単語列パタンを判別し、各単語列パタンが属するクラスを決定するクラス決定部である。なお、単語列パタン抽出部13、意味属性決定部14及びクラス決定部15からクラス決定手段が構成されている。
【0020】
16はクラス決定部15によりクラスが決定された単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、そのクラス決定部15により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するパラメータ計算部(モデルパラメータ生成手段)、17はパラメータ計算部16により生成されたモデルパラメータを言語理解モデルとして格納する理解モデルメモリである。
【0021】
図2はパラメータ計算部16の内部構成を示す構成図であり、図において、21は単語列パタンのクラスと意味タグを組み合わせて素性リストを生成する素性生成部、22は素性生成部21により生成された素性リストを格納する素性候補メモリ、23は素性候補メモリ22に記憶されている素性リストを素性の候補集合とし、言語理解モデルに用いる素性群と各素性の重みを決定する素性選択部である。
【0022】
次に動作について説明する。
意味タグ付き学習コーパスメモリ11には、対象タスク(例えば、ホテル予約)用に収集された入力文に意味タグが付与された学習コーパスが記憶される。図3は学習コーパスの一例を示しているが、この学習コーパスは、ホテル予約の音声対話システムに対して、利用者が発話する入力文を収集したものである。各入力文には、質問や応答のタイプを細分類した意味タグが付与されている。
この学習コーパスは、先に図25を用いて説明した従来技術の学習コーパスと同様のものであるが規模は小さい。そのため、この学習コーパスは低コストで構築することができる。ただし、言語理解モデルの学習を行うにはスパースなコーパスとなっている。例えば、図25の学習コーパスには在ったSA0003「構いません」,SA0004「じゃあ仕方ないですね」,SA0005「それで大丈夫です」などの入力文が図3の学習コーパスからは欠落している。
【0023】
意味タグ付き参照コーパスメモリ12には、参照タスク(例えば、観光案内)用に収集された入力文に意味タグが付与された参照コーパスが記憶される。
図4は参照コーパスの一例を示しているが、参照タスクは対象タスクとは必ずしも一致せず、図4の例では、参照コーパスのタスクは観光案内である。
参照コーパスは大規模なものであり、多様な入力文が含まれている。また、参照コーパスの意味タグには、図3の学習コーパスと異なる分類体系のものが用いられている。即ち、図4の参照コーパスでは、意味タグとして、発話行為タグと概念タグの2種類が付与されている。
【0024】
発話行為タグは、話者の要求や応答の態度を分類したものであり、各入力文には、“accept”(承諾),“give−information”(情報提示),“requtest−information”(情報要求)などのうち、何れか1つのタグが付与される。
概念タグは、入力文中に話題として挙げられた対象を表すものであり、“destination”(目的地),“price”(料金),“reservation”(予約)などが付与される。ただし、付与される概念タグは0個でも複数個でもよい。図中、付与されている意味タグは“1”で示されている。
【0025】
単語列パタン抽出部13は、意味タグ付き参照コーパスメモリ12に記憶されている参照コーパスの入力文を読み出し、その入力文を構成する単語列パタンを抽出する。
ここでは、単語列パタンとして、単語N−gram(N=1,2,3)を網羅的に抽出するものとする。例えば、入力文「$文頭/大丈夫/です/$文末」からは、「大丈夫」「です」の単語1−gramと、「$文頭/大丈夫」「大丈夫/です」「です/$文末」の単語2−gramと、「$文頭/大丈夫/です」「大丈夫/です/$文末」の単語3−gramとを抽出する。
なお、図5は参照コーパスの単語列パタンリストを示している。単語列パタンとしては、この他に共起関係にある2単語対や、文法的関係にある単語対(例えば、主語や目的語と述語など)を用いるものであってもよい。
【0026】
意味属性決定部14は、単語列パタン抽出部13から参照コーパスの単語列パタンリストを受けると、参照コーパスの入力文と意味タグの対応関係を参照し、下記に示すようにして、その単語列パタンリストに含まれている単語列パタンの意味属性を決定する。
図6は単語列パタンの意味属性の一例を示し、意味属性は、互いに独立に生成される複数の行列M1,・・・,Mk,・・・により規定されている。
図6における行列の行は単語列パタンに対応し、行列の列は意味タグに対応している。ただし、各行列の列に対応する意味タグセットからは、常に何れか1つの意味タグが各入力文に付与される。入力文に対して任意個の付与が許される概念タグ(“destination”,“price”,“reservation”,“temporal”,“transportation”...)の場合には、図6の行列Mkのように、概念タグ(“transportation”)毎に、その有無(“transportation”=1,“transportation”=0)を列とする行列が生成される。
【0027】
行列M1,・・・,Mk,・・・におけるi行j列の要素(意味属性)aijは、単語列パタンiの意味タグjに対する重要度を表しており、意味属性決定部14は、次のようにして意味属性aijを求める。
aij=Gi・Lij (1)
ただし、式(1)におけるGiは、意味タグj=1,・・・,mに共通の大域的重みであり、単語列パタンi出現下での意味タグjのエントロピーHiを基にして計算する。Giの値は、単語列パタンiが意味タグj=1,・・・,Nと偏って共起するほど大きくなる。式(2)において、C(i)は単語列パタンiが出現する入力文の数を表し、C(i,j)は単語列パタンiと意味タグjが共起する入力文の数を表している。
【数1】
【0028】
一方、式(1)のLijは、各意味タグjに依存する局所的重みであり、Lijの値も、単語列パタンiと意味タグjが共起する入力文が多いほど大きくなる。式(3)において、C(j)は意味タグjが付与されている入力文の数を表している。
【数2】
【0029】
クラス決定部15は、上記のようにして意味属性決定部14が単語列パタンの意味属性を決定すると、その意味属性に基づいて単語列パタン間の類似度を計算して、類似関係にある単語列パタンを判別し、各単語列パタンが属するクラスを決定する。
具体的には次のようにして各単語列パタンが属するクラスを決定する。
【0030】
クラス決定部15は、各単語列パタンに対応する意味属性aijのベクトルがu=(aiu1,aiu2,・・・,aiun),v=(aiv1,aiv2,・・・,aivn)であるとするとき、ベクトルuとvの方向余弦により単語列パタンiuとivの類似度R(iu,iv)を求める。
【数3】
【0031】
単語列パタンのクラスタリングは、公知のk−means法を実行することにより行う。k−means法は、K個(Kは予め定める)にデータを分類するアルゴリズムであり、以下、(1)〜(4)の処理を繰り返すものである。
(1)K個の初期クラスタ中心を適当に決定する。
(2)全てのデータを最も近いクラスタ中心のクラスタに分類する。
(3)新たにできたクラスタの重心をクラスタ中心とする。
(4)新たなクラスタ中心が以前と変わらなければ終了し、そうでなければ(2)に戻る。
【0032】
単語列パタンのクラスタリングにより、図7に示すような単語列パタンのクラスデータが生成される。各クラス(クラスタ)は、意味的に類似した単語列パタンを集めたものとなり、例えば、クラスC001には、図6で意味タグ“accpt”(承諾)に対する重要度が大きい単語列パタン「大丈夫/です」「結構/です」「構い/ませ/ん」「仕方/ない」が集まったものである。
【0033】
パラメータ計算部16は、クラス決定部15が単語列パタンのクラスタリングを行うと、各単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、クラス決定部15により決定されたクラスと学習コーパスの意味タグとの共起関係を推定してモデルパラメータを生成する。
具体的には次のようにしてモデルパラメータを生成する。
例えば、入力文Sが与えられたとき、入力文Sに対応する意味タグがyとなる確率p(y|S)を推定する言語理解モデルを最大エントロピー法により構築する場合について説明する。
【0034】
最初に、最大エントロピー法の概要を説明する。
最大エントロピー法では、学習コーパスで観測される入力文Sの特徴と意味タグyとの相関を言語理解モデルに取り込むために、素性と呼ばれる関数を複数用いる。ここでは、次の式(5)のように、入力文Sと意味タグyに対する条件判定により、“1”または“0”をとる2値関数fi(S,y)(i=1,2,・・・)を素性として用いるものとする。式(5)の下線部分は、個々の素性fi(S,y)に対して定める変数である。
【数4】
【0035】
例えば、式(5)の形式の素性とは、「Sが単語列パタン『結構/です』に合致し、かつ、yが意味タグ『承諾』に等しい」場合に“1”をとる関数などである。あるいは、単独の単語列パタンの代わりに、クラス化した単語列パタン群を用いる場合には、「Sが{『結構/です』,『大丈夫/です』,『構いません』,『仕方ない』,…}のうちの何れかの単語列パタンに合致し、かつ、yが意味タグ『承諾』に等しい」場合に“1”をとる関数などを用いる。
【0036】
このような素性の集合{fi(S,y)|i=1,2,・・・,n}を規定することにより、モデルpが下記の式(6)の等式を充足するよう制約を設ける。
【数5】
式(6)における素性fiの推定確率と観測確率は、下記の式(7)(8)により定義される。
【数6】
【0037】
即ち、式(6)〜(8)により、素性fiが“1”をとるような入力文と意味タグの関係については、モデルによる推定確率が学習コーパスにおける観測確率と等しくなるよう制約される。
このような制約条件を満たす確率分布pの集合をPとするとき、最大エントロピー法で求めるモデルp*は、エントロピーH(p)を最大化する確率分布として次式で与えられる。
【数7】
【0038】
式(9)を解くことにより得られるモデルは、下記の式(11)の形式で表すことができる。式(11)の導出方法は、下記文献に記載されており、ここでは説明を省略する。
【数8】
<文献>
“A maximum entropy approach to natural language processing”(A.L.Berger,S.A.Della Pietra,and V.J.Della Pietra,Computational Linguistics,vol.22,no.1,pp.39−71,1996)
【0039】
式(11)におけるZ(S)はΣyp(y|S)=1とするための正規化項であり、次式で表される。
【数9】
式(11)から、モデルは素性fi(S,y)とその重みλiによりパラメタライズされることが分かる。
【0040】
素性の集合{fi(S,y)|i=1,2,・・・,n}が既に決定している場合、重みλiの値は、上記文献に記載の「改良反復スケーリング法」(improved iterative scaling)により求めることができる(説明は省略する)。
一方、モデルに用いる素性fi(S,y)を自動的に決定する方法としては、上記文献に記載の「素性選択アルゴリズム」(feature selection algorithm)がある。この方法は、予め大量に用意した素性の候補集合から、以下のステップ(1)〜(5)により、最適な素性の選択とモデルの更新を繰り返すアルゴリズムである。
【0041】
(1)素性を持たないモデルを初期モデルとして設定する。
(2)モデルに対し、候補集合中の素性をそれぞれ暫定的に追加し、改良反復スケーリング法で重みを決定することにより、暫定モデルを複数生成する。
(3)暫定モデルを用いて、学習コーパスでの対数尤度の増分を計算し、対数尤度の増分が最も大きいモデルを1つ選択する。
(4)選択した暫定モデルを新たなモデルとして設定する。
(5)尤度の増分が閾値以下であれば終了し、そうでなければ(2)に戻る。
【0042】
以上が最大エントロピー法によるモデル構築の概要である。最大エントロピー法でモデル構築する場合、図1のパラメータ計算部16は、図2のような構成となる。
パラメータ計算部16の素性生成部21は、上述した式(5)の形式の素性を生成する。素性を規定する単語列パタンのクラスには、クラス決定部15から受け取る単語列パタンのクラスを用いる一方、素性を規定する意味タグとしては、学習コーパスに含まれる意味タグを用いる。これらの単語列パタンのクラスと意味タグを組み合わせて、図8のような素性を生成する。
例えば、素性番号FB0001の素性は「Sが{『結構/です』,『大丈夫/です』,『構いません』,『仕方ない』,…}のうちの何れかの単語列パタンに合致し、かつ、yが意味タグ『承諾』に等しい」場合に“1”をとる素性である。得られた素性リストは素性候補メモリ22に書き込まれる。
【0043】
パラメータ計算部16の素性選択部23は、素性候補メモリ22に記憶されている素性リストを素性の候補集合とし、意味タグ付き学習コーパスメモリ11から学習コーパスの入力文と意味タグを読み出し、上述した素性選択アルゴリズムにより、モデルに用いる素性群と各素性の重みとを決定する。得られたモデルパラメータは理解モデルメモリ17に書き込まれる。
【0044】
図9はモデルパラメータの一例を示し、パラメータ番号PB001では、入力文が単語列パタン「結構/です」,「大丈夫/です」,「構いません」,「仕方ない」,…の何れかに合致した場合、意味タグ「承諾」に正の重み7.82E−00が与えられる。これら単語列パタンのうち「結構/です」以外は、図3の学習コーパスには存在しないものである。このため従来技術では、「大丈夫/です」,「構いません」,「仕方ない」,…などが意味タグ「承諾」と関連することをモデル化することができなかった。一方、この実施の形態1によれば、参照コーパスで類似と判定された単語列パタンに対しても、学習コーパスに存在する「結構/です」に基づいて意味タグ「承諾」との関連がモデル化される。
【0045】
以上で明らかなように、この実施の形態1によれば、クラス決定部15によりクラスが決定された単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、そのクラス決定部15により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するように構成したので、大規模な意味タグ付き学習コーパスを用意することなく、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる効果を奏する。
即ち、異なるタスク用に構築した参照コーパスを利用するので、対象タスク用のコーパスが少量であっても性能の優れた言語理解モデルを構築することができる。そのため、従来技術の問題点である「あるタスク用の言語理解モデルを構築するためには、そのタスク用の大規模な意味タグ付きコーパスを新たに用意する必要があり、多大なコストを要する」という問題を解決することができる。
【0046】
実施の形態2.
図10はこの発明の実施の形態2による言語理解モデル生成装置を示す構成図であり、図において、図1と同一符号は同一または相当部分を示すので説明を省略する。
31は図1の単語列パタン抽出部13と同様にして単語列パタンを抽出するとともに、意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を構成する単語列パタンを抽出する単語列パタン抽出部(クラス決定手段)、32は図1のパラメータ計算部16と同様にしてモデルパラメータを生成するとともに、単語列パタン抽出部31から学習コーパスの単語列パタンリストを受けると、その単語列パタンリストに含まれている単語列パタンと学習コーパスの入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成するパラメータ計算部(モデルパラメータ生成手段)である。
【0047】
次に動作について説明する。
単語列パタン抽出部31は、上記実施の形態1における単語列パタン抽出部13の処理に加えて、同様の処理を学習コーパスに対しても行う。即ち、意味タグ付き学習コーパスメモリ11から学習コーパスの入力文を読み出し、その入力文を構成する単語列の特徴を抽出して、学習コーパスの単語列パタンリストを生成する。
【0048】
パラメータ計算部32は、上記実施の形態1におけるパラメータ計算部16と同様にして、クラス決定部15により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成する。また、単語列パタン抽出部31から学習コーパスの単語列パタンリストを受けると、その単語列パタンリストに含まれている単語列パタンと学習コーパスの入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成する。
【0049】
以下、上記実施の形態1と同様に、最大エントロピー法により言語理解モデルを構築する場合について説明する。最大エントロピー法でモデルを構築する場合、パラメータ計算部32は、図11のような構成となる。
パラメータ計算部32の素性生成部24は、上記実施の形態1における素正生成部21と同様の処理により、単語列パタンのクラスと意味タグを組み合わせて素性リストを生成する。
また、素性生成部24は、単語列パタン抽出部31から学習コーパスの単語列パタンリストを受けると、それらの単語列パタンを学習コーパスの意味タグと組み合わせて素性群を生成する。
【0050】
この結果、図12に示すような素性リストが生成される。
FB0001,FB0002,FB0003の素性が上記実施の形態1と同様に、参照コーパスから抽出された単語列パタンクラスと意味タグを組み合わせた素性である。FC0001,FC0002の素性が学習コーパスから抽出された単独の単語列パタンと意味タグを組み合わせた素性である。得られた素性リストは素性候補メモリ22に書き込まれる。
【0051】
パラメータ計算部32の素性選択部23は、上記実施の形態1と同様の処理により、モデルに用いる素性群と各素性の重みとを決定する。得られたモデルパラメータは理解モデルメモリ17に書き込まれる。
図13はモデルパラメータの一例を示し、この実施の形態2では、パラメータ番号PC001,PC002のように、学習コーパスから抽出された単独の単語列パタンと意味タグの相関を表すパラメータがモデルに入る。こうした相関は、対象タスクであるホテル予約に強く依存するものであり、参照コーパスからは抽出し難いものである。したがって、参照コーパスからクラス化した単語列パタンのみを扱う上記実施の形態1よりも性能の優れた言語理解モデルを得ることができる効果を奏する。
なお、この実施の形態2においても、パラメータPB001のように、学習コーパスには存在しない単語列パタンと意味タグの相関をモデル化できるため、上記実施の形態1と同様に、従来技術の問題を解決できることは言うまでもない。
【0052】
実施の形態3.
図14はこの発明の実施の形態3による言語理解モデル生成装置を示す構成図であり、図において、図1と同一符号は同一または相当部分を示すので説明を省略する。
33は図1のクラス決定部15と基本的には同様にして各単語列パタンが属するクラスを決定するが、その際、学習コーパスの入力文と意味タグの対応関係を考慮して、単語列パタンが属するクラスを決定するクラス決定部(クラス決定手段)、34はクラス決定部33によりクラスが決定された単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、そのクラス決定部33により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するパラメータ計算部(モデルパラメータ生成手段)である。
図15はクラス決定部33の処理内容を示すフローチャートである。
【0053】
次に動作について説明する。
クラス決定部33は、意味属性決定部14が上記実施の形態1と同様にして、単語列パタンの意味属性を決定すると、その意味属性に基づいて単語列パタン間の類似度を計算し、その単語列パタン間の類似度と、学習コーパスの入力文と意味タグの対応関係(学習コーパスの入力文と意味タグの頻度)とに基づいて各単語列パタンが属するクラスを決定する。
具体的には次の通りである。
【0054】
まず、クラス決定部33は、意味属性決定部14が単語列パタンの意味属性を決定すると(図6を参照)、意味属性決定部14から単語列パタンの意味属性を受け取る(ステップST1)。
クラス決定部33は、意味属性決定部14から受け取った各単語列パタンと、意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合することにより、学習コーパスにおける各単語列パタンの頻度(単語列パタンに合致する入力文の数)を計測する(ステップST2)。
【0055】
また、クラス決定部33は、意味属性決定部14から受け取った各単語列パタンと、意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合することにより、学習コーパスにおける各単語列パタンと意味タグとの共起頻度(意味タグ別に計測した単語列パタンに合致する入力文の数)を計測する(ステップST3)。
【0056】
クラス決定部33は、クラスタ中心となる単語列パタンで未処理のものがあるか否かを判定し、未処理の単語列パタンがなければ、一連の処理を終了するが、未処理の単語列パタンがあれば、ステップST5の処理に進む(ステップST4)。
クラス決定部33は、未処理の単語列パタンがある場合、学習コーパスにおける頻度が1以上で、かつ、まだクラスタ中心として設定していない単語列パタンを選択し、その単語列パタンをクラスタ中心に設定する(ステップST5)。
クラス決定部33は、クラスタ中心となる単語列パタンを設定すると、クラスタ中心との類似度に基づいて、クラスタ中心との類似度が大きい順に他の単語列パタンをソートする(ステップST6)。なお、類似度の計算は、上記実施の形態1と同様に、意味属性ベクトルの方向余弦を用いる。
【0057】
クラス決定部33は、クラスタ中心と共起する意味タグの中で、未処理の意味タグがあるか否かを判定し、未処理の意味タグがなければ、ステップST4の処理に戻り、未処理の意味タグがあれば、ステップST8の処理に進む(ステップST7)。
クラス決定部33は、未処理の意味タグがある場合、学習コーパスにおいてクラスタ中心との共起頻度が1以上で、かつ、まだ注目する意味タグとして設定していない意味タグを選択し、その意味タグを注目する意味タグとして設定する(ステップST8)。
【0058】
クラス決定部33は、注目する意味タグを設定すると、クラスタ中心と他の単語列パタンに対して、注目する意味タグとの共起頻度に基づいて図16に示すような2×2分割表を生成し、仮説「注目する意味タグとの共起頻度の比率は、両単語列パタンで差が無い」を検定する(ステップST9)。
上記検定は、公知のフィッシャーの直接法(Fisher’s exact probability test:例えば、文献1,2)を用いた両側検定とし、有意水準は10%とする。
<文献1>
“”確率および統計”(印東太郎,コロナ社,pp.292−293,1973)
<文献2>
“フィッシャーの正確確率検定(直接確率)”(http://aoki2.si.gunma−u.ac.jp/lecture/Cross/Fisher.html)
【0059】
クラス決定部33は、仮説を検定すると、クラスタ中心からの類似度が大きい単語列パタンから順番に、上記検定で仮説が棄却されなかった単語列パタンまでを選択し、その選択した単語列パタン群とクラスタ中心とを合わせて、新たな単語列パタンクラスとする(ステップST10)。この結果、図17に示すような単語列パタンのクラスデータを生成する。
上記実施の形態1のクラスデータ(図7を参照)と異なり、各クラスには注目する意味タグが付与されている。クラスタ中心である単語列パタンは“@”で示されている。
ステップST7で未処理の意味タグがないと判定され、かつ、ステップST4で未処理の単語列パタンがないと判定されると、クラス決定部33の処理が終了する。
【0060】
パラメータ計算部34は、クラス決定部33が単語列パタンのクラスタリングを行うと、各単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、クラス決定部33により決定されたクラスと学習コーパスの意味タグとの共起関係を推定してモデルパラメータを生成する。
以下、上記実施の形態1,2と同様に、最大エントロピー法により言語理解モデルを構築する場合について説明する。最大エントロピー法でモデルを構築する場合、パラメータ計算部34は図18のような構成となる。
【0061】
素性生成部25は、クラス決定部33から各単語列パタンが属するクラスを受け取ると、上記実施の形態1と同様に、上述した式(5)の形式の素性を生成する。
素性を規定する単語列パタンクラスには単語列パタンのクラスを用い、素性を規定する意味タグとしては、当該単語列パタンのクラスに付与された意味タグを用いる。これらの単語列パタンクラスと意味タグを組み合わせて素性を生成する。得られた素性リストを素性候補メモリ22に書き込む。素性選択部23の動作は上記実施の形態1と同様であるため説明を省略する。
【0062】
この実施の形態3によれば、或る単語列パタンと類似していると見なしてクラス化する単語列パタンは、参照コーパスにおける意味タグの頻度分布だけでなく、学習コーパスにおける意味タグの頻度分布も考慮して決定される。このため、対象タスクに則した単語列パタンのクラス化を行うことが可能であり、上記実施の形態1と比べて、性能の優れた言語理解モデルを構築することが可能である。
【0063】
実施の形態4.
図19はこの発明の実施の形態4による言語理解モデル生成装置を示す構成図であり、図において、図10及び図14と同一符号は同一または相当部分を示すので説明を省略する。
35はクラス決定部33により決定されたクラスを考慮して、パラメータ計算部32により暫定的に生成されたモデルパラメータを書き換えるパラメータ再計算部(モデルパラメータ生成手段)である。
図20はパラメータ再計算部35の内部構成を示す構成図であり、図において、41はクラス決定部33により決定されたクラスを考慮して、パラメータ計算部32により暫定的に生成されたモデルパラメータを書き換える素性書換部、42は学習コーパスの入力文と意味タグの対応関係を考慮して、モデルパラメータの重みを調整する重み再計算部である。
【0064】
次に動作について説明する。
パラメータ再計算部35は、上記実施の形態1と同様にして、パラメータ計算部32がモデルパラメータ(以下、暫定モデルパラメータという)を計算して出力すると(図21を参照)、クラス決定部33により決定されたクラスを考慮して、その暫定モデルパラメータの書換処理を実行する。
以下、パラメータ再計算部35の動作を具体的に説明する。上記実施の形態1〜3と同様に、最大エントロピー法により言語理解モデルを構築する場合について説明する。
【0065】
パラメータ再計算部35の素性書換部41は、クラス決定部33により決定された単語列パタンのクラスを用いて、暫定モデルパラメータの素性の書換処理を実行する。
即ち、最初に素性の単語列パタンwpと意味タグyを調べる。例えば、図21のパラメータ番号PA006の素性を書き換える場合、単語列パタンwpは「結構/です」であり、意味タグyは「承諾」となる。
次に、単語列パタンのクラスを参照する(図17を参照)。クラス群の中からクラスタ中心がwpに対応し、かつ、注目する意味タグがyに対応するクラスを選択する。先の例では、クラス番号C001のクラス(「結構/です」「大丈夫/です」「構い/ませ/」「仕方/ない」…)が相当する。
このクラスに含まれる単語列パタン群を、元の単独単語列パタンwpの代わりに用いるように素性を書き換える。書き換えの結果、図22に示すようなモデルパラメータが得られる。ただし、素性の重みは書換処理前と同じ値となっており、最大エントロピー法の条件である式(6)や式(9)を満たしていない。
【0066】
パラメータ再計算部35の重み再計算部42は、素性書換部41から重み未調整モデルパラメータを受け取ると、意味タグ付き学習コーパスメモリ11から読み出した学習コーパスの入力文と意味タグの頻度に基づいて、上述した改良反復スケーリング法によりモデルの重みを調整する。重み調整後のモデルパラメータは理解モデルメモリ17に書き込まれる。
【0067】
この実施の形態4によっても、上記実施の形態1〜3と同様に、学習コーパスには存在しない単語列パタンと意味タグとの関連をモデル化することができる。このため、少量の学習コーパスから性能の優れた言語理解モデルを構築することが可能であり、従来技術の問題点である「あるタスク用の言語理解モデルを構築するためには、そのタスク用の大規模な意味タグ付きコーパスを新たに用意する必要があり、多大なコストを要する」という問題を解決することができる。
【0068】
この実施の形態4では、パラメータ再計算部35の素性書換部41の処理において、書換処理によって得られた素性と元の素性を入れ換える例を説明したが、元の素性を残したまま、新たに書換処理によって得られた素性を追加することでも同様の効果を得ることができる。
【0069】
【発明の効果】
以上のように、この発明によれば、クラス決定手段によりクラスが決定された単語列パタンと学習コーパス記憶手段に記憶されている学習コーパスの入力文を照合して、そのクラス決定手段により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するように構成したので、大規模な意味タグ付き学習コーパスを用意することなく、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる効果がある。
【0070】
この発明によれば、単語列パタンが属するクラスを決定する際、参照コーパスの入力文と意味タグの対応関係を参照して、その単語列パタンの意味属性を決定し、その意味属性に基づいて類似関係にある単語列パタンを判別してクラスを決定するように構成したので、構成の複雑化を招くことなく、単語列パタンが属するクラスを決定することができる効果がある。
【0071】
この発明によれば、学習コーパスの入力文を構成する単語列パタンと上記入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成するように構成したので、言語理解モデルの性能を更に高めることができる効果がある。
【0072】
この発明によれば、学習コーパスの入力文と意味タグの対応関係を考慮して、単語列パタンが属するクラスを決定するように構成したので、言語理解モデルの性能を更に高めることができる効果がある。
【0073】
この発明によれば、学習コーパスの入力文を構成する単語列パタンと上記入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成し、クラス決定手段により決定されたクラスを考慮して、そのモデルパラメータを書き換えるように構成したので、大規模な意味タグ付き学習コーパスを用意することなく、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる効果がある。
【0074】
この発明によれば、モデルパラメータを書き換える際、学習コーパスの入力文と意味タグの対応関係を考慮して、そのモデルパラメータの重みを調整するように構成したので、構成の複雑化を招くことなく、モデルパラメータの書き換えを行うことができる効果がある。
【図面の簡単な説明】
【図1】この発明の実施の形態1による言語理解モデル生成装置を示す構成図である。
【図2】パラメータ計算部の内部構成を示す構成図である。
【図3】学習コーパスの一例を示す説明図である。
【図4】参照コーパスの一例を示す説明図である。
【図5】参照コーパスの単語列パタンリストを示す説明図である。
【図6】単語列パタンの意味属性の一例を示す説明図である。
【図7】単語列パタンのクラスの一例を示す説明図である。
【図8】素性リストの一例を示す説明図である。
【図9】モデルパラメータの一例を示す説明図である。
【図10】この発明の実施の形態2による言語理解モデル生成装置を示す構成図である。
【図11】パラメータ計算部の内部構成を示す構成図である。
【図12】素性リストの一例を示す説明図である。
【図13】モデルパラメータの一例を示す説明図である。
【図14】この発明の実施の形態3による言語理解モデル生成装置を示す構成図である。
【図15】クラス決定部の処理内容を示すフローチャートである。
【図16】単語列パタンと意味タグとの共起頻度による2×2分割表の一例を示す説明図である。
【図17】単語列パタンのクラスの一例を示す説明図である。
【図18】パラメータ計算部の内部構成を示す構成図である。
【図19】この発明の実施の形態4による言語理解モデル生成装置を示す構成図である。
【図20】パラメータ再計算部の内部構成を示す構成図である。
【図21】暫定モデルパラメータの一例を示す説明図である。
【図22】重み未調整モデルパラメータの一例を示す説明図である。
【図23】音声対話システムを示す説明図である。
【図24】従来の言語理解モデル生成装置を示す構成図である。
【図25】学習コーパスの一例を示す説明図である。
【図26】モデルパラメータの一例を示す説明図である。
【符号の説明】
11 意味タグ付き学習コーパスメモリ(学習コーパス記憶手段)、12 意味タグ付き参照コーパスメモリ(参照コーパス記憶手段)、13 単語列パタン抽出部(クラス決定手段)、14 意味属性決定部(クラス決定手段)、15 クラス決定部(クラス決定手段)、16 パラメータ計算部(モデルパラメータ生成手段)、17 理解モデルメモリ、21 素性生成部、22 素性候補メモリ、23 素性選択部、24 素性生成部、25 素性生成部、31 単語列パタン抽出部(クラス決定手段)、32 パラメータ計算部(モデルパラメータ生成手段)、33 クラス決定部(クラス決定手段)、34 パラメータ計算部(モデルパラメータ生成手段)、35 パラメータ再計算部(モデルパラメータ生成手段)、41 素性書換部、42 重み再計算部。
【発明の属する技術分野】
この発明は、例えば、音声対話システムや言語翻訳システムなどが、利用者の入力文をシステム内部で用いる形式的な意味表記に変換する際に利用する言語理解モデルを生成する言語理解モデル生成装置に関するものである。
【0002】
【従来の技術】
例えば、音声対話システムは、利用者が発声した入力文に応じて適切な動作を行うため、図23に示すように、言語理解部を備えて、その入力文をシステム内部で用いられる形式的な意味表記に変換する。
これまで、形式的な意味表記への変換は、入力文の構文と意味表記とを対応付ける規則(文法)を人手で記述することにより実現されてきている。しかし、人手で恣意的に記述した文法では、様々な利用者が発声する多様な表現を網羅することが難しいという問題がある。
【0003】
そこで、近年では、統計モデルを用いた次のような方法が盛んに研究されている。
実際の音声対話システムとの対話、または、それに近い条件で行った模擬対話から入力文を大量に収集し、それらの入力文に対して、意味表記をタグとして付与することにより「意味タグ付きコーパス」を構築する。
そして、意味タグ付きコーパスから、入力文の特徴と意味表記との相関を統計モデルにより抽出する。例えば、ある単語や単語列が入力文に含まれるときに、どの意味タグがどんな確率で生起するかを意味タグ付きコーパスから求めてモデル化する。
【0004】
図24は従来の言語理解モデル生成装置を示す構成図であり、図において、1は各種の入力文に意味タグが付与された学習コーパスを記憶する意味タグ付き学習コーパスメモリ、2は意味タグ付き学習コーパスメモリ1から学習コーパスの入力文を読み出し、その入力文を構成する単語列の局所的な特徴(以下、単語列パタンという)を抽出する単語列パタン抽出部、3は学習コーパスの入力文と意味タグの対応関係を参照して、単語列パタン抽出部2により抽出された単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成するパラメータ計算部、4はパラメータ計算部3により生成されたモデルパラメータを言語理解モデルとして格納する理解モデルメモリである。
【0005】
次に動作について説明する。
まず、意味タグ付き学習コーパスメモリ1には、図25に示すように、各種の入力文に意味タグが付与された学習コーパスが記憶される。意味タグとしては、入力文の質問や応答のタイプを細分類したものが付与される。
【0006】
単語列パタン抽出部2は、意味タグ付き学習コーパスメモリ1から学習コーパスの入力文を読み出し、その入力文を構成する単語列パタンを抽出する。
例えば、入力文「そのホテルで予約お願いします」からは、「その」「ホテル」などの単語1−gram、「その/ホテル」「ホテル/で」などの単語2−gram、「その/ホテル/で」「ホテル/で/予約」などの単語3−gramを抽出する。
【0007】
パラメータ計算部3は、単語列パタン抽出部2が単語列パタンを抽出すると、学習コーパスの入力文と意味タグの対応関係(単語列パタンが入力文に含まれている頻度)を参照して、単語列パタン抽出部2により抽出された単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを最大エントロピー法により計算する。
パラメータ計算部3により計算されたモデルパラメータは、言語理解モデルとして理解モデルメモリ4に格納される。
図26はモデルパラメータの一例を示し、第2列目の重みは、第3列目の単語列パタンと第4列目の意味タグとの相関の強さを表している。
【0008】
ここで、意味タグ付き学習コーパスは、音声対話システムの機能や話題の対象となる領域(以下、タスクという)に依存する。音声対話システムのタスクが異なれば、利用者が入力文として用いる表現も異なるし、入力文から抽出が必要な情報、即ち、意味表記も異なってくるからである。したがって、あるタスク用に構築した意味タグ付き学習コーパスを別タスクの言語理解モデルの構築に直接利用することはできない。
【0009】
また、従来の言語理解モデル生成装置では、大規模な意味タグ付き学習コーパスがメモリに用意されていることを前提としており、意味タグ付き学習コーパスの規模が不足している場合、規則の網羅性に関する効果が期待できない。
例えば、図25において、文番号SA0004「じゃあ仕方ないですね」の入力文が意味タグ付き学習コーパスに無い場合、単語列パタン「仕方/ない」と意味タグ「承諾」との相関を表すモデルパラメータ(図26のPA009)は言語理解モデルに獲得されない。この場合、利用者が同様の文を入力したときに誤った意味タグを推定することになる。したがって、大規模な意味タグ付き学習コーパスは必須である。
【0010】
【特許文献1】
特願2001−115249
【0011】
【発明が解決しようとする課題】
従来の言語理解モデル生成装置は以上のように構成されているので、大規模な意味タグ付き学習コーパスが用意されていれば、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる。しかし、意味タグ付き学習コーパスの構築は、通常、人手を介した作業により行われるため、大規模な意味タグ付き学習コーパスを用意するに際して、多大なコストを要する課題があった。
【0012】
この発明は上記のような課題を解決するためになされたもので、大規模な意味タグ付き学習コーパスを用意することなく、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる言語理解モデル生成装置を得ることを目的とする。
【0013】
【課題を解決するための手段】
この発明に係る言語理解モデル生成装置は、クラス決定手段によりクラスが決定された単語列パタンと学習コーパス記憶手段に記憶されている学習コーパスの入力文を照合して、そのクラス決定手段により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するようにしたものである。
【0014】
この発明に係る言語理解モデル生成装置は、単語列パタンが属するクラスを決定する際、参照コーパスの入力文と意味タグの対応関係を参照して、その単語列パタンの意味属性を決定し、その意味属性に基づいて類似関係にある単語列パタンを判別してクラスを決定するようにしたものである。
【0015】
この発明に係る言語理解モデル生成装置は、学習コーパスの入力文を構成する単語列パタンと上記入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成するようにしたものである。
【0016】
この発明に係る言語理解モデル生成装置は、学習コーパスの入力文と意味タグの対応関係を考慮して、単語列パタンが属するクラスを決定するようにしたものである。
【0017】
この発明に係る言語理解モデル生成装置は、学習コーパスの入力文を構成する単語列パタンと上記入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成し、クラス決定手段により決定されたクラスを考慮して、そのモデルパラメータを書き換えるようにしたものである。
【0018】
この発明に係る言語理解モデル生成装置は、モデルパラメータを書き換える際、学習コーパスの入力文と意味タグの対応関係を考慮して、そのモデルパラメータの重みを調整するようにしたものである。
【0019】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図1はこの発明の実施の形態1による言語理解モデル生成装置を示す構成図であり、図において、11は対象タスク(例えば、ホテル予約)用に収集された入力文に意味タグが付与された学習コーパスを記憶する意味タグ付き学習コーパスメモリ(学習コーパス記憶手段)、12は対象タスクと必ずしも一致しない参照タスク(例えば、観光案内)用に収集された入力文に意味タグが付与された参照コーパスを記憶する意味タグ付き参照コーパスメモリ(参照コーパス記憶手段)、13は意味タグ付き参照コーパスメモリ12に記憶されている参照コーパスの入力文を構成する単語列の局所的な特徴(以下、単語列パタンという)を抽出する単語列パタン抽出部、14は参照コーパスの入力文と意味タグの対応関係を参照して、単語列パタン抽出部13により抽出された単語列パタンの意味属性を決定する意味属性決定部、15は意味属性決定部14により決定された意味属性に基づいて類似関係にある単語列パタンを判別し、各単語列パタンが属するクラスを決定するクラス決定部である。なお、単語列パタン抽出部13、意味属性決定部14及びクラス決定部15からクラス決定手段が構成されている。
【0020】
16はクラス決定部15によりクラスが決定された単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、そのクラス決定部15により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するパラメータ計算部(モデルパラメータ生成手段)、17はパラメータ計算部16により生成されたモデルパラメータを言語理解モデルとして格納する理解モデルメモリである。
【0021】
図2はパラメータ計算部16の内部構成を示す構成図であり、図において、21は単語列パタンのクラスと意味タグを組み合わせて素性リストを生成する素性生成部、22は素性生成部21により生成された素性リストを格納する素性候補メモリ、23は素性候補メモリ22に記憶されている素性リストを素性の候補集合とし、言語理解モデルに用いる素性群と各素性の重みを決定する素性選択部である。
【0022】
次に動作について説明する。
意味タグ付き学習コーパスメモリ11には、対象タスク(例えば、ホテル予約)用に収集された入力文に意味タグが付与された学習コーパスが記憶される。図3は学習コーパスの一例を示しているが、この学習コーパスは、ホテル予約の音声対話システムに対して、利用者が発話する入力文を収集したものである。各入力文には、質問や応答のタイプを細分類した意味タグが付与されている。
この学習コーパスは、先に図25を用いて説明した従来技術の学習コーパスと同様のものであるが規模は小さい。そのため、この学習コーパスは低コストで構築することができる。ただし、言語理解モデルの学習を行うにはスパースなコーパスとなっている。例えば、図25の学習コーパスには在ったSA0003「構いません」,SA0004「じゃあ仕方ないですね」,SA0005「それで大丈夫です」などの入力文が図3の学習コーパスからは欠落している。
【0023】
意味タグ付き参照コーパスメモリ12には、参照タスク(例えば、観光案内)用に収集された入力文に意味タグが付与された参照コーパスが記憶される。
図4は参照コーパスの一例を示しているが、参照タスクは対象タスクとは必ずしも一致せず、図4の例では、参照コーパスのタスクは観光案内である。
参照コーパスは大規模なものであり、多様な入力文が含まれている。また、参照コーパスの意味タグには、図3の学習コーパスと異なる分類体系のものが用いられている。即ち、図4の参照コーパスでは、意味タグとして、発話行為タグと概念タグの2種類が付与されている。
【0024】
発話行為タグは、話者の要求や応答の態度を分類したものであり、各入力文には、“accept”(承諾),“give−information”(情報提示),“requtest−information”(情報要求)などのうち、何れか1つのタグが付与される。
概念タグは、入力文中に話題として挙げられた対象を表すものであり、“destination”(目的地),“price”(料金),“reservation”(予約)などが付与される。ただし、付与される概念タグは0個でも複数個でもよい。図中、付与されている意味タグは“1”で示されている。
【0025】
単語列パタン抽出部13は、意味タグ付き参照コーパスメモリ12に記憶されている参照コーパスの入力文を読み出し、その入力文を構成する単語列パタンを抽出する。
ここでは、単語列パタンとして、単語N−gram(N=1,2,3)を網羅的に抽出するものとする。例えば、入力文「$文頭/大丈夫/です/$文末」からは、「大丈夫」「です」の単語1−gramと、「$文頭/大丈夫」「大丈夫/です」「です/$文末」の単語2−gramと、「$文頭/大丈夫/です」「大丈夫/です/$文末」の単語3−gramとを抽出する。
なお、図5は参照コーパスの単語列パタンリストを示している。単語列パタンとしては、この他に共起関係にある2単語対や、文法的関係にある単語対(例えば、主語や目的語と述語など)を用いるものであってもよい。
【0026】
意味属性決定部14は、単語列パタン抽出部13から参照コーパスの単語列パタンリストを受けると、参照コーパスの入力文と意味タグの対応関係を参照し、下記に示すようにして、その単語列パタンリストに含まれている単語列パタンの意味属性を決定する。
図6は単語列パタンの意味属性の一例を示し、意味属性は、互いに独立に生成される複数の行列M1,・・・,Mk,・・・により規定されている。
図6における行列の行は単語列パタンに対応し、行列の列は意味タグに対応している。ただし、各行列の列に対応する意味タグセットからは、常に何れか1つの意味タグが各入力文に付与される。入力文に対して任意個の付与が許される概念タグ(“destination”,“price”,“reservation”,“temporal”,“transportation”...)の場合には、図6の行列Mkのように、概念タグ(“transportation”)毎に、その有無(“transportation”=1,“transportation”=0)を列とする行列が生成される。
【0027】
行列M1,・・・,Mk,・・・におけるi行j列の要素(意味属性)aijは、単語列パタンiの意味タグjに対する重要度を表しており、意味属性決定部14は、次のようにして意味属性aijを求める。
aij=Gi・Lij (1)
ただし、式(1)におけるGiは、意味タグj=1,・・・,mに共通の大域的重みであり、単語列パタンi出現下での意味タグjのエントロピーHiを基にして計算する。Giの値は、単語列パタンiが意味タグj=1,・・・,Nと偏って共起するほど大きくなる。式(2)において、C(i)は単語列パタンiが出現する入力文の数を表し、C(i,j)は単語列パタンiと意味タグjが共起する入力文の数を表している。
【数1】
【0028】
一方、式(1)のLijは、各意味タグjに依存する局所的重みであり、Lijの値も、単語列パタンiと意味タグjが共起する入力文が多いほど大きくなる。式(3)において、C(j)は意味タグjが付与されている入力文の数を表している。
【数2】
【0029】
クラス決定部15は、上記のようにして意味属性決定部14が単語列パタンの意味属性を決定すると、その意味属性に基づいて単語列パタン間の類似度を計算して、類似関係にある単語列パタンを判別し、各単語列パタンが属するクラスを決定する。
具体的には次のようにして各単語列パタンが属するクラスを決定する。
【0030】
クラス決定部15は、各単語列パタンに対応する意味属性aijのベクトルがu=(aiu1,aiu2,・・・,aiun),v=(aiv1,aiv2,・・・,aivn)であるとするとき、ベクトルuとvの方向余弦により単語列パタンiuとivの類似度R(iu,iv)を求める。
【数3】
【0031】
単語列パタンのクラスタリングは、公知のk−means法を実行することにより行う。k−means法は、K個(Kは予め定める)にデータを分類するアルゴリズムであり、以下、(1)〜(4)の処理を繰り返すものである。
(1)K個の初期クラスタ中心を適当に決定する。
(2)全てのデータを最も近いクラスタ中心のクラスタに分類する。
(3)新たにできたクラスタの重心をクラスタ中心とする。
(4)新たなクラスタ中心が以前と変わらなければ終了し、そうでなければ(2)に戻る。
【0032】
単語列パタンのクラスタリングにより、図7に示すような単語列パタンのクラスデータが生成される。各クラス(クラスタ)は、意味的に類似した単語列パタンを集めたものとなり、例えば、クラスC001には、図6で意味タグ“accpt”(承諾)に対する重要度が大きい単語列パタン「大丈夫/です」「結構/です」「構い/ませ/ん」「仕方/ない」が集まったものである。
【0033】
パラメータ計算部16は、クラス決定部15が単語列パタンのクラスタリングを行うと、各単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、クラス決定部15により決定されたクラスと学習コーパスの意味タグとの共起関係を推定してモデルパラメータを生成する。
具体的には次のようにしてモデルパラメータを生成する。
例えば、入力文Sが与えられたとき、入力文Sに対応する意味タグがyとなる確率p(y|S)を推定する言語理解モデルを最大エントロピー法により構築する場合について説明する。
【0034】
最初に、最大エントロピー法の概要を説明する。
最大エントロピー法では、学習コーパスで観測される入力文Sの特徴と意味タグyとの相関を言語理解モデルに取り込むために、素性と呼ばれる関数を複数用いる。ここでは、次の式(5)のように、入力文Sと意味タグyに対する条件判定により、“1”または“0”をとる2値関数fi(S,y)(i=1,2,・・・)を素性として用いるものとする。式(5)の下線部分は、個々の素性fi(S,y)に対して定める変数である。
【数4】
【0035】
例えば、式(5)の形式の素性とは、「Sが単語列パタン『結構/です』に合致し、かつ、yが意味タグ『承諾』に等しい」場合に“1”をとる関数などである。あるいは、単独の単語列パタンの代わりに、クラス化した単語列パタン群を用いる場合には、「Sが{『結構/です』,『大丈夫/です』,『構いません』,『仕方ない』,…}のうちの何れかの単語列パタンに合致し、かつ、yが意味タグ『承諾』に等しい」場合に“1”をとる関数などを用いる。
【0036】
このような素性の集合{fi(S,y)|i=1,2,・・・,n}を規定することにより、モデルpが下記の式(6)の等式を充足するよう制約を設ける。
【数5】
式(6)における素性fiの推定確率と観測確率は、下記の式(7)(8)により定義される。
【数6】
【0037】
即ち、式(6)〜(8)により、素性fiが“1”をとるような入力文と意味タグの関係については、モデルによる推定確率が学習コーパスにおける観測確率と等しくなるよう制約される。
このような制約条件を満たす確率分布pの集合をPとするとき、最大エントロピー法で求めるモデルp*は、エントロピーH(p)を最大化する確率分布として次式で与えられる。
【数7】
【0038】
式(9)を解くことにより得られるモデルは、下記の式(11)の形式で表すことができる。式(11)の導出方法は、下記文献に記載されており、ここでは説明を省略する。
【数8】
<文献>
“A maximum entropy approach to natural language processing”(A.L.Berger,S.A.Della Pietra,and V.J.Della Pietra,Computational Linguistics,vol.22,no.1,pp.39−71,1996)
【0039】
式(11)におけるZ(S)はΣyp(y|S)=1とするための正規化項であり、次式で表される。
【数9】
式(11)から、モデルは素性fi(S,y)とその重みλiによりパラメタライズされることが分かる。
【0040】
素性の集合{fi(S,y)|i=1,2,・・・,n}が既に決定している場合、重みλiの値は、上記文献に記載の「改良反復スケーリング法」(improved iterative scaling)により求めることができる(説明は省略する)。
一方、モデルに用いる素性fi(S,y)を自動的に決定する方法としては、上記文献に記載の「素性選択アルゴリズム」(feature selection algorithm)がある。この方法は、予め大量に用意した素性の候補集合から、以下のステップ(1)〜(5)により、最適な素性の選択とモデルの更新を繰り返すアルゴリズムである。
【0041】
(1)素性を持たないモデルを初期モデルとして設定する。
(2)モデルに対し、候補集合中の素性をそれぞれ暫定的に追加し、改良反復スケーリング法で重みを決定することにより、暫定モデルを複数生成する。
(3)暫定モデルを用いて、学習コーパスでの対数尤度の増分を計算し、対数尤度の増分が最も大きいモデルを1つ選択する。
(4)選択した暫定モデルを新たなモデルとして設定する。
(5)尤度の増分が閾値以下であれば終了し、そうでなければ(2)に戻る。
【0042】
以上が最大エントロピー法によるモデル構築の概要である。最大エントロピー法でモデル構築する場合、図1のパラメータ計算部16は、図2のような構成となる。
パラメータ計算部16の素性生成部21は、上述した式(5)の形式の素性を生成する。素性を規定する単語列パタンのクラスには、クラス決定部15から受け取る単語列パタンのクラスを用いる一方、素性を規定する意味タグとしては、学習コーパスに含まれる意味タグを用いる。これらの単語列パタンのクラスと意味タグを組み合わせて、図8のような素性を生成する。
例えば、素性番号FB0001の素性は「Sが{『結構/です』,『大丈夫/です』,『構いません』,『仕方ない』,…}のうちの何れかの単語列パタンに合致し、かつ、yが意味タグ『承諾』に等しい」場合に“1”をとる素性である。得られた素性リストは素性候補メモリ22に書き込まれる。
【0043】
パラメータ計算部16の素性選択部23は、素性候補メモリ22に記憶されている素性リストを素性の候補集合とし、意味タグ付き学習コーパスメモリ11から学習コーパスの入力文と意味タグを読み出し、上述した素性選択アルゴリズムにより、モデルに用いる素性群と各素性の重みとを決定する。得られたモデルパラメータは理解モデルメモリ17に書き込まれる。
【0044】
図9はモデルパラメータの一例を示し、パラメータ番号PB001では、入力文が単語列パタン「結構/です」,「大丈夫/です」,「構いません」,「仕方ない」,…の何れかに合致した場合、意味タグ「承諾」に正の重み7.82E−00が与えられる。これら単語列パタンのうち「結構/です」以外は、図3の学習コーパスには存在しないものである。このため従来技術では、「大丈夫/です」,「構いません」,「仕方ない」,…などが意味タグ「承諾」と関連することをモデル化することができなかった。一方、この実施の形態1によれば、参照コーパスで類似と判定された単語列パタンに対しても、学習コーパスに存在する「結構/です」に基づいて意味タグ「承諾」との関連がモデル化される。
【0045】
以上で明らかなように、この実施の形態1によれば、クラス決定部15によりクラスが決定された単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、そのクラス決定部15により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するように構成したので、大規模な意味タグ付き学習コーパスを用意することなく、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる効果を奏する。
即ち、異なるタスク用に構築した参照コーパスを利用するので、対象タスク用のコーパスが少量であっても性能の優れた言語理解モデルを構築することができる。そのため、従来技術の問題点である「あるタスク用の言語理解モデルを構築するためには、そのタスク用の大規模な意味タグ付きコーパスを新たに用意する必要があり、多大なコストを要する」という問題を解決することができる。
【0046】
実施の形態2.
図10はこの発明の実施の形態2による言語理解モデル生成装置を示す構成図であり、図において、図1と同一符号は同一または相当部分を示すので説明を省略する。
31は図1の単語列パタン抽出部13と同様にして単語列パタンを抽出するとともに、意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を構成する単語列パタンを抽出する単語列パタン抽出部(クラス決定手段)、32は図1のパラメータ計算部16と同様にしてモデルパラメータを生成するとともに、単語列パタン抽出部31から学習コーパスの単語列パタンリストを受けると、その単語列パタンリストに含まれている単語列パタンと学習コーパスの入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成するパラメータ計算部(モデルパラメータ生成手段)である。
【0047】
次に動作について説明する。
単語列パタン抽出部31は、上記実施の形態1における単語列パタン抽出部13の処理に加えて、同様の処理を学習コーパスに対しても行う。即ち、意味タグ付き学習コーパスメモリ11から学習コーパスの入力文を読み出し、その入力文を構成する単語列の特徴を抽出して、学習コーパスの単語列パタンリストを生成する。
【0048】
パラメータ計算部32は、上記実施の形態1におけるパラメータ計算部16と同様にして、クラス決定部15により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成する。また、単語列パタン抽出部31から学習コーパスの単語列パタンリストを受けると、その単語列パタンリストに含まれている単語列パタンと学習コーパスの入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成する。
【0049】
以下、上記実施の形態1と同様に、最大エントロピー法により言語理解モデルを構築する場合について説明する。最大エントロピー法でモデルを構築する場合、パラメータ計算部32は、図11のような構成となる。
パラメータ計算部32の素性生成部24は、上記実施の形態1における素正生成部21と同様の処理により、単語列パタンのクラスと意味タグを組み合わせて素性リストを生成する。
また、素性生成部24は、単語列パタン抽出部31から学習コーパスの単語列パタンリストを受けると、それらの単語列パタンを学習コーパスの意味タグと組み合わせて素性群を生成する。
【0050】
この結果、図12に示すような素性リストが生成される。
FB0001,FB0002,FB0003の素性が上記実施の形態1と同様に、参照コーパスから抽出された単語列パタンクラスと意味タグを組み合わせた素性である。FC0001,FC0002の素性が学習コーパスから抽出された単独の単語列パタンと意味タグを組み合わせた素性である。得られた素性リストは素性候補メモリ22に書き込まれる。
【0051】
パラメータ計算部32の素性選択部23は、上記実施の形態1と同様の処理により、モデルに用いる素性群と各素性の重みとを決定する。得られたモデルパラメータは理解モデルメモリ17に書き込まれる。
図13はモデルパラメータの一例を示し、この実施の形態2では、パラメータ番号PC001,PC002のように、学習コーパスから抽出された単独の単語列パタンと意味タグの相関を表すパラメータがモデルに入る。こうした相関は、対象タスクであるホテル予約に強く依存するものであり、参照コーパスからは抽出し難いものである。したがって、参照コーパスからクラス化した単語列パタンのみを扱う上記実施の形態1よりも性能の優れた言語理解モデルを得ることができる効果を奏する。
なお、この実施の形態2においても、パラメータPB001のように、学習コーパスには存在しない単語列パタンと意味タグの相関をモデル化できるため、上記実施の形態1と同様に、従来技術の問題を解決できることは言うまでもない。
【0052】
実施の形態3.
図14はこの発明の実施の形態3による言語理解モデル生成装置を示す構成図であり、図において、図1と同一符号は同一または相当部分を示すので説明を省略する。
33は図1のクラス決定部15と基本的には同様にして各単語列パタンが属するクラスを決定するが、その際、学習コーパスの入力文と意味タグの対応関係を考慮して、単語列パタンが属するクラスを決定するクラス決定部(クラス決定手段)、34はクラス決定部33によりクラスが決定された単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、そのクラス決定部33により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するパラメータ計算部(モデルパラメータ生成手段)である。
図15はクラス決定部33の処理内容を示すフローチャートである。
【0053】
次に動作について説明する。
クラス決定部33は、意味属性決定部14が上記実施の形態1と同様にして、単語列パタンの意味属性を決定すると、その意味属性に基づいて単語列パタン間の類似度を計算し、その単語列パタン間の類似度と、学習コーパスの入力文と意味タグの対応関係(学習コーパスの入力文と意味タグの頻度)とに基づいて各単語列パタンが属するクラスを決定する。
具体的には次の通りである。
【0054】
まず、クラス決定部33は、意味属性決定部14が単語列パタンの意味属性を決定すると(図6を参照)、意味属性決定部14から単語列パタンの意味属性を受け取る(ステップST1)。
クラス決定部33は、意味属性決定部14から受け取った各単語列パタンと、意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合することにより、学習コーパスにおける各単語列パタンの頻度(単語列パタンに合致する入力文の数)を計測する(ステップST2)。
【0055】
また、クラス決定部33は、意味属性決定部14から受け取った各単語列パタンと、意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合することにより、学習コーパスにおける各単語列パタンと意味タグとの共起頻度(意味タグ別に計測した単語列パタンに合致する入力文の数)を計測する(ステップST3)。
【0056】
クラス決定部33は、クラスタ中心となる単語列パタンで未処理のものがあるか否かを判定し、未処理の単語列パタンがなければ、一連の処理を終了するが、未処理の単語列パタンがあれば、ステップST5の処理に進む(ステップST4)。
クラス決定部33は、未処理の単語列パタンがある場合、学習コーパスにおける頻度が1以上で、かつ、まだクラスタ中心として設定していない単語列パタンを選択し、その単語列パタンをクラスタ中心に設定する(ステップST5)。
クラス決定部33は、クラスタ中心となる単語列パタンを設定すると、クラスタ中心との類似度に基づいて、クラスタ中心との類似度が大きい順に他の単語列パタンをソートする(ステップST6)。なお、類似度の計算は、上記実施の形態1と同様に、意味属性ベクトルの方向余弦を用いる。
【0057】
クラス決定部33は、クラスタ中心と共起する意味タグの中で、未処理の意味タグがあるか否かを判定し、未処理の意味タグがなければ、ステップST4の処理に戻り、未処理の意味タグがあれば、ステップST8の処理に進む(ステップST7)。
クラス決定部33は、未処理の意味タグがある場合、学習コーパスにおいてクラスタ中心との共起頻度が1以上で、かつ、まだ注目する意味タグとして設定していない意味タグを選択し、その意味タグを注目する意味タグとして設定する(ステップST8)。
【0058】
クラス決定部33は、注目する意味タグを設定すると、クラスタ中心と他の単語列パタンに対して、注目する意味タグとの共起頻度に基づいて図16に示すような2×2分割表を生成し、仮説「注目する意味タグとの共起頻度の比率は、両単語列パタンで差が無い」を検定する(ステップST9)。
上記検定は、公知のフィッシャーの直接法(Fisher’s exact probability test:例えば、文献1,2)を用いた両側検定とし、有意水準は10%とする。
<文献1>
“”確率および統計”(印東太郎,コロナ社,pp.292−293,1973)
<文献2>
“フィッシャーの正確確率検定(直接確率)”(http://aoki2.si.gunma−u.ac.jp/lecture/Cross/Fisher.html)
【0059】
クラス決定部33は、仮説を検定すると、クラスタ中心からの類似度が大きい単語列パタンから順番に、上記検定で仮説が棄却されなかった単語列パタンまでを選択し、その選択した単語列パタン群とクラスタ中心とを合わせて、新たな単語列パタンクラスとする(ステップST10)。この結果、図17に示すような単語列パタンのクラスデータを生成する。
上記実施の形態1のクラスデータ(図7を参照)と異なり、各クラスには注目する意味タグが付与されている。クラスタ中心である単語列パタンは“@”で示されている。
ステップST7で未処理の意味タグがないと判定され、かつ、ステップST4で未処理の単語列パタンがないと判定されると、クラス決定部33の処理が終了する。
【0060】
パラメータ計算部34は、クラス決定部33が単語列パタンのクラスタリングを行うと、各単語列パタンと意味タグ付き学習コーパスメモリ11に記憶されている学習コーパスの入力文を照合して、クラス決定部33により決定されたクラスと学習コーパスの意味タグとの共起関係を推定してモデルパラメータを生成する。
以下、上記実施の形態1,2と同様に、最大エントロピー法により言語理解モデルを構築する場合について説明する。最大エントロピー法でモデルを構築する場合、パラメータ計算部34は図18のような構成となる。
【0061】
素性生成部25は、クラス決定部33から各単語列パタンが属するクラスを受け取ると、上記実施の形態1と同様に、上述した式(5)の形式の素性を生成する。
素性を規定する単語列パタンクラスには単語列パタンのクラスを用い、素性を規定する意味タグとしては、当該単語列パタンのクラスに付与された意味タグを用いる。これらの単語列パタンクラスと意味タグを組み合わせて素性を生成する。得られた素性リストを素性候補メモリ22に書き込む。素性選択部23の動作は上記実施の形態1と同様であるため説明を省略する。
【0062】
この実施の形態3によれば、或る単語列パタンと類似していると見なしてクラス化する単語列パタンは、参照コーパスにおける意味タグの頻度分布だけでなく、学習コーパスにおける意味タグの頻度分布も考慮して決定される。このため、対象タスクに則した単語列パタンのクラス化を行うことが可能であり、上記実施の形態1と比べて、性能の優れた言語理解モデルを構築することが可能である。
【0063】
実施の形態4.
図19はこの発明の実施の形態4による言語理解モデル生成装置を示す構成図であり、図において、図10及び図14と同一符号は同一または相当部分を示すので説明を省略する。
35はクラス決定部33により決定されたクラスを考慮して、パラメータ計算部32により暫定的に生成されたモデルパラメータを書き換えるパラメータ再計算部(モデルパラメータ生成手段)である。
図20はパラメータ再計算部35の内部構成を示す構成図であり、図において、41はクラス決定部33により決定されたクラスを考慮して、パラメータ計算部32により暫定的に生成されたモデルパラメータを書き換える素性書換部、42は学習コーパスの入力文と意味タグの対応関係を考慮して、モデルパラメータの重みを調整する重み再計算部である。
【0064】
次に動作について説明する。
パラメータ再計算部35は、上記実施の形態1と同様にして、パラメータ計算部32がモデルパラメータ(以下、暫定モデルパラメータという)を計算して出力すると(図21を参照)、クラス決定部33により決定されたクラスを考慮して、その暫定モデルパラメータの書換処理を実行する。
以下、パラメータ再計算部35の動作を具体的に説明する。上記実施の形態1〜3と同様に、最大エントロピー法により言語理解モデルを構築する場合について説明する。
【0065】
パラメータ再計算部35の素性書換部41は、クラス決定部33により決定された単語列パタンのクラスを用いて、暫定モデルパラメータの素性の書換処理を実行する。
即ち、最初に素性の単語列パタンwpと意味タグyを調べる。例えば、図21のパラメータ番号PA006の素性を書き換える場合、単語列パタンwpは「結構/です」であり、意味タグyは「承諾」となる。
次に、単語列パタンのクラスを参照する(図17を参照)。クラス群の中からクラスタ中心がwpに対応し、かつ、注目する意味タグがyに対応するクラスを選択する。先の例では、クラス番号C001のクラス(「結構/です」「大丈夫/です」「構い/ませ/」「仕方/ない」…)が相当する。
このクラスに含まれる単語列パタン群を、元の単独単語列パタンwpの代わりに用いるように素性を書き換える。書き換えの結果、図22に示すようなモデルパラメータが得られる。ただし、素性の重みは書換処理前と同じ値となっており、最大エントロピー法の条件である式(6)や式(9)を満たしていない。
【0066】
パラメータ再計算部35の重み再計算部42は、素性書換部41から重み未調整モデルパラメータを受け取ると、意味タグ付き学習コーパスメモリ11から読み出した学習コーパスの入力文と意味タグの頻度に基づいて、上述した改良反復スケーリング法によりモデルの重みを調整する。重み調整後のモデルパラメータは理解モデルメモリ17に書き込まれる。
【0067】
この実施の形態4によっても、上記実施の形態1〜3と同様に、学習コーパスには存在しない単語列パタンと意味タグとの関連をモデル化することができる。このため、少量の学習コーパスから性能の優れた言語理解モデルを構築することが可能であり、従来技術の問題点である「あるタスク用の言語理解モデルを構築するためには、そのタスク用の大規模な意味タグ付きコーパスを新たに用意する必要があり、多大なコストを要する」という問題を解決することができる。
【0068】
この実施の形態4では、パラメータ再計算部35の素性書換部41の処理において、書換処理によって得られた素性と元の素性を入れ換える例を説明したが、元の素性を残したまま、新たに書換処理によって得られた素性を追加することでも同様の効果を得ることができる。
【0069】
【発明の効果】
以上のように、この発明によれば、クラス決定手段によりクラスが決定された単語列パタンと学習コーパス記憶手段に記憶されている学習コーパスの入力文を照合して、そのクラス決定手段により決定されたクラスと学習コーパスの意味タグを関連付けるモデルパラメータを生成するように構成したので、大規模な意味タグ付き学習コーパスを用意することなく、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる効果がある。
【0070】
この発明によれば、単語列パタンが属するクラスを決定する際、参照コーパスの入力文と意味タグの対応関係を参照して、その単語列パタンの意味属性を決定し、その意味属性に基づいて類似関係にある単語列パタンを判別してクラスを決定するように構成したので、構成の複雑化を招くことなく、単語列パタンが属するクラスを決定することができる効果がある。
【0071】
この発明によれば、学習コーパスの入力文を構成する単語列パタンと上記入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成するように構成したので、言語理解モデルの性能を更に高めることができる効果がある。
【0072】
この発明によれば、学習コーパスの入力文と意味タグの対応関係を考慮して、単語列パタンが属するクラスを決定するように構成したので、言語理解モデルの性能を更に高めることができる効果がある。
【0073】
この発明によれば、学習コーパスの入力文を構成する単語列パタンと上記入力文を照合して、その単語列パタンと学習コーパスの意味タグを関連付けるモデルパラメータを生成し、クラス決定手段により決定されたクラスを考慮して、そのモデルパラメータを書き換えるように構成したので、大規模な意味タグ付き学習コーパスを用意することなく、音声対話システム等における意味タグの推定精度を高められる言語理解モデルを構築することができる効果がある。
【0074】
この発明によれば、モデルパラメータを書き換える際、学習コーパスの入力文と意味タグの対応関係を考慮して、そのモデルパラメータの重みを調整するように構成したので、構成の複雑化を招くことなく、モデルパラメータの書き換えを行うことができる効果がある。
【図面の簡単な説明】
【図1】この発明の実施の形態1による言語理解モデル生成装置を示す構成図である。
【図2】パラメータ計算部の内部構成を示す構成図である。
【図3】学習コーパスの一例を示す説明図である。
【図4】参照コーパスの一例を示す説明図である。
【図5】参照コーパスの単語列パタンリストを示す説明図である。
【図6】単語列パタンの意味属性の一例を示す説明図である。
【図7】単語列パタンのクラスの一例を示す説明図である。
【図8】素性リストの一例を示す説明図である。
【図9】モデルパラメータの一例を示す説明図である。
【図10】この発明の実施の形態2による言語理解モデル生成装置を示す構成図である。
【図11】パラメータ計算部の内部構成を示す構成図である。
【図12】素性リストの一例を示す説明図である。
【図13】モデルパラメータの一例を示す説明図である。
【図14】この発明の実施の形態3による言語理解モデル生成装置を示す構成図である。
【図15】クラス決定部の処理内容を示すフローチャートである。
【図16】単語列パタンと意味タグとの共起頻度による2×2分割表の一例を示す説明図である。
【図17】単語列パタンのクラスの一例を示す説明図である。
【図18】パラメータ計算部の内部構成を示す構成図である。
【図19】この発明の実施の形態4による言語理解モデル生成装置を示す構成図である。
【図20】パラメータ再計算部の内部構成を示す構成図である。
【図21】暫定モデルパラメータの一例を示す説明図である。
【図22】重み未調整モデルパラメータの一例を示す説明図である。
【図23】音声対話システムを示す説明図である。
【図24】従来の言語理解モデル生成装置を示す構成図である。
【図25】学習コーパスの一例を示す説明図である。
【図26】モデルパラメータの一例を示す説明図である。
【符号の説明】
11 意味タグ付き学習コーパスメモリ(学習コーパス記憶手段)、12 意味タグ付き参照コーパスメモリ(参照コーパス記憶手段)、13 単語列パタン抽出部(クラス決定手段)、14 意味属性決定部(クラス決定手段)、15 クラス決定部(クラス決定手段)、16 パラメータ計算部(モデルパラメータ生成手段)、17 理解モデルメモリ、21 素性生成部、22 素性候補メモリ、23 素性選択部、24 素性生成部、25 素性生成部、31 単語列パタン抽出部(クラス決定手段)、32 パラメータ計算部(モデルパラメータ生成手段)、33 クラス決定部(クラス決定手段)、34 パラメータ計算部(モデルパラメータ生成手段)、35 パラメータ再計算部(モデルパラメータ生成手段)、41 素性書換部、42 重み再計算部。
Claims (6)
- 対象タスク用に収集された入力文に意味タグが付与された学習コーパスを記憶する学習コーパス記憶手段と、参照タスク用に収集された入力文に意味タグが付与された参照コーパスを記憶する参照コーパス記憶手段と、上記参照コーパス記憶手段に記憶されている参照コーパスの入力文を構成する単語列パタンを抽出し、その単語列パタンが属するクラスを決定するクラス決定手段と、上記クラス決定手段によりクラスが決定された単語列パタンと上記学習コーパス記憶手段に記憶されている学習コーパスの入力文を照合して、そのクラス決定手段により決定されたクラスと当該学習コーパスの意味タグを関連付けるモデルパラメータを生成するモデルパラメータ生成手段とを備えた言語理解モデル生成装置。
- クラス決定手段は、単語列パタンが属するクラスを決定する際、参照コーパスの入力文と意味タグの対応関係を参照して、その単語列パタンの意味属性を決定し、その意味属性に基づいて類似関係にある単語列パタンを判別してクラスを決定することを特徴とする請求項1記載の言語理解モデル生成装置。
- モデルパラメータ生成手段は、クラス決定手段が学習コーパス記憶手段に記憶されている学習コーパスの入力文を構成する単語列パタンを抽出すると、その単語列パタンと上記入力文を照合して、その単語列パタンと当該学習コーパスの意味タグを関連付けるモデルパラメータを生成することを特徴とする請求項1または請求項2記載の言語理解モデル生成装置。
- クラス決定手段は、学習コーパスの入力文と意味タグの対応関係を考慮して、単語列パタンが属するクラスを決定することを特徴とする請求項2記載の言語理解モデル生成装置。
- 対象タスク用に収集された入力文に意味タグが付与された学習コーパスを記憶する学習コーパス記憶手段と、参照タスク用に収集された入力文に意味タグが付与された参照コーパスを記憶する参照コーパス記憶手段と、上記参照コーパス記憶手段に記憶されている参照コーパスの入力文を構成する単語列パタンを抽出し、その単語列パタンが属するクラスを決定するとともに、上記学習コーパス記憶手段に記憶されている学習コーパスの入力文を構成する単語列パタンを抽出するクラス決定手段と、上記学習コーパスの入力文を構成する単語列パタンと上記入力文を照合して、その単語列パタンと当該学習コーパスの意味タグを関連付けるモデルパラメータを生成し、上記クラス決定手段により決定されたクラスを考慮して、そのモデルパラメータを書き換えるモデルパラメータ生成手段とを備えた言語理解モデル生成装置。
- モデルパラメータ生成手段は、モデルパラメータを書き換える際、学習コーパスの入力文と意味タグの対応関係を考慮して、モデルパラメータの重みを調整することを特徴とする請求項5記載の言語理解モデル生成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002262935A JP2004102596A (ja) | 2002-09-09 | 2002-09-09 | 言語理解モデル生成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002262935A JP2004102596A (ja) | 2002-09-09 | 2002-09-09 | 言語理解モデル生成装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004102596A true JP2004102596A (ja) | 2004-04-02 |
Family
ID=32262833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002262935A Pending JP2004102596A (ja) | 2002-09-09 | 2002-09-09 | 言語理解モデル生成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004102596A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111160512A (zh) * | 2019-12-04 | 2020-05-15 | 华东师范大学 | 基于生成式对抗网络构建双判别器对话生成模型的方法 |
-
2002
- 2002-09-09 JP JP2002262935A patent/JP2004102596A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111160512A (zh) * | 2019-12-04 | 2020-05-15 | 华东师范大学 | 基于生成式对抗网络构建双判别器对话生成模型的方法 |
CN111160512B (zh) * | 2019-12-04 | 2023-06-13 | 华东师范大学 | 基于生成式对抗网络构建双判别器对话生成模型的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6836760B1 (en) | Use of semantic inference and context-free grammar with speech recognition system | |
CN106599032B (zh) | 一种结合稀疏编码和结构感知机的文本事件抽取方法 | |
KR20210158344A (ko) | 디지털 어시스턴트를 위한 머신 러닝 시스템 | |
JP5167546B2 (ja) | 文単位検索方法、文単位検索装置、コンピュータプログラム、記録媒体及び文書記憶装置 | |
JP2004362584A (ja) | テキストおよび音声の分類のための言語モデルの判別トレーニング | |
JP4740837B2 (ja) | 音声認識における統計的言語モデリング方法、システム及び記録媒体 | |
Neubig et al. | Bayesian learning of a language model from continuous speech | |
Sak et al. | Morpholexical and discriminative language models for Turkish automatic speech recognition | |
US20050251385A1 (en) | Information processing apparatus, information processing method and recording medium | |
CN101515456A (zh) | 语音识别接口装置及其语音识别方法 | |
Zhu et al. | Catslu: The 1st chinese audio-textual spoken language understanding challenge | |
US20090240501A1 (en) | Automatically generating new words for letter-to-sound conversion | |
JP6810580B2 (ja) | 言語モデル学習装置およびそのプログラム | |
Naptali et al. | Class-based n-gram language model for new words using out-of-vocabulary to in-vocabulary similarity | |
Peguda et al. | Speech to sign language translation for Indian languages | |
Shafran et al. | A comparison of classifiers for detecting emotion from speech | |
Song et al. | Exploiting different word clusterings for class-based RNN language modeling in speech recognition | |
Liu et al. | Paraphrastic language models | |
CN104199811A (zh) | 短句解析模型建立方法及系统 | |
Zhou et al. | Discriminative training of the hidden vector state model for semantic parsing | |
Decadt et al. | Transcription of out-of-vocabulary words in large vocabulary speech recognition based on phoneme-to-grapheme conversion | |
CN112071304B (zh) | 一种语意分析方法及装置 | |
Zhou et al. | Statistical natural language generation for speech-to-speech machine translation | |
CN114239555A (zh) | 一种关键词提取模型的训练方法及相关装置 | |
JP2006107353A (ja) | 情報処理装置および方法、記録媒体、並びにプログラム |