JP6235360B2 - 発話文収集装置、方法、及びプログラム - Google Patents

発話文収集装置、方法、及びプログラム Download PDF

Info

Publication number
JP6235360B2
JP6235360B2 JP2014020811A JP2014020811A JP6235360B2 JP 6235360 B2 JP6235360 B2 JP 6235360B2 JP 2014020811 A JP2014020811 A JP 2014020811A JP 2014020811 A JP2014020811 A JP 2014020811A JP 6235360 B2 JP6235360 B2 JP 6235360B2
Authority
JP
Japan
Prior art keywords
intention
slot
utterance sentence
bias
sentence
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014020811A
Other languages
English (en)
Other versions
JP2015148910A (ja
Inventor
憲治 岩田
憲治 岩田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2014020811A priority Critical patent/JP6235360B2/ja
Priority to PCT/JP2015/053448 priority patent/WO2015119267A1/en
Publication of JP2015148910A publication Critical patent/JP2015148910A/ja
Application granted granted Critical
Publication of JP6235360B2 publication Critical patent/JP6235360B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Landscapes

  • Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)

Description

本発明の実施形態は、発話文収集装置、方法、及びプログラムに関する。
近年、対話システム(例えば音声自動応答装置)において利用される意図理解方法は、ルールベースの手法から統計的手法に変化しつつある。統計的手法を導入するには、統計モデルを作成するための学習データが必要である。学習データには、構築する対話システムに入力される可能性がある様々なバリエーションの発話文が充分な量含まれていることが求められる。
特開2000−339314号公報(8頁、図4) 特開2008−299754号公報(23頁、図3)
本発明が解決しようとする課題は、様々なバリエーションの発話文を充分に収集することができる発話文収集装置、方法、及びプログラムを提供することである。
一実施形態に係る発話文収集装置は、入力部、抽出部、管理部、偏り判定部、及び要求出力部を備える。入力部は、ユーザからの発話文の入力を受け付ける。抽出部は、前記発話文から、当該発話文の意図及び当該意図を補足する情報であるスロットの少なくとも一方を抽出する。管理部は、前記意図及びスロットの少なくとも一方に関するデータを蓄積する。偏り判定部は、前記データに偏りがあるか否かを判定し、前記偏りがあると判定した場合に、前記データから頻度の低い意図及びスロットの少なくとも一方を取得する。要求出力部は、前記偏り判定部によって取得された前記意図及びスロットの少なくとも一方に関連する発話文を入力するように要求する。
第1の実施形態に係る発話文収集装置を概略的に示すブロック図。 図1に示した発話文収集装置の発話文収集処理の一例を概略的に示すフローチャート。 図1に示した要求出力部が要求文を生成する方法例を示す図。 意図及びスロットに関するデータに偏りがない場合における図1に示した発話文収集装置の動作例を示す図。 意図に関するデータに偏りがある場合における図1に示した発話文収集装置の動作例を示す図。 スロットに関するデータに偏りがある場合における図1に示した発話文収集装置の動作例を示す図。 第2の実施形態に係る発話文収集装置を概略的に示すブロック図。 図7に示した発話文収集装置の発話文収集処理の一例を概略的に示すフローチャート。 第3の実施形態に係る対話の流れの一部を示す図。 第3の実施形態に係る発話文収集装置を概略的に示すブロック図。 図10に示した発話文収集装置の発話文収集処理の一例を概略的に示すフローチャート。 図10に示した発話文収集装置の発話文収集処理の他の例を概略的に示すフローチャート。 第4の実施形態に係る対話の流れの一部を示す図。 第4の実施形態に係る発話文収集装置を概略的に示すブロック図。 図14に示した発話文収集装置の発話文収集処理の一例を概略的に示すフローチャート。
以下、図面を参照しながら実施形態を説明する。実施形態は、対話システムを構築するために必要となる様々なバリエーションの対話文を収集するための発話文収集装置、方法、及びプログラムに関連する。
(第1の実施形態)
図1は、第1の実施形態に係る発話文収集装置100を概略的に示している。発話文収集装置100は、図1に示されるように、発話文入力部101、意図・スロット抽出部102、意図・スロット管理部103、意図・スロット偏り判定部104、及び要求出力部105を備えている。
発話文入力部101は、ユーザからの発話文の入力を受け付ける。発話文の入力方法は、キーボードなどを用いたテキスト入力であってもよく、音声入力であってもよい。音声入力の場合、発話文入力部101は、例えばマイクロフォンを通じて、ユーザが発した音声を受け取る。続いて、発話文入力部101は、受け取った音声に対して音声認識を行い、音声認識結果である自然言語テキストを発話文として得る。発話文入力部101は、収集のために発話文を図示しない記憶装置に保存(蓄積)するとともに、発話文を意図・スロット抽出部102に送る。
意図・スロット抽出部102は、発話文入力部101から受け取った発話文から、意図及びスロットの少なくとも一方を抽出し、抽出した意図及びスロットの少なくとも一方を意図・スロット管理部103に送る。実施形態では、意図・スロット抽出部102が意図及びスロットの両方を抽出するものとして説明する。なお、意図・スロット抽出部102は、スロットを抽出することなしに意図を抽出してもよく、意図を抽出することなしにスロットを抽出してもよい。
意図とは、発話文が大まかに伝えようとする内容を示す情報である。意図はタグ形式で表現することができる。例えば、「明日の天気を教えて」や「渋谷の天気を見せて」という発話文からは「天気検索+要求」というタグが抽出され、「近くのコンビニの場所が見たい」という発話文からは「地図検索+願望」というタグが抽出される。なお、対話システムの機能仕様によっては、要求や願望などのタグは不要になることもある。意図の抽出方法としては、抽出する際に有用なキーワードを人手で予め決め、それらのキーワードを意図タグに対応付けて格納するデータベースを用いることで抽出を行うルールベースの方法、意図タグを対応付けた発話文のデータをもとに学習モデルを作成し、サポートベクターマシン(SVM;support vector machine)や最大エントロピーモデルなどを用いて抽出を行う統計的方法などを用いることができる。
スロットとは、発話文から抽出された意図を補足する情報である。意図とスロットの組みによって発話文が伝えたかったことを正確に捉えることが可能になる。スロットは発話文に含まれる単語とその単語の属性の組みで成り立つ。例えば「明日の天気を教えて」という発話文からは「属性:日付、値:明日」というスロットが抽出され、「渋谷の地図を見せてほしい」という発話文からは「属性:場所、値:渋谷」というスロットが抽出される。なお、発話文によっては、スロットは抽出されないこともあり、複数のスロットが抽出されることもある。スロットの抽出方法としては、意図抽出方法と同様に、スロットとして抽出する対象となるキーワードを意図タグに対応付けて保持するデータベースを用いて抽出を行うルールベースの方法、CRF(Conditional Random Fields)などを用いて抽出を行う統計的方法などを用いることができる。
意図・スロット管理部103は、意図・スロット抽出部102によって抽出された意図及びスロットに関するデータを蓄積する。意図及びスロットに関するデータは、ユーザごとに又は1回の作業ごとに分離して蓄積されていてもよい。或いは、それまでの全ての作業及び全てのユーザに関して取得された意図に関するデータ及びスロットに関するデータがまとめて蓄積されていてもよい。後者の方法の方がより多くの意図及びスロットがまとめて蓄積されるため望ましい。
意図・スロット管理部103は、いかなる形式で意図・スロット抽出部102によって抽出された意図及びスロットに関するデータを蓄積してもよい。一例では、意図・スロット管理部103は、データベースを保持し、意図・スロット抽出部102によって抽出された意図及びスロットをデータベースに追加する。例えば、「天気検索+要求」の意図タグ及び「属性:日付、値:明日」のスロットが抽出された場合、データベース中の意図フィールドに「天気検索+要求」の意図タグを格納し、データベース中のスロットフィールドに「属性:日付、値:明日」のスロットを格納する。データベースには、発話文を入力したユーザを識別するためのユーザ情報(例えばユーザID)を格納するためのユーザIDフィールドなどを含むことができる。本実施形態では、意図・スロット管理部103は、この方法に従って意図及びスロットに関するデータを管理するものとする。
他の例では、意図・スロット管理部103は、複数種類の意図ごとに頻度(度数とも称する。)を記録した意図集計データ及び複数種類のスロットごとに頻度を記録したスロット集計データを保持する。例えば、「天気検索+要求」の意図タグが抽出された場合、意図・スロット管理部103は、意図集計データにおいて「天気検索+要求」の意図タグに対応する意図種類の頻度を1だけ増加させる。この方法では、後述する意図・スロット偏り判定部104の集計処理を省略することができる。頻度は、情報(例えば意図)が抽出された回数、すなわち、その情報に関連する発話文が入力された回数を表す。
意図・スロット偏り判定部104は、意図・スロット管理部103に蓄積されている意図及びスロットに関するデータに偏りがあるか否かを判定する。具体的には、意図・スロット偏り判定部104は、意図・スロット管理部103に蓄積されているデータを意図及びスロットの各レイヤで集計し、後述する判定処理によって偏りがあるか否かを判定する。意図・スロット偏り判定部104は、偏りがあると判定した場合、意図・スロット管理部103に蓄積されているデータから頻度の低い意図及びスロットの少なくとも一方を抽出して要求出力部105に送る。
要求出力部105は、意図・スロット偏り判定部104によって偏りがあると判定された場合、意図・スロット偏り判定部104によって抽出された意図及びスロットの少なくとも一方に関連する発話文を入力するようにユーザに要求する要求文を作成してユーザに提示する。要求文の作成方法については後述する。意図・スロット偏り判定部104によって偏りがないと判定された場合は、要求出力部105は、特にはユーザに要求を行わない。或いは、要求出力部105は、自由に入力するようにユーザに要求する要求文を作成してユーザに提示してもよい。提示方法としては、ユーザが見ている画面上にテキストで表示する方法、音声合成技術又は録音音声を用いて音声で伝える方法などを用いることができる。
次に、図1及び図2を参照して発話文収集装置100の動作について説明する。
図2は、発話文収集装置100が対話文を収集する処理に係る手順を概略的に示している。図2のステップS201では、意図・スロット偏り判定部104は、意図・スロット管理部103に蓄積されているデータ(意図に関するデータ及びスロットに関するデータの少なくとも一方)に偏りがあるか否かを判定する。偏りがあると判定された場合、ステップS202に進む。
ステップS202では、意図・スロット偏り判定部104は、頻度の低い意図及びスロットの少なくとも一方を抽出する。ステップS203では、要求出力部105は、意図・スロット偏り判定部104によって抽出された意図及びスロットの少なくとも一方に関連する発話文を入力するよう要求する要求文を作成してユーザに提示する。このようにして、頻度の低い意図及びスロットの少なくとも一方に関連する発話文を入力するようにユーザに要求することにより、偏りなく様々なバリエーションの対話文を充分に収集することができる。
一方、ステップS201で偏りがないと判定された場合、ステップS204に進む。ステップS204では、要求出力部105は、入力する発話文の内容に制限をかけず、自由に発話文を入力するよう要求する要求文を作成してユーザに提示する。なお、要求出力部105は、ユーザに要求文を提示しなくてもよい。
ユーザが提示された要求文(ステップS203又はステップS204で作成された要求文)に応じて発話文を入力し、発話文入力部101がその発話文を取得する。取得された発話文は図示しない記憶部に蓄積される。ステップS205では、意図・スロット抽出部102は、発話文から意図及びスロットを抽出する。ステップS206では、抽出された意図及びスロットが意図・スロット管理部103に蓄積される。この蓄積は次の発話文入力の際の要求文の内容に影響を与えることとなる。
偏りの有無を判定する方法について説明する。判定処理は、意図及びスロットそれぞれに関して行われる。ここでは、意図に関して偏りがあるか否かを判定する方法を主に説明する。スロットに関しても次に説明するものと同様の判定処理を行うことができる。
一例では、意図・スロット偏り判定部104は、意図・スロット管理部103に蓄積されている意図の総頻度が一定数に達したときに、相対頻度が閾値以下である意図が存在する場合に、偏りがあると判定する。相対頻度(相対度数)は、意図・スロット管理部103に蓄積されている意図の総頻度(総度数)に占めるある意図の割合(%)を示す。上記一定数及び閾値は、人手で予め決められてもよい。閾値は蓄積された意図の総頻度に応じて変化させてもよい。例えば、蓄積された意図の総頻度が大きくなるほど、閾値を小さくする。これは、総頻度が大きくなれば相対頻度が小さくても学習データとして充分な量が収集されている可能性が高くなるためである。意図及びスロットの両方が意図・スロット管理部103に蓄積されている実施形態では、意図・スロット偏り判定部104は、意図・スロット管理部103に蓄積されている意図の総頻度が一定数に達したときに、相対頻度が第1閾値以下である意図が存在する場合と、意図・スロット管理部103に蓄積されているスロットの総頻度が一定数に達したときに、相対頻度が第2閾値以下であるスロットが存在する場合と、の少なくとも一方の場合に、偏りがあると判定することができる。第1閾値及び第2閾値は、同じ値であってもよく、異なる値であってもよい。第1閾値及び第2閾値は人手で予め決めることができる。また、第1閾値は蓄積された意図の総頻度に応じて変化させてもよく、第2閾値は蓄積されたスロットの総頻度に応じて変化させてもよい。
他の例では、意図・スロット偏り判定部104は、頻度が最も高い意図と頻度が最も低い意図との間の頻度差が閾値に達した場合に、偏りがあると判定する。この閾値は人手で予め決めることができる。意図及びスロットの両方が意図・スロット管理部103に蓄積されている実施形態では、意図・スロット偏り判定部104は、頻度が最も高い意図と頻度が最も低い意図との間の頻度差が第1閾値以下である場合と、頻度が最も高いスロットと頻度が最も低いスロットとの間の頻度差が第2閾値以下である場合と、の少なくとも一方の場合に、偏りがあると判定することができる。第1閾値及び第2閾値は、同じ値であってもよく、異なる値であってもよい。
さらに他の例では、意図・スロット偏り判定部104は、蓄積された意図の総頻度に占める、頻度が最も高い意図と頻度が最も低い意図との間の頻度差の割合が第1閾値以上である場合と、蓄積されたスロットの総頻度に占める、頻度が最も高いスロットと頻度が最も低いスロットとの間の頻度差の割合が第2閾値以上である場合とに、偏りがあると判定することができる。これら第1閾値及び第2閾値もまた人手で予め決めることができる。また、第1閾値は蓄積された意図の総頻度に応じて変化させてもよく、第2閾値は蓄積されたスロットの総頻度に応じて変化させてもよい。
意図・スロット偏り判定部104は、偏りがあると判定した場合、頻度の低い意図を抽出する。頻度の低い意図が複数ある場合は、意図・スロット偏り判定部104は、それらの意図のいずれを抽出してもよい。抽出方法としては、頻度の最も低い意図を抽出する方法、ユーザが入力したことのない意図を抽出する方法を用いることができる。後者の場合は、意図・スロット管理部103がユーザを識別するためのユーザIDなどの情報(ユーザ情報)を意図と合わせて管理し、意図・スロット偏り判定部104がユーザ情報を参照して意図を抽出する必要がある。ユーザ情報の取得方法は、発話文収集装置100の起動時にユーザから受け取って起動中は発話文収集装置内100内で保持しておく方法、発話文を入力する度に同時に発話文入力部101がユーザ情報も受け取る方法などを用いることができる。
なお、頻度の低い意図が複数ある場合には、意図・スロット偏り判定部104に代えて、要求出力部105が要求を出力する際にどの意図を採用するかを決定してもよい。この場合、意図・スロット偏り判定部104が頻度の低い複数の意図を示す情報を要求出力部105に送る。要求出力部105は、上述した意図・スロット偏り判定部104の決定方法と同様の方法に従って採用する意図を決定することができる。なお、要求出力部105は、頻度の低い複数の意図の全てを含む要求文を作成し、このうちのいずれかの意図に関連する発話文を入力するようにユーザに要求するようにしてもよい。
要求出力部105が要求文を作成する方法としては、ルールベースの方法、統計的な方法などを利用することができる。統計的な方法としては、例えば、要求する内容ごとに文章を大量に準備しておき、そのデータから学習したモデルを用いて要求文を生成する方法がある。ルールベースの方法としては、意図やスロットごとに要求文を予め用意しておき、抽出した意図やスロットに応じて要求文を選択する方法、意図ごとに一部文章を追加できるようになっている要求文を予め用意しておき、抽出した意図に応じて要求文を選択した後に、抽出したスロットの属性を表す文を要求文に追加して一つの要求文とする方法などがある。後者の方法を図3に示す。図3の例では、要求出力部105は、抽出した意図「天気検索」に対応付けられている「○○の天気を検索するよう入力してください」という要求文を選択し、その後に、抽出したスロットの属性である場所を用いて「ある場所の天気を検索するよう入力してください」という要求文を作成する。スロットの属性から要求文の一部の文章に変換する際は、属性の表記そのものを用いてもよいが、図3のようにスロットの属性ごとに文章を予め用意してもよい。なお要求文は1つの意図やスロットに対して複数の候補を作成しておき、それらの候補の中からランダムに又はユーザの趣向などに応じて1つを選択するようにして様々な要求文を出力することで、要求文の文面に影響される可能性のある発話文の表現のバリエーションを増やせるようにしておいてもよい。上記の方法はルールベースで要求文を作成する際の方法である。要求出力部105は、統計的手法を採用する場合は、得られたN−bestの候補の中から確率的に要求文を選択する。
なお、これまで意図とスロットを共に用いて偏りを判定したり要求文を作成したりしていたが、意図のみ又はスロットのみについて偏りを判定したり要求文を作成したりしてもよい。
次に、図4から図6を参照して発話文収集装置100の動作例を説明し、発話文収集装置100が対話システムに実際に入力され得る様々なバリエーションの発話文を充分に収集できることを示す。ここで説明する例では、ユーザの前に発話文収集装置100を搭載した端末があり、ユーザがこの端末に対しテキスト形式で発話文を入力する。ユーザへの要求は端末の画面上に表示される。実際に構築したい対話システムは「天気検索」と「地図検索」の意図を受理し、「天気検索」の際は「属性:日付」と「属性:場所」のスロット、「地図検索」の際は「属性:場所」のスロットを受理する。
図4は、蓄積されている意図及びスロットに偏りがない場合における発話文収集装置100の動作例を示している。図4の例では、端末は自由に入力するようユーザに要求する。具体的には、端末は「自由に入力してください」という要求文を画面に表示する。その要求に対してユーザは「明日の天気予報が知りたい」という発話文を入力する。端末はこの発話文から意図及びスロットを抽出し、それにより「天気検索」という意図及び「属性:日付、値:明日」というスロットが蓄積されることとなる。
図5は、意図に偏りがある場合における発話文収集装置100の動作例を示している。図5の例では、意図及びスロットの蓄積が進んだ結果、「天気検索」という意図の頻度が「地図検索」という意図の頻度よりも非常に高くなっている。この状態において、発話文収集装置100は、蓄積されている意図に偏りがあると判定する。この場合、発話文収集装置100は、頻度の低い意図である「地図検索」を抽出し、抽出した意図に基づいて「地図を検索するよう入力してください」という要求文を作成してユーザに提示する。この要求文に対して、ユーザは、「地図検索」を意図として含む発話文「東京の地図を見せて」を入力する。このようにして、頻度の低い意図に対応する発話文が入力されて蓄積される。
図6は、スロットに偏りがある場合における発話文収集装置100の動作例を示している。図6の例では、意図及びスロットの蓄積が進んだ結果、「天気検索」という意図に関連して蓄積されたスロットにおいて、「属性:日付」というスロットの頻度が他の3種類のスロットの頻度よりも非常に高くなっている。3種類のスロットは、スロットなし、「属性:場所」のスロット、「属性:日付」のスロットと「属性:場所」のスロットの組みである。この状態において、発話文収集装置100は、蓄積されているスロットに偏りがあると判定する。この場合、発話文収集装置100は、頻度の低い3種類のスロットの中から「属性:場所」のスロットを選択し、選択したスロットに基づいて「ある場所の天気を検索するよう入力してください」という要求文を作成してユーザに提示する。この要求文に対して、ユーザは、「天気検索」の意図を含む且つ「属性:場所」のスロットを持つ発話文「東京の天気を教えて」を入力する。このようにして、頻度の低いスロットに対応する発話文が入力されて蓄積される。
なお、図6の例では、発話文収集装置100は、「天気検索」の意図に関連して蓄積されたスロットを対象として偏りの有無を判定しているが、蓄積されている全てのスロットを対象として偏りの有無を判定してもよい。
以上のように、第1の実施形態に係る発話文収集装置では、頻度の低い意図又はスロットに関連する発話文を入力するようにユーザに要求することにより、対話システムに入力され得る様々なバリエーションの発話文を充分に収集することが可能になる。
(第2の実施形態)
第1の実施形態では、ユーザは要求出力部が提示した要求文に応じて発話文を入力する。この場合、対話システムとの対話を実際に行っているわけではないため、収集できる発話文は、例えば対話システムとの対話を開始する初期状態のような、ユーザが自由に発話文を入力できる対話状態において入力される発話文に限定されてしまう可能性がある。第2の実施形態では、要求文とともに対話システムが実際に出力する応答文をユーザに提示することで、対話システム利用時の様々な対話状態における発話文を収集することができる。
図7は、第2の実施形態に係る発話文収集装置700を概略的に示している。発話文収集装置700は、図7に示されるように、発話文入力部101、意図・スロット抽出部102、意図・スロット管理部703、意図・スロット偏り判定部704、要求出力部105、及び応答出力部706を備える。図7において、図1に示した参照番号を同一の要素に付して、重複する説明を省略する。また、図7に示した意図・スロット管理部703及び意図・スロット偏り判定部704は、基本的には図1に示した意図・スロット管理部103及び意図・スロット偏り判定部104と同様の動作を行うので、意図・スロット管理部703及び意図・スロット偏り判定部704に関しては、意図・スロット管理部103及び意図・スロット偏り判定部104と異なる動作について説明する。
応答出力部706は、実際の対話システムで出力される応答文をユーザに提示する。このとき、応答出力部706は、応答文の内容を表す応答IDを意図・スロット管理部703及び意図・スロット偏り判定部704に送る。意図・スロット管理部703は、意図・スロット抽出部102によって抽出された意図及びスロットを応答出力部706から受け取った応答IDと対応付けて記憶する。
意図・スロット偏り判定部704は、意図・スロット管理部703に蓄積されている、応答IDが応答出力部706から受け取った応答IDに一致するデータに、偏りがあるか否かを判定する。意図・スロット偏り判定部704は、偏りがあると判定した場合、その応答IDに対応付けられたデータから頻度の低い意図又はスロットを抽出し、要求出力部105に送る。
次に、図7及び図8を参照して、発話文収集装置700の動作について説明する。
図8は、発話文収集装置700が発話文を収集する処理に係る手順を概略的に示している。図7に示したステップS804、S805、及びS806の処理はそれぞれ図1に示したステップS203、S204、及びS205の処理と同様であるので、ステップS804、S805、及びS806の処理についての詳細な説明は省略する。
図8に示したステップS801では、応答出力部706は、応答文をユーザに提示し、その応答文の内容を表す応答IDを決定する。応答文の提示は、応答IDの決定の前に実行されてもよく、応答IDの決定の後に実行されてもよく、応答IDの決定と同時に実行されてもよい。応答出力部706は、対話システムが実際にいずれかの対話状態で出力する応答文だけを提示してもよく、提示すべき応答文とともに、その応答文が出現するまでの対話のやり取りの全てを擬似的に作成した対話を提示してもよい。応答文及び応答IDを選択する方法は、例えば、応答文及び応答IDが保存されているデータベースから取得する方法とすることができる。データベース内のどの応答文及び応答IDを選択するかは、ランダムに選択する方法、初期状態に近い対話状態の応答文から選択する方法、蓄積された意図やスロットに偏りがある応答IDを選択する方法などに従うことができる。これらのいずれかの場合には、応答出力部706が意図・スロット管理部703を参照するように構成され、或いは、意図・スロット偏り判定部704が、応答IDごとに偏りの有無を判定し、偏りのある応答IDを応答出力部706に通知するように構成される。
ステップS802では、意図・スロット偏り判定部704は、意図・スロット管理部703に蓄積されているデータから、応答IDがステップS801で決定された応答IDと一致するデータを抽出し、抽出したデータ(意図データ及びスロットデータの少なくとも一方)に偏りがあるか否かを判定する。偏りがあると判定された場合、ステップS803に進む。
ステップS803では、意図・スロット偏り判定部704は、応答IDがステップS801で決定された応答IDと一致するデータから頻度の低い意図及びスロットの少なくとも一方を抽出する。ステップS804では、要求出力部105は、意図・スロット偏り判定部704によって抽出された意図及びスロットの少なくとも一方に関連する発話文を入力するよう要求する要求文を作成してユーザに提示する。
偏りがないと判定された場合、ステップS805に進む。ステップS805では、要求出力部105は、自由に発話文を入力するよう要求する要求文を作成してユーザに提示する。
ステップS804又はステップS805の処理の後には、応答文及び要求文の両方がユーザに提示された状態になる。この状態でユーザから発話文が入力される。入力された発話文は、図示しない記憶部に蓄積されるとともに、意図・スロット抽出部702に送られる。ステップS806では、意図・スロット抽出部702は、ユーザが入力した発話文から意図及びスロットを抽出する。ステップS807では、意図・スロット管理部703は、ステップS806で抽出された意図及びスロットを、ステップS801で決定された応答IDと対応付けて記憶する。
本実施形態では応答文の内容を表す情報として応答IDを用いている。なお、応答文の内容を表す情報としては、応答文そのものや実際の対話システムにおける対話状態など、どの応答文が出力されたかを特定することができる情報であればいかなる情報を用いてもよい。
以上のように、第2の実施形態に係る発話文収集装置では、対話システムが実際に出力する応答文と、頻度の低い意図又はスロットに関連する発話文の入力を要求する要求文と、をユーザに提示することにより、対話システム利用時の様々な対話状態における発話文を充分に収集することが可能になる。
(第3の実施形態)
第2の実施形態では、対話システムで出力する応答文をユーザに提示している。第3の実施形態では、実際の対話システムを動作させて発話文を収集する。これにより、ユーザは対話の流れに沿って発話文を入力することになり、その結果、対話の流れを加味した実際に対話システムを運用している際に入力される可能性の高い発話文を収集することができる。
図9は、レストランを検索する対話システムに関して設計された対話の流れの一部を示している。ノードごとに応答文が設定されている。各ノードで応答文が出力され、それに対してユーザが入力した発話文の内容によって次にどのノードに遷移するかが変化する。本実施形態では、ノードを対話状態と称し、ノードの遷移のことを対話遷移と称する。
例えば、対話状態901において応答文「どのようなレストランに行きたいですか?」が出力される。これに対して、ユーザが「和食のレストランがいい」という発話文を入力すると、対話状態902への対話遷移が生じる。具体的には、対話システムは、発話文「和食のレストランがいい」から意図及びスロットを抽出し、対話システムの状態は抽出された意図及びスロットに基づいて対話状態902に遷移する。また、対話状態901においてユーザが「安いところ」という発話文を入力すると、対話状態903への対話遷移が生じる。図9では、対話状態901からの状態遷移先が2つ示されているが、実際にはより多数の状態遷移先が設定され得る。
ここで問題となるのは、初期状態(対話状態901)ではない対話状態(例えば対話状態902)において入力された発話文から抽出された意図やスロットに偏りが生じ、その対話状態における発話文を収集する必要がある場合である。例えば、対話状態904において対話システムから出力される応答文「○件見つかりました。どれにしましょうか?」に対して、「お酒が飲めるところに絞って」という発話文に含まれる意図やスロットが他の意図やスロットよりも少ないために偏りが生じている場合である。第3の実施形態では、偏りがある対話状態に辿り着くような発話文を入力するように、初期状態の時点からユーザに要求を出すことによって、意図やスロットに偏りが生じている対話状態の発話文を収集することを可能にする。例えば「一人で行きやすいところがよいでしょうか」と対話システムが応答する対話状態903において「そうです」のような意図を含んだ発話文を入力するようにユーザに要求する。それにより、意図やスロットに偏りが生じている対話状態904に辿り着くことができる。
図10は、第3の実施形態に係る発話文収集装置1000を概略的に示している。発話文収集装置1000は、発話文入力部101、意図・スロット抽出部102、意図・スロット管理部1003、意図・スロット偏り判定部1004、要求出力部1005、応答出力部1006、及び対話制御部1007を備えている。図10において、図1に示した参照番号を同一の要素に付して、重複する説明を省略する。また、図10に示した意図・スロット管理部1003、意図・スロット偏り判定部1004、及び要求出力部1005は、基本的には図1に示した意図・スロット管理部103、意図・スロット偏り判定部104、要求出力部105と同様の動作を行う。意図・スロット管理部1003、意図・スロット偏り判定部1004、及び要求出力部1005に関しては、意図・スロット管理部103及び意図・スロット偏り判定部104と異なる動作について説明する。
対話制御部1007は、対話システムの機能を備え、意図・スロット抽出部102によって抽出された意図及びスロットを利用して対話処理を行う。対話処理には、受け取ったスロットを用いた検索、応答として出力する内容を表す応答IDの決定、対話状態の遷移などが含まれる。決定した応答ID及び検索結果は応答出力部1006に送られる。さらに、遷移を行う前の対話状態(すなわち、発話文の入力時の対話状態)は遷移前の対話状態として意図・スロット管理部1003に送られ、遷移を行った後の対話状態は遷移後の対話状態として意図・スロット偏り判定部1004に送られる。なお、実装によっては遷移後の対話状態は要求出力部1005に送られる。なお、応答として出力する内容を表す情報は、応答IDに限らず、応答文そのものや遷移後の対話状態などの応答文を一意に決定できる情報であればいかなるものであってもよい。
応答出力部1006は、対話制御部1007から受け取った応答ID及び検索結果に応じて応答文を生成し、ユーザに提示する。応答文の作成方法としては、要求出力部105(図1)による要求文の作成方法と同様にして、ルールベースで作成する方法、検索結果を文章の一部に埋め込んで応答文を作成する方法、統計的に生成する方法などの既存の方法を用いることができる。
意図・スロット管理部1003は、意図・スロット抽出部102によって抽出された意図及びスロットを、対話制御部1007から受け取った遷移前の対話状態と対応付けて記憶する。意図・スロット抽出部102は、抽出した意図及びスロットを意図・スロット管理部1003に直接送ってもよく、対話制御部1007を経由して意図・スロット管理部1003に送ってもよい。
意図・スロット偏り判定部1004は、意図・スロット管理部1003に蓄積されている意図及びスロットの少なくとも一方に偏りがある対話状態に到達するルートが存在するか否かを判定する。すなわち、意図・スロット偏り判定部1004は、意図・スロット管理部1003に蓄積されている意図及びスロットの少なくとも一方に偏りがある対話状態が対話制御部1007から受け取った遷移後の対話状態から対話を進めていった先に存在するか否かを判定する。偏りがある対話状態が遷移後の対話状態に一致する場合にも、意図・スロット偏り判定部1004はルートが存在すると判定する。意図・スロット偏り判定部1004は、ルートが存在すると判定した場合、頻度の低い意図やスロットとその対話状態を抽出し、要求出力部1005に送る。また、対話制御部1007で対話処理を行った後の対話状態を同時に要求出力部1005に送ってもよい。
要求出力部1005は、対話制御部1007から受け取った遷移後の対話状態を偏りがある対話状態と照らし合わせる。それらが同じ対話状態であった場合は、要求出力部1005は、偏りがある対話状態に対応付けられた頻度の低い意図やスロットに関連する発話文を入力するようにユーザに要求する要求文を作成してユーザに提示する。それらが異なる対話状態であった場合は、要求出力部1005は、遷移後の対話状態から偏りがある対話状態に遷移するための意図やスロットを抽出し、その意図やスロットに関連する発話文を入力するようにユーザに要求する要求文を作成してユーザに提示する。
次に、図10及び図11を参照して発話文収集装置1000の動作について説明する。
図11は、発話文収集装置1000が発話文を収集する処理に係る手順を概略的に示している。図11に示したステップS1105、S1107、S1108の処理は、図2に示したステップS203、S204、S205の処理と同様であるので、ステップS1105、1107、及び1108の処理についての詳細な説明は省略する。
発話文収集装置1000が起動されると対話制御部1007の対話状態は初期状態からスタートする。図11のステップS1101では、応答出力部1006は、初期状態における応答IDを受け取り、応答IDに応じた応答文を出力する。
ステップS1102では、意図・スロット偏り判定部1004は、意図・スロット管理部1003に蓄積されている意図及びスロットの少なくとも一方に偏りがある対話状態が存在し、且つ、現在の対話状態からその対話状態に到達するルートが存在するかを判定する。現在の対話状態が偏りのある対話状態である場合もルートが存在すると判定される。ルートが存在しないと判定された場合は、ステップS1107に進む。ステップS1107では、要求出力部105は、自由に発話文を入力するよう要求する要求文を作成してユーザに提示する。
一方、ステップS1102でルートが存在すると判定された場合は、ステップS1103に進む。ステップS1103では、意図・スロット偏り判定部1004は、頻度の低い意図及びスロットの少なくとも一方をその対話状態とともに抽出する。ステップS1104では、要求出力部1005は、意図・スロット偏り判定部1004が抽出した対話状態が対話制御部1007の現在の対話状態と一致するか否かを判定する。一致する場合は、ステップS1105に進む。ステップS1105では、要求出力部1005は、偏りがある対話状態において頻度の低い意図やスロットに関連する発話文を入力するようにユーザに要求する要求文を作成してユーザに提示する。
ステップS1104において一致しないと判定された場合はステップS1106に進む。ステップS1106では、対話制御部1007の対話状態から偏りがある対話状態に遷移するための意図やスロットを抽出し、その意図やスロットに関連する発話文を入力するようユーザに要求する要求文を作成してユーザに提示する。
ステップS1105又はステップS1106又はステップS1107の処理の後には、応答文及び要求文の両方がユーザに提示された状態になる。この状態でユーザから発話文が入力される。入力された発話文は、図示しない記憶部に蓄積されるとともに、意図・スロット抽出部102に送られる。ステップS1108では、意図・スロット抽出部102は、ユーザが入力した発話文から意図及びスロットを抽出する。ステップS1109では、意図・スロット管理部1003は、ステップS1108で抽出された意図及びスロットを現在の対話状態と対応付けて蓄積する。
ステップS1110では、対話制御部1007は、意図・スロット抽出部102によって抽出された意図及びスロットを利用して対話処理を行う。ステップS1111では、応答出力部1006は、対話処理によって得られた応答IDに応じた応答文を出力する。ステップS1112では、対話制御部1007は、対話が完了したか否かを判定する。完了した場合は処理が終了となり、完了していない場合はステップS1102に戻る。
意図・スロット管理部1003で蓄積している意図やスロットに偏りがある否かを判定する際や頻度の低い意図やスロットを抽出する際は、意図・スロット偏り判定部1004は、対話状態それぞれで偏りを判定して抽出してもよく、全ての状態の全ての意図やスロット内で偏りを判定して抽出してもよい。
遷移後の対話状態から対話を進めることで意図やスロットに偏りのある対話状態に到達するか否かの判定を行うには、意図・スロット偏り判定部1004は対話状態の遷移ルールを参照する。また、偏りがある対話状態に遷移するための意図やスロットの抽出を行うには、要求出力部1005は対話状態の遷移ルールを参照する。対話状態の遷移ルールは、ある対話状態においてある意図やスロットが抽出された場合にどの対話状態に遷移するかなどの情報が記述されているものである。一般的には、対話制御部1007が対話状態の遷移ルールを保持し、意図・スロット偏り判定部1004及び要求出力部1005が必要に応じてその対話状態の遷移ルールを参照する。対話状態の遷移ルールは、意図・スロット偏り判定部1004及び要求出力部1005それぞれに独自に用意されもよい。意図・スロット偏り判定部1004の処理は、遷移後の対話状態から遷移可能な対話状態を辿り目的の対話状態に辿り着けるまでルートを探索することで実現することができる。要求出力部1005の処理は、意図・スロット偏り判定部1004の処理で得られた対話遷移のルートの最初の遷移を実現する意図やスロットを抽出することで実現することができる。対話状態の遷移ルールは人手で作成されていることもあるが、学習データから統計的に作成されていることもある。統計的に作成された遷移ルールでは、原則全ての対話状態から全ての対話状態に遷移可能であることもある。その場合、遷移確率値に閾値を設け、閾値以上の対話遷移の情報のみを対話状態を辿るときに利用することで、全ての対話状態に遷移可能となってしまうことを避けることができる。この閾値は固定でもよいし、対話状態によって変動させてもよい。
図9の例のように、意図やスロットに偏りがある対話状態までのルートが複数存在する場合もある。その場合、ルートの選択方法としては、ルートをランダムに選択する方法、到達までの手順が少ないルートを選択する方法、意図やスロットの入力された頻度が低いルートを選択する方法などが考えられる。意図やスロットの入力された頻度は、遷移後の対話状態から目的の対話状態まで辿り着くまでの意図やスロットの頻度の累計でもよいし、遷移後の対話状態から1つ遷移するための意図やスロットの頻度でもよい。
また、発話文収集装置1000では、どのような対話でも到達する対話状態(例えば初期状態)での発話文が集まりやすい。このため、全体としてみると意図やスロットに偏りが生じる可能性が高い。そこで、意図やスロットに偏りがある対話状態に到達した際に、その状態での発話文の入力を複数回連続してユーザに要求することで、到達する頻度の低い対話状態における意図やスロットに対応する発話文を効率よく収集することができる。
図12は、意図やスロットに偏りがある対話状態でユーザに発話文を複数回入力するように設計された発話文収集装置1000の動作手順を示している。図12に示したステップS1201からS1209及びS1212からS1214の処理は、図11に示したステップS1101からS1112の処理と同一であるので、ステップS1201からS1209及びS1212からS1214の処理についての説明を省略する。
ユーザから発話文が入力されると、入力された発話文は、図示しない記憶部に蓄積されるとともに、意図・スロット抽出部102に送られる。ステップS1208では、意図・スロット抽出部102は、ユーザが入力した発話文から意図及びスロットを抽出する。ステップS1209では、意図・スロット管理部1003は、ステップS1108で抽出された意図及びスロットを現在の対話状態と対応付けて蓄積する。
ステップS1210では、意図・スロット偏り判定部1004は同じ内容の発話文の再入力が必要であるか否かを判定する。この判定方法は、同じ対話状態での発話文を収集する回数を予め決めておく方法であってもよく、他の対話状態で収集されている意図やスロットの総頻度と比較してある割合程度収集できるまでとする方法であってもよく、意図・スロット管理部1003に蓄積されている意図やスロットの偏りがある程度解消するまでとする方法であってもよい。再入力する必要があると判定された場合はステップS1211に進む。ステップS1211では、要求出力部1005は、同じ意図やスロットを含む発話文を再度入力するようユーザに要求する。その後、発話文入力部101がユーザからの発話文の入力を待ち受ける。再入力する必要がないと判定された場合は、対話制御部1007が対話処理を行うステップS1212に進む。
実際に図12に示した方法を実施する場合、入力された複数の発話文が異なる表現になっているか検証することが望ましい。表現が異なっているかどうかの判定は、全く同じ発話文になっていないかを検証する方法などであり得る。
以上のように、第3の実施形態に係る発話文収集装置1000では、実際の対話システムを動作させて発話文を収集することにより、対話の流れを加味した実際に対話システムを運用している際に収集される可能性の高い発話文を収集することが可能となる。
(第4の実施形態)
第3の実施形態では、頻度の低い意図やスロットを抽出して到達すべき対話状態を制御している。様々な対話遷移を含む対話データを収集するためであれば対話状態の到達頻度自体を蓄積して、対話状態の到達頻度の偏りによってユーザに発話文に対する要求を与えてもよいと考えられる。このような対話データを収集することで統計的な対話制御モデルを作成することが可能となる。
例えば図13に示す対話の流れでは、「和食でも何が好みですか?」とシステムが応答する対話状態902に比べて、「一人で行きやすいところがよいでしょうか?」とシステムが応答する対話状態903への到達頻度がとても低い。この場合、第3の実施形態では、「どのようなレストランに行きたいですか?」という対話状態901において「安いところ」という意図やスロットを含んだ発話文を入力するように要求する。
図14は、第4の実施形態に係る発話文収集装置1400を概略的に示している。発話文収集装置1400は、図14に示されるように、発話文入力部101、意図・スロット抽出部102、要求出力部1405、応答出力部1006、対話制御部1407、対話状態管理部1408、及び対話状態偏り判定部1409を備えている。図14において、図1及び図10に示した参照番号を同一の要素に付して、重複する説明を省略する。また、図14に示した対話制御部1407は図10に示した対話制御部1007と基本的には同様の動作を行う。対話制御部1407は、対話処理によって対話遷移を行う前の対話状態を遷移前の対話状態として対話状態管理部1408に送り、対話遷移を行った後の対話状態を遷移後の対話状態として対話状態偏り判定部1409に送る点が対話制御部1007と異なる。実装によっては、対話制御部1407は遷移後の対話状態を要求出力部1405に送ることがある。
対話状態管理部1408は、対話制御部1407から受け取った遷移前の対話状態に関するデータを蓄積する。対話状態偏り判定部1409は、対話状態管理部1408に蓄積されているデータに偏りがあるか否かを判定する。対話状態偏り判定部1409は、偏りがあると判定した場合、現在の対話状態から到達頻度の低い対話状態に到達するルートがあるか否かを判定する。すなわち、対話状態偏り判定部1409は、到達頻度の低い対話状態が現在の対話状態から対話を進めていった先に存在するか否かを判定する。偏りがある対話状態が現在の対話状態に一致する場合は、第3の実施形態と異なり、対話状態偏り判定部1409はルートが存在しないと判定する。対話状態偏り判定部1409は、ルートがあると判定した場合、対話状態管理部1408から到達頻度の低い対話状態を抽出し、要求出力部1405に送る。対話状態偏り判定部1409は、対話制御部1407が対話制御を行った後の対話状態を要求出力部1405に同時に送ってもよい。
要求出力部1405は、対話制御部1407から受け取った遷移後の対話状態と到達頻度の低い対話状態を利用して、到達頻度の低い対話状態に遷移するための意図及びスロットの少なくとも一方を抽出し、その意図及びスロットの少なくとも一方に関連する発話文を入力するようユーザに要求する要求文を作成してユーザに提示する。
次に、図14及び図15を参照して発話文収集装置1400の動作について説明する。
図15は、発話文収集装置1400が発話文を収集する処理に係る手順例を示している。図15に示したステップS1505及びS1506の処理は図2に示したステップS204及びS205の処理と同様であり、図15に示したステップS1501、S1504、S1508からS1510の処理は図11に示したステップS1101、S1106、S1110からS1112の処理と同様であるので、ステップS1501、S1504、ステップS1505、S1506、S1508からS1510の処理についての詳細な説明は省略する。
図15のステップS1501では、応答出力部1006が応答文をユーザに提示する。ステップS1502では、対話状態偏り判定部1409は、対話状態管理部1408に蓄積されている対話状態のうちの到達頻度の低い対話状態が、現在の対話状態より先に存在するか否かを判定する。このとき、現在の対話状態が到達頻度の低い対話状態である場合には、対話状態偏り判定部1409は、存在しないと判定する。存在すると判定された場合にはステップS1503に進み、そうでなければ要求出力部1405が自由に発話文を入力するよう要求する要求文をユーザに提示するステップS1505に進む。
ステップS1503では、対話状態偏り判定部1409は、到達頻度の低い対話状態を対話状態管理部1408から抽出する。ステップS1504では、要求出力部1405は、到達頻度の低い対話状態に到達するための要求文をユーザに提示する。到達頻度の低い対話状態を判定する方法としては、第3の実施形態までにおける意図・スロット管理部が頻度の低い意図やスロットを抽出する方法と同様の方法を利用することができる。
ステップS1504又はステップS1505の処理の後には、応答文及び要求文の両方がユーザに提示された状態になる。この状態でユーザから発話文が入力される。入力された発話文は、図示しない記憶部に蓄積されるとともに、意図・スロット抽出部102に送られる。ステップS1506では、意図・スロット抽出部102は、ユーザが入力した発話文から意図及びスロットを抽出する。
ステップS1507では、対話状態管理部1408は、対話制御部1407が保持している遷移前の対話状態に関するデータを蓄積する。蓄積する対話状態は入力された発話文から抽出された意図やスロットによって対話遷移が行われる前の対話状態である。
ステップS1508では、対話制御部1407は、意図・スロット抽出部102によって抽出された意図及びスロットを利用して対話処理を行う。ステップS1509では、応答出力部1006は、対話処理によって得られた応答IDに応じた応答文を出力する。ステップS1510では、対話制御部1407は、対話が完了したか否かを判定する。完了した場合は処理が終了となり、完了していない場合はステップS1502に戻る。
上述した例では、対話状態管理部1408は対話状態を蓄積している。なお、対話状態管理部1408は対話状態間の遷移の情報を蓄積するようにしてもよい。対話遷移を蓄積する方が、よりユーザと対話システム間の対話の遷移の仕方を把握することができ、辿ることの少ないルートを的確に捉えることができる。この場合、対話制御部1407が、入力された発話文から抽出された意図及びスロットによって対話処理を行った際の対話遷移を対話状態管理部1408に保存し、要求文を出力する際は対話状態偏り判定部1409が遷移後の対話状態から辿りつける中で利用された頻度の低い対話遷移を抽出する。続いて、要求出力部1405が、遷移後の対話状態からその対話遷移が行われるように対話を進めるための意図やスロットを抽出し、その意図やスロットが含まれる発話文を入力するようユーザに要求する。
また、対話状態管理部1408は、対話遷移を行う前の対話状態ではなく、対話遷移を行った後の対話状態を蓄積してもよい。これは、図15のステップS1508とステップS1509を入れ替えることによって実現することができる。
以上のように、第4の実施形態に係る発話文収集装置では、対話状態に関するデータに偏りがある場合に、到達頻度の低い対話状態に到達するための発話文にユーザに要求することにより、様々な対話状態遷移をする対話データを収集することが可能となる。
上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した実施形態の発話文収集装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD−ROM、CD−R、CD−RW、DVD−ROM、DVD±R、DVD±RWなど)、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータ又は組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の発話文収集装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本実施形態における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶又は一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本実施形態における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
なお、本実施形態におけるコンピュータ又は組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本実施形態における機能を実現することが可能な機器、装置を総称している。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
100…発話文収集装置、101…発話文入力部、102…意図・スロット抽出部、103…意図・スロット管理部、104…意図・スロット偏り判定部、105…要求出力部、700…発話文収集装置、702…意図・スロット抽出部、703…意図・スロット管理部、704…意図・スロット偏り判定部、706…応答出力部、1000…発話文収集装置、1003…意図・スロット管理部、1004…意図・スロット偏り判定部、1005…要求出力部、1006…応答出力部、1007…対話制御部、1400…発話文収集装置、1405…要求出力部、1407…対話制御部、1408…対話状態管理部、1409…対話状態偏り判定部。

Claims (16)

  1. ユーザからの発話文の入力を受け付ける入力部と、
    前記発話文から、当該発話文の意図及び当該意図を補足する情報であるスロットの少なくとも一方を抽出する抽出部と、
    前記意図及びスロットの少なくとも一方に関するデータを蓄積する管理部と、
    前記データに偏りがあるか否かを判定し、前記偏りがあると判定した場合に、前記データから頻度の低い意図及びスロットの少なくとも一方を取得する偏り判定部と、
    前記偏り判定部によって取得された前記意図及びスロットの少なくとも一方に関連する発話文を入力するように要求する要求出力部と、
    を具備する発話文収集装置。
  2. 前記偏り判定部は、前記データに含まれる意図の総頻度が一定数以上に達しているときに相対頻度が第1閾値より小さい意図が存在する場合と、前記データに含まれるスロットの総頻度が一定数以上に達しているときに相対頻度が第2閾値より小さいスロットが存在する場合と、の少なくとも一方の場合に、前記偏りがあると判定する、請求項1に記載の発話文収集装置。
  3. 前記偏り判定部は、頻度が最も高い意図と頻度が最も低い意図との間の頻度差が第1閾値以上である場合と、頻度が最も高いスロットと頻度が最も低いスロットとの間の頻度差が第2閾値以上である場合と、の少なくとも一方の場合に、前記偏りがあると判定する、請求項1に記載の発話文収集装置。
  4. 対話システムが出力する応答文を提示する応答出力部をさらに具備する請求項1乃至3のいずれか1項に記載の発話文収集装置。
  5. 前記応答出力部は、前記ユーザが前記発話文を入力する前に前記応答文を前記ユーザに提示する、請求項4に記載の発話文収集装置。
  6. 前記応答出力部は、前記応答文が出現するまでの対話の内容をさらに提示する、請求項4又は5に記載の発話文収集装置。
  7. 前記抽出部によって抽出された前記意図及びスロットの少なくとも一方に基づいて対話処理を行う対話制御部と、
    前記対話処理に応じた応答文を提示する応答出力部と、をさらに具備し、
    前記管理部は、前記抽出部によって抽出された前記意図及びスロットの少なくとも一方を、前記対話文の入力時における前記対話制御部の対話状態と関連付けて記憶し、
    前記偏り判定部は、対話状態ごとに前記データに偏りがあるか否かを判定し、前記偏りがあると判定した場合に、前記偏りがある対話状態に到達するルートが存在するか否かを判定し、前記ルートが存在すると判定した場合に、前記偏りがある前記対話状態に対応付けたれた頻度の低い意図及びスロットの少なくとも一方を取得し、
    前記要求出力部は、前記偏りがある前記対話状態が、前記対話制御部が前記対話処理を行った後の対話状態と一致する場合に、前記偏り判定部によって取得された前記意図及びスロットの少なくとも一方に関連する発話文を入力するように要求する要求文を提示し、前記偏りがある前記対話状態が、前記対話制御部が前記対話処理を行った後の対話状態と一致しない場合に、前記偏りがある前記対話状態に到達するための意図及びスロットの少なくとも一方に関連する発話文を入力するように要求する、請求項1乃至3のいずれか1項に記載の発話文収集装置。
  8. 前記要求出力部は、前記偏りがある前記対話状態に到達するための前記意図及びスロットの少なくとも一方に関する候補が複数ある場合、前記候補から最も低い意図及びスロットの少なくとも一方を選択し、前記選択した意図及びスロットの少なくとも一方に関連する発話文を入力するように要求する、請求項7に記載の発話文収集装置。
  9. 前記偏り判定部は、同じ対話状態での複数の発話文の入力が必要か否かを判定し、
    前記要求出力部は、前記偏り判定部によって必要と判定された場合、前記偏り判定部によって取得された前記意図及びスロットの少なくとも一方に関連する発話文を再度入力するように要求する、請求項7又は8に記載の発話文収集装置。
  10. 前記意図は前記発話文が大まかに伝えようとする内容を示す情報である、請求項1乃至9のいずれか1項に記載の発話文収集装置。
  11. ユーザからの発話文の入力を受け付けることと、
    前記発話文から、当該発話文の意図及び当該意図を補足する情報であるスロットの少なくとも一方を抽出することと、
    前記意図及びスロットの少なくとも一方に関するデータを蓄積することと、
    前記データに偏りがあるか否かを判定し、前記偏りがあると判定した場合に、前記データから頻度の低い意図及びスロットの少なくとも一方を取得することと、
    前記取得された前記意図及びスロットの少なくとも一方に関連する発話文を入力するように要求することと、
    を具備する発話文収集方法。
  12. コンピュータを、
    ユーザからの発話文の入力を受け付ける入力手段と、
    前記発話文から、当該発話文の意図及び当該意図を補足する情報であるスロットの少なくとも一方を抽出する抽出手段と、
    前記意図及びスロットの少なくとも一方に関するデータを蓄積する管理手段と、
    前記データに偏りがあるか否かを判定し、前記偏りがあると判定した場合に、前記データから頻度の低い意図及びスロットの少なくとも一方を取得する偏り判定手段と、
    前記偏り判定手段によって取得された前記意図及びスロットの少なくとも一方に関連する発話文を入力するように要求する要求出力手段として機能させるための発話文収集プログラム。
  13. ユーザからの発話文の入力を受け付ける入力部と、
    前記発話文から、当該発話文の意図及び当該意図を補足する情報であるスロットの少なくとも一方を抽出する抽出部と、
    前記意図及びスロットの少なくとも一方に基づいて対話処理を行う対話制御部と、
    前記対話処理に応じた応答文を提示する応答出力部と、
    前記対話制御部の対話状態に関するデータを蓄積する管理部と、
    前記データに偏りがあるか否かを判定し、前記偏りがあると判定した場合に、前記データから頻度の低い対話状態を取得する判定部と、
    前記頻度の低い対話状態に到達するための意図及びスロットの少なくとも一方に関連する発話文を入力するように要求する要求出力部と、
    を具備する発話文収集装置。
  14. 前記管理部は、前記対話処理によって生じる対話状態間の遷移に関するデータを蓄積し、前記偏り判定部は前記遷移に関して前記偏りがあるか否かを判定する、請求項13に記載の発話文収集装置。
  15. ユーザからの発話文の入力を受け付けることと、
    前記発話文から、当該発話文の意図及び当該意図を補足する情報であるスロットの少なくとも一方を抽出することと、
    前記意図及びスロットの少なくとも一方に基づいて対話処理を行うことと、
    前記対話処理に応じた応答文を提示することと、
    前記対話制御部の対話状態に関するデータを記憶することと、
    前記データに偏りがあるか否かを判定し、前記偏りがあると判定した場合に、前記データから頻度の低い対話状態を取得することと、
    前記頻度の低い対話状態に到達するための意図及びスロットの少なくとも一方に関連する発話文を入力するように要求することと、
    を具備する発話文収集方法。
  16. コンピュータを、
    ユーザからの発話文の入力を受け付ける入力手段と、
    前記発話文から、当該発話文の意図及び当該意図を補足する情報であるスロットの少なくとも一方を抽出する抽出手段と、
    前記意図及びスロットの少なくとも一方に基づいて対話処理を行う対話制御手段と、
    前記対話処理に応じた応答文を提示する応答出力手段と、
    前記対話制御部の対話状態に関するデータを記憶する管理手段と、
    前記データに偏りがあるか否かを判定し、前記偏りがあると判定した場合に、前記データから頻度の低い対話状態を取得する判定手段と、
    前記頻度の低い対話状態に到達するための意図及びスロットの少なくとも一方に関連する発話文を入力するように要求する要求出力手段として機能させるための発話文収集プログラム。
JP2014020811A 2014-02-05 2014-02-05 発話文収集装置、方法、及びプログラム Active JP6235360B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014020811A JP6235360B2 (ja) 2014-02-05 2014-02-05 発話文収集装置、方法、及びプログラム
PCT/JP2015/053448 WO2015119267A1 (en) 2014-02-05 2015-02-03 Uttered sentence collection apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014020811A JP6235360B2 (ja) 2014-02-05 2014-02-05 発話文収集装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2015148910A JP2015148910A (ja) 2015-08-20
JP6235360B2 true JP6235360B2 (ja) 2017-11-22

Family

ID=53778064

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014020811A Active JP6235360B2 (ja) 2014-02-05 2014-02-05 発話文収集装置、方法、及びプログラム

Country Status (2)

Country Link
JP (1) JP6235360B2 (ja)
WO (1) WO2015119267A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017168637A1 (ja) * 2016-03-30 2017-10-05 三菱電機株式会社 意図推定装置及び意図推定方法
JP6803309B2 (ja) * 2017-08-17 2020-12-23 Kddi株式会社 対話データを自動的に追加可能なプログラム、対話サーバ及び方法
KR102288249B1 (ko) 2017-10-31 2021-08-09 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 정보 처리 방법, 단말기, 및 컴퓨터 저장 매체
JP2019106054A (ja) * 2017-12-13 2019-06-27 株式会社東芝 対話システム
JP6964558B2 (ja) * 2018-06-22 2021-11-10 株式会社日立製作所 音声対話システムとモデル作成装置およびその方法
JP2020177367A (ja) * 2019-04-16 2020-10-29 ナレルシステム株式会社 エッジ主導型協働aiのためのコンピュータシステム、そのためのプログラム及び方法
JP6741322B1 (ja) * 2019-11-07 2020-08-19 Jeインターナショナル株式会社 自動発信システム、処理方法、およびプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009145775A (ja) * 2007-12-17 2009-07-02 Nec Corp 言語モデル生成システム、言語モデル生成方法および言語モデル生成用プログラム

Also Published As

Publication number Publication date
JP2015148910A (ja) 2015-08-20
WO2015119267A1 (en) 2015-08-13

Similar Documents

Publication Publication Date Title
JP6235360B2 (ja) 発話文収集装置、方法、及びプログラム
JP6604542B2 (ja) 対話方法、対話プログラム及び対話システム
US11797772B2 (en) Word lattice augmentation for automatic speech recognition
CN108391149B (zh) 显示设备、控制显示设备的方法、服务器以及控制服务器的方法
WO2018021237A1 (ja) 音声対話装置、音声対話方法、および記録媒体
JP7132090B2 (ja) 対話システム、対話装置、対話方法、及びプログラム
JP6235757B2 (ja) 対話データ収集システム、対話データ収集方法、対話データ収集プログラム、対話データ収集支援装置、対話データ収集支援方法および対話データ収集支援プログラム
KR20140089861A (ko) 디스플레이 장치 및 그의 제어 방법
CN104699784A (zh) 一种基于交互式输入的数据搜索方法及装置
JP6143883B2 (ja) 対話支援システム、方法、及びプログラム
JP6622165B2 (ja) 対話ログ分析装置、対話ログ分析方法およびプログラム
JP2017167659A (ja) 機械翻訳装置、方法、およびプログラム
JPWO2018047421A1 (ja) 音声処理装置、情報処理装置、音声処理方法および情報処理方法
JP2014202848A (ja) テキスト生成装置、方法、及びプログラム
JP2018194902A (ja) 生成装置、生成方法および生成プログラム
KR20150077580A (ko) 음성 인식 기반 서비스 제공 방법 및 그 장치
JP2016001242A (ja) 質問文生成方法、装置、及びプログラム
JP2008145769A (ja) 対話シナリオ生成システム,その方法およびプログラム
US8000965B2 (en) Information-processing device and method that attains speech-recognition to recognize data input via speech
WO2019065647A1 (ja) 対話処理装置および対話処理システム
JP3542578B2 (ja) 音声認識装置及びその方法、プログラム
JP6322125B2 (ja) 音声認識装置、音声認識方法および音声認識プログラム
JP5378907B2 (ja) 音声対話装置及び音声対話プログラム
JP2018206228A (ja) 計算機システム、対話制御方法、及び計算機
JP6050171B2 (ja) 認識処理制御装置、認識処理制御方法および認識処理制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160831

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170926

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171026

R151 Written notification of patent or utility model registration

Ref document number: 6235360

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

Free format text: JAPANESE INTERMEDIATE CODE: R313114

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350