(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023159261
(43)【公開日】2023-10-31
(54)【発明の名称】情報処理システム、情報処理方法及びプログラム
(51)【国際特許分類】
G06F 16/90 20190101AFI20231024BHJP
G10L 15/00 20130101ALI20231024BHJP
G06F 16/907 20190101ALI20231024BHJP
【FI】
G06F16/90 100
G10L15/00 200T
G06F16/907
【審査請求】有
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2023132705
(22)【出願日】2023-08-16
(62)【分割の表示】P 2022044800の分割
【原出願日】2022-03-21
(71)【出願人】
【識別番号】398018021
【氏名又は名称】株式会社アドバンスト・メディア
(74)【代理人】
【識別番号】100127384
【弁理士】
【氏名又は名称】坊野 康博
(72)【発明者】
【氏名】鈴木 清幸
(57)【要約】
【課題】問い合わせに対し、より適切な自動応答を行う技術を提供する。
【解決手段】情報処理システム1は、コネクタDB174と、音声認識処理部153と、絞込み処理部155及び統合処理部156と、を備える。コネクタDB174は、想定された問い合わせに関する第1の属性情報を記憶する。コネクタDB174は、想定された問い合わせに対する回答に関する第2の属性情報を記憶する。音声認識処理部153は、問い合わせの内容を取得する。絞込み処理部155及び統合処理部156は、音声認識処理による音声認識結果が有する属性情報と、第1の属性情報及び第2の属性情報とに基づいて、問い合わせに対する回答を含む応答を特定する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
1または複数の情報処理装置を含む情報処理システムであって、
想定された問い合わせに関する第1の属性情報と、前記想定された問い合わせに対する回答に関する第2の属性情報とに基づいて、前記想定された問い合わせに対する回答に対応付けられた1または複数の属性によって構成される探索用データを生成する探索用データ生成手段と、
問い合わせの内容を取得する問い合わせ内容取得手段と、
前記問い合わせの内容が有する属性情報と、前記探索用データとに基づいて、前記問い合わせの内容に対する回答を含む応答を特定する応答特定手段と、
を備え、
前記問い合わせの内容が有する属性情報、前記第1の属性情報及び前記第2の属性情報は単語で表されることを特徴とする情報処理システム。
【請求項2】
前記問い合わせ内容取得手段は、問い合わせのための発話が音声認識処理された音声認識結果を取得することを特徴とする請求項1に記載の情報処理システム。
【請求項3】
前記探索用データは、前記問い合わせの内容が取得される以前に用意され、前記問い合わせの内容が取得されることにより、生成されている前記探索用データを参照して、前記問い合わせの内容に対する回答が特定されることを特徴とする請求項1または2に記載の情報処理システム。
【請求項4】
前記探索用データは、前記回答を一意に特定可能な属性を表す応答特定情報と、複数の前記回答の候補を特定可能な属性を表す応答グループ特定情報とを含むことを特徴とする請求項1から3のいずれか1項に記載の情報処理システム。
【請求項5】
前記探索用データは、前記応答特定情報及び前記応答グループ特定情報に含まれる前記属性から拡大された属性を表す拡大属性情報を含むことを特徴とする請求項4に記載の情報処理システム。
【請求項6】
前記探索用データ生成手段は、前記問い合わせ内容取得手段によって取得された前記問い合わせの内容によって、前記問い合わせに対する複数の回答が特定される場合に、前記探索用データに含まれる前記想定された問い合わせに対する回答に対応付けられた1または複数の属性を、前記問い合わせの内容に対する回答が一意に特定される属性、または、前記問い合わせの内容に対する回答がより少なく特定される属性に絞込み、
前記応答特定手段は、前記探索用データ生成手段によって絞込まれた前記属性に基づいて、前記応答として、前記問い合わせの内容に対する回答を特定するための追加の問い合わせの内容を誘導する対話を実行することを特徴とする請求項1から5のいずれか1項に記載の情報処理システム。
【請求項7】
前記応答特定手段は、
オリジナルの前記探索用データ全体を対象として、最新の前記問い合わせの内容に対する回答の特定を行う第1の絞込み処理と、
オリジナルの前記探索用データから属性が絞込まれた前記探索用データを対象として、過去の所定回の前記問い合わせの内容に基づく回答の特定を行う第2の絞込み処理と、
を並列的に実行することを特徴とする請求項1から6のいずれか1項に記載の情報処理システム。
【請求項8】
前記応答特定手段は、前記第2の絞込み処理とは異なる回数の過去の所定回の前記問い合わせの内容に基づく回答の特定を行う第3の絞込み処理を、前記第1の絞込み処理及び前記第2の絞込み処理と並列的に実行することを特徴とする請求項7に記載の情報処理システム。
【請求項9】
前記応答特定手段は、オリジナルの前記探索用データに含まれる属性を表す単語またはオリジナルの前記探索用データから絞込まれた属性を表す単語を画面に表示し、前記画面に表示された単語を選択することにより、前記問い合わせの内容に対する回答を絞込むことを特徴とする請求項1から8のいずれか1項に記載の情報処理システム。
【請求項10】
1または複数の情報処理装置を含む情報処理システムであって、
問い合わせのための発話が音声認識処理された音声認識結果を取得する音声認識手段と、
想定された問い合わせに関する第1の属性情報と、前記想定された問い合わせに対する回答に関する第2の属性情報と、前記第1の属性情報及び前記第2の属性情報に関連する拡大された属性情報とを要素として含むフィルタによって、前記音声認識手段による音声認識結果が有する属性情報をフィルタ処理するフィルタ処理手段と、
前記フィルタ処理手段によるフィルタ処理結果に基づいて、前記問い合わせのための発話に対する回答を含む応答を特定する応答特定手段と、
を備え、
前記問い合わせのための発話の前記音声認識結果が有する属性情報、前記第1の属性情報、前記第2の属性情報及び前記拡大された属性情報は単語で表されることを特徴とする情報処理システム。
【請求項11】
前記応答特定手段は、前記フィルタ処理手段によって前記問い合わせのための発話から抽出された前記属性情報を表す単語に関連する前記第1の属性情報または前記第2の属性情報を特定し、前記第1の属性情報または前記第2の属性情報に対応付けられた前記想定された問い合わせに対する回答を、前記問い合わせのための発話に対する回答として特定することを特徴とする請求項10に記載の情報処理システム。
【請求項12】
1または複数の情報処理装置を含む情報処理システムで実行される情報処理方法であって、
想定された問い合わせに関する第1の属性情報と、前記想定された問い合わせに対する回答に関する第2の属性情報とに基づいて、前記想定された問い合わせに対する回答に対応付けられた1または複数の属性によって構成される探索用データを生成する探索用データ生成ステップと、
問い合わせの内容を取得する問い合わせ内容取得ステップと、
前記問い合わせの内容が有する属性情報と、前記探索用データとに基づいて、前記問い合わせの内容に対する回答を含む応答を特定する応答特定ステップと、
を含み、
前記問い合わせの内容が有する属性情報、前記第1の属性情報及び前記第2の属性情報は単語で表されることを特徴とする情報処理方法。
【請求項13】
1または複数の情報処理装置を含む情報処理システムで実行される情報処理方法であって、
問い合わせのための発話が音声認識処理された音声認識結果を取得する音声認識ステップと、
想定された問い合わせに関する第1の属性情報と、前記想定された問い合わせに対する回答に関する第2の属性情報と、前記第1の属性情報及び前記第2の属性情報に関連する拡大された属性情報とを要素として含むフィルタによって、前記音声認識ステップにおける音声認識結果が有する属性情報をフィルタ処理するフィルタ処理ステップと、
前記フィルタ処理ステップにおけるフィルタ処理結果に基づいて、前記問い合わせのための発話に対する回答を含む応答を特定する応答特定ステップと、
を含み、
前記問い合わせのための発話の前記音声認識結果が有する属性情報、前記第1の属性情報、前記第2の属性情報及び前記拡大された属性情報は単語で表されることを特徴とする情報処理方法。
【請求項14】
コンピュータに、
想定された問い合わせに関する第1の属性情報と、前記想定された問い合わせに対する回答に関する第2の属性情報とに基づいて、前記想定された問い合わせに対する回答に対応付けられた1または複数の属性によって構成される探索用データを生成する探索用データ生成機能と、
問い合わせの内容を取得する問い合わせ内容取得機能と、
前記問い合わせの内容が有する属性情報と、前記探索用データとに基づいて、前記問い合わせの内容に対する回答を含む応答を特定する応答特定機能と、
を実現させ、
前記問い合わせの内容が有する属性情報、前記第1の属性情報及び前記第2の属性情報は単語で表されることを特徴とするプログラム。
【請求項15】
コンピュータに、
問い合わせのための発話が音声認識処理された音声認識結果を取得する音声認識機能と、
想定された問い合わせに関する第1の属性情報と、前記想定された問い合わせに対する回答に関する第2の属性情報と、前記第1の属性情報及び前記第2の属性情報に関連する拡大された属性情報とを要素として含むフィルタによって、前記音声認識機能による音声認識結果が有する属性情報をフィルタ処理するフィルタ処理機能と、
前記フィルタ処理機能によるフィルタ処理結果に基づいて、前記問い合わせのための発話に対する回答を含む応答を特定する応答特定機能と、
を実現させ、
前記問い合わせのための発話の前記音声認識結果が有する属性情報、前記第1の属性情報、前記第2の属性情報及び前記拡大された属性情報は単語で表されることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
従来、ユーザの発話を音声認識し、問い合せに対して自動応答を行う技術が知られている。
例えば、特許文献1に記載された音声自動質問応答装置では、音声認識エンジンを用いて自由発話型式の質問等を音声認識し、音声認識結果を談話解析等することで補正して、質問内容の適切な認識を図ることとしている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術においては、音声によって入力された問い合わせを基に回答を特定しようとしても、問い合わせに含まれる情報が不十分であること等から、適切な回答を導き出すことができない場合があった。
また、自由発話された問い合わせを汎用的な音声認識エンジンを用いて音声認識した場合、問い合わせ内容を適切に音声認識できない可能性があった。
また、音声認識処理及び回答を特定する処理に長時間を要する場合があり、問い合わせに対して、速やかに回答することができない可能性があった。
さらに、問い合わせを行う発話者が用いる表現は多様であることから、このような表現の多様性に対し、システム側の対応能力が十分ではない場合があった。
これらのいずれかの理由または複数の理由が複合的に生じた場合、音声による問い合わせに対し、適切な自動応答を行うことが困難となる。
なお、このような課題は、音声による問い合わせを音声認識する場合に限らず、チャット等のテキスト入力による問い合わせにおいても生じる可能性がある。
【0005】
本発明の課題は、問い合わせに対し、より適切な自動応答を行う技術を提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明の一態様の情報処理システムは、
1または複数の情報処理装置を含む情報処理システムであって、
想定された問い合わせに関する第1の属性情報を記憶する第1属性情報記憶手段と、
前記想定された問い合わせに対する回答に関する第2の属性情報を記憶する第2属性情報記憶手段と、
問い合わせの内容を取得する問い合わせ内容取得手段と、
前記問い合わせの内容が有する属性情報と、前記第1の属性情報及び前記第2の属性情報とに基づいて、前記問い合わせに対する回答を含む応答を特定する応答特定手段と、
を備えることを特徴とする。
【0007】
また、上記目的を達成するため、本発明の他の態様の情報処理システムは、
1または複数の情報処理装置を含む情報処理システムであって、
問い合わせのための発話が音声認識処理された音声認識結果を取得する音声認識手段と、
前記音声認識手段による音声認識結果が表す意味内容から、前記問い合わせに適合する回答の候補を言語処理によって特定する言語処理手段と、
前記音声認識手段による音声認識結果から前記問い合わせに含まれる単語を抽出し、前記問い合わせに含まれる単語に基づく属性情報と、前記問い合わせに対する回答に基づく属性情報との関連性に基づいて、前記問い合わせに適合する回答の候補を特定する属性処理手段と、
前記言語処理手段によって特定された前記回答の候補と、前記属性処理手段によって特定された前記回答の候補とに基づいて、前記問い合わせに対する回答を含む応答を特定する応答特定手段と、
を備えることを特徴とする。
【0008】
また、上記目的を達成するため、本発明の他の態様の情報処理システムは、
1または複数の情報処理装置を含む情報処理システムであって、
想定された問い合わせに関する第1の属性情報と、前記想定された問い合わせに対する回答に関する第2の属性情報とに基づいて、前記想定された問い合わせに対する回答に対応付けられた1または複数の属性によって構成される探索用データを生成する探索用データ生成手段と、
問い合わせの内容を取得する問い合わせ内容取得手段と、
前記問い合わせの内容が有する属性情報と、前記探索用データとに基づいて、前記問い合わせの内容に対する回答を含む応答を特定する応答特定手段と、
を備えることを特徴とする。
【0009】
また、上記目的を達成するため、本発明の他の態様の情報処理システムは、
1または複数の情報処理装置を含む情報処理システムであって、
問い合わせのための発話が音声認識処理された音声認識結果を取得する音声認識手段と、
想定された問い合わせに関する第1の属性情報と、前記想定された問い合わせに対する回答に関する第2の属性情報と、前記第1の属性情報及び前記第2の属性情報に関連する拡大された属性情報とを要素として含むフィルタによって、前記音声認識手段による音声認識結果が有する属性情報をフィルタ処理するフィルタ処理手段と、
前記フィルタ処理手段によるフィルタ処理結果に基づいて、前記問い合わせのための発話に対する回答を含む応答を特定する応答特定手段と、
を備えることを特徴とする。
【発明の効果】
【0010】
本発明によれば、問い合わせに対し、より適切な自動応答を行う技術を提供することができる。
【図面の簡単な説明】
【0011】
【
図1】本実施形態に係る情報処理システム1の構成を示す模式図である。
【
図2】端末装置10またはサーバ20を構成する情報処理装置800のハードウェア構成を示す模式図である。
【
図3】端末装置10の機能的構成を示すブロック図である。
【
図4】サーバ20の機能的構成を示すブロック図である。
【
図5】応答内容テーブルの一例を示す模式図である。
【
図6】コネクタテーブルの一例を示す模式図である。
【
図7】抽出フィルタ生成の一例を示す模式図である。
【
図8】抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する過程の一例を示す模式図である。
【
図9】第1実施形態における情報処理システム1の具体的機能構成例を示す模式図である。
【
図10A】情報処理システム1が実行する自動応答処理の流れを示すフローチャートである。
【
図10B】情報処理システム1が実行する抽出フィルタ生成処理の流れを示すフローチャートである。
【
図11】実施形態における処理の概念を示す模式図である。
【
図12A】第2実施形態におけるコネクタテーブルの一例を示す模式図である。
【
図12B】絞込みテーブル1の一例を示す模式図である。
【
図12C】絞込みテーブル2の一例を示す模式図である。
【
図12D】絞込みテーブル3の一例を示す模式図である。
【
図13】抽出フィルタ生成の一例を示す模式図である。
【
図14A】抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する過程の一例を示す模式図である。
【
図14B】問い合わせのための発話が複数回入力された場合の絞込みテーブル1~3の変化の一例を示す模式図である。
【
図15】情報処理システム1が実行する自動探索処理の流れを示すフローチャートである。
【
図16】第3実施形態におけるサーバ20の機能的構成を示すブロック図である。
【
図17】第3実施形態における情報処理システム1の具体的機能構成例を示す模式図である。
【
図18】第3実施形態における応答内容テーブルの一例を示す模式図である。
【
図19】第1のコネクタテーブルの一例を示す模式図である。
【
図20】第2のコネクタテーブルの一例を示す模式図である。
【
図21】問い合わせ用抽出フィルタ生成の一例を示す模式図である。
【
図22】回答用抽出フィルタ生成の一例を示す模式図である。
【
図23】問い合わせ用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する過程の一例を示す模式図である。
【
図24】回答用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する過程の一例を示す模式図である。
【
図25】情報処理システム1が実行する自動応答処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の実施形態について、図面を用いて説明する。
[第1実施形態]
本実施形態に係る情報処理システムは、問い合わせのための発話を音声認識処理し、音声認識結果が表す発話の内容を言語処理することによって、問い合わせに適合する回答の候補を特定する特定処理(言語処理を用いた特定処理)と、問い合わせのための発話の音声認識結果に含まれる単語が表す属性と、想定された問い合わせ及び想定された問い合わせに対して用意されている回答に基づく属性との関連性を判定し、属性の関連性によって、発話された問い合わせに適合する回答の候補を特定する特定処理(属性の関連性に基づく特定処理)とを実行する。そして、本実施形態に係る情報処理システムは、言語処理を用いた特定処理によって特定された回答の候補と、属性の関連性に基づく特定処理によって特定された回答の候補とに基づいて、問い合わせに対する最終的な回答を特定し、問い合わせに対して応答(回答を含む対話)を出力する。
したがって、本実施形態に係る情報処理システムによれば、発話に対する自動応答を行う際に、処理時間を短縮しつつ、より適切な応答内容を特定することが可能となる。
【0013】
また、本願発明においては、問い合わせ及び回答の内容を特定の目的(即ち、特定の適用対象)に特化して実装するものとしており、その結果、この目的に応じた適切な問い合わせ及び回答の組み合わせを用意することができる。そして、用意された問い合わせ及び回答に対して、後述するように、属性の分類、属性の拡大、抽出フィルタの生成等の処理を、問い合わせの発話が行われることに先行して実施することができる。したがって、問い合わせの発話が行われた際に、高速に回答を特定することが可能となっている。
【0014】
なお、本実施形態において、発話された問い合わせに対する回答として特定される事項(即ち、自動応答の結果)は、回答を行う能力を備えた担当者または回答自体を表すコンテンツ(例えば、テキスト、ビデオ、音声のコンテンツあるいはWebページ等)であるものとし、発話された問い合わせに対する回答として特定された担当者が、自身の知識をベースに問い合わせに回答したり、回答として特定されたコンテンツがユーザ(問い合わせを行った発話者)に提供されたりするものとする。
以下、本実施形態に係る情報処理システムを具体的に説明する。
【0015】
図1は、本実施形態に係る情報処理システム1の構成を示す模式図である。
図1に示すように、情報処理システム1は、複数の端末装置10と、サーバ20とを含んで構成され、複数の端末装置10とサーバ20とは、ネットワーク30を介して互いに通信可能に構成されている。
図1に示す情報処理システム1は、本発明に係る情報処理システムを、ネットワークを介して音声による問い合わせを受け付けるコールセンター等の業務システムに適用した例を示しており、音声による問い合わせに対し、自動応答を行うものである。
【0016】
端末装置10は、スマートフォンあるいはPC(Personal Computer)等の情報処理装置によって構成される。また、端末装置10は、問い合わせを行うユーザによって使用され、ユーザによる問い合わせ内容を表す音声の入力を受け付け、入力された音声のデータをサーバ20に送信する。また、端末装置10は、サーバ20から送信された問い合わせに対する回答(回答を行う能力を備えた担当者または回答自体を表すコンテンツ(例えば、テキスト、ビデオ、音声のコンテンツあるいはWebページ等))をユーザに対して出力する。
【0017】
サーバ20は、PCあるいはサーバコンピュータ等の情報処理装置によって構成される。サーバ20は、端末装置10から送信される問い合わせ内容を表す音声のデータを受信し、音声認識処理を実行して、問い合わせ内容を表すテキストデータ(音声認識結果)を取得する。本実施形態において、サーバ20は、異なる種類の音声認識処理を並列的に実行することにより、複数の音声認識結果を取得する。具体的には、サーバ20は、入力された音声データ全体をテキストデータに変換するディクテーションを目的とした音声認識処理と、音声データに含まれる特定の単語を抽出してテキストデータに変換する単語抽出の音声認識処理とを並列的に実行する。ただし、サーバ20が1つの音声認識処理(例えば、ディクテーションの音声認識処理)を実行し、1つの音声認識結果を処理(例えば、単語抽出処理等)することにより、複数の音声認識結果を取得することとしてもよい。
【0018】
また、サーバ20は、取得した音声認識結果に基づいて、言語処理を用いた回答の候補を特定する。即ち、サーバ20は、ユーザの発話を音声認識したテキストデータを自然言語処理によって意味内容を抽出し、予め用意されている回答(ここでは、回答を行う担当者または回答自体を表すコンテンツ)の中から、発話された問い合わせの内容に適合する可能性が高い回答の候補を特定する。なお、以下、言語処理を用いて特定された回答の候補を適宜「言語処理による回答の候補」と称する。
【0019】
また、サーバ20は、音声認識処理によって問い合わせのための発話から所定の単語を抽出し、発話に含まれる単語が表す属性と、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性との関連性を基に、回答の候補を特定する。即ち、サーバ20は、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性を表す単語の類似語を取得することにより、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性を拡大し、拡大された属性(即ち、オリジナルの属性を表す単語及びその類似語)をフィルタとして、問い合わせのための発話に含まれる単語が拡大された属性のいずれかに一致するか否かを判定する。そして、サーバ20は、拡大された属性において、問い合わせのための発話に含まれる単語と一致したものが対応している回答の候補を特定する。なお、以下、属性の関連性を基に特定された回答の候補を適宜「属性の関連性に基づく回答の候補」と称する。
【0020】
このように、本実施形態においては、問い合わせの発話に含まれる単語が表す属性と、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性との関連性を基に、回答の候補を特定している。そのため、問い合わせの発話に含まれる単語が表す属性と、想定された問い合わせが備える属性との関連性(即ち、発話された問い合わせの内容と想定された問い合わせの内容との一致性)のみを基に、用意されている回答を特定する場合に比べ、発話された問い合わせに適合する回答を特定できる可能性が高いものとなる。
また、本実施形態においては、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性を拡大し、拡大された属性(即ち、オリジナルの属性を表す単語及びその類似語)をフィルタとして、問い合わせのための発話に含まれる単語との一致を判定している。そのため、問い合わせの発話に近い内容、及び、想定された問い合わせ及び想定された問い合わせに対して用意されている回答に近い内容の範囲まで、関連性の特定対象を拡大することができるため、問い合わせの意図を広く汲んで、発話された問い合わせに適合する回答を特定することができる。
【0021】
さらに、サーバ20は、特定された言語処理による回答の候補及び属性の関連性に基づく回答の候補を統合して回答を特定する処理を実行し、発話された問い合わせに対する最終的な回答を特定する。本実施形態においては、言語処理による回答の候補として、一定の確度を有するもの(例えば、言語処理による特定結果のスコアが閾値以上のもの等)が特定されている場合、言語処理による回答の候補を優先し、言語処理による回答の候補の確度が低い場合、属性の関連性に基づく回答の候補を選択するものとする。そして、サーバ20は、特定した最終的な回答を音声またはテキストデータとして端末装置10に送信する。
これにより、問い合わせの発話が行われた際に、高速に、より高精度な音声認識結果を取得して、適切な回答を特定することが可能となっている。
【0022】
なお、本実施形態において、想定された問い合わせ及び想定された問い合わせに対して用意されている回答に属性を設定する場合、想定された問い合わせ及び想定された問い合わせに対して用意されている回答のデータにタグあるいはハッシュタグを設定すること等が可能である。
また、問い合わせに対する回答として、回答を行う能力を備えた担当者が特定されることを可能にするため、サーバ20には、回答を行う能力を備えた担当者との通話を行うための電話ネットワークを適宜接続することができる。
【0023】
[ハードウェア構成]
図2は、端末装置10またはサーバ20を構成する情報処理装置800のハードウェア構成を示す模式図である。
図2に示すように、情報処理装置800は、CPU(Central Processing Unit)811と、ROM(Read Only Memory)812と、RAM(Random Access Memory)813と、バス814と、入力部815と、出力部816と、記憶部817と、通信部818と、ドライブ819と、撮像部820と、を備えている。
【0024】
CPU811は、ROM812に記録されているプログラム、または、記憶部817からRAM813にロードされたプログラムに従って各種の処理を実行する。
RAM813には、CPU811が各種の処理を実行する上において必要なデータ等も適宜記憶される。
【0025】
CPU811、ROM812及びRAM813は、バス814を介して相互に接続されている。バス814には、入力部815、出力部816、記憶部817、通信部818及びドライブ819が接続されている。
【0026】
入力部815は、情報処理装置800に対する各種情報の入力を受け付ける。本実施形態において、入力部815は、マウスやキーボード等によって表示画面を介した操作入力を受け付ける操作入力部815aと、マイク等によって音声の入力を受け付ける音声入力部815bとを備えている。
出力部816は、ディスプレイやスピーカ等で構成され、画像や音声を出力する。
記憶部817は、ハードディスクあるいはDRAM(Dynamic Random Access Memory)等で構成され、各サーバで管理される各種データを記憶する。
通信部818は、ネットワークを介して他の装置との間で行う通信を制御する。
【0027】
ドライブ819には、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリ等よりなる、リムーバブルメディア831が適宜装着される。ドライブ819によってリムーバブルメディア831から読み出されたプログラムは、必要に応じて記憶部817にインストールされる。
撮像部820は、レンズ及び撮像素子等を備えた撮像装置によって構成され、被写体のデジタル画像を撮像する。
なお、上記ハードウェア構成は、情報処理装置800の基本的構成であり、一部のハードウェアを備えない構成としたり、付加的なハードウェアを備えたり、ハードウェアの実装形態を変更したりすることができる。例えば、情報処理装置800は、撮像部820を備えない構成としたり、音声認識処理を高速に実行するためのDSP(Digital Signal Processor)を備えたりすることができる。また、情報処理装置800は、入力部815をタッチセンサによって構成し、出力部816のディスプレイに重ねて配置することにより、タッチパネルを備える構成とすることも可能である。
【0028】
[機能的構成]
次に、端末装置10の機能的構成について説明する。
図3は、端末装置10の機能的構成を示すブロック図である。
図3に示すように、端末装置10のCPU811においては、発話受付部51と、発話データ送信部52と、応答受信部53と、応答出力部54と、が機能する。
【0029】
発話受付部51は、情報処理システム1を利用するユーザが問い合わせのために行う発話を受け付ける。発話受付部51が受け付けた発話は、音声データとして保持される。
発話データ送信部52は、発話受付部51によって受け付けられた問い合わせのための発話(音声データ)をサーバ20に送信する。
応答受信部53は、発話データ送信部52が送信した問い合わせのための発話に対し、サーバ20から送信された応答(Webページデータ、音声データ、ビデオデータまたはテキストデータ)を受信する。
応答出力部54は、応答受信部53が受信した問い合わせに対する応答を音声または画面表示によって出力する。
【0030】
次に、サーバ20の機能的構成について説明する。
図4は、サーバ20の機能的構成を示すブロック図である。
図4に示すように、情報処理装置800のCPU811においては、発話データ受信部151と、前処理部152と、音声認識処理部153と、言語処理部154と、絞込み処理部155と、統合処理部156と、が機能する。また、情報処理装置800の記憶部817には、音声認識辞書データベース(音声認識辞書DB)171と、単語辞書データベース(単語辞書DB)172と、応答内容データベース(応答内容DB)173と、コネクタデータベース(コネクタDB)174と、が形成される。
なお、本実施形態においては、音声認識処理を実行する音声認識エンジンとして、入力された音声データ全体をテキストデータに変換するディクテーションを目的としたものと、音声データに含まれる特定の単語を抽出してテキストデータに変換する単語抽出の音声認識処理を目的としたものとが用いられる。
【0031】
音声認識辞書DB171には、複数の音声認識エンジンそれぞれが使用する各種辞書及びモデル(音響モデル、言語モデル及び発音辞書等)のデータが記憶されている。例えば、音声認識辞書DB171には、音声の特徴量と音素モデルとが対応付けて格納された音響モデル、文字列あるいは単語列が言語として用いられるパターンを統計処理した結果が格納された言語モデル、及び、言語モデルの単語と音響モデルの音素とが対応付けて格納された発音辞書のデータが記憶されている。
【0032】
単語辞書DB172には、抽出対象となる単語が予め登録された単語抽出用の辞書が記憶されている。単語辞書DB172の各単語には、読み(発音)が付されており、単語抽出の音声認識処理が実行される場合、読み(発音)の情報を基に、予め登録された単語が抽出される。これにより、音声認識の精度と速度の向上を図ることができる。
応答内容DB173には、想定された問い合わせ内容を表すテキストデータと、想定された問い合わせ内容に含まれる単語(問い合わせ内容の属性を表す単語)と、想定された問い合わせに対して用意されている回答を識別する情報(ここでは、問い合わせに対処するオペレータ名または回答を表すコンテンツの名称)とが対応付けられた応答内容テーブルのデータが記憶されている。
【0033】
図5は、応答内容テーブルの一例を示す模式図である。
なお、
図5において、「・・・」で示される欄は、何らかのデータが存在すること、または、データが存在しないことを意味している(以下、他の図面においても同様であるものとする)。
図5に示すように、応答内容テーブルには、想定された問い合わせ内容を表す文章(テキストデータ)と、想定された問い合わせ内容の属性(単語)と、想定された問い合わせに対して用意されている回答を識別する情報(オペレータ名または回答を表すコンテンツの名称)と、想定された問い合わせに対して用意されている回答に付与された番号とが対応付けて格納されている。例えば、
図5の応答内容テーブルの第2行には、想定された問い合わせ内容として「自動振込の登録の手続きをしたいのですが。」という文章が格納され、この問い合わせ内容の属性として、「自動振込」及び「登録」という単語が格納されている。また、この問い合わせに対して用意されている回答を識別する情報として「オペレータA」が格納されている。なお、「オペレータA」には「#1」の番号が付与されている。また、例えば、
図5の応答内容テーブルの第10行には、想定された問い合わせ内容として「新規に口座を開設したい。」という文章が格納され、この問い合わせ内容の属性として、「新規」、「口座」及び「開設」という単語が格納されている。また、この問い合わせに対して用意されている回答を識別する情報として「開設ガイダンス」(動画ファイル名)が格納されている。なお、「開設ガイダンス」には「#101」の番号が付与されている。
【0034】
コネクタDB174には、想定された問い合わせ内容の属性を表す単語と、想定された問い合わせに対して用意されている回答の属性(ここでは、オペレータの専門分野や回答実績、あるいは、回答を表すコンテンツが属する分類等)を表す単語とが対応付けられたコネクタテーブルのデータが記憶されている。なお、以下、想定された問い合わせ内容の属性を「タイプAの属性」、想定された問い合わせに対して用意されている回答の属性を「タイプB」の属性と適宜称する。本実施形態において、コネクタDB174には、想定された問い合わせ内容の属性(タイプAの属性)として、想定された問い合わせ内容に明示的に含まれる単語(明示的な属性)に加え、想定された問い合わせ内容自体の意味、回答の名称等、明示化されていない単語(暗示的な属性)が格納されている。これらの単語は名寄せや類似語統一を行い、それぞれ唯一の単語(オリジナルの単語またはオリジナルの属性)としておく。なお、他のテーブル等を作成する場合にも、名寄せや類似語統一を行う場合には、コネクタテーブルの生成時と同様のルールが用いられる。また、コネクタテーブルを基に生成される各種データ(後述する「応答特定属性テーブル」、「応答グループ特定属性テーブル」、「拡大属性テーブル」及び「抽出フィルタ」)は、RAM813の一領域に記憶されると共に、適宜、コネクタDB174に記憶される。
【0035】
図6は、コネクタテーブルの一例を示す模式図である。
図6に示すように、コネクタテーブルには、1組の想定された問い合わせ及び想定された問い合わせに対して用意されている回答毎に、想定された問い合わせ内容の属性を表す単語(タイプAの属性)と、想定された問い合わせに対して用意されている回答の属性を表す単語(タイプBの属性)とが、対応付けて格納されている。例えば、
図6に示すコネクタテーブルの第2行には、想定された問い合わせ内容の属性(タイプAの属性)として、「自動振込」及び「登録」という単語が格納されていると共に、想定された問い合わせに対して用意されている回答の属性(タイプBの属性)として、「クレジットカード」、「デビットカード」、「キャッシュカード」、「自動引落」、「振込」・・・、という単語が格納されている。なお、コネクタテーブルにおいて、タイプAの内の暗示的な属性が、各エントリの左端側に格納されている。コネクタテーブルの1行のデータは、1組の想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性として予め設定されたオリジナルの属性を示している。
【0036】
本実施形態においては、問い合わせの内容から適切な回答を特定するために、「属性の拡大」及び、拡大された属性に基づく回答の「絞込み」が行われる。「属性の拡大」を実現するため、オリジナルの単語(オリジナルの属性)を想定された問い合わせに対して用意されている回答を一意に特定可能な属性を表す単語(応答特定属性)と、想定された問い合わせに対して用意されている回答のグループを特定可能な属性を表す単語(応答グループ特定属性)との2つに分類して、それぞれの単語(属性)を類似語に拡大し、必要であれば拡大された単語(属性)も含むすべての単語(属性)をネットワークを介して取得される類似語に拡大する(後述する「拡大属性テーブル」を生成する)、という手法が用いられる。そして、これらの手法で拡大された属性を参照し、問い合わせのための発話に含まれる単語をフィルタリングして、適切な回答が特定される。
コネクタテーブル、応答特定属性及び応答グループ特定属性(具体的には、後述する「応答特定属性テーブル」及び「応答グループ特定属性テーブル」)、拡大属性テーブル、単語抽出用のフィルタ(具体的には、後述する「抽出フィルタ」)を問い合わせが行われることに先立って用意しておくことで、問い合わせの発話が行われた際に、高速に回答を特定することが可能となっている。なお、応答特定属性テーブル、応答グループ特定属性テーブル、拡大属性テーブル及び単語抽出用のフィルタ等、応答内容テーブルにおける「想定された問い合わせに対して用意されている回答」を特定するために用いられるデータを適宜「探索用データ」と称する。
【0037】
発話データ受信部151は、端末装置10から送信された問い合わせのための発話(音声データ)を受信する。
前処理部152は、発話データ受信部151によって受信された音声データ(問い合わせのための発話)に対し、雑音除去等の前処理を実行する。
【0038】
音声認識処理部153は、前処理が実行された後の音声データに対し、複数の音声認識エンジンによって、並列的に音声認識処理を実行する。音声認識処理によって取得された各音声認識結果は、言語処理部154及び絞込み処理部155に出力される。
図4に示すように、音声認識処理部153は、第1音声認識部153-1~第n音声認識部153-n(nは2以上の整数)を備えることができ、第1音声認識部153-1~第n音声認識部153-nは、それぞれ異なる音声認識エンジンを用いて音声認識処理を実行することができる。第1音声認識部153-1~第n音声認識部153-nにおいて、いずれの音声認識エンジンを用いた音声認識処理を実行するか、及び、第1音声認識部153-1~第n音声認識部153-nの数をいくつとするかについては、サーバ20の処理目的や情報処理能力等の具体的な実装条件に応じて決定することができる。ただし、本実施形態においては、サーバ20は、入力された音声データ全体をテキストデータに変換するディクテーションを目的とした音声認識処理と、音声データに含まれる特定の単語を抽出してテキストデータに変換する単語抽出の音声認識処理とを並列的に実行するものとする。
なお、音声認識処理部153は、フィラー除去等の補助的な処理を適宜実行することとしてもよい。
【0039】
言語処理部154は、音声認識処理部153によって取得されたディクテーション結果のテキストデータに対し、言語処理による意味内容の抽出を実行し、予め用意されている回答(ここでは、回答を行う担当者または回答自体を表すコンテンツ)の中から、発話された内容の回答に適合する可能性が高い回答(回答を行う担当者または回答自体を表すコンテンツ)の候補を特定する。このとき、言語処理部154は、意味内容から特定される回答の候補に対し、問い合わせの回答としての適合性の高さ(確度)をスコア化し、スコアが最も高いものを言語処理による回答の候補とすることができる。
【0040】
絞込み処理部155は、音声認識処理部153によって取得された単語抽出の音声認識結果(即ち、発話から抽出された単語)と、抽出フィルタに含まれる単語とが一致するか否かを判定し、一致する場合、抽出フィルタに含まれる一致した単語を基に、予め用意されている回答(回答を行う担当者または回答自体を表すコンテンツ)の絞込みを行う。これにより、属性の関連性に基づく回答の候補が特定される。なお、絞込み処理部155は、本実施形態で用いられるコネクタテーブル、応答特定属性テーブル及び応答グループ特定属性テーブル、拡大属性テーブル、抽出フィルタを、ユーザによる問い合わせの発話が入力されることに先立って生成する。
【0041】
図7は、抽出フィルタ生成の一例を示す模式図である。
なお、ここでは、説明の便宜のため、
図7において具体的なデータが示されている欄にのみ注目し、「・・・」で示される欄のデータは考慮しないものとする(
図8においても同様とする)。
図7に示すように、抽出フィルタを生成する場合、初めに、コネクタテーブルを参照し、応答特定属性の単語を抽出して、各回答に付与された番号と対応付けたテーブル形式のデータ(以下、「応答特定属性テーブル」と称する。)を生成する。また、コネクタテーブルを参照し、応答グループ特定属性の単語を抽出して、属性毎に回答に付与された番号群を対応付けたテーブル形式のデータ(以下、「応答グループ特定属性テーブル」と称する。)を生成する。さらに、応答特定属性テーブルに含まれる単語及び応答グループ特定属性テーブルに含まれる単語を類似語で拡大する。例えば、その単語に対して予め用意された類似語群のデータや、インターネット等を介して外部から取得される類似語として使用可能な単語のデータ(例えば、オントロジーを参照して取得される類似概念を表す単語のデータ等)で拡大する。さらに、応答特定属性テーブル及び応答グループ特定属性テーブルに含まれるオリジナルの単語と、その単語の類似語とを対応付けたテーブル形式のデータ(以下、「拡大属性テーブル」と称する。)を生成する。そして、拡大属性テーブルに含まれる単語列からなる抽出フィルタを生成する。
【0042】
なお、新たな回答の候補を追加する場合、その回答の候補が備える属性を表す単語と既存のオリジナルの属性を表す単語との名寄せや類似語統一を行い、オリジナルの属性を表す単語を更新する。そして、既存のオリジナルの属性を表す単語も含めて、オリジナルの属性を表す単語が応答特定属性テーブルに含まれていなければ、その属性を表す単語及び回答の候補を応答特定属性テーブルに追加し、応答特定属性テーブルに既に含まれている場合、その属性を表す単語及び回答の候補を応答特定属性テーブルから削除し、「応答グループ特定属性テーブル」に追加する。
【0043】
図8は、抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する過程の一例を示す模式図である。
例えば、下記発話例(1)~(3)の発話が行われたとする。
発話例(1)「ネットで資産運用できますか。」
発話例(2)「定期預金をカードローンに使うことはできますか。」
発話例(3)「住宅ローンの残高の確認はどうすればいいですか。」
【0044】
このとき、各発話例の発話から、以下のように属性を表す単語が抽出されたものとする。
発話例(1)「ネット」(類似語)、「資産運用」(オリジナルの単語)
発話例(2)「定期預金」(オリジナルの単語)、「カードローン」(オリジナルの単語)
発話例(3)「住宅ローン」(オリジナルの単語)、「残高」(オリジナルの単語)
【0045】
発話例(1)の場合、「ネット」及び「資産運用」が抽出フィルタに含まれる単語と一致し、類似語である「ネット」に対応するオリジナルの単語である「インターネット」が応答特定属性テーブルに含まれることから、想定された問い合わせに対して用意されている回答を一意に特定することができる。即ち、発話例(1)の場合、応答特定属性テーブルからオペレータB(#2)が特定され、属性の関連性に基づく回答の候補とされる。
【0046】
発話例(2)の場合、「定期預金」及び「カードローン」が抽出フィルタに含まれる単語と一致し、オリジナルの単語である「定期預金」及び「カードローン」が共に、応答グループ特定属性テーブルに含まれる。このとき、「定期預金」によって#3、#4、#5の回答(即ち、オペレータB,C,D)が特定される。また、「カードローン」によって#2、#4の回答(即ち、オペレータB,D)が特定される。特定された回答のグループの論理積により、オペレータD(#4)が特定され、属性の関連性に基づく回答の候補とされる。なお、この例では、回答が1つに絞込まれているが、応答グループ特定属性テーブルに含まれる単語のみが抽出された場合、複数の回答が候補となる可能性がある。このような場合には、複数の回答の候補をユーザに提示する応答を行うこととしてもよく、例えば、「オペレータBとオペレータDがお答えできます。」との応答を出力し、ユーザの発話によって、回答を一意に選択することとしてもよい。また、複数の回答が候補となっている場合に、回答を一意に特定するためのさらなる発話を求める応答を出力してもよい。
【0047】
発話例(3)の場合、「住宅ローン」及び「残高」が抽出フィルタに含まれる単語と一致し、オリジナルの単語である「住宅ローン」及び「残高」が共に、応答グループ特定属性テーブルに含まれる。このとき、「住宅ローン」によって#2、#4の回答(即ち、オペレータB,D)が特定される。また、「残高」によって#4、#5の回答(即ち、オペレータD,E)が特定される。特定された回答のグループの論理積により、オペレータD(#4)が特定され、属性の関連性に基づく回答の候補とされる。
【0048】
図4に戻り、統合処理部156は、特定された言語処理による回答の候補及び属性の関連性に基づく回答の候補を統合して特定する処理を実行し、発話された問い合わせに対する最終的な回答を特定する。このとき、上述したように、統合処理部156は、言語処理による回答の候補として、一定の確度を有するもの(例えば、言語処理による特定結果のスコアが閾値以上のもの等)が特定されている場合、言語処理による回答の候補を優先し、言語処理による回答の候補の確度が低い場合、属性の関連性に基づく回答の候補を選択するものとする。そして、統合処理部156は、特定した最終的な回答を音声またはテキストデータとして端末装置10に送信する。なお、言語処理による回答の候補が一定の確度を有するものではなく、属性の関連性に基づく回答の候補も特定されない場合、統合処理部156は、回答が特定できない旨の応答を出力するよう決定する。
なお、サーバ20において用いられる応答内容テーブル、コネクタテーブル及び抽出フィルタは、ユーザによる発話を受け付ける前(即ち、自動応答処理が実行される前)に、予め用意され、サーバ20に実装される。
【0049】
[具体的機能構成例]
図9は、本実施形態における情報処理システム1の具体的機能構成例を示す模式図である。
図9に示すように、音声認識処理部153がディクテーション及び単語抽出の音声認識処理を行う場合、音声認識処理部153において、第1音声認識部153-1と、第2音声認識部153-2とが形成される。
【0050】
第1音声認識部153-1は、ディクテーション音声認識部501と、第1認識結果特定部502と、第1認識結果出力部503と、を備えている。
ディクテーション音声認識部501は、ディクテーションを行うための音声認識エンジンにより音声データを処理し、入力された音声データ全体をテキストデータに変換する。
第1認識結果特定部502は、ディクテーション音声認識部501の処理結果から、音声認識結果を一意に特定する。例えば、第1認識結果特定部502は、ディクテーション音声認識部501によって取得された音声認識結果の候補の中から、音声認識処理の過程で付与されるスコアに基づいて、最も確度が高いものを音声認識結果として特定する。
第1認識結果出力部503は、第1認識結果特定部502によって特定された音声認識結果を言語処理部154に出力する。
【0051】
第2音声認識部153-2は、単語抽出音声認識部511と、第2認識結果特定部512と、第2認識結果出力部513と、を備えている。
単語抽出音声認識部511は、単語抽出の音声認識処理(ここでは、ルールグラマーの音声認識処理またはDNN(Deep Neural Network)を用いた音声認識処理とする。)を行うための音声認識エンジンにより音声データを処理し、音声データに含まれる特定の単語を抽出してテキストデータに変換する。
第2認識結果特定部512は、単語抽出音声認識部511の処理結果から、音声認識結果を一意に特定する。例えば、第2認識結果特定部512は、単語抽出音声認識部511によって取得された音声認識結果の候補において、同音異字語の中から、単語辞書DB172に登録されている単語を音声認識結果として特定する。
第2認識結果出力部513は、第2認識結果特定部512によって特定された音声認識結果を絞込み処理部155に出力する。
なお、第1音声認識部153-1及び第2音声認識部153-2における音声認識処理を1つのディクテーション音声認識処理(例えば、ディクテーション音声認識部501による音声認識処理)で実行し、以降の処理を上述のように並列的に実行することとしてもよい。この場合、単語辞書DB172は、ディクテーション音声認識処理の結果であるテキストデータから単語を抽出するために用いられる。
【0052】
[動作]
次に、情報処理システム1の動作を説明する。
[自動応答処理]
図10Aは、情報処理システム1が実行する自動応答処理の流れを示すフローチャートである。
自動応答処理は、サーバ20において、自動応答処理の実行を指示する操作が行われることに対応して開始される。
なお、自動応答処理が実行される(即ち、ユーザによる問い合わせの発話が入力される)ことに先立ち、コネクタテーブル、応答特定属性テーブル及び応答グループ特定属性テーブル、拡大属性テーブル、抽出フィルタ(探索用データ)が予め生成されている(
図10B参照)。
【0053】
自動応答処理が開始されると、ステップS1において、端末装置10の発話受付部51は、ユーザによる発話が入力されたか否かの判定を行う。
ユーザによる発話が入力されていない場合、ステップS1においてNOと判定されて、ステップS1の処理が繰り返される。
一方、ユーザによる発話が入力された場合、ステップS1においてYESと判定されて、処理はステップS2に移行する。
【0054】
ステップS2において、端末装置10の発話データ送信部52は、入力されたユーザによる発話の音声データをサーバ20に送信する。送信された音声データは、サーバ20の発話データ受信部151によって受信される。
ステップS3において、サーバ20の前処理部152は、受信された音声データに対し、雑音除去等の前処理を実行する。
【0055】
ステップS4において、サーバ20の音声認識処理部153は、前処理が実行された後の音声データに対し、複数の音声認識エンジンによって、並列的に音声認識処理(S41-1~S43-1及びS41-2~S43-2)を実行する。
具体的には、ステップS41-1において、サーバ20のディクテーション音声認識部501は、ディクテーションを行うための音声認識エンジンにより音声データを処理し、入力された音声データ全体をテキストデータに変換する。
【0056】
ステップS42-1において、第1認識結果特定部502は、ディクテーション音声認識部501の処理結果から、音声認識結果を一意に特定する。
ステップS43-1において、第1認識結果出力部503は、第1認識結果特定部502によって特定された音声認識結果を言語処理部154に出力する。
ステップS43-1の後、処理はステップS5に移行する。
【0057】
また、ステップS41-2において、単語抽出音声認識部511は、単語抽出の音声認識処理(ここでは、ルールグラマーの音声認識処理またはDNNを用いた音声認識処理とする。)を行うための音声認識エンジンにより音声データを処理し、音声データに含まれる特定の単語を抽出してテキストデータに変換する。
ステップS42-2において、第2認識結果特定部512は、単語抽出音声認識部511の処理結果から、音声認識結果を一意に特定する。
ステップS43-2において、第2認識結果出力部513は、第2認識結果特定部512によって特定された音声認識結果を絞込み処理部155に出力する。
ステップS43-2の後、処理はステップS6に移行する。
【0058】
ステップS5において、言語処理部154は、音声認識処理部153によって取得されたディクテーション結果のテキストデータに対し、言語処理による意味内容の抽出を実行し、予め用意されている回答(回答を行う担当者または回答自体を表すコンテンツ)の中から、発話された内容の回答に適合する可能性が高い回答(回答を行う担当者または回答自体を表すコンテンツ)の候補を特定する。ステップS5における言語処理による回答の候補の特定結果は、統合処理部156に出力される。
【0059】
ステップS6において、絞込み処理部155は、音声認識処理部153によって取得された単語抽出の音声認識結果(即ち、発話から抽出された単語)と、抽出フィルタに含まれる単語とが一致するか否かを判定し、一致する場合、抽出フィルタに含まれる一致した単語を基に、予め用意されている回答の絞り込みを行う。即ち、絞込み処理部155は、抽出フィルタに含まれる単語から、拡大属性テーブルの属性を表す単語を特定し、さらに、特定した属性を表す単語から、応答特定属性テーブル及び応答グループ特定属性テーブルに含まれる回答の番号(即ち、コネクタテーブルに含まれる回答の番号)を特定する。そして、絞込み処理部155は、特定された回答の番号を基に、応答内容テーブルを参照して、具体的な回答の絞込みを行う。これにより、属性の関連性に基づく回答の候補が特定される。ステップS6における属性の関連性に基づく回答の候補の特定結果は、統合処理部156に出力される。
ステップS5及びステップS6の後、処理はステップS7に移行する。
【0060】
ステップS7において、統合処理部156は、言語処理による回答の候補が特定できているか否か(例えば、言語処理による特定結果のスコアが閾値以上であるか否か)の判定を行う。
言語処理による回答の候補が特定できている場合、ステップS7においてYESと判定されて、処理はステップS9に移行する。
一方、言語処理による回答の候補が特定できていない場合、ステップS7においてNOと判定されて、処理はステップS8に移行する。
ステップS8において、統合処理部156は、特定された属性の関連性に基づく回答の候補を対象として回答を特定する処理を実行し、発話された問い合わせに対する応答(属性の関連性に基づく回答の候補または回答が特定できない旨の応答)を決定する。
【0061】
ステップS9において、統合処理部156は、問い合わせに対する応答を音声またはテキストデータとして出力(端末装置10に送信)する。このとき、統合処理部156は、問い合わせに対する応答として、言語処理による回答の候補が特定されている場合、特定された言語処理による回答の候補を出力し、言語処理による回答の候補が特定されていない場合、属性の関連性に基づく回答の候補または回答が特定できない旨の応答を出力する。ステップS9において送信された応答のデータは、端末装置10の応答受信部53によって受信され、応答出力部54によって、音声または画像表示によって出力される。なお、ステップS9において出力される問い合わせに対する応答は、一意に特定された回答や回答が特定できない旨を応答する場合の他、複数の回答の候補を一意に特定するための発話を促す応答や、複数の回答の候補を出力する応答としてもよい。
【0062】
ステップS10において、統合処理部156は、自動応答処理の終了条件に合致しているか否かの判定を行う。自動応答処理の終了条件としては、例えば、発話された問い合わせに対して、一意に回答を特定して応答を出力したことや、ユーザによって問い合わせを終了する操作が行われたこと等を定義することができる。
問合せ処理の終了条件に合致していない場合、ステップS10においてNOと判定されて、処理はステップS1に移行する。
一方、自動応答処理の終了条件に合致している場合、ステップS10においてYESと判定されて、自動応答処理は終了する。
【0063】
[抽出フィルタ生成処理]
図10Bは、情報処理システム1が実行する抽出フィルタ生成処理の流れを示すフローチャートである。
抽出フィルタ生成処理は、サーバ20において、抽出フィルタ生成処理の実行を指示する操作が行われることに対応して開始される。抽出フィルタ生成処理によって、一連の探索用データが生成される。
抽出フィルタ生成処理が開始されると、ステップS21において、絞込み処理部155は、想定された問い合わせ内容及び想定された問い合わせに対して用意されている回答の属性を取得する。これらの属性は、想定された問い合わせ内容及び想定された問い合わせに対して用意されている回答に含まれる単語あるいは予め設定された属性等から取得できる。
【0064】
ステップS22において、絞込み処理部155は、属性を表す単語の名寄せ及び類似語統一を行う。
ステップS23において、絞込み処理部155は、想定された問い合わせ内容の属性を表す単語(タイプAの属性)と、想定された問い合わせに対して用意されている回答の属性を表す単語(タイプBの属性)とを対応付けて、コネクタテーブルを生成する。
【0065】
ステップS24において、絞込み処理部155は、コネクタテーブルにおけるオリジナルの単語(オリジナルの属性)を、想定された問い合わせに対して用意されている回答を一意に特定可能な属性を表す単語(応答特定属性)と、想定された問い合わせに対して用意されている回答のグループを特定可能な属性を表す単語(応答グループ特定属性)との2つに分類する。
【0066】
ステップS25において、絞込み処理部155は、分類された応答特定属性及び応答グループ特定属性に基づいて、応答特定属性テーブル及び応答グループ特定属性テーブルを生成する。
ステップS26において、絞込み処理部155は、応答特定属性テーブルに含まれる単語及び応答グループ特定属性テーブルに含まれる単語を類似語に拡大する。
【0067】
ステップS27において、絞込み処理部155は、応答特定属性テーブル及び応答グループ特定属性テーブルに含まれるオリジナルの単語と、その単語の類似語とを対応付けた拡大属性テーブルを生成する。
ステップS28において、絞込み処理部155は、拡大属性テーブルに含まれる単語列からなる抽出フィルタを生成する。
ステップS28の後、抽出フィルタ生成処理は終了する。
【0068】
以上のように、本実施形態における情報処理システム1においては、問い合わせの発話に含まれる単語が表す属性と、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性との関連性を基に、回答の候補を特定する。また、コネクタテーブル、応答特定属性テーブル及び応答グループ特定属性テーブル、拡大属性テーブル、抽出フィルタ(探索用データ)を問い合わせが行われることに先立って用意している。即ち、想定された問い合わせ内容の属性として、想定された問い合わせ内容に明示的に含まれる単語(明示的な属性)と、想定された問い合わせ内容自体の意味、回答の名称等、明示化されていない単語(暗示的な属性)とが用いられ、想定された問い合わせに対して用意されている回答が備える属性と併せて、コネクタテーブルを生成する。また、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性を類似語に拡大し、オリジナルの属性を表す単語及びその類似語で構成される抽出フィルタを生成する。また、音声認識処理によって問い合わせのための発話から所定の単語を抽出し、発話から抽出された単語と、抽出フィルタに含まれる単語とが一致するか否かを判定する。そして、情報処理システム1は、発話から抽出された単語と、抽出フィルタに含まれる単語とが一致する場合、抽出フィルタに含まれる一致した単語を基に、予め用意されている回答(回答を行う担当者または回答自体を表すコンテンツ)の絞込みを行う。これにより、属性の関連性に基づく回答の候補を特定する。また、情報処理システム1は、発話を音声認識処理したディクテーション結果のテキストデータに対し、言語処理による意味内容の抽出を実行し、予め用意されている回答(回答を行う担当者または回答自体を表すコンテンツ)の中から、発話された内容の回答に適合する可能性が高い回答(回答を行う担当者または回答自体を表すコンテンツ)の候補を特定する。さらに、情報処理システム1は、特定された言語処理による回答の候補及び属性の関連性に基づく回答の候補を統合して特定する処理を実行し、発話された問い合わせに対する最終的な回答を特定する。
【0069】
このような処理により、情報処理システム1においては、発話された問い合わせに対して、言語処理に基づく特定方法のみならず、属性を表す単語の一致性に基づく特定方法を用いて、問い合わせに対する回答を特定することができる。
したがって、発話に対する自動応答を行う際に、処理時間を短縮しつつ、より適切な応答内容を特定することが可能となる。
また、問い合わせの発話に含まれる単語が表す属性と、想定された問い合わせが備える属性との関連性(即ち、発話された問い合わせの内容と想定された問い合わせの内容との一致性)のみを基に、用意されている回答を特定する場合に比べ、発話された問い合わせに適合する回答を特定できる可能性が高いものとなる。
また、問い合わせに対する回答を特定する処理で用いられるコネクタテーブル、応答特定属性テーブル及び応答グループ特定属性テーブル、拡大属性テーブル、抽出フィルタ(探索用データ)を、問い合わせが行われることに先立って用意しているため、問い合わせの発話が行われた際に、高速に回答を特定することが可能となる。
【0070】
また、属性を表す単語の一致性を判定する際に、想定された問い合わせ及び想定された問い合わせに対して用意されている回答に基づく属性を表す単語を拡大して抽出フィルタを生成し、問い合わせのための発話の音声認識結果に含まれる単語が表す属性との一致性を判定する。
したがって、表現のゆらぎや趣旨が類似する単語が用いられた場合等、想定されていない表現が用いられた場合であっても、発話された問い合わせに適合する回答を容易に特定することが可能となる。即ち、問い合わせの発話に近い内容、及び、想定された問い合わせ及び想定された問い合わせに対して用意されている回答に近い内容の範囲まで、関連性の特定対象を拡大することができるため、問い合わせの意図を広く汲んで、発話された問い合わせに適合する回答を特定することができる。
【0071】
[第2実施形態]
次に、本発明の第2実施形態について説明する。
第1実施形態においては、回答として特定される事項は、回答を行う能力を備えた担当者または回答自体を表すコンテンツ(例えば、テキスト、ビデオ、音声のコンテンツあるいはWebページ等)であるものとした。また、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性を、回答を一意に特定する応答特定属性と、回答をグループとして特定する応答グループ特定属性とに分類して、これらの属性を対応付けてデータ化し、さらに、属性を拡大することにより、発話中の単語をフィルタリングして、問い合わせに対する回答を特定するものとした。
【0072】
これに対し、本実施形態においては、第1実施形態での、担当者の回答または回答を表すコンテンツ全体の内の特定部分(例えば、テキスト、ビデオ、音声のコンテンツあるいはWebページ等の内の特定部分、一例として、パラグラフ、セクション、動画の時間帯あるいはWebページの内の特定箇所等)も回答として特定される対象としている。また、本実施形態においては、属性の関連性に基づく特定処理として、異なる機能を有する複数の処理(以下、適宜「絞込み処理」と称する。)を並列的に実行し、これら並列的な処理による特定結果及び言語処理を用いた特定処理による特定結果を統合して応答の内容(回答または回答の特定に有効な属性の発話を誘導する対話の内容)を特定する。例えば、絞込み処理の1つとして、オリジナルのコネクタテーブルに含まれる属性を表す単語全体を対象として、最新の発話に含まれる単語によって回答の絞込みを行う絞込み処理1を実行する。絞込み処理1では、オリジナルのコネクタテーブルに含まれる属性を表す単語全体を最新の1回の発話で絞込んだ結果が出力される。また、絞込み処理の他の1つとして、過去の所定回の発話によってオリジナルのコネクタテーブルに含まれる属性を表す単語が絞込まれた結果を対象として、最新の発話に含まれる単語によって絞込みを行う絞込み処理2を実行する。絞込み処理2では、オリジナルのコネクタテーブルに含まれる属性を表す単語を過去の所定回の発話で絞込んだ結果が出力される。また、絞込み処理のさらに他の1つとして、絞込み処理2とは異なる過去の所定回の発話(例えば、問い合わせが行われて以降の過去の全ての発話)によってオリジナルのコネクタテーブルに含まれる属性を表す単語が絞込まれた結果を対象として、最新の発話に含まれる単語によって絞込みを行う絞込み処理3を実行する。絞込み処理3では、オリジナルのコネクタテーブルに含まれる属性を表す単語を絞込み処理2とは異なる過去の所定回の発話(例えば、問い合わせが行われて以降の過去の全ての発話)で絞込んだ結果が出力される。そして、これら絞込み処理1~3による特定結果及び言語処理を用いた特定処理による特定結果を、予め設定された選択条件に基づいて選択することにより統合し、問い合わせに対する応答の内容(回答または回答の特定に有効な属性の発話を誘導する対話の内容)が特定される。
【0073】
本実施形態においては、言語処理を用いた特定処理と共に、絞込み処理1~3を併用し、さらに、絞込み処理1~3が自律的にユーザとの対話(自動的な対話)を可能とする構造となっているため、適切な回答が特定される可能性がより高いものとなる。
本実施形態における情報処理システム1のシステム構成、情報処理装置のハードウェア構成、端末装置10及びサーバ20の機能的構成等の主要な部分は、第1実施形態と同様であるため、異なる部分を主として説明する。
【0074】
図11は、本実施形態における処理の概念を示す模式図である。
図11に示すように、本実施形態に係る情報処理システム1では、並列的に実行される絞込み処理1~3処理による特定結果及び言語処理を用いた特定処理による特定結果を統合して応答の内容を特定する。このとき、絞込み処理1~3では、オリジナルのコネクタテーブル、オリジナルのコネクタテーブルから生成された応答特定属性テーブル及び応答グループ特定属性テーブル(以下、「コネクタテーブル類」と称する。)を起点として、絞込み処理1によってコネクタテーブル類が絞込まれた結果である絞込みテーブル類1、絞込み処理2によって絞込みテーブル類1が絞込まれた結果である絞込みテーブル類2、絞込み処理3によって絞込みテーブル類2が絞込まれた結果である絞込みテーブル類3を生成することにより、属性の関連性に基づく回答の候補を特定する。ただし、絞込みテーブル類3については、ユーザによる一連の問い合わせが4回以上となった場合、絞込みテーブル類3の出力結果が次回の問い合わせに対する絞込み処理3の入力となり、回帰的に絞込み処理3による絞込みが行われる。絞込みテーブル類1~3には、絞込み処理1~3の結果である絞込みテーブル1~3がそれぞれ含まれている。絞込みテーブル1~3は、絞込み処理1~3によって絞込まれた単語それぞれが、いずれの回答(具体的には、回答の番号)と関連性を有するかを示すテーブル形式のデータである。絞込みテーブル1~3においては、例えば、絞込み処理1~3によって絞込まれた単語それぞれについて、回答の番号と関連性を有する「1」、関連性を有しない「0」が格納されている。また、回答の候補が一意に特定されない場合には、絞込みテーブル1~3に含まれる属性が、回答を現在よりも絞込むことができる属性に更新した後、次段の絞込み処理の入力として受け渡される(入力が置換される)。
【0075】
なお、
図11において、コネクタテーブル類に含まれる応答特定属性テーブルを「応答特定属性テーブルATS0」、応答グループ特定属性テーブルを「応答グループ特定属性テーブルATG0」、絞込みテーブル類1に含まれる応答特定属性テーブルを「応答特定属性テーブルATS1」、応答グループ特定属性テーブルを「応答グループ特定属性テーブルATG1」、絞込みテーブル類2に含まれる応答特定属性テーブルを「応答特定属性テーブルATS2」、応答グループ特定属性テーブルを「応答グループ特定属性テーブルATG2」、絞込みテーブル類3に含まれる応答特定属性テーブルを「応答特定属性テーブルATS3」、応答グループ特定属性テーブルを「応答グループ特定属性テーブルATG3」と称している。以下の説明において、適宜同様の表記を用いるものとする。
【0076】
[機能的構成]
本実施形態において、端末装置10の機能的構成は、
図3に示す第1実施形態の機能的構成と同様である。
また、サーバ20の機能的構成は、
図4に示す第1実施形態の機能的構成に対し、コネクタDB174の記憶内容、絞込み処理部155及び統合処理部156が実行する処理の内容が異なっている。
コネクタDB174には、想定された問い合わせ内容の属性を表す単語と、想定された問い合わせに対して用意されている回答の属性(ここでは、回答を行う能力を備えた担当者の回答、あるいは、回答を表すコンテンツ全体及び回答を表すコンテンツの部分の属性)を表す単語とが対応付けられたコネクタテーブルのデータが記憶されている。
【0077】
図12Aは、本実施形態におけるコネクタテーブルの一例を示す模式図である。
図12Aに示すように、コネクタテーブルには、第1実施形態と同様に、1組の想定された問い合わせ及び想定された問い合わせに対して用意されている回答毎に、想定された問い合わせ内容の属性を表す単語(タイプAの属性)と、想定された問い合わせに対して用意されている回答の属性を表す単語(タイプBの属性)とが、対応付けて格納されている。
【0078】
本実施形態において、コネクタDB174には、想定された問い合わせ内容の属性(タイプAの属性)として、想定された問い合わせ内容に明示的に含まれる単語(明示的な属性)に加え、想定された問い合わせ内容自体の意味、回答の名称等、明示化されていない単語(暗示的な属性)が格納されている。これらの単語は名寄せや類似語統一を行い、それぞれ唯一の単語(オリジナルの単語、オリジナルの属性)としておく。
【0079】
また、本実施形態において、回答を表すコンテンツの属性(タイプBの属性)として、回答を表すコンテンツ全体が属する分類と、回答を表すコンテンツを構成する部分が属する分類とが設定されており、これら全体及び部分について、属性を表す単語がコネクタテーブルに格納されている。回答を表すコンテンツを構成する部分は、回答を表すコンテンツ全体において、区分して属性を設定することができる部分を任意に選択することができるが、例えば、パラグラフ、セクションあるいは動画の時間帯等で区分された部分とすることができる。
なお、
図12Aにおいて、「回答のアドレス」は、回答を表すコンテンツのURL(Uniform Resource Locator)あるいはサーバ内のアドレス等、ネットワークにおけるデータの所在地を示している。
【0080】
本実施形態においても、第1実施形態と同様に、コネクタテーブルを参照して、問い合わせの内容から適切な回答を特定するために、「属性の拡大」及び、拡大された属性に基づく回答の「絞込み」が行われる。「属性の拡大」を実現するため、第1実施形態と同様に、(1)コネクタテーブルにおいて、想定された問い合わせ内容に明示的に含まれる単語(明示的な属性)に加え、想定された問い合わせ内容自体の意味、回答の名称等、明示化されていない単語(暗示的な属性)が格納される、という手法や、コネクタテーブルから応答特定属性テーブルを生成する際に、(2)属性を表す単語を基に予め設定された類似語に拡大する、(3)属性を表す単語をネットワークを介して取得される類似語に拡大する、という手法が用いられる。そして、これらの手法で拡大された属性を参照し、問い合わせのための発話に含まれる単語をフィルタリングして、必要な場合には、情報処理システム1が、絞込みに有効なオリジナルの属性を特定することにより、発話を誘導する対話を行いつつ、適切な回答が特定される。
【0081】
絞込み処理部155は、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性の類似語を取得する。例えば、絞込み処理部155は、属性を表す単語に対して予め用意された類似語群のデータや、インターネット等を介して外部から取得される類似語として使用可能な単語のデータ(例えば、オントロジーを参照して取得される類似概念を表す単語のデータ等)を取得する。
【0082】
そして、絞込み処理部155は、想定された問い合わせ及び想定された問い合わせに対して用意されている回答が備える属性(タイプA及びタイプBの属性)を表す単語(コネクタテーブルに格納されたオリジナルの属性を表す単語)と、類似語として取得された単語(オリジナルの属性の類似語)とを集合させて、想定された問い合わせ及び想定された問い合わせに対して用意されている回答との関連性を抽出するための抽出フィルタを生成する。
このとき、絞込み処理部155は、抽出フィルタを生成するためにコネクタテーブルに含まれる単語が拡大された属性から、応答特定属性テーブルATS0及び応答グループ特定属性テーブルATG0を生成する。これら応答特定属性テーブルATS0及び応答グループ特定属性テーブルATG0は、コネクタテーブルと共に、コネクタテーブル類を構成する。
【0083】
また、絞込み処理部155は、絞込み処理1において、コネクタテーブル類に含まれる属性を表す単語を、最新の発話に含まれる単語を基に絞込み、絞込まれた属性を表す単語と、回答の番号との関連性を示す情報(例えば、「1」は関連性あり、「0」は関連性なし)を要素とする絞込みテーブル1を生成する。具体的には、絞込み処理部155は、コネクタテーブルを参照し、最新の発話に含まれる単語が関連する回答の候補のいずれかと関連している単語によって、絞込みテーブル1を生成する。なお、コネクタテーブルは、発話により絞込まれる前の絞込みテーブルとしての意義を有している。
【0084】
図12Bは、絞込みテーブル1の一例を示す模式図である。
図12Bにおいて、絞込みテーブル1には、コネクタテーブルに含まれる属性を表す単語のうち、最新の発話に含まれる単語が関連する回答の候補のいずれかと関連している単語と、各単語が回答の番号それぞれと関連性を有するか否かを示す情報(関連性を有することを示す「1」または関連性を有しないことを示す「0」)とが、対応付けて格納されている。
例えば、
図12Bにおいて、絞込みテーブル1における属性を表す単語「議事録製品」については#1、#2、#Xの回答とは関連性を有することを示す「1」が格納されている。また、他の属性を表す単語「XXシステム」については#1の回答とは関連性を有しないことを示す「0」が格納されている。
【0085】
絞込みテーブル1に格納されている回答の候補の番号は、最新の発話に含まれる単語が関連するものに絞込まれているため、絞込みテーブル1は、最新の発話によって絞込まれた回答の候補を示す情報となる。また、絞込みテーブル1には、回答の候補と関連している属性を表す単語が併せて格納されているため、次の発話によって回答の候補を絞込むために必要な情報を含むものとなっている。
なお、このとき、絞込み処理部155は、絞込みテーブル1に含まれる属性から、応答特定属性テーブルATS1及び応答グループ特定属性テーブルATG1を生成する。これら応答特定属性テーブルATS1及び応答グループ特定属性テーブルATG1は、絞込みテーブル1と共に、絞込みテーブル類1を構成する。
【0086】
絞込み処理部155は、絞込み処理1において生成された絞込みテーブル1に基づいて、最新の発話に含まれる単語によって、回答の候補を一意に特定できるか否かを判定する。回答の候補を一意に特定できる場合、その回答の候補が属性の関連性に基づく回答の候補を決定するために用いられる。
【0087】
また、絞込み処理部155は、絞込み処理1において生成された絞込みテーブル1に基づいて、最新の発話に含まれる単語によって、回答の候補を一意に特定できない場合、ユーザから、回答をさらに絞込み可能な属性(即ち、回答の特定に有効な属性)の発話を誘導する対話を行う。具体的には、絞込み処理部155は、絞込みテーブル1における列の要素に「1」を含む属性のうち、回答を現在よりも絞込むことができる属性(即ち、回答を一意に特定可能な属性または回答の候補が現在よりも減少する属性)を、絞込みのための情報としてユーザに提示する属性に採用する。また、絞込み処理部155は、絞込みテーブル1に含まれる属性を、回答を現在よりも絞込むことができるものに更新する。即ち、絞込み処理部155は、絞込みテーブル1において、最新の発話に含まれる単語が関連する回答の候補の全てと関連している単語(即ち、回答の特定に有効でない属性)を除外し、最新の発話に含まれる単語が関連する回答の候補の一部と関連している単語(即ち、回答の特定に有効な属性)を残して、絞込みテーブル1を更新する。具体的には、絞込み処理部155は、絞込みテーブル1において、最新の発話に含まれる単語と関連性を有する回答のグループを特定し、特定された回答のグループに対応するテーブルの要素が全て“1”である列の属性を削除し、それ以外の属性で要素に“1”が1つでもある列の属性を残すことで、絞込みテーブル1を更新する。また、絞込みテーブル1の更新に合わせて、絞込みテーブル類1の応答特定属性テーブルATS1及び応答グループ特定属性テーブルATG1も更新され、更新された絞込みテーブル類1は、絞込み処理2の入力として受け渡される。
このような処理により、システムから回答を絞込むために有効な属性の発話をユーザに促すことができる。
【0088】
また、絞込み処理部155は、絞込み処理2において、絞込みテーブル類1を入力とし、更新された絞込みテーブル1に含まれる属性を表す単語を、最新の発話に含まれる単語を基に絞込み、絞込まれた属性を表す単語と、回答の番号との関連性を示す情報(例えば、「1」は関連性あり、「0」は関連性なし)を要素とする絞込みテーブル2を生成する。具体的には、絞込み処理部155は、絞込みテーブル1を参照し、最新の発話に含まれる単語が関連する回答の候補のいずれかと関連している単語によって、絞込みテーブル2を生成する。
【0089】
図12Cは、絞込みテーブル2の一例を示す模式図である。
図12Cにおいて、絞込みテーブル2には、絞込みテーブル1に含まれる属性を表す単語のうち、最新の発話に含まれる単語が関連する回答の候補のいずれかと関連している単語と、各単語が回答の番号それぞれと関連性を有するか否かを示す情報(関連性を有することを示す「1」または関連性を有しないことを示す「0」)とが、対応付けて格納されている。
例えば、
図12Cにおいて、絞込みテーブル2における属性を表す単語「XXシステム」については#2、#Xの回答とは関連性を有することを示す「1」が格納されている。また、他の属性を表す単語「リモート会議」については#2の回答とは関連性を有しないことを示す「0」が格納されている。
【0090】
絞込みテーブル2に格納されている回答の候補の番号は、最新の発話及び前回の発話に含まれる単語が関連するものに絞込まれているため、絞込みテーブル2は、最新の発話及び前回の発話によって絞込まれた回答の候補を示す情報となる。また、絞込みテーブル2には、回答の候補と関連している属性を表す単語が併せて格納されているため、次の発話によって回答の候補を絞込むために必要な情報を含むものとなっている。
なお、このとき、絞込み処理部155は、絞込みテーブル2に含まれる属性から、応答特定属性テーブルATS2及び応答グループ特定属性テーブルATG2を生成する。これら応答特定属性テーブルATS2及び応答グループ特定属性テーブルATG2は、絞込みテーブル2と共に、絞込みテーブル類2を構成する。
【0091】
また、絞込み処理部155は、絞込み処理2において生成された絞込みテーブル2に基づいて、最新の発話に含まれる単語によって、回答の候補を一意に特定できるか否かを判定する。回答の候補を一意に特定できる場合、その回答の候補が属性の関連性に基づく回答の候補を決定するために用いられる。
【0092】
また、絞込み処理部155は、絞込み処理2において生成された絞込みテーブル2に基づいて、最新の発話に含まれる単語によって、回答の候補を一意に特定できない場合、ユーザから、回答をさらに絞込み可能な属性(即ち、回答の特定に有効な属性)の発話を誘導する対話を行う。具体的には、絞込み処理部155は、絞込みテーブル2における列の要素に「1」を含む属性のうち、回答を現在よりも絞込むことができる属性(即ち、回答を一意に特定可能な属性または回答の候補が現在よりも減少する属性)を、絞込みのための情報としてユーザに提示する属性に採用する。また、絞込み処理部155は、絞込みテーブル2に含まれる属性を、回答を現在よりも絞込むことができるものに更新する。即ち、絞込み処理部155は、絞込みテーブル2において、最新の発話に含まれる単語が関連する回答の候補の全てと関連している単語(即ち、回答の特定に有効でない属性)を除外し、最新の発話に含まれる単語が関連する回答の候補の一部と関連している単語(即ち、回答の特定に有効な属性)を残して、絞込みテーブル2を更新する。具体的には、絞込み処理部155は、絞込みテーブル2において、最新の発話に含まれる単語と関連性を有する回答のグループを特定し、特定された回答のグループに対応するテーブルの要素が全て“1”である列の属性を削除し、それ以外の属性で要素に“1”が1つでもある列の属性を残すことで、絞込みテーブル2を更新する。このとき、最新の発話に含まれる単語も除外して絞込みテーブル2が更新される。また、絞込みテーブル2の更新に合わせて、絞込みテーブル類2の応答特定属性テーブルATS2及び応答グループ特定属性テーブルATG2も更新され、更新された絞込みテーブル類2は、絞込み処理3の入力として受け渡される。
このような処理により、システムから回答を絞込むために有効な属性の発話をユーザに促すことができる。
【0093】
また、絞込み処理部155は、絞込み処理3において、問い合わせの開始から3回目の発話までは、絞込みテーブル類2を入力とし、更新された絞込みテーブル2に含まれる属性を表す単語を、最新の発話に含まれる単語を基に絞込み、絞込まれた属性を表す単語と、回答の番号との関連性を示す情報(例えば、「1」は関連性あり、「0」は関連性なし)を要素とする絞込みテーブル3を生成する。具体的には、絞込み処理部155は、絞込みテーブル2を参照し、最新の発話に含まれる単語が関連する回答の候補のいずれかと関連している単語によって、絞込みテーブル3を生成する。
【0094】
また、絞込み処理部155は、絞込み処理3において、問い合わせの開始から4回目の発話以降は、前回の絞込み処理3において更新された絞込みテーブル類3を入力とし、更新された絞込みテーブル3に含まれる属性を表す単語を、最新の発話に含まれる単語を基に絞込み、絞込まれた属性を表す単語と、回答の番号との関連性を示す情報(例えば、「1」は関連性あり、「0」は関連性なし)を要素とする絞込みテーブル3を生成する。具体的には、絞込み処理部155は、絞込みテーブル2を参照し、最新の発話に含まれる単語が関連する回答の候補のいずれかと関連している単語によって、絞込みテーブル3を生成する。
【0095】
図12Dは、絞込みテーブル3の一例を示す模式図である。
図12Dにおいて、絞込みテーブル3には、入力された絞込みテーブル2または絞込みテーブル3に含まれる属性を表す単語を、最新の発話に含まれる単語が関連する回答の候補の一部と関連している単語に絞込んだ結果である属性を表す単語と、各単語が回答の番号それぞれと関連性を有するか否かを示す情報(関連性を有することを示す「1」または関連性を有しないことを示す「0」)とが、対応付けて格納されている。
例えば、
図12Dにおいて、絞込みテーブル3における属性を表す単語「リモート会議」については#Xの回答と関連性を有することを示す「1」が格納されている。
【0096】
絞込みテーブル3に格納されている回答の候補の番号は、問い合わせの開始から最新の発話までに含まれる単語が関連するものに絞込まれているため、絞込みテーブル3は、問い合わせの開始から最新の発話によって絞込まれた回答の候補を示す情報となる。また、絞込みテーブル3には、回答の候補と関連している属性を表す単語が併せて格納されているため、次の発話によって回答の候補を絞込むために必要な情報を含むものとなっている。
なお、このとき、絞込み処理部155は、絞込みテーブル3に含まれる属性から、応答特定属性テーブルATS3及び応答グループ特定属性テーブルATG3を生成する。これら応答特定属性テーブルATS3及び応答グループ特定属性テーブルATG3は、絞込みテーブル3と共に、絞込みテーブル類3を構成する。
【0097】
また、絞込み処理部155は、絞込み処理3において生成された絞込みテーブル3に基づいて、最新の発話に含まれる単語によって、回答の候補を一意に特定できるか否かを判定する。回答の候補を一意に特定できる場合、その回答の候補が属性の関連性に基づく回答の候補を決定するために用いられる。
【0098】
また、絞込み処理部155は、絞込み処理3において生成された絞込みテーブル3に基づいて、最新の発話に含まれる単語によって、回答の候補を一意に特定できない場合、ユーザから、回答をさらに絞込み可能な属性(即ち、回答の特定に有効な属性)の発話を誘導する対話を行う。具体的には、絞込み処理部155は、絞込みテーブル3における列の要素に「1」を含む属性のうち、回答を現在よりも絞込むことができる属性(即ち、回答を一意に特定可能な属性または回答の候補が現在よりも減少する属性)を、絞込みのための情報としてユーザに提示する属性に採用する。また、絞込み処理部155は、絞込みテーブル3に含まれる属性を、回答を現在よりも絞込むことができるものに更新する。即ち、絞込み処理部155は、絞込みテーブル3において、最新の発話に含まれる単語が関連する回答の候補の全てと関連している単語(即ち、回答の特定に有効でない属性)を除外し、最新の発話に含まれる単語が関連する回答の候補の一部と関連している単語(即ち、回答の特定に有効な属性)を残して、絞込みテーブル3を更新する。具体的には、絞込み処理部155は、絞込みテーブル3において、最新の発話に含まれる単語と関連性を有する回答のグループを特定し、特定された回答のグループに対応するテーブルの要素が全て“1”である列の属性を削除し、それ以外の属性で要素に“1”が1つでもある列の属性を残すことで、絞込みテーブル3を更新する。このとき、最新の発話に含まれる単語も除外して絞込みテーブル3が更新される。また、絞込みテーブル3の更新に合わせて、絞込みテーブル類3の応答特定属性テーブルATS3及び応答グループ特定属性テーブルATG3も更新され、更新された絞込みテーブル類3は、絞込み処理3の入力とされる。
このような処理により、システムから回答を絞込むために有効な属性の発話をユーザに促すことができる。
【0099】
絞込み処理部155は、絞込み処理1、絞込み処理2及び絞込み処理3を並行して実行し、絞込み処理1~3によって絞込みテーブル1~3を逐次生成及び更新する。そして、絞込み処理部155は、絞込み処理1~3による回答の候補の特定結果を統合処理部156に出力する。なお、絞込み処理1は、問い合わせにおける初回の発話から実行され、絞込み処理2は、問い合わせにおける2回目の発話(システムから回答を絞込むために行った初回の対話に対する発話)から実行され、絞込み処理3は、問い合わせにおける3回目の発話(システムから回答を絞込むために行った2回目の対話に対する発話)から実行される。
【0100】
ここで、絞込み処理1~3において、絞込みテーブル1~3の生成(または更新)及び絞込み処理2,3の入力となる絞込みテーブルの置換(受け渡し)については、発話毎に回答を絞込むことが可能な種々の形態を取ることが可能であるが、一例として、本実施形態では、以下のような手順を定めている。
(1)絞込みテーブル1は、最新の発話において、抽出フィルタによって単語が抽出された場合、絞込み処理1によってコネクタテーブルに含まれる単語を絞込むことにより、逐次生成される。回答が一意に特定されず、絞込みテーブル1が更新された場合、絞込み処理2の入力は、更新された絞込みテーブル1に置換される。
(2)絞込みテーブル1は、最新の発話において、抽出フィルタによって単語が抽出されなかった場合、更新されない。
【0101】
(3)絞込みテーブル2は、初期化された直後(絞込みテーブル類1~3がリセットされた直後)の発話に対しては、生成されない(絞込み処理2が実行されない)。
(4)絞込みテーブル2は、初期化された直後以外の発話に対しては、前回の発話に対する絞込み処理1の出力である絞込みテーブル類1において、最新の発話で抽出された単語に合致する属性があれば、絞込み処理2によって絞込みテーブル1に含まれる単語を絞込むことにより生成される。回答が一意に特定されず、絞込みテーブル2が更新された場合、絞込み処理3の入力は、更新された絞込みテーブル2に置換される。
(5)絞込みテーブル2は、初期化された直後以外の発話に対しては、前回の発話に対する絞込み処理1の出力である絞込みテーブル類1において、最新の発話で抽出された単語に合致する属性がなければ、生成されない。
【0102】
(6)絞込みテーブル3は、初期化された直後(絞込みテーブル類1~3がリセットされた後)の発話に対しては、生成されない(絞込み処理3が実行されない)。
(7)絞込みテーブル3は、初期化されてから2回目(絞込みテーブル類1~3がリセットされた後の後)の発話に対しては、生成されない(絞込み処理3が実行されない)。
(8)絞込みテーブル3は、初期化された直後及び初期化されてから2回目以外の発話に対しては、前回の発話に対する絞込み処理2の出力である絞込みテーブル類2において、最新の発話で抽出された単語に合致する属性があれば、絞込み処理2によって絞込みテーブル2に含まれる単語を絞込むことにより生成される。回答が一意に特定されず、絞込みテーブル3が更新された場合、引き続き、問い合わせのための発話が行われるときには、絞込み処理3の入力は、更新された絞込みテーブル3に置換される。
(9)絞込みテーブル3は、初期化された直後及び初期化されてから2回目以外の発話に対しては、前回の発話に対する絞込み処理2の出力である絞込みテーブル類2または前回の発話に対する絞込み処理3の出力である絞込みテーブル類3において、最新の発話で抽出された単語に合致する属性がなければ、生成されない。
【0103】
図13は、抽出フィルタ生成の一例を示す模式図である。
なお、ここでは、説明の便宜のため、
図13において具体的なデータが示されている欄にのみ注目し、「・・・」で示される欄のデータは考慮しないものとする(
図14においても同様とする)。
また、
図13に示す例では、説明の便宜のため、回答を表すコンテンツ全体の属性を対象として図示しているが、回答を表すコンテンツの部分の属性についても、同様に取り扱うことができる。
【0104】
図13に示すように、抽出フィルタが生成される場合、初めに、絞込み処理部155は、コネクタDB174を参照し、想定された問い合わせに対して用意されている回答を一意に特定可能な属性を表す単語を抽出して、各回答に付与された番号と対応付けたテーブル形式のデータ(応答特定属性テーブルATS0)を生成する。また、絞込み処理部155は、コネクタDB174を参照し、想定された問い合わせに対して用意されている回答(全体または部分)のグループを特定可能な属性を表す単語を抽出して、属性毎に回答に付与された番号群を対応付けたテーブル形式のデータ(応答グループ特定属性テーブルATG0)を生成する。さらに、絞込み処理部155は、応答特定属性テーブルATS0に含まれる単語及び応答グループ特定属性テーブルATG0に含まれる単語の類似語を取得し、応答特定属性テーブルATS0及び応答グループ特定属性テーブルATG0に含まれるオリジナルの単語と、その単語の類似語とを対応付けたテーブル形式のデータ(拡大属性テーブル)を生成する。そして、絞込み処理部155は、拡大属性テーブルに含まれる単語列からなる抽出フィルタを生成する。
【0105】
図14Aは、抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する過程の一例を示す模式図である。
また、
図14Bは、問い合わせのための発話が複数回入力された場合の絞込みテーブル1~3の変化の一例を示す模式図である。
なお、
図14Aにおいては、抽出フィルタによって抽出された単語から、コネクタテーブル類に含まれる応答特定属性テーブルATS0及び応答グループ特定属性テーブルATG0を介して回答の候補が特定される場合の例を示しているが、絞込みテーブル類1~3においても、応答特定属性テーブルATS1~3及び応答グループ特定属性テーブルATG1~3を介して同様に回答の候補が特定される。
例えば、問い合わせを開始する発話として、下記発話例(1)の発話が行われたとする。
発話例(1)「議事録製品について知りたい。」
【0106】
このとき、発話例(1)の発話から、以下のように属性を表す単語が抽出されたものとする。
抽出単語:「議事録製品」(オリジナルの単語)
【0107】
発話例(1)の場合、「議事録製品」が抽出フィルタに含まれる単語と一致し、オリジナルの単語である「議事録製品」が、応答グループ特定属性テーブルATG0に含まれる。このとき、「議事録製品」によって#1、#2、#Xの回答が特定され、絞込み処理1によって絞込みテーブル1が生成される(
図14Bの「発話例(1)の結果」参照)。具体的には、特定された回答のグループ#1、#2、#Xにおいて、各回答に対応付けられている属性が取得される。そして、取得された属性を表す単語と、各回答の番号との関連性を表す情報を要素とする絞込みテーブル1、応答特定属性テーブルATS1及び応答グループ特定属性テーブルATG1が生成される。
【0108】
この場合、回答を一意に特定することができないため、絞込みテーブル1を参照し、絞込みテーブル1における列の要素に「1」を含む属性のうち、回答を現在よりも絞込むことができる属性(即ち、回答を一意に特定可能な属性または回答の候補が現在よりも減少する属性)を、絞込みのための情報としてユーザに提示する属性に採用する。また、絞込みテーブル1において、最新の発話に含まれる単語が関連する回答の候補の全てと関連している単語(即ち、回答の特定に有効でない属性)を除外し、最新の発話に含まれる単語が関連する回答の候補の一部と関連している単語(即ち、回答の特定に有効な属性)を残して、絞込みテーブル1が更新される。これにより、ユーザから、回答の特定に有効な属性の発話を誘導する対話が実行される。
具体的には、絞込みテーブル1を参照すると、#1、#2、#Xの回答は、「XXシステム」、「リモート会議」のいずれかが発話されれば、回答を現在よりも絞込むことができるため、ユーザに対して、「「XXシステム」、「リモート会議」を話して頂ければお答えすることができます。」との発話が出力される。
【0109】
情報処理システム1が、回答の特定に有効な属性の発話を誘導する対話を行うことに対応して、ユーザが発話を行うと、この発話に含まれる単語を基に、絞込み処理1,2が実行され、絞込みテーブル1,2が生成される。この結果、回答の候補がさらに絞込まれる。
例えば、情報処理システム1が、回答の特定に有効な属性の発話を誘導する対話を行った後、2回目の発話として、ユーザが、下記追加発話例のような発話を行ったとする。
追加発話例(1)「XXシステムに興味あり」
【0110】
追加発話例(1)においては、「XXシステム」が抽出フィルタに含まれる単語と一致する。
追加発話例(1)に対し、絞込み処理1では、上述の「議事録製品」の場合と同様の処理が実行される。
一方、絞込み処理2では、オリジナルの単語である「XXシステム」が、応答グループ特定属性テーブルATG1に含まれる。このとき、「議事録製品」によって#2、#Xの回答が特定され、絞込み処理2によって絞込みテーブル2が生成される(
図14Bの「追加発話例(1)の結果」参照)。具体的には、特定された回答のグループ#2、#Xにおいて、各回答に対応付けられている属性が取得される。そして、取得された属性を表す単語と、各回答の番号との関連性を表す情報を要素とする絞込みテーブル2、応答特定属性テーブルATS2及び応答グループ特定属性テーブルATG2が生成される。
【0111】
この場合、回答を一意に特定することができないため、絞込みテーブル2を参照し、絞込みテーブル2における列の要素に「1」を含む属性のうち、回答を現在よりも絞込むことができる属性(即ち、回答を一意に特定可能な属性または回答の候補が現在よりも減少する属性)を、絞込みのための情報としてユーザに提示する属性に採用する。また、絞込みテーブル2において、最新の発話に含まれる単語が関連する回答の候補の全てと関連している単語(即ち、回答の特定に有効でない属性)を除外し、最新の発話に含まれる単語が関連する回答の候補の一部と関連している単語(即ち、回答の特定に有効な属性)を残して、絞込みテーブル2が更新される。
これにより、ユーザから、回答の特定に有効な属性の発話を誘導する対話が実行される。
具体的には、絞込みテーブル2を参照すると、#2、#Xの回答は、「リモート会議」が発話されれば、回答を一意に絞込むことができるため、ユーザに対して、「「リモート会議」を話して頂ければお答えすることができます。」との発話が出力される。
【0112】
情報処理システム1が、回答の特定に有効な属性の発話を誘導する対話を行うことに対応して、ユーザが発話を行うと、この発話に含まれる単語を基に、絞込み処理1~3が実行され、絞込みテーブル1~3が生成される。この結果、絞込みテーブル3において、回答の候補が一意に絞込まれる。
例えば、情報処理システム1が、回答の特定に有効な属性の発話を誘導する対話を行った後、3回目の発話として、ユーザが、下記追加発話例のような発話を行ったとする。
追加発話例(2)「リモート会議ってなに?」
【0113】
追加発話例(2)においては、「リモート会議」が抽出フィルタに含まれる単語と一致する。
追加発話例(2)に対し、絞込み処理1,2では、上述の「議事録製品」及び「XXシステム」の場合と同様の処理が実行される。
一方、絞込み処理3では、オリジナルの単語である「リモート会議」が、応答グループ特定属性テーブルATG2に含まれる。このとき、「リモート会議」によって#Xの回答が特定され、絞込み処理3によって絞込みテーブル3が生成される(
図14Bの「追加発話例(2)の結果」参照)。この結果、ここで示す例においては、絞込みテーブル3において、回答の候補が一意に絞込まれることとなる。
【0114】
統合処理部156は、特定された言語処理による回答の候補及び絞込み処理1~3の結果を統合して特定する処理を実行し、発話された問い合わせに対する応答内容(最終的な回答または回答の特定に有効な属性の発話を誘導する対話の内容)最終的な回答を特定する。本実施形態において、統合処理部156は、以下のような選択基準によって最終的な回答を特定する。
【0115】
即ち、統合処理部156は、
(i)言語処理による回答の候補として、一定の確度を有するもの(例えば、言語処理による特定結果のスコアが閾値以上のもの等)が特定されている場合、言語処理による回答の候補を最終的な回答として選択する。
(ii)言語処理による回答の候補として、一定の確度を有するものが特定されていない場合、属性の関連性に基づく回答の候補として、絞込みテーブル1、絞込みテーブル2、あるいは、絞込みテーブル3が1つの回答に絞込まれている場合には、その絞込まれた回答を最終的な回答として選択する。
(iii)属性の関連性に基づく回答の候補が(ii)の結果以外の場合、言語処理による回答の候補が絞込みテーブル1、絞込みテーブル2、あるいは、絞込みテーブル3における回答の候補に含まれていれば、言語処理による回答の候補を最終的な回答として選択する。
(iv)属性の関連性に基づく回答の候補が(iii)の結果以外の場合、最新の発話に対して、絞込み効果があった絞込みテーブル類(即ち、回答を絞込むことができた絞込み処理1~3の結果)を参照して、絞込みの効果のある属性(回答の候補が現在よりも減少する属性)を含む次のユーザの発話を促すメッセージを生成し、それを応答とする。ただし、最新の発話に対して、絞込み効果があった絞込みテーブル類が複数存在する場合、番号がより大きい絞込み処理の出力である応答グループ特定属性テーブルを参照する。
【0116】
[動作]
次に、情報処理システム1の動作を説明する。
[自動探索処理]
図15は、情報処理システム1が実行する自動探索処理の流れを示すフローチャートである。
自動探索処理は、サーバ20において、自動探索処理の実行を指示する操作が行われることに対応して開始される。
図15に示すフローチャートにおいて、ステップS1~ステップS5の処理は、
図10Aに示す第1実施形態の自動応答処理と同様である。
なお、本実施形態においては、自動探索処理の実行に先立ち、絞込み処理1で用いられるコネクタテーブル及び応答特定属性テーブルATS0及び応答グループ特定属性テーブルATG0(コネクタテーブル類)が設定される。
【0117】
ステップS6Aにおいて、絞込み処理部155は、絞込み処理1~3を並列的に実行し、それぞれの特定結果を統合処理部156に出力する。
ステップS7Aにおいて、統合処理部156は、言語処理による回答の候補を特定できたか否か(一定の確度を有する回答の候補を特定できたか否か)の判定を行う。
言語処理による回答の候補を特定できた場合、ステップS7AにおいてYESと判定されて、処理はステップS13Aに移行する。
一方、言語処理による回答の候補を特定できていない場合、ステップS7AにおいてNOと判定されて、処理はステップS8Aに移行する。
【0118】
ステップS8Aにおいて、統合処理部156は、絞込み処理1~3の結果を基に、予め設定された選択基準によって回答の候補を特定する。
ステップS9Aにおいて、統合処理部156は、絞込み処理1~3によって回答の候補を一意に特定できたか否かの判定を行う。
絞込み処理1~3によって回答の候補を一意に特定できた場合、ステップS9AにおいてYESと判定されて、処理はステップS13Aに移行する。
一方、絞込み処理1~3によって回答の候補を一意に特定できていない場合、ステップS9AにおいてNOと判定されて、処理はステップS10Aに移行する。
【0119】
ステップS10Aにおいて、絞込み処理部155は、絞込みテーブル類1~3を更新する。これにより、絞込みテーブル類1~3に含まれる属性が、回答を現在よりも絞込むことができるものに更新される。なお、最新の発話に含まれる単語によって、絞込みテーブル1~3が絞込まれていない(回答の候補が現在よりも減少していない)場合、その絞込みテーブルが属する絞込みテーブル類は更新されない(ステップS10Aの処理はスキップされる)。
ステップS11Aにおいて、絞込み処理部155は、属性の発話を誘導する対話内容を決定する。
ステップS12Aにおいて、絞込み処理部155は、更新された絞込みテーブル類を他の絞込み処理の入力として置換(受け渡し)する。なお、最新の発話に含まれる単語によって、絞込みテーブル1~3が絞込まれていない(回答の候補が現在よりも減少していない)場合、その絞込みテーブルが属する絞込みテーブル類は他の絞り込み処理の入力として置換(受け渡し)されない(ステップS12Aの処理はスキップされる)。
【0120】
ステップS13Aにおいて、統合処理部156は、問い合わせに対する応答を音声またはテキストデータとして出力(端末装置10に送信)する。このとき、統合処理部156は、問い合わせに対する応答として、言語処理による回答の候補が特定されている場合、特定された言語処理による回答の候補を出力し、言語処理による回答の候補が特定されていない場合、属性の関連性に基づく回答の候補または属性の発話を誘導する対話内容を出力する。ステップS13Aにおいて送信された応答のデータは、端末装置10の応答受信部53によって受信され、応答出力部54によって、音声または画像表示によって出力される。なお、このとき、複数の回答の候補に絞込まれている場合、これら複数の回答の候補を最終的な回答として出力することとしてもよい。
【0121】
ステップS14Aにおいて、統合処理部156は、自動応答処理の終了条件に合致しているか否かの判定を行う。自動応答処理の終了条件としては、例えば、発話された問い合わせに対して、一意に回答を特定して応答を出力したことや、ユーザによって問い合わせを終了する操作が行われたこと等を定義することができる。
問合せ処理の終了条件に合致していない場合、ステップS14AにおいてNOと判定されて、処理はステップS1に移行する。
一方、自動応答処理の終了条件に合致している場合、ステップS14AにおいてYESと判定されて、自動探索処理は終了する。
【0122】
以上のように、本実施形態に係る情報処理システム1においては、属性の関連性に基づく回答の候補を選択するための処理として、異なる機能を有する複数の絞込み処理1~3を並列的に実行し、これら並列的な処理による特定結果及び言語処理を用いた特定処理による特定結果を統合して応答の内容を特定する。そして、1度の問い合わせのための発話によって回答を特定することができない場合に、情報処理システム1は、回答の特定に有効な属性を自動的に絞込み、ユーザによる有意な発話を誘導する対話を自律的に行う。
これにより、属性の関連性に基づく回答の候補として、適切な回答が特定される可能性を高めることができる。
【0123】
また、本実施形態に係る情報処理システム1においては、回答を表すコンテンツ全体を回答として特定される対象とする他、コンテンツの部分(例えば、パラグラフ、セクションあるいは動画の時間帯等)を回答として特定される対象としている。
これにより、想定された問い合わせに対して用意されている回答のコンテンツの一部として、適切な回答が含まれている場合にも、その一部を回答として特定することができるため、適切な回答が特定される可能性をさらに高めることができる。
したがって、情報処理システム1によれば、発話に対する自動応答を行う際に、処理時間を短縮しつつ、より適切な応答内容を特定することが可能となる。
【0124】
[第3実施形態]
次に、本発明の第3実施形態について説明する。
本実施形態に係る情報処理システム1は、第1実施形態の情報処理システム1において、言語処理による回答の候補の特定を実行しないと共に、想定された問い合わせが備える属性から生成された問い合わせ用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する第1の特定処理と、想定された問い合わせに対して用意されている回答が備える属性から生成された回答用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する第2の特定処理と、を並列的に実行し、第1の特定処理または第2の特定処理で特定された回答を最終的な回答として出力するものである。
【0125】
本実施形態における情報処理システム1のシステム構成、情報処理装置のハードウェア構成、端末装置10の機能的構成等の主要な部分は、第1実施形態と同様であるため、異なる部分を主として説明する。
以下、第1実施形態と異なる部分であるサーバ20の機能的構成及び自動応答処理のフローチャートを主として説明する。
【0126】
[機能的構成]
図16は、本実施形態におけるサーバ20の機能的構成を示すブロック図である。
また、
図17は、本実施形態における情報処理システム1の具体的機能構成例を示す模式図である。
応答内容DB173には、想定された問い合わせ内容を表すテキストデータ(ここでは、担当者の氏名)と、想定された問い合わせに対して用意されている回答(ここでは、担当者の電話番号)とが対応付けられた応答内容テーブルのデータが格納されている。
【0127】
図18は、本実施形態における応答内容テーブルの一例を示す模式図である。
図18に示すように、本実施形態の応答内容テーブルには、想定された問い合わせ内容を表すテキストデータ(担当者の氏名)と、想定された問い合わせに対して用意された回答(担当者の電話番号)と、想定された問い合わせに付与された番号と、想定された問い合わせに対して用意されている回答に付与された番号とが対応付けて格納されている。
【0128】
コネクタDB174には、想定された問い合わせに対応する第1のコネクタテーブルのデータと、想定された問い合わせに対して用意されている回答に対応する第2のコネクタテーブルのデータとが記憶されている。
図19は、第1のコネクタテーブルの一例を示す模式図であり、
図20は、第2のコネクタテーブルの一例を示す模式図である。
【0129】
図19に示すように、第1のコネクタテーブルには、想定された問い合わせに付与された番号と、想定された問い合わせを表すテキストデータ(即ち、担当者の氏名)と、想定された問い合わせの属性を表す単語(担当者の呼び名等)と、想定された問い合わせに対して用意された回答(担当者の電話番号)に付与された番号とが、対応付けて格納されている。例えば、
図19に示す第1のコネクタテーブルの第2行には、想定された問い合わせを表す「河野三郎」(氏名)について、想定された問い合わせの属性として、「河野」(苗字)という単語が格納されている。
【0130】
また、
図20に示すように、第2のコネクタテーブルには、想定された問い合わせ(即ち、担当者)毎に、応答の能力・担当(部署、役職、担当商品等)の属性を表す単語と、想定された問い合わせに対して用意されている回答に付与された番号とが、対応付けて格納されている。例えば、
図20に示す第2のコネクタテーブルの第2行には、想定された問い合わせに対して用意されている回答の属性を表す単語(本社/開発部/開発課/・・・/XX商品/・・・)と、想定された問い合わせに対して用意されている回答に付与された番号とが格納されている。
【0131】
図16及び
図17に戻り、本実施形態におけるサーバ20は、言語処理による回答の候補を特定しないことから、言語処理部154及び統合処理部156を備えていない。また、本実施形態におけるサーバ20は、ディクテーションの音声認識処理を実行することなく、2つの単語抽出の音声認識処理を並列に実行するため、
図9に示す第1実施形態のディクテーション音声認識部501に代えて、単語抽出音声認識部501Aが備えられている。
【0132】
ここで、2つの単語抽出の音声認識処理の一方は、想定された問い合わせに含まれる単語を抽出するための音声認識処理であり、他方は、想定された問い合わせに対して用意されている回答に含まれる単語を抽出するための音声認識処理である。
したがって、
図17において、単語抽出音声認識部501Aが参照する単語辞書DB172の辞書データには、想定された問い合わせに含まれる単語が登録されており、単語抽出音声認識部511が参照する単語辞書DB172の辞書データには、想定された問い合わせに対して用意されている回答に含まれる単語が登録されている。
【0133】
また、
図16及び
図17における絞込み処理部155は、想定された問い合わせが備える属性から生成された問い合わせ用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する第1の特定処理を実行し、想定された問い合わせに対して用意されている回答が備える属性から生成された回答用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する第2の特定処理を実行する。
そして、絞込み処理部155によって実行された第1の特定処理及び第2の特定処理の結果から、質問に対する回答が一意に特定され、最終的な回答とされる。
【0134】
図21は、問い合わせ用抽出フィルタ生成の一例を示す模式図である。
なお、ここでは、説明の便宜のため、
図20において具体的なデータが示されている欄にのみ注目し、「・・・」で示される欄のデータは考慮しないものとする(
図22~
図25においても同様とする)。
図21に示すように、問い合わせ用抽出フィルタを生成する場合、初めに、絞込み処理部155は、コネクタDB174の第1のコネクタテーブルを参照し、応答特定属性の単語を抽出して、各回答に付与された番号と対応付けたテーブル形式のデータ(応答特定属性テーブル)を生成する。また、絞込み処理部155は、コネクタDB174の第1のコネクタテーブルを参照し、応答グループ特定属性の単語を抽出して、属性毎に回答に付与された番号群を対応付けたテーブル形式のデータ(応答グループ特定属性テーブル)を生成する。さらに、絞込み処理部155は、応答特定属性テーブルに含まれる単語及び応答グループ特定属性テーブルに含まれる単語を類似語で拡大する。例えば、その単語に対して予め用意された類似語群のデータや、インターネット等を介して外部から取得される類似語として使用可能な単語のデータ(例えば、オントロジーを参照して取得される類似概念を表す単語のデータ等)で拡大する。さらに、絞込み処理部155は、応答特定属性テーブル及び応答グループ特定属性テーブルに含まれるオリジナルの単語と、その単語の類似語とを対応付けたテーブル形式のデータ(拡大属性テーブル)を生成する。そして、絞込み処理部155は、拡大属性テーブルに含まれる単語列からなる問い合わせ用抽出フィルタを生成する。
【0135】
また、
図22は、回答用抽出フィルタ生成の一例を示す模式図である。
本実施形態において、回答用抽出フィルタは、想定された問い合わせが備える属性から生成される問い合わせ用抽出フィルタとは別に、想定された問い合わせに対して用意されている回答が備える属性から生成される。
図22に示すように、回答用抽出フィルタが生成される場合、初めに、絞込み処理部155は、コネクタDB174の第2のコネクタテーブルを参照し、応答特定属性の単語を抽出して、各回答に付与された番号と対応付けたテーブル形式のデータ(応答特定属性テーブル)を生成する。また、絞込み処理部155は、コネクタDB174の第2のコネクタテーブルを参照し、応答グループ特定属性の単語を抽出して、属性毎に回答に付与された番号群を対応付けたテーブル形式のデータ(応答グループ特定属性テーブル)を生成する。さらに、絞込み処理部155は、応答特定属性テーブルに含まれる単語及び応答グループ特定属性テーブルに含まれる単語を類似語で拡大する。例えば、その単語に対して予め用意された類似語群のデータや、インターネット等を介して外部から取得される類似語として使用可能な単語のデータ(例えば、オントロジーを参照して取得される類似概念を表す単語のデータ等)で拡大する。さらに、絞込み処理部155は、応答特定属性テーブル及び応答グループ特定属性テーブルに含まれるオリジナルの単語と、その単語の類似語とを対応付けたテーブル形式のデータ(拡大属性テーブル)を生成する。そして、絞込み処理部155は、拡大属性テーブルに含まれる単語列からなる回答用抽出フィルタを生成する。
【0136】
図23は、問い合わせ用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する過程の一例を示す模式図である。また、
図24は、回答用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する過程の一例を示す模式図である。
例えば、下記発話例(1)~(3)の発話が行われたとする。
発話例(1)「営業の山田さんをお願いします。」
発話例(2)「開発のカワノさんをお願いします。」
発話例(3)「XX商品が分かる技術の人をお願いします。」
【0137】
このとき、各発話例の発話から、以下のように属性を表す単語が抽出されたものとする。
発話例(1)「山田」(問い合わせ用抽出フィルタより)、「営業」(回答用抽出フィルタより)
発話例(2)「カワノ」(問い合わせ用抽出フィルタより)、「開発」(回答用抽出フィルタより)
発話例(3)「XX商品」(回答用抽出フィルタより)、「技術」(回答用抽出フィルタより)
【0138】
発話例(1)の場合、「山田」が問い合わせ用抽出フィルタに含まれる単語と一致し、「営業」が回答用抽出フィルタに含まれる単語と一致し、「山田」から#2、#3の回答が特定されると共に、「営業」から#3、#4の回答が特定される。即ち、発話例(1)の場合、第1の特定処理及び第2の特定処理の結果の論理積から#2の回答(山田太郎)が特定され、最終的な回答とされる。
【0139】
発話例(2)の場合、「カワノ」が問い合わせ用抽出フィルタに含まれる単語と一致し、「開発」が回答用抽出フィルタに含まれる単語と一致し、「カワノ」及び「開発」のいずれからも#1の回答が特定される。即ち、発話例(2)の場合、第1の特定処理または第2の特定処理の結果から#1の回答(河野三郎)が特定され、最終的な回答とされる。
【0140】
発話例(3)の場合、問い合わせ用抽出フィルタに含まれる単語とは属性が一致せず、「XX商品」及び「技術」が回答用抽出フィルタに含まれる単語と一致し、「XX商品」から#1、#3の回答が特定されると共に、「技術」から#1の回答が特定される。即ち、発話例(3)の場合、第2の特定処理の結果から#1の回答(河野三郎)が特定され、最終的な回答とされる。
【0141】
[動作]
次に、情報処理システム1の動作を説明する。
図25は、情報処理システム1が実行する自動応答処理の流れを示すフローチャートである。
自動応答処理は、サーバ20において、自動応答処理の実行を指示する操作が行われることに対応して開始される。
本実施形態における自動応答処理は、
図10Aに示す第1実施形態の自動応答処理に対し、ステップS41-1の処理がステップS41-1Aに変更され、ステップS41-2の処理がステップS41-2Aに変更されていると共に、ステップS5~ステップS9の処理がステップS105~ステップS107に変更されている点が異なっている。
【0142】
即ち、ステップS4において、サーバ20の音声認識処理部153は、前処理が実行された後の音声データに対し、複数の音声認識エンジンによって、並列的に音声認識処理(S41-1A~S43-1及びS41-2A~S43-2)を実行する。
具体的には、ステップS41-1Aにおいて、単語抽出音声認識部501Aは、単語抽出の音声認識処理(ここでは、ルールグラマーの音声認識処理またはDNNを用いた音声認識処理とする。)を行うための音声認識エンジンにより音声データを処理し、音声データに含まれる特定の単語を抽出してテキストデータに変換する。なお、ステップS41-1Aにおける音声認識処理は、想定された問い合わせに含まれる単語を抽出するための音声認識処理であり、想定された問い合わせに含まれる単語が予め登録された単語抽出用の辞書を参照して、音声認識処理が実行される。
【0143】
また、ステップS41-2Aにおいて、単語抽出音声認識部511は、単語抽出の音声認識処理(ここでは、ルールグラマーの音声認識処理またはDNNを用いた音声認識処理とする。)を行うための音声認識エンジンにより音声データを処理し、音声データに含まれる特定の単語を抽出してテキストデータに変換する。なお、ステップS41-2Aにおける音声認識処理は、想定された問い合わせに対して用意されている回答に含まれる単語を抽出するための音声認識処理であり、想定された問い合わせに対して用意されている回答に含まれる単語が予め登録された単語抽出用の辞書を参照して、音声認識処理が実行される。
ステップS43-1及びステップS43-2の後、処理はステップS105に移行する。
【0144】
ステップS105において、絞込み処理部155は、第1の特定処理及び第2の特定処理を実行し、発話された問い合わせに対する最終的な回答を特定する。即ち、絞込み処理部155は、音声認識処理部153-1によって取得された単語抽出の音声認識結果(即ち、想定された問い合わせに含まれる単語)と、問い合わせ用抽出フィルタに含まれる単語とが一致するか否かを判定し、一致する場合、問い合わせ用抽出フィルタに含まれる一致した単語を基に、予め用意されている回答の絞込みを行う。また、絞込み処理部155は、音声認識処理部153-2によって取得された単語抽出の音声認識結果(即ち、想定された問い合わせに対して用意されている回答に含まれる単語)と、回答用抽出フィルタに含まれる単語とが一致するか否かを判定し、一致する場合、回答用抽出フィルタに含まれる一致した単語を基に、予め用意されている回答の絞込みを行う。そして、絞込み処理部155は、第1の特定処理及び第2の特定処理の絞込み結果を基に、発話された問い合わせに対する最終的な回答を特定する。
【0145】
ステップS106において、統合処理部156は、特定した最終的な回答を音声またはテキストデータとして端末装置10に送信する。送信された回答のデータは、端末装置10の応答受信部53によって受信され、応答出力部54によって、音声または画像表示によって出力される。なお、ステップS106において出力される応答は、一意に特定された回答を応答する場合の他、複数の回答の候補を一意に特定するための発話を促す応答や、複数の回答の候補を出力する応答としてもよい。
【0146】
ステップS107において、統合処理部156は、自動応答処理の終了条件に合致しているか否かの判定を行う。自動応答処理の終了条件としては、例えば、発話された問い合わせに対して、一意に回答を特定して応答を出力したことや、ユーザによって問い合わせを終了する操作が行われたこと等を定義することができる。
問合せ処理の終了条件に合致していない場合、ステップS107においてNOと判定されて、処理はステップS1に移行する。
一方、自動応答処理の終了条件に合致している場合、ステップS107においてYESと判定されて、自動応答処理は終了する。
【0147】
以上のように、本実施形態における情報処理システム1においては、想定された問い合わせが備える属性から生成された問い合わせ用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する第1の特定処理と、想定された問い合わせに対して用意されている回答が備える属性から生成された回答用抽出フィルタを用いて、属性の関連性に基づく回答の候補を特定する第2の特定処理と、を並列的に実行し、第1の特定処理または第2の特定処理で特定された回答を最終的な回答として出力する。
そのため、言語処理による回答の候補の特定を実行することなく、想定された問い合わせの内容及び想定された問い合わせに対して用意されている回答の属性から、問い合わせに対する回答を特定することができる。
したがって、発話に対する自動応答を行う際に、処理時間を短縮しつつ、より適切な応答内容を特定することが可能となる。
【0148】
[変形例1]
上述の各実施形態において、探索用データとして、複数のテーブルを生成する場合を例に挙げて説明したが、これに限られない。
即ち、探索用データの形式は特に限定されるものではなく、データ(属性を表す単語や回答の番号等)間の関係を辿って回答を特定できるものであれば、1つのテーブルによって構成したり、ポインタ等によって関係を規定されたデータ群によって構成したりすることが可能である。
【0149】
[変形例2]
第2実施形態において、絞込み処理2は、最新の発話及び前回の発話を基に、属性の関連性に基づく回答の候補を特定するものとして説明したが、これに限られない。
即ち、絞込み処理2は、最新の発話及び最新の発話に先行する過去の任意の回数の発話を基に、属性の関連性に基づく回答の候補を特定することが可能である。
これにより、絞込み処理2において反映させる過去の発話の回数を、統計的なデータあるいは情報処理システム1が適用される用途等に応じて、適切に設定することが可能となる。
また、絞込み処理2として、最新の発話及び最新の発話に先行する異なる回数の過去の所定回の発話を基に、属性の関連性に基づく回答の候補を特定する複数の処理(即ち、複数層の絞込み処理2)を並列的に実行することができる。
これにより、ユーザによる問い合わせのための発話の方向性が変化したり、ユーザがシステムからの誘導に則さない単語を発話したりした場合にも、直近の所定回の発話による絞込み結果(絞込みテーブル)を活用して、絞込み処理を継続することができる。
そのため、ユーザの意図を適確に反映させて回答を絞込むことが可能となるため、ユーザの選好性に対応して、問い合わせに対する適切な回答を早期に特定することができる。
【0150】
[変形例3]
第1実施形態及び第2実施形態において、音声認識処理部153は、第1音声認識部153-1~第n音声認識部153-nを備え、複数の音声認識処理を並列的に実行する場合を例に挙げて説明したが、これに限られない。例えば、音声認識処理部153が、1つの音声認識エンジン(例えば、汎用のディクテーションを行う音声認識エンジン等)によって音声認識処理された結果を出力し、この音声認識結果に対して、言語処理による回答の候補を特定する処理と、属性の関連性に基づく回答の候補を特定する処理とを並列的に実行することとしてもよい。例えば、1つの音声認識結果に対して、第2実施形態の絞込み処理1~3及び言語処理による回答の候補を特定する処理を並列的に実行することができる。
また、1つの音声認識結果に対して、言語処理による回答の候補及び属性の関連性に基づく回答の候補を特定することに加え、回答の特定に有効な属性の発話を誘導する対話の内容(メッセージ)を特定することも可能である。
このとき、ユーザによる問い合わせのための発話に対し、AI(Artificial Intelligence)を用いて、回答または回答の特定に有効な属性の発話を誘導する対話を応答することとしてもよい。
この場合、処理負荷の増大を抑制しつつ、単独の音声認識処理による処理結果よりも有用な情報を得ることができる。
なお、このとき用いられる音声認識処理の種類としては、汎用のディクテーションを目的とするものの他、特定分野向けのディクテーションを目的とするものや、単語抽出による音声認識を行うもの等、種々の音声認識処理を用いることが可能である。
【0151】
[変形例4]
第2実施形態において、ユーザの発話に対して、抽出フィルタを用いた単語抽出の音声認識処理を実行し、抽出された単語を基に、絞込み処理1~3によって、属性の関連性に基づく回答の候補を絞込む場合を例に挙げて説明したが、これに限られない。
即ち、ユーザが回答を絞込むための単語を含む発話を行い、音声認識によって単語を入力する形態以外にも、画面操作によって単語を入力する形態を用いることができる。
例えば、絞込み処理1に入力する問い合わせのための単語を画面操作によって入力したり、絞込み処理1あるいは絞込み処理2で絞込まれた回答の候補をさらに絞込むための単語を画面操作によって入力したりすることができる。
画面操作によって単語を入力する形態としては、端末装置10のディスプレイ(出力部816)において、ウィンドウ内に回答の候補と関連性を有する単語(属性を表す単語)をスクロール表示(移動させて表示)し、ユーザがマウスクリックあるいはタップ操作等によって単語を選択する形態とすることが可能である。また、画面操作によって単語を入力する他の形態としては、端末装置10のディスプレイ(出力部816)において、ウィンドウ内に回答の候補と関連性を有する単語(属性を表す単語)をプルダウンメニュー等によって一覧表示し、ユーザがマウスクリックあるいはタップ操作等によって単語を選択する形態や、単語をテーブル形式で一覧表示し、各単語に付されたチェックボックスをユーザがオンとすることにより単語を選択する形態とすること等が可能である。
【0152】
なお、絞込み処理1で選択対象となる単語として、コネクタテーブル類に含まれる各テーブルに格納されている単語を表示することができる。また、絞込み処理2あるいは絞込み処理3で選択対象となる単語として、絞込みテーブル類1あるいは絞込みテーブル類2に含まれる各テーブルに格納されている単語(即ち、絞込み処理によって絞込まれた後の単語)を表示することができる。
画面操作によって単語を入力する場合、ユーザは、画面に表示された候補となる単語をヒントに、回答を特定するために有効な単語を選択することができる。
なお、回答の候補と関連性を有する単語(属性を表す単語)を上述のいずれかの形態で画面に表示し、ユーザがいずれかの単語を発話することで、単語を選択することも可能である。
さらに、画面操作によって単語を入力する形態の他、キーボード操作等によって単語を入力する形態とすることも可能である。
この場合、ユーザが任意のテキスト(単語あるいは文章等)を入力することに対応して、入力されたテキストに含まれる単語を抽出することで、属性の関連性に基づく回答の候補を絞込むことができる。
【0153】
[変形例5]
上述の実施形態及び変形例において、問い合わせを音声によって受け付ける場合について説明したが、これに限られない。
即ち、チャットによる問い合わせ等、問い合わせをテキストデータによって受け付けることも可能である。
したがって、上述の実施形態及び変形例において、音声による問い合わせを音声認識処理する構成については、問い合わせの内容を表すテキストデータを取得する構成で、適宜置換することが可能である。
【0154】
以上のように構成される情報処理システム1は、コネクタDB174と、音声認識処理部153と、絞込み処理部155及び統合処理部156と、を備える。
コネクタDB174は、想定された問い合わせに関する第1の属性情報を記憶する。
コネクタDB174は、想定された問い合わせに対する回答に関する第2の属性情報を記憶する。
音声認識処理部153は、問い合わせの内容を取得する。
絞込み処理部155及び統合処理部156は、音声認識処理による音声認識結果が有する属性情報と、第1の属性情報及び第2の属性情報とに基づいて、問い合わせに対する回答を含む応答(回答または対話のメッセージ)を特定する。
これにより、想定された問い合わせの内容及び想定された問い合わせに対して用意されている回答の属性から、問い合わせに対する回答を特定することができる。
したがって、問い合わせに対する自動応答を行う際に、処理時間を短縮しつつ、より適切な応答内容を特定することが可能となる。
【0155】
音声認識処理部153は、問い合わせのための発話が音声認識処理された音声認識結果を取得する。
これにより、音声による問い合わせが行われた場合に、処理時間を短縮しつつ、より適切な応答内容を特定することが可能となる。
【0156】
絞込み処理部155は、音声認識処理による音声認識結果が有する属性情報と、第1の属性情報及び第2の属性情報と、第1の属性情報及び第2の属性情報から拡大された属性を表す拡大属性情報とに基づいて、問い合わせに対する回答を含む応答を特定する。
これにより、表現のゆらぎや趣旨が類似する単語が用いられた場合等、想定されていない表現が用いられた場合であっても、発話された問い合わせに適合する回答を容易に特定することが可能となる。
【0157】
また、情報処理システム1は、音声認識処理部153と、言語処理部154と、絞込み処理部155と、統合処理部156と、を備える。
音声認識処理部153は、問い合わせのための発話が音声認識処理された音声認識結果を取得する。
言語処理部154は、音声認識処理部153による音声認識結果が表す意味内容から、問い合わせに適合する回答の候補を言語処理によって特定する。
絞込み処理部155は、音声認識処理部153による音声認識結果から問い合わせに含まれる単語を抽出し、問い合わせに含まれる単語に基づく属性情報と、問い合わせに対する回答に基づく属性情報との関連性に基づいて、問い合わせに適合する回答の候補を特定する。
統合処理部156は、言語処理部154によって特定された回答の候補と、絞込み処理部155によって特定された回答の候補とに基づいて、問い合わせに対する回答を含む応答を特定する。
これにより、言語処理に基づく特定方法のみならず、属性を表す単語の一致性に基づく特定方法を用いて、問い合わせに対する回答を特定することができる。
したがって、発話に対する自動応答を行う際に、処理時間を短縮しつつ、より適切な応答内容を特定することが可能となる。
【0158】
絞込み処理部155は、問い合わせに対する回答に基づく属性情報と、問い合わせに対する回答に基づく属性情報から拡大された属性を表す拡大属性情報とに基づいて、問い合わせに対する回答を含む応答を特定する。
これにより、表現のゆらぎや趣旨が類似する単語が用いられた場合等、想定されていない表現が用いられた場合であっても、発話された問い合わせに適合する回答を容易に特定することが可能となる。
【0159】
統合処理部156は、言語処理部154によって取得された回答の候補の確度が設定された閾値以上の場合、言語処理部154によって取得された回答の候補を回答とし、言語処理部154によって取得された回答の候補の確度が設定された閾値未満の場合、絞込み処理部155によって特定された回答の候補を回答とする。
これにより、問い合わせの発話が行われた際に、高速に、より高精度な音声認識結果を取得して、適切な回答を特定することが可能となる。
【0160】
また、情報処理システム1は、音声認識処理部153と、絞込み処理部155と、統合処理部156と、を備える。
絞込み処理部155は、想定された問い合わせに関する第1の属性情報と、想定された問い合わせに対する回答に関する第2の属性情報とに基づいて、想定された問い合わせに対する回答に対応付けられた1または複数の属性によって構成される探索用データを生成する。
音声認識処理部153は、問い合わせの内容を取得する。
絞込み処理部155及び統合処理部156は、問い合わせの内容が有する属性情報と、探索用データとに基づいて、問い合わせの内容に対する回答を含む応答を特定する。
これにより、問い合わせが行われた際に、探索用データを用いて、高速に回答を特定することが可能となる。
【0161】
音声認識処理部153は、問い合わせのための発話が音声認識処理された音声認識結果を取得する。
これにより、音声による問い合わせが行われた場合に、探索用データを用いて、高速に回答を特定することが可能となる。
【0162】
探索用データは、問い合わせの内容が取得される以前に用意され、問い合わせの内容が取得されることにより、生成されている探索用データを参照して、問い合わせの内容に対する回答が特定される。
これにより、問い合わせが行われることに先立って、探索用データが用意されるため、問い合わせの発話が行われた際に、高速に回答を特定することが可能となる。
【0163】
探索用データは、回答を一意に特定可能な属性を表す応答特定情報と、複数の回答の候補を特定可能な属性を表す応答グループ特定情報とを含む。
これにより、問い合わせのための発話に含まれる単語が回答を一意に特定可能な属性を表すものであるか、複数の回答の候補を特定可能な属性を表すものであるかに応じて、適切に回答を特定する処理を行うことができる。
【0164】
探索用データは、応答特定情報及び応答グループ特定情報に含まれる属性から拡大された属性を表す拡大属性情報を含む。
これにより、表現のゆらぎや趣旨が類似する単語が用いられた場合等、想定されていない表現が用いられた場合であっても、発話された問い合わせに適合する回答を容易に特定することが可能となる。
【0165】
絞込み処理部155は、音声認識処理部153によって取得された問い合わせの内容によって、問い合わせに対する複数の回答が特定される場合に、探索用データに含まれる想定された問い合わせに対する回答に対応付けられた1または複数の属性を、問い合わせの内容に対する回答が一意に特定される属性、または、問い合わせの内容に対する回答がより少なく特定される属性に絞込む。
絞込み処理部155は、絞込まれた属性に基づいて、応答として、問い合わせの内容に対する回答を特定するための追加の問い合わせの内容を誘導する対話を実行する。
これにより、ユーザが、適切な内容の問い合わせを行わなかった場合にも、さらなる問い合わせを受け付けて、適切な回答を特定することが可能となる。
【0166】
絞込み処理部155は、オリジナルの探索用データ全体を対象として、最新の問い合わせの内容に対する回答の特定を行う第1の絞込み処理と、オリジナルの探索用データから属性が絞込まれた探索用データを対象として、過去の所定回の問い合わせの内容に基づく回答の特定を行う第2の絞込み処理と、を並列的に実行する。
これにより、属性の関連性に基づく回答の候補として、適切な回答が特定される可能性を高めることができる。
【0167】
絞込み処理部155は、第2の絞込み処理とは異なる回数の過去の所定回の問い合わせの内容に基づく回答の特定を行う第3の絞込み処理を、第1の絞込み処理及び第2の絞込み処理と並列的に実行する。
これにより、ユーザによる問い合わせの内容の方向性が変化したり、ユーザがシステムからの誘導に則さない内容の問い合わせを行ったりした場合にも、直近の所定回の問い合わせによる絞込み結果(絞込みテーブル)を活用して、絞込み処理を継続することができる。
そのため、ユーザの意図を適確に反映させて回答を絞込むことが可能となるため、ユーザの選好性に対応して、問い合わせに対する適切な回答を早期に特定することができる。
【0168】
絞込み処理部155は、オリジナルの探索用データに含まれる属性を表す単語またはオリジナルの探索用データから絞込まれた属性を表す単語を画面に表示し、画面に表示された単語を選択することにより、問い合わせの内容に対する回答を絞込む。
これにより、ユーザは、画面に表示された候補となる単語をヒントに、回答を特定するために有効な単語を選択することができる。
【0169】
また、情報処理システム1は、音声認識処理部153と、絞込み処理部155と、を備える。
音声認識処理部153は、問い合わせのための発話が音声認識処理された音声認識結果を取得する。
絞込み処理部155は、想定された問い合わせに関する第1の属性情報と、想定された問い合わせに対する回答に関する第2の属性情報と、第1の属性情報及び第2の属性情報に関連する拡大された属性情報とを要素として含むフィルタによって、音声認識処理部153による音声認識結果が有する属性情報をフィルタ処理する。
絞込み処理部155は、フィルタ処理結果に基づいて、問い合わせのための発話に対する回答を含む応答を特定する。
これにより、問い合わせのための発話から属性を表す単語を高速に抽出して、属性の関連性に基づく回答の候補を特定することが可能となる。
【0170】
絞込み処理部155は、問い合わせのための発話から抽出された単語に関連する第1の属性情報または第2の属性情報を特定し、第1の属性情報または第2の属性情報に対応付けられた想定された問い合わせに対する回答を、問い合わせのための発話に対する回答として特定する。
これにより、問い合わせのための発話に含まれる単語に関連する回答を容易に特定することが可能となる。
【0171】
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
例えば、上述の実施形態において、情報処理システム1を複数の情報処理装置を含むシステムとして構成する例について説明したが、これに限られない。即ち、情報処理システム1が備える機能を単体の情報処理装置に備えることにより、本発明を実現することとしてもよい。
【0172】
また、サーバ20の機能を複数のサーバに分散して実装したり、端末装置10にサーバの機能の一部を実装したり、端末装置10の機能の一部をサーバに実装したりすることとしてもよい。
例えば、上述の各実施形態において、音声認識処理をサーバ20において実行するものとしたが、音声認識処理を端末装置10で実行することとしてもよいし、他のシステム等で実行された音声認識結果を取得(受信等)して処理に用いることとしてもよい。
また、上述の各実施形態において、探索用データは、応答内容テーブルの更新あるいは運用結果に基づく属性を表す単語の更新(追加、修正、削除等)に応じて、逐次更新することができる。
【0173】
また、上述の実施形態及び変形例に記載された構成を適宜組み合わせて、本発明を実施することが可能である。
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
換言すると、
図3,4,9,16,17の機能的構成は例示に過ぎず、特に限定されない。即ち、上述した一連の処理を全体として実行できる機能が情報処理システム1に備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に
図3,4,9,16,17の例に限定されない。
また、1つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
【0174】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
【0175】
プログラムを記憶する記憶媒体は、装置本体とは別に配布されるリムーバブルメディア、あるいは、装置本体に予め組み込まれた記憶媒体等で構成される。リムーバブルメディアは、例えば、磁気ディスク、光ディスク、光磁気ディスクあるいはフラッシュメモリ等により構成される。光ディスクは、例えば、CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk),Blu-ray Disc(登録商標)等により構成される。光磁気ディスクは、MD(Mini-Disk)等により構成される。フラッシュメモリは、例えば、USB(Universal Serial Bus)メモリあるいはSDカードにより構成される。また、装置本体に予め組み込まれた記憶媒体は、例えば、プログラムが記憶されているROM、ハードディスクあるいはフラッシュメモリ等で構成される。
【0176】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムの用語は、複数の装置や複数の手段等より構成される全体的な装置を意味するものとする。
【符号の説明】
【0177】
1 情報処理システム、10 端末装置、20 サーバ、30 ネットワーク、800 情報処理装置、811 CPU、812 ROM、813 RAM、814 バス、815 入力部、815a 操作入力部、815b 音声入力部、816 出力部、817 記憶部、818 通信部、819 ドライブ、820 撮像部、831 リムーバブルメディア、51 発話受付部、52 発話データ送信部、53 応答受信部、54 応答出力部、151 発話データ受信部、152 前処理部、153 音声認識処理部、153-1 第1音声認識部、153-2 第2音声認識部、154 言語処理部、155 絞込み処理部、156 統合処理部、171 音声認識辞書データベース(音声認識辞書DB)、172 単語辞書データベース(単語辞書DB)、173 応答内容データベース(応答内容DB)、174 コネクタデータベース(コネクタDB)、501 ディクテーション音声認識部、502 第1認識結果特定部、503 第1認識結果出力部、511 単語抽出音声認識部、512 第2認識結果特定部、513 第2認識結果出力部