(57)【要約】【課題】音声を利用して学習する対話システムにおいて、知識の特性に基づいて、得られた知識を適切に分類して、対話に利用することにより、対話の精度を向上させる。【解決手段】成長型対話装置は、ユーザと音声対話を行って、音声対話の結果を知識として蓄える成長型対話装置であって、取得したユーザの発話音声から、音声認識を行いテキスト化する音声認識部と、意図理解学習データから学習された意図理解モデルデータを参照して、音声認識部により音声認識されたテキストから発話意図を解析する意図理解部と、ＱＡ  ＤＢを参照し、意図理解部で解析された発話意図から応答テキストを生成する応答生成部と、音声認識部により音声認識されたテキスト、発話意図、応答テキストから知識を抽出する知識抽出部と、知識抽出部により抽出された知識を特性に応じて分類する知識分類部とを有する。【選択図】  図５
2019053126.tif 000002
【特許請求の範囲】
【請求項１】
ユーザと音声対話を行って、音声対話の結果を知識として蓄える成長型対話装置であって、
取得したユーザの発話音声から、音声認識を行いテキスト化する音声認識部と、
意図理解学習データから学習された意図理解モデルデータを参照して、前記音声認識部により音声認識されたテキストから発話意図を解析する意図理解部と、
ＱＡ  ＤＢを参照し、前記意図理解部で解析された発話意図から応答テキストを生成する応答生成部と、
前記音声認識部により音声認識されたテキスト、前記発話意図、前記応答テキストから知識を抽出する知識抽出部と、
前記知識抽出部により抽出された知識を特性に応じて分類する知識分類部とを有することを特徴とする成長型対話装置。
【請求項２】
前記知識抽出部により抽出された知識は、前記音声認識部により音声認識されたテキスト、前記発話意図の対の情報となる意図理解学習データ、または、前記発話意図と、前記応答テキストの対の情報であるＱＡ  ＤＢであることを特徴とする請求項１記載の成長型対話装置。
【請求項３】
前記意図理解学習データは、前記音声認識部により音声認識されたテキストが特定ユーザに依存するかの指標、前記音声認識部により音声認識されたテキストが成長型対話装置の対話のシナリオに依存するかの指標によって分類されることを特徴とする請求項２記載の成長型対話装置。
【請求項４】
前記ＱＡ  ＤＢは、前記応答テキストが特定タスクに依存するかの指標によって分類されることを特徴とする請求項２記載の成長型対話装置。
【請求項５】
前記知識分類部の知識の分類結果を表示し、成否の判定を入力する手段を有することを特徴とする請求項２記載の成長型対話装置。
【請求項６】
さらに、撮影した画像から画像認識をおこなう画像認識部を有することを特徴とする請求項１記載の成長型対話装置。
【請求項７】
稼動ログを保持することを特徴する請求項１記載の成長型対話装置。
【請求項８】
稼動ログからデバイスに関する経験知識を生成する経験知識生成部を有することを特徴とする請求項７記載の成長型対話装置
【請求項９】
前記ＱＡ  ＤＢは、前記稼動ログを参照し、前記応答テキストが特定デバイスに依存するかの指標によって分類されることを特徴とする請求項７記載の成長型対話装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、成長型対話装置に係り、特に、音声対話を自動的に行うための知識情報を獲得するのに好適な成長型対話装置に関する。
【背景技術】
【０００２】
コンピュータまたはロボットと人間のユーザとの間で音声によって対話を行うシステム（以下、対話システムと呼ぶ）が開発されている。この対話システムを搭載したロボット、またはスマートフォンやタブレットＰＣなどのデバイス（以下、「対話デバイス」と呼ぶ）は、対話システムを動作させ、対面するユーザに対して音声対話によるサービスを実施する。
【０００３】
この対話システムでは、まずユーザが発話した音声をマイクにより集音し、音声認識する。次に、書き起こされたテキストに対して意図理解と呼ばれる処理により、ユーザが対話システムに何をしてもらいたいと言っているかを判別する。最後に、判別結果に基づき、ユーザが意図した動作、例えば、質問への回答の読み上げや情報の表示などの動作、ロボットであれば移動など動作を対話デバイスが実行する。
【０００４】
この対話システムにおいて、システムが回答を知らない質問をユーザが行った場合、従来であれば対話システムは「知りません」などの回答をしていたが、逆にシステムからユーザにその質問の回答を尋ね、その結果で質問応答の知識を更新させていくことができる。特許文献１ではそのような対話システムの構成を開示している。特許文献１の音声対話装置においては、ユーザから知らないことを聞かれた場合にユーザにその答えを問い返し、その質問内容と答えを記憶して、次からの対話に用いるようにする。このため、知らない対話内容によって対話を中断させたり、ユーザの提示する話題を変更したりする必要性が小さくなると共に、学習によって新たなシナリオや語彙を増やして知識を向上させ、次回からのユーザとの対話に反映することができるとしている。
【０００５】
同様に対話システムにおいては、質問の回答内容そのものではなく、ユーザが使う質問で使った表現を学習し、よりバリエーションの大きい質問表現に対応できるように知識を更新させていくシステム構成も存在する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−１０９３２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来の対話システムでは、上記のように逆質問を行うなどして得た知識は、そのシステムがそれ以降に音声対話するすべてのユーザやすべての文脈において使われることが一般的だった。しかしながら、新たに学習した回答知識は、常に使える知識、特定の対話デバイスだけが使ってよい知識、または特定の役割を担った対話デバイス間で共有できる知識などに分類できる。同じく、質問表現のバリエーションに関する知識も、常に使える知識、特定のユーザに対してのみ使える知識（または特定のユーザに対して特に有効な知識）、対話シナリオの特定の文脈において使える知識などに分類できる。
【０００８】
従来の対話システムではこのような知識の特性に基づいて、得た知識をどのような場合で使ってよいかを切り替えることについては考慮されていなかった。このため、あるユーザの個人的な情報に関する回答知識を他のユーザに使ったり、特定のユーザしか使わない質問表現知識を学習したりして、対話の精度を下げてしまうなどの問題があった。
【０００９】
本発明は、音声を利用して学習する対話システムにおいて、知識の特性に基づいて、得られた知識を適切に分類して、対話に利用することにより、対話の精度を向上させることのできる成長型対話装置を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の成長型対話装置の構成は、好ましくは、ユーザと音声対話を行って、音声対話の結果を知識として蓄える成長型対話装置であって、取得したユーザの発話音声から、音声認識を行いテキスト化する音声認識部と、意図理解学習データから学習された意図理解モデルデータを参照して、音声認識部により音声認識されたテキストから発話意図を解析する意図理解部と、ＱＡ  ＤＢを参照し、意図理解部で解析された発話意図から応答テキストを生成する応答生成部と、音声認識部により音声認識されたテキスト、発話意図、応答テキストから知識を抽出する知識抽出部と、知識抽出部により抽出された知識を特性に応じて分類する知識分類部とを有するようにしたものである。
【発明の効果】
【００１１】
本発明によれば、音声を利用して学習する対話システムにおいて、知識の特性に基づいて、得られた知識を適切に分類して、対話に利用することにより、対話の精度を向上させることのできる成長型対話装置を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】実施形態１に係る成長型対話装置の機能構成を示す図である。
【図２】意図理解用モデルデータの一例を示す図である。
【図３】意図理解用学習データの一例を示す図である。
【図４】ＱＡ  ＤＢの一例を示す図である。
【図５】実施形態１に係る成長型対話装置の処理の流れを示す図である。
【図６】実施形態１に係る知識分類処理を示すフローチャートである。
【図７】シナリオ文脈依存度およびタスク文脈依存度の算出処理を示すフローチャートである。
【図８】個人性依存度の算出処理を示すフローチャートである。
【図９】実施形態２に係る成長型対話装置の機能構成を示す図である。
【図１０】実施形態２に係る成長型対話装置の処理の流れを示す図である。
【図１１】実施形態２に係る知識分類処理を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明に係る各実施形態を、図１ないし図１１を用いて説明する。
【００１４】
〔実施形態１〕
以下、本発明の実施形態１を、図１ないし図８を用いて説明する。
【００１５】
先ず、図１を用いて実施形態１に係る成長型対話装置の構成について説明する。  
本実施形態に係る成長型対話装置２００は、図１に示されるように、処理部２１０、記憶部２２０、音声入出力部２３０からなる。成長型対話装置２００は、ＰＣやスマートフォンなどの一般的な情報処理装置でもよいし、特定の業務を遂行するためのロボットでもよい。
【００１６】
音声入出力部２３０には、マイク２３１と、スピーカー２３０が接続され、マイク２３１からユーザの音声を入力し、スピーカー２３０からユーザに音声を出力するようになっている。
【００１７】
処理部２１０は、成長型対話装置２００の各処理を実行する部分であり、発話区間検出部２１１、音声認識部２１２、意図理解部２１３、意図理解モデル学習部２１４、応答生成部２１５、音声合成部２１６、知識抽出部２１７、知識分類部２１８、知識格納部２１９のサブコンポーネントよりなる。
【００１８】
処理部２１０のサブコンポーネントの機能は、ハードウェアとしての中央処理装置（ＣＰＵ）が主記憶装置上のプログラムを実行することにより、実行される。
【００１９】
発話区間検出部２１１は、ユーザ音声から無音部を検知し、発話区間を検出する機能部である。音声認識部２１２は、ユーザ音声を音声認識して、テキスト化する機能部である。意図理解部２１３は、音声認識したテキストからユーザの発話意図を意味づける機能部である。意図理解モデル学習部２１４は、意図理解学習データ（後述）から意図理解モデルデータ（後述）を生成する機能部である。応答生成部２１５は、意図理解部２１３の処理に基づいて、成長型対話装置２００の応答のためのデータを生成する機能部である。音声合成部２１６は、成長型対話装置２００がユーザに応答するための音声データを生成する機能部である。知識抽出部２１７は、応答生成部２１５の処理に基づいて、知識情報を獲得する機能部である。知識分類部２１８は、知識抽出部２１７により抽出された知識情報の格納箇所を判定する機能部である。知識格納部２１９は、知識情報をＱＡ  ＤＢ（後述）と意図理解学習データ（後述）に格納する機能部である。
【００２０】
記憶部２２０は、成長型対話装置２００の各処理を実行するための必要データを格納する部分であり、音声認識用モデルデータ１０８、意図理解用モデルデータ１０９、意図理解用学習データ（一般）１２１、意図理解用学習データ（特定ユーザ）１２２、意図理解用学習データ（シナリオノード）１２３、ＱＡ  ＤＢ（一般）１１１、ＱＡ  ＤＢ（特定タスク）１１３の各種データが記憶される。
【００２１】
音声認識用モデルデータ１０８は、音響データを音素に変換したり、語のつながりを識別するための確率値からなる音声認識用の基準データである。意図理解用モデルデータ１０９は、認識されたテキストから意図を抽出するための基準データである。意図理解用学習データは、認識されたテキストとユーザの発話意図を結びつけるための学習データである。本実施形態の意図理解用学習データには、意図理解用学習データには、意図理解用学習データ（一般）１２１、意図理解用学習データ（特定ユーザ）１２２、意図理解用学習データ（シナリオノード）１２３の三つの種類の学習データを想定する。意図理解用学習データの詳細は、後に説明する。
【００２２】
ＱＡ  ＤＢ（Question and Answer DataBase）は、ユーザの発話意図と応答するための答えを結びつけるデータである。本実施形態のＱＡ  ＤＢには、ＱＡ  ＤＢ（一般）１１１、ＱＡ  ＤＢ（特定タスク）１１３の二つの種類のＤＢを想定する。
【００２３】
次に、図２ないし図４を用いて本実施形態の成長型対話装置に用いられるデータ構造の主要なものについて説明する。
【００２４】
意図理解用モデルデータ１０９は、認識されたテキストから意図を抽出するための基準データであり、図２に示されるように、テキスト１０９ａ、コマンド１０９ｂ、確信度１０９ｃのフィールドからなる。
【００２５】
テキスト１０９ａは、意図理解用学習用データから得られるテキストの単語列を格納するフィールドである。コマンド１０９ｂは、成長型対話装置が動作するためのコマンドを格納するフィールドである。確信度１０９ｃは、ユーザとの対話でテキスト１０９ａの単語が出てきたときに、成長型対話装置がコマンド１０９ｂに記述されたコマンドで対応するときの蓋然性を０〜１の間で数値化した確率を格納するフィールドである。
【００２６】
例えば、図２の第三レコードに示される例では、「高尾山」、「高さ」、「何ｍ」または「高い」という単語がユーザとの対話に出てきたときに、質問の応答として、高尾山の高さを答える確信度が、０.９であることを示している。
【００２７】
意図理解用学習データ（一般）１２１は、認識されたテキストから意図を学習して、意図理解用モデルデータ１０９を作成するための元データであり、図３に示されるように、テキスト１２１ａ、コマンド１２１ｂのフィールドからなる。
【００２８】
テキスト１２１ａは、ユーザの対話を音声認識して書き起こしたテキストを格納するフィールドである。コマンド１２１ｂは、テキスト１２１ａに対応した成長型対話装置が動作するためのコマンドを格納するフィールドである。図３に示される例では、コマンド１２１ｂが質問応答として、「高尾山の高さ」を答えるのに対応するテキストが「高尾山の高さは」、「高尾山の高さはどれくらいですか」、「高尾山と富士山の高さはどれくらい違いますか」などであることを示している。
【００２９】
また、図としては示さなかったが、意図理解用学習データ（特定ユーザ）１２２は、特定のユーザごとに別個に存在する学習データであり、そのユーザに対する知識獲得が行われていない場合には中身は空となる。
【００３０】
さらに、図としては示さなかったが、意図理解用学習データ（シナリオノード）１２３は、特定のシナリオツリーごとに存在する学習データである。ここで、シナリオツリーとは、成長型対話装置の対話における対応を表すツリーであり、シナリオノードとは、対話装置の対応の有限状態を表すノードである。成長型対話装置は、シナリオツリーに従い、ユーザからの対話の入力によってノードを遷移して、ユーザへの対話の応答をするように設計されている。
【００３１】
ＱＡ  ＤＢ（一般）は、質問回答の内容に応じて、その答えを格納するデータであり、図４に示されるように、Ｉフィールド１１１ａ、Ａフィールド１１１ｂからなる。
【００３２】
Ｉフィールド１１１ａは、質問を表す意図ラベルを格納するフィールドである。ここで、意図ラベルとは、「高尾山の高さ」、「高尾山の位置」などのように、質問の意図を表す識別子である。Ａフィールド１１１ｂは、Ｉフィールド１１１ａの質問の意図に対する答えを格納するフィールドである。図４に示される例では、質問意図の「高尾山の高さ」に対する答えとして、「５９９メートル」、質問意図の「高尾山の位置」に対する答えとして、「東京都八王子市」が格納されることを示している。
【００３３】
また、ＱＡ  ＤＢ（特定タスク）１１３は、特定のタスクごとに作成されて、その特定のタスクに関しての、質問回答の内容に応じて、その答えを格納するデータである。特定のタスクとは、成長型対話装置が対話応答に関して受取るコマンドに対して動作をいう。
【００３４】
次に、図５ないし図８を用いて成長型対話装置の処理について説明する。
【００３５】
最初に、図５を用いて成長型対話装置（対話デバイス）を通した音声対話処理の流れ、特にユーザが発話した質問音声に対して成長型対話装置が回答音声を発話するまでの一連の処理の流れについて説明する。
【００３６】
成長型対話装置は、常に、図１に示したマイク２３１で音声を集音し続けている。この状況下で、ユーザが発声したユーザ発話音声１０１は、マイクでデジタル信号に変換された後、発話区間検出処理１０２により、ユーザの音声部分のみが切り出される。次に、音声認識処理１０３により、音声認識処理がされて、音声に対応するテキストに書き起こされる。ここで、音声認識処理１０３は、音声認識用モデルデータ１０８を用いる。
【００３７】
次に、意図理解処理１０４でテキストに含まれる単語情報をもとに、ユーザ質問の意図ラベルが決定される。ここで意図ラベルとは、既に説明したように、「高尾山の高さ」、「高尾山の位置」などのように、質問の意図を表す識別子である。単語情報からこの意図情報を決定するために、意図理解用モデルデータ１０９を用いる。次に、応答生成処理１０５で二種類のＱＡ  ＤＢ内で、意図理解処理１０４で決定したＩフィールドの意図ラベルを検索し、対応するＡフィールドに格納された回答テキストを出力する。最後に、音声合成処理１０６で回答テキストを合成音声に変換し、スピーカー２３２を通して対話デバイスから応答音声１０７として発声させる。
【００３８】
意図理解用モデルデータ１０９は、意図理解モデル学習処理１１０によって、意図理解用学習データ（一般）１２１と意図理解用学習データ（特定ユーザ）１２２を結合した学習データから機械学習されたモデルデータである。ここで、意図理解用学習データ（特定ユーザ）１２２は、ユーザごとに別個に存在するデータであり、そのユーザに対する知識獲得が行われていない場合には中身は空となる。対話デバイスが新たなユーザを検知して音声対話サービスを開始する際、顔認識や生体情報認証技術などを用いてそのユーザを識別し、既知のユーザであればそのユーザ用の意図理解用学習データ（特定ユーザ）１２２を選択した後、上述の機械学習処理が行われる。
【００３９】
未知のユーザだった場合は、空のデータを用意し、そのユーザ用の意図理解用学習データ（特定ユーザ）１２２として新たにシステムに追加する。このようにして、対話デバイスがあるユーザにサービスしている状況では、意図理解用モデルデータ１０９は、そのユーザに特化した意図理解モデル学習がなされることになる。
【００４０】
また、意図理解用学習データ（特定シナリオ）１２３は、シナリオツリーごとに別個に存在するデータであり、そのシナリオに対する知識獲得が行われていない場合には中身は空となる。
【００４１】
ＱＡ  ＤＢには、上述のように、ＱＡ  ＤＢ（一般）１１１、ＱＡ  ＤＢ（特定タスク）１１３の二種類がある。ＱＡ  ＤＢ（一般）１１１は、どのユーザ、どのタスク、どの対話デバイスでも利用できる回答情報が格納されたＤＢであり、ＱＡ  ＤＢ（特定タスク）１１３はある特定のタスクを実行中の対話デバイスのみ回答できる回答情報が格納されたＤＢである。
【００４２】
これらのＱＡ  ＤＢは、上述のように、基本的にはＩフィールドと、Ａフィールドの二つのフィールドを持つテーブルであり、Ｉフィールドにはあらかじめ定義された意図ラベルが格納され、Ａフィールドにはその意図ラベルが意味する質問に対する回答テキストが格納されている。またＱＡ  ＤＢ（特定タスク）１１３、ＱＡ  ＤＢ（特定デバイス）１１４も、複数のタスクや複数の対話デバイスそれぞれに対して存在するＤＢであり、ユーザと同様にタスクや対話デバイスが変わるごとに切り替えが行われる。
【００４３】
上述のように、本実施形態の成長型対話装置では、タスクと呼ぶ概念を採用している。タスクとは、対話デバイスが実施しているサービスの内容を示す情報であり、例えば、「お客様誘導タスク」「商品説明タスク」などが考えられる。一つ一つの成長型対話装置では、一時期に、いずれか一つのタスクが割り当てられ、そのタスクに対応するコンテンツでサービスを実施する。もちろん、タスクを切り替えた際に、三種類の意図理解用学習データ、二種類のＱＡ  ＤＢは、そのタスク用のものに一斉に切り替えることで対話の精度を向上させることが可能である。
【００４４】
応答生成処理１０５から出力される、音声認識処理１０３の書き起こしテキスト、意図理解処理１０４の意図ラベルとその確信度、応答生成処理１０５でのＱＡ  ＤＢの検索結果（成功／失敗）などの情報に基づいて、知識抽出処理１１８で、新たな知識情報を抽出する。ここで出力される知識情報は、書き起こしテキストＱ、意図ラベルＩ、回答テキストＡの三つの情報である。  
知識抽出処理１１８は、例えば以下のような手順を取りうる。
【００４５】
（意図ラベルの確信度が低い場合）
意図ラベルの確信度がある閾値Ｔ１以下だった場合、応答生成処理１０５では回答テキストを検索可能だが、その回答テキストの読み上げは実施しない。そして、知識抽出処理１１８では、ユーザへの逆質問を行うことにより、回答テキストを取得する。ここで、ユーザとは質問をしたユーザとは、別のユーザであり、それから知識を獲得することのできる主体であると想定している。例えば、書き起こしテキストが「高尾山の高さを教えて」だったとすると、対話システムはこのテキストに対して定型的な文末表現変換処理を行うことにより、「高尾山の高さを教えてください」とユーザに質問を行う。
【００４６】
これに対してユーザが「５９９メートルだよ」と回答すれば、音声認識処理の後、定型的な文末表現を削除するなどのテキスト処理を行うことで「５９９メートル」というテキストを得る。さらに、対話システムが自身固有の文末表現を追加することで「５９９メートルです」という回答テキストを得る。結果、書き起こしテキストＱ「高尾山の高さを教えて」、新たに作成した意図ラベルＩ「高尾山の高さを教えて」、対応する回答テキストＡ「５９９メートルです」という抽出知識を出力できる。新たに作成する意図ラベルは既に存在するラベルとは合致しない一意なものでなければならない。上記の例では書き起こしテキストＱをそのままラベルとしたが、もし同一の意図ラベルが存在していれば末尾に識別番号を付与するなどして一意にすることは容易である。
【００４７】
（意図ラベルがＱＡデータベースに含まれない場合）
応答生成処理１０５でＱＡデータベースを検索した際に指定された意図ラベルがＩフィールドに存在しなかった場合、上記と同様に対話システムが逆質問を行って回答テキストを取得する。結果、書き起こしテキストＱ、意図ラベルＩ、回答テキストＡの三つの情報を出力できる。
【００４８】
（意図ラベルの確信度が高く、ＱＡ  ＤＢにも含まれる場合）
意図ラベルの確信度が閾値Ｔ１よりも高く、ＱＡ  ＤＢにも含まれる場合は、知識抽出処理１１８は実施せず、応答生成処理１０５で検索された回答テキストの読み上げを実施するのみとなる。
【００４９】
知識抽出処理１１８が実行され、上記三つの知識情報が出力された場合、それらは、次の知識分類処理１２０への入力とされる。知識分類処理１２０では、これらの知識情報をどの意図理解用学習データ、どのＱＡデータベースに格納するかを決定する。
【００５０】
最後に、知識分類処理１２０の判定結果に基づき、知識格納処理１２４では抽出された知識情報（Ｑ，Ｉ，Ａ）を適切な場所に格納する。すなわち、書き起こしテキストＱは、意図理解学習用データのテキストフィールドに、意図ラベルＩは、意図理解学習用データのコマンドフィールドと、ＱＡ  ＤＢのＩフィールドに、回答テキストＡは、ＱＡ  ＤＢのＩフィールドのＡフィールドに所定の形式で格納される。
【００５１】
次に、図６を用いて知識分類処理１２０の詳細について説明する。  
先ず、入力された知識情報に基づいて、その意図ラベルＩと回答テキストＡの組がいずれかのＱＡ  ＤＢのＩフィールドおよびＡフィールドに格納されているかを検索する（Ｓ２０１）。そのようなレコードが検索された場合（Ｓ２０１：Ｙ）、この知識情報は、新たな回答知識の抽出ではなく、新たな表現知識の抽出結果と判断される。その場合、次に、書き起こしテキストＱすなわちそのテキストの質問表現のシナリオ文脈依存度Ｃを算出する（Ｓ２０２）（詳細は後述）。
【００５２】
さらに、Ｑの個人依存度Ｕを算出する（Ｓ２０３）（詳細は後述）。そして、シナリオ文脈依存度Ｃと個人依存度Ｕの大きさをある閾値Ｃ０、Ｕ０と比較することにより（Ｓ２０４、Ｓ２０５）で、この知識情報（表現情報）の格納先とすべき意図理解用学習データの場所を決定する。すなわち、シナリオ文脈依存度Ｃが閾値Ｃ０より、大きいときには（Ｓ２０４：Ｙ）、意図理解用学習データ（シナリオノード）１２３に格納し、シナリオ文脈依存度Ｃが閾値Ｃ０より、大きくないときには（Ｓ２０４：Ｎ）、Ｓ２０５に行く。個人依存度Ｕが閾値Ｕ０より、大きいときには（Ｓ２０５：Ｙ）、意図理解用学習データ（特定ユーザ）１２２に格納し、大きくないときには（Ｓ２０５：Ｎ）、意図理解用学習データ（一般）１２１に格納する。
【００５３】
一方、処理Ｓ２０１でレコードが検索されなかった場合（Ｓ２０１：Ｎ）、抽出された知識情報は、回答知識であると判断される。この場合、回答テキストＡのタスク文脈依存度Ｔを算出し（Ｓ２０７）（詳細は後述）、ある閾値Ｔ０との比較により、格納箇所をＱＡ  ＤＢ（一般）１１１、または、ＱＡ  ＤＢ（特定タスク）１１３と分類する。すなわち、獲得した回答知識（Ｉ，Ａ）を、タスク文脈依存度Ｔが閾値Ｔ０より、大きいときには（Ｓ２０７：Ｙ）、ＱＡ  ＤＢ（特定タスク）１１３に格納し、タスク文脈依存度Ｔが閾値Ｔ０より、大きくないときには（Ｓ２０７：Ｎ）、ＱＡ  ＤＢ（一般）１１１に格納する。  
そして、いずれかに格納後に、Ｓ２０２に行き、知識情報を意図理解用学習データのいずれかに、格納する。
【００５４】
ここで、シナリオ文脈依存度Ｃと個人依存度Ｕは、書き起こしテキストＱを解析して、その値を算出し、タスク文脈依存度Ｔは、回答テキストＡを解析して、その値を算出している。これは、質問の言い回しや表現は、成長型対話装置におけるシナリオと、個人の言い方に依存することが多いことが推測されるが、質問に対する答えは、成長型対話装置に与えられたタスクに依存しており（例えば、商品説明タスクでは、商品名や商品の特性などが答えになることが多いであろう）、シナリオや個人の特性にはあまり依存しないと推測されるからである。
【００５５】
次に、図７を用いてシナリオ文脈依存度Ｃ算出処理、個人依存度Ｕ算出処理の詳細について説明する。  
書き起こしテキストＱのシナリオ文脈依存度Ｃは、以下のようにして算出される。先ず、書き起こしテキストＱが形態素解析プログラムなどを用いて単語に分割される（Ｓ３０１）。次に、辞書を参照し、助詞など特定の品詞の単語を削除することにより、意味を持つ内容語ｗｉを抽出することができる（Ｓ３０２）。同様に、シナリオデータに含まれるテキストから、単語分割をし（Ｓ３０３）、内容語の列ｃｋを抽出する（Ｓ３０４）。
【００５６】
次に、辞書からランダムに、単語列ｃｋと同じ長さの単語列ｒｋを生成する（Ｓ３０６）。そして、単語共起確率データベース３０７を参照することし、これらの単語ｗｉ、単語列ｃｋ、ｒｋから、単語列ｃｋとｒｋで条件づけられた単語ｗｉに含まれるすべての単語間の共起確率Ｐｒ（ｗｉ，ｗｊ｜ｃｋ）とＰｒ（ｗｉ，ｗｊ｜ｒｋ）を取得する。共起確率Ｐｒ（ｗｉ，ｗｊ｜ｃｋ）とは、単語列ｃｋを含む文章中で、単語ｗｉと、単語ｗｊが共に表れる統計的確率であり、共起確率Ｐｒ（ｗｉ，ｗｊ｜ｒｋ）とは、単語列ｒｋを含む文章中で、単語ｗｉと、単語ｗｊが共に表れる統計的確率であり、最後に、シナリオ文脈依存度Ｃを、例えば、以下の（式１）により、算出する。ただし、対数は自然対数をとる。
【００５７】
【数１】
2019053126.tif 000003
【００５８】
ここで、シナリオ文脈依存度Ｃが大きいときには、書き起こしテキストＱがシナリオに依存する度合いが大きい（すなわち、ランダムな単語列と比べて乖離が大きい）ことを意味する。
【００５９】
タスク文脈依存度Ｔも、同様の処理で実現できる。この場合、回答テキストＡとタスクデータを入力とし、最終的に計算された値をタスク文脈依存度Ｔとする。ここでタスクデータとは、あるタスクに含まれるサービスシナリオ全体に含まれるテキストを指す。この場合、内容語抽出Ｓ３０４の出力を、ｔｋとし、タスク文脈依存度Ｔの値は、以下の（式２）により算出する。
【００６０】
【数２】
2019053126.tif 000004
【００６１】
次に、図８を用いて個人依存度Ｕ算出処理について説明する。  
先ず、書き起こしテキストＱは、図７に示した処理と同様に、単語分割され（Ｓ４０１）、内容語を抽出して（Ｓ４０２）、単語ｗｉへ変換される。次に、処理Ｓ４０３では単語共起確率データベース４０５を参照することにより、単語ｗｉに含まれるすべての単語間の共起確率Ｐｒ（ｗｉ，ｗｊ）を取得する（Ｓ４０３）。最後に、個人依存度Ｕを、以下の（式３）により算出する。
【００６２】
【数３】
2019053126.tif 000005
【００６３】
ここで、個人依存度Ｕが大きいときには、書き起こしテキストＱが特定ユーザに依存する度合いが大きいことを意味する。すなわち、一般的に使われない言い方（確率が少ない単語の組合せ表現）をするときには、特定のユーザに依存するとみなすことを意味する。
【００６４】
なお、本実施形態では、意図理解用学習用データとして、一般、特定ユーザ、シナリオノードの三種類を別の場所に格納することにより区別したが、データにラベルを付け、そのラベルを読み取ることによって、意図理解用学習用データの種類を判定してもよい。また、ＱＡ  ＤＢとして、一般、特定タスクの二種類を別の場所に格納することにより区別したが、データにラベルを付け、そのラベルを読み取ることによってＱＡ  ＤＢの種類を判定してもよい。
【００６５】
また、知識格納判定処理では、獲得した知識を、シナリオ文脈依存度、個人依存度、タスク文脈依存度という各種の指標に基づいて、意図理解用学習データ、ＱＡ  ＤＢの入れる場所を判定したが、成長型対話装置に表示装置と入力装置を設けて、獲得した知識情報（Ｑ，Ｉ，Ａ）と、指標による判断を表示して、管理者がどの意図理解用学習データ、ＱＡ  ＤＢの入れるかをチェックするようにしてもよい。
【００６６】
以上、本実施形態の構成により、成長型対話装置は、新たに得た質問回答に関する知識または質問表現に関する知識を、その特性に従って適切に分類された意図理解用モデルデータまたはＱＡ  ＤＢに格納することができる。その結果、特定のユーザに対してのみ回答してよい知識を他のユーザに回答することがなくなり、また、特定のユーザに有効な質問表現知識を他のユーザにも使って、対話精度を落としてしまう課題が解決される。特定タスクに関しても同様である。
【００６７】
また、成長型対話装置のシナリオにそった質問表現に関する知識を意図理解用モデルデータとして格納することにより、学習の精度を向上させることができる。
【００６８】
〔実施形態２〕
以下、本発明の実施形態２を、図９ないし図１１を用いて説明する。
【００６９】
実施形態１では、音声認識によりユーザと対話する成長型対話装置の知識獲得について説明した。本実施形態では、それに加えて、人に対して画像認識が可能で、稼動ログを蓄積して、特定タスクについて経験知識を蓄える場合の知識獲得について説明する。
【００７０】
本実施形態では、実施形態１と比較して異なる所を重点的に説明することとする。
【００７１】
先ず、図９を用いて実施形態２に係る成長型対話装置の構成について説明する。  
本実施形態の成長型対話装置が、実施形態１の成長型対話装置と異なるのは、画像入力部２４０を有し、それにカメラ（撮像装置）２４２が接続され、そこから撮影した動画、静止画を取り込めることである。  
処理部２１０には、実施形態１に加えて、画像認識部２３０と経験知識生成部２３２のサブコンポーネントが付け加わっている。
【００７２】
画像認識部２３０は、撮影した動画、静止画をパターン認識して特徴を読み取る機能部である。画像認識部２３０の画像認識結果と稼動ログより、その成長型対話装置に関する経験知識を生成する機能部である。成長型対話装置に関する経験知識とは、その成長型対話装置を稼動させたことによって得られた知識である。  
また、記憶部２２０は、実施形態１のデータに加えて、ＱＡ  ＤＢ（特定デバイス）１１４と稼動ログ１１７が加わっている。
【００７３】
ＱＡ  ＤＢ（特定デバイス）１１４は、特定のデバイスごとに作成されて、その特定のデバイスに関しての質問回答の内容に応じて、その答えを格納するデータである。ここで、特定のデバイスとは、成長型対話装置のハードウェアのことを意味しており、一台、一台の成長型対話装置が特定のデバイスとみなすこととする。稼動ログ１１７は、成長型対話装置の稼動記録である。稼動ログ１１７には、例えば、成長型対話装置により画像認識された特定のユーザが、何年の何月何日にこのデバイスとある話題について対話したなどの記録が書き込まれる。
【００７４】
次に、図１０および図１１を用いて本実施形態の成長型対話装置の処理について説明する。  
本実施形態の成長型対話装置では、実施形態１の図５に示した成長型対話装置の処理に、画像認識処理１１６と経験知識生成処理１１９、データとして、稼動ログ１１７、ＱＡ  ＤＢ（特定デバイス）が加わっている。本実施形態の成長型対話装置の処理では、画像認識の結果と、成長型対話装置の稼動ログ１１７より、経験知識生成処理１１９より、その成長型対話装置に関する経験知識を生成する。  
生成した経験知識は、知識分類処理１２０の判断に用いられる。
【００７５】
次に、図１１を用いて実施形態２に係る知識分類処理１２０の詳細について説明する。
実施形態２に係る知識分類処理１２０では、Ｓ２０１：Ｎのときの判定処理として、回答テキストＡが経験知識であるか否かを判定する（Ｓ２０６）。回答テキストＡが経験知識のときには（Ｓ２０６：Ｙ）、獲得した回答知識（Ｉ，Ａ）を、ＱＡ  ＤＢ（特定デバイス）１１４に格納する。回答テキストＡが経験知識でないときには（Ｓ２０６：Ｎ）、Ｓ２０７に行く。
【００７６】
また、各ＱＡ  ＤＢに格納後に、Ｓ２０２の判定処理に行くのは、図６に示した実施形態１の知識分類処理１２０と同様である。  
本実施形態では、実施形態１の成長型対話装置の機能に加えて、特定デバイスに特化した知識の獲得をおこなうことができる。
【符号の説明】
【００７７】
１０１…ユーザ発話音声
１０２…発話区間検出処理
１０３…音声認識処理
１０４…意図理解処理
１０５…応答生成処理
１０６…音声合成処理
１０７…応答音声
１０８…音声認識用モデルデータ
１０９…意図理解用モデルデータ
１１０…意図理解モデル学習処理
１１１…ＱＡ  ＤＢ（一般）
１１３…ＱＡ  ＤＢ（特定タスク）
１１４…ＱＡ  ＤＢ（特定デバイス）
１１７…稼動ログ
１１８…知識抽出処理
１２０…知識分類処理
１２１…意図理解用学習データ（一般）
１２２…意図理解用学習データ（特定ユーザ）
１２３…意図理解用学習データ（シナリオノード）
１２４…知識格納処理
【図１】
2019053126.tif 000006
【図２】
2019053126.tif 000007
【図３】
2019053126.tif 000008
【図４】
2019053126.tif 000009
【図５】
2019053126.tif 000010
【図６】
2019053126.tif 000011
【図７】
2019053126.tif 000012
【図８】
2019053126.tif 000013
【図９】
2019053126.tif 000014
【図１０】
2019053126.tif 000015
【図１１】
2019053126.tif 000016