JP4245530B2 - 言語モデル作成装置及び方法並びにプログラム - Google Patents

言語モデル作成装置及び方法並びにプログラム Download PDF

Info

Publication number
JP4245530B2
JP4245530B2 JP2004239764A JP2004239764A JP4245530B2 JP 4245530 B2 JP4245530 B2 JP 4245530B2 JP 2004239764 A JP2004239764 A JP 2004239764A JP 2004239764 A JP2004239764 A JP 2004239764A JP 4245530 B2 JP4245530 B2 JP 4245530B2
Authority
JP
Japan
Prior art keywords
word
class
language model
sentence
unit
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.)
Expired - Fee Related
Application number
JP2004239764A
Other languages
English (en)
Other versions
JP2006059105A (ja
Inventor
利行 花沢
啓恭 伍井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2004239764A priority Critical patent/JP4245530B2/ja
Publication of JP2006059105A publication Critical patent/JP2006059105A/ja
Application granted granted Critical
Publication of JP4245530B2 publication Critical patent/JP4245530B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Machine Translation (AREA)

Description

この発明は、専門分野向けの音声認識に用いるクラス言語モデルを効率的に作成できる言語モデル作成装置及び言語モデルの作成方法並びにコンピュータを言語モデル作成装置として機能させるプログラムに関するものである。
近年、ユーザが発話した文章を認識して文字化する音声認識技術が盛んである。音声認識技術では統計言語モデルを用いているため、その認識率は統計言語モデルの学習に大きく依存する。実用的な認識性能を得るためには、あらゆる分野を認識対象とするのではなく、特定分野の事項に特化した学習データを収集することが必要である。医療分野であるならば、例えば診断所見の入力データに特化して言語モデルを作成する。しかしながら、特定分野に限定した場合でも当該分野に特有な固有名詞を全て含んだ学習データを収集するのは困難である。
この学習データ収集の困難さに対処するため、クラス言語モデルを導入した技術が一般化されつつある。クラス言語モデルでは、例えば医療分野において薬品名を一つのクラスにまとめることにより、学習データに出現しない薬品名に対しても統計言語モデルのパラメータを求めることができる。
しかしながら、クラス言語モデルの学習データに新規に文例を追加する場合は、人手で新規文例中の単語分割やクラス付与を行う必要がある。このため、専門知識のないエンドユーザが文単位でクラス言語モデルの学習データを登録するのは困難である。
この不具合を解消する技術として、例えば特許文献1に開示される類似語による未知語登録方式がある。この方式では、新規に入力した文例中にクラスが未知の単語がある場合、ユーザにクラス未知の単語の類似語を入力させる。そして、この類似語が予め用意したクラス推定用辞書内に存在する場合、辞書内のクラスと新規文例中のクラス未知の単語のクラスとが同じクラスであるものとして登録する。
特開平2−21359号公報
従来では、専門知識のないエンドユーザでも類似語さえ入力すれば未知語のクラス推定ができるものの、類似語の入力操作が不可欠であり登録作業が煩雑であるという課題があった。
この発明は上記課題を解決するためになされたもので、専門分野向けの音声認識に用いるクラス言語モデルの学習データを追加するにあたり、ユーザに負担をかけることなく新規登録文に含まれる未知語に対し適切にクラスを推定してクラス言語モデルを作成できる言語モデル作成装置及び言語モデルの作成方法並びに言語モデル作成装置としてコンピュータを機能させるプログラムを得ることを目的とする。
この発明に係る言語モデル作成装置は、入力文を形態素解析して単語毎に分割する形態素解析部と、言語モデル作成用の文例を格納する言語モデル作成用データ記憶部と、単語クラスに分類する単語とその単語クラスを格納する既知語クラス記憶部と、形態素解析部により分割された入力文の単語のうち、既知語クラス記憶部に格納される単語に一致するものにその単語クラスを付与する既知語クラス付与部と、言語モデル作成用の文例のうち、単語をこれに付与した単語クラスを示すクラス語で置き換えた文例をマッチング対象文例として格納するクラス推定用文例記憶部と、既知語クラス付与部により単語クラスを付与した単語を含む入力文とマッチング対象文例とのパターンマッチング処理により、入力文中の未知語とマッチング対象文例中のクラス語とがマッチするか否かを判定し、マッチすると判定したクラス語の単語クラスをこの未知語の単語クラスとして推定すると共に、マッチすると判定したクラス語で未知語を置き換えた入力文を言語モデル作成用の文例として言語モデル作成用データ記憶部に登録する未知語クラス推定部と、言語モデル作成用の文例に含まれる単語列の出現確率を算出して言語モデルとして出力する言語モデル作成部とを備えるものである。
この発明によれば、入力文を形態素解析して単語毎に分割する形態素解析部と、言語モデル作成用の文例を格納する言語モデル作成用データ記憶部と、単語クラスに分類する単語とその単語クラスを格納する既知語クラス記憶部と、形態素解析部により分割された入力文の単語のうち、既知語クラス記憶部に格納される単語に一致するものにその単語クラスを付与する既知語クラス付与部と、言語モデル作成用の文例のうち、単語をこれに付与した単語クラスを示すクラス語で置き換えた文例をマッチング対象文例として格納するクラス推定用文例記憶部と、既知語クラス付与部により単語クラスを付与した単語を含む入力文とマッチング対象文例とのパターンマッチング処理により、入力文中の未知語とマッチング対象文例中のクラス語とがマッチするか否かを判定し、マッチすると判定したクラス語の単語クラスをこの未知語の単語クラスとして推定すると共に、マッチすると判定したクラス語で未知語を置き換えた入力文を言語モデル作成用の文例として言語モデル作成用データ記憶部に登録する未知語クラス推定部と、言語モデル作成用の文例に含まれる単語列の出現確率を算出して言語モデルとして出力する言語モデル作成部とを備えるので、言語モデルに関して専門的知識を有しないエンドユーザであっても、ユーザに負担をかけることなく新規登録文である入力文に含まれる登録対象の未知語に対して適切に単語クラスを推定してクラス言語モデルを作成することができるという効果がある。これにより、未知語に対して入力文に含まれる単語連鎖に加えて、言語モデル作成用の文例のうち、未知語に付与した単語クラスを含む文例の単語連鎖も未知語のバイグラム出力確率に反映させることができる。従って、少ない文例で効率的に言語モデルを作成できるという効果がある。
実施の形態1.
図1は、この発明の実施の形態1による言語モデル作成装置の構成を示すブロック図である。本実施の形態1による言語モデル作成装置は、文例入力部1、形態素解析部2、既知語クラス付与部3、既知語クラス辞書(既知語クラス記憶部)4、未知語クラス推定部5、クラス推定用文例辞書(クラス推定用文例記憶部)6、未知語推定クラス辞書7、言語モデル作成用データメモリ(言語モデル作成用データ記憶部)8及び言語モデル作成部9を含んで構成される。
文例入力部1は、ユーザが装置内に文例を入力する際に使用する構成部であって、例えば本発明の言語モデル作成装置を具現化するコンピュータに標準的に搭載されたキーボードやディスプレイなどのハードウェア資源と入力操作に関するソフトウェア資源とが協働した手段として実現される。
形態素解析部2は、入力文に対して形態素解析を行い単語単位に分割する。形態素解析の手法としては、例えば下記の参考文献1に示される形態素解析を行う。また、形態素解析部2は、入力文の形態素解析に加え、未知語検出処理を行う。これにより、入力文中の未知語に対して未知語フラグを付与したり、接続詞や接続助詞に対して接続詞フラグを付与して既知語クラス付与部3に出力する。
参考文献1;森信介、長尾眞、”nグラム統計によるコーパスからの未知語抽出”、電子情報通信学会技術研究報告、NLC95−8、(1995年7月)。
既知語クラス付与部3では、形態素解析部2により形態素解析された入力文のうち、未知語フラグが付与されていない未知語以外の単語(以降、既知語と称する)に対して既知語クラス辞書4に存在する単語のクラス(単語クラス)で対応するものを検出して付与する。
図2は、既知語クラス辞書の一例を示す図であり、自治体の無線放送を音声認識して文字表示するタスクに関するものである。図に示すように、既知語クラス辞書4には、当該タスクで使用する単語のうち、クラス化対象とする全単語の表記とこれに対応するクラス名とが関連付けられた情報が電子データとして格納されている。ここで、クラス名は、<>で囲って表すものとする。また、<月>、<日>や<行事>などのように<>で囲まれた単語クラスを示す語をクラス語と称する。
なお、本実施の形態では、クラス化されていない通常の単語とクラス語の混在を許す「単語クラス混合モデル」を取り扱うが、記載上の簡単のために単に「クラス言語モデル」と呼ぶことにする。以降では、図2に示した自治体の無線放送を音声認識して文字表示するタスク用の言語モデルをクラス言語モデルとして作成する例について説明する。
未知語クラス推定部5は、入力文中の未知語がクラス推定用文例辞書6に格納された文例のクラス語部分とマッチする(属する)か否かを判定し、マッチしていると判定されればそのクラス語を当該未知語のクラスであると推定する。クラス推定用文例辞書6には、音声認識により言語モデルを作成する対象タスクにおいて発話が予想されるクラス語を含んだ文例が格納される。
本実施の形態では、クラス推定用文例辞書6に言語モデル作成用データメモリ8中のクラス語を含む全ての文例を格納しておく。なお、言語モデル作成用データメモリ8には、音声認識により言語モデルを作成する対象タスクの言語モデルを作成するための学習データが格納される。
図3は、言語モデル作成用データメモリの一例であり、図2に示した自治体の無線放送を音声認識して文字表示するタスクでの言語モデルを作成するための学習データを示している。図に示すように、言語モデル作成用データメモリ8には、言語モデルを作成するための文例である学習データが予め単語単位に分割された情報が電子データとして格納されている。
ここで、図3に示す学習データにおける文例中の<>で囲まれたクラスは、ユーザによって文例入力部1を介して適当な文例を構成する単語ごとに付与される。図示の例では、<行事>、<施設>、<地域>というクラス語が含まれる。このクラスは、上述のようにユーザによる人手で行うか、あるいは既存のクラス語との比較などにより自動で付与される。なお、本実施の形態では、クラスの指定を人手で行うものとする。
クラス推定用文例辞書6には、図3に示す言語モデル作成用データメモリ8中のクラス語を含む全ての文例が電子データとして格納されることになる。即ち、このクラス推定用文例辞書6には、図3に示す<行事>、<施設>、<地域>などのクラス語を含む文例、即ち、単語をこれに付与した単語クラスを示すクラス語で置き換えた文例が、言語モデル作成用データメモリ8から抽出されて格納される。この場合のクラス推定用文例辞書6の内容の一例を図4に示す。
未知語推定クラス辞書7は、形態素解析部2により形態素解析された入力文のうち、未知語フラグが付与されている未知語の表記と共に、当該未知語に対して未知語クラス推定部5が推定したクラスを対応付けて格納する。言語モデル作成部9は、既知語クラス辞書4、未知語推定クラス辞書7及び言語モデル作成用データメモリ8に格納されているデータを用いて統計モデルであるクラスn−gram言語モデルを作成し出力する。
なお、言語モデルは、音声認識における単語系列の出現確率の推定値を与える電子データである。本願は、電子データとしての言語モデルの作成方法を開示するものであり、ユーザに負担を与えることなく、その内容を容易に更新することができるという、従来にない特有な効果を奏する。
また、上述した、文例入力部1、形態素解析部2、既知語クラス付与部3、未知語クラス推定部5及び言語モデル作成部9は、例えば汎用コンピュータ等を用いて本発明に従う言語モデル作成プログラムを実行させることで具現化できる。もう少し詳細に説明すると、本発明に従う言語モデル作成プログラムを、コンピュータに読み込ませて、その動作を制御することにより、コンピュータ上に図1に示す形態素解析部2、既知語クラス付与部3、未知語クラス推定部5及び言語モデル作成部9を実現することができる。
また、既知語クラス辞書4、クラス推定用文例辞書6、未知語推定クラス辞書7及び言語モデル作成用データメモリ8は、例えば上記コンピュータの記憶装置上に構成することができる。なお、以下の説明において、本発明の言語モデル作成装置を具現化するコンピュータ自体の構成及びその基本的な機能については、当業者が当該分野の技術常識に基づいて容易に認識できるものであり、本発明の本質に直接関わるものでないので詳細な記載を省略する。
次に動作について説明する。
先ず、ユーザが本実施の形態1による言語モデル作成装置に登録文を入力する。具体的には、ユーザが、文例入力部1(例えば、キーボードなど)を用いて登録文を入力することで、当該登録文が電子データとして形態素解析部2に入力される。
形態素解析部2では、文例入力部1を介して入力された入力文に対して形態素解析を行い、単語単位に分割する。形態素解析は、上述したように、例えば参考文献1に示される手法を用いられる。また、形態素解析部2は、形態素解析と共に未知語検出処理を実行する。この未知語検出処理により、入力文中の未知語に対して未知語フラグが付与され、さらに接続詞や接続助詞に対しては接続詞フラグが付与されて既知語クラス付与部3に出力される(形態素解析ステップ)。
図5は、形態素解析部の出力内容の一例を示す図であり、形態素解析部2の出力内容の理解を助けるために各単語の電子データとその付加データであるフラグの関係を図表として表現したものである。この図では、入力文が「10月23日に合併問題説明会を新市民会館で行いますのでご参加下さい」であった場合を例として挙げている。この文のうち、「ので」は接続助詞なので接続詞フラグが付与される。
また、例えば「合併問題説明会」と「新市民会館」が未知語であった場合、この2語に未知語フラグが付与される。なお、接続詞フラグや未知語フラグは、対応する単語の電子データの付加データとして付与されるものであり、図示のごとく例えばディジタル値1が設定される。
既知語クラス付与部3では、形態素解析部2から入力した各単語の電子データのうち、未知語フラグが設定されているか否かにより未知語以外の単語である既知語を抽出する。そして、既知語クラス付与部3は、未知語フラグの有無に基づき抽出した既知語のうち、既知語クラス辞書4に存在する単語に一致するものを検出し、検出結果の単語のクラスを既知語に付与する(既知語クラス付与ステップ)。このようにクラスが付与された既知語を含む入力文の電子データは、既知語クラス付与部3から未知語クラス推定部5に出力される。
図6は、既知語クラス付与部の出力内容の一例を示す図であり、既知語クラス付与部3の出力内容の理解を助けるために各単語の電子データ及びその付加データであるフラグ並びにクラスの関係を図表として表現したものである。既知語クラス付与部3は、形態素解析部2からの入力文が図5に示す内容である場合、図6に示すように、既知語に対応するクラスが既知語クラス辞書4にあれば、そのクラスを付与する。図示の例では、単語「10月」、「23日」に対して、クラス<月>、<日>がそれぞれ付与されている。
未知語クラス推定部5は、既知語クラス付与部3の出力データを入力すると、このデータのうち、未知語フラグが付与された単語を記号「*(j)」に置き換える。記号「*(j)」は、通常の単語とはマッチせず、クラス語に対しては全クラスにマッチする未知語及びクラス語を表す電子データである。なお、jは、入力文の文頭から未知語が出現した順番に1,2,・・・の順で番号を付与したものである。
図6に示す入力文の場合、「<月><日>に*(1)を*(2)で行います」となる。これを単語単位ではなく文字単位で分割し直す。但し、クラス語及び未知語を表す「*(j)」は、全て1文字とみなすこととする。つまり、<月>、<日>、*(1)、*(2)等は全て一文字とする。
次に、未知語クラス推定部5は、上述の処理を施した入力文の電子データとクラス推定用文例辞書6に格納されている各文例の電子データとのパターンマッチング処理を行う。なお、本実施の形態では、パターンマッチングとしてDPマッチングを用いる。
図7は、DPマッチングにおけるマッチング対象文と入力文の対応関係を示すグラフである。図において、符号Aを付した文はマッチング対象文を示し、符号Bを付した文は入力文を示している。また、符号pを付したルートは、対象文Aと入力文BとのDPマッチングのパスを示している。このパターンマッチングは、図8に示す手順で行う。
図8のフローチャートに沿って、未知語クラス推定部5によるパターンマッチング処理を説明する。先ず、未知語クラス推定部5は、上述した処理を施して文字単位に分割して規定した入力文を、図7に示すグラフの横軸(i軸)のパラメータとして1文字単位に設定する(ステップST100)。
次に、未知語クラス推定部5は、クラス推定用文例辞書6に格納されているパターンマッチングの対象となる文例(以降、マッチング対象文例と称する)を順次読み出すにあたり、その読み出し順に番号rを設定する。ここで、番号rは1からNまでの正の自然数をとり、Nはクラス推定用文例辞書6に格納されているマッチング対象文例数を示している。先ず、未知語クラス推定部5は、クラス推定用文例辞書6から最初に読み出した文例の番号rに1を設定する(ステップST110)。
続いて、未知語クラス推定部5は、r番目のマッチング対象文例の各文字を、図7に示す縦軸(j軸)のパラメータとして1文字単位に分割して設定する(ステップST120)。このあと、未知語クラス推定部5は、下記式(1)〜(3)に示す漸化式に従ってDPマッチングを行う(ステップST130)。
(1)初期化
g[i][0]=i,i=1〜I ・・・(1)
g[0][j]=j,j=1〜J ・・・(2)
(2)漸化式
g[i][j]=MIN(g[i−1][j]+1,g[i][j−1],
g[i−1][j−1]+d[i][j]),i
=1〜I,j=1〜J ・・・(3)
ここで、MIN()は、()内の最小値を選択する演算子である。g[i][j]は、入力文のi番目の文字とマッチング対象文例のj番目の文字までの累積距離を示している。d[i][j]は、入力文のi番目の文字とマッチング対象文例のj番目の文字との距離であり、両者がマッチする場合は0、マッチしない場合は正の大きな値(例えば、1000)とする。また、Iは入力文の文字数、Jはマッチング対象文例の文字数である。
上述のようにしてDPマッチングが終了すると、図7に示すDPマッチングパスpが得られる。このあと、未知語クラス推定部5は、DPパスpをトレースバックして入力文の文末での累積距離g[I][J]が最小となる最適DPパスを求める(ステップST140)。図9は、図7と同様にして最適なDPマッチングパスが得られるマッチング対象文例Aと入力文Bとの対応関係を示すグラフであって、マッチング対象文例Aと入力文Bとの最適なDPマッチングパスに符号Pを付して示している。
この最適DPパスP上で、未知語クラス推定部5は、図9に示すグラフを用いて、マッチした全文字数n1、入力文中の未知語「*(j)」がマッチした文字数n2、脱落文字数nd、挿入文字数niをそれぞれ数える。
但し、「*(1)」と表記された入力文B中に出現する最初の未知語より前方の文字に対しては挿入文字数としてカウントしない。例えば、図9では、入力文Bの「<月> <日> に」の部分が挿入となっているが挿入文字数としてはカウントしない。このように「*(1)」より前方の文字に対して挿入数をカウントしないことにより、入力文における「*(1)」より前方の文字の違いに起因するマッチング対象文例Aとのミスマッチを避けることができる。
また、入力文B中で最後に出現する未知語より後方に接続詞又は接続助詞が存在する場合、未知語クラス推定部5は、接続詞又は接続助詞を含めて後方の挿入文字数と脱落文字数はカウントしない。さらに、入力文B中の「ので」は接続助詞であり、図5に示すように接続詞フラグが付与されており、「ので」を含めた後方の文字については挿入文字数及び脱落文字数としてカウントしない。
例えば、図9では、入力文Bの「のでご参加下さい」が挿入になるが、その挿入数はカウントしない。このように接続詞フラグの後方を処理することにより、重文や複文によるミスマッチを防止することができる。
次に、未知語クラス推定部5は、r番目のマッチング対象文例についてのマッチングスコアS(r)を算出する(ステップST150)。このとき、入力文B中の未知語「*(j)」が、「マッチした文字数n2が1以上であり、且つ脱落文字数ndが予め定めた閾値TH_d以下、挿入文字数niが予め定めた閾値TH_i以下」というスコア付与条件を満たさない場合、マッチングスコアS(r)=0とする。
なお、閾値TH_d及び閾値TH_iは、それぞれ脱落文字数nd及び挿入文字数niについてマッチングスコアを付与すべき許容上限値を規定する値であり、最適なマッチング結果を与える上限値を予め求めておく。
一方、上記スコア付与条件を満たす場合、未知語クラス推定部5は、マッチングスコアS(r)を下記式(4)に従って算出する。
S(r)=n1−a*nd−b*ni ・・・(4)
ここで、a,bは予め値を定めた正の定数であり、n1はマッチした全文字数、ndは脱落文字数及びniは挿入文字数である。
このあと、未知語クラス推定部5は、上記処理を施したマッチング対象文例の番号rがNであるか否かを判定し、クラス推定用文例辞書6に格納されている全てのマッチング対象文例に対してステップST120からステップST150までの処理を施したかどうかを確認する(ステップST160)。
このとき、番号rがNであり、全てのマッチング対象文例に対して処理が行われていれば、本フローチャートによる処理を終了する。一方、番号rがNでなければ、未知語クラス推定部5は、ステップST170の処理に移行する。
未知語クラス推定部5は、クラス推定用文例辞書6から新たなマッチング対象文例を読み出し、その読み出し番号rに1を加え、当該マッチング対象文例に対してステップST120からステップST150までの処理を施す。このようにして、ステップST120からステップST150までの処理を、クラス推定用文例辞書6に格納されている全てのマッチング対象文例に対して繰り返して、それぞれのマッチングスコアS(r)(但し、r=1〜N)を求める(ステップST170)。
次に、未知語クラス推定部5は、上述した処理で得られた入力文に関する電子データを用いて、文例選択処理、クラス推定処理及び登録処理を行う。図10は、未知語クラス推定部による文例選択処理を示すフローチャートであり、この図に沿って説明する。
先ず、未知語クラス推定部5は、上述の処理にて得たマッチングスコアS(r),(r=1〜N)を予め定めた閾値THSと比較し、マッチングスコアS(r)が閾値THS以上の文例を選択する(ステップST200)。これが文例選択処理である。なお、閾値THSは、クラス推定をすべきマッチングスコアの許容下限値を規定する値であり、最適なクラス推定を行える下限値を予め求めておく。
このとき、1個以上の文例が選択された場合、未知語クラス推定部5は、ステップST220の処理に移行する。一方、マッチングスコアS(r)が閾値THS以上の文例が選択されなかった場合、未知語クラス推定部5は、入力文Bの「*(j)」と表記していた未知語部分を元の単語表記に戻して言語モデル作成用データメモリ8に格納して登録処理を終了する(ステップST280)。
つまり、「<月> <日> に *(1) を *(2) で 行い ます」なる文は、「<月> <日> に 合併問題説明会 を 新市民会館 で 行い ます」という表記に戻される。なお、この際、以下に説明するステップST220からステップST270までの処理は行わない。
ステップST220において、未知語クラス推定部5は、ステップST200で選択された文例のうちマッチングスコアS(r)が最大の文例1個又は上位のR(但し、Rは1以上N以下の自然数)個以上の文例を抽出する(ステップST220)。ここで、Rは抽出された文例数である。
次に、未知語クラス推定部5は、ステップST220で抽出した全ての文例に番号r(r=1〜R)を付与し、番号r=1にセットする(ステップST230)。続いて、未知語クラス推定部5は、入力文中の未知語「*(j)」が、ステップST220で抽出したr番目の文例におけるクラス語部分とマッチしているか否かを調べ、マッチしている場合はマッチしたクラス語を当該未知語のクラスであると推定する(ステップST240)。
例えば、図9に示すマッチング対象文例「<行事>を<施設>で行っています」の部分に入力文の「*(1)を*(2)で行います」がマッチした場合、図6に示すように、この入力文の第1番目の未知語である「合併問題説明会」のクラスを<行事>、第2番目の未知語「新市民会館」のクラスを<施設>と推定する。以上がクラス推定処理(クラス推定ステップ)である。
未知語クラス推定部5は、推定結果として未知語推定クラス辞書7に当該単語の標記に関連付けて上述のようにして推定したクラス語を格納し登録する。このときの未知語推定クラス辞書7の内容を図11に示す。なお、図11は、未知語推定クラス辞書の内容の一例を示す図であり、その内容の理解を助けるために各単語の標記を表す電子データ及びこれに関連付けられたクラスを表す電子データの関係を図表として表現したものである。
続いて、未知語クラス推定部5は、入力文の未知語部分を、上述のようにして推定したクラス語に置き換えて、言語モデル作成用データメモリ8に格納し登録する(ステップST250)。具体的には、上述した「<月> <日> に 合併問題説明会 を 新市民会館 で 行い ます」という入力文であるならば、これを「<月> <日> に <行事> を <施設> で 行い ます」という表記に変換して言語モデル作成用データメモリ8に格納する。以上が登録処理(登録ステップ)である。
このあと、未知語クラス推定部5は、現在の文番号rとステップST220で抽出された文例の個数Rとの値を比較して、r=Rであれば処理を終了し、r<Rであれば、ステップST270の処理に移行する(ステップST260)。
ステップST270では、未知語クラス推定部5は、現在の文番号rに1を加えてステップST240の処理に戻り、ステップST220で抽出された全ての文例についてステップST240からステップST270までの処理を繰り返す(ステップST270)。
次に、言語モデル作成部9は、既知語クラス辞書4、未知語推定クラス辞書7及び言語モデル作成用データメモリ8に格納されているデータを入力として統計モデルであるクラスn−gram言語モデルを作成する(言語モデル作成ステップ)。n−gramのnは、例えばn=2、すなわちバイグラムモデルとする。この場合、言語モデルは2単語の連鎖確率となる。
単語列がw1,w2,・・・,wi−1,wi,・・・,wNであるとき、単語wiの出現確率p(wi|wi−1)の算出方法は、単語wiがクラスに属するか否かで異なる。そこで、言語モデル作成部9は、既知語クラス辞書4及び未知語推定クラス辞書7に格納されているデータを用いて、言語モデル作成用データメモリ8から読み出した出現確率の算出対象の単語wiがクラスに属するか否かを判定する。
このとき、出現確率の算出対象の単語wiがクラスに属さない場合、言語モデル作成部9は、下記式(5)に従ってその出現確率を算出する。
p(wi|wi−1)=N(wi−1,wi)
/ΣkN(wi−1,wk)・・・(5)
ここで、N(wi−1,wi)は、言語モデル作成用データメモリ8中に含まれるデータの単語連鎖{wi−1,wi}の出現数である。
一方、クラスに属する場合、言語モデル作成部9は、属するクラスをCxとして下記式(6)に従って単語wiの出現確率を算出する。
p(wi|wi−1)=p(wi|Cx)*p(Cx|wi−1)・・・(6)
ここで、p(wi|Cx)=N(wi)/N(Cx) ・・・(7)
p(Cx|wi−1)=N(wi−1,Cx)
/ΣkN(wi−1,wk) ・・・(8)
N(wi)は、言語モデル作成用データメモリ8に格納されている学習データ中に単語wiが出現する個数を示している。また、N(Cx)は言語モデル作成用データメモリに格納される学習データ中にクラス語Cxが出現する個数であり、N(wi−1,Cx)は言語モデル作成用データメモリに格納される学習データに含まれる単語とクラス語の連鎖{wi−1,Cx}の出現数である。
なお、上記式(8)では、単語wiがクラスCxから出現する確率を求めるが、学習データ数が十分でない場合には確率の推定精度が低下するという問題がある。そこで、本実施の形態では、下記式(9)に示すように、クラスに属する単語について当該クラスから出現する確率を均等とみなすことにする。
p(wi|Cx)=1/Z(Cx) ・・・(9)
ここで、Z(Cx)はクラスCxに属する単語の種類数である。
既知語クラス辞書4及び未知語推定クラス辞書7に格納されているデータを参照して、上記式(9)の値を算出する。即ち、Cxを<月>とすると、クラス<月>に属する単語の種類数Z(Cx)を既知語クラス辞書4及び未知語推定クラス辞書7に格納されているデータを数え上げることによって求める。
例えば、<月>というクラスに属する単語が「1月」から「12月」までの12個とし、出現確率の算出対象の単語wiを「1月」として、「1月」のクラスCxが<月>であることから、単語wiである「1月」の出現確率は下記式(10)のようになる。
p(wi|Cx)=1/12 ・・・(10)
上述した出現確率の算出処理により、言語モデル計算部9は、言語モデル作成用データメモリ8に含まれる全ての2単語連鎖に対してp(wi|wi−1)を計算し、計算結果を言語モデル、つまり音声認識における単語系列の出現確率の推定値を与える電子データとして出力する。
以上のように、実施の形態1によれば、入力文を形態素解析して単語毎に分割し、分割した入力文の単語のうち、単語クラスに分類する単語とその単語クラスを格納する既知語クラス辞書4から読み出した単語に一致するものにその単語クラスを付与し、この入力文とクラス推定用文例辞書6に格納されるマッチング対象文例とのパターンマッチング処理により、マッチング対象文例中のクラス語と入力文中の未知語とがマッチするか否かを判定し、マッチすると判定したクラス語の単語クラスをこの未知語の単語クラスとして推定すると共に、マッチすると判定したクラス語で未知語を置き換えた入力文を言語モデル作成用の文例である学習データとして言語モデル作成用データメモリ8に登録し、この学習データに含まれる単語列の出現確率を算出して、算出結果を言語モデルとして出力するので、入力文に未知語が存在する場合であってもクラス推定文例辞書6中のマッチング対象文例とのパターンマッチングで未知語にマッチするクラス語を判定することから、エンドユーザに言語モデルに関する専門知識を要求することなく、新規登録文に含まれる未知語に対して適切にクラスを推定してクラス言語モデルを作成することができる。
これにより、入力文に含まれる未知語についての単語連鎖に加えて、言語モデル作成用データメモリ8中の文例のうち未知語に付与したクラスを含む文例の単語連鎖も、当該未知語のバイグラム出力確率に反映させることができる。従って、少ない文例で効率的に言語モデルを作成することができる。
また、マッチング対象文例を複数個抽出した場合には、複数種類のクラス推定結果が得られることから、正しいクラスが含まれる確率が高くなる。これによっても、より効率的な言語モデル作成を期待することができる。
実施の形態2.
図12は、この発明の実施の形態2による言語モデル作成装置の構成を示すブロック図であり、図1と同一若しくは相当する構成要素には同一符号を付している。本実施の形態2による言語モデル作成装置は、上記実施の形態1の構成に加え、クラス推定保留データメモリ(クラス推定保留データ記憶部)10を含んで構成される。クラス推定保留データメモリ10は、クラスを推定できなかった未知語を格納する。
本実施の形態2による未知語クラス推定部5は、最初にクラスを推定できなかった未知語をクラス推定保留データメモリ10に格納し、未知語を含まない入力文によってクラス推定保留データメモリ10に格納されている文の未知語のクラスを推定する。本実施の形態2による言語モデル作成部9は、既知語クラス辞書4、クラス推定用文例辞書6、未知語推定クラス辞書7、言語モデル作成用データメモリ8及びクラス推定保留データメモリ10に格納されているデータに基づいて統計モデルであるクラスn−gram言語モデルを作成し出力する。
上述した、文例入力部1、形態素解析部2、既知語クラス付与部3、未知語クラス推定部5及び言語モデル作成部9は、例えば汎用コンピュータ等を用いて本発明に従う言語モデル作成プログラムを実行させることで具現化できる。もう少し詳細に説明すると、本発明に従う言語モデル作成プログラムを、コンピュータに読み込ませて、その動作を制御することにより、コンピュータ上に図12に示す形態素解析部2、既知語クラス付与部3、未知語クラス推定部5及び言語モデル作成部9を実現することができる。
また、既知語クラス辞書4、クラス推定用文例辞書6、未知語推定クラス辞書7、言語モデル作成用データメモリ8及びクラス推定保留データメモリ10は、例えば上記コンピュータの記憶装置上に構成することができる。なお、以下の説明において、本発明の言語モデル作成装置を具現化するコンピュータ自体の構成及びその基本的な機能については、当業者が当該分野の技術常識に基づいて容易に認識できるものであり、本発明の本質に直接関わるものでないので詳細な記載を省略する。
次に動作について説明する。
先ず、上記実施の形態1と同様にして、ユーザが、文例入力部1(例えば、キーボードなど)を用いて、登録文を電子データとして形態素解析部2に入力する。形態素解析部2では、文例入力部1を介して入力された入力文を形態素解析し、単語単位に分割する。この形態素解析は、上記実施の形態1と同様に、例えば参考文献1に示す手法を用いる。
また、形態素解析部2は、上記形態素解析と共に未知語検出処理を実行する。この未知語検出処理により、入力文中の未知語に対して未知語フラグが付与され、さらに接続詞や接続助詞に対しては接続詞フラグが付与されて既知語クラス付与部3に出力される。
既知語クラス付与部3では、形態素解析部2から入力した各単語の電子データのうち、未知語フラグが設定されているか否かにより未知語以外の単語である既知語を抽出する。そして、既知語クラス付与部3は、未知語フラグの有無に基づいて抽出した既知語のうち、既知語クラス辞書4に存在する単語のクラスに対応するものを検出し、検出結果のクラスを既知語に付与する。このように、クラスが付与された既知語を含む入力文の電子データは、既知語クラス付与部3から未知語クラス推定部5に出力される。
本実施の形態2による未知語クラス推定部5は、上記実施の形態1とは異なりクラス推定保留データメモリ10を利用したクラス推定処理を実行する。
図13は、実施の形態2の未知語クラス推定部の動作を示すフローチャートであり、この図に沿って動作の詳細を説明する。
先ず、未知語クラス推定部5は、既知語クラス付与部3の出力データを入力すると、このデータのうち、未知語フラグがセットされた単語があるか否か調べる(ステップST300)。このとき、未知語フラグがセットされた単語があると、ステップST310の処理に移行し、未知語フラグがセットされた単語がない場合、ステップST350の処理に移行する。
ステップST310において、未知語クラス推定部5は、上記実施の形態1と同様にして、クラス推定用文例辞書6に格納されている各文例とのパターンマッチングに基づく文例選択処理を実行する。
続いて、未知語クラス推定部5は、上記実施の形態1と同様にマッチングスコアを予め定めた閾値THS1と比較して、閾値THS1以上の文例を選択する(ステップST320)。なお、閾値THS1は、クラス推定をすべきマッチングスコアの許容下限値を規定する値であり、クラス推定用文例辞書6に格納されている各文例に対して最適なクラス推定を行える下限値を予め求めておく。
このとき、1個以上の文例が選択された場合、未知語クラス推定部5は、上記実施の形態1と同様の処理によって未知語推定クラス辞書7の登録処理及び言語モデル作成用データメモリ8への登録処理を行う(ステップST330)。これにより、未知語クラス推定部5における処理を終了する。
一方、マッチングスコアが閾値THS1以上の文例が選択されなかった場合、未知語クラス推定部5は、入力文の「*(j)」と表記していた未知語部分を元の単語表記に戻し、言語モデル作成用データメモリ8に格納せずに、クラス推定保留データメモリ10に格納して登録処理を終了する(ステップST340)。このクラス推定保留データメモリ10に格納するという動作が上記実施の形態1との違いの一つである。
ステップST300で、入力文中に未知語フラグがセットされた単語がない場合、未知語クラス推定部5は、クラス推定保留データメモリ10に格納されているデータがあるか否か調べる(ステップST350)。このとき、クラス推定保留データメモリ10にデータがある場合、ステップST360の処理に移行し、クラス推定保留データメモリ10にデータがない場合、ステップST410の処理に移行する。
ステップST360において、未知語クラス推定部5は、クラス推定保留データメモリ10に格納されている全ての文例(以降、クラス推定保留文例と称する)に、例えば格納順で番号r(r=1〜Q)を付与し、番号r=1にセットする(ステップST360)。なお、Qは、クラス推定保留データメモリ10に格納されている文例の個数である。
次に、未知語クラス推定部5は、文番号rのクラス推定保留文例と入力文との間でパターンマッチング処理を実行してマッチングスコアS(r)を算出する。このパターンマッチングの方法は、上記実施の形態1で説明した方法と基本的に同一である。
詳細に説明すると、未知語クラス推定部5が、上記実施の形態1と同様に、文番号rのクラス推定保留文例中の未知語を「*(j)」に置き換え、クラス推定保留文例中の未知語「*(j)」が、「マッチした文字数n2が1以上であり、且つ脱落文字数ndが予め定めた閾値TH_d以下、且つ挿入文字数niが予め定めた閾値TH_i以下」というスコア付与条件を満たさない場合、マッチングスコアS(r)=0とする。
なお、閾値TH_d及び閾値TH_iは、それぞれ脱落文字数nd及び挿入文字数niについてマッチングスコアを付与すべき許容上限値を規定する値であり、最適なマッチング結果を与える上限値を予め求めておく。
一方、上記スコア付与条件を満たす場合、未知語クラス推定部5は、マッチングスコアS(r)を上記式(4)に従って算出する。このあと、未知語クラス推定部5は、上記処理を施したクラス推定保留文例の番号rがQであるか否かを判定し、クラス推定保留データメモリ10に格納されている全てのクラス推定保留文例に対してマッチングスコアS(r)の算出処理を施したかどうかを確認する。
このとき、番号rがQであり、全てのマッチング対象文例に対して処理が行われていれば、マッチングスコア算出処理を終了する。一方、番号rがQでなければ、未知語クラス推定部5は、クラス推定保留データメモリ10から新たなクラス推定保留文例を読み出し、その読み出し番号rに1を加え、当該クラス推定保留文例に対してマッチングスコア算出処理を施す。
この処理を、クラス推定保留データメモリ10に格納されている全てのクラス推定保留文例に対して繰り返して、それぞれのマッチングスコアS(r)(但し、r=1〜Q)を求める。
次に、未知語クラス推定部5は、上述の処理にて得たマッチングスコアS(r),(r=1〜Q)を予め定めた閾値THS2と比較し、マッチングスコアS(r)が閾値THS2以上の文例を選択する。なお、閾値THS2は、クラス推定をすべきマッチングスコアの許容下限値を規定する値であり、クラス推定保留文例に対して最適なクラス推定を行える下限値を予め求めておく。
このとき、マッチングスコアS(r)が閾値THS2以上であれば、未知語クラス推定部5は、クラス推定保留文例が入力文とマッチしたと判定して、ステップST380の処理に移行する。また、マッチングスコアS(r)が閾値THS2未満の場合、ステップST390の処理に移行する。
ステップST380において、未知語クラス推定部5は、クラス推定保留文例の未知語部分を入力文にマッチした既知語のクラスで置き換えた電子データを言語モデル作成用データメモリ8に格納する。また、未知語推定クラス辞書7に未知語の表記と共に推定されたクラスを格納する。さらに、上述のクラス推定を行ったクラス推定保留文例をクラス推定保留データメモリ10から消去する。このようにクラス推定保留データメモリ10に格納されていたデータにクラスを付与し、言語モデル作成用データメモリ8と未知語クラス辞書7に、前記クラス推定保留データメモリ10に格納されていたデータを格納することにより、前記データ中のクラスを付与された未知語部分は、実施の形態1と同様に上記式(9)の確率値計算時に前記データが利用され、クラス言語モデルに反映されるようになる。
例えば、文番号rがクラス推定保留文例が「新市民会館に避難して下さい」で「新市民会館」に未知語フラグを付与している。また、入力文が「○○小学校に避難して下さい」であって、「○○小学校」が図2に示す既知語クラス辞書4に登録されており、<施設>というクラスが付与されている場合を考える。このとき、上述したクラス推定保留文例と上記入力文はマッチするので、「新市民会館」のクラスを<施設>と推定する。
ステップST390において、未知語クラス推定部5は、現在の文番号rとクラス推定保留データメモリ10に格納されている文例の個数Qの値を比較して、クラス推定保留データメモリ10に格納される全てのクラス推定保留文例にステップST370からステップST380までの処理を施したか否かを判定する。このとき、r=Qであれば、ステップST410の処理に移行する。一方、r<Qであれば、ステップST400の処理に移行する。
ステップST400で、未知語クラス推定部5は、現在の文番号rに1を加えてステップST370の処理に戻り、クラス推定保留データメモリ10に格納される全てのクラス推定保留文例にステップST370からステップST380までの処理を繰り返す。
ステップST410において、未知語クラス推定部5は、クラス推定保留文例とパターンマッチングを行った入力文を言語モデル作成用データメモリ8に格納する。以上で未知語クラス推定部5における処理が終了する。
次に、言語モデル作成部9は、上記実施の形態1と同様の動作をしてクラスn−gram言語モデルを作成する。但し、クラス推定保留データメモリ10にデータが格納されている場合には、そのデータも入力とする。この場合にはクラス推定保留データメモリ10のデータに含まれる未知語部分はクラス語としてみなされないが、通常の単語として言語モデルが作成される。
以上のように、実施の形態2では、クラス推定用文例辞書6に格納されている各文例とのパターンマッチングに基づく文例選択処理によっても入力文の未知語のクラスが推定できない場合、当該未知語を含む入力文をクラス推定保留文例としてクラス推定保留データメモリ10に格納しておき、未知語を除く入力文中の既知語とクラス推定保留文例の未知語とのマッチするか否かによって当該未知語に付与すべきクラスを推定するので、未知語に対してクラスが付与される割合が向上し、さらに効率的に言語モデルを作成できる。
実施の形態3.
図14は、この発明の実施の形態3による言語モデル作成装置の構成を示すブロック図であり、図1と同一若しくは相当する構成要素には同一符号を付している。本実施の形態3による言語モデル作成装置は、上記実施の形態1の構成に加え、推定結果確認部11を含んで構成される。
推定結果確認部11は、ユーザと実施の形態3による言語モデル作成装置との間で未知語クラス推定部5により推定された未知語のクラスの確認やクラス候補の受け付けのために使用する構成部である。例えば、デイスプレイ上にクラス推定結果を提示し、マウスなどで確認結果やクラス候補を入力することができるクラス推定結果確認用GUI(Grafical User Interface)を提供する。
実施の形態3による未知語クラス推定部5は、推定したクラスを推定結果確認部11を介してユーザに確認させたり、ユーザから受け付けたクラス候補を未知語に付与する。本実施の形態3の言語モデル作成用データメモリ8には、推定結果確認部11を介して確認や設定が行われたクラスを用いた言語モデルを作成するための学習データが格納される。
上述した、文例入力部1、形態素解析部2、既知語クラス付与部3、未知語クラス推定部5、言語モデル作成部9及び推定結果確認部11は、例えば汎用コンピュータ等を用いて本発明に従う言語モデル作成プログラムを実行させることで具現化できる。もう少し詳細に説明すると、本発明に従う言語モデル作成プログラムを、コンピュータに読み込ませて、その動作を制御することにより、コンピュータ上に図14に示す形態素解析部2、既知語クラス付与部3、未知語クラス推定部5、言語モデル作成部9及び推定結果確認部11を実現することができる。
また、既知語クラス辞書4、クラス推定用文例辞書6、未知語推定クラス辞書7、言語モデル作成用データメモリ8及びクラス推定保留データメモリ10は、例えば上記コンピュータの記憶装置上に構成することができる。なお、以下の説明において、本発明の言語モデル作成装置を具現化するコンピュータ自体の構成及びその基本的な機能については、当業者が当該分野の技術常識に基づいて容易に認識できるものであり、本発明の本質に直接関わるものでないので詳細な記載を省略する。
次に動作について説明する。
先ず、上記実施の形態1と同様にして、ユーザが、文例入力部1(例えば、キーボードなど)を用いて、登録文を電子データとして形態素解析部2に入力する。形態素解析部2では、文例入力部1を介して入力された入力文を形態素解析し、単語単位に分割する。この形態素解析は、上記実施の形態1と同様に、例えば参考文献1に示す手法を用いる。
また、形態素解析部2は、上記形態素解析と共に未知語検出処理を実行する。この未知語検出処理により、入力文中の未知語に対して未知語フラグが付与され、さらに接続詞や接続助詞に対しては接続詞フラグが付与されて既知語クラス付与部3に出力される。
既知語クラス付与部3では、形態素解析部2から入力した各単語の電子データのうち、未知語フラグが設定されているか否かにより未知語以外の単語である既知語を抽出する。そして、既知語クラス付与部3は、未知語フラグの有無に基づいて抽出した既知語のうち、既知語クラス辞書4に存在する単語のクラスに対応するものを検出し、検出結果のクラスを既知語に付与する。このように、クラスが付与された既知語を含む入力文の電子データは、既知語クラス付与部3から未知語クラス推定部5に出力される。
未知語クラス推定部5では、既知語クラス付与部3の出力データを入力すると、このデータのうち、未知語フラグが付与された単語を記号「*(j)」に置き換える。記号「*(j)」は、通常の単語とはマッチせず、クラス語に対しては全クラスにマッチする未知語及びクラス語を表す電子データである。なお、jは、入力文の文頭から未知語が出現した順番に1,2,・・・の順で番号を付与したものである。
次に、未知語クラス推定部5は、上述の処理を施した入力文の電子データとクラス推定用文例辞書6に格納されている各文例の電子データとのパターンマッチング処理を行う。例えば、上記実施の形態1と同様にDPマッチングを用いる。
これにより、未知語クラス推定部5が、上記実施の形態1と同様にして、クラス推定用文例辞書6に格納されているパターンマッチングの対象となるマッチング対象文例についてのマッチングスコアS(r)を算出する。
次に、未知語クラス推定部5は、上述の処理にて得たマッチングスコアS(r),(r=1〜N)を予め定めた閾値THSと比較し、マッチングスコアS(r)が閾値THS以上の文例を選択する。なお、閾値THSは、クラス推定をすべきマッチングスコアの許容下限値を規定する値であり、最適なクラス推定を行える下限値を予め求めておく。Nは、クラス推定用文例辞書6に格納されているマッチング対象文例数を示している。
このとき、未知語クラス推定部5は、マッチングスコアS(r)が閾値THS以上の文例が選択されなかった場合、入力文の「*(j)」と表記していた未知語部分を元の単語表記に戻して言語モデル作成用データメモリ8に格納して登録処理を終了する。
1個以上の文例が選択された場合、未知語クラス推定部5は、上述のようにしてマッチングスコアS(r)に基づき選択した文例のうちマッチングスコアS(r)が最大の文例1個又は上位のR(但し、Rは1以上N以下の自然数)個以上の文例を抽出する。ここで、Rは抽出された文例数である。
このあと、未知語クラス推定部5は、上述のようにしてマッチングスコアS(r)に基づき選択した全ての文例に番号r=1〜Rについて、入力文中の未知語「*(j)」が、r番目の文例におけるクラス語部分とマッチしているか否かを調べ、マッチしている場合はマッチしたクラス語のクラスを当該未知語のクラスであると推定する。
次に、未知語クラス推定部5は、上述のようにして推定された1個又は複数種類のクラスを推定結果確認部11に出力する。推定結果確認部11では、その構成要素であるディスプレイに未知語クラス推定部5からのクラス推定結果を表示してユーザに提示する。ユーザは、このデイスプレイ上で提供されるクラス推定結果の確認用GUIを介して、表示されたクラス候補をマウスでクリックすることにより未知語のクラスとして選択することができる。
このとき、正しいクラスがないことを示す「候補なし」も選択できるように構成する。つまり、ユーザは、ディスプレイにクラス候補が表示されると、マウスでクリックすることによって正しいクラス候補、あるいは「候補なし」を選択する。
推定結果確認部11は、ユーザがクラス候補を選択すると、この選択結果を該当する単語の表記と共に未知語推定クラス辞書7に格納する。また、入力文の未知語部分を、選択結果のクラス語に置き換えて、言語モデル作成用データメモリ8に格納する。ユーザが「候補なし」を選択した場合には、入力文の未知語部分を元の単語表記に戻して言語モデル作成用データ8に格納する。
このあと、言語モデル作成部9は、上記実施の形態1と同様の動作をして、音声認識における単語系列の出現確率の推定値を与える電子データである、クラスn−gram言語モデルを算出して出力する。
以上のように、実施の形態3によれば、未知語クラス推定部5が推定したクラスを提示して、未知語に対する当該クラスの付与の可否に関する情報を受け付ける推定結果確認部11を設け、未知語クラス推定部5が、推定結果確認部11が受け付けた情報に基づいて未知語のクラスを推定するので、正確なクラスを付与することが可能となり、より効率的に言語モデルを作成することができる。
なお、上記実施の形態1から3ではそれぞれの構成を別個に説明したが、これらを組み合わせて、取り扱うタスクなどにより言語モデル作成手順を適宜切り替えるように構成しても良い。
この発明の実施の形態1による言語モデル作成装置の構成を示すブロック図である。 既知語クラス辞書の一例を示す図である。 言語モデル作成用データメモリの一例である。 クラス推定用文例辞書の内容の一例を示す図である。 形態素解析部の出力内容の一例を示す図である。 既知語クラス付与部の出力内容の一例を示す図である。 DPマッチングにおけるマッチング対象文と入力文の対応関係を示すグラフである。 マッチング対象文と入力文とのパターンマッチング手順を示すフローチャートである。 最適DPパスを得たマッチング対象文例Aと入力文Bとの対応関係を示すグラフである。 未知語クラス推定部による文例選択処理を示すフローチャートである。 未知語推定クラス辞書の内容の一例を示す図である。 この発明の実施の形態2による言語モデル作成装置の構成を示すブロック図である。 実施の形態2による未知語クラス推定部の動作を示すフローチャートである。 この発明の実施の形態3による言語モデル作成装置の構成を示すブロック図である。
符号の説明
1 文例入力部、2 形態素解析部、3 既知語クラス付与部、4 既知語クラス辞書(既知語クラス記憶部)、5 未知語クラス推定部、6 クラス推定用文例辞書(クラス推定用文例記憶部)、7 未知語推定クラス辞書、8 言語モデル作成用データメモリ(言語モデル作成用データ記憶部)、9 言語モデル作成部、10 クラス推定保留データメモリ(クラス推定保留データ記憶部)、11 推定結果確認部。

Claims (10)

  1. 入力文を形態素解析して単語毎に分割する形態素解析部と、
    言語モデル作成用の文例を格納する言語モデル作成用データ記憶部と、
    単語クラスに分類する単語とその単語クラスを格納する既知語クラス記憶部と、
    上記形態素解析部により分割された上記入力文の単語のうち、上記既知語クラス記憶部に格納される単語に一致するものにその単語クラスを付与する既知語クラス付与部と、
    上記言語モデル作成用の文例のうち、単語をこれに付与した単語クラスを示すクラス語で置き換えた文例をマッチング対象文例として格納するクラス推定用文例記憶部と、
    上記既知語クラス付与部により単語クラスが付与された単語を含む上記入力文と上記マッチング対象文例とのパターンマッチング処理により、上記入力文中の未知語と上記マッチング対象文例中のクラス語とがマッチするか否かを判定し、マッチすると判定したクラス語の単語クラスをこの未知語の単語クラスとして推定すると共に、上記マッチすると判定したクラス語で上記未知語を置き換えた上記入力文を上記言語モデル作成用の文例として上記言語モデル作成用データ記憶部に登録する未知語クラス推定部と、
    上記言語モデル作成用の文例に含まれる単語列の出現確率を算出して言語モデルとして出力する言語モデル作成部とを備えた言語モデル作成装置。
  2. 未知語クラス推定部は、パターンマッチング処理として入力文とマッチング対象文例との各文字列上でのDPマッチング処理を実行することを特徴とする請求項1記載の言語モデル作成装置。
  3. 未知語クラス推定部は、DPマッチング処理の終了後に入力文における文字又は単語の挿入文字数と脱落文字数をカウントし、上記挿入文字数又は上記脱落文字数が許容値を超える場合、パターンマッチングのマッチングスコアを0とすることを特徴とする請求項2記載の言語モデル作成装置。
  4. 未知語クラス推定部は、入力文の文字列で最初に出現する未知語より前方の文字を挿入文字数としてカウントしないことを特徴とする請求項3記載の言語モデル作成装置。
  5. 未知語クラス推定部は、入力文の文字列で最後に出現する未知語より後方に接続詞又は接続助詞が存在する場合、この接続詞又は接続助詞を含めて後方に存在する文字を挿入文字数及び脱落文字数としてカウントしないことを特徴とする請求項4記載の言語モデル作成装置。
  6. 未知語クラス推定部は、クラス推定用文例記憶部の複数のマッチング対象文例中の各クラス語に未知語がマッチするか否かを判定して当該未知語に対する1個以上の単語クラス候補を抽出し、当該単語クラス候補から上記未知語に付与すべき単語クラスを推定することを特徴とする請求項1記載の言語モデル作成装置。
  7. クラス推定用文例記憶部に格納される文例中のクラス語にマッチしない未知語を含む入力文をクラス推定保留文例として格納するクラス推定保留データ記憶部を備え、
    未知語クラス推定部は、既知語クラス付与部により単語クラスが付与された単語を含む入力文と上記クラス推定保留文例とのパターンマッチング処理により、上記既知語クラス付与部により単語クラスが付与された単語と上記クラス推定保留文例中の未知語とがマッチするか否かを判定し、マッチすると判定した単語の単語クラスをこの未知語の単語クラスとして推定することを特徴とする請求項1記載の言語モデル作成装置。
  8. 未知語クラス推定部が推定した単語クラスを提示して、未知語に対する上記単語クラスの付与の可否に関する情報を受け付ける推定結果確認部を備え、
    上記未知語クラス推定部は、上記推定結果確認部が受け付けた情報に基づいて上記未知語の単語クラスを推定することを特徴とする請求項1記載の言語モデル作成装置。
  9. 形態素解析部、既知語クラス付与部、未知語クラス推定部、単語クラスに分類する単語とその単語クラスを格納する既知語クラス記憶部、言語モデル作成用の文例を格納する言語モデル作成用データ記憶部及び言語モデル作成部を備えた言語モデル作成装置の言語モデル作成方法において、
    上記形態素解析部が、入力文を形態素解析して単語毎に分割する形態素解析ステップと、
    上記既知語クラス付与部が、上記形態素解析ステップで分割された上記入力文の単語のうち、上記既知語クラス記憶部から読み出した単語に一致するものにその単語クラスを付与する既知語クラス付与ステップと、
    上記未知語クラス推定部が、言語モデル作成用の文例のうち、単語をこれに付与した単語クラスを示すクラス語で置き換えた文例をマッチング対象文例と上記既知語クラス付与ステップで単語クラスが付与された単語を含む上記入力文とのパターンマッチング処理により、上記マッチング対象文例中のクラス語と上記入力文中の未知語とがマッチするか否かを判定し、マッチすると判定したクラス語の単語クラスをこの未知語の単語クラスとして推定するクラス推定ステップと、
    上記未知語クラス推定部が、上記クラス推定ステップでマッチすると判定されたクラス語で上記未知語を置き換えた入力文を上記言語モデル作成用の文例として上記言語モデル作成用データ記憶部に登録する登録ステップと、
    上記言語モデル作成部が、上記言語モデル作成用データ記憶部から読み出した言語モデル作成用の文例に含まれる単語列の出現確率を算出して言語モデルとして出力する言語モデル作成ステップとを備えた言語モデル作成方法。
  10. 入力文を形態素解析して単語毎に分割する形態素解析部、
    上記形態素解析部により分割された上記入力文の単語のうち、単語クラスに分類する単語とその単語クラスを格納する既知語クラス記憶部から読み出した単語に一致するものにその単語クラスを付与する既知語クラス付与部、
    言語モデル作成用の文例のうち、単語をこれに付与した単語クラスを示すクラス語で置き換えたマッチング対象文例と上記既知語クラス付与部により単語クラスが付与された単語を含む上記入力文とのパターンマッチング処理により、上記マッチング対象文例中のクラス語と上記入力文中の未知語とがマッチするか否かを判定し、マッチすると判定したクラス語の単語クラスをこの未知語の単語クラスとして推定すると共に、上記マッチすると判定したクラス語で上記未知語を置き換えた入力文を上記言語モデル作成用の文例として言語モデル作成用データ記憶部に登録する未知語クラス推定部、
    上記言語モデル作成用データ記憶部から読み出した言語モデル作成用の文例に含まれる単語列の出現確率を算出して言語モデルとして出力する言語モデル作成部としてコンピュータを機能させるためのプログラム。
JP2004239764A 2004-08-19 2004-08-19 言語モデル作成装置及び方法並びにプログラム Expired - Fee Related JP4245530B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004239764A JP4245530B2 (ja) 2004-08-19 2004-08-19 言語モデル作成装置及び方法並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004239764A JP4245530B2 (ja) 2004-08-19 2004-08-19 言語モデル作成装置及び方法並びにプログラム

Publications (2)

Publication Number Publication Date
JP2006059105A JP2006059105A (ja) 2006-03-02
JP4245530B2 true JP4245530B2 (ja) 2009-03-25

Family

ID=36106529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004239764A Expired - Fee Related JP4245530B2 (ja) 2004-08-19 2004-08-19 言語モデル作成装置及び方法並びにプログラム

Country Status (1)

Country Link
JP (1) JP4245530B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446956A (zh) * 2015-12-02 2016-03-30 北京信息科技大学 一种汉语概念复合块标注库规范化处理方法
CN108509409A (zh) * 2017-02-27 2018-09-07 芋头科技(杭州)有限公司 一种自动生成语义相近句子样本的方法
US10410624B2 (en) 2016-03-17 2019-09-10 Kabushiki Kaisha Toshiba Training apparatus, training method, and computer program product
US10964313B2 (en) 2016-03-17 2021-03-30 Kabushiki Kaisha Toshiba Word score calculation device, word score calculation method, and computer program product

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5137588B2 (ja) * 2008-01-09 2013-02-06 三菱電機株式会社 言語モデル生成装置及び音声認識装置
JP4897737B2 (ja) * 2008-05-12 2012-03-14 日本電信電話株式会社 単語追加装置、単語追加方法、そのプログラム
DE112010005226T5 (de) * 2010-02-05 2012-11-08 Mitsubishi Electric Corporation Erkennungswörterbuch-Erzeugungsvorrichtung und Spracherkennungsvorrichtung
JP5480844B2 (ja) * 2011-05-16 2014-04-23 日本電信電話株式会社 単語追加装置、単語追加方法及びそのプログラム
JP6849082B2 (ja) * 2017-09-11 2021-03-24 株式会社島津製作所 試料カテゴリーの特定装置、分析システム、及び分析ネットワークシステム
WO2021250784A1 (ja) * 2020-06-09 2021-12-16 日本電気株式会社 辞書生成システム、学習データ生成システム、音声認識システム、辞書生成方法およびコンピュータ可読媒体

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4048473B2 (ja) * 2002-03-15 2008-02-20 ソニー株式会社 音声処理装置および音声処理方法、並びにプログラムおよび記録媒体

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446956A (zh) * 2015-12-02 2016-03-30 北京信息科技大学 一种汉语概念复合块标注库规范化处理方法
CN105446956B (zh) * 2015-12-02 2018-08-28 北京信息科技大学 一种汉语概念复合块标注库规范化处理方法
US10410624B2 (en) 2016-03-17 2019-09-10 Kabushiki Kaisha Toshiba Training apparatus, training method, and computer program product
US10964313B2 (en) 2016-03-17 2021-03-30 Kabushiki Kaisha Toshiba Word score calculation device, word score calculation method, and computer program product
CN108509409A (zh) * 2017-02-27 2018-09-07 芋头科技(杭州)有限公司 一种自动生成语义相近句子样本的方法

Also Published As

Publication number Publication date
JP2006059105A (ja) 2006-03-02

Similar Documents

Publication Publication Date Title
CN108847241B (zh) 将会议语音识别为文本的方法、电子设备及存储介质
CN110164435B (zh) 语音识别方法、装置、设备及计算机可读存储介质
CN110738997B (zh) 一种信息修正方法、装置、电子设备及存储介质
CN108304375A (zh) 一种信息识别方法及其设备、存储介质、终端
US6507816B2 (en) Method and apparatus for evaluating the accuracy of a speech recognition system
US20170103061A1 (en) Interaction apparatus and method
US20030144841A1 (en) Speech processing apparatus and method
US6763331B2 (en) Sentence recognition apparatus, sentence recognition method, program, and medium
US11531693B2 (en) Information processing apparatus, method and non-transitory computer readable medium
JP4245530B2 (ja) 言語モデル作成装置及び方法並びにプログラム
CN109299471B (zh) 一种文本匹配的方法、装置及终端
KR20080021692A (ko) 언어 모델을 생성하기 위한 방법, 가나-간지 변환 방법 및그 장치
CN109977398A (zh) 一种特定领域的语音识别文本纠错方法
US20110106814A1 (en) Search device, search index creating device, and search system
CN108710653A (zh) 一种绘本朗读点播方法、装置及系统
Sperber et al. Optimizing computer-assisted transcription quality with iterative user interfaces
US7103533B2 (en) Method for preserving contextual accuracy in an extendible speech recognition language model
CN102937834B (zh) 混合型输入的方法、客户端及系统
JP4089861B2 (ja) 音声認識文章入力装置
JP2022511139A (ja) 情報処理方法、装置および記憶媒体
Granell et al. An interactive approach with off-line and on-line handwritten text recognition combination for transcribing historical documents
JP4220151B2 (ja) 音声対話装置
Liang et al. An efficient error correction interface for speech recognition on mobile touchscreen devices
KR102118322B1 (ko) 원문과 번역문 파일을 개별적으로 생성하는 문서 번역 서버 및 번역 방법
JP4083400B2 (ja) アクセント句境界決定装置、音声合成装置及び方法並びにプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070523

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080402

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081117

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: 20081209

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: 20090106

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120116

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130116

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130116

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees