JP2019109424A - 計算機、言語解析方法、及びプログラム - Google Patents

計算機、言語解析方法、及びプログラム Download PDF

Info

Publication number
JP2019109424A
JP2019109424A JP2017243880A JP2017243880A JP2019109424A JP 2019109424 A JP2019109424 A JP 2019109424A JP 2017243880 A JP2017243880 A JP 2017243880A JP 2017243880 A JP2017243880 A JP 2017243880A JP 2019109424 A JP2019109424 A JP 2019109424A
Authority
JP
Japan
Prior art keywords
character string
text
continuation character
utterance
converted text
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.)
Granted
Application number
JP2017243880A
Other languages
English (en)
Other versions
JP6867939B2 (ja
Inventor
雄太 藤澤
Yuta Fujisawa
雄太 藤澤
友春 羽角
Tomoharu Hasumi
友春 羽角
恵理 川井
Eri Kawai
恵理 川井
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2017243880A priority Critical patent/JP6867939B2/ja
Publication of JP2019109424A publication Critical patent/JP2019109424A/ja
Application granted granted Critical
Publication of JP6867939B2 publication Critical patent/JP6867939B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】フィラー及び間を考慮した言語解析を実現する。【解決手段】ユーザが発した音声に対応する音声信号を処理する計算機であって、計算機は、音声信号を複数の文字列から構成されるテキストに変換し、発話継続文字列が変換されたテキストに含まれるか否かを判定し、発話継続文字列が変換されたテキストに含まれる場合、記憶装置に変換されたテキストを蓄積し、発話継続文字列が変換されたテキストに含まれないと判定された場合、一つ以上の変換されたテキストを用いて出力テキストを生成し、出力テキストに基づいて、音声信号に対応する音声を発したユーザの発話意図を特定し、ユーザの発話に対する応答を行う装置に、特定されたユーザの発話意図を示す情報を送信する。【選択図】図1

Description

本発明は、ユーザが発した音声(言語)を解析し、解析結果に基づいてユーザに対する応答を行う計算機システムに関する。
近年、施設に設置されたロボット等の対話装置を活用した技術が注目されている。対話装置は、ユーザが発した音声の情報(音声信号)を取得し、音声信号を解析することによってユーザの発話意図を特定する。また、対話装置は、発話意図に応じてユーザに対するコミュニケーションを行い、又は、ユーザに対してサービスを提供する。
サービスの提供又はコミュニケーションを適切に行うためには、ユーザの発話意図を正確に特定する必要がある。ユーザの発話意図を理解する方法として、例えば、特許文献1及び特許文献2に記載の技術が知られている。
特許文献1には、「音声処理装置は、音声信号を取得する音声入力部と、音声入力部によって取得された音声信号に対して音声認識を行う音声認識部と、音声認識部によって認識された認識結果に基づいて、利用者の意図を理解する意図理解部と、意図理解部によって理解された理解結果に基づいて利用者に対して質問を行う質問部と、を備え、質問部は、理解結果と所定の優先度に応じて利用者に対する質問内容を変更する。」ことが記載されている。
特許文献2には、「解析可能な単位の自然言語文の一部が入力するごとに、各解析処理部で逐次的かつ並列的に解析処理を実行する逐次解析処理部10と、逐次解析処理部の各解析処理部での解析結果に基づいて、対話応答文などの出力を得る出力部3、4とを備える。逐次解析処理部に用意された各処理部は、自らの処理部での直前又はそれより前の過去の解析結果と、他の処理部での直前又はそれより前の過去の解析結果とを取得し、取得した解析結果を参照しながら先読みをしつつ解析結果を得る。」ことが記載されている。
特開2017−58545号公報 特開2017−102771号公報
特許文献1及び特許文献2に記載の技術では、ユーザの発話におけるフィラー及び間が考慮されていない。フィラー及び間が含まれる発話が行われた場合、対話装置は発話の区切れを正しく認識できない。すなわち、処理単位の音声信号(文字列)を特定できない。したがって、フィラー及び間を含む発話が行われた場合、従来の対話装置はユーザの発話意図を正確に特定できない。
本発明は、適切なサービスの提供又はコミュニケーションを行うために、フィラー及び間を考慮した言語解析を実現する装置、方法、及びプログラムを提供する。
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、ユーザが発した音声に対応する音声信号を処理する計算機であって、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続される通信インタフェースを備え、前記演算装置は、前記通信インタフェースを介して前記音声信号を受信し、前記受信した音声信号を複数の文字列から構成されるテキストに変換し、前記変換されたテキストを解析することによって、前記ユーザの発話が継続中であることを示す発話継続文字列が前記変換されたテキストに含まれるか否かを判定し、前記発話継続文字列が前記変換されたテキストに含まれると判定された場合、前記記憶装置に前記変換されたテキストを蓄積し、前記発話継続文字列が前記変換されたテキストに含まれないと判定された場合、一つ以上の前記変換されたテキストを用いて出力テキストを生成し、前記出力テキストに基づいて、前記受信した音声信号に対応する音声を発した前記ユーザの発話意図を特定し、前記ユーザの発話に対する応答を行う装置に、前記特定されたユーザの発話意図を示す情報を送信することを特徴とする。
本発明によれば、フィラー及び間を考慮した言語解析を実現できる。したがって、適切にユーザの発話意図を特定し、サービスの提供又はコミュニケーションを行うことが可能となる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
実施例1の計算機システムの構成例を示す図である。 実施例1の計算機のハードウェア構成の一例を示す図である。 実施例1の計算機が保持する発話継続文字列情報のデータ構造の一例を示す図である。 実施例1の計算機が保持する発話継続文字列情報のデータ構造の一例を示す図である。 実施例1の計算機が保持する意図理解情報のデータ構造の一例を示す図である。 実施例1の計算機が保持する回答生成情報のデータ構造の一例を示す図である。 実施例1のテキスト送信判定部が実行する処理の一例を説明するフローチャートである。 実施例1の計算機システムにおける処理の流れの一例を示すシーケンス図である。 実施例1の計算機システムにおける処理の流れの一例を示すシーケンス図である。 実施例2のテキスト送信判定部が実行する処理の一例を説明するフローチャートである。
以下、本発明の実施例を、図面を用いて説明する。ただし、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。
以下に説明する発明の構成において、同一又は類似する構成又は機能には同一の符号を付し、重複する説明は省略する。
本明細書等における「第1」、「第2」、「第3」等の表記は、構成要素を識別するために付するものであり、必ずしも、数又は順序を限定するものではない。
図面等において示す各構成の位置、大きさ、形状、及び範囲等は、発明の理解を容易にするため、実際の位置、大きさ、形状、及び範囲等を表していない場合がある。したがって、本発明では、図面等に開示された位置、大きさ、形状、及び範囲等に限定されない。
図1は、実施例1の計算機システムの構成例を示す図である。
計算機システムは、計算機100、通信装置101、及び対話装置102から構成される。計算機100及び通信装置101は、ネットワーク105を介して互いに接続される。また、通信装置101及び対話装置102は、図示しない無線ネットワークを介して互いに接続される。なお、通信装置101及び対話装置102は、有線ネットワークを介して接続されてもよい。
なお、ネットワーク105は、LAN(Local Area Network)及びWAN(Wide Area Network)等であり、接続方式は無線及び有線のいずれでもよい。
対話装置102は、ユーザ103とコミュニケーションを行う装置である。対話装置102は、例えば、ロボット及びタブレット端末等である。対話装置102は、ユーザ103が発する音声を取得する音声取得装置(図示省略)、ユーザ103に対して音声を出力する音声出力装置(図示省略)、及び通信装置101と通信するためのネットワークインタフェース(図示省略)を有する。
通信装置101は、計算機100及び対話装置102の間の通信を制御する装置である。通信装置101は、例えば、ルータ及びゲートウェイ装置等である。
計算機100は、ユーザ103の発話意図を特定し、発話意図に沿ったコミュニケーションを行うための情報(テキスト)を生成する。計算機100のハードウェア構成は図2を用いて説明する。ここで、テキストは一つ以上の文字列から構成されるデータである。
計算機100は、音声処理部110及び言語処理部111を有する。また、計算機100は、発話継続文字列情報130、意図理解情報131、及び回答生成情報132を保持する。
発話継続文字列情報130は、発話継続文字列を管理するための情報である。ここで、発話継続文字列は、フィラー及び間を含む発話を検知するための文字列である。後述するように、計算機100は、テキスト中の発話継続文字列の有無に基づいて、ユーザ103の発話が継続しているか否かを判定する。発話継続文字列情報130のデータ構造は図3A及び図3Bを用いて説明する。
意図理解情報131は、ユーザ103の発話意図を特定するための情報である。意図理解情報131のデータ構造は図4を用いて説明する。
回答生成情報132は、ユーザ103の発話に対する回答を生成するための情報である。回答生成情報132のデータ構造は図5を用いて説明する。
音声処理部110は、ユーザ103が発した音声に対応する音声信号をテキストに変換し、また、計算機100が生成したテキストを音声信号に変換する。
言語処理部111は、テキストの解析結果に基づいてユーザ103の発話意図を特定し、また、ユーザ103に対する回答を音声として対話装置102から出力するための回答テキストを生成する。言語処理部111は、テキスト受信部120、テキスト送信判定部121、意図理解部122、及び回答生成部123を含む。
テキスト受信部120は、音声処理部110が送信したテキストを受信し、テキスト送信判定部121に受信したテキストを送信する。
テキスト送信判定部121は、テキスト受信部120からテキストを受信した場合、受信したテキストを解析し、発話継続文字列情報130及び解析結果に基づいて意図理解部122へのテキストの送信タイミングを判定する。また、テキスト送信判定部121は、意図理解部122にテキストを送信する場合、意図理解処理が処理する一つのまとまった音声に対応する出力テキストを生成し、当該出力テキストを意図理解部122に送信する。
意図理解部122は、テキスト送信判定部121から受信した出力テキスト及び意図理解情報131に基づいて、ユーザ103の発話意図を特定するための意図理解処理を実行する。意図理解部122は、処理結果として、ユーザ103の発話意図を示す意図情報(図4参照)を回答生成部123に送信する。
回答生成部123は、意図理解部122から送信された意図情報に基づいて回答生成情報132を参照し、対話装置102が出力する回答の回答テキストを生成する。
本実施例の計算機システムは、ユーザ103の発話に対する応答として、回答(音声)を出力する。これによって、ユーザ103と対話装置102との間でコミュニケーションが行われる。なお、ユーザ103の発話に対する応答はこれに限定されず、映像及び音楽等の再生、商品の提供、並びに行動の補助等、様々なものが考えられる。
なお、複数の計算機100に各機能部を配置してもよい。例えば、音声処理部110、テキスト受信部120、テキスト送信判定部121、意図理解部122を有する第1計算機と、回答生成部123を有する第2計算機とから構成される計算機システムでもよい。また、計算機100が有する情報は、複数の計算機がアクセス可能なストレージシステムに格納してよい。
なお、計算機100が有する各機能部は、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。
図2は、実施例1の計算機100のハードウェア構成の一例を示す図である。
計算機100は、プロセッサ200、メモリ201、及びネットワークインタフェース202を有する。各ハードウェア構成は、内部バスを介して互いに接続される。なお、計算機100は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等の記憶装置を有してもよい。また、計算機100は、キーボード、マウス、及びタッチパネル等の入力装置、並びに、ディスプレイ等の出力装置を有してもよい。
プロセッサ200は、演算装置であり、メモリ201に格納されるプログラムを実行する。プロセッサ200がプログラムにしたがって処理を実行することによって、特定の機能を実現する機能部(モジュール)として動作する。以下の説明では、機能部を主語に処理を説明する場合、プロセッサ200が当該機能部を実現するプログラムを実行していることを示す。
メモリ201は、記憶装置であり、プロセッサ200が実行するプログラム及びプログラムが使用する情報を格納する。本実施例のメモリ201は、音声処理部110及び言語処理部111を実現するプログラムを格納する。また、メモリ201は、発話継続文字列情報130、意図理解情報131、及び回答生成情報132を格納する。また、メモリ201は、プログラムが使用するワークエリアと、テキストを蓄積するためのバッファを含む。
ネットワークインタフェース202は、ネットワークを介して外部装置と接続するためのインタフェースである。
図3A及び図3Bは、実施例1の計算機100が保持する発話継続文字列情報130のデータ構造の一例を示す図である。
本実施例では、言語の種別毎に発話継続文字列情報130が存在する。図3Aは日本語の発話継続文字列情報130−1を示し、図3Bは英語の発話継続文字列情報130−2を示す。
発話継続文字列情報130は、発話継続文字列301及び位置302から構成されるエントリを一つ以上含む。
発話継続文字列301は、発話継続文字列を格納するフィールドである。位置302は、ユーザが発した音声の中で発話継続文字列に対応する音声が出現する位置を格納するフィールドである。本実施例の位置302には、音声信号が変換されたテキストにおける発話継続文字列の位置(検知範囲)が格納される。なお、位置302を用いた処理については実施例2で説明する。
本実施例では、発話継続文字列情報130は予め設定されているものとする。発話継続文字列情報130は、管理者等が手動で設定してもよいし、ユーザ103及び対話装置102の会話の履歴を用いた機械学習を実行することによって生成してもよい。
図4は、実施例1の計算機100が保持する意図理解情報131のデータ構造の一例を示す図である。
意図理解情報131は、発話内容401及び意図402から構成されるエントリを一つ以上含む。
発話内容401は、発話内容を示すテキストが格納されるフィールドである。意図402は、発話内容401に対応する発話を行ったユーザ103の発話意図を示す情報を格納するフィールドである。以下の説明では、意図402に格納される値を意図情報と記載する。
本実施例では、意図理解情報131は予め設定されているものとする。意図理解情報131は、管理者等が手動で設定する。
図5は、実施例1の計算機100が保持する回答生成情報132のデータ構造の一例を示す図である。
回答生成情報132は、意図501及び回答内容502から構成されるエントリを一つ以上含む。
意図501は、意図402と同一のフィールドである。回答内容502は、対話装置102が音声として出力する回答のテキスト(回答テキスト)を格納するフィールドである。なお、一つの発話意図に対して、複数の回答テキストが対応づけられていてもよい。この場合、ランダムに回答テキストを選択する方法、又は、ユーザ103の属性等に基づいて回答テキストを選択する方法等が考えられる。
図6は、実施例1のテキスト送信判定部121が実行する処理の一例を説明するフローチャートである。
テキスト送信判定部121は、テキスト受信部120からテキストを受信する(ステップS101)。受信したテキストは、ワークエリアに一時的に格納される。
次に、テキスト送信判定部121は、テキストに対して形態素解析を実行する(ステップS102)。形態素解析は公知の技術を用いればよいため詳細な説明を省略する。
次に、テキスト送信判定部121は、形態素解析の結果及び発話継続文字列情報130に基づいて、ユーザ103が発した音声に対応するテキストの末尾に発話継続文字列が存在するか否かを判定する(ステップS103)。
具体的には、テキスト送信判定部121は、発話継続文字列情報130の各エントリの発話継続文字列301と、テキストの末尾に出現する文字列とを比較し、発話継続文字列301に一致する文字列がテキストの末尾に存在するか否かを判定する。
テキストの末尾に発話継続文字列が存在しないと判定された場合、テキスト送信判定部121は、発話の終了と判定する。テキスト送信判定部121は、メモリ201(ワークエリア及びバッファ)に格納されるテキストを用いて出力テキストを生成し、意図理解部122に出力テキストを送信する(ステップS108)。その後、テキスト送信判定部121は、処理を終了する。
具体的には、テキスト送信判定部121は、ワークエリア及びバッファに格納される各テキストから発話継続文字列を削除し、時系列順にテキストを結合することによって出力テキストを生成する。出力テキストが生成された後、メモリ201に格納されるテキストは削除される。なお、テキスト送信判定部121は、出力テキストの生成時にテキストを削除してもよいし、一連の処理が完了した後にテキストを削除してもよい。
なお、バッファにテキストが格納されていない場合、テキスト送信判定部121は、ワークエリアに格納されるテキストを出力テキストとして生成する。
テキストの末尾に発話継続文字列が存在すると判定された場合、テキスト送信判定部121は、発話が継続中であると判定し、バッファに受信したテキストを格納する(ステップS104)。すなわち、意味理解処理が実行される前のテキストがメモリ201に蓄積される。
次に、テキスト送信判定部121は、タイマが起動中であるか否かを判定する(ステップS105)。本実施例のタイマは、意図理解部122へのテキストの出力タイミングを調整するための待ち時間を計測する。
タイマが起動中でないと判定された場合、テキスト送信判定部121は、タイマを起動し(ステップS107)、その後、ステップS101に戻る。この場合、テキスト送信判定部121は、テキストを受信するまで待ち状態に移行する。
タイマが起動中であると判定された場合、テキスト送信判定部121は、タイマが計測した待ち時間が閾値より大きいか否かを判定する(ステップS106)。
待ち時間が閾値以下であると判定された場合、テキスト送信判定部121は、計測時間を初期化し、待ち時間の計測を継続する。その後、テキスト送信判定部121は、ステップS101に戻る。この場合、テキスト送信判定部121は、次のテキストを受信するまで待ち状態に移行する。
待ち時間が閾値より大きいと判定された場合、テキスト送信判定部121は、発話の終了と判定する。さらに、テキスト送信判定部121は、メモリ201(ワークエリア及びバッファ)に格納されるテキストを用いて出力テキストを生成し、意図理解部122に出力テキストを送信する(ステップS108)。このとき、テキスト送信判定部121は、タイマを停止する。その後、テキスト送信判定部121は、処理を終了する。
次に、計算機システムにおける処理の流れについて説明する。図7A及び図7Bは、実施例1の計算機システムにおける処理の流れの一例を示すシーケンス図である。図7Aは、発話継続文字列が含まれる発話が行われた場合の処理の流れを示す。図7Bは、発話継続文字列が含まれない発話が行われた場合の処理の流れを示す。
まず、図7Aに示す処理の流れについて説明する。
対話装置102は、ユーザ103が発した音声を取得し、当該音声の音声信号を生成する。また、対話装置102は、通信装置101と通信を行い、ネットワーク105を介して接続される計算機100に音声信号を送信する(ステップS201)。
計算機100の音声処理部110は、対話装置102から送信された音声信号をテキストに変換し、テキストをテキスト受信部120に送信する(ステップS202)。当該テキストは、テキスト受信部120からテキスト送信判定部121に送信される。なお、テキストの末尾には発話継続文字列が存在するものとする。
テキスト送信判定部121は、テキストを受信した場合、図6に示す処理を実行する。テキストの末尾には発話継続文字列が存在するため、テキスト送信判定部121は、受信したテキストをメモリ201に蓄積する(ステップS203)。すなわち、バッファにテキストが格納される。また、テキスト送信判定部121は、タイマが起動していないため、タイマを起動する(ステップS204)。
対話装置102は、待ち時間が閾値より大きくなった後、発話継続文字列が末尾に存在するテキストに対応する新たな音声をユーザ103から取得し、当該音声の音声信号を生成する。対話装置102は、音声信号を計算機100に送信する(ステップS205)。
音声処理部110は、受信した音声信号をテキストに変換し、テキスト受信部120を介して、テキスト送信判定部121にテキストを送信する(ステップS206)。
テキスト送信判定部121は、テキストの末尾に発話文字列が存在するため、受信したテキストをメモリ201に蓄積する(ステップS207)。この時点では、タイマが起動中であり、かつ、待ち時間が閾値より大きいため、テキスト送信判定部121は、バッファに格納される二つのテキストを用いて出力テキストを生成し、意図理解部122に当該出力テキストを送信する(ステップS208)。
なお、テキストの末尾に発話文字列が存在しない場合、テキスト送信判定部121は、ワークエリア及びバッファの各々に格納されるテキストを用いて出力テキストを生成する。
意図理解部122は、出力テキストを受信した場合、意図理解処理を実行する(ステップS209)。
意図理解処理では、意図理解部122は、意図理解情報131の発話内容401が出力テキストと一致するエントリを検索する。意図理解部122は、検索されたエントリの意図402に格納される値を処理結果として取得する。このとき、意図理解部122は、類似辞書等の意図理解情報131以外の情報を用いてもよい。
意図理解部122は、回答生成部123に意図情報を送信する(ステップS210)。
回答生成部123は、意図情報を受信した場合、回答生成処理を実行する(ステップS211)。
回答生成処理では、回答生成部123は、回答生成情報132を参照し、意図501が意図情報に一致するエントリを検索する。回答生成部123は、検索されたエントリの回答内容502に格納される回答テキストを取得する。
回答生成部123は、音声処理部110に回答テキストを送信する(ステップS212)。
音声処理部110は、回答テキストを音声信号に変換し、ネットワーク105を介して対話装置102に音声信号を送信する(ステップS213)。
図7Aに示すように、計算機100は、フィラー及び間を含む発話を検知するための発話継続文字列がテキストの末尾に存在する場合、発話の継続中であると判定し、テキストをメモリ201(バッファ)に蓄積する。計算機100は、発話の終了を検知した場合、メモリ201(ワークエリア及びバッファ)に格納される一つ以上のテキストを用いて、意図理解処理の処理単位となる出力テキストを生成する。
このように、計算機100は、フィラー及び間を考慮して、意図理解処理の処理単位となる出力テキストを生成することによって、ユーザ103の発話意図を正確に特定できる。したがって、計算機100は、ユーザ103の発話意図に沿った回答を生成できる。
次に、図7Bに示す処理の流れについて説明する。
対話装置102は、ユーザ103が発した音声を取得し、当該音声の音声信号を生成する。また、対話装置102は、通信装置101と通信を行い、ネットワーク105を介して接続される計算機100に音声信号を送信する(ステップS301)。
計算機100の音声処理部110は、対話装置102から送信された音声信号をテキストに変換し、テキストをテキスト受信部120に送信する(ステップS302)。当該テキストは、テキスト受信部120からテキスト送信判定部121に送信される。なお、テキストの末尾には発話継続文字列は存在しないものとする。
テキスト送信判定部121は、テキストを受信した場合、図6に示す処理を実行する。テキストの末尾には発話継続文字列が存在しないため、テキスト送信判定部121は、ワークエリアに格納されるテキストを出力テキストとして生成し、意図理解部122に当該出力テキストを送信する(ステップS303)。
意図理解部122は、出力テキストを受信した場合、意図理解処理を実行する(ステップS304)。意図理解部122は、回答生成部123に意図情報を送信する(ステップS305)。
回答生成部123は、意図情報を受信した場合、回答生成処理を実行する(ステップS306)。回答生成部123は、音声処理部110に回答テキストを送信する(ステップS307)。
音声処理部110は、回答テキストを音声信号に変換し、ネットワーク105を介して対話装置102に音声信号を送信する(ステップS308)。
図7Bに示すように、計算機100は、発話継続文字列がテキストの末尾に存在しない場合、従来技術と同様の処理手順にしたがって処理を実行する。
本実施例では、テキストを蓄積する記憶領域としてバッファを設けているが、ワークエリアに複数のテキストを格納してもよい。この場合、バッファを設けなくてもよい。
実施例1によれば、計算機100は、フィラー及び間が含まれる発話が行われた場合であっても、意図理解処理の処理単位となる一つのまとまった音声に対応する出力テキストを生成できる。計算機100は、出力テキストを入力とする意図理解処理を実行することによって、ユーザ103の発話意図を正しく特定できる。したがって、対話装置102は、ユーザ103の発話意図に沿った適切な回答(音声)を出力することができる。
実施例2では、テキスト送信判定部121が実行する処理が一部異なる。以下実施例1との差異を中心に実施例2について説明する。
実施例2の計算機システムの構成は、実施例1の計算機システムの構成と同一である。実施例2の計算機100のハードウェア構成及びソフトウェア構成は、実施例1の計算機100のハードウェア構成及びソフトウェア構成と同一である。また、実施例2の計算機100が保持する情報のデータ構造は、実施例1の計算機100が保持する情報のデータ構造と同一である。
図8は、実施例2のテキスト送信判定部121が実行する処理の一例を説明するフローチャートである。
ステップS101及びステップS102の処理は、実施例1と同一の処理である。
ステップS102の処理が実行された後、テキスト送信判定部121は、テキストに発話継続文字列が含まれるか否かを判定する(ステップS151)。
具体的には、テキスト送信判定部121は、形態素解析の結果及び発話継続文字列情報130の発話継続文字列301に基づいて、テキストに含まれる発話継続文字列を検索する。
テキストに発話継続文字列が含まれないと判定された場合、テキスト送信判定部121は、メモリ201(ワークエリア及びバッファ)に格納されるテキストを用いて出力テキストを生成し、意図理解部122に出力テキストを送信する(ステップS108)。その後、テキスト送信判定部121は、処理を終了する。
テキストに発話継続文字列が含まれると判定された場合、テキスト送信判定部121は、発話継続文字列が検知範囲に存在するか否かを判定する(ステップS152)。
具体的には、テキスト送信判定部121は、テキストに含まれる発話継続文字列の位置を特定する。テキスト送信判定部121は、ステップS103において検索された発話継続文字列に対応するエントリの位置302の値を読み出す。テキスト送信判定部121は、テキストにおける発話継続文字列の位置が、エントリの位置302に設定された検知範囲に存在するか否かを判定する。
発話継続文字列が検知範囲に存在しないと判定された場合、テキスト送信判定部121は、メモリ201(ワークエリア及びバッファ)に格納されるテキストを用いて出力テキストを生成し、意図理解部122に出力テキストを送信する(ステップS108)。その後、テキスト送信判定部121は、処理を終了する。
発話継続文字列が検知範囲に存在すると判定された場合、テキスト送信判定部121は、ステップS104に進む。ステップS104からステップS108の処理は実施例1と同一の処理である。
実施例2の計算機システムの処理の流れは実施例1の計算機システムの処理の流れと同一である。
実施例2によれば、発話継続文字列及び発話継続文字列の出現位置に基づいて、テキストの出力タイミングを調整することによって、ユーザ103の発話意図をより正確に特定できる。また、言語の種別に応じて判定基準を調整できる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
100 計算機
101 通信装置
102 対話装置
103 ユーザ
105 ネットワーク
110 音声処理部
111 言語処理部
120 テキスト受信部
121 テキスト送信判定部
122 意図理解部
123 回答生成部
130 発話継続文字列情報
131 意図理解情報
132 回答生成情報
200 プロセッサ
201 メモリ
202 ネットワークインタフェース

Claims (15)

  1. ユーザが発した音声に対応する音声信号を処理する計算機であって、
    演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続される通信インタフェースを備え、
    前記演算装置は、
    前記通信インタフェースを介して前記音声信号を受信し、
    前記受信した音声信号を複数の文字列から構成されるテキストに変換し、
    前記変換されたテキストを解析することによって、前記ユーザの発話が継続中であることを示す発話継続文字列が前記変換されたテキストに含まれるか否かを判定し、
    前記発話継続文字列が前記変換されたテキストに含まれると判定された場合、前記記憶装置に前記変換されたテキストを蓄積し、
    前記発話継続文字列が前記変換されたテキストに含まれないと判定された場合、一つ以上の前記変換されたテキストを用いて出力テキストを生成し、
    前記出力テキストに基づいて、前記受信した音声信号に対応する音声を発した前記ユーザの発話意図を特定し、
    前記ユーザの発話に対する応答を行う装置に、前記特定されたユーザの発話意図を示す情報を送信することを特徴とする計算機。
  2. 請求項1に記載の計算機であって、
    前記計算機は、前記発話継続文字列を管理するための発話継続文字列情報を保持し、
    前記演算装置は、
    前記発話継続文字列情報を参照して、前記変換されたテキストの末尾に前記発話継続文字列が存在するか否かを判定し、
    前記変換されたテキストの末尾に前記発話継続文字列が存在すると判定された場合、前記記憶装置に前記変換されたテキストを蓄積することを特徴とする計算機。
  3. 請求項1に記載の計算機であって、
    前記計算機は、前記発話継続文字列を管理するための発話継続文字列情報を保持し、
    前記発話継続文字列情報は、前記発話継続文字列及びテキストにおける前記発話継続文字列の出現位置から構成されるエントリを複数含み、
    前記演算装置は、
    前記発話継続文字列情報を参照して、前記変換されたテキストに前記発話継続文字列が含まれるか否かを判定し、
    前記変換されたテキストに前記発話継続文字列が含まれると判定された場合、前記変換されたテキストに含まれる前記発話継続文字列の前記変換されたテキスト中の位置が、当該発話継続文字列に対応するエントリに設定される出現位置に一致するか否かを判定し、
    前記変換されたテキストに含まれる前記発話継続文字列の前記変換されたテキスト中の位置が、当該発話継続文字列に対応するエントリに設定される出現位置に一致すると判定された場合、前記記憶装置に前記変換されたテキストを蓄積することを特徴とする計算機。
  4. 請求項1に記載の計算機であって、
    前記演算装置は、
    前記記憶装置に前記変換されたテキストを蓄積した後、待ち時間を計測するタイマが起動中か否かを判定し、
    前記タイマが起動中でないと判定された場合、前記タイマを起動し、
    前記タイマが起動中であると判定された場合、前記待ち時間が閾値より大きいか否かを判定し、
    前記待ち時間が閾値以下であると判定された場合、前記待ち時間を初期化して、前記待ち時間の計測を継続し、
    前記待ち時間が閾値より大きいと判定された場合、前記出力テキストを生成することを特徴とする計算機。
  5. 請求項1に記載の計算機であって、
    前記演算装置は、
    前記記憶装置に複数の前記変換されたテキストが格納される場合、前記複数の変換されたテキストから前記発話継続文字列を削除し、結合することによって前記出力テキストを生成し、
    前記記憶装置に一つの前記変換されたテキストが格納される場合、前記一つの変換されたテキストを前記出力テキストとして生成することを特徴とする計算機。
  6. ユーザが発した音声に対応する音声信号を処理する計算機が実行する言語解析方法であって、
    前記計算機は、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続される通信インタフェースを備え、
    前記言語解析方法は、
    前記演算装置が、前記通信インタフェースを介して前記音声信号を受信し、前記受信した音声信号を複数の文字列から構成されるテキストに変換する第1のステップと、
    前記演算装置が、前記変換されたテキストを解析することによって、前記ユーザの発話が継続中であることを示す発話継続文字列が前記変換されたテキストに含まれるか否かを判定する第2のステップと、
    前記演算装置が、前記発話継続文字列が前記変換されたテキストに含まれると判定した場合、前記記憶装置に前記変換されたテキストを蓄積する第3のステップと、
    前記演算装置が、前記発話継続文字列が前記変換されたテキストに含まれないと判定した場合、一つ以上の前記変換されたテキストを用いて出力テキストを生成する第4のステップと、
    前記演算装置が、前記出力テキストに基づいて、前記受信した音声信号に対応する音声を発した前記ユーザの発話意図を特定する第5のステップと、
    前記演算装置が、前記ユーザの発話に対する応答を行う装置に、前記特定されたユーザの発話意図を示す情報を送信する第6のステップと、を含むことを特徴とする言語解析方法。
  7. 請求項6に記載の言語解析方法であって、
    前記計算機は、前記発話継続文字列を管理するための発話継続文字列情報を保持し、
    前記第2のステップは、前記演算装置が、前記発話継続文字列情報を参照して、前記変換されたテキストの末尾に前記発話継続文字列が存在するか否かを判定するステップを含み、
    前記第3のステップでは、前記演算装置が、前記変換されたテキストの末尾に前記発話継続文字列が存在すると判定した場合、前記記憶装置に前記変換されたテキストを蓄積することを特徴とする言語解析方法。
  8. 請求項6に記載の言語解析方法であって、
    前記計算機は、前記発話継続文字列を管理するための発話継続文字列情報を保持し、
    前記発話継続文字列情報は、前記発話継続文字列及びテキストにおける前記発話継続文字列の出現位置から構成されるエントリを複数含み、
    前記第2のステップは、
    前記演算装置が、前記発話継続文字列情報を参照して、前記変換されたテキストに前記発話継続文字列が含まれるか否かを判定するステップと、
    前記演算装置が、前記変換されたテキストに前記発話継続文字列が含まれると判定した場合、前記変換されたテキストに含まれる前記発話継続文字列の前記変換されたテキスト中の位置が、当該発話継続文字列に対応するエントリに設定される出現位置に一致するか否かを判定するステップと、を含み、
    前記第3のステップでは、前記演算装置が、前記変換されたテキストに含まれる前記発話継続文字列の前記変換されたテキスト中の位置が、当該発話継続文字列に対応するエントリに設定される出現位置に一致すると判定した場合、前記記憶装置に前記変換されたテキストを蓄積することを特徴とする言語解析方法。
  9. 請求項6に記載の言語解析方法であって、
    前記第3のステップは、
    前記演算装置が、前記記憶装置に前記変換されたテキストを蓄積した後に、待ち時間を計測するタイマが起動中か否かを判定するステップと、
    前記タイマが起動中でないと判定された場合、前記演算装置が、前記タイマを起動するステップと、
    前記タイマが起動中であると判定された場合、前記演算装置が、前記待ち時間が閾値より大きいか否かを判定するステップと、
    前記待ち時間が閾値以下であると判定された場合、前記演算装置が、前記待ち時間を初期化して、前記待ち時間の計測を継続するステップと、
    前記待ち時間が閾値より大きいと判定された場合、前記演算装置が、前記出力テキストを生成するステップと、を含むことを特徴とする言語解析方法。
  10. 請求項6に記載の言語解析方法であって、
    前記第4のステップは、
    前記記憶装置に複数の前記変換されたテキストが格納される場合、前記演算装置が、前記複数の変換されたテキストから前記発話継続文字列を削除し、結合することによって前記出力テキストを生成するステップと、
    前記記憶装置に一つの前記変換されたテキストが格納される場合、前記演算装置が、前記一つの変換されたテキストを前記出力テキストとして生成するステップと、を含むことを特徴とする言語解析方法。
  11. ユーザが発した音声に対応する音声信号を処理する計算機に実行させるためのプログラムであって、
    前記計算機は、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続される通信インタフェースを備え、
    前記プログラムは、
    前記通信インタフェースを介して前記音声信号を受信し、前記受信した音声信号を複数の文字列から構成されるテキストに変換する第1の手順と、
    前記変換されたテキストを解析することによって、前記ユーザの発話が継続中であることを示す発話継続文字列が前記変換されたテキストに含まれるか否かを判定する第2の手順と、
    前記発話継続文字列が前記変換されたテキストに含まれると判定された場合、前記記憶装置に前記変換されたテキストを蓄積する第3の手順と、
    前記発話継続文字列が前記変換されたテキストに含まれないと判定された場合、一つ以上の前記変換されたテキストを用いて出力テキストを生成する第4の手順と、
    前記出力テキストに基づいて、前記受信した音声信号に対応する音声を発した前記ユーザの発話意図を特定する第5の手順と、
    前記ユーザの発話に対する応答を行う装置に、前記特定されたユーザの発話意図を示す情報を送信する第6の手順と、を前記計算機に実行させるためのプログラム。
  12. 請求項11に記載のプログラムであって、
    前記計算機は、前記発話継続文字列を管理するための発話継続文字列情報を保持し、
    前記第2の手順は、前記発話継続文字列情報を参照して、前記変換されたテキストの末尾に前記発話継続文字列が存在するか否かを判定する手順を含み、
    前記第3の手順では、前記変換されたテキストの末尾に前記発話継続文字列が存在すると判定された場合、前記記憶装置に前記変換されたテキストを蓄積させることを特徴とするプログラム。
  13. 請求項11に記載のプログラムであって、
    前記計算機は、前記発話継続文字列を管理するための発話継続文字列情報を保持し、
    前記発話継続文字列情報は、前記発話継続文字列及びテキストにおける前記発話継続文字列の出現位置から構成されるエントリを複数含み、
    前記第2の手順は、
    前記発話継続文字列情報を参照して、前記変換されたテキストに前記発話継続文字列が含まれるか否かを判定する手順と、
    前記変換されたテキストに前記発話継続文字列が含まれると判定された場合、前記テキストに含まれる前記発話継続文字列の前記変換されたテキスト中の位置が、当該発話継続文字列に対応するエントリに設定される出現位置に一致するか否かを判定する手順と、を含み、
    前記第3の手順では、前記変換されたテキストに含まれる前記発話継続文字列の前記変換されたテキスト中の位置が、当該発話継続文字列に対応するエントリに設定される出現位置に一致すると判定された場合、前記記憶装置に前記変換されたテキストを蓄積することを特徴とするプログラム。
  14. 請求項11に記載のプログラムであって、
    前記第3の手順は、
    前記記憶装置に前記変換されたテキストを蓄積した後に、待ち時間を計測するタイマが起動中か否かを判定する手順と、
    前記タイマが起動中でないと判定された場合、前記タイマを起動する手順と、
    前記タイマが起動中であると判定された場合、前記待ち時間が閾値より大きいか否かを判定する手順と、
    前記待ち時間が閾値以下であると判定された場合、前記待ち時間を初期化して、前記待ち時間の計測を継続する手順と、
    前記待ち時間が閾値より大きいと判定された場合、前記出力テキストを生成する手順と、を含むことを特徴とするプログラム。
  15. 請求項11に記載のプログラムであって、
    前記第4の手順は、
    前記記憶装置に複数の前記変換されたテキストが格納される場合、前記複数の変換されたテキストから前記発話継続文字列を削除し、結合することによって前記出力テキストを生成する手順と、
    前記記憶装置に一つの前記変換されたテキストが格納される場合、前記一つの変換されたテキストを前記出力テキストとして生成する手順と、を含むことを特徴とするプログラム。
JP2017243880A 2017-12-20 2017-12-20 計算機、言語解析方法、及びプログラム Active JP6867939B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017243880A JP6867939B2 (ja) 2017-12-20 2017-12-20 計算機、言語解析方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017243880A JP6867939B2 (ja) 2017-12-20 2017-12-20 計算機、言語解析方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2019109424A true JP2019109424A (ja) 2019-07-04
JP6867939B2 JP6867939B2 (ja) 2021-05-12

Family

ID=67179683

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017243880A Active JP6867939B2 (ja) 2017-12-20 2017-12-20 計算機、言語解析方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6867939B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021153102A1 (ja) * 2020-01-27 2021-08-05 ソニーグループ株式会社 情報処理装置、情報処理システム、情報処理方法および情報処理プログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001272990A (ja) * 2000-03-28 2001-10-05 Fuji Xerox Co Ltd 対話記録編集装置
JP2002032370A (ja) * 2000-07-18 2002-01-31 Fujitsu Ltd 情報処理装置
JP2015069037A (ja) * 2013-09-30 2015-04-13 ヤマハ株式会社 音声合成装置およびプログラム
JP2016057986A (ja) * 2014-09-11 2016-04-21 株式会社東芝 音声翻訳装置、方法およびプログラム
JP2017058545A (ja) * 2015-09-17 2017-03-23 本田技研工業株式会社 音声処理装置および音声処理方法
WO2017191713A1 (ja) * 2016-05-02 2017-11-09 ソニー株式会社 制御装置、制御方法及びコンピュータプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001272990A (ja) * 2000-03-28 2001-10-05 Fuji Xerox Co Ltd 対話記録編集装置
JP2002032370A (ja) * 2000-07-18 2002-01-31 Fujitsu Ltd 情報処理装置
JP2015069037A (ja) * 2013-09-30 2015-04-13 ヤマハ株式会社 音声合成装置およびプログラム
JP2016057986A (ja) * 2014-09-11 2016-04-21 株式会社東芝 音声翻訳装置、方法およびプログラム
JP2017058545A (ja) * 2015-09-17 2017-03-23 本田技研工業株式会社 音声処理装置および音声処理方法
WO2017191713A1 (ja) * 2016-05-02 2017-11-09 ソニー株式会社 制御装置、制御方法及びコンピュータプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021153102A1 (ja) * 2020-01-27 2021-08-05 ソニーグループ株式会社 情報処理装置、情報処理システム、情報処理方法および情報処理プログラム

Also Published As

Publication number Publication date
JP6867939B2 (ja) 2021-05-12

Similar Documents

Publication Publication Date Title
US9805718B2 (en) Clarifying natural language input using targeted questions
US10811005B2 (en) Adapting voice input processing based on voice input characteristics
US8682640B2 (en) Self-configuring language translation device
EP3405912A1 (en) Analyzing textual data
US8509396B2 (en) Automatic creation of complex conversational natural language call routing system for call centers
JP6019604B2 (ja) 音声認識装置、音声認識方法、及びプログラム
JP7230806B2 (ja) 情報処理装置、及び情報処理方法
CN113614825A (zh) 用于自动语音识别的字词网格扩增
US11120802B2 (en) Diarization driven by the ASR based segmentation
US10565982B2 (en) Training data optimization in a service computing system for voice enablement of applications
TW201606750A (zh) 使用外國字文法的語音辨識
US10553203B2 (en) Training data optimization for voice enablement of applications
JP6625772B2 (ja) 検索方法及びそれを用いた電子機器
CN110136715A (zh) 语音识别方法和装置
CN105390137A (zh) 响应生成方法、响应生成装置和响应生成程序
JPWO2011033834A1 (ja) 音声翻訳システム、音声翻訳方法および記録媒体
US20200320976A1 (en) Information processing apparatus, information processing method, and program
KR102536944B1 (ko) 음성 신호 처리 방법 및 장치
US10468031B2 (en) Diarization driven by meta-information identified in discussion content
KR20190074508A (ko) 챗봇을 위한 대화 모델의 데이터 크라우드소싱 방법
JP6867939B2 (ja) 計算機、言語解析方法、及びプログラム
JP4881903B2 (ja) 自然言語対話エージェントのためのスクリプト作成支援方法及びプログラム
JP2014102280A (ja) 機能実行指示システム、機能実行指示方法及び機能実行指示プログラム
JP6260138B2 (ja) コミュニケーション処理装置、コミュニケーション処理方法、及び、コミュニケーション処理プログラム
JP2003162524A (ja) 言語処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200326

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210224

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: 20210330

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210409

R150 Certificate of patent or registration of utility model

Ref document number: 6867939

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150