説明

コーパス変換装置、コーパス変換方法、およびプログラム

【課題】大規模な書き言葉コーパスを相槌を含む大規模なコーパスに変換すること。
【解決手段】コーパス変換装置100は、相槌を含む学習コーパス10の文を取得する学習コーパス取得部110と、コーパス取得部110で取得した文に基づいて、文長毎に、文中の各位置の相槌の出現確率を算出する出現位置確率算出部120と、算出した出現確率を文長および文中の位置に対応つけて記憶する出現位置確率記憶部130と、学習コーパス取得部110で取得した文に基づいて、相槌の種別毎に、文中の各位置の相槌の出現確率を算出する出現種別確率算出部140と、算出した出現確率を相槌の種別および文中の位置に対応つけて記憶する出現種別確率記憶部150と、出現位置確率記憶部130と出現種別確率記憶部150とに基づいて、大規模コーパス30の文に相槌を挿入し、相槌を含む大規模なコーパスを構築する変換手段と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声情報処理技術に関し、特に、書き言葉コーパスを対話特有の相槌を含むコーパスに変換するコーパス変換装置、コーパス変換方法、およびプログラムに関する。
【背景技術】
【0002】
従来、音声情報処理のための言語モデルの作成には、一般に入手が容易な新聞記事等の大規模の書き言葉コーパスが用いられていた。ところが、このような書き言葉コーパスから作成された言語モデルを用いた音声情報処理では、対話特有の表現であるフィラーや相槌に対応することができないという問題点があった。
【0003】
そこで、対話を収集し、収集した対話からコーパスを構築することが考えられる。しかしながら、音声情報処理において、言語モデルの生成に用いたコーパスにない話題には対応できないため、さまざまな話題について対話を収集しなければならず、また、収集した対話の音声からテキストデータを書き起こすことは容易ではないという問題点があった。さらには、音声情報処理の精度を上げるために、作成するコーパスは大規模でなければならないという問題点もあった。
【0004】
そこで、対話特有の表現の1つであるフィラーに着目し、フィラーを考慮した言語モデルを構築する技術がある(非特許文献1)。具体的には、正確な話し言葉コーパスからフィラー予測モデルを作成し、次に、このモデルから与えられる確率に基づいて、フィラーを含むコーパスを構築する。この構築されたフィラーを挿入したコーパスを用いて、言語モデルを作成することにより、音声情報処理において、対話特有の表現であるフィラーに対応することができる。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】大田健吾、土屋雅稔、中川聖一、「フィラー予測モデルに基づく話し言葉言語モデルの構築」、情報処理学会論文誌Vol.50,No.2,2008、[http://www.slp.ics.tut.ac.jp/shiryou/extra_2008/2008−Paper−06.pdf]
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、対話特有の表現のもうひとつの相槌についても、非特許文献1に記載の技術を用いて、相槌表現を含むコーパスを作成することができる。しかしながら、相槌は、フィラーと違い、話し相手の発声に依存して発生するために、出現位置および相槌の種別に関する条件がフィラーに比べ単純である。そのため、相槌については、非特許文献1で用いている条件付き確率場(CRF)を用いて予測モデルを作成する必要がないという課題があった。また、条件付き確率場(CRF)を用いて予測モデルを作成するためには、大量の学習データが必要であるという課題もあった。
【0007】
そこで、本発明は、上述の課題に鑑みてなされたものであり、対話特有の表現である相槌を多く含む小規模なコーパスを用いて、大規模な書き言葉コーパスを対話特有の表現である相槌を含む大規模なコーパスを構築するコーパス変換装置、コーパス変換方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、上記の課題を解決するために、以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。
【0009】
(1) 本発明は、相槌を含むコーパスを用いて、大規模なコーパスを、相槌を含む大規模なコーパスに変換するコーパス変換装置であって、前記相槌を含むコーパスから文を取得するコーパス取得手段(例えば、図1の学習コーパス取得部110)と、前記コーパス取得手段で取得した各文における、文を構成する句のうち相槌以外の句の数である文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置それぞれの相槌の出現確率を算出する出現位置確率算出手段(例えば、図1の出現位置確率算出部120)と、前記出現位置確率算出手段で算出した出現確率を前記文長および前記文中の位置に対応つけた出現位置確率モデルを、記憶する出現位置確率記憶手段(例えば、図1の出現位置確率記憶部130)と、前記コーパス取得手段で取得した各文に含まれる相槌の種別と、当該各文の文中の相槌の位置とに基づいて、相槌の種別毎に、文中の位置それぞれの相槌の出現確率を算出する出現種別確率算出手段(例えば、図1の出現種別確率算出部140)と、前記出現種別確率算出手段で算出した出現確率を前記相槌の種別および前記文中の位置に対応つけた出現種別確率モデルを、記憶する出現種別確率記憶手段(例えば、図1の出現種別確率記憶部150)と、前記出現位置確率記憶手段の出現位置確率モデルと、前記出現種別確率記憶手段の出現種別確率モデルとに基づいて、前記大規模なコーパスの文に相槌を挿入し、前記大規模なコーパスの文を相槌を含む文に変換することにより、相槌を含む大規模なコーパスを構築する変換手段(例えば、図1の変換部160)と、を備えることを特徴とするコーパス変換装置を提案している。
【0010】
この発明によれば、コーパス取得手段は、相槌を含むコーパスから文を取得する。出現位置確率算出手段は、コーパス取得手段で取得した各文における、文を構成する句のうち相槌以外の句の数である文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置それぞれの相槌の出現確率を算出する。出現位置確率記憶手段は、出現位置確率算出手段で算出した出現確率を文長および文中の位置に対応つけた出現位置確率モデルを、記憶する。出現種別確率算出手段は、コーパス取得手段で取得した各文に含まれる相槌の種別と、各文の文中の相槌の位置とに基づいて、相槌の種別毎に、文中の位置それぞれの相槌の出現確率を算出する。出現種別確率記憶手段は、出現種別確率算出手段で算出した出現確率を相槌の種別および文中の位置に対応つけた出現種別確率モデルを、記憶する。変換手段は、出現位置確率記憶手段の出現位置確率モデルと、出現種別確率記憶手段の出現種別確率モデルとに基づいて、大規模なコーパスの文に相槌を挿入し、大規模なコーパスの文を相槌を含む文に変換することにより、相槌を含む大規模なコーパスを構築する。したがって、対話特有の表現である相槌を多く含むコーパスを用いて、大規模な書き言葉コーパスから対話特有の表現である相槌を含む大規模なコーパスを構築することができる。その結果、構築された対話特有の表現である相槌を含む大規模なコーパスを用いて作成された言語モデルにて、音声情報処理を行うことにより、音声情報処理において、対話特有の表現である相槌に対応することができる。
【0011】
(2) 本発明は、(1)のコーパス変換装置について、前記コーパス取得手段が、前記相槌を含むコーパスから1文ずつ取得し、前記出現位置確率算出手段が、前記コーパス取得手段が1文を取得すると、取得した1文の前記文長と前記文中の相槌の位置とを特定したのち、文長毎に文中の位置それぞれにおける相槌の出現回数および非出現回数を積算し、前記コーパス取得手段が前記相槌を含むコーパスの全文を取得し終わったことに応じて、積算結果から文長毎に文中の各位置における相槌の出現確率を算出し、前記出現種別確率算出手段が、前記コーパス取得手段が1文を取得すると、取得した1文の前記相槌の種別と前記文中の相槌の位置とを特定したのち、相槌の種別毎に、文中の位置それぞれの相槌の出現回数を積算し、前記コーパス取得手段が前記相槌を含むコーパスの全文を取得し終わったことに応じて、積算結果から文長毎に文中の各位置における相槌の出現確率を算出することを特徴とするコーパス変換装置を提案している。
【0012】
この発明によれば、コーパス取得手段が、相槌を含むコーパスから1文ずつ取得する。出現位置確率算出手段が、コーパス取得手段が1文を取得すると、取得した1文の文長と文中の相槌の位置とを特定したのち、文長毎に文中の位置それぞれにおける相槌の出現回数および非出現回数を積算し、コーパス取得手段が前記相槌を含むコーパスの全文を取得し終わったことに応じて、積算結果から文長毎に文中の各位置における相槌の出現確率を算出する。また、出現種別確率算出手段が、コーパス取得手段が1文を取得すると、取得した1文の相槌の種別と前記文中の相槌の位置とを特定したのち、相槌の種別毎に、文中の位置それぞれの相槌の出現回数を積算し、コーパス取得手段が前記相槌を含むコーパスの全文を取得し終わったことに応じて、積算結果から文長毎に文中の各位置における相槌の出現確率を算出する。したがって、相槌を含むコーパスから1文ずつ取得し、各文における、文長と文中の位置とにおける相槌の出現回数および非出現回数を積算することにより、文長毎に文中の各位置における相槌の出現確率できる。また、相槌を含むコーパスから1文ずつ取得し、各文における、相槌の種別と文中の位置とにおける相槌の出現回数を積算することにより、文長毎に文中の各位置における相槌の出現確率を算出することができる。
【0013】
(3) 本発明は、(1)または(2)のコーパス変換装置について、前記変換手段は、前記大規模なコーパスから取得した文の文長を特定し、特定された文長に基づいて前記出現位置確率記憶手段の出現位置確率モデルから取得した、文中の位置それぞれにおける相槌の出現確率と、発生させた乱数とに基づいて、挿入位置を決定する挿入位置決定手段(例えば、図1の挿入位置決定部161)と、前記挿入位置決定手段で決定された挿入位置に基づいて前記出現種別確率記憶手段の出現種別確率モデルから取得した、前記相槌の種別毎の出現確率と、発生させた乱数とに基づいて、挿入する相槌の種別を決定する種別決定手段(例えば、図1の種別決定部162)と、を備えることを特徴とするコーパス変換装置を提案している。
【0014】
この発明によれば、変換手段は、挿入位置決定手段と種別決定手段とを備え、挿入位置決定手段は、大規模なコーパスから取得した文の文長を特定し、特定された文長に基づいて出現位置確率記憶手段の出現位置確率モデルから取得した、文中の位置それぞれにおける相槌の出現確率と、発生させた乱数とに基づいて、挿入位置を決定する。また、種別決定手段は、挿入位置決定手段で決定された挿入位置に基づいて出現種別確率記憶手段の出現種別確率モデルから取得した、相槌の種別毎の出現確率と、発生させた乱数とに基づいて、挿入する相槌の種別を決定する。したがって、乱数を用いることにより、相槌を挿入する位置および挿入する相槌の種別の決定に、相槌の出現確率を反映させることができる。
【0015】
(4) 本発明は、(1)から(3)のコーパス変換装置について、前記コーパス取得手段で取得した各文の文中において連続する相槌は、1つの相槌として扱うことを特徴とするコーパス変換装置を提案している。
【0016】
この発明によれば、コーパス取得手段で取得した各文の文中において連続する相槌は、1つの相槌として扱う。したがって、連続した相槌も含む大規模コーパスを構築することができ、音声情報処理において、連続した相槌にも対応することができる。
【0017】
(5) 本発明は、(1)から(4)のコーパス変換装置について、前記コーパス取得手段は、前記相槌を含むコーパスから相槌のみからなる文を取得しないことを特徴とするコーパス変換装置を提案している。
【0018】
この発明によれば、コーパス取得手段は、相槌を含むコーパスから相槌のみからなる文を取得しない。したがって、相槌を含むコーパスから相槌のみからなる文を取得しないことにより、出現位置確率算出手段、および出現種別確率算出手段の処理を減らすことができる。
【0019】
(6) 本発明は、(1)から(5)のコーパス変換装置について、前記相槌を含むコーパスを複数用いることを特徴とするコーパス変換装置を提案している。
【0020】
この発明によれば、相槌を含むコーパスを複数用いる。したがって、複数の学習コーパス、すなわち、異なった状況における音声を書き起こした複数のコーパスを用いることができるので、それらを用いて作成される新たな大規模コーパスによる言語モデルの音声認識精度を向上させることができる。
【0021】
(7) 本発明は、(1)から(6)のコーパス変換装置について、前記相槌を含むコーパスは、コールセンターの対話を書き起こしたものであることを特徴とするコーパス変換装置を提案している。
【0022】
この発明によれば、相槌を含むコーパスは、コールセンターの対話を書き起こしたものを用いることができる。
【0023】
(8) 本発明は、相槌を含むコーパスを用いて、大規模なコーパスを、相槌を含む大規模なコーパスに変換するコーパス変換装置におけるコーパス変換方法であって、前記相槌を含むコーパスから文を取得する第1のステップ(例えば、図6のステップS11)と、前記第1のステップで取得した各文における、文を構成する句のうち相槌以外の句の数である文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置それぞれの相槌の出現確率を算出する第2のステップ(例えば、図6のステップS12)と前記第2のステップで算出した出現確率を前記文長および前記文中の位置に対応つけた出現位置確率モデルを、記憶する第3のステップ(例えば、図6のステップS13)と、前記第1のステップで取得した各文に含まれる相槌の種別と、当該各文の文中の相槌の位置とに基づいて、相槌の種別毎に、文中の位置それぞれの相槌の出現確率を算出する第4のステップ(例えば、図6のステップS14)と、前記第4のステップで算出した出現確率を前記相槌の種別および前記文中の位置に対応つけた出現種別確率モデルを、記憶する第5のステップ(例えば、図6のステップS15)と、前記出現位置確率モデルと、前記出現種別確率モデルとに基づいて、前記大規模なコーパスの文に相槌を挿入し、前記大規模なコーパスの文を相槌を含む文に変換することにより、相槌を含む大規模なコーパスを構築する第6のステップ(例えば、図6のステップS16)と、を含むことを特徴とするコーパス変換方法を提案している。
【0024】
この発明によれば、まず、第1のステップにおいて、相槌を含むコーパスから文を取得する。次に、第2のステップにおいて、第1のステップで取得した各文における、文を構成する句のうち相槌以外の句の数である文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置それぞれの相槌の出現確率を算出する。次に、第3のステップにおいて、第2のステップで算出した出現確率を文長および文中の位置に対応つけた出現位置確率モデルを、記憶する。次に、第4のステップにおいて、第1のステップで取得した各文に含まれる相槌の種別と、各文の文中の相槌の位置とに基づいて、相槌の種別毎に、文中の位置それぞれの相槌の出現確率を算出する。次に、第5のステップにおいて、第4のステップで算出した出現確率を相槌の種別および文中の位置に対応つけた出現種別確率モデルを、記憶する。そして、第6のステップにおいて、出現位置確率モデルと、出現種別確率モデルとに基づいて、大規模なコーパスの文に相槌を挿入し、大規模なコーパスの文を相槌を含む文に変換することにより、相槌を含む大規模なコーパスを構築する。したがって、対話特有の表現である相槌を多く含むコーパスを用いて、大規模な書き言葉コーパスから対話特有の表現である相槌を含む大規模なコーパスを構築することができる。その結果、構築された対話特有の表現である相槌を含む大規模なコーパスを用いて作成された言語モデルにて、音声情報処理を行うことにより、音声情報処理において、対話特有の表現である相槌に対応することができる。
【0025】
(9) 本発明は、相槌を含むコーパスを用いて、大規模なコーパスを、相槌を含む大規模なコーパスに変換するコーパス変換装置におけるコーパス変換方法をコンピュータに実行させるためのプログラムであって、前記相槌を含むコーパスから文を取得する第1のステップ(例えば、図6のステップS11)と、前記第1のステップで取得した各文における、文を構成する句のうち相槌以外の句の数である文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置それぞれの相槌の出現確率を算出する第2のステップ(例えば、図6のステップS12)と前記第2のステップで算出した出現確率を前記文長および前記文中の位置に対応つけた出現位置確率モデルを、記憶する第3のステップ(例えば、図6のステップS13)と、前記第1のステップで取得した各文に含まれる相槌の種別と、当該各文の文中の相槌の位置とに基づいて、相槌の種別毎に、文中の位置それぞれの相槌の出現確率を算出する第4のステップ(例えば、図6のステップS14)と、前記第4のステップで算出した出現確率を前記相槌の種別および前記文中の位置に対応つけた出現種別確率モデルを、記憶する第5のステップ(例えば、図6のステップS15)と、前記出現位置確率モデルと、前記出現種別確率モデルとに基づいて、前記大規模なコーパスの文に相槌を挿入し、前記大規模なコーパスの文を相槌を含む文に変換することにより、相槌を含む大規模なコーパスを構築する第6のステップ(例えば、図6のステップS16)と、をコンピュータに実行させるためのプログラムを提案している。
【0026】
この発明によれば、まず、第1のステップにおいて、相槌を含むコーパスから文を取得する。次に、第2のステップにおいて、第1のステップで取得した各文における、文を構成する句のうち相槌以外の句の数である文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置それぞれの相槌の出現確率を算出する。次に、第3のステップにおいて、第2のステップで算出した出現確率を文長および文中の位置に対応つけた出現位置確率モデルを、記憶する。次に、第4のステップにおいて、第1のステップで取得した各文に含まれる相槌の種別と、各文の文中の相槌の位置とに基づいて、相槌の種別毎に、文中の位置それぞれの相槌の出現確率を算出する。次に、第5のステップにおいて、第4のステップで算出した出現確率を相槌の種別および文中の位置に対応つけた出現種別確率モデルを、記憶する。そして、第6のステップにおいて、出現位置確率モデルと、出現種別確率モデルとに基づいて、大規模なコーパスの文に相槌を挿入し、大規模なコーパスの文を相槌を含む文に変換することにより、相槌を含む大規模なコーパスを構築する。したがって、対話特有の表現である相槌を多く含むコーパスを用いて、大規模な書き言葉コーパスから対話特有の表現である相槌を含む大規模なコーパスを構築することができる。その結果、構築された対話特有の表現である相槌を含む大規模なコーパスを用いて作成された言語モデルにて、音声情報処理を行うことにより、音声情報処理において、対話特有の表現である相槌に対応することができる。
【発明の効果】
【0027】
本発明によれば、対話特有の表現である相槌を多く含む小規模なコーパスを用いて、大規模な書き言葉コーパスを対話特有の表現である相槌を含む大規模なコーパスを構築することができる。
【図面の簡単な説明】
【0028】
【図1】本実施形態に係るコーパス変換装置の機能構成を示す図である。
【図2】相槌を含む例文を示す図である。
【図3】本実施形態に係る出現位置確率算出部にて算出された文長および文中の位置毎の出現確率の一例を示す。
【図4】本実施形態に係る出現種別確率算出部にて算出された種別および文中の位置毎の出現確率の一例を示す。
【図5】本実施形態に係る相槌挿入処理フローを示す図である。
【図6】本実施形態に係るコーパス変換処理フローを示す図である。
【発明を実施するための形態】
【0029】
以下、図面を用いて、本発明の実施形態について詳細に説明する。なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含むさまざまなバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0030】
<コーパス変換装置の機能構成>
図1は、本実施形態に係るコーパス変換装置100の機能構成を示す図である。本実施形態において、コーパス変換装置100は、学習コーパス10に含まれる文に基づいて、大規模コーパス20に含まれる文を、相槌を含む文に変換する装置である。図に示すように、コーパス変換装置100は、学習コーパス取得部110、出現位置確率算出部120、出現位置確率記憶部130、出現種別確率算出部140、出現種別確率記憶部150、および変換部160を備える。
【0031】
学習コーパス取得部110は、学習コーパス10から文を取得する。具体的には、学習コーパス取得部110は、学習コーパス10から1文ずつ取得し、後述する出現位置確率算出部120および出現種別確率算出部140から取得した文の処理が終了した旨の通知を受け付けると次の文を取得する。そして、学習コーパス取得部110は、学習コーパス10の全文を取得し終わるまで上述した処理を繰り返し、学習コーパス10から取得する文がなくなると、学習コーパス10の全文を取得し終わった旨を出現位置確率算出部120および出現種別確率算出部140に通知する。なお、学習コーパス取得部110は、学習コーパス10から複数の文を一度に取得してもよいが、その場合には、取得した複数の文を1文ずつ順次、出現位置確率算出部120および出現種別確率算出部140に渡す。
【0032】
ここで、学習コーパス10は、複数の文を含み、特に、相槌を含む文を多く含んでいる小さなコーパスである。具体的には、大規模コーパス20の文をコーパス変換装置100にて相槌を含む文に変換することにより、作成される新たな大規模コーパス20から作成される言語モデルを用いて音声認識を行う対象の音声を書き起こした文を含む。例えば、学習コーパス10は、コールセンターの対話を書き起こした文を含む。
【0033】
なお、図では、学習コーパス10は1つであるが複数であってもよい。複数の学習コーパス、すなわち、異なった状況における音声を書き起こしたコーパスを複数用いることにより、それらを用いて作成された新たな大規模コーパスから作成される言語モデルの音声認識精度を向上させることができる。
【0034】
出現位置確率算出部120は、学習コーパス取得部110で取得した各文における、文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置(以下、単に位置という)それぞれの相槌の出現確率を算出する。ここで、文長は、文を構成する句のうち、相槌の句以外の句の数である。
【0035】
具体的には、出現位置確率算出部120は、学習コーパス取得部110が取得した1文について、文長と文中の相槌の位置を特定したのち、文長と位置とに対応付けて出現回数および非出現回数を積算する。なお、非出現回数については後述する。次に、出現位置確率算出部120は、学習コーパス取得部110に、取得した1文の処理が終了したことを通知し、それに応じて学習コーパス取得部110が取得した新たな1文について同様に処理を行う。そして、出現位置確率算出部120は、学習コーパス取得部110から学習コーパス10の全文を取得し終わった旨の通知を受け付けると、積算した出現回数に基づいて、出現確率を算出する。
【0036】
図2の例文を用いて、文長毎の、位置それぞれの相槌の出現確率を算出する方法について説明する。以下の説明において、出現位置確率算出部120は、学習コーパス取得部110で取得した文の文長を求めた後に、その文の相槌の出現回数を求めているが、順序が逆であってもよい。
【0037】
まず、出現位置確率算出部120は、学習コーパス取得部110で取得した文について、文長を求める。例えば、学習コーパス取得部110にて取得した文が図2に示す例文1の場合には、文を構成する句は「はい」、「その通りでございます」の2つであって、そのうち、相槌の句は「はい」の1つであるので、文長は1となる。同様に、例文2および例文3の場合には、文を構成する句は3つであって、そのうち、相槌の句は「はい」の1つであるので、いずれも文長は2となる。
【0038】
例文4および例文5の場合では、「はい」と「さようでございます」との2つの相槌が連続している。このように複数の相槌の句が連続する場合には、連続した句を1つの相槌の句とする。よって、例文4は、文を構成する句は3つ、そのうち、相槌の句は、「はい」、「はい、さようでございます」の2つであるので、文長は1となる。また、例文5は、「はい、さようでございます」の相槌の句1つであるので、文長は0となる。
【0039】
次に、出現位置確率算出部120は、学習コーパス取得部110で取得した文について、相槌が出現している位置を特定し、先に求めた文長と特定した位置とに対応付けて出現回数を積算する。なお、この時、相槌の出現確率を算出するために、相槌が出現していない位置についても、文長および位置に対応付けて非出現回数を積算する。
【0040】
本実施形態において、相槌が出現する位置は、文頭、文中、文末の3つとする。ここで、文頭は文の先頭の位置を示し、文末は文の末尾の位置を示し、文中は、文の先頭および末尾以外の位置を示す。なお、文中に該当する位置が複数ある場合には、文中に該当する位置それぞれの出現回数および非出現回数の和が文中の出現回数および非出現回数となる。
【0041】
学習コーパス取得部110にて取得した文が図2の例文1の場合には、相槌の出現位置は文頭であるので、文長1の場合の文頭の出現回数に1を積算する。この時、文長1の場合の文中および文末の非出現回数にも1を積算する。次に、例文2が学習コーパス取得部110にて取得されると、相槌の出現位置は文中であるので、文長2の場合の文中の出現回数に1を積算する。さらに、例文3が学習コーパス取得部110にて取得されると、相槌の出現位置は文末であるので、文長2の場合の文末の出現回数に1を積算する。なお、例文2および例文3についても、例文1と同様に非出現回数を積算する。
【0042】
例文4および例文5のように、複数の相槌の句が連続する場合には、文長を求める場合と同様に、連続した句を1つの相槌の句として扱う。なお、例文5のように相槌の句しかない文については、相槌の句の出現位置が特定できないので、出現回数および非出現回数の積算の対象としない。よって、例文4は、相槌の出現位置は文頭および文末であるので、文長1の場合の文頭および文末それぞれの出現回数に1を積算し、例文1と同様に非出現回数も積算する。なお、例文にはないが相槌を含まない文については、相槌が出現しないので出現回数は積算できないが、非出現回数のみを積算する。
【0043】
例文5のような相槌の句しか含まない文は、相槌の句の出現位置が特定できないために、出現回数および非出現回数の積算の対象外とするが、予め、学習コーパス取得部110にて、相槌の句しか含まない文を取得しないようにしてもよい。それにより、出現位置確率算出部120および、後述する出現種別確率算出部140の処理を減らすことができる。
【0044】
このようにして、学習コーパス取得部110で取得した各文について、文長および位置毎に出現回数および非出現回数を積算し、その積算結果の出現回数を、同じく積算結果の出現回数と非出現回数との和で割った値を出現確率として算出する。図3に、算出された文長および位置毎の出現確率の一例を示す。図3に示すように、各文長について、位置それぞれの出現確率が算出される。なお、文長1の場合には、文中が存在しないため、出現確率は0となる。
【0045】
出現位置確率記憶部130は、出現位置確率算出部120で算出された、文長および位置毎の相槌の出現確率を、相槌を挿入する位置を推定する出現位置確率モデルとして記憶する。例えば、出現位置確率モデルは図3に示した表である。
【0046】
出現種別確率算出部140は、学習コーパス取得部110で取得した各文に含まれる相槌の種別と、学習コーパス取得部110で取得した各文の文中の相槌の位置とに基づいて、相槌の種別毎に、位置それぞれの相槌の出現確率を算出する。なお、出現種別確率算出部140は、出現位置確率算出部120と同様に、学習コーパス取得部110で取得した文のうち、相槌の句のみで構成されている文は、出現回数の積算の対象としない。
【0047】
具体的には、出現種別確率算出部140は、学習コーパス取得部110が取得した1文について、相槌の種別と文中の相槌の位置を特定したのち、相槌の種別と位置とに対応付けて出現回数を積算する。次に、出現種別確率算出部140は、学習コーパス取得部110に、取得した1文の処理が終了したことを通知し、それに応じて学習コーパス取得部110が取得した新たな1文について同様に処理を行う。そして、出現種別確率算出部140は、学習コーパス取得部110から学習コーパス10の全文を取得し終わった旨の通知を受け付けると、積算した出現回数に基づいて、出現確率を算出する。
【0048】
図2の例文を用いて、相槌の種別毎の、位置それぞれの相槌の出現確率を算出する方法について説明する。学習コーパス取得部110にて取得した文が図2に示す例文1の場合には、「はい」という相槌が文頭にあるので、種別「はい」の文頭の出現回数に1を積算する。同様に、例文2の場合には、「はい」という相槌が文中にあるので、種別「はい」の文中の出現回数に1を積算し、例文3の場合には、「はい」という相槌が文末にあるので、種別「はい」の文末の出現回数に1を積算する。文長毎の、位置それぞれの相槌の出現確率を算出する場合と同様に、相槌が連続する場合には連続した句を1つの相槌とし、例文4では、種別「はい、さようでございます」という相槌が文末にあるので、種別「はい、さようでございます」の文末の出現回数に1を積算する。
【0049】
このようにして、学習コーパス取得部110で取得した各文について、種別および位置毎に出現回数を積算する。そして、位置毎に、各種別について、種別の出現回数を、各種別の出現回数の和で割った値を出現確率として算出する。例えば、文頭に出現する相槌の出現確率を求める場合には、出現確率を求めたい相槌の出現回数を、文頭に出現する全種別の相槌の出現回数の和で割る。図4に、算出された種別および位置毎の出現確率の一例を示す。図4に示すように、各種別について、位置それぞれの出現確率が算出される。
【0050】
出現種別確率記憶部150は、出現種別確率算出部140で算出された、相槌の種別および位置毎の相槌の出現確率を、挿入する相槌を推定する出現種別確率モデルとして記憶する。例えば、出現種別確率モデルは図5に示した表である。
【0051】
変換部160は、出現位置確率記憶部130に記憶されている出現位置確率モデルおよび出現種別確率記憶部150に記憶されている出現種別確率モデルを用いて、大規模コーパス20から取得した文に相槌を挿入し、大規模コーパスの文を、相槌を含む文に変換することにより、相槌を含む大規模コーパス30を構築する。図1に示すように、変換部160は、相槌の挿入位置を決定する挿入位置決定部161、および挿入位置決定部161で確定された挿入位置に挿入する相槌の種別を決定する種別決定部162を備える。
【0052】
図5に示す、本実施形態に係る相槌挿入処理フローを用いて、挿入位置決定部161および種別決定部162の具体的な処理について説明する。
【0053】
まず、ステップS1において、変換部160は、大規模コーパス20から1文取得する。
【0054】
次に、ステップS2において、変換部160は、ステップS1で取得した文を、句点を基準に句に分割するとともに、文の文長を求める。
【0055】
次に、ステップS3において、挿入位置決定部161は、ステップS2で求めた文長と、出現位置確率記憶部130の出現位置確率モデルとに基づいて、相槌の出現位置を決定する。
【0056】
ここで、相槌の挿入位置の決定方法について、図3に示した出現位置確率モデルを用いて説明する。挿入位置決定部161は、まず、ステップS1で取得した文について、相槌の挿入位置候補である文頭、文中の句と句の間の全て、文末、それぞれで相槌を挿入するか否かを判断する乱数を発生させる。なお、発生させる乱数は、0.0から1.0の実数である。
【0057】
ここで、挿入位置候補について例を用いて説明する。文長が2の場合の挿入位置候補は、文長が2の文を「A、B」(A、Bは相槌でない句)とすると、相槌の挿入位置候補はA句の前(文頭)、A句とB句の間(文中の句と句の間)、B句の後ろ(文末)の3つである。同様に、文長が3の場合の挿入位置候補は、文長が3の文を「A、B、C」(A、B、Cは相槌でない句)とすると、相槌の挿入位置候補はA句の前(文頭)、A句とB句の間およびB句とC句の間(文中の句と句の間)、C句の後ろ(文末)の4つである。
【0058】
次に、挿入位置決定部161は、相槌挿入位置候補それぞれにて発生させた乱数と、出現位置確率モデルにおいて文長および相槌挿入候補位置に対応する出現確率とを比較し、乱数が出現確率以下となる相槌挿入候補位置を相槌挿入位置として決定する。
【0059】
文長が3、すなわち文「A、B、C」(A、B、Cは相槌でない句)において、A句の前(文頭)に相槌を挿入するか否かの判断する場合を例に説明する。挿入位置決定部161は、まず、A句の前(文頭)に相槌を挿入するか否かを判定する乱数を発生させる。そして、挿入位置決定部161は、発生した乱数が、図3に示した出現位置確率モデルにおいて文長3における文頭の出現確率0.151194以下であるか否か判断する。発生した乱数が文長3における文頭の出現確率以下の場合には、A句の前(文頭)を相槌挿入位置として決定し、一方、発生した乱数が文長3における文頭の出現確率より大きい場合には、A句の前(文頭)を相槌挿入位置として決定しない。
【0060】
挿入位置決定部161は、同様に、A句とB句の間、B句とC句の間、およびC句の後ろ(文末)それぞれに相槌を挿入するか否か判断する乱数を発生させ、図3に示した出現位置確率モデルにおいて文長および位置に対応する出現確率以下となるか否かを判断し、相槌を挿入する位置を決定する。
【0061】
次に、ステップS4において、種別決定部162は、ステップS3で決定した相槌の挿入位置と、出現種別確率記憶部150の出現種別確率モデルとに基づいて、ステップS3で決定した相槌の挿入位置に挿入する相槌の種別を決定する。
【0062】
ここで、相槌の種別の決定方法について、図4に示した出現種別確率モデルを用いて説明する。種別決定部162は、ステップS3で相槌を挿入すると決定した位置それぞれについて、挿入する相槌を決定する乱数を発生させ、発生させた乱数と、出現種別確率モデルに基づいて決定した各相槌の数値範囲とを比較することにより、挿入する相槌を決定する。この場合に発生させる乱数も、0.0から1.0の実数である。
【0063】
図4に示す、「はい」、「さようでございます」、「はい、さようでございます」の3つの中から、文頭に挿入する相槌を決定する場合を例に説明する。種別決定部162は、まず、各相槌の数値範囲を出現種別確率モデルに基づいて決定する。種別決定部162は、発生させた乱数を含む数値範囲の相槌を挿入する相槌として決定する。
【0064】
「はい」、「さようでございます」、「はい、さようでございます」の順に数値範囲を決定する場合には、まず、「はい」の数値範囲が、0から出現確率の0.320143までとなる。次に、「さようでございます」の数値範囲は、「はい」の数値範囲の上限、すなわち0.320143から、開始数値0.320143に自己の出現確率0.153415を足した0.473558までとなる。同様に、「はい、さようでございます」の数値範囲は、「さようでございます」の数値範囲の上限、すなわち0.473558から1までとなる。この場合に、発生させた乱数が0.5の時には、種別決定部162は、0.5を含む数値範囲(0.473558〜1)の「はい、さようでございます」を挿入する相槌として決定する。
【0065】
次に、ステップS5において、変換部160は、ステップS1で取得した文に、ステップS3で決定した相槌の挿入位置に、ステップS4で決定した種別の相槌を挿入し、相槌を含む文を生成する。
【0066】
次に、ステップS6において、変換部160は、ステップS5で生成された文を蓄積し、相槌を含む大規模コーパス30を構築する。
【0067】
次に、ステップS7において、変換部160は、大規模コーパス20に含まれる全ての文の処理を行ったか否か判断する。大規模コーパス20に含まれる全ての文の処理を行ったと判断した場合には(YES)、処理を終了し、一方、処理を行っていない文が大規模コーパス20に残っていると判断した場合には(NO)、ステップS1に処理を戻す。
【0068】
<コーパス変換処理フロー>
図6は、本実施形態に係るコーパス変換処理フローを示す図である。
【0069】
まず、ステップS11において、学習コーパス取得部110は、学習コーパス10から文を取得する。
【0070】
次に、ステップS12において、ステップS11で取得した各文における、文長と文中の相槌の位置とに基づいて、文長毎に、位置それぞれの相槌の出現確率を算出する。
【0071】
次に、ステップS13において、出現位置確率記憶部130は、ステップS12で算出された、文長および位置毎の相槌の出現確率を、相槌を挿入する位置を推定する出現位置確率モデルとして記憶する。
【0072】
次に、ステップS14において、出現種別確率算出部140は、ステップS11で取得した各文に含まれる相槌の種別と、学習コーパス取得部110で取得した各文の文中の相槌の位置とに基づいて、相槌の種別毎に、位置それぞれの相槌の出現確率を算出する。
【0073】
次に、ステップS15において、出現種別確率記憶部150は、出現種別確率算出部140で算出された、相槌の種別および位置毎の相槌の出現確率を、挿入する相槌を推定する出現種別確率モデルとして記憶する。
【0074】
次に、ステップS16において、変換部160は、出現位置確率記憶部130に記憶されている出現位置確率モデルおよび出現種別確率記憶部150に記憶されている出現種別確率モデルを用いて、大規模コーパス20から取得した文に相槌を挿入し、大規模コーパス20の文を、相槌を含む文に変換することにより、相槌を含む大規模コーパス30を構築する。
【0075】
以上説明したように、本実施形態によれば、対話特有の表現である相槌を多く含む小規模なコーパスを用いて、大規模な書き言葉コーパスから対話特有の表現である相槌を含む大規模なコーパスを構築することができる。その結果、構築された対話特有の表現である相槌を含む大規模なコーパスを用いて作成された言語モデルにて、音声情報処理を行うことにより、音声情報処理において、対話特有の表現である相槌に対応することができる。また、大規模なコーパスから対話特有の表現である相槌を含む大規模なコーパスを構築することにより、高い認識精度を実現することができる。
【0076】
なお、コーパス変換装置の処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを、コーパス変換装置を構成する各機器に読み込ませ、実行することによって本発明のコーパス変換装置を実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。
【0077】
また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
【0078】
また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0079】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0080】
10 学習コーパス
20 大規模コーパス
30 相槌を含む大規模コーパス
100 コーパス変換装置
110 学習コーパス取得部
120 出現位置確率算出部
130 出現位置確率記憶部
140 出現種別確率算出部
150 出現種別確率記憶部
160 変換部
161 挿入位置決定部
162 種別決定部

【特許請求の範囲】
【請求項1】
相槌を含むコーパスを用いて、大規模なコーパスを、相槌を含む大規模なコーパスに変換するコーパス変換装置であって、
前記相槌を含むコーパスから文を取得するコーパス取得手段と、
前記コーパス取得手段で取得した各文における、文を構成する句のうち相槌以外の句の数である文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置それぞれの相槌の出現確率を算出する出現位置確率算出手段と
前記出現位置確率算出手段で算出した出現確率を前記文長および前記文中の位置に対応つけた出現位置確率モデルを、記憶する出現位置確率記憶手段と、
前記コーパス取得手段で取得した各文に含まれる相槌の種別と、当該各文の文中の相槌の位置とに基づいて、相槌の種別毎に、文中の位置それぞれの相槌の出現確率を算出する出現種別確率算出手段と、
前記出現種別確率算出手段で算出した出現確率を前記相槌の種別および前記文中の位置に対応つけた出現種別確率モデルを、記憶する出現種別確率記憶手段と、
前記出現位置確率記憶手段の出現位置確率モデルと、前記出現種別確率記憶手段の出現種別確率モデルとに基づいて、前記大規模なコーパスの文に相槌を挿入し、前記大規模なコーパスの文を相槌を含む文に変換することにより、相槌を含む大規模なコーパスを構築する変換手段と、
を備えることを特徴とするコーパス変換装置。
【請求項2】
前記コーパス取得手段が、前記相槌を含むコーパスから1文ずつ取得し、
前記出現位置確率算出手段が、前記コーパス取得手段が1文を取得すると、取得した1文の前記文長と前記文中の相槌の位置とを特定したのち、文長毎に文中の位置それぞれにおける相槌の出現回数および非出現回数を積算し、前記コーパス取得手段が前記相槌を含むコーパスの全文を取得し終わったことに応じて、積算結果から文長毎に文中の各位置における相槌の出現確率を算出し、
前記出現種別確率算出手段が、前記コーパス取得手段が1文を取得すると、取得した1文の前記相槌の種別と前記文中の相槌の位置とを特定したのち、相槌の種別毎に、文中の位置それぞれの相槌の出現回数を積算し、前記コーパス取得手段が前記相槌を含むコーパスの全文を取得し終わったことに応じて、積算結果から文長毎に文中の各位置における相槌の出現確率を算出することを特徴とする請求項1に記載のコーパス変換装置。
【請求項3】
前記変換手段は、
前記大規模なコーパスから取得した文の文長を特定し、特定された文長に基づいて前記出現位置確率記憶手段の出現位置確率モデルから取得した、文中の位置それぞれにおける相槌の出現確率と、発生させた乱数とに基づいて、挿入位置を決定する挿入位置決定手段と、
前記挿入位置決定手段で決定された挿入位置に基づいて前記出現種別確率記憶手段の出現種別確率モデルから取得した、前記相槌の種別毎の出現確率と、発生させた乱数とに基づいて、挿入する相槌の種別を決定する種別決定手段と、
を備えることを特徴とする請求項1または2に記載のコーパス変換装置。
【請求項4】
前記コーパス取得手段で取得した各文の文中において連続する相槌は、1つの相槌として扱うことを特徴とする請求項1から3のいずれかに記載のコーパス変換装置。
【請求項5】
前記コーパス取得手段は、前記相槌を含むコーパスから相槌のみからなる文を取得しないことを特徴とする請求項1から4のいずれかに記載のコーパス変換装置。
【請求項6】
前記相槌を含むコーパスを複数用いることを特徴とする請求項1から5のいずれかに記載のコーパス変換装置。
【請求項7】
前記相槌を含むコーパスは、コールセンターの対話を書き起こしたものであることを特徴とする請求項1から6のいずれかに記載のコーパス変換装置。
【請求項8】
相槌を含むコーパスを用いて、大規模なコーパスを、相槌を含む大規模なコーパスに変換するコーパス変換装置におけるコーパス変換方法であって、
前記相槌を含むコーパスから文を取得する第1のステップと、
前記第1のステップで取得した各文における、文を構成する句のうち相槌以外の句の数である文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置それぞれの相槌の出現確率を算出する第2のステップと
前記第2のステップで算出した出現確率を前記文長および前記文中の位置に対応つけた出現位置確率モデルを、記憶する第3のステップと、
前記第1のステップで取得した各文に含まれる相槌の種別と、当該各文の文中の相槌の位置とに基づいて、相槌の種別毎に、文中の位置それぞれの相槌の出現確率を算出する第4のステップと、
前記第4のステップで算出した出現確率を前記相槌の種別および前記文中の位置に対応つけた出現種別確率モデルを、記憶する第5のステップと、
前記出現位置確率モデルと、前記出現種別確率モデルとに基づいて、前記大規模なコーパスの文に相槌を挿入し、前記大規模なコーパスの文を相槌を含む文に変換することにより、相槌を含む大規模なコーパスを構築する第6のステップと、
を含むことを特徴とするコーパス変換方法。
【請求項9】
相槌を含むコーパスを用いて、大規模なコーパスを、相槌を含む大規模なコーパスに変換するコーパス変換装置におけるコーパス変換方法をコンピュータに実行させるためのプログラムであって、
前記相槌を含むコーパスから文を取得する第1のステップと、
前記第1のステップで取得した各文における、文を構成する句のうち相槌以外の句の数である文長と文中の相槌の位置とに基づいて、文長毎に、文中の位置それぞれの相槌の出現確率を算出する第2のステップと
前記第2のステップで算出した出現確率を前記文長および前記文中の位置に対応つけた出現位置確率モデルを、記憶する第3のステップと、
前記第1のステップで取得した各文に含まれる相槌の種別と、当該各文の文中の相槌の位置とに基づいて、相槌の種別毎に、文中の位置それぞれの相槌の出現確率を算出する第4のステップと、
前記第4のステップで算出した出現確率を前記相槌の種別および前記文中の位置に対応つけた出現種別確率モデルを、記憶する第5のステップと、
前記出現位置確率モデルと、前記出現種別確率モデルとに基づいて、前記大規模なコーパスの文に相槌を挿入し、前記大規模なコーパスの文を相槌を含む文に変換することにより、相槌を含む大規模なコーパスを構築する第6のステップと、
をコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate