(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-08
(45)【発行日】2025-01-17
(54)【発明の名称】応答システム、応答方法、および応答プログラム
(51)【国際特許分類】
G06F 16/90 20190101AFI20250109BHJP
【FI】
G06F16/90 100
(21)【出願番号】P 2021109960
(22)【出願日】2021-07-01
【審査請求日】2023-10-11
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】中西 亮輔
(72)【発明者】
【氏名】菅田 光留
【審査官】早川 学
(56)【参考文献】
【文献】特開2003-242086(JP,A)
【文献】特開2020-154668(JP,A)
【文献】特開2007-102104(JP,A)
【文献】特開2019-197498(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
ユーザの質問文を取得する取得手段と、
取得された前記質問文に応じて、予め記憶手段に記憶された応答文を選択する応答文選択手段と、
選択された前記応答文を、前記質問文に応じて変換する応答文変換手段と、
変換された前記応答文を出力する出力手段と、
を備え、
前記応答文変換手段は、
選択された前記応答文に含まれる単語と、前記質問文に含まれる単語との類似度に基づき、前記応答文に含まれる単語を、前記質問文に含まれる単語に変換
し、
前記応答文変換手段は、
選択された前記応答文に含まれる単語と、前記ユーザの過去の質問文の履歴から抽出された単語との類似度に基づき、前記応答文に含まれる単語をさらに変換する、
応答システム。
【請求項2】
前記応答システムは、
変換された前記応答文の欠陥の有無を判定する判定手段、
をさらに備える請求項1に記載の応答システム。
【請求項3】
前記応答文変換手段は、
前記履歴に含まれる複数の単語の単語ベクトルを平均した語彙ベクトルを生成し、前記語彙ベクトルとの類似度が高い単語を前記履歴から抽出する、
請求項
1に記載の応答システム。
【請求項4】
前記応答文変換手段は、
ユーザの質問文に含まれる単語の中から、応答文に含まれる各単語と最も類似度が高い単語を決定し、
前記類似度がしきい値以上である場合、前記各単語を、決定した前記単語に変換する、
請求項1から
3のいずれか1項に記載の応答システム。
【請求項5】
コンピュータが、
ユーザの質問文を取得するステップと、
取得された前記質問文に応じて、予め記憶手段に記憶された応答文を選択するステップと、
選択された前記応答文を、前記質問文に応じて変換するステップと、
変換された前記応答文を出力するステップと、
を含み、
前記変換するステップは、
選択された前記応答文に含まれる単語と、前記質問文に含まれる単語との類似度に基づき、前記応答文に含まれる単語を、前記質問文に含まれる単語に変換
し、
前記変換するステップは、
選択された前記応答文に含まれる単語と、前記ユーザの過去の質問文の履歴から抽出された単語との類似度に基づき、前記応答文に含まれる単語をさらに変換する、
応答方法。
【請求項6】
コンピュータに、
応答方法を実行させる応答プログラムであって、
前記応答方法は、
ユーザの質問文を取得するステップと、
取得された前記質問文に応じて、予め記憶手段に記憶された応答文を選択するステップと、
選択された前記応答文を、前記質問文に応じて変換するステップと、
変換された前記応答文を出力するステップと、
を含み、
前記変換するステップは、
選択された前記応答文に含まれる単語と、前記質問文に含まれる単語との類似度に基づき、前記応答文に含まれる単語を、前記質問文に含まれる単語に変換
し、
前記変換するステップは、
選択された前記応答文に含まれる単語と、前記ユーザの過去の質問文の履歴から抽出された単語との類似度に基づき、前記応答文に含まれる単語をさらに変換する、
応答プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、応答システム、応答方法、および応答プログラムに関する。
【背景技術】
【0002】
問い合わせ対応を効率化することを目的としてFAQ(Frequently Asked Question)チャットボットシステムが導入されている。特許文献1は、FAQチャットボットシステムの応答精度を向上させる方法として、事前にユーザの言い回しを学習させ、入力パターンを自動で増やす技術を開示している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、当該技術においては、応答文自体は予め定められた文章が出力されるため、正しい応答がされている場合にも、言い回しの違いによりユーザが応答を見落としてしまう可能性があるという問題があった。
【0005】
本開示は、このような問題を解決するためになされたものであり、ユーザの見落としを減らすことが可能な応答システム、応答方法、および応答プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本実施の形態における応答システムは、
ユーザの質問文を取得する取得手段と、
取得された前記質問文に応じて、予め記憶手段に記憶された応答文を選択する応答文選択手段と、
選択された前記応答文を、前記質問文に応じて変換する応答文変換手段と、
変換された前記応答文を出力する出力手段と、
を備え、
前記応答文変換手段は、
選択された前記応答文に含まれる単語と、前記質問文に含まれる単語との類似度に基づき、前記応答文に含まれる単語を、前記質問文に含まれる単語に変換する。
【0007】
本実施の形態における応答方法は、
コンピュータが、
ユーザの質問文を取得するステップと、
取得された前記質問文に応じて、予め記憶手段に記憶された応答文を選択するステップと、
選択された前記応答文を、前記質問文に応じて変換するステップと、
変換された前記応答文を出力するステップと、
を含み、
前記変換するステップは、
選択された前記応答文に含まれる単語と、前記質問文に含まれる単語との類似度に基づき、前記応答文に含まれる単語を、前記質問文に含まれる単語に変換する。
【0008】
本実施の形態における応答プログラムは、
コンピュータに、
応答方法を実行させる応答プログラムであって、
前記応答方法は、
ユーザの質問文を取得するステップと、
取得された前記質問文に応じて、予め記憶手段に記憶された応答文を選択するステップと、
選択された前記応答文を、前記質問文に応じて変換するステップと、
変換された前記応答文を出力するステップと、
を含み、
前記変換するステップは、
選択された前記応答文に含まれる単語と、前記質問文に含まれる単語との類似度に基づき、前記応答文に含まれる単語を、前記質問文に含まれる単語に変換する。
【発明の効果】
【0009】
本開示により、ユーザの見落としを減らすことが可能な応答システム、応答方法、および応答プログラムを提供できる。
【図面の簡単な説明】
【0010】
【
図1】実施形態1にかかる応答システムの構成を示すブロック図である。
【
図2】実施形態1にかかる応答システムが、質問文を解析する動作を示すフローチャートである。
【
図3】実施形態1にかかる応答システムが、応答文を変換する動作を模式的に示す概略図である。
【
図4】実施形態1にかかる応答システムが、質問文の履歴に基づき応答文を変換する動作を模式的に示す概略図である。
【
図5】実施形態1の変形例にかかる応答システムの構成を示すブロック図である。
【
図6】実施形態1の変形例にかかる応答システムが、文の欠陥を判定する動作を模式的に示す概略図である。
【発明を実施するための形態】
【0011】
実施形態1
以下、発明の実施の形態を通じて本発明を説明するが、特許請求の範囲に係る発明を以下の実施形態に限定するものではない。また、実施形態で説明する構成の全てが課題を解決するための手段として必須であるとは限らない。
【0012】
以下、図面を参照して実施形態にかかる応答システムについて説明する。実施形態1にかかる応答システムは、ユーザからの質問文に対して応答文を出力するFAQチャットボットシステムである。FAQチャットボットシステムとは、質問文と回答文のペアからなるDB(Data Base)を検索し、適切な応答文を提示するシステムである。応答文には、回答文のみが含まれていてもよく、質問文と回答文の両方が含まれていてもよい。質問文と回答文のペアは、事前に管理者や運用者によって作成されているものとする。
【0013】
図1は、実施形態1にかかる応答システム1000の構成を示すブロック図である。応答システム1000は、端末100およびサーバ200を備える。端末100とサーバ200は、ネットワークNを介して互いに接続されている。ネットワークNは、有線であっても無線であってもよい。
【0014】
なお、後述するサーバ200の各機能は、端末100側に備えられていてもよい。サーバ200を含まない、端末100内で処理が完結したシステムも、実施形態1にかかる応答システムには含まれ得る。
【0015】
端末100は、応答システム1000を利用するユーザが操作する端末である。端末100は、PC(Personal Computer)やスマートフォンであってもよい。また、端末100は、コミュニケーションロボット等のロボットであってもよい。
【0016】
端末100は、ユーザが質問文を入力するための入力装置110と、ディスプレイ等の表示装置120と、制御部130とを備えている。入力装置110は、テキスト入力を行うための装置(例えば、マウス、キーボード、タッチパネル)であってもよく、音声入力を行うための装置(例えば、マイク)であってもよい。表示装置120には、ユーザの質問文に対する応答文が表示される。なお、端末100は、ユーザの質問文に対応する応答文を音声出力してもよい。このような場合、端末100は、表示装置120を備えていなくてもよい。制御部130は、プロセッサやメモリなどを備えている。制御部130は、入力装置110に入力された質問文を取得してサーバ200に送信し、サーバ200が出力した応答文を表示装置120に表示させる。
【0017】
サーバ200は、記憶部210および制御部220を備えている。記憶部210は、ハードディスク、フラッシュメモリ等の記憶装置である。記憶部210は、質問文と回答文のペアを複数記憶するFAQ-DB211を記憶している。記憶部210は、エージェント情報記憶部とも称される。質問文および回答文は、それぞれ事前にベクトルで表現されているものとする。FAQ-DB211は、例えば、質問文のテキストと、回答文のテキストと、質問文に含まれる単語の各々の単語ベクトルと、回答文に含まれる単語の各々の単語ベクトルとを記憶している。
【0018】
記憶部210は、質問文の解析等に用いられる単語ベクトル辞書(不図示)をさらに記憶していてもよい。また、記憶部210は、ユーザの質問文に応答するための応答プログラム(不図示)をさらに記憶している。
【0019】
制御部220は、プロセッサやメモリを備えている。プロセッサが応答プログラムを実行することで、制御部220は、取得部221、解析部222、応答文選択部223、応答文変換部224、および出力部225として動作する。
【0020】
取得部221は、端末100に入力されたユーザの質問文を取得するモジュールである。取得部221は、ユーザの発話を取得するための発話取得部とも称される。ユーザの質問文は、例えばチャットインタフェースを介して入力される。質問文は、音声入力されていてもよく、テキストで入力されていてもよい。ただし、音声インタフェースの場合、音声認識を行って、入力された音声情報をテキスト化する処理を行う必要がある。
【0021】
解析部222は、取得した質問文を解析し、FAQ-DB211が記憶する複数の質問文の各々のスコアを算出するためのモジュールである。スコアは、後述する応答文選択部223が応答文を選択する際に用いられる。解析部222の動作の詳細については後述する。
【0022】
応答文選択部223は、取得された質問文に応じて、FAQ-DB211に予め記憶された応答文を選択する。換言すると、応答文選択部223は、解析部222で算出されたスコアに応じて、各エージェントの出力する応答文を選択するモジュールである。応答文選択部223は、解析部222によって算出されたスコアをもとに、スコアが最大となる質問文と、その回答文とを、応答文として選択してもよい。応答文選択部223は、複数の応答文を選択し、各々の優先順位を決定することもできる。
【0023】
応答文変換部224は、応答文選択部223で選択された応答文に含まれる単語を、取得部221で取得した質問文に含まれる単語に置き換えるためのモジュールである。なお、応答文変換部224の動作の詳細については後述する。
【0024】
出力部225は、変換された応答文を、端末100に出力する手段である。出力部225は、画面表示部とも称される。換言すると、出力部225は、各エージェントの応答文を、端末100の表示装置120に表示させるためのモジュールである。出力部225は、応答文とともに、ユーザの質問文を出力してもよい。上述の通り、応答文には、回答文のみが含まれていてもよく、質問文と回答文の両方が含まれていてもよい。出力部225は、複数の応答文を、各々の優先順位に応じて表示させてもよい。また、出力部225は、端末100のスピーカ(不図示)に、応答文を音声出力させてもよい。
【0025】
上述の通り、制御部220の機能の一部または全部は、端末100側に備えられていてもよい。また、記憶部210も、端末100側に備えられていてもよい。したがって、応答システム1000は、サーバ200を備えていなくてもよい。
【0026】
次に、
図2を参照して、解析部222の動作について詳細に説明する。解析部222が、テキスト化された質問文を受け取っているものとする。まず、解析部222は、質問文をテキスト整形する(ステップS101)。具体的には、解析部222は、質問文に含まれる文字の全角/半角を統一し、特定の単語の置換を行う。
【0027】
次に、解析部222は、整形した質問文を複数の単語に分割する(ステップS102)。単語分割は、ビタビアルゴリズムやLSTM(Long short-term memory)等の公知技術で実装される。
【0028】
次に、解析部222は、事前に作成された単語ベクトル辞書212を用いて、分割された各単語を単語ベクトルに変換する(ステップS103)。これにより、解析部222は、質問文に含まれる単語の単語ベクトルを取得する。単語ベクトル辞書212は、CBOW(Continuous Bag Of Words)やSkip-gram、またはこれらの発展形であるGloVe(Gloval Vectors)等の公知技術で実装されてもよい。なお、解析部222は、全ての品詞をベクトルに変換する必要はなく、例えば名詞や動詞のみをベクトルに変換してもよい。
【0029】
次に、解析部222は、単語ベクトルのリストから、質問文の文ベクトルを算出する(ステップS104)。文ベクトルの算出は、単語ベクトルの平均をとる方法や、単語ベクトルをもとにLSTMなどのDNN(Deep Neural Network)を用いる方法により行われてもよい。
【0030】
次に、解析部222は、FAQ-DB211に記憶された質問文の文ベクトルと、ユーザの質問文の文ベクトルとの類似度を表すスコアを算出する(ステップS105)。FAQ-DB211には、質問文2111のテキスト2111aと、質問文2111に含まれる1以上の単語の各々の単語ベクトル2111bとが記憶されている。また、FAQ-DB211には、回答文2112のテキスト2112aと、回答文2112に含まれる1以上の単語の各々の単語ベクトル2112bとが記憶されている。したがって、記憶された質問文2111の文ベクトルは、単語ベクトル2111bをもとに、ユーザの質問文の文ベクトルと同様の方法で計算できる。なお、計算された文ベクトルが、予めFAQ-DB211に記憶されていてもよい。
【0031】
スコアは、例えば、文ベクトル間のコサイン距離を計算することによって算出される。また、スコアは、SVM(Support Vector Machine)やCNN(Convolutional Neural Network)等の機械学習の分類モデルを用いて算出されてもよい。スコアは、機械学習の分類モデルにおける分類確率であってもよい。
【0032】
その後、解析部222は、算出されたスコアと、対応する応答文の情報とを次の処理へ引き渡す。算出されたスコアは、応答文選択部223が応答文を選択する際に使用される。
【0033】
次に、
図1の応答文変換部224の動作について詳細に説明する。応答文変換部224は、解析部222で抽出した各単語の単語ベクトルを用いて、ユーザの質問文に含まれる単語と、応答文選択部223で選択された応答文に含まれる単語との類似度を算出する。具体的には、応答文変換部224は、応答文に含まれる各単語と、ユーザの質問文に含まれる各単語との類似度を算出する。単語間の類似度は、単語ベクトル間のコサイン距離であってもよい。
【0034】
上述の通り、応答文には、質問文と回答文の両方が含まれていてもよい。したがって、応答文変換部224は、選択された回答文に含まれる単語とユーザの質問文に含まれる単語との類似度を算出し、かつ、選択された質問文に含まれる単語とユーザの質問文に含まれる単語との類似度を算出してもよい。応答文変換部224は、全ての品詞を変換対象とする必要はなく、名詞および動詞のみを変換対象としてもよい。ここで、形容詞等の品詞が、さらに変換対象とされてもよい。
【0035】
次に、応答文変換部224は、ユーザの質問文に含まれる単語の中から、応答文に含まれる各単語と最も類似度の高い単語を決定する。換言すると、応答文変換部224は、応答文に含まれる単語と、当該単語との類似度が最大の単語との組合せを抽出する。そして、応答文変換部224は、上記類似度が閾値以上であるか否かを判定する。応答文変換部224は、類似度が閾値以上の場合、応答文に含まれる上記各単語を、決定された単語に変換する。
【0036】
次に、
図3を参照して、応答文変換部224の動作について具体的に説明する。ここで、ユーザの質問文が、「操作マニュアルはどこ?」である場合について説明する。応答文選択部223が、「手順書はこちらです」という応答文を選択済みであるものとする。
【0037】
このような場合、ユーザの質問文は、「操作」、「マニュアル」、「は」、「どこ」、および「?」に単語分割される。名詞および動詞を変換候補とする場合、名詞である「操作」、「マニュアル」、および「どこ」が変換候補となる。そして、選択された応答文は、「手順書」、「は」、「こちら」、および「です」に単語分割される。応答文では、名詞である「手順書」および「こちら」が変換候補となる。
【0038】
応答文変換部224は、応答文に含まれる変換候補「手順書」および「こちら」と、ユーザの質問文に含まれる変換候補「操作」、「マニュアル」、および「どこ」との間で類似度を算出する。ここで、「操作」と「手順書」との類似度が0.6であり、「マニュアル」と「手順書」との類似度が0.9であり、「どこ」と「手順書」との類似度が0.2であるものとする。そして、「操作」と「こちら」との類似度が0.2であり、「マニュアル」と「こちら」との類似度が0.3であり、「どこ」と「こちら」との類似度が0.6であるものとする。
【0039】
このような場合、応答文変換部224は、応答文の「手順書」との類似度が最大である単語として、「マニュアル」を決定する。そして、応答文変換部224は、「手順書」と「マニュアル」との類似度が0.9であり、しきい値(例えば、0.8)以上であると判定する。したがって、応答文変換部224は、応答文の「手順書」を、ユーザの質問文の「マニュアル」に変換(置換)する。
【0040】
また、応答文変換部224は、応答文の「こちら」との類似度が最大である単語として、「どこ」を決定する。そして、応答文変換部224は、「こちら」と「どこ」との類似度が0.6であり、しきい値(例えば、0.8)を超えていないと判定する。したがって、応答文変換部224は、応答文の「こちら」を、ユーザの質問文の「どこ」に変換(置換)しない。
【0041】
これにより、応答文変換部224は、選択された応答文である「手順書はこちらです」を、「マニュアルはこちらです」に変換する。応答文には、ユーザが質問時に入力した「マニュアル」が含まれているので、ユーザの見落としを減らすことができる。
【0042】
応答文変換部224は、さらに、ユーザの過去の質問履歴を加味して応答文を変換してもよい。つまり、応答文変換部224は、選択された応答文に含まれる単語と、ユーザの過去の質問文の履歴から抽出された単語との類似度に基づき、応答文に含まれる単語をさらに変換してもよい。応答文に含まれる単語を、ユーザが普段使用している単語に変換することにより、ユーザの見落としをさらに減らすことができる。
【0043】
応答文変換部224は、履歴に含まれている単語のリストを作成し、リストに含まれている各単語と、選択された応答文に含まれる各単語との類似度を算出し、類似度に基づいて単語の変換を行う。ここで、質問文の履歴に多くの単語が含まれている場合には、類似度の計算が困難となる可能性がある。応答文変換部224は、このような場合、リストに含まれている単語のうちの一部を抽出して変換候補としてもよい。
【0044】
図4を参照して、ユーザの過去の質問履歴を利用する方法について説明する。複数のユーザが、応答システム1000を日々利用しており、ユーザごとの質問文の履歴が蓄積されているものとする(ステップS201)。応答文変換部224は、質問文の履歴に含まれている単語(例えば、名詞と動詞)を抽出したリストを作成する(ステップS202)。例えば、ユーザAのリストには、「操作」、「マニュアル」、「どこ」、および「URL」を含む多くの単語が含まれている。
【0045】
応答システム1000は、ユーザAのリストに含まれる単語と、ユーザAに対する応答文に含まれる単語との類似度を算出し、類似度に基づき応答文の単語を変換できる。リストに含まれている単語が多い場合には、ステップS203に進んでもよい。
【0046】
応答文変換部224は、リストに基づき語彙ベクトルを生成する(ステップS203)。語彙ベクトルは、単語ベクトル辞書を参照して、リストに含まれている複数の単語の単語ベクトルの平均(例えば、単純平均)をとることにより算出される。そして、応答文変換部224は、リストに含まれている単語のうち、語彙ベクトルとの類似度(例えば、コサイン距離)が高いN個(Nは1以上の整数)の単語を抽出する(ステップS204)。なお、語彙ベクトルとの類似度が高い単語とは、単語ベクトルと語彙ベクトルとの類似度が高い単語を意味している。例えば、ユーザAのリストからは、「オペレーション」、「マニュアル」、「コントロール」、および「アドレス」を含むN個の単語が抽出されている。
【0047】
これにより、語彙ベクトルの周辺にある単語がリストから抽出される。語彙ベクトルは、リストに含まれる複数の単語の平均をとったベクトルである。したがって、語彙ベクトルの周辺の単語は、ユーザが普段使用している単語であると考えられる。なお、各単語の使用頻度に基づいて、単語の抽出が行われてもよい。応答システム1000は、抽出されたN個の単語を用いて応答文を変換できる。
【0048】
実施形態1にかかる応答システムは、応答文に含まれている単語を、質問文で使用されている単語に変換する。実施形態1にかかる応答システムは、質問文に含まれる単語を用いることで、言い回しの違いによるユーザの見落としを減らすことができる。また、実施形態1にかかる応答システムは、ユーザの認知負荷を軽減できる。
【0049】
応答文を確認するとき、ユーザの記憶には、ユーザが入力した質問文が強く残っている。したがって、質問文に含まれる単語を用いて応答文を変換することは、ユーザの見落としを減らす上で有利であると考えられる。
【0050】
実施形態1にかかる応答システムは、ユーザの言い回しに合わせた応答文を動的に生成する。したがって、言い回しを変えた回答文のテンプレートと、質問文のパターンとを事前に準備しておく必要はない。また、実施形態1にかかる応答システムは、ユーザの質問に応じて応答内容を変化させるため、機械的な印象を和らげ、自然な対話インタラクションを実現できる。
【0051】
また、実施形態1にかかる応答システムは、ユーザの質問文の履歴を活用することにより、応答文に含まれる単語をさらに変換することができる。応答文に含まれる単語を、ユーザの特徴に合わせて変換できるため、実施形態1にかかる応答システムは、ユーザの見落としをさらに減らすことができる。
【0052】
変形例1
実施形態1にかかる応答システムは、文法的に成立しない文章を出力する可能性がある。
図3に示した具体例の場合、「こちら」を「どこ」で置換すると、「マニュアルはどこです」という応答文を出力してしまう。これを防ぐため、単語を置換した後に文章の成立性、すなわち文法的な正しさを評価することが考えられる。
【0053】
図5は、変形例にかかる応答システム1000aの構成を示すブロック図である。
図1と
図5とを比較すると、
図5では、サーバ200の制御部220に判定部226が追加されている。判定部226は、応答文変換部224で変換された応答文の欠陥の有無を判定する。
【0054】
応答文変換部224は、変換された応答文を判定部226に出力し、判定結果を受け取る。応答文変換部224は、欠陥が検出された場合、応答文における単語の変換の少なくとも一部を取り消す。例えば、応答文変換部224は、変換された複数の単語のうち、類似度が低いN個(Nは1以上の整数)の単語の変換を取り消してもよい。応答文変換部224は、欠陥が検出されなかった場合、応答文における単語の変換を取り消さず、そのまま出力する。
【0055】
判定部226は、CNNやRNNといったディープラーニングのモデルを用いて応答文の欠陥を検出してもよい。また、判定部226は、隣り合う単語の出現確率を表現するn-gramによって欠陥を検出してもよい。
【0056】
図6は、ディープラーニングのモデルを用いて応答文の欠陥を検出する方法を概略的に示す模式図である。N1~N9は、ニューラルネットワークのノードを表している。N1~N4は入力層のノードを表し、N5~N7は中間層のノードを表し、N8~N9は出力層のノードを表す。N1~N4には、応答文を構成する「マニュアル」、「は」、「こちら」、および「です」が入力されている。N8~N9はそれぞれ、応答文の成立、応答文の不成立に対応している。N1~N9からなるニューラルネットワークは、変換された応答文が成立する確率(以下、成立の確率とも称される)、および変換された応答文が成立しない確率(以下、不成立の確率とも称される)を出力することができる。
【0057】
応答文変換部224は、成立の確率が不成立の確率を超えている場合、応答文における単語の変換を取り消さず、そのまま出力する。一方、応答文変換部224は、成立の確率が不成立の確率以下である場合、単語の変換の少なくとも一部を取り消す処理を行う。
【0058】
次に、実施形態1の変形例にかかる応答システムが奏する効果について説明する。応答文を変換した場合、応答文が文として成立しない可能性がある。実施形態1の変形例にかかる応答システムは、応答文を出力するよりも前に応答文の欠陥を判定し、適切な応答文を出力できる。
【0059】
なお、上述の実施形態では、ハードウェアの構成として説明したが、これに限定されるものではない。本開示は、任意の処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。
【0060】
上述の例において、プログラムは、コンピュータに読み込まれた場合に、実施形態で説明された1又はそれ以上の機能をコンピュータに行わせるための命令群(又はソフトウェアコード)を含む。プログラムは、非一時的なコンピュータ可読媒体又は実体のある記憶媒体に格納されてもよい。限定ではなく例として、コンピュータ可読媒体又は実体のある記憶媒体は、random-access memory(RAM)、read-only memory(ROM)、フラッシュメモリ、solid-state drive(SSD)又はその他のメモリ技術、CD-ROM、digital versatile disc(DVD)、Blu-ray(登録商標)ディスク又はその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又はその他の磁気ストレージデバイスを含む。プログラムは、一時的なコンピュータ可読媒体又は通信媒体上で送信されてもよい。限定ではなく例として、一時的なコンピュータ可読媒体又は通信媒体は、電気的、光学的、音響的、またはその他の形式の伝搬信号を含む。
【0061】
なお、本発明は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【0062】
1000、1000a 応答システム
100 端末
110 入力装置
120 表示装置
130 制御部
200 サーバ
210 記憶部
211 FAQ-DB
2111 質問文
2111a テキスト
2111b 単語ベクトル
2112 回答文
2112a テキスト
2112b 単語ベクトル
212 単語ベクトル辞書
220 制御部
221 取得部
222 解析部
223 応答文選択部
224 応答文変換部
225 出力部
226 判定部
N ネットワーク