以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一の符号を付し、その繰り返しの説明は省略する。一方で、ある図において符号を付して説明した部位について、他の図の説明の際に再度の図示はしないが同一の符号を付して言及する場合がある。
(概要)
本発明の一実施の形態である対話型業務支援システムは、例えば、BtoCの環境において、顧客からの電話での問い合わせに対して即時に対応するヘルプデスク業務やコミュニケータ業務を、オペレータが迅速かつ高精度に行うことを可能とする情報処理システムである。
図1は、本発明の実施の形態1である対話型業務支援システムの構成例について概要を示した図である。図1に示す対話型業務支援システム1は、サーバ機器等である。顧客4からの電話による問合せがあると、対話型業務支援システム1は、CTIサーバ2を介して入力された音声データを解析する。対話型業務支援システム1は、当該音声データを解析した結果に基づいた情報をオペレータ3が使用するオペレータ端末31へ出力する。オペレータ端末31は、当該情報を画面情報として、表示部(ディスプレイ等)に表示する。
ここで、対話型業務支援システム1の詳細を説明する前に、オペレータ端末31に表示される画面の例について説明する。
図2は、本発明の一実施の形態におけるオペレータ端末31に表示される画面の例について概要を示した図である。図2の例では、損害保険会社の顧客対応の場合を例として、オペレータが顧客から電話での問い合わせを受けてこれに対応する際に、適切な回答に至ることができるようオペレータ3を支援するための各種情報が表示されている状態を示している。
画面左列の「通話内容」欄には、顧客4とオペレータ3との間の対話の内容を音声認識技術によりリアルタイムでテキスト化した内容がチャット形式で表示されている。その際、重要なフレーズやキーワードとして自動的に抽出された語句が強調表示されている(図中では太字としているが、文字色や字体、背景色等を変更するものであってもよい)。
画面中央列の「お問い合わせ内容」欄には、「通話内容」欄に表示された対話内容に基づいて、自動的に認識された顧客4の問い合わせの内容を示す要約文が表示され、画面右列の「回答候補」欄には、顧客の問い合わせの意図として理解された内容に合致する回答候補として、既存のFAQ等から抽出されたものがリストされている。なお、画面右列の「FAQ ID:~」欄には、回答候補のリストからオペレータ3が選択したFAQについて、その内容がプレビュー表示され、オペレータ3はこれを参照することができる。
画面中央列の「追加質問候補」欄には、理解された問い合わせの意図(「車で指を挟んだ」)を副題とするFAQから、主題(「どのような状況であれば保険請求できるか」)として設定されている内容において特定すべき項目の候補と、これを特定するための追加質問(聞き返し)の候補が自動的に抽出されて表示されている。これらの項目が特定されることで、その内容に基づいて「回答候補」欄のFAQがさらに絞り込まれることになる。オペレータ3は、顧客応対を行いながらこのリストを参照し、回答候補のFAQを絞り込むための追加質問を選択して、その内容を顧客4に対して聞き返す。
聞き返し、およびこれに対する顧客4の回答に係る対話は、上記と同様に音声認識技術によりリアルタイムでテキスト化され、「通話内容」欄および「お問い合わせ内容」欄に反映されるとともに、回答内容が「追加質問候補」欄の対象の追加質問における項目に自動的に反映される。例えば、「追加質問候補」欄の質問内容(図2の例では、例えば、「お車は保険の対象となる…」)の下に表示された項目の候補のトグルボタン(図2の例では、「対象」、「非対象」)が、回答内容応じて自動的にオン/オフされる(図2の例では「対象」ボタンが自動的にオンとなっている)。
聞き返し、およびこれに対する回答の内容に応じて、「お問い合わせ内容」欄、および「追加質問候補」欄の内容がリアルタイムで変化するのに伴い、「回答候補」欄のFAQのリストも時々刻々と変化し、絞り込まれていく。そして、最終的に顧客の問い合わせに対する回答となるFAQが特定され、オペレータはこれを参照して顧客に対して回答することができる。
なお、「回答候補」欄のFAQのリストが時々刻々と変化する際、対話の状況によっては、オペレータ3は、最新のリストに表示されたFAQからではなく、以前表示されていたがリストの内容の変化により削除されたFAQに基づいて回答したい(もしくは回答した)場合も生じ得る。そのため、例えば、「回答候補」欄のリストでオペレータ3が現在選択し、その内容がプレビュー表示されているFAQや、リスト中でオペレータ3が指定したFAQについては、「ピン留め」や「タブ表示」等により、リストの内容が変化しても削除されないようにしてもよい。
その後、顧客4に対する応対が終了した場合は、例えば、「通話内容」欄のテキストの内容を自動的に要約したものや、テキストから把握される顧客4の氏名その他の属性情報等を、図示しないCRM(顧客管理)システムや応対履歴管理システム等の外部のシステムに対して応対履歴として自動的に記録するようにしてもよい。また、回答されたFAQの内容等で顧客4に開示可能なものについては、電子メールやSNS(Social Networking Service)によって顧客4に提供するようにしてもよい。
上述したような手法により、例えば、キーワードの入力やFAQの検索、応対記録の作成等の手動による作業を可能な限り廃止して自動化することができる。すなわち、オペレータ3はほぼハンズフリーで顧客4への対応を行うことができる。以下では、このような聞き返しを含む対話により問い合わせの意図や意味を理解しながら適切な回答候補を抽出することでヘルプデスク業務やコミュニケータ業務を支援する手法について説明する。
なお、以下の説明では、顧客4からの電話での問い合わせに対してオペレータ3が有人対応する場合を例としているが、顧客4からの自然言語での問い合わせに対して聞き返しを含む対話により回答候補を抽出する構成であれば、他の構成に適用することも可能である。例えば、近年広く用いられているいわゆるチャットボットを用いて、顧客4からチャット形式で受け付けた問い合わせに対して自動的に聞き返しの対話を行いながら回答する無人対応の構成に適用することも可能である。
(実施の形態1)
<システム構成>
図1に戻り、対話型業務支援システム1の詳細を説明する。対話型業務支援システム1は、例えば、上述のようにサーバ機器やクラウドコンピューティングサービス上に構築された仮想サーバ等により構成され、図示しないCPU(Central Processing Unit)により、HDD(Hard Disk Drive)等の記録装置からメモリ上に展開したOS(Operating System)やDBMS(DataBase Management System)、Webサーバプログラム等のミドルウェアや、その上で稼働するソフトウェアを実行する。これにより、顧客4からの電話での問い合わせに対応する、オペレータ3のヘルプデスク業務やコミュニケータ業務の支援に係る後述する各種機能を実現する。
顧客4からの電話での問い合わせは、CTIサーバ2を介して音声データとして入力される。なお、CTIサーバ2は、一般的なCTI(Computer Telephony Integration)システムを適宜用いることができる。IVR(Interactive Voice Response)の機能を備えていてもよい。また、顧客4からの問い合わせに対して応対するオペレータ3は、PC(Personal Computer)等の情報処理端末であるオペレータ端末31を使用して、FAQ等が蓄積されたナレッジコンテンツ5の内容等を参照しながら応対する。CTIサーバ2やオペレータ端末31はいずれも、例えば、図示しないLAN(Local Area Network)等のネットワークを介して対話型業務支援システム1との間で通信可能なように接続される。
対話型業務支援システム1は、例えば、ソフトウェアとして実装された構文解析部11、意味解析部12、回答候補抽出部13、応対支援インタフェース(I/F)14、および音声認識部15等の各部を有する。また、データベースやファイル、メモリテーブル等により実装された辞書データ16、解析ルール17、対話コンテンツ18、および対話ログ19等の各種データを有する。
構文解析部11は、自然言語の文章からなるテキストデータについて、辞書データ16や解析ルール17の登録内容に基づいて形態素解析等の構文解析を行う機能を有する。また、意味解析部12は、構文解析部11による構文解析結果に基づいて、問い合わせの文章の意味属性(例えば、「要望」、「困難」、「否定」、「疑問」、…等)を文法的に解析して付与する機能を有する。構文解析部11および意味解析部12については、例えば、公知の形態素解析エンジンや構文解析エンジン等を適宜用いることができる。上述の特許文献1に記載された談話構造解析システムを用いて、談話セマンティクスとしてこれらの情報を得るようにしてもよい。
構文解析部11および意味解析部12による解析は、後述するように、コンテンツの構築系処理(事前処理)と、実行系処理(対話)の2つの場面で行われる。構築系処理では、過去に行われた、もしくはこの先想定される問い合わせとこれに対する回答の内容が蓄積されたFAQ等の既存のナレッジコンテンツ5を入力としてバッチ処理的に解析を行い、顧客4からの問い合わせに対する聞き返しの内容を生成するための対話コンテンツ18を出力する。実行系処理では、顧客4からの問い合わせに係る音声データを音声認識部15によりテキスト化したデータを入力としてリアルタイムで解析を行い、問い合わせの内容を解釈したり、キーワードや重要なフレーズを抽出したりする。
回答候補抽出部13は、構文解析部11および意味解析部12による解析結果に基づいて、問い合わせの意図を解釈し、ナレッジコンテンツ5や対話コンテンツ18の内容に基づいて回答の候補を抽出する。回答候補の抽出については、公知の全文検索エンジンを用いる構成としてもよい。回答候補を1つに絞り込むことができた場合は、これを正式な回答とすることができる。絞り込めなかった場合は、対話コンテンツ18の内容に基づいて、絞り込むための追加質問(聞き返し)の内容を抽出する。
応対支援I/F14は、オペレータ端末31に対して図2の例に示したようなオペレータ3の顧客応対を支援する画面を表示する機能を有する。また、顧客4とオペレータ3との間で行われた対話の内容に係るテキストデータを対話ログ19として記録する機能を有する。なお、対話ログ19に記録された内容を、顧客応対の完了後随時、もしくは定期的に別途解析することで、ナレッジコンテンツ5に追加する新たなエントリを得ることが可能である。
例えば、対話ログ19に記録された内容を解析し、図示しない差分検知部において解析内容とナレッジコンテンツ5の内容を比較して、ナレッジコンテンツ5に含まれない新たな内容であれば、自動的にナレッジコンテンツ5に追加するようにしてもよい。また、解析内容とナレッジコンテンツ5の内容を比較し、意味が近接するものをグループ化した上で、一覧を出力して定期的に管理者等のユーザに提示するようにしてもよい。ユーザが、提示された一覧中の各グループに含まれる各コンテンツを確認して、統一等の処理が自動的に実行されることを意味するフラグを付与できるようにしてもよい。
音声認識部15は、CTIサーバ2等から取得した、顧客4とオペレータ3との間の対話に係る音声データを、公知の音声認識技術によりリアルタイムでテキスト化する機能を有する。顧客4に係る問い合わせの発話に限らず、オペレータ3の発話についてもテキスト化することで、図2の画面例における「通話内応」欄のように対話全体を把握して解析することができる。
特に、顧客4の発話に係る音声データは、不明瞭であったり内容が解釈できなかったりする場合がある一方、通常はオペレータ3の発話に係る音声データは鮮明に取得することができ、また、教育・訓練されていることから内容も明確に把握することができる。そこで、顧客4の発話についてオペレータ3が把握した内容を「○○ですね?」のように復唱することで、顧客4の発話からではなく(もしくはこれに加えて)、オペレータ3の発話から問い合わせ内容を把握するようにしてもよい。顧客4の発話から把握するか、オペレータ3が復唱した発話から把握するかは、自動的に切り替えてもよいし、オペレータ3が指定してもよい。
<処理の内容(実行系処理)>
図3は、本実施の形態における実行系処理の流れの例について概要を示したフロー図である。以下の例では、携帯電話会社が契約者である顧客からの問い合わせに対して応対する場合を挙げて説明する。対話型業務支援システム1の音声認識部15を介して、顧客からの問い合わせに係るテキストデータを受け付けると、構文解析部11および意味解析部12により、問い合わせの内容を文章(例えば、「迷惑メールがたくさん来る」)として把握する(S01)。把握した内容は、上述したように、例えば、図2の画面例における「お問い合わせ内容」欄にリアルタイムで表示する。表示された問い合わせ内容が適切ではない場合、オペレータ3が修正できるようにしてもよい。
問い合わせ内容が把握されると、そのテキストデータについて、構文解析部11および意味解析部12により意味内容の解析を行う(S02)。ここでは、構文解析部11により文章を単語に分解し、複合語化や品詞分類を行う。例えば、「迷惑メールを拒否したい」という問い合わせに対して、「迷惑メール」、「拒否する」という語に分類する。解析の精度向上のため、辞書データ16を用いた類似語の統一(例えば、「いたずらメール」→「迷惑メール」)を行ってもよい。
その後、回答候補抽出部13により、対話コンテンツ18から回答候補を抽出する(S03)。ここでは、例えば、ステップS02で問い合わせの文章を解析した結果に基づいて全文検索エンジンにより対話コンテンツ18に対する全文検索を行う。このとき、例えば、携帯電話に係る問い合わせ中の「機種」という語に対して設定された具体的な「機種A」、「機種B」、「機種C」等の選択肢のように、問い合わせの内容を特定するための情報として所定の語に対して設定された属性値等を有するか否かについても併せて抽出する。
なお、属性値等が設定されていない語を抽出して一覧化し、定期的にユーザへ提示することで、属性値等を設定して所定の語とするようユーザに促してもよい。また、属性値等が設定されていない語を抽出する際に、意味が近接する語をグループ化してユーザに提示してもよく、意味が近接する語を自動的に統一するように処理してもよい。
回答候補の抽出に際して、例えば、図示しないCRMシステムから当該顧客4の氏名や年齢、性別、住所等の属性情報や、購買履歴、応対履歴等の情報を取得して、これらの情報を考慮するようにしてもよい。例えば、購買履歴を参照して、購買履歴中に含まれる商品等の中から、問い合わせの対象の商品を特定するようにしてもよい。複数の商品がある場合は、オペレータ3が問い合わせて特定してもよいし、その際に図2の画面例の「追加質問候補」欄に候補を表示して特定するようにしてもよい。また、過去の応対履歴を参照して、今回の問い合わせ内容と関連性・連続性がある場合には、自動もしくはオペレータ3からの指示に応じてこれらを併合した上で回答候補を抽出するようにしてもよい。
その後、得られた回答候補のそれぞれについて後述するような所定の手法により確度を算出し、これに基づいて回答候補の足切りおよび優先順位の設定を行う(S04)。そして、得られた回答候補が複数か否かを判定し(S05)、複数でない場合、すなわち1件(もしくはゼロ件)に絞り込まれた場合は(S05:No)、これを正式な回答(例えば、「機種Cの迷惑メールフィルタの設定方法は…」)として(S06)、応対支援I/F14によってオペレータ端末31に提示する。オペレータ3は、その内容(および対応するナレッジコンテンツ5中のFAQ)に基づいて顧客4に対して回答する。
なお、オペレータ3が対象のFAQについて実際に回答しているか否かを、音声認識部15により把握されたオペレータ3の発話内容から自動的に把握し、実際に回答している場合には、ナレッジコンテンツ5中の対象のFAQに対して「採用フラグ」を立てる等により記録するようにしてもよい。さらに、顧客4がその内容に理解・納得しているか否かを顧客4の発話内容から自動的に把握し、理解している場合には「解決フラグ」を立てる等により記録するようにしてもよい。また、抽出されたFAQが役立ったか否かの情報をオペレータ3に入力させるようにしてもよい。これらの情報は、例えば、後述する構築系処理においてナレッジコンテンツ5から対話コンテンツ18を作成する際の参考情報とすることができる。
一方、回答候補が複数得られた場合は(S05:Yes)、後述するような所定の手法によって聞き返し(例えば、(迷惑メールフィルタを候補とした上で)「機種を教えてください」等)の候補を生成して(S07)、応対支援I/F14によってオペレータ端末31に提示する。オペレータ3は、聞き返しの候補の中から状況に応じて適切な質問を選択して、これを顧客4に問い合わせる。聞き返しの候補の中にない、独自の新たな追加質問を行うことも可能である。聞き返しに対する顧客4からの回答(例えば、「機種Cです」)を受け付けると(S08)、その後は、受け付けた回答も含めた内容でステップS02以降の処理を必要に応じて繰り返すことで、聞き返しを行いながら回答候補を絞り込んでいく。
図4は、本実施の形態における対話コンテンツ18の例について概要を示した図である。図4の例では、対話コンテンツ18のテーブルは、各問い合わせ文を識別するIDと問い合わせ文、聞き返し1、2、3、…、および関連度の各項目を有している。各聞き返し項目(聞き返し1、2、3、…)はそれぞれ、聞き返しの内容毎に設けられ、各問い合わせ文に関連するキーワードが構築系処理において予め自動もしくは手動により設定されている。また、関連度の項目には、各問い合わせ文に対した予め算出された各キーワードの関連度が設定されている。この関連度は、例えば、文章中の単語の重要度を示すTF-IDF(Term Frequency - Inverse Document Frequency)等の公知の指標を適宜用いることができる。
上述の図3の処理において、全文検索により回答候補の抽出を行う際に、検索結果に付随する関連度の項目の値と、各聞き返し項目の設定の有無を併せて取得する。このとき、例えば、関連度の値に閾値を設け、閾値(例えば、0.2)未満のものについては足切りする。図4の例では、ID=1~3の問い合わせ文のみ抽出し、ID=4の問い合わせ文(関連度=0.1)については足切りする。抽出された問い合わせ文の数が多い場合には、関連度の値の降順でソートし、上位の所定の件数のみ抽出して下位の問い合わせ文については足切りするようにしてもよい。
その後、抽出された各問い合わせ文について、各聞き返し項目に値が設定されているものの数を、聞き返し項目毎にカウントする。図4の例では、この対話コンテンツ18の中から抽出されたID=1~3の3件の問い合わせ文のうち、聞き返し1の項目に値が設定されているのはID=1、2の2件である。同様に、聞き返し2については3件、聞き返し3についても3件となる。なお、聞き返し2については、3件の値が全て「迷惑メール」で同一であるため、聞き返し2の内容は「迷惑メール」で一意に確定することになる。
次に、一意に確定した聞き返し項目を除き、聞き返し項目毎に関連度の値を合計してその降順でソートし、合計が最も高い聞き返し項目を特定する。図4の例では、一意に確定した聞き返し2を除き、聞き返し1については0.9+0.9=1.8、聞き返し3については0.9+0.9+0.3=2.1となり、聞き返し3の合計が最も高いことになる。そして、図3のステップS05、S07の処理として、聞き返し3の内容に基づく聞き返し(例えば、「機種は何ですか?」)を生成して、オペレータ端末31に提示する。図2の画面例の「追加質問候補」欄に示したように、関連度の値の合計が高いものから順に、複数の聞き返しの候補をリストして表示するようにしてもよい。オペレータ3は、抽出された聞き返し候補の内容に基づいて、顧客4に対して追加質問を行うことができる。
その後、顧客4から聞き返しに対する回答(例えば、「機種2です」)を受け付けると、上述したように、その回答内容が図2の画面例の「追加質問候補」欄の対象の質問に自動的に反映される。オペレータ3は、さらに、「追加質問候補」欄でまだ質問がされていない他の聞き返し(例えば、「具体的な操作は何でしょうか?」)について、顧客4に対して問い合わせる。このように聞き返しを繰り返して顧客4から回答を受け付けることで、顧客4からの問い合わせに係る十分な内容を取得することができ、対話コンテンツ18の中から回答候補(および対応するナレッジコンテンツ5中のFAQ)を自動的に絞り込むことができる。
<処理の内容(構築系処理)>
構築系処理では、定期的に、もしくはユーザからの指示に基づいて、FAQ等のナレッジコンテンツ5から対話で利用する対話コンテンツ18を生成する。ここでは、例えば、構文解析部11および意味解析部12によりナレッジコンテンツ5の各文章(問い合わせと回答)に対して構文解析と意味解析を行い、「目的語-述語」の関係を抽出して、動詞や名詞を聞き返し項目に設定するキーワードとして抽出する。これにより、実行系処理において、例えば、動詞からなる問い合わせについては「何を」を取得するための聞き返しを生成することができる。また、名詞からなる問い合わせについては「どうするのか」を取得するための聞き返しを生成することができる。
以上に説明したように、本発明の実施の形態1である対話型業務支援システム1によれば、顧客4からの電話での問い合わせに対して、その音声データをテキスト化した内容から、問い合わせの意図や意味を文法的に解釈し、回答候補を絞り込むことで、単なるキーワードマッチにとどまらない、意味を捉えた対話を実現し、ヘルプデスク業務やコミュニケータ業務を迅速かつ高精度に行うことが可能である。また、例えば、キーワードの入力やFAQの検索、応対記録の作成等の手動による作業を、音声データに基づいて行うことで可能な限り自動化し、オペレータ3はほぼハンズフリーで顧客4への対応を行うことが可能となる。
(実施の形態2)
本発明の実施の形態2である対話型業務支援システムは、顧客4からの問い合わせに対する回答候補の抽出、およびその基礎となる対話コンテンツ18の生成の手法が実施の形態1と若干異なるものである。システム構成については実施の形態1における図1の構成と基本的に同様であるため、再度の説明は省略する。
本実施の形態では、実施の形態1と同様に、対話コンテンツ18の生成時および顧客4からの問い合わせの受け付け時に構文解析および意味解析を行い、問い合わせ文章の意味を解析した情報を取得する。本実施の形態では、さらに、解析ルール17に文章の主題解析を行うためのルールを追加し、構文解析の結果に対して「5W2H」の情報を追加できるようにすることで回答候補の検索精度を向上させる。例えば、本実施の形態におけるようなFAQ(ナレッジコンテンツ5)を絞り込むサービスを想定した場合、5W2HのうちのWHAT(ヲ格・ガ格で接続される名詞)とHOW(動詞・形容詞・サ変名詞の動詞的活用)の1W1Hを把握することができれば、問い合わせの主題(「何をどうしたい」等)をある程度特定して回答候補を精度良く絞り込むことができると考えられる。
図5は、本実施の形態における構文解析処理の例について概要を示した図である。例えば、図中の最上段に示した「プランを変更したい」という問い合わせ(ナレッジコンテンツ5に含まれる質問内容もしくは顧客4からの実際の問い合わせ)の文章に対して、構文解析部11により構文解析(形態素解析)を行った結果を次の段に示している。そして、意味解析部12により問い合わせの意味内容を解析した結果(「変更(したい)」→「要望」)を次の段に示している。さらに、解析ルール17に設定された主題解析ルールに基づいて5W2H(本実施の形態では1W1H)の情報を解析した結果(「プラン」→WHAT、「変更」→HOW)を最下段に示している。
<処理の内容(構築系処理)>
図6は、本実施の形態における構築系処理の流れの例について概要を示したフロー図である。実施の形態1と同様に、構築系処理では、定期的に、もしくはユーザからの指示に基づいて、ナレッジコンテンツ5から対話コンテンツ18を生成する。まず、ナレッジコンテンツ5の内容を取得し(S11)、各問い合わせの文書について構文解析部11による構文解析(S12)および意味解析部12による意味属性の抽出(S13)を行う。その後、上述の図5の例に示したような主題解析を行う(S14)。後述するように、1つの問い合わせの文章に主題が複数含まれる場合があり、この場合は、本質的な目的等に相当する主題(MAIN)と、その前提の内容等に相当する副題(SUB)として特定する。
さらに、必要に応じて顧客4の感情を解析するようにしてもよい(S15)。感情の解析は、例えば、予め解析ルール17に設定された感情表現のパターンとのマッチングに基づいて行うことができる。そして、以上の解析結果に基づいて、顧客4からの問い合わせの内容をナレッジコンテンツ5と照合するための対話コンテンツ18を出力する(S16)。
<処理の内容(実行系処理)>
図7は、本実施の形態における実行系処理の流れの例について概要を示したフロー図である。実施の形態1の図3に示したフロー図と同様に、対話型業務支援システム1の音声認識部15を介して、顧客からの問い合わせに係るテキストデータを受け付けると、構文解析部11および意味解析部12により、問い合わせの内容を文章として把握する(S21)。把握した内容は、上述したように、例えば、図2の画面例における「お問い合わせ内容」欄にリアルタイムで表示する。表示された問い合わせ内容が適切ではない場合、オペレータ3が修正できるようにしてもよい。
問い合わせ内容が把握されると、そのテキストデータについて、構文解析部11および意味解析部12により意味内容の解析を行う(S22)。ここでは、構文解析部11により文章を単語に分解し、複合語化や品詞分類を行う。辞書データ16を用いた類似語の統一を行ってもよい。
その後、問い合わせの文章を解析した結果に対して回答候補抽出部13もしくは意味解析部12により主題解析を行い、5W2H(本実施の形態ではWHATとHOWの1W1H)を特定する(S24)。WHATとHOWが特定できた場合、すなわち主題が特定できた場合は(S24:Yes)、これに基づいて回答候補抽出部13により対話コンテンツ18から回答候補を抽出し(S25)、応対支援I/F14によってオペレータ端末31に提示する。オペレータ3は、その内容に基づいて顧客4に対して回答する。
一方、主題が特定できなかった場合は(S24:No)、後述するように、WHATとHOWのそれぞれの特定状況に応じて、特定できていないものを特定するための聞き返しの内容を設定し(S26)、応対支援I/F14によってオペレータ端末31に提示する。オペレータ3は、聞き返しの候補の中から状況に応じて適切な質問を選択して、これを顧客4に問い合わせる。聞き返しに対する顧客4からの回答を受け付けると(S31)、その後は、受け付けた回答も含めた内容でステップS22以降の処理を必要に応じて繰り返すことで、聞き返しを行いながら問い合わせの主題を特定し、回答候補を絞り込んでいく。
<主題/副題による制御>
上述したように、本実施の形態では、対話コンテンツ18においてWHATとHOWの1W1Hからなる主題および副題を予め設定しておき、顧客4からの問い合わせについても同様に主題および副題を特定することで、問い合わせの意図を解釈した上でのマッチングを行うことを可能としている。
図8は、本実施の形態における対話コンテンツ18に主題/副題を設定した場合の例について概要を示している。図8(a)では、FAQ(ナレッジコンテンツ5)に対して主題(MAIN)、副題(SUB)を設定した対話コンテンツ18に対して、顧客4からの問い合わせが主題(MAIN)の情報にマッチしない場合の聞き返しの例を示しており、図8(b)では、主題(MAIN)の情報にマッチした場合の聞き返しの例を示している。
図8(a)では、例えば、「ID=16」のコンテンツである「携帯電話を紛失したので電話を止めたい。」というFAQについて、主題解析を行った結果として、前提にすぎない「『携帯電話』を『紛失』」が副題(SUB)に設定され、本質的な目的である「『電話』を『止める』」が主題(MAIN)に設定されたことを示している。同様に、「ID=24」のコンテンツである「携帯を紛失したので解約したい。」というFAQについて、「『携帯』を『紛失』」が副題(SUB)に設定され、「解約」が主題(MAIN)に設定されたことを示している。
ここで、顧客4からの問い合わせが「携帯をなくしてしまいました。」というものであった場合、構文解析および類似語の統一を行うと「『携帯』を『紛失』」となる。これを上述の対話コンテンツ18とマッチングすると、「ID=16」、「ID=24」いずれに対しても副題(SUB)の情報はマッチし、かつWHATとHOWのいずれも特定されるが、主題(MAIN)の情報はマッチしない、すなわち主題が不明な状態となる。この状態は、顧客4が本質的に何を問い合わせたいのか不明な状態であり、聞き返しとしては、主題(MAIN)を特定できるような内容とする。例えば、図8(a)の例では、副題(SUB)がマッチした「ID=16」と「ID=24」のFAQにおけるそれぞれの主題(MAIN)を選択的に質問してWHATとHOWを特定するための内容(「電話の停止をご希望でしょうか?解約をご希望でしょうか?」)とする。
また、図8(b)では、例えば、「ID=60」のコンテンツである「データ通信端末を紛失してしまった。」というFAQについて、主題解析を行った結果として、「『データ通信端末』を『紛失』」が主題(MAIN)に設定されたことを示している。ここで、顧客からの問い合わせが「データ通信端末をなくしてしまいました。」というものであった場合、構文解析および類似語の統一を行うと「『データ通信端末』を『紛失』」となる。これを上述の対話コンテンツ18とマッチングすると、主題(MAIN)の情報にマッチし、かつWHATとHOWのいずれも特定される。この状態は、顧客4の問い合わせの意図を理解して回答候補を絞り込むことができた(図中の例では1つに特定できた)状態であり、聞き返しとしては、対象のFAQ(「ID=60」)に係る回答を提示する内容(「かしこまりました。一時停止または…」)とする。
図9、図10は、本実施の形態における聞き返しの生成方法の例について概要を示した図である。聞き返しの生成は、例えば、回答候補抽出部13が回答候補の抽出と合わせて行ってもよいし、応対支援I/F14が生成して図2の画面例にしおける「追加質問候補」欄に表示するようにしてもよい。
図9では、顧客4の問い合わせの内容が、対話コンテンツ18において設定された主題(MAIN)と副題(SUB)のいずれの情報にマッチしたかに応じた聞き返しのパターンの例を示している。例えば、主題(MAIN)、副題(SUB)のいずれにもマッチした場合は、取得した主題(MAIN)の内容を主に聞き返すが、副題(SUB)で取得できた情報についても候補として確認する。例えば、顧客4からの問い合わせが「携帯をなくしてしまいました。」というものであった場合、「携帯電話を紛失されたのですね?」のように取得した主題(MAIN)の内容を聞き返す(復唱する)。さらに、「緊急通話停止をご希望でしょうか?」や「解約をご希望でしょうか?」のように、取得できた副題(SUB)の情報を聞き返してもよい。なお、単に復唱する聞き返しについては、例えば、図2の画面例の「追加質問候補」欄への表示を省略してもよい。
また、主題(MAIN)にのみマッチした場合は、取得した主題(MAIN)の内容を聞き返す(復唱する)。複数マッチした場合はいずれかを特定するための選択肢により確認する。また、副題(SUB)にのみマッチした場合は、マッチしたFAQにおいて取得できなかった主題(MAIN)の情報を元に、取得したい内容を確認する。例えば、顧客4からの問い合わせが「返金申請書」というものであった場合、「再発行をご希望でしょうか?」のようにマッチしたFAQにおいて対応する主題(MAIN)の内容を聞き返す。
また、主題(MAIN)、副題(SUB)のいずれにもマッチしなかった場合は、情報が取得できなかった旨を伝え、再度確認する。例えば、顧客4からの問い合わせが意味不明の内容(テキスト化された結果が日本語として解析できない文字列である等)であった場合(かつオペレータ3自身も内容を理解できなかった場合)は、「申し訳ございません。ご質問に該当する情報が見つかりません。よろしければ、より詳しい情報をお伝えいただけませんでしょうか?」のように聞き返す。
図10では、聞き返しの文章を生成する際のパターンの例を示している。本実施の形態では、問い合わせにマッチしたFAQにおける主題(MAIN)のWHATおよびHOWの情報を組み合わせることで、聞き返しの文字列を自動生成する。例えば、図示するように、HOWが名詞(サ変名詞)の場合、「(WHAT『の』)HOW『をご希望』…」のように生成する。また、HOWが動詞の場合、「(WHAT『を』)HOW『たい』…」のように生成する。また、HOWが存在しない場合、「WHAT『をご希望』…」のように生成する。このような聞き返しにより、主題(MAIN)のWHATとHOWのうち取得できていないものについて、自然な対話を通して取得することができる。
以上に説明したように、本発明の実施の形態2である対話型業務支援システム1によれば、対話コンテンツ18の生成時および顧客4からの問い合わせの受け付け時に構文解析および意味解析を行い、問い合わせ文章の意味を解析した情報を取得する。さらに、解析ルール17に文章の主題解析を行うためのルールを追加し、構文解析の結果に対して「5W2H(本実施の形態では1W1H)」の情報を追加できるようにする。これにより、問い合わせの主題に係るWHATおよびHOWの取得状況に応じて不足分を取得するための適切な聞き返しを行うことができ、対話コンテンツ18に対する回答候補の検索精度を向上させることができる。
(実施の形態3)
上述の実施の形態1、2では、構築系処理により対話コンテンツ18が予め作成されている。ここでの「対話コンテンツ」とは、Q&A形式のコンテンツ(例えば、FAQ等のナレッジコンテンツ5)に対して、その主題を特定するために埋めるべきWHATおよびHOWのパラメータとなるべき情報(以下では「スロット情報」と記載する場合がある)、およびスロット情報を埋めるための聞き返しの内容等の情報を含むものである。
ここで、顧客4からの問い合わせに対して適切に回答する対応力をより向上させるためには、回答に際して既存のFAQ(ナレッジコンテンツ5)を参照するだけでは足りず、例えば、製品マニュアルやWebサイト等についても対象とする必要が生じる場合がある。これらの資料は、例えば、ワープロソフトに対応した形式やPDFファイル等、様々な形式で存在し、量も多く、回答に際して参照すべき箇所を探すのが困難で時間もかかる場合が多い。
そこで、これらの資料も情報源とした上で迅速・適切に回答できるようにするため、既存のFAQと同様に、予め対話コンテンツ化して対話コンテンツ18に登録しておくことが考えられる。しかし、これらの資料は、上述したように様々な形式で存在し、また、内容がQ&A形式となっていないものも多く、これらの資料の内容をQ&Aの形で分割・抽出し、要約して対話コンテンツ化する作業を人手で行うには負担が過大となる。
そこで、本発明の実施の形態3である対話型業務支援システムは、対話コンテンツ18を作成する構築系処理において、上述したような様々な種類や形式の既存資料を情報源とすることを可能とするものである。これにより、顧客4への迅速・適切な回答を可能とするとともに、そのための対話コンテンツ18の作成に係る運用負荷を低減するものである。
<システム構成>
図11は、本発明の実施の形態3である対話型業務支援システムの構成例について概要を示した図である。図11では、本実施の形態における構築系処理に係る構成のみ記載しており、実行系処理に係る構成については、実施の形態1における図1の構成全体と基本的に同様であるため、その部分の記載と説明を省略する。本実施の形態の対話型業務支援システム1は、例えば、上述の図1の構成に加えて、ソフトウェアとして実装されたコンテンツ抽出部71、重複チェック部72、およびスロット情報付与部73等の各部を有する。
コンテンツ抽出部71は、例えば、情報源の各種の資料からQ&A形式のコンテンツとなり得るデータを抽出し、コンテンツ候補74として出力する機能を有する。情報源となる資料には、ナレッジコンテンツ5を構成する既存のFAQ5aの他に、例えば、各種のマニュアル5bや約款5cのデータ、図示しないWebサイト上のFAQ等が含まれ得る。このように、幅広い資料を情報源とすることで、顧客4への対応力をより向上させることができる。
また、顧客4への対応力をより向上させるためには、例えば、ベテランのオペレータ3の経験やノウハウを可視化・対話コンテンツ化して共有することも有効である。しかし、ベテランのオペレータ3は回答に際してFAQ5aやその他のナレッジコンテンツ5をあまり参照しない場合も多いため、例えば、顧客応対のログからでは、どのコンテンツの内容に基づいて回答したのかを把握することができない場合も多い。そこで、本実施の形態では、顧客4と(ベテランの)オペレータ3との間で行われた対話の内容に係るテキストデータを記録した対話ログ19についても情報源として用いるものとする。なお、対話ログ19を情報源として用いる場合、個人情報等の開示が不適切な情報が含まれている場合があるため、このような情報が含まれている場合は該当部分を削除したりマスクしたり等の対応を行うものとする。個人情報を特定する技術や個人情報をマスクする技術については、周知慣用技術があり、それらを用いる。
コンテンツ抽出部71では、例えば、情報源の資料の種類や形式毎に、各資料について、Q&A形式のコンテンツとなり得る箇所で分割・抽出する。分割・抽出に際しては、必要に応じて、例えば、図1の構成例に示した構文解析部11や意味解析部12等による自然言語処理や解析を行ってもよいし、公知の機械学習アルゴリズムを用いるようにしてもよい。資料の種類や形式に応じて分割・抽出の処理内容が異なり得るため、例えば、処理内容毎にAPI(Application Programming Interface)化しておき、資料の種類や形式に応じて対応するAPIを呼び出すようにしてもよい。
分割・抽出に際して、FAQ5aのように既にQ&A形式となっているものについては特に問題はないが、マニュアル5b等、Q&A形式となっていないものについては、無理にQ&A形式化して抽出するのではなく、例えば、目次情報を用いて、目次の章単位で内容を単に分割する(非Q&A形式)。マニュアル5b等の内容中にQ&Aに相当するものを含んでいる場合は、その部分はQ&A形式として抽出してもよい。
コンテンツ抽出部71に対して情報源となる各種資料を取り込ませる処理は、例えば、データの種別や形式毎にファイルやデータの所在場所を管理者6が管理者端末61を介して指定して処理を行うようなユーザインタフェースを設け、手動で行うようにしてもよいし、管理者6による管理者端末61を介した指示、もしくは日次等の所定のタイミングをトリガーとして、コンテンツ抽出部71が自動的にファイル等を取得して処理を行うようにしてもよい。自動的に処理を行う場合、例えば、処理対象となる各種資料の所在場所等の情報を予め設定・登録しておき、この情報に基づいて資料を取得・収集するようにしてもよいし、所定のフォルダ等に処理対象の資料を配置しておき、当該フォルダ内にある資料を全て処理対象とするようにしてもよい。
図12は、本実施の形態におけるQ&A形式でのデータの抽出の例について概要を示した図である。ここでは、Webサイトに含まれるFAQからQ&A形式でデータを構造化して抽出する場合の例を示しており、図の上段には、指定されたURL(Uniform Resource Locator)に対応するWebサイト(抜粋)の例が示され、下段には抽出された構造化データ(抜粋)の例が示されている。図の上段のWebサイトの例に示すように、Webサイトには、FAQに相当する内容(図中の「よくあるご質問」)やその他の“Q&Aらしき箇所(質問Qと回答Aが含まれていると推測される箇所)”が含まれている場合がある。本実施の形態では、このような箇所を、ルールベース、もしくは機械学習等を用いた自然言語処理により特定して抽出し、図の下段の例に示すように、例えば、質問Qと回答Aの組として構造化して、コンテンツ候補74とする。
図11に戻り、重複チェック部72は、例えば、コンテンツ抽出部71により出力されたコンテンツ候補74について、コンテンツ候補74間、もしくはコンテンツ候補74と既存の対話コンテンツ18との間での重複の有無を確認し、重複がない状態でコンテンツ75として出力する機能を有する。コンテンツ候補74間で重複があった場合は、例えば、FAQ5a>マニュアル5b・約款5c>対話ログ19の順(Q&A形式に近い順)に優先順位を設けて、最も優先する資料に係るコンテンツ候補74をコンテンツ75とするようにしてもよい。
なお、マニュアル5bには、例えば、製品マニュアルのように、製品の更改によって改訂される(マニュアルが改訂されても、旧製品を保有している顧客4のために旧製品のサポートが終了するまで旧製品のマニュアルの保存が必要)ものと、業務マニュアルのように、最新のマニュアルを参照することができればよいものがある。前者の製品マニュアル等について重複があった場合、旧版(旧製品)のマニュアルに係るQ&A(すなわち、旧製品の機能等に関するQ&A)については、すでにコンテンツ75として登録されているはずであるため、これと重複するQ&A(すなわち、旧製品と同じ既存の機能等に関するQ&A)については新たにコンテンツ75の対象とせず、重複しないQ&A(すなわち、新製品での新機能等に関するQ&A)のみを新たにコンテンツ75として登録するようにしてもよい。一方、後者の業務マニュアル等について重複があった場合、旧版のマニュアルに基づいて登録されているQ&Aは全て削除して、新たにQ&Aを登録し直すようにしてもよい。旧製品を継承する新製品があり、旧製品のマニュアルと新製品のマニュアルが関連付いていることは、ユーザの設定により実行されるが、旧製品のマニュアルと新製品のマニュアルの同一性から自動的に旧製品のマニュアルと新製品のマニュアルが関連付いていることをシステムで判別してもよい。また、システムに登録されている前記旧製品のマニュアルに記載のFAQと、新製品のマニュアルに記載のFAQとを比較してもよいし、原本の旧製品のマニュアルに記載のFAQと新製品のマニュアルに記載のFAQとを比較して重複確認してもよい。
スロット情報付与部73は、例えば、重複チェック部72により出力されたコンテンツ75に対して、対話コンテンツ化するためのスロット情報を付与する機能を有する。ここでは、例えば、上述の実施の形態2で示したように、各コンテンツ75に対して主題解析を行い、主題を特定するために必要となるWHATとHOWに係るパラメータ部分の情報をスロット情報として付与し、対話コンテンツ18として登録する。なお、スロット情報を付与して対話コンテンツ化する処理については、例えば、スロット情報付与部73による処理結果を直接対話コンテンツ18として登録するのではなく、管理者端末61を介した管理者6による確認・修正を経て登録する流れとしてもよい。
対話コンテンツ18に登録された内容について、例えば、管理者6により指定された対象に係るものを新たなQ&AとしてFAQ5aに自動的に登録するようにしてもよい。この場合、オペレータ3にとって参照しにくいQ&Aが登録されてしまう場合も生じ得るため、同様に、管理者端末61を介した管理者6による承認・修正を経て登録するようにしてもよい。この場合、登録が不適切であると判断されたQ&Aがあった場合、例えば、管理者6が当該Q&Aを単に登録対象から除外するようにしてもよいし、当該Q&Aと重複するものとして重複チェック部72においてコンテンツ75の対象とされなかったコンテンツ候補74がある場合には、これを修正候補として管理者6に提示するようにしてもよい。
なお、FAQ5aに登録されたQ&Aのうち、オペレータ3による回答の際に用いられる頻度が一定程度以上高いものについては、例えば、外部から参照可能なWebサイト等を介してFAQとして自動的に公開されるようにしてもよい。
以上に説明したように、本発明の実施の形態3である対話型業務支援システム1によれば、構築系処理において、人手により用意された様々な種類や形式の既存資料、およびオペレータ3が行った顧客4との対話の履歴データを情報源として、対話コンテンツ18を作成することが可能である。これにより、顧客4への迅速・適切な回答が可能となるとともに、そのための対話コンテンツ18の作成に係る運用負荷を低減することができる。
上述の実施形態(実施の形態1~実施の形態3)では、顧客4からの電話での問い合わせに対して即時に対応するヘルプデスク業務やコミュニケータ業務を、オペレータ3が行う情報処理システムについて述べた。これに代えて、顧客4からのテキスト入力による問い合わせに対応するヘルプデスク業務やコミュニケータ業務を、オペレータ3がテキスト入力により応答する情報処理システム(例えば、テキストチャットのコンタクトセンターを有する情報処理システム)に適用するようにしてもよい。すなわち、顧客4側もオペレータ3側も音声を介さずに、テキストによる対話で問い合わせおよびその回答をする情報処理システムに適用するようにしてもよい。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は上記の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上記の実施の形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、各実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば、集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリやハードディスク、SSD(Solid State Drive)等の記録装置、またはICカード、SDカード、DVD等の記録媒体に置くことができる。
また、上記の各図において、制御線や情報線は説明上必要と考えられるものを示しており、必ずしも実装上の全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。