(57)【要約】【課題】誤りを含む音声認識結果であっても頑健にキーワードを抽出する。【解決手段】モデル記憶部１０は、複数の単語の単語ベクトル表現を入力とし、キーワードの単語ベクトル表現を抽出して出力するキーワード抽出モデルを記憶する。発話検出部１１は、音声信号から発話部分を検出する。音声認識部１２は、音声信号の発話部分を音声認識し、その音声認識結果であるコンフュージョンネットワークを出力する。単語ベクトル表現生成部１３は、コンフュージョンセットごとに、各候補単語について音声認識の信頼度を含む単語ベクトル表現を生成する。キーワード抽出部１４は、候補単語の単語ベクトル表現を信頼度が高い順にキーワード抽出モデルへ入力し、キーワードの単語ベクトル表現を得る。【選択図】図１
2020086332.tif 000002
【特許請求の範囲】
【請求項１】
複数の単語の単語ベクトル表現を入力とし、キーワードとして抽出すべき単語の単語ベクトル表現を抽出して出力するキーワード抽出モデルを記憶するモデル記憶部と、
入力された音声信号を音声認識し、その音声認識結果であるコンフュージョンネットワークを出力する音声認識部と、
上記コンフュージョンネットワークに含まれるコンフュージョンセットごとに、そのコンフュージョンセットに含まれる各候補単語について少なくとも音声認識の信頼度を含む単語ベクトル表現を生成する単語ベクトル表現生成部と、
各コンフュージョンセットに含まれる候補単語の単語ベクトル表現を上記信頼度が高い順に上記キーワード抽出モデルへ入力し、キーワードとして抽出すべき単語の単語ベクトル表現を得るキーワード抽出部と、
を含むキーワード抽出装置。
【請求項２】
請求項１に記載のキーワード抽出装置であって、
上記キーワード抽出モデルは、入力された複数の単語の単語ベクトル表現の中にキーワードとして抽出すべき単語が存在しないときは、何も出力しない状態に相当するベクトルを出力するものである、
キーワード抽出装置。
【請求項３】
請求項１または２に記載のキーワード抽出装置であって、
上記単語ベクトル表現は、その単語を表す単語ベクトルと、その単語の品詞を表す品詞ベクトルと、その単語に付与された音声認識の信頼度と、その単語が含まれるコンフュージョンセットを一意に特定する番号と、その単語が含まれるコンフュージョンセット中の単語を信頼度が高い順に整列したときの末尾の単語を示す終了フラグから構成されるものである、
キーワード抽出装置。
【請求項４】
請求項１から３のいずれかに記載のキーワード抽出装置であって、
上記キーワード抽出モデルは、長距離文脈を扱う再帰型ニューラルネットワークを用いて構成されるものである、
キーワード抽出装置。
【請求項５】
モデル記憶部に、複数の単語の単語ベクトル表現を入力とし、キーワードとして抽出すべき単語の単語ベクトル表現を抽出して出力するキーワード抽出モデルが記憶されており、
音声認識部が、入力された音声信号を音声認識し、その音声認識結果であるコンフュージョンネットワークを出力し、
単語ベクトル表現生成部が、上記コンフュージョンネットワークに含まれるコンフュージョンセットごとに、そのコンフュージョンセットに含まれる各候補単語について少なくとも音声認識の信頼度を含む単語ベクトル表現を生成し、
キーワード抽出部が、各コンフュージョンセットに含まれる候補単語の単語ベクトル表現を上記信頼度が高い順に上記キーワード抽出モデルへ入力し、キーワードとして抽出すべき単語の単語ベクトル表現を得る、
キーワード抽出方法。
【請求項６】
請求項１から４のいずれかに記載のキーワード抽出装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、入力された音声信号の中から発話された重要な単語をキーワードとして抽出する技術に関する。
【背景技術】
【０００２】
様々なキーワード抽出方式が学会等で提案され、実用化されている。非特許文献１には、サポートベクターマシン（SVM: Support Vector Machine）を用いてグローバルコンテキスト情報とローカルコンテキスト情報の両方に基づいてキーワードを抽出する技術が開示されている。非特許文献２には、Twitter（登録商標）から収集したテキストから再帰型ニューラルネットワーク（RNN: Recurrent Neural Network）を用いて自動的にキーワードを抽出する技術が開示されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Kuo Zhang, Hui Xu, Jie Tang, Juanzi Li, "Keyword Extraction Using Support Vector Machine," Advances in Web-Age Information Management, WAIM 2006, pp. 85-96, 2016.
【非特許文献２】Qi Zhang, Yang Wang, Yeyun Gong, Xuanjing Huang, "Keyphrase Extraction Using Deep Recurrent Neural Networks on Twitter," Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing, pp. 836-845, 2016.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来のキーワード抽出技術では、誤りを含むテキストに対する対策がなされていない。そのため、例えば、背景雑音や過度な残響、発話者の言い淀みや言い直しなどにより発生する誤りを含む音声認識結果を対象としてキーワード抽出を行うと、妥当なキーワードが抽出されないおそれがある。
【０００５】
この発明の目的は、誤りを含む音声認識結果であっても頑健にキーワードを抽出することができるキーワード抽出技術を提供することである。
【課題を解決するための手段】
【０００６】
上記の課題を解決するために、この発明の一態様のキーワード抽出装置は、複数の単語の単語ベクトル表現を入力とし、キーワードとして抽出すべき単語の単語ベクトル表現を抽出して出力するキーワード抽出モデルを記憶するモデル記憶部と、入力された音声信号を音声認識し、その音声認識結果であるコンフュージョンネットワークを出力する音声認識部と、コンフュージョンネットワークに含まれるコンフュージョンセットごとに、そのコンフュージョンセットに含まれる各候補単語について少なくとも音声認識の信頼度を含む単語ベクトル表現を生成する単語ベクトル表現生成部と、各コンフュージョンセットに含まれる候補単語の単語ベクトル表現を信頼度が高い順にキーワード抽出モデルへ入力し、キーワードとして抽出すべき単語の単語ベクトル表現を得るキーワード抽出部と、を含む。
【発明の効果】
【０００７】
この発明によれば、誤りを含む音声認識結果であっても頑健にキーワードを抽出することができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、キーワード抽出装置の機能構成を例示する図である。
【図２】図２は、キーワード抽出方法の処理手順を例示する図である。
【図３】図３は、コンフュージョンネットワークの構造を説明するための図である。
【図４】図４は、キーワード抽出部の処理を説明するための図である。
【発明を実施するための形態】
【０００９】
以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【００１０】
以下で説明する実施形態は、事前に学習されたキーワード抽出モデルを用いて、入力された音声信号の音声認識結果からキーワードとして抽出されるべき単語の単語ベクトル表現を抽出して出力するキーワード抽出装置および方法である。実施形態のキーワード抽出装置１は、図１に例示するように、モデル記憶部１０、発話検出部１１、音声認識部１２、単語ベクトル表現生成部１３、およびキーワード抽出部１４を備える。このキーワード抽出装置１が、図２に例示する各ステップの処理を行うことにより実施形態のキーワード抽出方法が実現される。
【００１１】
キーワード抽出装置１は、例えば、中央演算処理装置（CPU: Central Processing Unit）、主記憶装置（RAM: Random Access Memory）などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。キーワード抽出装置１は、例えば、中央演算処理装置の制御のもとで各処理を実行する。キーワード抽出装置１に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。キーワード抽出装置１の各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。キーワード抽出装置１が備える各記憶部は、例えば、RAM（Random Access Memory）などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ（Flash Memory）のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。
【００１２】
モデル記憶部１０には、予め学習したキーワード抽出モデルが記憶されている。このキーワード抽出モデルは、複数の単語の単語ベクトル表現を入力とし、キーワードとして抽出すべき単語の有無を推定する。キーワード抽出モデルは、入力された複数の単語の単語ベクトル表現の中にキーワードとして抽出すべき単語が存在するときは、そのキーワードの単語ベクトル表現を出力する。また、入力された複数の単語の単語ベクトル表現の中にキーワードとして抽出すべき単語が存在しないときは、その旨を表す情報として何も出力しない状態（=null）に相当するベクトルを出力する。なお、入力された複数の単語の単語ベクトル表現の中にキーワードとして抽出すべき単語が複数存在するときは、複数のキーワードの単語ベクトル表現からなる単語ベクトル表現集合を出力する。
【００１３】
キーワード抽出モデルは、例えば、長短期記憶（LSTM: Long Short Term Memory）などの長距離文脈を捉えられる（扱える）時系列統計モデルなどを用いて構成された深層ニューラルネットワーク（DNN: Deep Neural Network）である。キーワード抽出モデルの学習は、大量の音声データと、各音声データと対になるキーワードの正解値とが対応付けられた学習データに基づいて、一般的な深層ニューラルネットワークの学習手順に従って予め行っておく。
【００１４】
ステップＳ１において、発話検出部１１は、キーワード抽出装置１に入力された音声信号を受け取る。発話検出部１１は、受け取った音声信号から発話部分の検出を行う。発話検出部１１は、検出された発話部分に関する情報を音声認識部１２へ入力する。発話部分に関する情報とは、具体的には、検出された発話部分の音声波形、発話開始時刻、発話終了時刻、音声パワー、SN比などである。
【００１５】
発話部分の検出は、既知の発話検出技術を用いればよい。具体的には、例えば、下記参考文献１や参考文献２などに記載された発話検出技術を用いることができる。
〔参考文献１〕特許第５７４０３６２号公報
〔参考文献２〕Masakiyo Fujimoto and Tomohiro Nakatani, "Feature enhancement based on generative-discriminative hybrid approach with GMMs and DNNs for noise robust speech recognition, " in Proceedings of ICASSP '15, pp. 5019-5023, Apr. 2015.
【００１６】
ステップＳ２において、音声認識部１２は、発話検出部１１から発話部分に関する情報を受け取る。音声認識部１２は、入力された音声信号の発話部分の音声波形に対して音声認識を行い、その音声認識結果を表すコンフュージョンネットワークを求める。音声認識部１２は、音声認識結果を表すコンフュージョンネットワークをベクトル表現生成部１３へ入力する。
【００１７】
コンフュージョンネットワークは、N-bestリストまたは単語ラティスのコンパクトな表現であり、単語ラティスを音響的なクラスタリングにより圧縮したものである。N-bestリストとは、音声認識結果の上位N文のリストである。単語ラティスとは、音声認識結果の候補単語の取り得る組み合わせグラフである。コンフュージョンネットワークは、図３に示すように、複数のコンフュージョンセット（点線で囲まれた部分）が連続する構造を取る。各コンフュージョンセットは音声認識結果の候補単語をクラスタリングしたときの１つのクラスタリング結果を表す。各コンフュージョンセットには、音声認識の信頼度が付与された複数の候補単語が含まれる。このコンフュージョンネットワークを探索した結果、各コンフュージョンセット内の候補単語の中で文全体を見たときに最も妥当と思われる単語が音声認識結果として選ばれる。コンフュージョンネットワークの作成方法は、例えば、下記参考文献３に記載されている。
〔参考文献３〕L. Mangu, E. Brill, A. Stolcke, "Finding consensus in speech recognition: word error minimization and other applications of confusion networks," Computer Speech and Language, vol. 14(4), pp. 373-400, October 2000.
【００１８】
ステップＳ３において、単語ベクトル表現生成部１３は、音声認識部１２から音声認識結果を表すコンフュージョンネットワークを受け取る。単語ベクトル表現生成部１３は、コンフュージョンネットワークに含まれるコンフュージョンセットごとに、そのコンフュージョンセットに含まれるすべての候補単語について単語ベクトル表現を生成する。単語ベクトル表現生成部１３は、生成した候補単語の単語ベクトル表現をキーワード抽出部１４へ入力する。
【００１９】
ある候補単語に関する単語ベクトル表現は、その候補単語を表す単語ベクトル、その候補単語の品詞を表す品詞ベクトル、その候補単語に付与された音声認識の信頼度、その候補単語が含まれるコンフュージョンセットを一意に特定するコンフュージョンセット番号、その候補単語が含まれるコンフュージョンセット中の候補単語を信頼度が高い順に整列したときの末尾の単語を示すコンフュージョンセット終了フラグから構成される。
【００２０】
単語ベクトルは、例えば、下記参考文献４に記載されたword2vec（skip-gram）などの単語ベクトル表現生成技術を用いて生成する。品詞ベクトルは、例えば、1-of-K表現などで生成する。
〔参考文献４〕T. Mikolov, I. Sutskever, K. Chen, G. S. Corrado, "Distributed Representations of Words and Phrases and their Compositionality," Advances in Neural Information Processing Systems 26 (NIPS 2013), pp. 3111-3119, 2013.
【００２１】
コンフュージョンセット番号は、コンフュージョンネットワーク単位で正規化されるものとする。例えば、コンフュージョンネットワークに含まれる複数のコンフュージョンセットに対して、０から開始し１ずつ増加する通し番号を先頭から付与し、その通し番号に対してコンフュージョンネットワークに含まれるコンフュージョンセット数で除算することで正規化を行う。
【００２２】
コンフュージョンセット終了フラグは、コンフュージョンセットに含まれる候補単語を信頼度の降順（高い順）でソートし、末尾の単語（すなわち、最も信頼度が低い候補単語）は１、そうでない単語は０を設定する。コンフュージョンセット終了フラグは、キーワード抽出モデルを学習する際に、終了フラグが０の単語は何も出力せず、終了フラグが１の単語はキーワードの単語ベクトル表現を出力するように学習させることを目的として付与するものである。
【００２３】
単語ベクトル表現生成部１３は、コンフュージョンネットワークに含まれるコンフュージョンセットごとに、下記のようにして単語ベクトル表現を生成する。まず、コンフュージョンセットに含まれる候補単語について信頼度で降順にソートする。次に、ソート結果の末尾以外はコンフュージョンセット終了フラグを０に、末尾は１にセットする。続いて、各候補単語について単語ベクトルと品詞ベクトルを生成する。最後に、ソート結果順に、単語ベクトル・品詞ベクトル・信頼度・コンフュージョンセット番号・コンフュージョンセット終了フラグを連結し、出力する。
【００２４】
ステップＳ４において、キーワード抽出部１４は、単語ベクトル表現生成部１３から候補単語の単語ベクトル表現を受け取る。キーワード抽出部１４は、モデル記憶部１０に記憶されたキーワード抽出モデルへ受け取った単語ベクトル表現を信頼度の降順に入力する。キーワード抽出モデルは、コンフュージョンセットに含まれるすべての候補単語が入力された後に、キーワードとして抽出されるべき単語の単語ベクトル表現（または単語ベクトル表現集合）を出力する。キーワード抽出部１４は、キーワード抽出モデルが出力する単語ベクトル表現（または単語ベクトル表現集合）をキーワードの単語ベクトル表現としてキーワード抽出装置１の出力とする。
【００２５】
図４を参照してキーワード抽出部１４の処理を詳細に説明する。ここでは、処理対象のコンフュージョンセットに３個の候補単語が存在するものとする（図３に示したコンフュージョンネットワークの左から３番目のコンフュージョンセット参照）。まず、コンフュージョンセット中の最も信頼度が高い候補単語（図３の例であれば、“価値”）から生成した単語ベクトル表現がキーワード抽出モデルへ入力される。このとき、コンフュージョンセット終了フラグは０であるため、キーワード抽出モデルは何も出力しない。次に、コンフュージョンセット中の２番目に信頼度が高い候補単語（図３の例であれば、“達”）から生成した単語ベクトル表現がキーワード抽出モデルへ入力される。このとき、コンフュージョンセット終了フラグは０であるため、キーワード抽出モデルは何も出力しない。最後に、コンフュージョンセット中の最も信頼度が低い候補単語（図３の例であれば、“が”）から生成した単語ベクトル表現がキーワード抽出モデルへ入力される。このとき、コンフュージョンセット終了フラグは１であるため、キーワード抽出モデルはキーワードとして抽出するべき候補単語の単語ベクトル表現を出力する。なお、図４に示すように、２番目以降の候補単語の単語ベクトル表現が入力されたときは、LSTMにより構成された層では直前の候補単語の単語ベクトル表現を入力したときの出力を用いて演算を行う。
【００２６】
上述の実施形態で示したように、この発明のキーワード抽出技術では、音声認識結果中のキーワードを抽出する際に音声認識結果の信頼度が付与された候補単語の集合を入力に用いる。これにより、キーワードの抽出において音声認識の信頼度を考慮することができ、誤りが存在する音声認識結果に対しても頑健なキーワード抽出が可能となる。
【００２７】
以上、この発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、この発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、この発明に含まれることはいうまでもない。実施の形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【００２８】
［プログラム、記録媒体］
上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【００２９】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００３０】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００３１】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００３２】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【符号の説明】
【００３３】
１  キーワード抽出装置
１０  モデル記憶部
１１  発話検出部
１２  音声認識部
１３  単語ベクトル表現生成部
１４  キーワード抽出部
【図１】
2020086332.tif 000003
【図２】
2020086332.tif 000004
【図３】
2020086332.tif 000005
【図４】
2020086332.tif 000006