(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-10
(45)【発行日】2023-11-20
(54)【発明の名称】情報処理装置、方法およびプログラム
(51)【国際特許分類】
G06F 3/16 20060101AFI20231113BHJP
G10L 15/00 20130101ALI20231113BHJP
G10L 15/22 20060101ALI20231113BHJP
G06F 3/01 20060101ALI20231113BHJP
【FI】
G06F3/16 650
G10L15/00 200B
G10L15/22 200V
G06F3/16 620
G06F3/01 510
(21)【出願番号】P 2021117888
(22)【出願日】2021-07-16
【審査請求日】2023-03-15
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】渡辺 奈夕子
(72)【発明者】
【氏名】中洲 俊信
【審査官】星野 裕
(56)【参考文献】
【文献】特開2020-067788(JP,A)
【文献】特開2018-072508(JP,A)
【文献】特開平08-190399(JP,A)
【文献】特表2015-530687(JP,A)
【文献】特開2017-084146(JP,A)
【文献】特表2005-500591(JP,A)
【文献】米国特許出願公開第2004/0044523(US,A1)
【文献】特開2001-101162(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/16
G10L 15/00
G10L 15/22
G06F 3/01
(57)【特許請求の範囲】
【請求項1】
複数の項目を含む記録用データシートに関し、前記複数の項目から選択された入力対象項目に関する入力順序を基準として、指定される可能性のある1以上の項目に関するテンプレートを生成する生成部と、
ユーザの発話を音声認識し、音声認識結果を生成する音声認識部と、
前記テンプレートおよび前記音声認識結果に基づき、前記複数の項目のうちの前記ユーザの発話により指定された1以上の項目に関する入力対象範囲を決定する決定部と、
を具備する情報処理装置。
【請求項2】
前記音声認識結果が前記テンプレートと一致する部分を含む場合、前記一致する部分に関する発話が、前記入力対象範囲を指定するための範囲指定発話であり、かつ前記音声認識結果の前記一致する部分よりも後の発話が、前記入力対象範囲に入力される値を示す値発話であると判定する判定部をさらに具備する、請求項1に記載の情報処理装置。
【請求項3】
前記判定部は、前記音声認識結果が前記テンプレートと一致する部分を含まない場合、前記音声認識結果に関する発話が前記値発話であると判定する、請求項2に記載の情報処理装置。
【請求項4】
前記生成部は、前記テンプレートに基づき、特定の文法による発話を音声認識するための文法認識辞書を生成し、
前記音声認識部は、前記文法認識辞書に一致した前記ユーザの発話を前記音声認識結果として生成する、請求項1から請求項3のいずれか1項に記載の情報処理装置。
【請求項5】
前記生成部は、前記テンプレートに基づき、特定のキーワードを検出するためのキーワード認識辞書と、特定の文法による発話を音声認識するための文法認識辞書とを生成し、
前記音声認識部は、前記キーワード認識辞書に一致した前記ユーザの第1発話を第1音声認識結果として生成し、前記文法認識辞書に一致した、前記第1発話よりも後の第2発話を第2音声認識結果として生成し、
前記第1音声認識結果を前記入力対象範囲を指定するための範囲指定発話として判定し、前記第2音声認識結果を前記入力対象範囲に入力される値を示す値発話として判定する判定部をさらに具備する、請求項1に記載の情報処理装置。
【請求項6】
前記ユーザの発話を音声データとしてバッファリングするバッファ部と、判定部とをさらに具備し、
前記生成部は、前記テンプレートに基づき、特定のキーワードを検出するためのキーワード認識辞書と、特定の文法による発話を音声認識するための文法認識辞書とを生成し、
前記音声認識部は、前記キーワード認識辞書に一致した前記ユーザの第1発話を第1音声認識結果として生成し、前記バッファリングされた音声データを用いて、前記第1音声認識結果に対応する音声データ部分から所定期間遡った音声データのうち前記文法認識辞書に一致した第2発話を第2音声認識結果として生成し、
前記判定部は、前記第2音声認識結果を前記入力対象範囲を指定するための範囲指定発話として判定する、請求項1に記載の情報処理装置。
【請求項7】
前記音声認識部は、前記第1音声認識結果に対応する音声データ部分よりも後の音声データにおいて前記文法認識辞書に一致した第3発話を第3音声認識結果として生成し、
前記判定部は、前記第3音声認識結果を前記入力対象範囲に入力される値を示す値発話として判定する、請求項6に記載の情報処理装置。
【請求項8】
前記入力対象範囲は、前記記録用データシート上での入力位置を特定する範囲であり、
前記入力位置に前記値発話に関する値を入力する入力部をさらに具備する、請求項2、請求項3、請求項5または請求項7に記載の情報処理装置。
【請求項9】
前記判定部は、前記値発話が前記入力対象範囲に対する入力のスキップを意図する発話であるか否かを判定する、請求項8に記載の情報処理装置。
【請求項10】
前記入力部は、前記値発話が前記入力のスキップを意図する発話であると判定された場合、前記入力対象範囲に値を入力しない又は所定の記号を入力する、請求項9に記載の情報処理装置。
【請求項11】
前記記録用データシート上で前記入力対象範囲を強調表示する制御部をさらに具備する、請求項1から請求項10のいずれか1項に記載の情報処理装置。
【請求項12】
前記テンプレートは、前記入力対象範囲の終点と、前記入力対象範囲の始点および終点と、前記入力対象範囲に含まれる項目の個数と、前記入力対象範囲に含まれる項目の名称との少なくともいずれか1つを指定する発話に一致する表現である、請求項1から請求項11のいずれか1項に記載の情報処理装置。
【請求項13】
前記入力順序は、項目の名称と、前記項目に対する値を入力する入力位置の識別子と、前記項目のグループ名との少なくとも1つとそれぞれ対応付けられ、
前記テンプレートは、前記入力順序と対応付けられた、前記名称と、前記識別子と、前記グループ名との少なくとも1つを用いて前記入力位置を指し示す、請求項1から請求項12のいずれか1項に記載の情報処理装置。
【請求項14】
複数の項目を含む記録用データシートに関し、前記複数の項目から選択された入力対象項目に関する入力順序を基準として、指定される可能性のある1以上の項目に関するテンプレートを生成し、
ユーザの発話を音声認識し、音声認識結果を生成し、
前記テンプレートおよび前記音声認識結果に基づき、前記複数の項目のうちの前記ユーザの発話により指定された1以上の項目に関する入力対象範囲を決定する、情報処理方法。
【請求項15】
コンピュータを、
複数の項目を含む記録用データシートに関し、前記複数の項目から選択された入力対象項目に関する入力順序を基準として、指定される可能性のある1以上の項目に関するテンプレートを生成する生成手段と、
ユーザの発話を音声認識し、音声認識結果を生成する音声認識手段と、
前記テンプレートおよび前記音声認識結果に基づき、前記複数の項目のうちの前記ユーザの発話により指定された1以上の項目に関する入力対象範囲を決定する決定手段として機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置、方法およびプログラムに関する。
【背景技術】
【0002】
製造現場や保守点検現場においては、測定機器を使った結果の測定値および目視で点検した結果などを、帳票や表などのデータに入力し、作業員同士または顧客との間で共有することがある。帳票や表では各データに入力するべき内容が予め定められており、作業者は作業手順通りに作業を行い、その結果を定められたデータ入力位置に入力する。
【0003】
一般的な帳票ソフトではデータをテキストで入力するが、作業中にテキストを入力するのは時間がかかってしまうため、音声を使ってデータを入力したいというニーズがある。例えば、帳票ソフトとは別のアプリケーションで入力対象項目とその項目に入力する内容を設定することで、発話をした際に選択している項目に値を入力でき、さらには、設定時に次に入力項目を指定しておくことで、連続して項目に値を入力することができる手法がある。しかし、複数範囲にまとめて値を入力したい場合は、全ての組み合わせの範囲を予め発話しうる範囲として設定しなければならず、現実的ではない。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
本開示は、上述の課題を解決するためになされたものであり、音声によるデータ入力の効率性および利便性を向上させることができる情報処理装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本実施形態に係る情報処理装置は、生成部と、音声認識部と、決定部とを含む。生成部は、複数の項目を含む記録用データシートに関し、前記複数の項目から選択された入力対象項目に関する入力順序を基準として、指定される可能性のある1以上の項目に関するテンプレートを生成する。音声認識部は、ユーザの発話を音声認識し、音声認識結果を生成する。決定部は、前記テンプレートおよび前記音声認識結果に基づき、前記複数の項目のうちの前記ユーザの発話により指定された1以上の項目に関する入力対象範囲を決定する。
【図面の簡単な説明】
【0007】
【
図1】第1の実施形態に係る情報処理装置を示すブロック図。
【
図2】本実施形態に係る記録用データシートの一例を示す図。
【
図3】第1の実施形態に係る手順格納部に格納される入力手順リストの一例を示す図。
【
図4】第1の実施形態に係るテンプレート格納部に格納される発話テンプレートの一例を示す図。
【
図5】第1の実施形態に係る情報処理装置の入力処理を示すフローチャート。
【
図6】ステップS505における入力対象範囲の判定処理の詳細を示すフローチャート。
【
図7】第1の実施形態に係る判定辞書の一例を示す図。
【
図8】第1の実施形態に係る判定辞書の別例を示す図。
【
図9】第1の実施形態に係る情報処理装置の入力処理の具体例を示す図。
【
図10】第1の実施形態に係る情報処理装置の入力処理の具体例を示す図。
【
図11】第1の実施形態に係る情報処理装置の入力処理の具体例を示す図。
【
図13】第1の実施形態の変形例に係る入力手順リストが更新される一例を示す図。
【
図14】第1の実施形態の変形例に係る入力手順リストが更新される一例を示す図。
【
図15】発話テンプレートの追加設定を促す一例を示す図。
【
図16】第2の実施形態に係る手順格納部に格納される入力手順リストを示す図。
【
図17】第2の実施形態に係る値辞書の一例を示す図。
【
図18】第2の実施形態に係る第1範囲辞書の一例を示す図。
【
図19】第2の実施形態に係る第2範囲辞書の一例を示す図。
【
図20】第2の実施形態に係る音声認識辞書の一例を示す図。
【
図21】第2の実施形態に係る情報処理装置の入力処理を示すフローチャート。
【
図22】第3の実施形態に係る第1キーワード認識辞書の一例を示す図。
【
図23】第3の実施形態に係る第2キーワード認識辞書の一例を示す図。
【
図24】第3の実施形態に係る文法認識辞書の一例を示す図。
【
図25】第3の実施形態に係る情報処理装置の入力処理を示すフローチャート。
【
図26】第3の実施形態に係る音声認識処理の具体例を示す図。
【
図27】第3の実施形態に係る音声認識処理の具体例を示す図。
【
図28】第4の実施形態に係る音声認識処理を示すブロック図。
【
図29】第4の実施形態に係るキーワード認識辞書の一例を示す図。
【
図30】第4の実施形態に係る第1文法認識辞書の一例を示す図。
【
図31】第4の実施形態に係る第2文法認識辞書の一例を示す図。
【
図32】第4の実施形態に係る音声認識辞書の一例を示す図。
【
図33】第4の実施形態に係る情報処理装置の入力処理を示すフローチャート。
【
図34】第4の実施形態に係る音声認識処理の具体例を示す図。
【
図35】第5の実施形態に係る情報処理装置の動作例を示す図。
【
図36】情報処理装置のハードウェア構成例を示す図。
【発明を実施するための形態】
【0008】
以下、図面を参照しながら本実施形態に係る情報処理装置、方法およびプログラムについて詳細に説明する。なお、以下の実施形態では、同一の参照符号を付した部分は同様の動作をおこなうものとして、重複する説明を適宜省略する。
【0009】
(第1の実施形態)
第1の実施形態では、ユーザの自由発話に基づく音声入力により、帳票データに対して値を入力することを想定する。
【0010】
第1の実施形態に係る情報処理装置について
図1のブロック図を参照して説明する。
第1実施形態に係る情報処理装置10は、手順格納部101と、テンプレート格納部102と、音声認識部103と、音声合成部104と、生成部105と、決定部106と、判定部107と、制御部108と、入力部109とを含む。
【0011】
手順格納部101は、記録用データシートに含まれる複数の項目に対する入力順序に関する入力手順リストを格納する。記録用データシートは、例えば、帳票データシート、検査データシート、実験データシートのように、ある項目に対して値を入力するためのデータシートである。
テンプレート格納部102は、ユーザの発話を検出するためのテンプレートおよび辞書を格納する。
【0012】
音声認識部103は、マイクロフォン(図示せず)などから取得したユーザの発話を音声認識し、音声認識結果を生成する。音声認識処理としては、情報処理装置10に含まれる音声認識部103が音声認識処理エンジンを含み、装置内で音声認識処理が実行されてもよいし、クラウドなどに発話に関する音声データを送信し、音声認識部103がクラウドで音声認識処理された結果を取得してもよい。
音声合成部104は、ガイダンスなどユーザに通知すべき内容の合成音声を生成する。生成された合成音声は、スピーカ(図示せず)等から出力されればよい。
【0013】
生成部105は、入力手順リストを参照し、入力対象項目に関する入力順序を基準として、指定される可能性のある1以上の項目に関するテンプレートを生成する。入力対象項目は、記録用データシートに含まれる複数の項目から選択された処理対象となる項目である。
決定部106は、テンプレートおよび音声認識結果に基づき、複数の項目のうちのユーザの発話により指定された1以上の項目に関する入力対象範囲を決定する。
【0014】
判定部107は、各種条件の判定を行うことに加え、入力対象範囲を指定するための範囲指定発話と、入力対象範囲に入力される値を示す値発話とを判定する。
制御部108は、各種制御を行うことに加え、ディスプレイ(図示せず)に表示される記録用データシート上で入力対象範囲を強調表示する。
入力部109は、各種データ入力を行うことに加え、入力対象範囲に値発話に関する値を入力する。
【0015】
次に、本実施形態で想定する帳票データの一例について
図2を参照して説明する。
本実施形態で想定する記録用データシートは、例えば表計算ソフトウェアのような2次元配列されたマス目に値を入力する形式である。以下では、記録用データシートとして、帳票データ20を例に説明する。
図2の例では、横方向が列番号(A~D)を示し、縦方向が行番号(1~7)を示す。帳票データ20には、検査日、「汚れが無いか」、「キズが無いか」といった試験項目に関する各データ項目21があり、各データ項目21に対してそれぞれ、ユーザが値を入力するための入力位置22がある。データ項目21は、「外観チェック」および「動作チェック」といったグループに分類されてもよい。
【0016】
入力位置22は、列番号および行番号により指定できる。
図2の例では、データ項目21「検査日」に対応する入力位置22は「D2」と表現でき、値は「2021/02/15」である。データ項目21「汚れが無いか」に対応する入力位置22は「D3」と表現でき、値は「異常無し」である。
【0017】
なお、このような2次元配列の表計算ソフトによる帳票データに限らず、入力位置22がランダムに配置されるような自由記述形式であっても、データ項目21に対応する入力位置22がユーザの発話によって一意に特定できる形式であれば、本実施形態に係る情報処理装置10の処理を適用できる。
【0018】
次に、手順格納部101に格納される入力手順リストの一例について
図3を参照して説明する。
図3に示す入力手順リスト30は、ユーザにより値が入力される入力位置の順番を示すリストである。入力手順リスト30は、手順番号、入力位置、ガイダンスおよび入力済みフラグがそれぞれ対応づけられたテーブルである。入力手順リスト30は、
図2に示す帳票データ20と同一データ上に保持されてもよいし、別データとして保持されてもよい。同一データ上に保持するとは、1つのデータファイルに帳票データ20と入力手順リスト30とを保持することを意味する。なお一般的な表計算ソフトウェアであれば、複数のデータシートをまとめて管理できるため、帳票データ20と同一のデータシートに保持されてもよいし、帳票データ20とは別のデータシートに保持されてもよい。
【0019】
手順番号は、帳票データ20の複数のデータ項目21に対する入力の順序を示す。入力位置は、
図2に示す入力位置22を一意に指定する識別子である。例えば、列番号および行番号で入力位置22が指定される場合は、「D2」といった識別子が用いられる。ガイダンスは、データ項目21の名称など、音声合成部104による音声合成処理により生成された合成音声で再生される内容である。入力済みフラグは、入力位置22に値が入力されているか否かを示すフラグである。例えば、値が入力済みであれば「1」、未入力であれば「0(ゼロ)」が割り当てられる。
【0020】
図3の例では、手順番号「1」、入力位置「D2」、ガイダンス「検査日」および入力済みフラグ「1」がそれぞれ対応付けられ、1つのエントリとして入力手順リスト30に格納される。
【0021】
次に、テンプレート格納部102に格納される発話テンプレートの一例について
図4を参照して説明する。
図4に示すテーブルは、ユーザが範囲を指定するときに発話される可能性のあるパターンである発話テンプレートを複数格納する。
【0022】
発話テンプレートとして、例えば「${個数}個まとめて」、「${終点}までまとめて」、「${始点}から${終点}までまとめて」といった例が挙げられる。「${ }」は、任意の発話を対象とすることを意味する。
図4の例では「${個数}」と表現されており、個数に関する発話が入る場合の置換対象部分を示す。例えば「3」「5」といった数値に関する発話を想定する。「${始点}」および「${終点}」は、入力手順リストに基づく指定範囲の始点および終点をそれぞれ示す。例えば、
図3に示す入力手順リスト30の手順番号の番号、入力位置の識別子、ガイダンスの内容などが含まれればよい。具体的には、
図3の入力手順リスト30の手順番号「2」から「4」までの範囲を示す場合は、例えば「2番から4番までまとめて」、「D3からD5までまとめて」、「汚れから印字までまとめて」といった発話に対応できる。なお、始点と終点とを指定する際に入力手順リスト30における同じカテゴリで指定しなくともよい。すなわち、「汚れからD5までまとめて」などのように、始点をガイダンスのカテゴリで、終点を入力位置のカテゴリで指定してもよい。
【0023】
次に、第1の実施形態に係る情報処理装置10の入力処理について
図5のフローチャートを参照して説明する。なお、例えば制御部108により、帳票データへの入力処理の実行前に入力手順リストの入力済みフラグが未入力状態に設定される。
図3の例では、入力手順リスト30の入力済みフラグがゼロに設定される。
【0024】
ステップS501では、決定部106が、処理対象となるデータ項目21である入力対象項目を決定する。例えば、入力手順リストの手順番号に沿って、入力済みフラグがゼロのエントリのうち、手順番号が最も小さい入力位置が入力対象項目として設定されればよい。なお、次の入力対象項目に対する処理、すなわちステップS501の処理が2回目以降の場合は、例えば以下のように判定すればよい。後述する入力対象範囲が1つの入力対象項目である場合、または、入力対象範囲として複数の入力位置が含まれるが入力対象項目を含まない場合、決定部106は、手順番号が現在処理中の入力位置の次の入力位置を、入力対象項目として設定すればよい。一方、入力対象範囲として複数の入力位置を含みかつ入力対象項目も含まれる場合、決定部106は、当該入力対象範囲のうち最後の手順番号よりも大きくかつ未入力の入力位置を入力対象項目として設定すればよい。
【0025】
ステップS502では、制御部108が、入力対象項目の入力位置を強調表示する。例えば入力位置の枠を太線で囲むなどの表示を想定する。
ステップS503では、音声合成部104が、入力位置に関する入力を促すガイダンスを音声合成し、合成音声を再生する。例えば、入力手順リスト30の入力位置に対応するガイダンスの文言が音声合成され、スピーカなどから再生されればよい。
【0026】
ステップS504では、判定部107が、ユーザからの発話を取得した音声認識部103が音声認識結果を生成したか否かを判定する。音声認識結果が生成された場合は、ステップS505に進み、音声認識結果が生成されていない場合は、ステップS504の処理を繰り返す。なお、音声認識部103における音声認識処理において、発話中のフィラーや言い直しなどは、必要に応じて既存の除去処理手法を用いて処理されるものとする。
【0027】
ステップS505では、生成部105、決定部106および判定部107が、音声認識結果に基づいて、入力対象項目に基づく入力対象範囲の判定処理を実行する。判定処理結果として、入力対象範囲と、入力位置へ入力される値に関する発話である値発話とが生成される。入力対象範囲の判定処理の詳細については、
図6を参照して後述する。
【0028】
ステップS506では、制御部108が、ステップS505で判定された入力対象範囲を強調表示する。強調表示の手法としては、ステップS502と同様である。
【0029】
ステップS507では、音声合成部104が、ユーザに入力対象範囲の確認を促す確認メッセージを再生する。確認メッセージは、単に「よろしいですか?」といった定型文でもよいし、ユーザが指定した入力対象範囲を復唱するように、音声合成部104が入力対象範囲を含むメッセージを音声合成し、合成音声を再生してもよい。
【0030】
ステップS508では、判定部107が、入力内容が確定したか否かを判定する。例えば、ユーザからの「はい」、「OK」といった承諾、肯定の意思表示を示す発話を検出した場合、またはユーザが所定のボタンを押下した場合に、入力内容が確定したと判定すればよい。入力内容が確定した場合、ステップS509に進み、入力内容が確定していない場合、つまり入力内容を否定する発話または音声入力のやり直し等が発生した場合は、ステップS504に戻り、同様の処理を繰り返す。
【0031】
ステップS509では、入力部109が、入力対象範囲に含まれる入力位置に、値発話に基づくデータ(例えば、数値または文字列)を入力する。
【0032】
ステップS510では、入力部109が、値が入力された入力位置に関して入力済みとする。具体的には、入力部109が、例えば対応する入力手順リストの入力済みフラグを「1」に設定すればよい。
【0033】
ステップS511では、判定部107が、入力手順リストにおいて、未入力の入力位置が存在するか否かを判定する。未入力の入力位置が存在する場合は、ステップS501に戻り、同様の処理を繰り返す。一方、未入力の入力位置が存在しない、つまり全ての入力位置に値が入力されている場合は、情報処理装置10による帳票データ20への入力処理を終了する。
【0034】
次に、ステップS505における入力対象範囲の判定処理の詳細について、
図6のフローチャートを参照して説明する。
ステップS601では、生成部105が、入力対象項目と入力手順リストとに基づいて、判定辞書を生成する。判定辞書は、未入力の入力位置を指定する発話として、ユーザが発話する可能性のある入力位置または複数の入力位置の組み合わせを示す範囲指定テンプレートを複数格納する辞書である。判定辞書の詳細については
図7を参照して後述する。
【0035】
ステップS602では、判定部107が、音声認識結果と判定辞書とを照合し、音声認識結果が、範囲を指定する意図を含む発話である範囲指定発話を含むか否かを判定する。具体的には、音声認識結果が範囲指定テンプレートと一致する部分を含む場合、当該音声認識結果のうちの一致する部分が範囲指定発話であると判定する。音声認識結果が範囲指定発話を含む場合、ステップS603に進み、音声認識結果が範囲指定発話を含まない場合、ステップS605に進む。
【0036】
ステップS603では、判定部107が、音声認識結果である文字列のうち、範囲指定発話より後の部分を、ユーザが入力位置に入力したい値(例えば文字列)であると判定し、当該範囲指定発話よりも後の部分を値発話として判定する。
ステップS604では、決定部106が、範囲指定発話により指定された1以上の入力位置を入力対象範囲として決定する。その後、
図5のステップS506の処理に進む。なお、ステップS603およびステップS604の処理順序は問わず、どちらが先に実行されてもよい。
【0037】
ステップS605では、判定部107が、音声認識結果全体を値発話として判定する。
ステップS606では、決定部106が、現在の1つの入力対象項目を、入力対象範囲として決定する。その後、
図5のステップS506の処理に進む。なお、ステップS605およびステップS606の処理順序は問わず、どちらが先に実行されてもよい。
【0038】
図5および
図6のフローチャートでは図示しないが、音声認識部103により、ユーザの発話の録音および音声認識処理の開始および停止に関する切り替え制御が行われてもよい。例えば、ステップS503のガイダンス音声を出力した後、およびステップS507の確認メッセージを出力した後など、ユーザからの発話を受信するタイミングで、音声認識部103が、ユーザの発話の録音および音声認識処理を開始してもよい。また、音声認識結果が生成された場合、その後、情報処理装置10から出力される合成音声がマイクに回り込んでユーザの発話とともに音声認識処理されることを防止するため、音声認識処理を停止する。
【0039】
なお、情報処理装置10からの合成音声のマイクへの回り込みが発生しないような信号処理が適用される場合は、上記切り替え制御を実行せずに、
図5に示す入力処理が実行中、音声認識処理を実行したままでもよい。
【0040】
次に、第1の実施形態に係る判定辞書の一例について
図7を参照して説明する。
図7に示す判定辞書70は、複数の範囲指定テンプレート71を含む。範囲指定テンプレート71は、正規表現を含む。正規表現は、発話テンプレートに含まれる任意の入力に対する置換対象部分を、正規表現に展開することで生成される。
【0041】
例えば、ID「1」の正規表現72は、発話テンプレートに含まれる置換対象部分である「${個数}」を「?<数値>¥d+」に展開することで生成できる。ID「2」の正規表現72は、発話テンプレートに含まれる置換対象部分「${終点}」のみの場合に対応し、現在の入力手順より後の入力手順の識別子およびガイダンスの和集合に展開することで生成できる。
【0042】
ID「3」の正規表現72は、発話テンプレートに含まれる置換対象部分が「${始点}」と「${終点}」との両方存在する場合に対応する。始点は、入力手順リストの最後のエントリ以外のエントリの入力位置およびガイダンスの和集合に、終点は、入力手順リストの最初のエントリ以外のエントリの入力位置およびガイダンスの和集合にそれぞれ展開できる。
【0043】
範囲指定発話の場合、範囲指定テンプレートの正規表現に一致した部分から、個数、始点、終点など一致する部分を特定できる。すなわち、個数の指定の場合は、現在の入力対象項目に対応する入力手順リスト中の手順番号が始点となり、発話された個数から1を減じた数値に対応する手順番号が終点となる。具体的には、
図3において手順番号が「2」のエントリが入力対象項目である場合、「4個まとめて異常なし」と発話された場合、範囲指定発話は「4個まとめて」であり、終点に当たる手順番号は、2+4-1=5により、手順番号「5」のエントリに対応する入力位置(D3~D6)までが入力対象範囲となる。
つまり、入力手順リスト30における個数、入力位置の識別子、ガイダンスのどの指定でも、対応するエントリの入力位置が入力対象範囲となる。
【0044】
同様に、始点および終点の指定の場合は、例えば「汚れから印字までまとめて」との音声認識結果が得られた場合は、
図3の入力手順リストを参照すれば、始点に対応するガイダンス「汚れ」に対応する入力位置は「D3」であり、終点に対応するガイダンス「印字」に対応する入力位置は「D5」である。よって、入力対象範囲は「D3~D5」と設定できる。
【0045】
なお、判定辞書70は、ステップS601において生成されることに限らず、ステップS504の音声認識処理以前に生成されていてもよい。
また、
図7の例に限らず、正規表現は、入力手順リストに含まれる入力位置を指定可能な他の表現に基づいて展開されてもよい。
【0046】
次に、第1の実施形態に係る判定辞書の別例について
図8を参照して説明する。
図8に示す判定辞書80のように、1つのテンプレートから複数の範囲指定テンプレート81を設定してもよい。例えば、
図7のID「2」の範囲指定テンプレート71は、正規表現として「(?<終点>(D4)|(D5)|(D6)|(D7)|…|(キズ)|(印字)|(点灯状態)|(作動状態)|…)までまとめて」と表現する。なお、「A|B」は、「A」または「B」を認識することを示す非終端記号である。
一方、
図8の範囲指定テンプレート81では、各状態をばらして、ID「2-1」の正規表現72「(?<終点>(D4)|(キズ))までまとめて」、ID「2-2」の正規表現72「(?<終点>(D5)|(印字))までまとめて」、ID「2-3」の正規表現72「(?<終点>(D6)|(点灯状態))までまとめて」およびID「2-4」の正規表現72「(?<終点>(D7)|(作動状態))までまとめて」といったように表現してもよい。
【0047】
また、始点と終点との組み合わせとなりうる
図7のID「3」の範囲指定テンプレート71に関し、
図8の範囲指定テンプレート81では、手順番号i,j(i,jは、i<jとなる自然数)の組について、入力手順リストに含まれるエントリの入力位置とガイダンスとの和集合で展開すればよい。
【0048】
次に、第1の実施形態に係る情報処理装置10の入力処理の具体的な処理例について、
図5および
図6のフローチャートと、
図9から
図12までを参照して説明する。
図9は、
図3に示す入力手順リスト30の手順番号「2」のエントリに関して、処理が開始された場合の、制御部108による帳票データ20の表示例を示す図である。
【0049】
ステップS502の処理により、手順番号「2」のエントリは、入力位置「D3」であるため、帳票データ20における「D3」の入力位置が強調表示される。
図9の例では、D3のマスを太枠91で囲むことで強調表示する例を示す。
ここで、ステップS503の処理により、例えば、音声合成部104が、入力手順リスト30のガイダンスの項目「汚れ」の文言を用いた音声ガイダンスとして「『汚れ』はありますか」という合成音声を生成し、ユーザに通知する。当該合成音声を聞いたユーザは、ここでは、「汚れから印字までまとめて異常無し」と発話した場合を想定する。
ステップS504の処理により、音声認識部103が、「汚れから印字までまとめて異常無し」という音声認識結果を生成する。
【0050】
続いて、ステップS601において、生成部105が、
図7の手順番号「2」のエントリに関する判定辞書を生成する。ステップS602では、判定部107が、音声認識結果が範囲指定発話を含むか否かを判定する。ここでは、「汚れから印字までまとめて」という音声認識結果の一部が、始点と終点とを含む範囲指定テンプレート71である判定辞書のID「3」の正規表現72に一致するため、「汚れから印字までまとめて」を範囲指定発話であると判定する。これにより、ステップS603により「汚れから印字までまとめて」の後の「異常なし」という発話が、値発話に設定される。ステップS604により、決定部106が、範囲指定発話「汚れから印字までまとめて」と
図3の入力手順リストに基づき、正規表現72に当てはめられた「汚れ」に対応する入力位置「D3」を始点とし、「印字」に対応する入力位置「D5」を終点とした入力対象範囲「D3~D5」を設定する。
【0051】
結果としてステップS506の強調表示処理により、
図10に示すように、「D3」から「D5」までの3つのマスを含む入力対象範囲が太枠91で強調表示される。これにより、ユーザは自身の発話により所望の入力対象範囲が設定できたか否かを容易に判断できる。
【0052】
ステップS507およびS508の処理により、ユーザから
図10に示す入力対象範囲の設定について承諾する旨の発話が取得できた場合、
図11に示すように、ステップS509の処理により、入力対象範囲に、つまりD3、D4およびD5の各マスに値発話の値である文字列1101「異常なし」が入力される。その後、図示しないが
図3に示す入力手順リストにおいて入力位置「D3~D5」にそれぞれ対応するエントリの入力済みフラグに「1」が設定される。
【0053】
なお、次の処理を行うべく、ステップS501に戻った場合の入力対象項目については、入力対象範囲は「D3~D5」の複数の入力位置を含み、かつ今回の入力対象項目「D3」も含まれるため、決定部106は、当該入力対象範囲のうち最後の手順番号「4」(入力位置D5)よりも大きく、かつ未入力の入力位置、
図3の例では手順番号「5」(入力位置D6)を次の入力対象項目として決定すればよい。
【0054】
また、図示しないが、
図9の状態において、ユーザが「落書きあり」と発話した場合、ステップS504の処理により、音声認識部103が、「落書きあり」という音声認識結果を生成する。この場合、ステップS602により、音声認識結果「落書きあり」と一致する正規表現を有する範囲指定テンプレートは存在しないと判定される。ステップS605により、音声認識結果「落書きあり」全体が値発話に設定される。ステップS606において、入力対象項目の入力位置「D3」が入力対象範囲として設定され、当該入力位置「D3」に「落書きあり」の文字列が入力される。
【0055】
なお、
図9および
図10の例では、太線で入力位置を囲むことで強調表示したが、これに限らず、枠線を点滅させる、着色するといった強調表示でもよい。
入力対象範囲の強調表示の別例について
図12に示す。
図12では、入力対象範囲1201が他のマスとは異なる色に着色されることで、入力対象範囲1201が強調表示される例を示す。このように強調表示は、入力対象範囲1201以外のマスと異なる表示態様であればどのような表示してもよい。
【0056】
以上に示した第1の実施形態によれば、入力手順リストに従い、入力対象項目を基準として複数の項目に対して入力を可能とするまとめ入力をするための辞書を生成し、ユーザの発話を音声認識処理し、入力対象範囲となる1以上の入力位置と、当該入力位置に入力すべき値とを抽出し、入力対象範囲に入力する値を入力する。これにより、ユーザは作業をしながら、作業結果や検査結果についてユーザが所望する入力範囲を指定して発話するだけで、帳票データなどの記録用データシートに対して1以上の入力位置に一度にまとめて値を入力できる。
すなわち、範囲を指定するモードなどの切り替えも不要であり、ユーザは追加の設定などのわずらわしさもなく、個別入力とまとめ入力との意識せずに行える。結果として効率的な音声データ入力ができ、音声によるデータ入力の効率性および利便性を向上させることができる。これにより、帳票などの記録用データシートへのデータ入力の作業時間も短縮できる。
【0057】
(第1の実施形態の変形例)
第1の実施形態に係る情報処理装置10では、運用前に帳票データからガイダンスとして利用可能な項目を取得して、入力手順リストを生成することを想定しているが、運用中に入力手順リストに入力対象範囲を指定するための文言を追加し、テンプレートを更新してもよい。
【0058】
入力手順リストが更新される例について
図13および
図14を参照して説明する。
図13に示す入力手順リスト130において、
図2を試験項目における「外観チェック」および「動作チェック」の文言を入力対象範囲を指定するための文言として用いるため、ユーザにより、入力手順リストにグループ131の項目が追加される。
【0059】
図14では、新たに「${グループ}をまとめて」という発話テンプレート141が追加される。これにより、例えば「外観をまとめて」といった発話が音声認識結果として得られた場合、判定部107は、
図13に示す入力手順リストを参照して、グループが「外観」に対応するエントリである、「汚れ(D3)」、「キズ(D4)」および「印字(D5)」をまとめて入力対象範囲として決定できる。
【0060】
また、ユーザが入力手順リストおよび発話テンプレートを手動で更新することに限らず、情報処理装置10がユーザの入力対象範囲の指定傾向を学習し、新たな発話テンプレートの追加または新たな発話テンプレートの候補をユーザに提示してもよい。または、自動的に新たな発話テンプレートを追加してもよい。
【0061】
情報処理装置10により、入力対象範囲に関する発話テンプレートの追加設定を提示する一例を
図15に示す。
帳票データへの入力処理が複数回実行されている中で、例えば所定回数以上、複数の入力位置を含む同一の入力対象範囲が設定された場合を想定する。判定部107は、ユーザが高頻度で当該入力対象範囲を指定すると判定し、より短い発話で当該入力対象範囲を指定できるよう、ユーザに新たな発話テンプレートの追加を促してもよい。具体的には、「D3からD5までまとめて」のような始点および終点を含む複数の単語で入力対象範囲が、所定回数以上指定される場合、判定部107は、発話テンプレートの追加を促すと判定する。
【0062】
制御部108は、例えば、「まとめてチェックができるように設定しますか?」といった、ユーザに入力対象範囲に関する発話テンプレートの追加を促すメッセージ150を表示する。ユーザが「はい」と回答した場合は、ユーザ自身が入力対象範囲を指定しやすいような名称、
図15の例では、「外観」「見た目」「そと」といった文言が音声またはテキストなどで入力されればよい。これにより、例えば
図13および
図14に示したように、入力手順リストおよび発話テンプレートが更新される。次回以降の実行時には、ユーザが「外観をまとめて」「見た目をまとめて」「そとをまとめて」といった内容を発話することにより、D3からD5までの入力対象範囲を指定できる。
【0063】
なお、発話テンプレートの追加を促す場合、所定回数以上といったルールベースによる判定に限らず、機械学習した学習済みモデルにより、発話テンプレートの追加が促されてもよい。例えば、既存の教師有り学習により、入力対象項目を入力データとし、ユーザの入力対象範囲の指定傾向を正解データとした学習データによりモデルを学習する。学習の結果生成された学習済みモデルにより、発話テンプレートの追加設定を推薦してもよい。なお、
【0064】
以上に示した第1の実施形態の変形例によれば、ユーザの入力対象範囲の指定傾向に応じて、発話テンプレートの追加設定を促す。これにより、発話テンプレートとして、ユーザが入力対象範囲を指定しやすい名称を追加でき、音声により効率的に値を入力することができることに加え、音声によるデータ入力の効率性および利便性を向上させることができる。
【0065】
(第2の実施形態)
第2の実施形態では、特定の形式の発話を音声認識して処理する点が第1の実施形態と異なる。第1の実施形態では、自由発話を想定しているが、作業現場などでは騒音が多く、自由発話に対して正しい音声認識処理が実行できない可能性もある。よって、第2の実施形態に係る情報処理装置が、特定の入力形式に従った発話のみ入力処理を実行することで、音声認識処理の精度を向上させることができ、騒音が多い環境下でも音声による帳票データへの入力処理を実行できる。
【0066】
第2の実施形態に係る情報処理装置は、生成部105が、音声認識処理において特定の文法による発話の入力形式のみ認識するために用いる音声認識辞書を生成する。テンプレート格納部102は、音声認識辞書を格納する。第2の実施形態では、音声認識辞書を文法認識辞書とも呼ぶ。生成部105およびテンプレート格納部102以外は、第1の実施形態と同様の動作を行うため、ここでの説明を省略する。
【0067】
第2の実施形態に係る手順格納部101に格納される入力手順リストについて
図16を参照して説明する。
図16に示す入力手順リスト160は、
図3の入力手順リスト30に加えて、入力形式161の項目を含む。
【0068】
入力形式は、音声認識処理において特定の文法で構成された内容の発話のみ受け付けるための形式であり、音声認識辞書の生成に用いられる。例えば、「日付」「単語(異常なし、要交換)」「単語(動作正常、動作異常)」といったように文言を指定したり、「数値(整数部は3桁)」、「数値(整数部2桁、小数部1桁)」、「英数字5文字」といったように音声認識部103で認識するパターンを指定する。
具体的には、帳票データにおける検査日のデータ項目には、日付の発話のみ認識するように入力形式が「日付」に設定され、汚れのデータ項目には、「異常なし」か「要交換」化のどちらかのみ受け付けるよう、「単語(異常なし|要交換)」が設定される。
【0069】
次に、判定部107で生成される音声認識辞書の一例について
図17から
図19までを参照して説明する。
第2の実施形態に係る音声認識辞書は、入力対象項目の入力形式の値を認識するための値辞書と、入力対象項目を始点とした範囲指定発話を認識するための第1範囲辞書と、いつでも入力できる範囲指定発話を認識するための第2範囲辞書との3種類の辞書を含む。
【0070】
まず、値辞書の一例を
図17に示す。
値辞書170は、手順番号と文法テンプレートとが対応付けられた辞書である。値辞書170により、手順番号に対応する入力位置には、文法テンプレートに一致する音声認識結果しか入力されない。数値入力用の辞書は簡単のため「$整数○桁」という別定義の文法を用いることとする。手順番号「2~4」は、「異常無し」または「要交換」を認識し、手順番号「5~6」は「動作正常」または「動作異常」を認識する。
【0071】
次に、第1範囲辞書の一例を
図18に示す。
第1範囲辞書180は、手順番号と正規表現とが対応付けられた辞書である。第1範囲辞書180は、入力形式が同じ、連続した入力手順のみまとめて入力できる。例えば手順番号「2」の入力手順を始点とした場合、入力形式が同じ範囲である、手順番号「3」もしくは手順番号「4」までのみまとめて入力可能である。具体的には、個数を指定する「2個まとめて」や「3個まとめて」、終点となる入力位置を直接指定する「キズまでまとめて」「印字までまとめて」を範囲指定として用いることができる。また、「("異常無し"|"要交換")」は、
図17の値辞書と同様である。一方、手順番号「3」の入力手順を始点とした場合、入力形式が同じ範囲となるのは手順番号「4」までであるため、「3個まとめて」という発話は入力不可となり、「2個まとめて」という発話のみ受け付けられる。
【0072】
なお、
図18の例では、入力手順リストの「ガイダンス」の項目に設定された単語を用いるが、第1の実施形態と同様に、入力対象範囲を指定するために、手順番号など他の項目を用いてもよい。
【0073】
次に、第2範囲辞書の一例を
図19に示す。
第2範囲辞書190は、手順番号と正規表現とが対応付けられた辞書である。第2範囲辞書190は、入力対象項目の手順番号によらず、どの手順番号が入力対象項目であっても処理可能な発話を想定した辞書である。入力形式が同じ入力位置をまとめて入力するため、入力形式が同じかつ連続した複数の入力手順の組ごとに生成される。
図19の例では、手順番号「2~4」の範囲を表すために「汚れから印字まで」といった始点と終点とを指定した発話や、「外観をまとめて」といった入力手順リストの「グループ」を指定した発話を用いることができる。正規表現73のそれに続く「("異常無し"|"要交換")」は、
図18に示す第1範囲辞書180と同様である。第2範囲辞書190についても同様に、入力対象範囲を指定するために、手順番号など他の項目を用いてもよい。
なお、
図17から
図19まででは、値辞書170、第1範囲辞書180および第2範囲辞書190をそれぞれ別の辞書として生成する例を示すが、これに限らず、値のテンプレート、発話の範囲を想定した正規表現とを対応付けた1つの音声認識辞書として生成されてもよい。
【0074】
次に、音声認識辞書の一例について
図20に示す。
図17から
図19までに示した値辞書170、第1範囲辞書180および第2範囲辞書190を組み合わせることで、各手順番号のエントリが入力対象項目であるときの、それぞれの音声認識辞書200(文法認識辞書200ともいう)を生成できる。
図20の例では、値辞書170、第1範囲辞書180および第2範囲辞書190の各辞書から、手順番号「2」のエントリが入力対象項目であるときのエントリがそれぞれ抽出される。
【0075】
なお、音声認識辞書200に含まれる、「(キズ|印字)までまとめて」といった範囲を指定する入力形式については、
図7に示す範囲指定テンプレートから生成されてもよい。
【0076】
次に、第2の実施形態に係る情報処理装置10の入力処理について
図21のフローチャートを参照して説明する。
なお、第2の実施形態では、情報処理装置10による入力処理を実行する前に、値辞書、第1範囲辞書および第2範囲辞書を入力手順リストに基づいて予め生成することを想定するが、入力処理における音声認識処理を実行する前に生成されてもよい。
【0077】
ステップS2101では、ステップS501において、入力手順リスト中の手順番号に対応するエントリが入力対象項目として設定されると、生成部105は、値辞書、第1範囲辞書および第2範囲辞書に基づき、入力対象項目の手順番号に対応する音声認識辞書を生成する。
【0078】
ステップS504では、音声認識部103が、音声認識辞書に基づく音声認識処理が実行される。音声認識処理では、音声認識辞書にある入力形式の発話しか受け付けないため、入力形式以外の発話に関しては、リジェクトされ音声認識結果が生成されない。よって、一定期間ユーザの発話を音声認識処理できない場合は、ユーザに対し「音声認識できませんでした。もう一度話してください」といった内容の合成音声を出力し、再入力を促してもよい。
【0079】
なお、ステップS505では、判定部107が入力対象範囲を判定するが、音声認識処理により、値辞書、第1範囲辞書および第2範囲辞書の入力形式の文字列のうち、どの文字列を用いてユーザの発話を認識したかの情報が得られる場合は、第1範囲辞書および第2範囲辞書を用いて発話を認識したときに、範囲指定発話であると判定してもよい。なお、音声認識辞書にある文字列のうちどの部分を用いたかを示す情報が音声認識処理において得られない場合は、第1の実施形態と同様に、入力手順リストおよび範囲指定テンプレートを参照して、入力対象範囲を判定すればよい。
【0080】
以上に示した第2の実施形態によれば、入力範囲を指定する発話の形式を含む入力形式を指定した音声認識辞書(文法認識辞書)を生成し、当該音声認識辞書を用いて音声認識処理を実行することで、入力形式に一致した値のみが音声認識される。よって、音声認識精度を向上させることができ、第1の実施形態と同様に、音声によるデータ入力の効率性および利便性を向上させることができる。
【0081】
(第3の実施形態)
第3の実施形態では、第2の実施形態に係る入力形式を指定する音声認識処理に加え、音声区間検出を必要としない、キーワード検出型の音声認識処理を実行する点が上述の実施形態と異なる。音声区間検出を必要としないキーワード検出型の音声認識処理を併用することで、発話途中であっても入力対象範囲を特定でき、ユーザに提示できる。
【0082】
第3の実施形態に係る情報処理装置10は、生成部105が、キーワード検出型の音声認識辞書(キーワード認識辞書)と、入力形式となる文法を指定した音声認識辞書(文法認識辞書)とを生成する。音声認識部103が、キーワード認識辞書および文法認識辞書を用いて2種類の音声認識処理を実行する。他の構成について上述の実施形態と同様であるため説明を省略する。
【0083】
第3の実施形態に係るキーワード認識辞書の一例について
図22および
図23を参照して説明する。キーワード認識辞書として、対応する手順番号を始点とする範囲指定発話を検出するための辞書である第1キーワード認識辞書と、いつでも入力可能な発話を検出するための辞書である第2キーワード認識辞書とを含む。
図22に示す第1キーワード認識辞書220は、第2の実施形態に係る
図18に示す第1範囲辞書180に相当し、手順番号と、キーワードリストと、値に使用する文法とがそれぞれ対応付けられる。キーワードリストは、対応する発話を検出するための辞書となるキーワードである。値に使用する文法は、後述する
図24の文法認識辞書に対応する文法の手順番号である。第1キーワード認識辞書220は、各手順番号のエントリが入力対象項目である場合の、入力対象範囲の終点を表すキーワードが格納される。つまり、例えば手順番号「2」では、共通の値が入力されうる項目として、「汚れ」、「キズ」および「印字」の3つが挙げられるため、キーワード「キズまでまとめて」は、「汚れ」および「キズ」の各入力位置(D3,D4)を示す。また、キーワード「印字までまとめて」は、「汚れ」、「キズ」および「印字」の各入力位置(D3~D5)を示す。
【0084】
図23に示す第2キーワード認識辞書230は、第2の実施形態に係る
図19に示す第2範囲辞書190に相当し、手順番号と、キーワードリストと、値に使用する文法とがそれぞれ対応付けられる。第2キーワード認識辞書230は、手順番号に関係なく、いつでも入力可能な始点と終点とを指定した範囲に関する発話およびグループを指定した発話を検出するために用いられる。
すなわち、第1キーワード認識辞書220および第2キーワード認識辞書230は、範囲指定発話を検出するために用いられる。第1キーワード認識辞書220および第2キーワード認識辞書230は、第2の実施形態に係る
図18に示す第1範囲辞書180および
図19に示す第2範囲辞書190における範囲指定部分の文法の非終端記号を展開することで生成されてもよい。なお、第1キーワード認識辞書220および第2キーワード認識辞書230は、どちらか一方が生成される場合も同様に、入力処理を実行できる。
【0085】
次に、第3の実施形態に係る文法認識辞書の一例について
図24を参照して説明する。
図24に示す文法認識辞書240は、第2の実施形態に係る
図17に示す値辞書170と同様であり、値発話を認識するための辞書である。文法認識辞書240は、手順番号と文法テンプレートとを含む。文法テンプレートは、
図17に示す文法テンプレートと同様である。
図24の例では、手順番号「2~4」の入力形式は、
図16に示す入力手順リスト160を参照すれば、「異常なし」または「要交換」であるので、「異常無し|要交換|スキップ」と設定される。
【0086】
「スキップ」は、入力対象範囲に対する入力のスキップを意図する。入力部109は、スキップが値発話として取得された場合、入力対象範囲に何も入力しないか、「N/A」など所定の記号を入力してもよい。なお、説明の便宜上、第3の実施形態に係る文法認識辞書で「スキップ」を説明したが、第1の実施形態において値発話として判定された場合、および第2の実施形態の値辞書170に含まれる場合でも、入力部109は同様の処理を実行すればよい。
【0087】
また、
図24の例では、共通の入力形式となるグループの手順番号をまとめて記載しているが、手順番号それぞれについて文法テンプレートを設定してもよい。また、文法認識辞書240は、手順番号ではなく、入力形式ごとに生成されてもよい。
【0088】
次に、第3の実施形態に係る情報処理装置10の入力処理について
図25のフローチャートを参照して説明する。
ステップS2501では、制御部108が、入力対象項目の入力位置を強調表示し、さらに現在の入力対象項目の入力形式に基づき音声認識できる内容をユーザに表示する。例えば、入力形式が「単語(異常なし|要交換)」であれば、「異常なし、要交換」のテキストを画面に表示すればよい。表示位置としては、例えば帳票データ上に表示してもよいし、ステータスバーなどの欄外に表示してもよいし、別ウィンドウを用意して当該別ウィンドウ内に表示してもよい。または、テキストで表示することに限らず、「異常なしまたは要交換のどちらかを発話して下さい」という旨の合成音声を生成して再生し、ユーザに通知してもよい。
【0089】
ステップS2502では、音声認識部103が、入力手順番号に対応したキーワード認識辞書を用いて音声認識処理を開始し、現在の入力手順番号に対応した文法認識辞書を用いて音声認識処理を開始する。なお、以下ではキーワード認識辞書を用いた音声認識処理を、単にキーワード検出とも呼び、文法認識辞書を用いた音声認識処理を、単に文法型認識とも呼ぶ。具体的に、キーワード認識辞書は、第1キーワード認識辞書および第2キーワード認識辞書を含む。文法認識辞書は、値辞書である。
【0090】
ステップS2503では、判定部107が、キーワードが検出されたか否かを判定する。すなわち、ユーザからキーワード認識辞書に含まれるキーワードが発話されたか否かを判定し、キーワード認識辞書に含まれるキーワードが発話された場合、キーワードが検出されたと判定する。キーワードが検出された場合、ステップS2504に進み、キーワードが検出されない場合、ステップS2508に進む。
【0091】
ステップS2504では、音声認識部103が、文法型認識、つまり文法認識辞書を用いる音声認識処理を一時停止する。
【0092】
ステップS2505では、決定部106が、検出されたキーワードに基づいて、入力対象範囲を決定する。キーワード認識辞書に含まれるキーワードリストは範囲指定発話を示すため、決定部106は、キーワードに含まれる個数、始点および終点の文字列から入力対象範囲を特定できる。具体的に、例えば「キズまでまとめて」というキーワードが検出された場合、「キズ」はキーワード認識辞書によれば、終点を表すため、入力対象範囲が現在の入力対象項目の入力位置を始点として、項目「キズ」に対応する入力位置を終点とした範囲となる。
【0093】
ステップS2506では、制御部108が、入力対象範囲を強調表示する。このとき、指定された入力対象範囲に対応する入力手順リスト中の「入力形式」を、現在認識できる値の内容として併せて表示してもよい。
ステップS2507では、音声認識部103が、ユーザからの発話に備えて、ステップS2502と同様に現在の手順番号に対応した第1キーワード認識辞書と、第2キーワード認識辞書を用いてキーワード検出を、ステップ2503で検出されたキーワードに対応する値用に使用する文法テンプレートを用いて文法型認識をそれぞれ開始する。
【0094】
ステップS2508では、判定部107が、文法認識辞書による音声認識結果が得られたか否かを判定する。音声認識結果が得られた場合、ステップS2509に進み、音声認識結果が得られていない場合、ステップS2503に戻り、同様の処理を繰り返す。
【0095】
ステップS2509では、音声認識部103が、文法認識辞書を用いた音声認識処理を停止する。
ステップS2510では、決定部106が、文法型認識が出力する音声認識結果を値発話として設定する。
その後は、第1の実施形態および第2の実施形態と同様に、確認メッセージに関する合成音声を再生し、入力内容が確定した場合に、入力部109が、帳票データの入力位置に値発話に関する文字列を入力する。その後、値が入力された入力位置に関する入力手順リストのエントリを入力済みとし、次の未入力の入力位置に対して
図25に示す入力処理を実行する。以上で第3の実施形態に係る情報処理装置10の入力処理を終了する。
【0096】
次に、第3の実施形態に係る音声認識処理の具体例について
図26および
図27を参照して説明する。
図26および
図27はそれぞれ、時系列に沿ったキーワード検出および文法型認識それぞれの音声認識処理のタイミングを示す図である。
【0097】
図26は、入力対象項目として手順番号「2」のエントリの場合であり、ユーザにより範囲指定発話がなされた場合を想定する。
第1キーワード認識辞書では、例えば
図22の手順番号「2」に関するキーワードリストを用い、第2キーワード認識辞書では、
図23の全てのキーワードリストが用いられ、キーワード検出が開始される。一方、文法認識辞書では、
図24の手順番号「2~4」に対応する文法テンプレートが用いられ、文法型認識が開始される。また、併せて発話の録音も実施される。
【0098】
図26の例では、区間261においてユーザが「印字までまとめて」と発話した場合を想定する。この場合、第1キーワード認識辞書220のキーワードリスト「印字までまとめて」と一致するため、「印字までまとめて」という発話がキーワードとして検出される。キーワードが検出された結果、録音を継続したまま、キーワード検出および文法型認識それぞれの音声認識処理を停止する。また、録音のほか、次に文法型認識に関する音声認識処理を再開するまでの発話の音声はバッファリングしてもよい。
【0099】
検出されたキーワードは、終点を示すキーワードであり、入力手順リストを参照すると、検出されたキーワードに含まれる「印字」に対応する入力位置「D5」が抽出される。よって、決定部は、入力対象項目の入力位置「D3」を始点とし、入力位置「D5」を終点とした入力対象範囲「D3~D5」を決定できる。
キーワード検出では、音声検出区間を特定する必要が無いため、発話の途中でもキーワードの検出が完了次第、発話に対応した入力対象範囲を更新し、帳票データ上で強調表示できる。なお、更新された入力対象範囲に入力可能な入力形式の文字列が表示されてもよい。
【0100】
続いて、区間262において、キーワード検出に関する音声認識処理を再開する。また、
図24に示す文法認識辞書240における、検出されたキーワードに対応する手順番号の文法テンプレート(
図24の手順番号「2~4」に対応する文法テンプレート)を用いて、文法型認識に関する音声認識処理を再開する。ここでは、入力対象範囲が決定済みのため、再開された音声認識処理がリジェクトではなく、かつ音声認識結果を生成するまで、文法型認識に関する音声認識処理が継続される。ここでは、発話「異常無し」が音声認識結果として生成された場合を想定する、この場合、文法認識辞書240において、入力対象範囲である手順番号「2~4」の文法テンプレートに一致するため、「異常無し」が文法型認識された音声認識結果として生成される。「異常無し」の発話が検出されると、区間263において各判定を行い入力が終わるまで、キーワード検出および文法型認識に関する音声認識処理が一時停止される。
文法型認識型で検出された「異常無し」の文字列は、値発話であるため、入力対象範囲「D3~D5」に入力される。
【0101】
次に、
図27は、入力対象項目として手順番号「2」のエントリの場合であり、ユーザにより値発話のみがなされた場合を想定する。
【0102】
図27の区間271におけるキーワード検出に関する音声認識処理では、キーワードを検出できず、音声認識結果が生成されない。一方、文法型認識型の音声認識処理では、「異常なし」の発話が検出され、音声認識結果が生成される。音声認識結果が生成された場合、各判定、入力が終わって次に再開されるまでの区間272は、キーワード検出型および文法型認識型のそれぞれの音声認識処理を停止する。値発話であるため、入力対象範囲は手順番号2に対応する入力位置「D3」のままであり、「異常無し」の文字列が入力対象範囲「D3」に入力される。
【0103】
以上に示した第3の実施形態によれば、第2の実施形態に示した文法型認識に関する音声認識処理を値発話の検出に用い、音声検出区間の特定が不要なキーワード検出に関する音声認識処理を範囲指定発話の検出に用いる。これにより、範囲指定発話が認識されたタイミングで、対応する入力対象範囲に表示を切り替えることができるため、範囲指定発話ユーザは発話した入力対象範囲が意図通りであるか否かをすぐに判断でき、意図通りでなければ言い直しも可能である。また、入力可能な入力形式に基づく内容を、入力対象範囲が更新されたタイミングで表示することができ、何を発話してよいかわからないという状態がなく、ユーザは発話すべき内容を容易に把握できる。よって、第1の実施形態と同様に、音声によるデータ入力の効率性および利便性を向上させることができる。
【0104】
(第4の実施形態)
第3の実施形態では、範囲指定発話はキーワード検出に関する音声認識処理で検出することを想定したが、第4の実施形態では、範囲指定発話の終端をキーワード検出に関する音声認識処理で、範囲指定発話および値発話は、文法型認識に関する音声認識処理で検出することを想定する。
【0105】
第4の実施形態に係る情報処理装置10のブロック図について
図28を参照して説明する。
第4の実施形態に係る情報処理装置10は、第3の実施形態に係る情報処理装置に加え、バッファ部281を含む。
バッファ部281は、ユーザの発話に関する音声データを、少なくとも所定期間遡って利用できるようにバッファリングする。
【0106】
次に、第4の実施形態に係るキーワード検出に用いるキーワード認識辞書の一例を
図29に示す。
図29に示すキーワード認識辞書は、範囲指定発話の終端を検出できるように設定される。例えば、「個まとめて」、「までまとめて」といった末尾部分に関するキーワードを用いればよい。キーワード認識辞書は、例えば範囲指定テンプレートの末尾部分を抽出することで生成されればよい。なお、末尾部分をどこまで抽出するかに関しては、キーワード検出がおこなえればよい。例えば、運用において検出精度が確保できれば「まとめて」の文言をキーワードとして設定してもよいし、「まとめて」の文言では短すぎて検出精度が劣化する場合は、末尾部分の文言を長く設定すればよい。
【0107】
第4の実施形態に係る文法型認識に用いる文法認識辞書について
図30および
図31を参照して説明する。
文法認識辞書として、キーワードが検出された際に音声を遡って認識するための範囲辞書であり、入力対象項目を始点とした入力形式に関する第1文法認識辞書と、いつでも検出可能な入力形式に関する第2文法認識辞書と、値辞書とが用いられる。
【0108】
図30は、第1文法認識辞書300の一例である。第1文法認識辞書300は、表記がキーワードではなく非終端記号による文法である点が異なるが、
図22に示す第1キーワード認識辞書220と同様である。
図31は、第2文法認識辞書310の一例である。第2文法認識辞書310もキーワードではなく非終端記号による文法である点が異なるが、
図23に示す第2キーワード認識辞書230と同様である。値辞書は
図24に示す文法認識辞書を用いればよい。
【0109】
次に、第4の実施形態に係る文法認識辞書の一例を
図32に示す。
図32に示す文法認識辞書320は、例えば、
図30に示す第1文法認識辞書300から手順番号「2」を始点とした文法テンプレートを、
図31に示す第2文法認識辞書310から全ての文法テンプレートをそれぞれ抽出することで生成される。なお、
図32のように、音声認識辞書として1つの辞書にまとめず、キーワード認識辞書290、第1文法認識辞書300、第2文法認識辞書310および値辞書がそれぞれ用いられてもよい。
【0110】
次に、第4の実施形態に係る情報処理装置の入力処理について
図33のフローチャートを参照して説明する。
なお、第4の実施形態に係る情報処理装置10では、バッファ部281が、所定期間T分の音声をバッファリングしておく。バッファリングは、常に最新の所定期間T分は少なくとも保持し、所定期間Tを超過した過去の音声については破棄してもよい。所定期間Tの長さは、30秒など予め定められた時間長でもよいし、入力手順リストにおけるガイダンスの文言など、入力対象範囲を指定するための発話パターンのうち、「最長モーラ数×1モーラ分」の長さでもよいし、これらの値を基準として算出される長さでもよい。
【0111】
ステップS3301では、音声認識部103が、キーワード認識辞書を用いてキーワード検出を、現在の手順に対応する文法認識辞書を用いた文法型認識を開始する。具体的には、文法認識辞書は、第1文法認識辞書、第2文法認識辞書および値辞書を含む。
ステップS3302では、音声認識部103が、ステップS2503においてキーワードが検出された場合、現時点から所定期間Tに対応する音声データまで遡り、バッファリングされた所定期間Tの音声に対して、最先の時刻からキーワードの終端時刻までの音声を音声区間として、現在の手順に対応する範囲辞書を用いて文法型認識を実行する。なお、所定期間Tの設定によっては、バッファリングされた音声の中には複数の音声区間が存在することも考えられる。この場合、複数の音声認識結果が得られることが想定されるが、最新の音声区間に対応する音声認識結果を採用すればよい。
ステップS3303では、音声認識部103が、キーワード認識辞書を用いてキーワード検出を、決定された入力対象範囲に対応する値辞書を用いて文法型認識を開始する。
その後処理は、第3の実施形態に係る入力処理と同様である。
【0112】
次に、第4の実施形態に係る音声認識処理の具体例について
図34を参照して説明する。
図34は、時系列に沿ったキーワード検出および文法型認識それぞれの音声認識処理のタイミングを示す図である。
【0113】
ここでは、
図29に示すキーワード認識辞書290を用いたキーワード検出と、
図24と同様の値辞書を用いた文法型認識とに関する音声認識処理を実行するとともに、バッファ部281が、少なくとも所定期間Tの音声をバッファリングする。区間341において、ユーザから「印字までまとめて」と発話されたとする。キーワード認識辞書290を参照すると、「までまとめて」がキーワードリストに存在するため、発話「までまとめて」がキーワードとして検出される。発話「までまとめて」が検出された後、キーワード検出に関する音声認識処理と文法型認識とに関する音声認識処理を停止する。
【0114】
音声認識部103は、「までまとめて」を音声区間の終端として、所定期間342だけ遡った時間から当該終端までのバッファリングされた音声について、範囲辞書(第1文法認識辞書300および第2文法認識辞書310)を用いた文法型認識に関する音声認識処理を実行する。
図34の場合、「印字までまとめて」という音声認識結果が得られたとする。よって、
図30に示す第1文法認識辞書300の手順番号「3」のエントリと一致するため、「印字までまとめて」を範囲指定発話として検出できる。
【0115】
その後、区間343において、キーワード認識辞書290を用いたキーワード検出および、所定期間342の範囲指定発話に対応する値辞書を用いた文法型認識それぞれに関する音声認識処理が再開される。具体的には、「印字までまとめて」の範囲指定発話について、第1文法認識辞書での対応するエントリの値に使用する文法が「2-4」であるため、
図24に示す値辞書の手順番号「2-4」の文法テンプレート「異常無し|要交換|スキップ」を用いて、文法型認識が実行される。ここでは、区間343において「異常無し」の発話があり、手順番号「2-4」の文法テンプレートと一致するため、「異常無し」を値発話として検出できる。
【0116】
なお、所定期間342において文法型認識に関する音声認識処理により、音声認識結果が生成されなかった場合は、範囲指定発話ではないとして、キーワード検出に関する音声認識処理と、範囲辞書(第1文法認識辞書300および第2文法認識辞書310)を用いた文法型認識に関する音声認識処理とが再開されればよい。
また、区間343において、キーワード検出に関する音声認識処理によりキーワードが検出された場合、当該キーワードに関する発話の終端を基準として一定期間遡り、バッファリングされた音声に対して範囲辞書を用いた文法型認識が実行されればよい。
【0117】
以上に示した第4の実施形態によれば、キーワード検出による音声認識結果の時点から所定期間遡ってバッファリングされた音声について文法型認識を実行し、範囲指定発話から入力対象範囲を決定する。これにより、キーワード検出に関する音声認識処理で用いられるキーワード認識辞書に含まれるキーワードリストの量を低減できる。よって、第3の実施形態と同様の効果に加え、キーワード検出よりも様々な形式の発話を検出可能な文法認識辞書を用いることで、範囲指定発話として検出できるパターンを増やすことができる。
【0118】
(第5の実施形態)
上述の実施形態では、帳票データに値を入力するための入力位置に関する入力対象範囲を決定するが、帳票データの日報などを作成する場合、過去に生成した帳票データに入力した値をコピーしたいという状況も想定される。そこで、第5の実施形態では、入力位置に入力される値のコピー対象範囲を決定する。
【0119】
第5の実施形態に係る情報処理装置10の動作について
図35を参照して説明する。
図35の上段は、検査日が「2021/02/15」である現在入力中の帳票データであり、下段は検査日が「2021/02/01」の過去に値が入力された帳票データである。
情報処理装置10は、例えば特定の文言をトリガとして、過去の帳票データから値をコピーするため、コピー対象範囲351を決定する処理を実行する。例えば、情報処理装置10は、音声認識部103が、「コピーモード」という音声認識結果を生成した場合、コピー元となる帳票データに対してコピー対象範囲351を設定するモードに移行すればよい。
【0120】
コピー対象範囲351は、上述の実施形態に示す入力対象範囲と同様に決定すればよい。すなわち、入力位置の識別子を用いれば「D3からD5まで」と表現でき、
図35に示す試験番号を用いれば「1番から3番まで」と表現できる。
コピー対象範囲351が決定された後、第1から第4の実施形態に係る情報処理装置10の入力処理により、入力対象範囲352「D3~D5」が決定される。入力対象範囲352が決定された場合、入力部109は、コピー対象範囲351の値を入力対象範囲352にコピーする。具体的には、入力対象範囲352に対して、D3およびD4には「異常なし」、D5には「やや薄い」がそれぞれ入力される。
【0121】
なお、コピー対象範囲351および入力対象範囲352の設定順序は問わず、入力対象範囲352が決定された後に、コピー対象範囲351が決定されてもよい。また、コピー対象範囲351を設定するコピー元のデータは過去の帳票データに限らず、現在入力中の帳票データのうちの別の入力位置からコピーしてもよい。または、テキストファイルなど異なるデータ形式をコピー元としてもよい。
【0122】
以上に示した第5の実施形態によれば、情報処理装置が、入力対象範囲を設定し、入力対象範囲にコピーする値に関するコピー対象範囲を決定し、コピー対象範囲における値を入力対象範囲にコピーする。これにより、上述の実施形態と同様に、音声によるデータ入力の効率性および利便性を向上させることができる。
【0123】
次に、上述の実施形態に係る情報処理装置10のハードウェア構成の一例を
図36のブロック図に示す。
情報処理装置10は、CPU(Central Processing Unit)361と、RAM(Random Access Memory)362と、ROM(Read Only Memory)363と、ストレージ364と、表示装置365と、入力装置366と、通信装置367とを含み、それぞれバスにより接続される。
【0124】
CPU361は、プログラムに従って演算処理および制御処理などを実行するプロセッサである。CPU361は、RAM362の所定領域を作業領域として、ROM363およびストレージ364などに記憶されたプログラムとの協働により、上述した情報処理装置10の各部の処理を実行する。
【0125】
RAM362は、SDRAM(Synchronous Dynamic Random Access Memory)などのメモリである。RAM362は、CPU361の作業領域として機能する。ROM363は、プログラムおよび各種情報を書き換え不可能に記憶するメモリである。
【0126】
ストレージ364は、HDD(Hard Disc Drive)等の磁気記録媒体、フラッシュメモリなどの半導体による記憶媒体、または、HDDなどの磁気的に記録可能な記憶媒体、光学的に記録可能な記憶媒体などにデータを書き込みおよび読み出しをする装置である。ストレージ364は、CPU361からの制御に応じて、記憶媒体にデータの書き込みおよび読み出しをする。
【0127】
表示装置365は、LCD(Liquid Crystal Display)などの表示デバイスである。表示装置365は、CPU361からの表示信号に基づいて、各種情報を表示する。
【0128】
入力装置366は、マウスおよびキーボード等の入力デバイスである。入力装置366は、ユーザから操作入力された情報を指示信号として受け付け、指示信号をCPU361に出力する。
【0129】
通信装置367は、CPU361からの制御に応じて外部機器とネットワークを介して通信する。
【0130】
上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した情報処理装置の制御動作による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD-ROM、CD-R、CD-RW、DVD-ROM、DVD±R、DVD±RW、Blu-ray(登録商標)Discなど)、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の情報処理装置の制御と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本実施形態における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本実施形態における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
【0131】
なお、本実施形態におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本実施形態における機能を実現することが可能な機器、装置を総称している。
【0132】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行なうことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0133】
10…情報処理装置、20…帳票データ、21…データ項目、22…入力位置、30,130,160…入力手順リスト、70,80…判定辞書、71,81…範囲指定テンプレート、72,73…正規表現、91…太枠、101…手順格納部、102…テンプレート格納部、103…音声認識部、104…音声合成部、105…生成部、106…決定部、107…判定部、108…制御部、109…入力部、131…グループ、141…発話テンプレート、150…メッセージ、170…値辞書、180,190…範囲辞書、200,320…文法認識辞書、220…第1キーワード認識辞書、230…第2キーワード認識辞書、240…文法認識辞書、261~263,271,272,341,343…区間、281…バッファ部、290…キーワード認識辞書、310…文法認識辞書、342…所定期間、351…コピー対象範囲、352…入力対象範囲、361…CPU、362…RAM、363…ROM、364…ストレージ、365…表示装置、366…入力装置、367…通信装置、1101…文字列、1201…入力対象範囲