JP2018055622A - 情報処理装置及びプログラム - Google Patents
情報処理装置及びプログラム Download PDFInfo
- Publication number
- JP2018055622A JP2018055622A JP2016194393A JP2016194393A JP2018055622A JP 2018055622 A JP2018055622 A JP 2018055622A JP 2016194393 A JP2016194393 A JP 2016194393A JP 2016194393 A JP2016194393 A JP 2016194393A JP 2018055622 A JP2018055622 A JP 2018055622A
- Authority
- JP
- Japan
- Prior art keywords
- sentence
- control unit
- input
- unit
- text
- 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
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】多様な文章表現について言語処理を行うことができる情報処理装置等を提供する。【解決手段】情報処理装置1は、文章の入力を受け付ける受付部と、複数の文例を記憶する記憶部を参照し、前記受付部が受け付けた前記文章との類似度を計算する計算部と、前記計算部により計算した各類似度の最も高い類似度に応じた出力処理を行う出力部とを備えることを特徴とする。【選択図】図1
Description
本発明は、情報処理装置及びプログラムに関する。
人工知能の分野において、コンピュータに自然言語を学習させる機械学習の研究、開発が進んでいる。コンピュータに自然言語を学習させることで、例えば人間からの質問文をコンピュータに解析させ、自動で回答文を生成させるなど、様々な応用が考えられる。
特許文献1では、言い換え関係にある文章の集合を取得する言い換え関係集合取得装置が開示されている。特許文献1では、大規模なコーパスから取得した文章を、文章中の単語、文章の構文パターンなどに応じて分類してデータベースに記憶することで、言い換え関係にある文章の集合を学習する。
自然言語では、同様の意味を持つ文章であっても、文章に含まれる単語等の要素を別の表現に言い換え可能な場合がある。例えば「ホテルへの行き方は?」という文章は、「ホテルは何を使って行くのがよろしいですか?」、「ホテルへはどうやって行くのですか?」などの文章に言い換えることができる。人間は、文章の表現が多少変化した場合であっても、文章が持つ意味を経験的に理解することで対応できる。しかしコンピュータは、文章中の要素が変化した場合、すなわち文章の表現が変わった場合、この文章を同様の意味を持つ文章として捉えることが難しく、対応が困難である。現状では、様々な表現を想定した言語学習用の訓練データを人手で作成し、コンピュータに学習させている状況が実情である。
特許文献1では、コンピュータに大規模なコーパスのデータを与えることが前提であり、このコーパスは人間の手作業で作成されたものである。従って、特許文献1に係る発明は、上記の問題を解決するものとはいえない。
本発明は斯かる事情によりなされたものであって、その目的とするところは、多様な文章表現について言語処理を行うことができる情報処理装置等を提供することにある。
本発明に係る情報処理装置は、文章の入力を受け付ける受付部と、複数の文例を記憶する記憶部を参照し、前記受付部が受け付けた前記文章との類似度を計算する計算部と、前記計算部により計算した各類似度の最も高い類似度に応じた出力処理を行う出力部とを備えることを特徴とする。
本発明に係る情報処理装置は、前記出力部は、前記文例から疑問文を生成し、前記疑問文が前記文章と置換可能か否かを問い合わせることを特徴とする。
本発明に係る情報処理装置は、前記記憶部は、前記疑問文を生成するための定型文を記憶していることを特徴とする。
本発明に係る情報処理装置は、前記出力部からの問い合わせに対する応答を受け付ける第2受付部を備え、前記文章と置換可能でない旨の応答を前記第2受付部が受け付けた場合、前記受付部は、前記文章の再入力を受け付けることを特徴とする。
本発明に係る情報処理装置は、前記文章と置換可能である旨の応答を前記第2受付部が受け付けた場合、前記記憶部は、前記文章を前記文例と対応付けて記憶することを特徴とする。
本発明に係る情報処理装置は、再入力された前記文章と置換可能である旨の応答を前記第2受付部が受け付けた場合、前記記憶部は、再入力前に前記受付部が受け付けた前記文章を記憶することを特徴とする。
本発明に係る情報処理装置は、前記受付部が前記文章を受け付けた受付回数に応じて、前記文章の信頼度を計算する信頼度計算部を備えることを特徴とする。
本発明に係る情報処理装置は、前記計算部は、前記信頼度計算部が計算した前記信頼度に基づき前記文章と前記文例との類似度を計算し、前記計算部が計算した各類似度の大小に応じて、前記信頼度を更新する更新部を備えることを特徴とする。
本発明に係る情報処理装置は、前記記憶部は、前記文例に含まれる要素に応じて、前記文例をカテゴリー別に記憶し、前記受付部が受け付けた文章に含まれる要素に応じて、該文章のカテゴリーを判別する判別部を備え、前記計算部は、前記判別部が判別した前記文章のカテゴリーと同一のカテゴリーに属する前記文例について類似度を計算することを特徴とする。
本発明に係るプログラムは、文章の入力を受け付け、受け付けた文章を外部装置に送信し、送信した前記文章と、記憶部に記憶されている文例との類似度に応じて前記外部装置から送信される問い合わせを出力し、出力した前記問い合わせに対する応答を受け付け、受け付けた応答を前記外部装置に送信する処理をコンピュータに実行させることを特徴とする。
本発明によれば、多様な文章表現について言語処理を行うことができる。
以下、本発明をその実施の形態を示す図面に基づいて詳述する。
(実施の形態1)
図1は、情報処理システムの一例を示す模式図である。本実施の形態では、多様な文章表現に対応した言語学習を行うべく、インターネットを介して多数の文章を収集すると共に、ユーザにより入力された文章をデータベースに追加する情報処理装置1について説明する。情報処理装置1、端末装置2、2、2…は、ネットワークNを介して相互に通信接続されている。ネットワークNは、インターネットである。
(実施の形態1)
図1は、情報処理システムの一例を示す模式図である。本実施の形態では、多様な文章表現に対応した言語学習を行うべく、インターネットを介して多数の文章を収集すると共に、ユーザにより入力された文章をデータベースに追加する情報処理装置1について説明する。情報処理装置1、端末装置2、2、2…は、ネットワークNを介して相互に通信接続されている。ネットワークNは、インターネットである。
情報処理装置1は、種々の情報処理を行う情報処理装置であり、例えばサーバコンピュータ、パーソナルコンピュータ等である。本実施の形態において情報処理装置1はサーバコンピュータであるものとし、以下では簡潔のためサーバ1と読み替える。サーバ1は、同様の意味を持つ多数の文章を収集することで、多様な文章表現について言語学習を行う。具体的には、サーバ1は第1言語により表された原文、及び当該原文の対訳であり、第2言語により表された翻訳文を利用し、第1言語及び第2言語の双方において同様の意味を持つ別表現の文章データを収集してデータベースを構築する。さらにサーバ1は、端末装置2を介してユーザにより入力された文章を収集済みの文章とマッチングすることで、ユーザにより入力された文章を新たな文例としてデータベースに追加する処理を行う。
端末装置2は、ユーザが所有する情報処理端末であり、例えばスマートフォン、パーソナルコンピュータ、タブレット端末等である。以下の説明では、端末装置2がスマートフォンであるものとし、簡潔のため端末2と読み替える。例えば端末2は、サーバ1と連携し、ユーザとの対話に係るプログラムを実行する。具体的に端末2は、Siri(登録商標)のように、ユーザが発声した文章の音声入力を受け付け、受け付けた文章に対する回答の生成をサーバ1に要求する。そして端末2は、サーバ1が生成した回答を音声出力する。例えば端末2において「このホテルへの行き方を教えていただけますか?」との文章が音声入力された場合、サーバ1は学習済みの文章データを参照して当該文章を解析し、ホテルまでの道順、地図等の情報を示す回答を生成し、端末2に出力する。このように、端末2はサーバ1が機械的に学習した文章データを利用し、ユーザに対して対話形式のプログラムを提供する。
管理者端末3は、サーバ1の管理者が所有する端末装置であり、例えばパーソナルコンピュータ等である。管理者端末3は、例えばLAN(Local Area Network)を介してサーバ1に通信接続されている。管理者端末3は、管理者による操作に基づきサーバ1と情報の送受信を行う。
図2は、サーバ1の構成例を示すブロック図である。サーバ1は、制御部11、記憶部12、通信部13、大容量記憶装置14を含む。
制御部11はCPU(Central Processing Unit)、MPU(Micro-Processing Unit)等の演算処理装置を含み、記憶部12に記憶されたプログラムP1を読み出して実行することにより、サーバ1に係る種々の情報処理、制御処理等を行う。記憶部12はRAM(Random Access Memory)、ROM(Read Only Memory)等のメモリ素子を含み、制御部11が処理を実行するために必要なプログラムP1又はデータ等を記憶している。また、記憶部12は、制御部11が演算処理を実行するために必要なデータを一時的に記憶する。さらに記憶部12は、後述する問い合わせに係る疑問文を生成するための定型文を記憶している。通信部13は通信に関する処理を行うための処理回路等を含み、ネットワークNを介して端末2等と情報の送受信を行う。
制御部11はCPU(Central Processing Unit)、MPU(Micro-Processing Unit)等の演算処理装置を含み、記憶部12に記憶されたプログラムP1を読み出して実行することにより、サーバ1に係る種々の情報処理、制御処理等を行う。記憶部12はRAM(Random Access Memory)、ROM(Read Only Memory)等のメモリ素子を含み、制御部11が処理を実行するために必要なプログラムP1又はデータ等を記憶している。また、記憶部12は、制御部11が演算処理を実行するために必要なデータを一時的に記憶する。さらに記憶部12は、後述する問い合わせに係る疑問文を生成するための定型文を記憶している。通信部13は通信に関する処理を行うための処理回路等を含み、ネットワークNを介して端末2等と情報の送受信を行う。
大容量記憶装置14は、例えばハードディスク等を含む大容量の記憶装置である。大容量記憶装置14は、文例DB141等を記憶している。文例DB141は、ネットワークNを介して収集した第1言語及び第2言語の文章を記憶している。なお、本実施の形態において記憶部12及び大容量記憶装置14は一体の記憶装置として構成されていてもよい。また、大容量記憶装置14は複数の記憶装置により構成されていてもよい。また、大容量記憶装置14はサーバ1に接続された外部記憶装置であってもよい。
また、本実施の形態においてサーバ1は上記の構成に限られず、例えば操作入力を受け付ける入力部、サーバ1に係る情報を表示する表示部、可搬型記憶媒体に記憶された情報を読み取る読取部等を含んでもよい。
また、本実施の形態においてサーバ1は上記の構成に限られず、例えば操作入力を受け付ける入力部、サーバ1に係る情報を表示する表示部、可搬型記憶媒体に記憶された情報を読み取る読取部等を含んでもよい。
図3は、端末2の構成例を示すブロック図である。端末2は、制御部21、記憶部22、通信部23、表示部24、入力部25、音声出力部26、音声入力部27を含む。
制御部21はCPU、MPU等の演算処理装置を含み、記憶部22に記憶されたプログラムP2を読み出して実行することにより、端末2に係る種々の情報処理、制御処理等を行う。記憶部22はRAM、ROM等のメモリ素子を含み、制御部21が処理を実行するために必要なプログラムP2又はデータ等を記憶している。また、記憶部22は、制御部21が演算処理を実行するために必要なデータ等を一時的に記憶する。通信部23はアンテナ及び通信処理回路等を含み、ネットワークを介してサーバ1等と情報の送受信を行う。表示部24は液晶ディスプレイ又は有機EL(Electro Luminescence)ディスプレイ等の画面を有し、制御部21から与えられた画像を表示する。入力部25は表示部24に設けられたタッチパネル又は押下式のボタン等であり、来場者による操作入力を受け付ける。入力部25は、来場者によりなされた操作内容を制御部21に通知する。音声出力部26及び音声入力部27は夫々、音声の出力を行うスピーカ、音声の入力を受け付けるマイクである。
なお、本実施の形態において端末2は上記の構成に限られず、例えば可搬型記憶媒体に記憶された情報を読み取る読取部等を含んでもよい。
制御部21はCPU、MPU等の演算処理装置を含み、記憶部22に記憶されたプログラムP2を読み出して実行することにより、端末2に係る種々の情報処理、制御処理等を行う。記憶部22はRAM、ROM等のメモリ素子を含み、制御部21が処理を実行するために必要なプログラムP2又はデータ等を記憶している。また、記憶部22は、制御部21が演算処理を実行するために必要なデータ等を一時的に記憶する。通信部23はアンテナ及び通信処理回路等を含み、ネットワークを介してサーバ1等と情報の送受信を行う。表示部24は液晶ディスプレイ又は有機EL(Electro Luminescence)ディスプレイ等の画面を有し、制御部21から与えられた画像を表示する。入力部25は表示部24に設けられたタッチパネル又は押下式のボタン等であり、来場者による操作入力を受け付ける。入力部25は、来場者によりなされた操作内容を制御部21に通知する。音声出力部26及び音声入力部27は夫々、音声の出力を行うスピーカ、音声の入力を受け付けるマイクである。
なお、本実施の形態において端末2は上記の構成に限られず、例えば可搬型記憶媒体に記憶された情報を読み取る読取部等を含んでもよい。
図4は、文例DB141のレコードレイアウトの一例を示す説明図である。文例DB141は、カテゴリー列、第1言語列、第2言語列を含む。カテゴリー列は、第1言語列及び第2言語列に記憶される文章のカテゴリーを記憶している。文章のカテゴリーは、例えば文章に含まれる単語、文節等の要素により判別される。例えば文章に名詞「ホテル」が含まれる場合、キーワード列には当該名詞を示す「ホテル」が記憶される。また、例えば文章中に含まれる文節「教えていただけますか」の動詞、助動詞等の要素、又は文章全体の構文構造などに応じて、種類列には「質問」、「要望」等の文章の種類が記憶される。また、例えば文章中に含まれる名詞「ホテル」に応じて、ジャンル列には「宿泊」が記憶される。なお、上記では第1言語(日本語)についてのみ例示してあるが、第2言語(英語)についても同様にカテゴリーを付してもよい。第1言語列は、カテゴリーと対応付けて、当該カテゴリーに属する複数の第1言語の文章を記憶している。第2言語列は、カテゴリー及び第1言語の文章と対応付けて、第1言語の文章に対応する複数の第2言語の文章、すなわち第1言語の文章を第2言語に翻訳した翻訳文を記憶している。
図5は、文章の収集処理の概要について説明するための説明図である。以下ではサーバ1が実行する処理の概要について説明する。なお、以下の説明では便宜上、サーバ1の処理主体は制御部11であるものとし、端末2の処理主体は制御部21であるものとして説明する。
制御部11は、第1言語の原文、及び当該原文の対訳である翻訳文を外部から受け付け、文例DB141に記憶する。例えば制御部11は、管理者端末3で入力された原文及び翻訳文を受け付ける。原文及び翻訳文は、第1言語及び第2言語において同様の意味を持つ対訳文であり、互いに対となる文章である。本実施の形態において制御部11は、予め与えられた第2言語の翻訳文を用いて、当該翻訳文を第1言語に逆翻訳した文章の収集を行う。なお、以下の説明では、第1言語により表された原文と同様の意味を持つ別表現の文章であって、サーバ1が収集する第1言語の文章を「収集原文」と呼ぶ。
制御部11は、第1言語の原文、及び当該原文の対訳である翻訳文を外部から受け付け、文例DB141に記憶する。例えば制御部11は、管理者端末3で入力された原文及び翻訳文を受け付ける。原文及び翻訳文は、第1言語及び第2言語において同様の意味を持つ対訳文であり、互いに対となる文章である。本実施の形態において制御部11は、予め与えられた第2言語の翻訳文を用いて、当該翻訳文を第1言語に逆翻訳した文章の収集を行う。なお、以下の説明では、第1言語により表された原文と同様の意味を持つ別表現の文章であって、サーバ1が収集する第1言語の文章を「収集原文」と呼ぶ。
制御部11は、文例DB141に記憶した翻訳文に基づき、ネットワークNを介した検索処理を行い、第1言語の原文に対応する収集原文を収集する。具体的に制御部11は、第2言語に係る翻訳文に基づいてインターネット検索を行い、検索されたウェブページのテキストデータ(外部データ)から、原文と共通の要素を有する収集原文を収集する。例えば図4に示すように、翻訳の原言語(第1言語)が日本語であり、翻訳の目的言語(第2言語)が英語である場合を考える。この場合、制御部11は汎用の検索エンジンを利用してインターネット上のウェブサイトにアクセスし、日本語で表現された文章を抽出する。例えば制御部11は、英語の翻訳文を検索キーとして、当該翻訳文を含むウェブページの検索要求を検索エンジンに送信する。制御部11は検索要求に対して検索エンジンから出力される検索結果を参照し、検索上位である複数のウェブサイトのURL情報を取得する。
制御部11は、検索されたウェブサイトにアクセスし、英語の翻訳文を含むウェブページ内から、日本語の原文と共通の要素を有する日本語の文章を抽出する。例えば制御部11は、原文に含まれる名詞をキーワードとして特定する。図4の例では、制御部11は原文に含まれる名詞「ホテル」を特定する。制御部11は、当該名詞「ホテル」を含む日本語の文章をウェブページから抽出する。また、例えば制御部11は、原文に含まれる動詞、助動詞等、又は原文の構文構造などから、原文が質問文であることを特定する。制御部11は、原文と同様に質問文となっている日本語の文章をウェブページから抽出する。
制御部11は、検索上位の各ウェブページについて同様の処理を実行し、日本語の文章を抽出していく。これにより、制御部11は英語の翻訳文に対応する複数の日本語の文章、すなわち収集原文を収集する。収集された収集原文は、同一の英語の翻訳文を検索キーとして収集されたものである。従って、収集された収集原文は、日本語の原文と同様の意味を持つ文章であることが推測される。従って、制御部11は英語(第2言語)の翻訳文に基づき日本語(第1言語)の収集原文を収集することで、日本語の原文と同様の意味を持つ文章を収集することができる。
図6は、収集翻訳文の収集処理について説明するための説明図である。制御部11は、英語(第2言語)の翻訳文を日本語(第1言語)に逆翻訳した収集原文を収集するだけでなく、日本語の原文または収集原文を英語に翻訳した第2言語の文章を収集する。なお、以下の説明では、第1言語の原文または収集原文を基に収集する翻訳文を「収集翻訳文」と呼ぶ。例えば制御部11は、原文及び収集原文(日本語の文章)から、一の文章を選択する。制御部11は、当該文章を検索キーとして、上記と同様の処理を行う。すなわち制御部11は、日本語の文章を含むウェブページを検索する。制御部11は、検索されたウェブページから、当初に受け付けた英語の翻訳文と共通の要素を有する収集翻訳文を抽出する。図5に示す例では、制御部11は英語の翻訳文と同様に名詞「hotel」を含み、質問文となっている英語の文章を抽出する。制御部11は、検索された各ページの文書について、日本語の原文に対応する英語の収集翻訳文を抽出していく。上記で選択した一の文章について収集処理が完了した場合、制御部11は、検索キーである日本語の文章、すなわち原文を入れ替え、さらに収集翻訳文を収集する。これにより、制御部11は第2言語(英語)の翻訳文に基づき第1言語(日本語)の収集原文の別表現を収集するだけでなく、原文の別表現も収集することができる。
収集翻訳文に係る収集処理が完了した場合、制御部11は、収集した収集翻訳文のうち、当初に受け付けた第2言語の翻訳文と一致しない文章があるか否かを判定する。すなわち制御部11は、収集した複数の収集翻訳文夫々について、翻訳文と一致するか否かを判定していく。一致しない文章があると判定した場合、制御部11は、一致しないと判定された収集翻訳文に基づいて再度、日本語及び英語の文章を収集する。これにより、制御部11は収集原文及び収集翻訳文の収集を繰り返す。例えば制御部11は、翻訳文と不一致の収集翻訳文がなくなるまで処理を繰り返し、別表現に係る文章を取得する。
なお、制御部11は、翻訳文及び収集翻訳文が完全に一致する場合だけでなく、例えば文章中の一部の単語のみが異なる場合のように、翻訳文及び収集翻訳文に含まれる要素が所定割合以上で重複する場合を含めて、翻訳文及び収集翻訳文が一致すると判定してもよい。
なお、制御部11は、翻訳文及び収集翻訳文が完全に一致する場合だけでなく、例えば文章中の一部の単語のみが異なる場合のように、翻訳文及び収集翻訳文に含まれる要素が所定割合以上で重複する場合を含めて、翻訳文及び収集翻訳文が一致すると判定してもよい。
制御部11は、収集した第1言語及び第2言語の文章を互いに対応付けて、文例として文例DB141に記憶する。例えば制御部11は、収集した文章を、キーワード、種類、ジャンル等に応じて定められるカテゴリー別に記憶する。以上より、制御部11は第1言語及び第2言語の対訳文に基づき別表現の文章を収集することで、多様な表現について文章データを格納したコーパスを構築する。
なお、上記でサーバ1は、管理者端末3を介して手動入力により原文及び翻訳文を受け付けることとしたが、本実施の形態はこれに限るものではない。例えばサーバ1は、既存のコーパスに係るデータを事前にインストールしておき、当該コーパスから文章を読み出すことで、原文及び翻訳文を受け付けてもよい。これにより、サーバ1は既存のコーパスに含まれる文章をさらに別表現で表した文章を収集し、文章データを拡充することができる。
また、上記でサーバ1は、2つの言語間の対訳文を収集したが、本実施の形態はこれに限定されるものではなく、3以上の言語間の対訳文を収集してもよい。例えばサーバ1は、英語、日本語、中国語の夫々について原文を受け付け、英語の原文から日本語の文章を、日本語の文章から中国語の文章を、中国語の文章から英語の文章を収集する。このように、サーバ1による収集処理の対象言語は2言語に限られない。
図7は、新たな文章の追加取得処理について説明するための説明図である。サーバ1は、上記のようにネットワークNを介して文章収集を行うだけでなく、端末2を介してユーザにより入力される文章を新たな文例として取得し、文例DB141に追加する処理を行う。例えば端末2の制御部21は、Siri等のような対話プログラムを実行する。すなわち制御部21は、ユーザから発話等による文章の入力を受け付け、サーバ1に転送する。なお、以下の説明では便宜上、端末2において入力された文章を「入力文」という。サーバ1の制御部11は、文例DB141を参照して入力文を解析し、ユーザの発話に対する回答を生成して端末2に出力する。本実施の形態において、制御部11は当該入力文が文例DB141に記憶されている文例のいずれにも類似しない場合、入力文を新たな文例として文例DB141に追加する。
図7では、情報処理システムが日本語に係る対話プログラムを実行する場合を示す。この場合、まず端末2の制御部21は、日本語による文章の入力を受け付ける。例えば制御部21は、音声入力部27を介して文章の音声入力を受け付ける。なお、制御部21は音声入力ではなく、入力部25を介したテキスト入力により文章を受け付けてもよい。制御部21は、入力された文章を音声認識により認識し、認識結果に係るデータをサーバ1に送信する。
サーバ1の制御部11は、当該データを端末2から受信することで、端末2を介した文章の入力を受け付ける。制御部11は、受け付けた文章に含まれる要素に応じて、当該文章のカテゴリーを判別する。すなわち制御部11は、上述の如く、文章中の単語、文節等の要素に応じて、文章に含まれるキーワード、ジャンル等を判別する。図7に示す例の場合、制御部11は文章に含まれる名詞「ホテル」を判別し、文章のキーワード「ホテル」、文章のジャンル「宿泊」を判別する。また、例えば制御部11は、文章中の動詞、動名詞等の要素、又は文章に含まれる各要素の順序、すなわち構文構造などに応じて、文章の種類を判別する。図7に示す例の場合、制御部11は文章中における動詞、動名詞等の内容、各単語の順序などに応じて、文章が質問文であることを判別する。制御部11は、判別したキーワード、ジャンル、種類等を総合して、文章のカテゴリーを判別する。なお、文章のカテゴリーに係る上記の分類方法は一例であって、本実施の形態はこれに限定されるものではない。
制御部11は、判別したカテゴリーと同一カテゴリーに属する文例を、文例DB141から抽出する。すなわち制御部11は、キーワード、ジャンル、種類等が共通する文例を文例DB141から読み出す。
制御部11は、端末2において入力された入力文と、上記で抽出した各文例との類似度を計算する。例えば制御部11は、コサイン類似度に係る推定法を用いて文章の類似度を計算する。具体的に制御部11は、入力文と、文例DB141から抽出した文例とを、形態素解析により最小単位(例えば単語毎)の要素成分に分割する。制御部11は、文章中における各要素成分の有無に応じて、各文章をベクトル化する。例えば図7に示すように、「このホテルへの行き方は?」と「このホテルへの行き方を教えて頂けますか?」とを比較する場合、要素成分は「この」、「ホテル」、「への」、「行き方」、「は」、「を」、「教えて」「頂けますか」の、2つの文に含まれる全ての要素(8語)になる。制御部11は、各要素成分の有無に応じて、各文章のベクトル値A、Bを割り出す。すなわち制御部11は、入力文「このホテルへの行き方は?」には「この」、「ホテル」、「への」、「行き方」、「は」の5語の要素成分が含まれる一方、「を」、「教えて」「頂けますか」の3語の要素成分は含まれないことから、ベクトル値A=(11111000)を割り出す。また、制御部11は、文例「このホテルへの行き方を教えて頂けますか?」には「この」、「ホテル」、「への」、「行き方」、「を」、「教えて」「頂けますか」の7語の要素成分が含まれる一方、「は」の1語の要素成分は含まれないことから、ベクトル値B=(11110111)を割り出す。制御部11は、ベクトルA、Bの内積を算出することで、類似度を計算する。
制御部11は、計算した各類似度の最も高い類似度に応じた処理を行う。すなわち制御部11は、入力文と最も類似する文例に基づき、ユーザとの対話に係るプログラムを実行する。
例えば制御部11は、各文例について計算した各類似度について、最も高い類似度が所定の閾値以上であるか否かを判定する。閾値以上であると判定した場合、例えば制御部11は、入力文と最も類似度が高い文例に基づいて入力文を解析し、自動的に回答を生成して端末2に出力する。例えば上記のように、端末2において「このホテルへの行き方を教えていただけますか?」との文章が音声入力された場合、制御部11は、当該入力文のキーワード、種類、ジャンル等のカテゴリーを判別することで、ユーザが発話した内容を推定する。上記の場合、キーワードが「ホテル」及び「行き方」であり、文章の種類が「質問文」であること等から、制御部11はホテルまでの道順、地図等の情報を示す音声、画像等の回答データを生成し、端末2に出力する。
類似度が閾値未満であると判定した場合、すなわち入力文と同一又は類似する文例が文例DB141に記憶されていない場合、制御部11は、入力文を新たな文例として文例DB141に追加処理を行う。すなわち、入力文と同一又は類似する文例が文例DB141に記憶されていないことから、未収集の新たな文例を取得する機会であるとして、制御部11は、当該入力文について言語学習を行う。
図8及び図9は、端末2からの応答結果に応じた文章取得処理について説明するための説明図である。制御部11は、上記の入力文が文例と置換可能か否かをユーザに問い合わせ、問い合わせに対するユーザからの応答結果に応じて、入力文を新たな文例として文例DB141に記憶する。具体的に制御部11は、入力文との類似度が最も高い文例から疑問文を生成し、疑問文が入力文と置換可能か否かの問い合わせを端末2に出力する。例えば制御部11は、上述の如く、記憶部12に疑問文生成用の定型文を記憶しておく。制御部11は記憶部12から定型文を読み出し、最も類似度が高い文例を定型文に当てはめて疑問文を生成し、端末2に出力する。なお、定型文は記憶部12ではなく、大容量記憶装置14に記憶されていてもよい。制御部11は、端末2において疑問文に係る音声データを生成し、端末2に出力する。音声データを受信した場合、端末2の制御部21は、音声出力部26より疑問文を音声出力する。例えば図8に示すように、制御部21は「今の発言は〜ということですか?」との音声を出力する。なお、制御部21は音声出力ではなく、表示部24における画像表示により疑問文を出力してもよい。
制御部21は、問い合わせに対するユーザからの応答の入力を受け付ける。例えば制御部21は、音声入力部27を介して「はい」又は「いいえ」などの音声入力を受け付ける。なお、制御部21は入力部25を介した操作入力により応答を受け付けてもよい。制御部21は、入力内容に応じて、置換可能か否かを示す応答信号を生成し、サーバ1に送信する。
サーバ1の制御部11は、端末2から送信された応答信号を受信することで、置換可能か否かを示す応答を受け付ける。制御部11は応答信号を参照し、疑問文が入力文と置換可能か否かを判定する。例えば図8に示すように、疑問文が入力文と置換可能であると判定した場合、制御部11は、疑問文の基となった文例と対応付けて入力文を新たに文例DB141に記憶する。すなわち制御部11は、上記で判別したカテゴリーに分類して入力文を文例DB141に追加する。
図9に移って、疑問文が入力文と置換可能でないと判定した場合、制御部11は、文章の再入力を受け付ける。例えば制御部11は、文章の再入力を要求する催促文を生成し、端末2に送信する。例えば制御部11は、上記の疑問文と同様に、催促文に係る定型文を記憶部12に記憶しておき、催促文に係る音声データを生成して端末2に送信する。催促文に係る音声データを受信した場合、端末2の制御部21は、文章の再入力を促すべく、「別の言い方で仰ってください」などの音声を音声出力部26より出力する。そして制御部21は、入力文を言い換えた別文章の入力を受け付ける。別文章が入力された場合、サーバ1及び端末2は上記と同様の処理を繰り返す。すなわち、端末2の制御部21は新たな入力文をサーバ1に送信し、サーバ1の制御部11は当該入力文と既存の文例との類似度を計算する。再入力された文章について計算した類似度も閾値未満である場合、制御部11は置換可能か否かの問合せを再度行い、置換可能である場合は文例DB141に記憶し、置換可能でない場合は再入力を促す。以上より、制御部11はユーザにより入力される文章を新たな文例として取得し、より多様な文章表現を学習することができる。
なお、上記で制御部11は、置換可能でない入力文については文例DB141に追加しないこととしたが、置換可能でない入力文も文例DB141に追加してもよい。具体的に制御部11は、上述の如く、疑問文が入力文と置換可能でない旨の応答を受け付けた場合、文章の再入力を促す。ここで制御部11は、再入力された文章について再度問い合わせを行い、再入力された文章が置換可能である旨の応答を受け付けた場合、再入力前に入力された文章、すなわち元の入力文を併せて文例DB141に記憶する。言い換えると、制御部11は、一旦入力が失敗した文章も文例DB141に追加する。これにより、制御部11はより多様な文章表現について学習することができる。
図10は、文章収集処理の処理手順の一例を示すフローチャートである。図10に基づいて、サーバ1の制御部11が実行する文例収集処理について説明する。
制御部11は、第1言語の原文、及び当該原文の対訳である第2言語の翻訳文を文例DB141に記憶する(ステップS11)。例えば制御部11は、管理者端末3を介して第1言語及び第2言語の原文及び翻訳文の入力を受け付ける。制御部11は、受け付けた原文及び翻訳文を互いに対応付けて文例DB141に記憶する。制御部11は、文例DB141に記憶した翻訳文に基づき、ネットワークNを介して第1言語の原文に対応する収集原文を収集する(ステップS12)。例えば制御部11は、翻訳文を検索キーとしてウェブページの検索要求を検索エンジンに対して行い、翻訳文を含むウェブページのURL情報を取得する。制御部11は、検索上位のウェブページにアクセスし、ステップS11で翻訳文の対訳として文例DB141に記憶した原文と共通の要素を有する収集原文をページ内から抽出する。制御部11は、検索上位の各ページにおいて同様に文章を抽出していくことで、ステップS11で記憶した原文と同様の意味を持つ収集原文を収集する。ここで収集原文は1文だけに限らず、自己の有する原文と異なる表現となる文章全てを収集する。
制御部11は、第1言語の原文、及び当該原文の対訳である第2言語の翻訳文を文例DB141に記憶する(ステップS11)。例えば制御部11は、管理者端末3を介して第1言語及び第2言語の原文及び翻訳文の入力を受け付ける。制御部11は、受け付けた原文及び翻訳文を互いに対応付けて文例DB141に記憶する。制御部11は、文例DB141に記憶した翻訳文に基づき、ネットワークNを介して第1言語の原文に対応する収集原文を収集する(ステップS12)。例えば制御部11は、翻訳文を検索キーとしてウェブページの検索要求を検索エンジンに対して行い、翻訳文を含むウェブページのURL情報を取得する。制御部11は、検索上位のウェブページにアクセスし、ステップS11で翻訳文の対訳として文例DB141に記憶した原文と共通の要素を有する収集原文をページ内から抽出する。制御部11は、検索上位の各ページにおいて同様に文章を抽出していくことで、ステップS11で記憶した原文と同様の意味を持つ収集原文を収集する。ここで収集原文は1文だけに限らず、自己の有する原文と異なる表現となる文章全てを収集する。
制御部11は、ステップS11で記憶した原文、またはステップS12で収集した収集原文に基づき、当該文章に対応する収集翻訳文を収集する(ステップS13)。すなわち制御部11は、ステップS11で記憶した原文、またはステップS12で収集した複数の収集原文のいずれかを検索キーとして、ステップS12と同様の収集処理を行う。制御部11は原文または収集原文のいずれかに基づきウェブページを検索し、検索された各ページから第2言語の翻訳文に対応する収集翻訳文を収集する。なお、収集翻訳文は、1つの原文に対して異なる表現が見つかる限り全ての文章を収集する。これにより、制御部11は第2言語で表現された一の翻訳文に対応する複数の収集翻訳文を収集する。制御部11は、原文及び収集原文全てについて、ステップS13に係る収集処理を行ったか否かを判定する(ステップS14)。全てではないと判定した場合(S14:NO)、制御部11は処理をステップS13に戻す。これにより、制御部11は検索キーである文章を入れ替え、収集翻訳文の収集を再度行う。制御部11は、原文及び収集原文全てについて収集翻訳文の収集を行う。
原文及び収集原文全てについて処理を行ったと判定した場合(S14:YES)、制御部11は、ステップS13で収集した収集翻訳文のうち、ステップS11で記憶した第2言語の翻訳文と一致しない文章があるか否かを判定する(ステップS15)。すなわち制御部11は、収集した複数の収集翻訳文夫々について、当初の翻訳文と一致するか否かを判定していく。翻訳文と一致しない文章があると判定した場合(S15:YES)、制御部11は、ステップS12に処理を戻す。この場合、制御部11は一致しないと判定した文章、すなわち収集翻訳文に基づきステップS12〜14の処理を実行する。これにより、制御部11は翻訳文と不一致の収集翻訳文を基に、新たな文章を収集していく。
翻訳文と一致しない文章がないと判定した場合(S15:NO)、制御部11は、第1言語及び第2言語夫々の文章を対応付けて文例DB141に記憶する(ステップS16)。具体的に制御部11は、収集した文章からキーワード、種類、ジャンル等のカテゴリーを判別し、判別したカテゴリーに対応付けて第1言語及び第2言語の文章を記憶する。制御部11は、一連の処理を終了する。
図11は、文章の追加取得処理の処理手順の一例を示すフローチャートである。図11に基づき、情報処理システムが入力文を新たな文例として追加取得する処理の処理内容について説明する。
端末2の制御部21は、文章の入力を受け付ける(ステップS41)。例えば制御部21は、音声入力部27を介して文章の音声入力を受け付ける。制御部21は、受け付けた文章に係るデータをサーバ1に送信する(ステップS42)。
端末2の制御部21は、文章の入力を受け付ける(ステップS41)。例えば制御部21は、音声入力部27を介して文章の音声入力を受け付ける。制御部21は、受け付けた文章に係るデータをサーバ1に送信する(ステップS42)。
サーバ1の制御部11は、当該データを端末2から受信することで、端末2を介した文章の入力を受け付ける(ステップS43)。制御部11は、受け付けた文章に含まれる要素に応じて、当該文章のカテゴリーを判別する(ステップS44)。例えば制御部11は、文章中の単語、文節等に応じて、文章に含まれるキーワード、ジャンル等を判別する。また、例えば制御部11は、文章に含まれる動詞、動名詞等の単語、又は文章の構文構造などに応じて、文章の種類を判別する。制御部11は、判別したキーワード、ジャンル、種類等を総合して、文章のカテゴリーを判別する。制御部11は、判別したカテゴリーと同一カテゴリーに属する文例を、文例DB141から抽出する(ステップS45)。
制御部11は、ステップS43で受け付けた文章と、ステップS45で抽出した各文例との類似度を計算する(ステップS46)。例えば制御部11は、コサイン類似度に係る推定法を用いて、端末2で入力された文章と、文例DB141から抽出した各文例との類似度を計算する。制御部11は、各文例について計算した各類似度のうち、最も高い類似度が所定の閾値以上であるか否かを判定する(ステップS47)。閾値以上であると判定した場合(S47:YES)、制御部11は、入力文との類似度が最も高い文例に基づいてユーザによる発話を解析し、ユーザの発話に対する回答を生成する(ステップS48)。例えば制御部11は、ステップS44で判別した入力文のキーワード、種類、ジャンル等のカテゴリーから入力文の内容を推定し、当該入力文に対する回答を示す音声、画像等のデータを生成する。制御部11は、生成した回答を端末2に出力し(ステップS49)、一連の処理を終了する。
最も高い類似度が閾値以上でないと判定した場合(S47:NO)、制御部11は、入力文との類似度が最も高い文例から疑問文を生成する(ステップS50)。例えば記憶部12は、疑問文を生成するための定型文を予め記憶しておく。制御部11は記憶部12から定型文を読み出し、類似度が最も高い文例を定型文に当てはめることで疑問文を生成する。例えば制御部11は、疑問文に係る音声データを生成する。制御部11は、生成した疑問文が入力文と置換可能か否かを端末2に問い合わせる(ステップS51)。すなわち制御部11は、上記で生成した疑問文を含む音声データを端末2に出力する。
端末2に制御部21は、サーバ1から送信された問い合わせに係るデータを受信する(ステップS52)。制御部21は、受信したデータを参照し、ステップS50で生成された疑問文がステップS41で入力された文章と置換可能か否かを問う音声を音声出力部26より出力する(ステップS53)。なお、制御部21は音声出力ではなく、表示部24における画像表示により問い合わせの出力を行ってもよい。制御部21は、問い合わせに係る音声に対し、文章と文例とが置換可能か否かを示す応答の入力を受け付ける(ステップS54)。例えば制御部21は、音声入力部27においてユーザによる音声入力を受け付ける。制御部21は、受け付けた音声に係る応答信号をサーバ1に送信する(ステップS55)。
サーバ1の制御部11は、端末2から送信された応答信号を受信することで、置換可能か否かを示す応答の入力を受け付ける(ステップS56)。制御部11は、当該応答信号を参照し、疑問文が入力文と置換可能か否かを判定する(ステップS57)。置換可能であると判定した場合(S57:YES)、制御部11は、ステップS43で受け付けた文章を、ステップS45で抽出した文例と対応付けて文例DB141に記憶する(ステップS58)。すなわち制御部11は、ステップS44で判別したカテゴリーに分類して入力文を文例DB141に追加する。また、制御部11はステップS58において、後述するステップS59〜S61の処理により再入力された入力文が置換可能であると判定した場合、元の入力文を併せて文例DB141に追加してもよい。つまり制御部11は、再入力された入力文が置換可能である旨の応答を受け付けた場合、再入力前に受け付けた入力文を併せて記憶する。これにより、制御部11はより多様な表現の文章を追加取得することができる。制御部11は、処理をステップS48に移行する。
置換可能でないと判定した場合(S57:NO)、制御部11は、文章の再入力を要求する催促文を生成し、端末2に送信する(ステップS59)。端末2の制御部21は、当該催促文に係るデータを受信する(ステップS60)。制御部21は、受信したデータに基づいて催促文に係る音声を音声出力部26より出力し(ステップS61)、処理をステップS41に戻す。これにより、制御部21は文章の入力を再度受け付ける。
なお、上記では携帯端末における対話プログラムを例に取って説明したが、本実施の形態はこれに限定されるものではない。例えば情報処理システムは、端末2に代えて、ユーザに応対するロボット等を採用してもよい。この場合、例えばロボットは商業施設の店頭などに設置され、来店したユーザに応対する。ロボットは端末2と同様、音声入力によりユーザの発話を取得し、サーバ1に転送する。サーバ1は、転送されたユーザの発話に係る文章を文例DB141の文例と比較し、新たな文例として追加する。当該構成であっても、上記と同様の効果を奏する。
また、上記では質疑応答を対話形式で行うプログラムを例に取って文章の追加取得処理を説明したが、本実施の形態はこれに限定されるものではない。例えば情報処理システムは、ユーザに対して言語の機械翻訳に係るプログラムを提供してもよい。この場合、サーバ1は文例DB141に記憶された各言語の文例を参照し、端末2からの入力文を解析して機械翻訳を行う。そしてサーバ1は、入力文が文例DB141の文例のいずれとも非類似である場合に問い合わせを行い、新たな文例を追加取得する。このように、サーバ1がユーザにより入力された入力文を端末2から取得可能であればよく、その他の処理内容は特に限定されない。
また、上記でサーバ1は、図10で説明した文章収集処理によって収集した文例に、図11で説明した追加取得処理によって取得した文章を追加したが、本実施の形態はこれに限定されるものではない。例えばサーバ1は、既存のコーパスデータを記憶しておき、当該コーパスに新たな文例を追加していく形態であってもよい。
以上より、本実施の形態1によれば、最も類似度の高い文例に応じて回答、問い合わせ等の出力処理を行うことにより、多様な文章表現について言語処理を行うことができる。
また、本実施の形態1によれば、ユーザに対して問い合わせを行うことで、サーバ1は既存の文例の意味、内容をより正確に把握する機会を得ることができる。
また、本実施の形態1によれば、疑問文を生成するための定型文を用意しておくことで、ユーザへの問い合わせを適切に行うことができる。
また、本実施の形態1によれば、入力文を言い換えた文章の再入力を促すことで、適切に表現された文章を取得することができる。
また、本実施の形態1によれば、再入力された文章を新たな文例として文例DB141に記憶することで、より多様な文章表現に係るコーパスを構築することができる。
また、本実施の形態1によれば、サーバ1は、各文章をカテゴリー別に管理することで、入力文との類否判定に際して同一カテゴリーに属する文例のみを抽出してマッチングすればよく、処理負荷を軽減することができる。
(実施の形態2)
本実施の形態では、端末2から取得した文章について信頼度を計算する形態について説明する。なお、実施の形態1と重複する内容については、図面に同一の符号を付して説明を省略する。
本実施の形態では、端末2から取得した文章について信頼度を計算する形態について説明する。なお、実施の形態1と重複する内容については、図面に同一の符号を付して説明を省略する。
図12は、実施の形態2に係る文例DB141のレコードレイアウトの一例を示す説明図である。本実施の形態に係る文例DB141の第1言語列、第2言語列は夫々、各言語の文例と対応付けて、受付回数及び信頼度を記憶している。受付回数は、サーバ1が端末2から文章の再入力を受け付けた回数である。信頼度は、後述するように、受付回数に応じて文章の信頼性を評価した値であり、受付回数が多くなるほど値が大きくなるように計算される。
図13は、実施の形態2に係る信頼度の計算処理について説明するための説明図である。上述の如く、サーバ1の制御部11は、端末2を介して入力を受け付けた文章と文例DB141に記憶されている文例との類似度が閾値以上でない場合、端末2に問い合わせを行い、当該文章が置換可能か否かの応答を受け付ける。そして制御部11は、置換可能でない場合、文章の再入力をユーザに促し、新たな文章を受け付ける。すなわち制御部11は、複数回に亘って文章の入力を受け付けることで、文例DB141に新たな文例を追加する場合がある。本実施の形態で制御部11は、上記で文章の入力を受け付けた受付回数に応じて文章の信頼度を計算し、計算した信頼度に応じて入力文を文例DB141に記憶する。具体的に制御部11は、以下の式(1)に基づいて信頼度Rを計算する。
R = 1−1/k …(1)
なお、kは文章の受付回数である。式(1)に示すように、信頼度Rは、受付回数が増えるほど値が大きくなる。受付回数が少ない状態(例えば1回)で置換可能であると判断された文章を学習した場合、誤った表現の文章を学習する虞が高まるため、上記のように、制御部11は受付回数が増えるほど信頼度Rを高く計算する。なお、式(1)は一例であって、例えば制御部11はシグモイド関数を用いて信頼度Rを計算してもよい。制御部11は、入力文が置換可能である旨の応答を端末2から受け付けた場合、式(1)に従って信頼度Rを計算する。
例えば制御部11は、計算した信頼度Rが低い場合、入力文を文例DB141に記憶しない。具体的に制御部11は、計算した信頼度Rが所定の閾値以上であるか否かを判定する。信頼度Rが閾値未満であると判定した場合、制御部11は入力文の信頼性が低いとして文章を捨象し、文例DB141に追加しない。この場合、例えば制御部11はさらに文章の再入力を端末2に要求し、ユーザにより言い換えられた新たな文章の入力を受け付ける。再入力された文章に係る信頼度Rが閾値以上である場合、制御部11は、上記の受付回数k、信頼度Rと共に文章を文例DB141に記憶する。これにより、制御部11は信頼性の高い入力文のみを学習することができる。
なお、例えば制御部11は、信頼度Rが低い場合であっても入力文を捨象せず、当該入力文を文例DB141に記憶してもよい。この場合、例えば制御部11は、ユーザとの対話プログラムを実行するにあたり、例えば信頼度Rが高い順に文例を参照してユーザの発言を解析する。このように、制御部11は信頼度Rを記録しておくことで、信頼性の高い自然言語処理を行うことができる。
図14は、実施の形態2に係る情報処理システムが実行する処理手順の一例を示すフローチャートである。端末2を介して文章の入力を受け付けた場合(ステップS43)、サーバ1の制御部11は以下の処理を実行する。
制御部11は、文章の入力受付が1回目であるか否かを判定する(ステップS201)。1回目でないと判定した場合(S201:NO)、制御部11は処理をステップS203に移行する。1回目であると判定した場合(S201:YES)、制御部11は、カウンタkを0に設定する(ステップS202)。カウンタkは、入力文の受付回数をカウントするためのカウンタである。制御部11は、カウンタkに1を加算する(ステップS203)。制御部11は、ステップS43で文章の入力を受け付ける毎にカウンタkをインクリメントすることで、入力文の受付回数をカウントする。
制御部11は、文章の入力受付が1回目であるか否かを判定する(ステップS201)。1回目でないと判定した場合(S201:NO)、制御部11は処理をステップS203に移行する。1回目であると判定した場合(S201:YES)、制御部11は、カウンタkを0に設定する(ステップS202)。カウンタkは、入力文の受付回数をカウントするためのカウンタである。制御部11は、カウンタkに1を加算する(ステップS203)。制御部11は、ステップS43で文章の入力を受け付ける毎にカウンタkをインクリメントすることで、入力文の受付回数をカウントする。
ステップS50で生成した疑問文がステップS43で受け付けた文章と置換可能であると判定した場合(S57:YES)、制御部11は、ステップS43で文章の入力を受け付けた受付回数に応じて、置換可能であると判定された文章の信頼度Rを計算する(ステップS204)。具体的に制御部11は、入力文の受付回数が多いほど信頼度Rが高くなるように設定する。例えば制御部11は、ステップS203で計数したカウンタkを式(1)に代入して信頼度Rを計算する。
制御部11は、計算した信頼度Rが閾値以上であるか否かを判定する(ステップS205)。閾値以上でないと判定した場合(S205:NO)、制御部11は処理をステップS59に移行する。閾値以上であると判定した場合(S205:YES)、制御部11は、置換可能であると判定した入力文を、上記の受付回数k、信頼度Rと共に文例DB141に記憶し(ステップS206)、一連の処理を終了する。
以上より、本実施の形態2によれば、入力文について信頼度Rを計算することで、適切な言い換え表現に係る文章を学習することができる。
(実施の形態3)
本実施の形態では、疑問文と置換不可能な入力文に基づいて文章収集を行い、より多様な文章表現を獲得する形態について述べる。
図15は、実施の形態3に係る文章収集処理について説明するための説明図である。上述の如く、サーバ1の制御部11は、疑問文と置換可能である文章を、新たな文例として文例DB141に記憶する。一方で、文例DB141に記憶されている文例のいずれとも非類似であり、置換可能でもない文章は、新たな文章表現を獲得する検索キーになり得る。そこで本実施の形態では、サーバ1は置換可能でない旨の応答があった入力文を原文として文章収集処理を行い、言い換え表現に係る文章を取得して文例DB141に記憶する。
本実施の形態では、疑問文と置換不可能な入力文に基づいて文章収集を行い、より多様な文章表現を獲得する形態について述べる。
図15は、実施の形態3に係る文章収集処理について説明するための説明図である。上述の如く、サーバ1の制御部11は、疑問文と置換可能である文章を、新たな文例として文例DB141に記憶する。一方で、文例DB141に記憶されている文例のいずれとも非類似であり、置換可能でもない文章は、新たな文章表現を獲得する検索キーになり得る。そこで本実施の形態では、サーバ1は置換可能でない旨の応答があった入力文を原文として文章収集処理を行い、言い換え表現に係る文章を取得して文例DB141に記憶する。
例えば制御部11は、入力文が置換可能でない旨の応答を端末2から受け付けた場合、当該入力文を一時的に記憶部12に記憶しておく。そして制御部11は、一時的に記憶しておいた入力文について、当該入力文の対訳である翻訳文を入力すべき旨の要求を管理者端末3に対して行う。例えば制御部11は、定期的(一日毎など)に要求信号を生成し、管理者端末3に送信する。当該要求信号は、入力文に係るテキストデータを含む。当該要求信号を受信した場合、管理者端末3は、翻訳文の入力を受け付ける。例えば管理者端末3は、図15に示すように、置換可能でない旨の応答があった日本語の入力文を表示画面に表示すると共に、当該入力文に対する英語の翻訳文の入力を管理者に促す。管理者は、当該文章の翻訳文を管理者端末3に入力する。これにより、管理者端末3は翻訳文の入力を受け付ける。管理者端末3は、入力された翻訳文に係るデータをサーバ1に返信する。
サーバ1の制御部11は、当該データを管理者端末3から受信することで、対訳文を受け付ける。そして制御部11は、端末2から置換可能でない旨の応答があった入力文と、管理者端末3を介して入力された翻訳文に基づき、文章の収集を行う。具体的には、制御部11は実施の形態1と同様に、ネットワークNを介して第1言語及び第2言語の文章を収集する。すなわち、制御部11は疑問文と置換可能でない文章を原文とし、管理者端末3から入力された翻訳文に基づきインターネットを介した文章収集を行う。制御部11は、新たに収集した第1言語及び第2言語の文章を夫々対応付けて、文例DB141に記憶する。これにより、制御部11は新たな文章表現について言語学習を行うことができる。
図16は、実施の形態3に係る情報処理システムが実行する処理手順の一例を示すフローチャートである。ステップS43で受け付けた文章が文例DB141に記憶されている文章と置換可能でないと判定し(S57:NO)、文章の再入力を要求する処理を実行した後(ステップS59)、サーバ1の制御部11は以下の処理を実行する。
制御部11は、ステップS50で生成した疑問文と置換可能でないと判定された入力文を、一時的に記憶部12に記憶する(ステップS301)。すなわち制御部11は、ステップS43で入力を受け付けた文章のうち、既存の文例と非類似であると判定され、置換可能でもないと判定された文章を記憶しておく。
制御部11は、ステップS50で生成した疑問文と置換可能でないと判定された入力文を、一時的に記憶部12に記憶する(ステップS301)。すなわち制御部11は、ステップS43で入力を受け付けた文章のうち、既存の文例と非類似であると判定され、置換可能でもないと判定された文章を記憶しておく。
制御部11は、記憶部12に記憶した文章について、当該文章の対訳である翻訳文の入力を管理者端末3に要求する(ステップS302)。例えば制御部11は、記憶部12に記憶してある文章について、当該文章の翻訳文を入力すべき旨の要求信号を生成し、定期的に管理者端末3に送信する。管理者端末3は、当該要求信号を受信する(ステップS303)。要求信号を受信した場合、例えば管理者端末3は、ステップS57で置換可能でないと判定された文章を表示画面に表示し、当該文章の翻訳文の入力を管理者に促す。管理者端末3は、管理者による翻訳文の入力を受け付ける(ステップS304)。管理者端末3は、入力された翻訳文に係るデータをサーバ1に送信する(ステップS305)。
サーバ1の制御部11は、管理者端末3から当該データを受信することで、翻訳文の入力を受け付ける(ステップS306)。そして制御部11は、処理をステップS12に移行する。すなわち制御部11は、ステップS302で記憶しておいた文章と、ステップS306で受け付けた翻訳文とに基づき、インターネットを介した文章収集を行う。これにより、制御部11は、置換不可能と判定された文章を基に新たな表現に係る文章を収集し、文例DB141に記憶する。
なお、上記でサーバ1は、既存の文例と置換不可能な文章について管理者端末3から翻訳文の入力を受け付けたが、本実施の形態はこれに限定されるものではない。例えばサーバ1は、既存の機械翻訳に係るプログラムを実行して翻訳文を自動生成し、翻訳文に基づいて文章収集を行ってもよい。また、例えばサーバ1は、置換不可能であると判定された文章について、端末2を介して翻訳文の入力をユーザに促してもよい。このように、翻訳文の取得態様は特に限定されない。
以上より、本実施の形態3によれば、置換可能でないと判定された文章に基づき、未収集の文章表現について言語学習を行うことができる。
(実施の形態4)
実施の形態2では、受付回数に応じて入力文の信頼度Rを計算し、計算した信頼度Rの大小に応じて入力文を新たな文例として文例DB141に追加する形態について述べた。本実施の形態では、文例DB141に追加された各文例の信頼度Rに基づき、入力文と文例との類似度を計算する形態について述べる。
図17は、実施の形態4に係る類似度の計算処理を説明するための説明図である。なお、以下の説明では、サーバ1は実施の形態2に係る処理を実行することで各文例の信頼度Rを計算し、文例DB141(図12参照)に記憶してあるものとして説明する。
実施の形態2では、受付回数に応じて入力文の信頼度Rを計算し、計算した信頼度Rの大小に応じて入力文を新たな文例として文例DB141に追加する形態について述べた。本実施の形態では、文例DB141に追加された各文例の信頼度Rに基づき、入力文と文例との類似度を計算する形態について述べる。
図17は、実施の形態4に係る類似度の計算処理を説明するための説明図である。なお、以下の説明では、サーバ1は実施の形態2に係る処理を実行することで各文例の信頼度Rを計算し、文例DB141(図12参照)に記憶してあるものとして説明する。
本実施の形態に係るサーバ1の制御部11は、入力文と各文例との類似度を計算するにあたり、文例DB141に記憶した信頼度Rに基づき類似度を計算する。具体的には図17上段に示すように、制御部11はまず、実施の形態1と同様に入力文と各文例との類似度を計算する。すなわち制御部11は、入力文及び文例に含まれる各要素の共通性に基づき、類似度を計算する。
さらに制御部11は、各文例の信頼度Rを参照し、新たな類似度を計算する。具体的には図17中段に示すように、制御部11は、計算した各文例の類似度に信頼度Rを乗算することで、新たな類似度を計算する。これにより、制御部11は信頼度Rの大小を類似度に反映させて計算を行う。すなわち、本実施の形態では、信頼度Rが高い文例ほど入力文と最も類似する文章と判断される可能性が高まる。
また、制御部11は、上記で計算した各文例の類似度の大小に応じて、信頼度Rを更新する。具体的に制御部11は、上記の計算方法により類似度を計算した各文例のうち、最も類似度が高い文例の信頼度Rを引き上げるように更新を行う。例えば図17中段において波線で示す、類似度が最大の文例について信頼度Rを更新する場合を考える。この場合、例えば制御部11は、文例DB141に記憶してある受付回数kに1を加算し、新たな回数k’=k+1を算出する。図17下段に示す例の場合、制御部11は、当初の回数k=10に1を加算してk’=11を算出する。制御部11は、算出したk’を式(1)に代入し、新たな信頼度R’を計算する。図17下段に示す例の場合、制御部11は、k’=11を用いて信頼度R’=1−1/11=0.91を算出する。実施の形態2でも述べたように、信頼度Rは、回数kが大きくなるほど値が大きくなる。従って、制御部11は回数kをインクリメントした上で新たな信頼度R’を計算することにより、従前の信頼度Rの値を引き上げる。
制御部11は、類似度を計算する毎に上記の処理を繰り返すことにより、信頼度Rを更新していく。上述の如く、信頼度Rが高い文例ほど、入力文と最も類似する文章であると判断される可能性が高い。従って、類似度が最も高く計算された文例は、次回の処理においても類似度が高く計算される。これにより、文例DB141に記憶された複数の文例は、信頼度Rが高い文例と同様の意味を持つ文例群であるものとして集約されていく。以上より、同様の意味を持つ多様な表現の文例が一の文例に集約されるため、サーバ1は、より適切な文例に基づいて処理を行うことができる。
図18は、実施の形態4に係る情報処理システムが実行する処理手順の一例を示すフローチャートである。入力文と同一カテゴリーの文例を文例DB141から抽出した後(ステップS45)、サーバ1の制御部11は、以下の処理を実行する。なお、制御部11は実施の形態2に係るステップS201〜S206の処理により、各文例の信頼度Rを文例DB141に記憶してあるものとする。
制御部11は、抽出した各文例の信頼度Rに基づき、入力文と各文例との類似度を計算する(ステップS301)。具体的に制御部11は、実施の形態1と同じく、コサイン類似度に係る推定法を用いて入力文と各文例との類似度を計算する。さらに制御部11は、各文例の信頼度Rを文例DB141から読み出す。制御部11は、各文例について計算した類似度に信頼度Rを乗算し、新たな類似度を計算する。制御部11は、処理をステップS47に移行する。
制御部11は、抽出した各文例の信頼度Rに基づき、入力文と各文例との類似度を計算する(ステップS301)。具体的に制御部11は、実施の形態1と同じく、コサイン類似度に係る推定法を用いて入力文と各文例との類似度を計算する。さらに制御部11は、各文例の信頼度Rを文例DB141から読み出す。制御部11は、各文例について計算した類似度に信頼度Rを乗算し、新たな類似度を計算する。制御部11は、処理をステップS47に移行する。
ステップS301で計算した各類似度のうち、最も高い類似度が閾値以上であると判定し(S47:YES)、入力文に対する回答を生成して端末2に出力した後(ステップS48、S49)、制御部11は以下の処理を実行する。制御部11は、ステップS301で計算した各文例の類似度の大小に応じて、信頼度Rを更新する処理を行う(ステップS302)。具体的に制御部11は、最も類似度が高い文例の信頼度Rを更新する。例えば制御部11は、文例DB141に記憶してある当該文例の受付回数kに1を加算し、新たな受付回数k’=k+1を算出する。制御部11は、算出した受付回数k’を式(1)に代入し、新たな信頼度R’=1−1/k’を計算する。制御部11は、計算した回数k’、信頼度R’を新たに文例DB141に記憶し、一連の処理を終了する。
なお、上記でサーバ1は、最も類似度が高い文例の信頼度Rを引き上げるように更新を行ったが、本実施の形態はこれに限定されるものではない。例えばサーバ1は、最も類似度が高い文例を除く、その他の文例の信頼度Rを引き下げるように更新を行ってもよい。これにより、類似度が高い文例の信頼度Rが相対的に引き上げられ、上記と同様の効果を奏する。
以上より、本実施の形態4によれば、信頼度Rに基づき類似度を計算するとともに、信頼度Rを更新することで、同様の意味を持つ多様な表現の文章が一の文例に集約され、より適切な文例に基づいて処理を行うことができる。
(実施の形態5)
図19は、上述した形態のサーバ1の動作を示す機能ブロック図である。制御部11がプログラムP1を実行することにより、サーバ1は以下のように動作する。受付部191は、文章の入力を受け付ける。計算部192は、複数の文例を記憶する記憶部を参照し、前記受付部が受け付けた前記文章との類似度を計算する。出力部193は、前記計算部192により計算した各類似度の最も高い類似度に応じた出力処理を行う。
図19は、上述した形態のサーバ1の動作を示す機能ブロック図である。制御部11がプログラムP1を実行することにより、サーバ1は以下のように動作する。受付部191は、文章の入力を受け付ける。計算部192は、複数の文例を記憶する記憶部を参照し、前記受付部が受け付けた前記文章との類似度を計算する。出力部193は、前記計算部192により計算した各類似度の最も高い類似度に応じた出力処理を行う。
本実施の形態5は以上の如きであり、その他は実施の形態1から4と同様であるので、対応する部分には同一の符号を付してその詳細な説明を省略する。
今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
1 サーバ(情報処理装置)
11 制御部
12 記憶部
P1 プログラム
13 通信部
14 大容量記憶装置
141 文例DB
2 端末(端末装置)
21 制御部
22 記憶部
P2 プログラム
23 通信部
24 表示部
25 入力部
26 音声出力部
27 音声入力部
3 管理者端末
11 制御部
12 記憶部
P1 プログラム
13 通信部
14 大容量記憶装置
141 文例DB
2 端末(端末装置)
21 制御部
22 記憶部
P2 プログラム
23 通信部
24 表示部
25 入力部
26 音声出力部
27 音声入力部
3 管理者端末
Claims (10)
- 文章の入力を受け付ける受付部と、
複数の文例を記憶する記憶部を参照し、前記受付部が受け付けた前記文章との類似度を計算する計算部と、
前記計算部により計算した各類似度の最も高い類似度に応じた出力処理を行う出力部と
を備えることを特徴とする情報処理装置。 - 前記出力部は、前記文例から疑問文を生成し、前記疑問文が前記文章と置換可能か否かを問い合わせる
ことを特徴とする請求項1に記載の情報処理装置。 - 前記記憶部は、前記疑問文を生成するための定型文を記憶している
ことを特徴とする請求項2に記載の情報処理装置。 - 前記出力部からの問い合わせに対する応答を受け付ける第2受付部を備え、
前記文章と置換可能でない旨の応答を前記第2受付部が受け付けた場合、前記受付部は、前記文章の再入力を受け付ける
ことを特徴とする請求項2又は請求項3に記載の情報処理装置。 - 前記文章と置換可能である旨の応答を前記第2受付部が受け付けた場合、前記記憶部は、前記文章を前記文例と対応付けて記憶する
ことを特徴とする請求項4に記載の情報処理装置。 - 再入力された前記文章と置換可能である旨の応答を前記第2受付部が受け付けた場合、前記記憶部は、再入力前に前記受付部が受け付けた前記文章を記憶する
ことを特徴とする請求項4又は請求項5に記載の情報処理装置。 - 前記受付部が前記文章を受け付けた受付回数に応じて、前記文章の信頼度を計算する信頼度計算部を備える
ことを特徴とする請求項4〜請求項6のいずれか1項に記載の情報処理装置。 - 前記計算部は、前記信頼度計算部が計算した前記信頼度に基づき前記文章と前記文例との類似度を計算し、
前記計算部が計算した各類似度の大小に応じて、前記信頼度を更新する更新部を備える
ことを特徴とする請求項7に記載の情報処理装置。 - 前記記憶部は、前記文例に含まれる要素に応じて、前記文例をカテゴリー別に記憶し、
前記受付部が受け付けた文章に含まれる要素に応じて、該文章のカテゴリーを判別する判別部を備え、
前記計算部は、前記判別部が判別した前記文章のカテゴリーと同一のカテゴリーに属する前記文例について類似度を計算する
ことを特徴とする請求項1〜請求項8のいずれか1項に記載の情報処理装置。 - 文章の入力を受け付け、
受け付けた文章を外部装置に送信し、
送信した前記文章と、記憶部に記憶されている文例との類似度に応じて前記外部装置から送信される問い合わせを出力し、
出力した前記問い合わせに対する応答を受け付け、
受け付けた応答を前記外部装置に送信する
処理をコンピュータに実行させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016194393A JP2018055622A (ja) | 2016-09-30 | 2016-09-30 | 情報処理装置及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016194393A JP2018055622A (ja) | 2016-09-30 | 2016-09-30 | 情報処理装置及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018055622A true JP2018055622A (ja) | 2018-04-05 |
Family
ID=61835869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016194393A Pending JP2018055622A (ja) | 2016-09-30 | 2016-09-30 | 情報処理装置及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018055622A (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002251412A (ja) * | 2001-02-22 | 2002-09-06 | Canon Inc | 文書検索装置および方法ならびに記憶媒体 |
JP2005043461A (ja) * | 2003-07-23 | 2005-02-17 | Canon Inc | 音声認識方法及び音声認識装置 |
US20110153309A1 (en) * | 2009-12-21 | 2011-06-23 | Electronics And Telecommunications Research Institute | Automatic interpretation apparatus and method using utterance similarity measure |
-
2016
- 2016-09-30 JP JP2016194393A patent/JP2018055622A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002251412A (ja) * | 2001-02-22 | 2002-09-06 | Canon Inc | 文書検索装置および方法ならびに記憶媒体 |
JP2005043461A (ja) * | 2003-07-23 | 2005-02-17 | Canon Inc | 音声認識方法及び音声認識装置 |
US20110153309A1 (en) * | 2009-12-21 | 2011-06-23 | Electronics And Telecommunications Research Institute | Automatic interpretation apparatus and method using utterance similarity measure |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108829822B (zh) | 媒体内容的推荐方法和装置、存储介质、电子装置 | |
US9633309B2 (en) | Displaying quality of question being asked a question answering system | |
US9239875B2 (en) | Method for disambiguated features in unstructured text | |
US9805718B2 (en) | Clarifying natural language input using targeted questions | |
US10810215B2 (en) | Supporting evidence retrieval for complex answers | |
JP6655788B2 (ja) | 対訳コーパス作成方法、該装置および該プログラムならびに機械翻訳システム | |
CN112417102B (zh) | 一种语音查询方法、装置、服务器和可读存储介质 | |
KR102491172B1 (ko) | 자연어 질의응답 시스템 및 그 학습 방법 | |
KR20160008480A (ko) | 명칭을 강인하게 태깅하는 방법 및 시스템 | |
CN116775847B (zh) | 一种基于知识图谱和大语言模型的问答方法和系统 | |
US20120179694A1 (en) | Method and system for enhancing a search request | |
US20220405484A1 (en) | Methods for Reinforcement Document Transformer for Multimodal Conversations and Devices Thereof | |
JP7335300B2 (ja) | 知識事前訓練モデルの訓練方法、装置及び電子機器 | |
US20210279622A1 (en) | Learning with limited supervision for question-answering with light-weight markov models | |
US20210056127A1 (en) | Method for multi-modal retrieval and clustering using deep cca and active pairwise queries | |
CN112581327B (zh) | 基于知识图谱的法律推荐方法、装置和电子设备 | |
CN114091425A (zh) | 医学实体对齐方法及装置 | |
CN116541493A (zh) | 基于意图识别的交互应答方法、装置、设备、存储介质 | |
Wärnestål | User evaluation of a conversational recommender system | |
CN117271736A (zh) | 一种问答对的生成方法和系统、电子设备及存储介质 | |
US20220147719A1 (en) | Dialogue management | |
JP6846666B2 (ja) | 翻訳文生成方法、翻訳文生成装置及び翻訳文生成プログラム | |
US20220229990A1 (en) | System and method for lookup source segmentation scoring in a natural language understanding (nlu) framework | |
CN113742445B (zh) | 文本识别样本获取、文本识别方法及装置 | |
US20210311985A1 (en) | Method and apparatus for image processing, electronic device, and computer readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190729 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200417 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200512 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20201117 |