JP2018194844A - 音声制御装置、音声制御装置の動作方法、コンピュータプログラム及び記録媒体 - Google Patents

音声制御装置、音声制御装置の動作方法、コンピュータプログラム及び記録媒体 Download PDF

Info

Publication number
JP2018194844A
JP2018194844A JP2018094704A JP2018094704A JP2018194844A JP 2018194844 A JP2018194844 A JP 2018194844A JP 2018094704 A JP2018094704 A JP 2018094704A JP 2018094704 A JP2018094704 A JP 2018094704A JP 2018194844 A JP2018194844 A JP 2018194844A
Authority
JP
Japan
Prior art keywords
feature vector
keyword
audio data
audio
speaker feature
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
JP2018094704A
Other languages
English (en)
Other versions
JP6510117B2 (ja
Inventor
丙 烈 金
Byeong Yeol Kim
丙 烈 金
益 ▲祥▼ 韓
Ick Sang Han
益 ▲祥▼ 韓
五 赫 權
Oh Hyeok Kwon
五 赫 權
奉 眞 李
Bong Jin Lee
奉 眞 李
明 祐 呉
Myung Woo Oh
明 祐 呉
▲みん▼ 碩 崔
Min Seok Choi
▲みん▼ 碩 崔
燦 奎 李
Chan Kyu Lee
燦 奎 李
貞 姫 任
Jung Hui Im
貞 姫 任
智 須 崔
Ji Su Choi
智 須 崔
漢 容 姜
Han Yong Kang
漢 容 姜
秀 桓 金
Suhwan Kim
秀 桓 金
丁 牙 崔
Jung A Choi
丁 牙 崔
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.)
Z Intermediate Global Corp
Naver Corp
Original Assignee
Line Corp
Naver 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 Line Corp, Naver Corp filed Critical Line Corp
Publication of JP2018194844A publication Critical patent/JP2018194844A/ja
Application granted granted Critical
Publication of JP6510117B2 publication Critical patent/JP6510117B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/02Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • 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
    • 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/28Constructional details of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/04Training, enrolment or model building
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • 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
    • G10L2015/223Execution procedure of a spoken command

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)

Abstract

【課題】 キーワード誤認識を防止する音声制御装置、及びその動作方法を提供する。【解決手段】 キーワード誤認識を防止することができる音声制御装置、及びその動作方法に係り、該動作方法は、周辺音に対応するオーディオ信号を受信し、オーディオストリームデータを生成する段階と、オーディオストリームデータから、所定のキーワードに対応する候補キーワードを検出し、オーディオストリームデータにおいて、候補キーワードが検出された第1オーディオデータに該当する第1区間の始点及び終点を決定する段階と、第1オーディオデータに係わる第1話者特徴ベクトルを抽出する段階と、オーディオストリームデータにおいて、第1区間の始点を終点にする第2区間に該当する第2オーディオデータに係わる第2話者特徴ベクトルを抽出する段階と、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度を基に、第1オーディオデータに、キーワードが含まれていたか否かを判断し、ウェークアップさせるか否かを決定する段階と、を含む。【選択図】 図2

Description

本発明は、音声制御装置に関し、さらに詳細には、キーワード誤認識防止が可能な音声制御装置、音声制御装置の動作方法、コンピュータプログラム及び記録媒体等に関する。
携帯用通信装置、デスクトップPC(personal computer)、タブレットPC、及びエンターテイメントシステムのようなコンピュータ装置の性能が高度化しつつ、操作性を向上させるために、音声認識機能が搭載され、音声によって制御される電子機器が市場に出回っている。該音声認識機能は、別途のボタン操作、またはタッチモジュールの接触によらず、ユーザの音声を認識することにより、装置を手軽に制御することができる長所を有する。
かような音声認識機能によれば、例えば、スマートフォンのような携帯用通信装置においては、別途のボタンを押す操作なしに、通話機能を遂行したり、文字メッセージを作成したりすることができ、道案内、インターネット検索、アラーム設定等のような多様な機能を手軽に設定することができる。しかし、かような音声制御装置が、ユーザの音声を誤認識すると、不本意な動作を遂行してしまう問題が発生しうる。
韓国特許公開第10−2017−0028628号公報
本発明が解決しようとする課題は、キーワード誤認識を防止することができる音声制御装置、音声制御装置の動作方法、コンピュータプログラム及び記録媒体等を提供することである。
前述の技術的課題を達成するための技術的手段として、本開示の第1側面は、周辺音に対応するオーディオ信号を受信し、オーディオストリームデータを生成するオーディオ処理部と、前記オーディオストリームデータから、所定のキーワードに対応する候補キーワードを検出し、前記オーディオストリームデータにおいて、前記候補キーワードが検出された第1オーディオデータに該当する第1区間の始点及び終点を決定するキーワード検出部と、前記第1オーディオデータに係わる第1話者特徴ベクトルを抽出し、前記オーディオストリームデータにおいて、前記第1区間の始点を終点にする第2区間に該当する第2オーディオデータに係わる第2話者特徴ベクトルを抽出する話者特徴ベクトル抽出部と、前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとの類似度を基に、前記第1オーディオデータに、前記キーワードが含まれていたか否かを判断するウェークアップ判断部と、を含む音声制御装置を提供することができる。
また、本開示の第2側面は、周辺音に対応するオーディオ信号を受信し、オーディオストリームデータを生成する段階と、前記オーディオストリームデータから、所定のキーワードに対応する候補キーワードを検出し、前記オーディオストリームデータにおいて、前記候補キーワードが検出された第1オーディオデータに該当する第1区間の始点及び終点を決定する段階と、前記第1オーディオデータに係わる第1話者特徴ベクトルを抽出する段階と、前記オーディオストリームデータにおいて、前記第1区間の始点を終点にする第2区間に該当する第2オーディオデータに係わる第2話者特徴ベクトルを抽出する段階と、前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとの類似度を基に、前記第1オーディオデータに、前記キーワードが含まれていたか否かを判断し、ウェークアップさせるか否かを決定する段階と、を含む音声制御装置の動作方法を提供することができる。
また、本開示の第3側面は、音声制御装置のプロセッサに、第2側面による動作方法を実行させる命令語を含むコンピュータプログラムを提供することができる。
また、本開示の第4側面は、第3側面によるコンピュータプログラムが記録されたコンピュータで読み取り可能な記録媒体を提供することができる。
本発明の多様な実施形態によれば、キーワードを誤認識する可能性が低下するので、音声制御装置の誤動作が防止される。
一実施形態によるネットワーク環境の例を図示した図面である。 一実施形態によって、電子機器及びサーバの内部構成について説明するためのブロック図である。 一実施形態による音声制御装置のプロセッサが含みうる機能ブロックの例を図示した図面である。 一実施形態によって、音声制御装置が遂行することができる動作方法の例を図示したフローチャートである。 他の実施形態によって、音声制御装置が遂行することができる動作方法の例を図示したフローチャートである。 一実施形態による音声制御装置が、図5の動作方法を実行する場合、単独命令キーワードが発話される例を図示する図面である。 一実施形態による音声制御装置が、図6の動作方法を実行する場合、一般対話音声が発話される例を図示する図面である。 さらに他の実施形態によって、音声制御装置が遂行することができる動作方法の例を図示したフローチャートである。 一実施形態による音声制御装置が、図7の動作方法を実行する場合、ウェークアップキーワード及び自然語音声命令が発話される例を図示する図面である。 一実施形態による音声制御装置が、図7の動作方法を実行する場合、一般対話音声が発話される例を図示する図面である。
以下、添付した図面を参照し、本発明が属する技術分野において当業者が容易に実施することができるように、本発明の実施形態について詳細に説明する。しかし、本発明は、さまざまに異なる形態に具現化され、ここで説明する実施形態に限定されるものではない。そして、図面において、本発明について明確に説明するために、説明と関係ない部分は省略し、明細書全体を通じて、類似した部分については、類似した図面符号を付した。
明細書全体において、ある部分が他の部分と「連結」されているとするとき、それは、「直接に連結」されている場合だけではなく、その中間に、他の素子を挟み、「電気的に連結」されている場合も含む。また、ある部分がある構成要素を「含む」とするとき、それは、特に別意の記載がない限り、他の構成要素を除くものではなく、他の構成要素をさらに含みうるということを意味する。
本明細書において、様々な箇所に登場する「一部実施形態において」または「一実施形態において」というような語句は、必ずしもいずれも同一実施形態を示すものではない。
一部実施形態は、機能的なブロック構成、及び多様な処理段階で示される。かような機能ブロックの一部または全部は、特定機能を行う多様な個数のハードウェア構成及び/またはソフトウェア構成によっても具現化される。例えば、本開示の機能ブロックは、1以上のマイクロプロセッサによって具現化されるか、あるいは所定機能のための回路構成によっても具現化される。また、例えば、本開示の機能ブロックは、多様なプログラミング言語またはスクリプティング言語によっても具現化される。該機能ブロックは、1以上のプロセッサで実行されるアルゴリズムによっても具現化される。また、本開示は、電子的な環境設定、信号処理、及び/またはデータ処理などのために、従来技術を採用することができる。「モジュール」及び「構成」のような用語は、汎用され、機械的であって物理的な構成として限定されるものではない。
また、図面に図示された構成要素間の連結線または連結部材は、機能的な連結、及び/または物理的または回路的な連結を例示的に示しただけである。実際の装置においては、代替可能であったり、追加されたりする多様な機能的な連結、物理的な連結または回路連結により、構成要素間の連結が示される。
本開示においてキーワードは、音声制御装置の特定機能をウェークアップさせることができる音声情報をいう。該キーワードは、ユーザの音声信号に基づいて、単独命令キーワードでもあり、ウェークアップキーワードでもある。ウェークアップキーワードは、スリープモード状態の音声制御装置をウェークアップモードに転換することができる音声に基づくキーワードであり、例えば、「クローバ」、「ハイコンピュータ」のような音声キーワードでもある。ユーザは、ウェークアップキーワードを発話した後、音声制御装置が遂行することを願う機能や動作を指示するための命令を自然語形態で発話することができる。なお、以下の説明でウェークアップキーワードの単なる一例として登場する「クローバ」(Clova)は登録商標であり、「四葉のクローバー」(four−leaf clover)における「クローバー」とは異なる点に留意を要する。その場合、該音声制御装置は、自然語形態の音声命令を音声認識し、音声認識された結果に対応する機能または動作を遂行することができる。単独命令キーワードは、例えば、音楽が再生中である場合、「中止」のように、音声制御装置の動作を直接制御することができる音声キーワードでもある。本開示で言及されるウェークアップキーワードは、ウェークアップワード、ホットワード、トリガーワードのような用語で呼ばれる。
本開示において候補キーワードは、キーワードと発音が類似したワードを含む。例えば、キーワードが「クローバ」である場合、該候補キーワードは、「クローバー」、「グローバル」、「クラブ」などでもある。該候補キーワードは、音声制御装置のキーワード検出部が、オーディオデータからキーワードとして検出したものと定義される。該候補キーワードは、キーワードと同一でもあるが、該キーワードと類似した発音を有する他のワードでもある。一般的には、該音声制御装置は、ユーザが候補キーワードに該当する用語が含まれている文章を発話する場合にも、当該キーワードと誤認識してウェークアップさせることがある。本開示による音声制御装置は、音声信号から、前述のような候補キーワードが検出される場合にも反応するが、候補キーワードによってウェークアップさせることを防止することができる。
本開示において音声認識機能は、ユーザの音声信号を、文字列(または、テキスト)に変換することをいう。ユーザの音声信号は、音声命令を含みうる。該音声命令は、音声制御装置の特定機能を行うことができる。
本開示において音声制御装置は、音声制御機能が搭載された電子機器をいう。音声制御機能が搭載された電子機器は、スマートスピーカまたは人工知能スピーカのような独立した電子機器でもある。また、音声制御機能が搭載された電子機器は、音声制御機能が搭載されたコンピュータ装置、例えば、デスクトップPC(personal computer)、ノート型パソコンなどであるだけでなく、携帯が可能なコンピュータ装置、例えば、スマートフォンなどでもある。その場合、該コンピュータ装置には、音声制御機能を行うためのプログラムまたはアプリケーションがインストールされる。また、該音声制御機能が搭載された電子機器は、特定機能を主に遂行する電子製品、例えば、スマートテレビ、スマート冷蔵庫、スマートエアコン、スマートナビゲーションなどでもあり、自動車のインフォテーンメントシステムでもある。それだけではなく、音声によって制御される事物インターネット装置も、それに該当する。
本開示において、音声制御装置の特定機能は、例えば、該音声制御装置にインストールされたアプリケーションを実行することを含みうるが、それに制限されるものではない。例えば、該音声制御装置がスマートスピーカである場合、該音声制御装置の特定機能は、音楽再生、インターネットショッピング、音声情報提供、スマートスピーカに接続された電子装置または機械装置の制御などを含みうる。例えば、該音声制御装置がスマートフォンである場合、該アプリケーション実行は、電話かけること、道探し、インターネット検索またはアラーム設定などを含みうる。例えば、該音声制御装置がスマートテレビである場合、該アプリケーション実行は、プログラム検索またはチャネル検索などを含みうる。該音声制御装置がスマートオーブンである場合、該アプリケーション実行は、料理方法検索などを含みうる。該音声制御装置がスマート冷蔵庫である場合、該アプリケーション実行は、冷蔵状態及び冷凍状態の点検、または温度設定などを含みうる。該音声制御装置がスマート自動車である場合、該アプリケーション実行は、自動始動、自律走行、自動駐車などを含みうる。本開示でアプリケーション実行は、前述のところに制限されるものではない。
本開示においてキーワードは、ワード形態を有するか、あるいは球形態を有することができる。本開示において、ウェークアップキーワード後に発話される音声命令は、自然語形態の文章形態、ワード形態または球形態を有することができる。
以下、添付された図面を参照し、本開示について詳細に説明する。
図1は、一実施形態によるネットワーク環境の例を図示した図面である。図1に図示されたネットワーク環境は、複数の電子機器100aないし100f、サーバ200及びネットワーク300を含むように例示的に図示される。
電子機器100aないし100fは、音声で制御される例示的な電子機器である。電子機器100aないし100fそれぞれは、音声認識機能以外に、特定機能を行うことができる。電子機器100aないし100fの例を挙げれば、スマートスピーカまたは人工知能スピーカ、スマートフォン、携帯電話、ナビゲーション、コンピュータ、ノート型パソコン、デジタル放送用端末、PDA(personal digital assistants)、PMP(portable multimedia player)、タブレットPC、スマート電子製品などがある。電子機器100aないし100fは、無線または有線の通信方式を利用し、ネットワーク300を介して、サーバ200、及び/または他の電子機器100aないし100fと通信することができる。しかし、それに限定されるものではなく、電子機器100aないし100fそれぞれは、ネットワーク300に連結されず、独立して動作することもできる。電子機器100aないし100fは、電子機器100とも総称される。
ネットワーク300の通信方式は、制限されるものではなく、ネットワーク300が含みうる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網)を活用する通信方式だけではなく、電子機器100aないし100f間の近距離無線通信が含まれてもよい。例えば、ネットワーク300は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうち1以上の任意のネットワークを含みうる。また、ネットワーク300は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター・バスネットワーク、ツリーネットワークまたは階層的(hierarchical)ネットワークなどを含むネットワークトポロジーのうち、任意の1以上を含みうるが、それらに制限されるものではない。
サーバ200は、ネットワーク300を介し、て電子機器100aないし100fと通信し、音声認識機能を遂行するコンピュータ装置、または複数のコンピュータ装置によっても具現化される。サーバ200は、クラウド形態に分散され、命令、コード、ファイル、コンテンツなどを提供することができる。
例えば、サーバ200は、電子機器100aないし100fから提供されるオーディオファイルを受信し、オーディオファイル内の音声信号を文字列(または、テキスト)に変換し、変換された文字列(または、テキスト)を、電子機器100aないし100fに提供することができる。また、サーバ200は、ネットワーク300を介して接続した電子機器100aないし100fに、音声制御機能を遂行するためのアプリケーションインストールのためのファイルを提供することができる。例えば、第2電子機器100bは、サーバ200から提供されたファイルを利用し、アプリケーションをインストールすることができる。第2電子機器100bは、インストールされた運用体制(OS)、及び/または少なくとも1つのプログラム(例えば、インストールされた音声制御アプリケーション)の制御によってサーバ200に接続し、サーバ200が提供する音声認識サービスを提供される。
図2は、一実施形態によって、電子機器及びサーバの内部構成について説明するためのブロック図である。
電子機器100は、図1の電子機器100aないし100fのうち一つであり、電子機器100aないし100fは、少なくとも図2に図示された内部構成を有することができる。電子機器100は、ネットワーク300を介して音声認識機能を遂行するサーバ200に接続されるように図示されているが、それは例示的なものであり、電子機器100は、独立して音声認識機能を遂行することもできる。電子機器100は、音声によって制御される電子機器であり、音声制御装置100とも呼ばれる。音声制御装置100は、スマートスピーカまたは人工知能スピーカ、コンピュータ装置、携帯用コンピュータ装置、スマート家電製品などに含まれたり、それらに、有線及び/または無線で連結されたりして具現化される。
電子機器100とサーバ200は、メモリ110,210、プロセッサ120,220、通信モジュール130,230、及び入出力インターフェース140,240を含みうる。メモリ110,210は、コンピュータで読み取り可能な記録媒体であり、RAM(random access memory)、ROM(read-only memory)及びディスクドライブのような非消滅性大容量記録装置(permanent mass storage device)を含みうる。また、メモリ110,210には、運用体制と、少なくとも1つのプログラムコード(例えば、電子機器100にインストールされて駆動される音声制御アプリケーション、音声認識アプリケーションなどのためのコード)とが保存される。かようなソフトウェア構成要素は、コンピュータで読み取り可能な記録媒体ではない通信モジュール130,230を介して、メモリ110,210にローディングされる。例えば、少なくとも1つのプログラムは、開発者、またはアプリケーションのインストールファイルを配布するファイル配布システムが、ネットワーク300を介して提供するファイルによってインストールされるプログラムに基づいて、メモリ110,210にローディングされる。
プロセッサ120,220は、基本的な算術、ロジック及び入出力演算を行うことにより、コンピュータプログラムの命令を処理するように構成される。該命令は、メモリ110,210または通信モジュール130,230によって、プロセッサ120,220にも提供される。例えば、プロセッサ120,220は、メモリ110,210のような記録装置に保存されたプログラムコードによって受信される命令を実行するようにも構成される。
通信モジュール130,230は、ネットワーク300を介して、電子機器100とサーバ200とが互いに通信するための機能を提供することができ、他の電子機器100bないし100fと通信するための機能を提供することができる。一例として、電子機器100のプロセッサ120が、メモリ110のような記録装置に保存されたプログラムコードによって生成した要請(一例として、音声認識サービス要請)が、通信モジュール130の制御により、ネットワーク300を介してサーバ200に伝達される。反対に、サーバ200のプロセッサ220の制御によって提供される音声認識結果である文字列(テキスト)などが、通信モジュール230及びネットワーク300を経て、電子機器100の通信モジュール130を介して、電子機器100に受信される。例えば、通信モジュール130を介して受信されたサーバ200の音声認識結果は、プロセッサ120やメモリ110に伝達される。サーバ200は、制御信号や命令、コンテンツ、ファイルなどを電子機器100に送信することができ、通信モジュール130を介して受信された制御信号や命令などは、プロセッサ120やメモリ110に伝達し、コンテンツやファイルなどは、電子機器100がさらに含みうる別途の記録媒体にも保存される。
入出力インターフェース140,240は、入出力装置150とのインターフェースのための手段でもある。例えば、入力装置はマイク151だけではなく、キーボードまたはマウスなどの装置を含み、出力装置は、スピーカ152だけではなく、状態を示す状態表示LED(light emitting diode)、アプリケーションの通信セッションを表示するためのディスプレイのような装置を含みうる。他の例として、入出力装置150は、タッチスクリーンのように、入力及び出力のための機能が一つに統合された装置を含みうる。
マイク151は、周辺音を電気的なオーディオ信号に変換することができる。マイク151は、電子機器100内に直接装着されず、通信可能に連結される外部装置(例えば、スマート時計)に装着され、生成された外部信号は、通信によって電子機器100に伝送される。図2には、マイク151が電子機器100の内部に含まれるように図示されているが、他の一実施形態によれば、マイク151は、別途の装置内に含まれ、電子機器100とは、有線通信または無線通信で連結される形態にも具現化される。
他の実施形態において、電子機器100及びサーバ200は、図2の構成要素よりさらに多くの構成要素を含んでもよい。例えば、電子機器100は、前述の入出力装置150のうち少なくとも一部を含むように構成されるか、あるいはトランシーバ(transceiver)、GPS(global position system)モジュール、カメラ、各種センサ、データベースのような他の構成要素をさらに含んでもよい。
図3は、一実施形態による音声制御装置のプロセッサが含みうる機能ブロックの例を図示した図面であり、図4は、一実施形態によって、音声制御装置が遂行することができる動作方法の例を図示したフローチャートである。
図3に図示されているように、音声制御装置100のプロセッサ120は、オーディオ処理部121、キーワード検出部122、話者特徴ベクトル抽出部123、ウェークアップ判断部124、音声認識部125及び機能部126を含みうる。かようなプロセッサ120及び機能ブロック121ないし126のうち少なくとも一部は、図4に図示された動作方法が含む段階(S110ないしS190)を遂行するように、音声制御装置100を制御することができる。例えば、プロセッサ120、及びプロセッサ120の機能ブロック121ないし126のうち少なくとも一部は、音声制御装置100のメモリ110が含む運用体制のコードと、少なくとも1つのプログラムコードによる命令と、を実行するようにも具現化される。
図3に図示された機能ブロック121ないし126の一部または全部は、特定機能を行うハードウェア構成及び/またはソフトウェア構成にも具現化される。図3に図示された機能ブロック121ないし126が遂行する機能は、1以上のマイクロプロセッサによって具現化されるか、あるいは当該機能のための回路構成によっても具現化される。図3に図示された機能ブロック121ないし126の一部または全部は、プロセッサ120で実行される多様なプログラミング言語またはスクリプト言語で構成されたソフトウェアモジュールでもある。例えば、オーディオ処理部121とキーワード検出部122は、デジタル信号処理器(DSP)によって具現化され、話者特徴ベクトル抽出部123、ウェークアップ判断部124及び音声認識部125は、ソフトウェアモジュールによっても具現化される。
オーディオ処理部121は、周辺音に対応するオーディオ信号を受信し、オーディオストリームデータを生成する。オーディオ処理部121は、マイク151のような入力装置から、周辺音に対応するオーディオ信号を受信することができる。マイク151は、音声制御装置100に通信で連結される周辺装置に含まれ、オーディオ処理部121は、マイク151で生成されたオーディオ信号を通信で受信することができる。該周辺音は、ユーザが発話した音声だけではなく、背景音を含む。従って、オーディオ信号には、音声信号だけではなく、背景音信号も含まれる。該背景音信号は、キーワード検出及び音声認識において、ノイズに該当する。
オーディオ処理部121は、連続的に受信されるオーディオ信号に対応するオーディオストリームデータを生成することができる。オーディオ処理部121は、オーディオ信号をフィルタリングしてデジタル化し、オーディオストリームデータを生成することができる。オーディオ処理部121は、オーディオ信号をフィルタリングしてノイズ信号を除去し、背景音信号に比べ、音声信号を増幅することができる。また、オーディオ処理部121は、オーディオ信号から音声信号のエコーを除去することもできる。
オーディオ処理部121は、音声制御装置100がスリープモードで動作するときにも、オーディオ信号を受信するために、常時動作することができる。オーディオ処理部121は、音声制御装置100がスリープモードで動作するとき、低い動作周波数で動作し、音声制御装置100が正常モードで動作するときには、高い動作周波数で動作することができる。
メモリ110は、オーディオ処理部121で生成されたオーディオストリームデータを一時的に保存することができる。オーディオ処理部121は、メモリ110を利用して、オーディオストリームデータをバッファリングすることができる。メモリ110には、キーワードを含むオーディオデータだけではなく、キーワードが検出される前のオーディオデータが共に保存される。最近のオーディオデータをメモリ110に保存するために、メモリ110に最も前に保存されたオーディオデータが削除される。メモリ110に割り当てられた大きさが同一であるならば、常時同一期間のオーディオデータが保存される。メモリ110に保存されたオーディオデータに該当する前記期間は、キーワードを発声する時間より長いことが望ましい。
本発明の他の実施形態によれば、メモリ110は、オーディオ処理部121で生成されたオーディオストリームに係わる話者特徴ベクトルを抽出して保存することができる。そのとき、該話者特徴ベクトルは、特定長のオーディオストリームに対して抽出して保存される。前述のように、最近生成されたオーディオストリームに係わる話者特徴ベクトルを保存するために、最も前に保存された話者特徴ベクトルが削除される。
キーワード検出部122は、オーディオ処理部121で生成されたオーディオストリームデータから、既定義の(即ち、所定の)キーワードに対応する候補キーワードを検出する。キーワード検出部122は、メモリ110に一時的に保存されたオーディオストリームデータから、既定義のキーワードに対応する候補キーワードを検出することができる。既定義のキーワードは、複数個存在することも可能であり、複数の既定義のキーワードは、キーワード保存所110aに保存される。キーワード保存所110aは、メモリ110に含まれてもよい。
候補キーワードは、キーワード検出部122から、オーディオストリームデータのうちキーワードとして検出したものを意味する。候補キーワードは、キーワードと同一であっても良いし、該キーワードと類似して発音される他の単語であっても良い。例えば、該キーワードが「クローバ」である場合、候補キーワードは、「グローバル」であっても良い。すなわち、ユーザが「グローバル」を含んだ文章を発声した場合、キーワード検出部122は、オーディオストリームデータから、「グローバル」を「クローバ」と誤認して検出するかもしれないからである。かように検出された「グローバル」は、候補キーワードに該当する。
キーワード検出部122は、オーディオストリームデータを、既知のキーワードデータと比較し、オーディオストリームデータ内に、キーワードに対応する音声が含まれる可能性を計算することができる。キーワード検出部122は、オーディオストリームデータから、フィルタバンクエネルギー(filter bank energy)またはメル周波数ケプストラム係数(MFCC:Mel−frequency cepstram coefficients)のようなオーディオ特徴を抽出することができる。キーワード検出部122は、分類ウィンドウ(classifying window)を利用して、例えば、サポートベクトルマシン(support vector machine)または神経網(neural network)を利用して、かようなオーディオ特徴を処理することができる。該オーディオ特徴の処理に基づいて、キーワード検出部122は、オーディオストリームデータ内にキーワードが含まれる可能性を計算することができる。キーワード検出部122は、前記可能性が、既設定基準値(即ち、所定の基準値)より高い場合、オーディオストリームデータ内にキーワードが含まれていると判断することにより、候補キーワードを検出することができる。
キーワード検出部122は、キーワードデータに対応する音声サンプルを利用して人工神経網(例えば、人工知能のためのニューラルネットワーク)を生成し、生成された神経網を利用して、オーディオストリームデータからキーワードを検出するように、トレーニングされる。キーワード検出部122は、オーディオストリームデータ内のフレームごとに、それぞれキーワードを構成する音素の確率、またはキーワードの全体的な確率を計算することができる。キーワード検出部122は、オーディオストリームデータから、各音素に該当する確率シーケンス、またはキーワード自体の確率を出力することができる。そのシーケンスまたは確率を基に、キーワード検出部122は、オーディオストリームデータ内にキーワードが含まれる可能性を計算することができ、その可能性が既設定基準値以上である場合、候補キーワードが検出されたと判断することができる。前述の方式は、例示的なものであり、キーワード検出部122の動作は、多様な方式を介しても具現化される。
また、キーワード検出部122は、オーディオストリームデータ内のフレームごとに、オーディオ特徴を抽出することにより、当該フレームのオーディオデータが、人の音声に該当する可能性と、背景音に該当する可能性とを算出することができる。キーワード検出部122は、人の音声に該当する可能性と、背景音に該当する可能性とを比較し、当該フレームのオーディオデータが人の音声に該当すると判断することができる。例えば、キーワード検出部122は、当該フレームのオーディオデータが人の音声に該当する可能性が、背景音に該当する可能性より、既設定基準値を超えて高い場合、当該フレームのオーディオデータが人の音声に対応すると判断することができる。
キーワード検出部122は、オーディオストリームデータから候補キーワードが検出された区間を特定することができ、候補キーワードが検出された区間の始点及び終点を決定することができる。オーディオストリームデータから候補キーワードが検出された区間は、キーワード検出区間、現在区間または第1区間とされる。オーディオストリームデータにおいて第1区間に該当するオーディオデータは、第1オーディオデータとする。キーワード検出部122は、候補キーワードが検出された区間の終りを終点と決定することができる。他の例によれば、キーワード検出部122は、候補キーワードが検出された後、既設定時間(例えば、0.5秒)の黙音が発生するまで待った後、第1区間に黙音区間が含まれるように、第1区間の終点を決定するか、あるいは黙音期間が含まれないように、第1区間の終点を決定することができる。
話者特徴ベクトル抽出部123は、メモリ110に一時的に保存されたオーディオストリームデータにおいて、第2区間に該当する第2オーディオデータを、メモリ110から読み取る。第2区間は、第1区間の以前区間であり、第2区間の終点は、第1区間の始点と同一でもある。第2区間は、以前区間とされる。第2区間の長さは、検出された候補キーワードに対応するキーワードによって可変的にも設定される。他の例によれば、第2区間の長さは、固定的にも設定される。さらに他の例によれば、第2区間の長さは、キーワード検出性能が最適化されるように、適応的に可変される。例えば、マイク151が出力するオーディオ信号が、「四葉のクローバー」であり、候補キーワードが「クローバー」である場合、第2オーディオデータは、「四葉の」という音声に対応する。
話者特徴ベクトル抽出部123は、第1区間に該当する第1オーディオデータの第1話者特徴ベクトルと、第2区間に該当する第2オーディオデータの第2話者特徴ベクトルと、を抽出する。話者特徴ベクトル抽出部123は、話者認識にロバストな話者特徴ベクトルをオーディオデータから抽出することができる。話者特徴ベクトル抽出部123は、時間ドメイン(time domain)の音声信号を、周波数ドメイン(frequency domain)の信号に変換し、変換された信号の周波数エネルギーを、互いに異なるように変形することにより、話者特徴ベクトルを抽出することができる。例えば、該話者特徴ベクトルは、メル周波数ケプストラム係数(MFCC)またはフィルタバンクエネルギーを基に抽出される、それらに限定されるものはではなく、多様な方式で、オーディオデータから話者特徴ベクトルを抽出することができる。
話者特徴ベクトル抽出部123は、一般的には、スリープモードで動作することができる。キーワード検出部122は、オーディオストリームデータから候補キーワードを検出すると、話者特徴ベクトル抽出部123をウェークアップさせることができる。キーワード検出部122は、オーディオストリームデータから候補キーワードを検出すると、話者特徴ベクトル抽出部123にウェークアップ信号を送信することができる。話者特徴ベクトル抽出部123は、キーワード検出部122において、候補キーワードが検出されたということを示すウェークアップ信号に応答してウェークアップされる。
一実施形態によれば、話者特徴ベクトル抽出部123は、オーディオデータの各フレームごとに、フレーム特徴ベクトルを抽出し、抽出されたフレーム特徴ベクトルを正規化及び平均化し、オーディオデータを代表する話者特徴ベクトルを抽出することができる。抽出されたフレーム特徴ベクトルの正規化に、L2正規化が使用される。抽出されたフレーム特徴ベクトルの平均化は、オーディオデータ内の全フレームそれぞれに対して抽出されたフレーム特徴ベクトルを正規化して生成される正規化されたフレーム特徴ベクトルの平均を算出することによって達成される。
例えば、話者特徴ベクトル抽出部123は、第1オーディオデータの各フレームごとに、第1フレーム特徴ベクトルを抽出し、抽出された第1フレーム特徴ベクトルを正規化及び平均化し、第1オーディオデータを代表する前記第1話者特徴ベクトルを抽出することができる。また、話者特徴ベクトル抽出部123は、第2オーディオデータの各フレームごとに、第2フレーム特徴ベクトルを抽出し、抽出された第2フレーム特徴ベクトルを正規化及び平均化し、第2オーディオデータを代表する第2話者特徴ベクトルを抽出することができる。
他の実施形態によれば、話者特徴ベクトル抽出部123は、オーディオデータ内の全フレームについて、フレーム特徴ベクトルをそれぞれ抽出するのではなく、オーディオデータ内の一部フレームについて、フレーム特徴ベクトルをそれぞれ抽出することができる。前記一部フレームは、当該フレームのオーディオデータが、ユーザの音声データである可能性が高いフレームにおいて、音声フレームとして選択される。かような音声フレームの選択は、キーワード検出部122によってなされる。キーワード検出部122は、オーディオストリームデータの各フレームごとに、人音声である第1確率と、背景音である第2確率とを計算することができる。キーワード検出部122は、各フレームのオーディオデータが人音声である第1確率が、背景音である第2確率より、既設定基準値を超えて高いフレームを、音声フレームと決定することができる。キーワード検出部122は、当該フレームが、音声フレームであるか否かということを示すフラグまたはビットをオーディオストリームデータの各フレームに関連づけてメモリ110に保存することができる。
話者特徴ベクトル抽出部123は、第1オーディデータ及び第2オーディオデータをメモリ110から読み取るとき、フラグまたはビットを共に読み取ることにより、当該フレームが音声フレームであるか否かということを知ることができる。
話者特徴ベクトル抽出部123は、オーディオデータ内のフレーム中、音声フレームと決定されたフレームそれぞれについてフレーム特徴ベクトルを抽出し、抽出された第1フレーム特徴ベクトルを正規化及び平均化し、オーディオデータを代表する話者特徴ベクトルを抽出することができる。例えば、話者特徴ベクトル抽出部123は、第1オーディオデータ内のフレーム中、音声フレームと決定されたフレームそれぞれについて、第1フレーム特徴ベクトルを抽出し、抽出された第1フレーム特徴ベクトルを正規化及び平均化し、第1オーディオデータを代表する前記第1話者特徴ベクトルを抽出することができる。また、話者特徴ベクトル抽出部123は、第2オーディオデータ内のフレーム中、音声フレームと決定されたフレームそれぞれについて、第2フレーム特徴ベクトルを抽出し、抽出された第2フレーム特徴ベクトルを正規化及び平均化し、第2オーディオデータを代表する第2話者特徴ベクトルを抽出することができる。
ウェークアップ判断部124は、話者特徴ベクトル抽出部123で抽出された第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度を基に、第1オーディオデータに当該キーワードが含まれていたか否かということ、すなわち、第1区間のオーディオ信号に当該キーワードが含まれていたか否かということを判断する。ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度を、既設定基準値と比較し、類似度が基準値以下である場合、第1区間の第1オーディオデータに当該キーワードが含まれていると判断することができる。
音声制御装置100がキーワードを誤認識する代表的な場合は、ユーザの音声中に、キーワードと類似した発音の単語が、音声中間に位置する場合である。例えば、キーワードが「クローバ」である場合、ユーザが他者に「四葉のクローバーをどうやって見つけられるの」という場合にも、音声制御装置100は、「クローバー」に反応してウェークアップされ、ユーザが意図していない動作を遂行してしまうかもしれない。さらには、テレビニュースにおいてアナウンサーが、「JNグローバルの時価総額は、…」という場合にも、音声制御装置100は、「グローバル」に反応してウェークアップされてしまうかもしれない。そのようなキーワードの誤認識が発生してしまうことを防止するために、一実施形態によれば、キーワードと類似した発音の単語は、音声の最も先に位置する場合にのみ音声制御装置100が反応する。また、周辺背景騒音が多い環境や、他の人々が話し合っている環境では、ユーザがキーワードに該当する音声を最も先に発声しても、周辺背景騒音や、他の人々の対話により、ユーザがキーワードに該当する音声を最も先に発声したということが感知されないこともある。一実施形態によれば、音声制御装置100は、候補キーワードが検出された区間の第1話者特徴ベクトルと、以前区間の第2話者特徴ベクトルとを抽出し、第1話者特徴ベクトルと第2話者特徴ベクトルとが互いに異なる場合には、ユーザがキーワードに該当する音声を最も先に発声したと判断することができる。
かような判断のために、ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度が既設定基準値以下である場合には、ユーザがキーワードに該当する音声を最も先に発声したと判断することができる。すなわち、ウェークアップ判断部124は、第1区間の第1オーディオデータに当該キーワードが含まれていると判断することができ、音声制御装置100の一部機能をウェークアップさせることができる。第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度が高いということは、第1オーディオデータに対応する音声を放った者と、第2オーディオデータに対応する音声を放った者とが同一である可能性が高いというのである。
第2オーディオデータが黙音に該当する場合、話者特徴ベクトル抽出部123は、第2オーディオデータから、黙音に該当する第2話者特徴ベクトルを抽出することができる。話者特徴ベクトル抽出部123は、第1オーディオデータから、ユーザの音声に該当する第1話者特徴ベクトルを抽出するので、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度は、低い。
音声認識部125は、オーディオ処理部121で生成されたオーディオストリームデータにおいて第3区間に該当する第3オーディオデータを受信し、第3オーディオデータを音声認識することができる。他の例によれば、音声認識部125は、第3オーディオデータが、外部(例えば、サーバ200)で音声認識されるように、第3オーディオデータを外部に伝送し、音声認識結果を受信することができる。
機能部126は、キーワードに対応する機能を遂行することができる。例えば、音声制御装置100がスマートスピーカである場合、機能部126は、音楽再生部、音声情報提供部、周辺機器制御部などを含み、検出されたキーワードに対応する機能を遂行することができる。音声制御装置100がスマートフォンである場合、機能部126は、電話連結部、文字送受信部、インターネット検索部などを含み、検出されたキーワードに対応する機能を遂行することができる。機能部126は、音声制御装置100の種類によって多様に構成される。機能部126は、音声制御装置100が行うことができる多様な機能を遂行するための機能ブロックを包括的に示したものである。
図3に図示された音声制御装置100は、音声認識部125を含むように図示されているが、それは例示的なものであり、音声制御装置100は、音声認識部125を含まず、図2に図示されたサーバ200が、音声認識機能を代わりに遂行することができる。その場合、図1に図示されているように、音声制御装置100は、ネットワーク300を介して、音声認識機能を遂行するサーバ200に接続される。音声制御装置100は、音声認識が必要な音声信号を含む音声ファイルをサーバ200に提供することができ、サーバ200は、音声ファイル内の音声信号に対して音声認識を行い、音声信号に対応する文字列を生成することができる。サーバ200は、生成された文字列を、ネットワーク300を介して、音声制御装置100に送信することができる。しかし、以下では、音声制御装置100が音声認識機能を遂行する音声認識部125を含むと仮定して説明する。
プロセッサ120は、動作方法のためのプログラムファイルに保存されたプログラムコードをメモリ110にローディングすることができる。例えば、音声制御装置100には、プログラムファイルによって、プログラムがインストール(install)される。そのとき、音声制御装置100にインストールされたプログラムが実行される場合、プロセッサ120は、プログラムコードをメモリ110にローディングすることができる。そのとき、プロセッサ120が含むオーディオ処理部121、キーワード検出部122、話者特徴ベクトル抽出部123、ウェークアップ判断部124、音声認識部125及び機能部126のうち少なくとも一部のそれぞれは、メモリ110にローディングされたプログラムコードのうち対応するコードによる命令を実行し、図4の段階(S110ないしS190)を実行するようにも具現化される。
その後、プロセッサ120の機能ブロック121ないし126が、音声制御装置100を制御することは、プロセッサ120が音声制御装置100の他の構成要素を制御することと理解される。例えば、プロセッサ120は、音声制御装置100が含む通信モジュール130を制御し、音声制御装置100が、例えば、サーバ200と通信するように、音声制御装置100を制御することができる。
段階(S110)において、プロセッサ120、例えば、オーディオ処理部121は、周辺音に対応するオーディオ信号を受信する。オーディオ処理部121は、持続的に周辺音に対応するオーディオ信号を受信することができる。オーディオ信号は、マイク151のような入力装置が周辺音に対応して生成した電気信号でもある。
段階(S120)において、プロセッサ120、例えば、オーディオ処理部121は、マイク151からのオーディオ信号を基に、オーディオストリームデータを生成する。オーディオストリームデータは、持続的に受信されるオーディオ信号に対応したものである。該オーディオストリームデータは、オーディオ信号をフィルタリングしてデジタル化させることによって生成されるデータでもある。
段階(S130)において、プロセッサ120、例えば、オーディオ処理部121は、段階(S120)で生成されるオーディオストリームデータをメモリ110に一時的に保存する。メモリ110は、限定された大きさを有し、現在から最近一定時間の間のオーディオ信号に対応するオーディオストリームデータの一部が、メモリ110に一時的に保存される。新たなオーディオストリームデータが生成されると、メモリ110に保存されたオーディオストリームデータのうち最も古いデータが削除され、メモリ110内の削除によって空くようになった空間に、新たなオーディオストリームデータが保存される。
段階(S140)において、プロセッサ120、例えば、キーワード検出部122は、段階(S120)で生成されるオーディオストリームデータから、既定義のキーワードに対応する候補キーワードを検出する。該候補キーワードは、既定義のキーワードと類似した発音を有する単語であり、段階(S140)において、キーワード検出部122でキーワードとして検出されたワードを指す。
段階(S150)において、プロセッサ120、例えば、キーワード検出部122は、オーディオストリームデータから候補キーワードが検出されたキーワード検出区間を識別し、キーワード検出区間の始点及び終点を決定する。キーワード検出区間は、現在区間とされる。オーディオストリームデータで現在区間に対応するデータは、第1オーディオデータとされる。
段階(S160)において、プロセッサ120、例えば、話者特徴ベクトル抽出部123は、メモリ110から、以前区間に該当する第2オーディオデータを読み取る。以前区間は、現在区間のすぐ直前区間であり、以前区間の終点は、現在区間の始点と同一でもある。話者特徴ベクトル抽出部123は、メモリ110から、第1オーディオデータも共に読み取ることができる。
段階(S170)において、プロセッサ120、例えば、話者特徴ベクトル抽出部123は、第1オーディオデータから第1話者特徴ベクトルを抽出し、第2オーディオデータから第2話者特徴ベクトルを抽出する。第1話者特徴ベクトルは、第1オーディオデータに対応する音声の話者を識別するための指標であり、第2話者特徴ベクトルは、第2オーディオデータに対応する音声の話者を識別するための指標である。プロセッサ120、例えば、ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度を基に、第1オーディオデータにキーワードが含まれていたか否かということを判断することができる。ウェークアップ判断部124は、第1オーディオデータにキーワードが含まれていると判断する場合、音声制御装置100の一部構成要素をウェークアップさせることができる。
段階(S180)において、プロセッサ120、例えば、ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度を既設定基準値と比較する。
ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度が既設定基準値以下である場合、現在区間の第1オーディオデータの話者と、以前区間の第2オーディオデータの話者とが互いに異なるということであるので、第1オーディオデータにキーワードが含まれていると判断することができる。その場合、段階(S190)でのように、プロセッサ120、例えば、ウェークアップ判断部124は、音声制御装置100の一部構成要素をウェークアップさせることができる。
しかし、ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度が既設定基準値より高い場合、現在区間の第1オーディオデータの話者と、以前区間の第2オーディオデータの話者とが互いに同一であるということであるので、第1オーディオデータにキーワードが含まれていないと判断し、ウェークアップを進めない。その場合、段階(S110)に進み、周辺音に対応するオーディオ信号を受信する。段階(S110)において、オーディオ信号受信は、段階(S120−S190)を遂行するときにも続けられる。
図3のキーワード保存所110aには、既定義の複数のキーワードが保存される。かようなキーワードは、ウェークアップキーワードでもあり、単独命令キーワードでもある。該ウェークアップキーワードは、音声制御装置100の一部機能をウェークアップさせるためのものである。一般的には、ユーザは、ウェークアップキーワードを発話した後、所望の自然語音声命令を発話する。音声制御装置100は、自然語音声命令を音声認識し、自然語音声命令に対応する動作及び機能を遂行することができる。
単独命令キーワードは、音声制御装置100が、特定動作または機能を直接遂行するためのものであり、例えば、「再生」、「中止」のように、既定義の簡単な単語でもある。音声制御装置100は、単独命令キーワードが受信されると、単独命令キーワードに該当する機能をウェークアップさせ、当該機能を遂行することができる。
以下では、オーディオストリームデータから単独命令キーワードに対応する候補キーワードを検出した場合、及びオーディオストリームデータからウェークアップキーワードに対応する候補キーワードを検出した場合のそれぞれについて説明する。
図5は、他の実施形態によって、音声制御装置が遂行することができる動作方法の例を図示したフローチャートである。
図6Aは、一実施形態による音声制御装置が、図5の動作方法を実行する場合、単独命令キーワードが発話される例を図示し、図6Bは、一実施形態による音声制御装置が、図5の動作方法を実行する場合、一般対話音声が発話される例を図示する。
図5の動作方法は、図4の動作方法と実質的に同一である段階を含む。図5の段階のうち、図4の段階と実質的に同一である段階については、詳細に説明しない。図6A及び図6Bには、オーディオストリームデータに対応するオーディオ信号と、オーディオ信号に対応するユーザの音声とが図示される。図6Aには、音声「中止」に対応するオーディオ信号が図示され、図6Bには、音声「ここで停止して」に対応するオーディオ信号が図示される。
図6A及び図6Bと共に図5を参照すれば、段階(S210)において、プロセッサ120、例えば、オーディオ処理部121は、周辺音に対応するオーディオ信号を受信する。
段階(S220)において、プロセッサ120、例えば、オーディオ処理部121は、マイク151からのオーディオ信号を基に、オーディオストリームデータを生成する。
段階(S230)において、プロセッサ120、例えば、オーディオ処理部121は、段階(S220)で生成されるオーディオストリームデータをメモリ110に一時的に保存する。
段階(S240)において、プロセッサ120、例えば、キーワード検出部122は、段階(S220)で生成されるオーディオストリームデータから、既定義の単独命令キーワードに対応する候補キーワードを検出する。単独命令キーワードは、音声制御装置100の動作を直接制御することができる音声キーワードでもある。例えば、単独命令キーワードは、図6Aに図示されているように、「中止」のような単語でもある。その場合、音声制御装置100は、例えば、音楽や動画を再生している。
図6Aの例において、キーワード検出部122は、オーディオ信号から「中止」という候補キーワードを検出することができる。図6Bの例において、キーワード検出部122は、オーディオ信号から、「中止」というキーワードと類似した発音を有する単語である「停止」という候補キーワードを検出することができる。
段階(S250)において、プロセッサ120、例えば、キーワード検出部122は、オーディオストリームデータから候補キーワードが検出されたキーワード検出区間を識別し、キーワード検出区間の始点及び終点を決定する。キーワード検出区間は、現在区間とされる。オーディオストリームデータにおいて、現在区間に対応するデータは、第1オーディオデータとされる。
図6Aの例において、キーワード検出部122は、「中止」という候補キーワードを検出した区間を現在区間と識別し、現在区間の始点及び終点を決定することができる。前記現在区間に対応するオーディオデータは、第1オーディオデータAD1とされる。
図6Bの例において、キーワード検出部122は、「停止」という候補キーワードを検出した区間を現在区間と識別し、現在区間の始点及び終点を決定することができる。前記現在区間に対応するオーディオデータは、第1オーディオデータAD1とされる。
また、段階(S250)において、プロセッサ120、例えば、キーワード検出部122は、検出された候補キーワードが、ウェークアップキーワード及び単独命令キーワードのうちいずれのキーワードに対応する候補キーワードであるかということを判断することができる。図6A及び図6Bの例において、キーワード検出部122は、検出された候補キーワード、すなわち、「中止」及び「停止」が単独命令キーワードに対応する候補キーワードであるということを判断することができる。
段階(S260)において、プロセッサ120、例えば、話者特徴ベクトル抽出部123は、メモリ110から、以前区間に該当する第2オーディオデータを読み取る。以前区間は、現在区間のすぐ直前区間であり、以前区間の終点は、現在区間の始点と同一でもある。話者特徴ベクトル抽出部123は、メモリ110から、第1オーディオデータも共に読み取ることができる。
図6Aの例において、話者特徴ベクトル抽出部123は、現在区間のすぐ直前区間である以前区間に対応する第2オーディオデータAD2をメモリ110から読み取ることができる。図6Bの例において、話者特徴ベクトル抽出部123は、現在区間のすぐ直前区間である以前区間に対応する第2オーディオデータAD2を、メモリ110から読み取ることができる。図6Bの例において、第2オーディオデータAD2は「こで」という音声に対応する。以前区間の長さは、検出された候補キーワードによって可変的にも設定される。
段階(S270)において、プロセッサ120、例えば、話者特徴ベクトル抽出部123は、オーディオ処理部121から、現在区間後の次の区間に該当する第3オーディオデータを受信する。次の区間は、現在区間のすぐ次の区間であり、次の区間の始点は、現在区間の終点と同一でもある。
図6Aの例において、話者特徴ベクトル抽出部123は、現在区間直後の次の区間に対応する第3オーディオデータAD3を、オーディオ処理部121から受信することができる。図6Bの例において、話者特徴ベクトル抽出部123は、現在区間直後の次の区間に対応する第3オーディオデータAD3を、オーディオ処理部121から受信することができる。図6Bの例において、第3オーディオデータAD3は、「して」という音声に対応する。次の区間の長さは、検出された候補キーワードによって可変的にも設定される。
段階(S280)において、プロセッサ120、例えば、話者特徴ベクトル抽出部123は、第オーディオデータ1ないし第3オーディオデータから、第1話者特徴ベクトルないし第3話者特徴ベクトルをそれぞれ抽出する。第1話者特徴ベクトルないし第3話者特徴ベクトルそれぞれは、第オーディオデータ1ないし第3オーディオデータに対応する音声の話者を識別するための指標である。プロセッサ120、例えば、ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度、及び第1話者特徴ベクトルと第3話者特徴ベクトルとの類似度を基に、第1オーディオデータに単独命令キーワードが含まれていたか否かということを判断することができる。ウェークアップ判断部124は、第1オーディオデータに、単独命令キーワードが含まれていると判断する場合、音声制御装置100の一部構成要素をウェークアップさせることができる。
図6Aの例において、第1オーディオデータAD1に対応する第1話者特徴ベクトルは、「中止」という音声を発声した話者を識別するための指標である。第2オーディオデータAD2と第3オーディオデータAD3は、実質的に黙音であるので、第2話者特徴ベクトル及び第3話者特徴ベクトルは、黙音に対応するベクトルを有することができる。従って、第1話者特徴ベクトルと、第2話者特徴ベクトル及び第3話者特徴ベクトルとの類似度は、低い。
他の例として、以前区間及び次の区間に、「中止」という音声を発声した話者ではない他者が音声を発声する場合、第2話者特徴ベクトル及び第3話者特徴ベクトルは、前記他者に対応したベクトルを有するので、第1話者特徴ベクトルと、第2話者特徴ベクトル及び第3話者特徴ベクトルとの類似度は、低い。
図6Bの例では、一人が「ここで停止して」と発声した。従って、「停止」に対応する第1オーディオデータAD1から抽出される第1話者特徴ベクトル、「こで」に対応する第2オーディオデータAD2から抽出される第2話者特徴ベクトル、及び「して」に対応する第3オーディオデータAD3から抽出される第3話者特徴ベクトルは、いずれも実質的に同一である話者を識別するためのベクトルであるので、第1話者特徴ベクトルないし第3話者特徴ベクトルとの類似度は、高い。
段階(S290)において、プロセッサ120、例えば、ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度を、既設定基準値と比較し、第1話者特徴ベクトルと第3話者特徴ベクトルとの類似度を既設定基準値と比較する。ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度が既設定基準値以下であり、第1話者特徴ベクトルと第3話者特徴ベクトルとの類似度が既設定基準値以下である場合、現在区間の第1オーディオデータの話者は、以前区間の第2オーディオデータの話者、及び次の区間の第3オーディオデータの話者とは異なるので、第1オーディオデータに、単独命令キーワードが含まれていると判断することができる。その場合、段階(S300)でのように、プロセッサ120、例えば、ウェークアップ判断部124は、単独命令キーワードを機能部126に提供し、機能部126は、ウェークアップ判断部124による、第1オーディオデータに単独命令キーワードが含まれているという判断に応答し、単独命令キーワードに対応する機能を遂行することができる。
図6Aの例において、第1話者特徴ベクトルは、「中止」と発声した話者に対応するベクトルであり、第2話者特徴ベクトル及び第3話者特徴ベクトルは、黙音に対応したベクトルであるので、第1話者特徴ベクトルと、第2話者特徴ベクトル及び第3話者特徴ベクトルとの類似度は、既設定基準値より低い。その場合、ウェークアップ判断部124は、第1オーディオデータAD1に、「中止」という単独命令キーワードが含まれていると判断することができる。その場合、機能部126は、前記判断に応答してウェークアップされ、「中止」という単独命令キーワードに対応する動作または機能を遂行することができる。例えば、音声制御装置100が音楽を再生しているのであれば、機能部126は、「中止」という単独命令キーワードに対応し、音楽再生を止めることができる。
しかし、ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度が、既設定基準値より高いか、あるいは第1話者特徴ベクトルと第3話者特徴ベクトルとの類似度が、既設定基準値より高い場合、現在区間の第1オーディオデータの話者が、以前区間の第2オーディオデータの話者、または次の区間の第3オーディオデータの話者と同一であるということであるので、第1オーディオデータにキーワードが含まれていないと判断し、ウェークアップを進めない。その場合、段階(S210)に進み、周辺音に対応するオーディオ信号を受信する。
図6Bの例において、一人が「ここで停止して」と発声したので、第1話者特徴ベクトルないし第3話者特徴ベクトルの類似度は、高い。図6Bの例における発声である「ここに停止して」には、音声制御装置を制御するか、あるいはウェークアップさせるためのキーワードが含まれていないので、ウェークアップ判断部124は、第1オーディオデータAD1に単独命令キーワードが含まれていないと判断し、機能部126が「停止」または「中止」に該当する機能や動作を遂行しないようにする。
一般的な技術によれば、音声制御装置は、「ここで停止して」という発声のうち「停止」という音声を検出し、「停止」に該当する機能や動作を遂行することが技術的には可能である。かような機能や動作は、ユーザが意図していないものであり、ユーザは、音声制御装置を使用するときに不都合を感じる。しかし、一実施形態によれば、音声制御装置100は、ユーザの音声から、単独命令キーワードを正確に認識することができるために、一般的な技術とは異なり、誤動作を遂行しない。
図7は、さらに他の実施形態によって、音声制御装置が遂行することができる動作方法の例を図示したフローチャートである。
図8Aは、一実施形態による音声制御装置が、図7の動作方法を実行する場合、ウェークアップキーワード及び自然語音声命令が発話される例を図示し、図8Bは、一実施形態による音声制御装置が、図7の動作方法を実行する場合、一般対話音声が発話される例を図示する。
図7の動作方法は、図4の動作方法と実質的に同一である段階を含む。図7の段階のうち、図4の段階と実質的に同一である段階については、詳細に説明しない。図6A及び図6Bには、オーディオストリームデータに対応するオーディオ信号と、オーディオ信号に対応するユーザの音声とが図示される。図8Aには、ウェークアップキーワード「クローバ」と、自然語音声命令「明日の天気を教えて」とに対応するオーディオ信号が図示され、図8Bには「四葉のクローバーをどうやって見つけられるの」という対話音声に対応するオーディオ信号が図示される。
図8A及び図8Bと共に、図7を参照すれば、段階(S410)において、プロセッサ120、例えば、オーディオ処理部121は、周辺音に対応するオーディオ信号を受信する。段階(S420)において、プロセッサ120、例えば、オーディオ処理部121は、マイク151からのオーディオ信号を基に、オーディオストリームデータを生成する。段階(S430)において、プロセッサ120、例えば、オーディオ処理部121は、段階(S120)で生成されるオーディオストリームデータを、メモリ110に一時的に保存する。
段階(S440)において、プロセッサ120、例えば、キーワード検出部122は、段階(S420)で生成されるオーディオストリームデータから、既定義のウェークアップキーワードに対応する候補キーワードを検出する。該ウェークアップキーワードは、スリープモード状態の音声制御装置をウェークアップモードに転換することができる音声に基づくキーワードである。例えば、ウェークアップキーワードは、「クローバ」、「ハイコンピュータ」のような音声キーワードでもある。
図8Aの例において、キーワード検出部122は、オーディオ信号から、「クローバ」という候補キーワードを検出することができる。図8Bの例において、キーワード検出部122は、オーディオ信号から、「クローバ」というキーワードと類似した発音を有する単語である「クローバー」という候補キーワードを検出することができる。
段階(S450)において、プロセッサ120、例えば、キーワード検出部122は、オーディオストリームデータから候補キーワードが検出されたキーワード検出区間を識別し、キーワード検出区間の始点及び終点を決定する。キーワード検出区間は、現在区間とされる。オーディオストリームデータで現在区間に対応するデータは、第1オーディオデータとされる。
図8Aの例において、キーワード検出部122は、「クローバ」という候補キーワードを検出した区間を現在区間と識別し、現在区間の始点及び終点を決定することができる。前記現在区間に対応するオーディオデータは、第1オーディオデータAD1とされる。図8Bの例において、キーワード検出部122は、「クローバー」という候補キーワードを検出した区間を現在区間と識別し、現在区間の始点及び終点を決定することができる。前記現在区間に対応するオーディオデータは、第1オーディオデータAD1とされる。
また、段階(S450)において、プロセッサ120、例えば、キーワード検出部122は、検出された候補キーワードがウェークアップキーワード及び単独命令キーワードのうちいずれのキーワードに対応する候補キーワードであるかということを判断することができる。図8A及び図8Bの例において、キーワード検出部122は、検出された候補キーワード、すなわち、「クローバ」及び「クローバー」がウェークアップキーワードに対応する候補キーワードであるということを判断することができる。
段階(S460)において、プロセッサ120、例えば、話者特徴ベクトル抽出部123は、メモリ110から、以前区間に該当する第2オーディオデータを読み取る。以前区間は、現在区間のすぐ直前区間であり、以前区間の終点は、現在区間の始点と同一でもある。話者特徴ベクトル抽出部123は、メモリ110から、第1オーディオデータも共に読み取ることができる。
図8Aの例において、話者特徴ベクトル抽出部123は、現在区間のすぐ直前区間である以前区間に対応する第2オーディオデータAD2を、メモリ110から読み取ることができる。図8Bの例において、話者特徴ベクトル抽出部123は、現在区間のすぐ直前区間である以前区間に対応する第2オーディオデータAD2を、メモリ110から読み取ることができる。図8Bの例において、第2オーディオデータAD2は「、四葉の」という音声に対応する。以前区間の長さは、検出された候補キーワードによって可変的にも設定される。
段階(S470)において、プロセッサ120、例えば、話者特徴ベクトル抽出部123は、第1オーディデータ及び第2オーディオデータから、第1話者特徴ベクトル及び第2話者特徴ベクトルをそれぞれ抽出する。プロセッサ120、例えば、ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度を基に、第1オーディオデータに、ウェークアップキーワードが含まれていたか否かということを判断することができる。ウェークアップ判断部124は、第1オーディオデータにウェークアップキーワードが含まれていると判断する場合、音声制御装置100の一部構成要素をウェークアップさせることができる。
図8Aの例において、第1オーディオデータAD1に対応する第1話者特徴ベクトルは、「クローバ」という音声を発声した話者を識別するための指標である。第2オーディオデータAD2は、実質的に黙音であるので、第2話者特徴ベクトルは、黙音に対応するベクトルを有することができる。従って、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度は、低い。
他の例として、以前区間に「クローバ」という音声を発声した話者ではない他者が音声を発声する場合、第2話者特徴ベクトルは、前記他者に対応したベクトルを有するので、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度は、低い。
図8Bの例では、一人が「四葉のクローバーをどうやって見つけられるの」と発声した。従って、「クローバー」に対応する第1オーディオデータAD1から抽出される第1話者特徴ベクトルと、「四葉の」に対応する第2オーディオデータAD2から抽出される第2話者特徴ベクトルは、いずれも実質的に同一である話者を識別するためのベクトルであるので、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度は、高い。
段階(S480)において、プロセッサ120、例えば、ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度を既設定基準値と比較する。ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度が既設定基準値より高い場合、現在区間の第1オーディオデータの話者と、以前区間の第2オーディオデータの話者とが互いに同一であるということであるので、第1オーディオデータにキーワードが含まれていないと判断し、ウェークアップを進めない。その場合、段階(S410)に進み、プロセッサ120、例えば、オーディオ処理部121は、周辺音に対応するオーディオ信号を受信する。
図8Bの例において、一人が「四葉のクローバー…」と発声したので、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度は、高い。図8Bの例において、「四葉のクローバー」と発声した者は、音声制御装置100をウェークアップさせようという意図がないと判断し、ウェークアップ判断部124は、第1オーディオデータAD1にウェークアップキーワードが含まれていないと判断し、音声制御装置100をウェークアップさせない。
ウェークアップ判断部124は、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度が、既設定基準値以下である場合、現在区間の第1オーディオデータの話者と、以前区間の第2オーディオデータの話者とが互いに異なるということであるので、第1オーディオデータにキーワードが含まれていると判断することができる。その場合、ウェークアップ判断部124は、音声制御装置100の一部構成要素をウェークアップさせることができる。例えば、ウェークアップ判断部124は、音声認識部125をウェークアップさせることができる。
図8Aの例において、第1話者特徴ベクトルは、「クローバ」と発声した話者に対応するベクトルであり、第2話者特徴ベクトルは、黙音に対応したベクトルであるので、第1話者特徴ベクトルと第2話者特徴ベクトルとの類似度は、既設定基準値より低い。その場合、ウェークアップ判断部124は、第1オーディオデータAD1に「クローバ」というウェークアップキーワードが含まれていると判断することができる。その場合、音声認識部125は、自然語音声命令を認識するためにウェークアップされる。
段階(S490)において、プロセッサ120、例えば、音声認識部125は、オーディオ処理部121から、現在区間後の次の区間に該当する第3オーディオデータを受信する。次の区間は、現在区間のすぐ次の区間であり、次の区間の始点は、現在区間の終点と同一でもある。
音声認識部125は、第3オーディオデータにおいて、既設定長の黙音が検出されるとき、次の区間の終点を決定することができる。音声認識部125は、第3オーディオデータを音声認識することができる。音声認識部125は、多様な方式で、第3オーディオデータを音声認識することができる。他の例によれば、音声認識部125は、第3オーディオデータの音声認識結果を得るために、外部装置、例えば、図2に図示される音声認識機能を有するサーバ200に、第3オーディオデータを伝送することができる。サーバ200は、第3オーディオデータを受信し、第3オーディオデータを音声認識することにより、第3オーディオデータに対応する文字列(テキスト)を生成し、生成された文字列(テキスト)を、音声認識結果として、音声認識部125に伝送することができる。
図8Aの例において、次の区間の第3オーディオデータは、「明日の天気を教えて」のような自然語音声命令である。音声認識部125は、第3オーディオデータを直接音声認識し、音声認識結果を生成するか、あるいは第3オーディオデータが音声認識されるように、外部(例えば、サーバ200)に伝送することができる。
段階(S500)において、プロセッサ120、例えば、機能部126は、第3オーディオデータの音声認識結果に対応する機能を遂行することができる。図8Aの例において、機能部126は、明日の天気を検索して結果を提供する音声情報提供部でもあり、機能部126は、インターネットを利用して明日天気を検索し、その結果をユーザに提供することができる。機能部126は、明日の天気の検索結果を、スピーカ152を利用して音声として提供することもできる。機能部126は、第3オーディオデータの音声認識結果に応答し、ウェークアップされる。
以上で説明した本発明による実施形態は、コンピュータ上で多様な構成要素を介して実行されるコンピュータプログラムの形態に具現化され、かようなコンピュータプログラムは、コンピュータで読み取り可能な媒体に記録される。そのとき、該媒体は、コンピュータで実行可能なプログラムを続けて保存するか、あるいは実行またはダウンロードのために、臨時保存するものでもある。また、該媒体は、単一、または数個のハードウェアが結合された形態の多様な記録手段または保存手段でもあるが、あるコンピュータシステムに直接接続される媒体に限定されるものではなく、ネットワーク上に分散存在するものでもある。該媒体の例示としては、ハードディスク、フロッピィーディスク及び磁気テープのような磁気媒体;CD−ROM(compact disc read only memory)及びDVD(digital versatile disc)のような光記録媒体;フロプティカルディスク(floptical disk)のような磁気・光媒体(magneto-optical medium);及びROM(read-only memory)、RAM(random access memory)、フラッシュメモリなどを含み、プログラム命令語が保存されるように構成されたものでもある。また、他の媒体の例示として、アプリケーションを流通するアプリストアや、その他多様なソフトウェアを供給したり流通させたりするサイト、サーバなどで管理する記録媒体ないし記録媒体も挙げることができる。
本明細書において、「部」、「モジュール」などは、プロセッサまたは回路のようなハードウェア構成(hardware component)、及び/またはプロセッサのようなハードウェア構成によって実行されるソフトウェア構成(software component)でもある。例えば、「部」、「モジュール」などは、ソフトウェア構成要素、客体志向ソフトウェア構成要素、クラス構成要素及びタスク構成要素のような構成要素、プロセス、関数、属性、プロシージャ、サブルーチン、プログラムコードのセグメント、ドライバ、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ及び変数によっても具現化される。
前述の本発明の説明は、例示のためのものであり、本発明が属する技術分野の当業者であるならば、本発明の技術的思想や必須な特徴を変更せずにも、他の具体的な形態に容易に変形が可能であるということを理解することができるであろう。従って、以上で記述した実施形態は、全ての面において例示的なものであり、限定的ではないと理解しなければならない。例えば、単一型と説明されている各構成要素は、分散されて実施されもし、同様に、分散されていると説明されている構成要素も、結合された形態に実施されてもよい。
本発明の範囲は、前記詳細な説明よりは、特許請求の範囲によって示され、特許請求の範囲の意味及び範囲、そしてその均等概念から導出される全ての変更、または変形された形態が、本発明の範囲に含まれるものであると解釈されなければならない。
本発明の、キーワード誤認識を防止する音声制御装置、及びその動作方法は、例えば、音声認識関連の技術分野に効果的に適用可能である。
100 音声制御装置(電子機器)
110 メモリ
120 プロセッサ
121 オーディオ処理部
122 キーワード検出部
123 話者特徴ベクトル抽出部
124 ウェークアップ判断部
125 音声認識部
126 機能部

Claims (19)

  1. 周辺音に対応するオーディオ信号を受信し、オーディオストリームデータを生成するオーディオ処理部と、
    前記オーディオストリームデータから、所定のキーワードに対応する候補キーワードを検出し、前記オーディオストリームデータにおいて、前記候補キーワードが検出された第1オーディオデータに該当する第1区間の始点及び終点を決定するキーワード検出部と、
    前記第1オーディオデータに係わる第1話者特徴ベクトルを抽出し、前記オーディオストリームデータにおいて、前記第1区間の始点を終点にする第2区間に該当する第2オーディオデータに係わる第2話者特徴ベクトルを抽出する話者特徴ベクトル抽出部と、
    前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとの類似度を基に、前記第1オーディオデータに、前記キーワードが含まれていたか否かを判断するウェークアップ判断部と、を含む音声制御装置。
  2. 前記ウェークアップ判断部は、前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとの類似度が、既設定基準値以下である場合、前記第1オーディオデータに、前記キーワードが含まれていると判断することを特徴とする請求項1に記載の音声制御装置。
  3. 前記所定のキーワードを含む複数のキーワードを保存するキーワード保存所をさらに含み、
    前記キーワードそれぞれは、ウェークアップキーワードまたは単独命令キーワードであることを特徴とする請求項1に記載の音声制御装置。
  4. 前記キーワード検出部により、前記オーディオストリームデータから、前記単独命令キーワードに対応する前記候補キーワードが検出された場合、
    前記話者特徴ベクトル抽出部は、前記オーディオストリームデータにおいて、前記第1区間の終点を始点にする第3区間に該当する第3オーディオデータを受信し、前記第3オーディオデータの第3話者特徴ベクトルを抽出し、
    前記ウェークアップ判断部は、前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとの類似度、及び前記第1話者特徴ベクトルと前記第3話者特徴ベクトルとの類似度を基に、前記第1オーディオデータに、前記単独命令キーワードが含まれていたか否かを判断することを特徴とする請求項3に記載の音声制御装置。
  5. 前記ウェークアップ判断部は、前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとの類似度が、所定の基準値以下であり、前記第1話者特徴ベクトルと前記第3話者特徴ベクトルとの類似度が、所定の基準値以下である場合、前記第1オーディオデータに、前記単独命令キーワードが含まれていると判断することを特徴とする請求項4に記載の音声制御装置。
  6. 前記キーワード検出部により、前記オーディオストリームデータから、前記ウェークアップキーワードに対応する前記候補キーワードが検出された場合、
    前記第1オーディオデータに前記ウェークアップキーワードが含まれている旨の前記ウェークアップ判断部による判断に応答して、ウェークアップされ、前記オーディオストリームデータにおいて、前記第1区間の終点を始点にする第3区間に該当する第3オーディオデータを受信し、前記第3オーディオデータを音声認識するか、あるいは前記第3オーディオデータが音声認識されるように外部に伝送する音声認識部をさらに含むことを特徴とする請求項3に記載の音声制御装置。
  7. 前記第2区間は、前記ウェークアップキーワードによって可変的に決定されることを特徴とする請求項6に記載の音声制御装置。
  8. 前記話者特徴ベクトル抽出部は、
    前記第1オーディオデータの各フレームごとに第1フレーム特徴ベクトルを抽出し、抽出された前記第1フレーム特徴ベクトルを正規化及び平均化し、前記第1オーディオデータを代表する前記第1話者特徴ベクトルを抽出し、
    前記第2オーディオデータの各フレームごとに第2フレーム特徴ベクトルを抽出し、抽出された前記第2フレーム特徴ベクトルを正規化及び平均化し、前記第2オーディオデータを代表する前記第2話者特徴ベクトルを抽出することを特徴とする請求項1に記載の音声制御装置。
  9. 前記キーワード検出部は、前記オーディオストリームデータの各フレームごとに、人音声である第1確率と、背景音である第2確率とを計算し、前記第1確率が前記第2確率より、所定の基準値を超えて高いフレームを音声フレームと決定し、
    前記話者特徴ベクトル抽出部は、
    前記第1オーディオデータ内のフレームにおいて、音声フレームと決定されたフレームそれぞれについて、第1フレーム特徴ベクトルを抽出し、抽出された前記第1フレーム特徴ベクトルを正規化及び平均化し、前記第1オーディオデータを代表する前記第1話者特徴ベクトルを抽出し、
    前記第2オーディオデータ内のフレームにおいて、音声フレームと決定されたフレームそれぞれについて、第2フレーム特徴ベクトルを抽出し、抽出された前記第2フレーム特徴ベクトルを正規化及び平均化し、前記第2オーディオデータを代表する前記第2話者特徴ベクトルを抽出することを特徴とする請求項1に記載の音声制御装置。
  10. 前記話者特徴ベクトル抽出部は、前記キーワード検出部による前記候補キーワードの検出に応答してウェークアップされることを特徴とする請求項1に記載の音声制御装置。
  11. 周辺音に対応するオーディオ信号を受信し、オーディオストリームデータを生成する段階と、
    前記オーディオストリームデータから、所定のキーワードに対応する候補キーワードを検出し、前記オーディオストリームデータにおいて、前記候補キーワードが検出された第1オーディオデータに該当する第1区間の始点及び終点を決定する段階と、
    前記第1オーディオデータに係わる第1話者特徴ベクトルを抽出する段階と、
    前記オーディオストリームデータにおいて、前記第1区間の始点を終点にする第2区間に該当する第2オーディオデータに係わる第2話者特徴ベクトルを抽出する段階と、
    前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとの類似度を基に、前記第1オーディオデータに、前記キーワードが含まれていたか否かを判断し、ウェークアップさせるか否かを決定する段階と、を含む音声制御装置の動作方法。
  12. 前記ウェークアップさせるか否かを決定する段階は、
    前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとの類似度を所定の基準値と比較する段階と、
    前記類似度が、前記所定の基準値以下である場合、前記第1オーディオデータに、前記キーワードが含まれていると判断してウェークアップさせる段階と、
    前記類似度が、前記所定の基準値を超える場合、前記第1オーディオデータに、前記キーワードが含まれていないと判断してウェークアップさせない段階と、を含むことを特徴とする請求項11に記載の音声制御装置の動作方法。
  13. 前記検出された候補キーワードが、単独命令キーワードに対応する前記候補キーワードである場合、
    前記オーディオストリームデータにおいて、前記第1区間の終点を始点にする第3区間に該当する第3オーディオデータを受信する段階と、
    前記第3オーディオデータの第3話者特徴ベクトルを抽出する段階と、
    前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとの類似度が、所定の基準値以下であり、前記第1話者特徴ベクトルと前記第3話者特徴ベクトルとの類似度が、所定の基準値以下である場合、前記第1オーディオデータに、前記単独命令キーワードが含まれていると判断する段階と、をさらに含むことを特徴とする請求項11に記載の音声制御装置の動作方法。
  14. 前記第1オーディオデータに、前記単独命令キーワードが含まれているという判断に応答し、前記単独命令キーワードに対応する機能を遂行する段階をさらに含むことを特徴とする請求項13に記載の音声制御装置の動作方法。
  15. 前記検出されたキーワードがウェークアップキーワードに対応する前記候補キーワードである場合、
    前記第1オーディオデータに、前記ウェークアップキーワードが含まれているという判断に応答して、前記オーディオストリームデータにおいて、前記第1区間の終点を始点にする第3区間に該当する第3オーディオデータを受信する段階と、
    前記第3オーディオデータを音声認識するか、あるいは前記第3オーディオデータが音声認識されるように外部に伝送する段階と、をさらに含むことを特徴とする請求項11に記載の音声制御装置の動作方法。
  16. 前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとを抽出する段階は、
    前記第1オーディオデータの各フレームごとに第1フレーム特徴ベクトルを抽出する段階と、
    抽出された前記第1フレーム特徴ベクトルを正規化及び平均化し、前記第1オーディオデータを代表する前記第1話者特徴ベクトルを抽出する段階と、
    前記第2オーディオデータの各フレームごとに第2フレーム特徴ベクトルを抽出する段階と、
    抽出された前記第2フレーム特徴ベクトルを正規化及び平均化し、前記第2オーディオデータを代表する前記第2話者特徴ベクトルを抽出する段階と、を含むことを特徴とする請求項11に記載の音声制御装置の動作方法。
  17. 前記オーディオストリームデータの各フレームごとに、人音声である第1確率と、背景音である第2確率とを計算し、前記第1確率が前記第2確率より、所定の基準値を超えて高いフレームを音声フレームと決定する段階をさらに含み、
    前記第1話者特徴ベクトルと前記第2話者特徴ベクトルとを抽出する段階は、
    前記第1オーディオデータ内のフレームにおいて、音声フレームと決定されたフレームそれぞれについて、第1フレーム特徴ベクトルを抽出する段階と、
    抽出された前記第1フレーム特徴ベクトルを正規化及び平均化し、前記第1オーディオデータを代表する前記第1話者特徴ベクトルを抽出する段階と、
    前記第2オーディオデータ内のフレームにおいて、音声フレームと決定されたフレームそれぞれについて、第2フレーム特徴ベクトルを抽出する段階と、
    抽出された前記第2フレーム特徴ベクトルを正規化及び平均化し、前記第2オーディオデータを代表する前記第2話者特徴ベクトルを抽出する段階と、を含むことを特徴とする請求項11に記載の音声制御装置の動作方法。
  18. 音声制御装置のプロセッサに、請求項11ないし17のうちいずれか1項に記載の動作方法を実行させる命令語を含むコンピュータプログラム。
  19. 請求項18に記載のコンピュータプログラムを記録した記録媒体。
JP2018094704A 2017-05-19 2018-05-16 音声制御装置、音声制御装置の動作方法、コンピュータプログラム及び記録媒体 Active JP6510117B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2017-0062391 2017-05-19
KR1020170062391A KR101986354B1 (ko) 2017-05-19 2017-05-19 키워드 오인식을 방지하는 음성 제어 장치 및 이의 동작 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019071410A Division JP2019133182A (ja) 2017-05-19 2019-04-03 音声制御装置、音声制御方法、コンピュータプログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2018194844A true JP2018194844A (ja) 2018-12-06
JP6510117B2 JP6510117B2 (ja) 2019-05-08

Family

ID=64561798

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2018094704A Active JP6510117B2 (ja) 2017-05-19 2018-05-16 音声制御装置、音声制御装置の動作方法、コンピュータプログラム及び記録媒体
JP2019071410A Pending JP2019133182A (ja) 2017-05-19 2019-04-03 音声制御装置、音声制御方法、コンピュータプログラム及び記録媒体
JP2022000145A Granted JP2022033258A (ja) 2017-05-19 2022-01-04 音声制御装置、動作方法及びコンピュータプログラム

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2019071410A Pending JP2019133182A (ja) 2017-05-19 2019-04-03 音声制御装置、音声制御方法、コンピュータプログラム及び記録媒体
JP2022000145A Granted JP2022033258A (ja) 2017-05-19 2022-01-04 音声制御装置、動作方法及びコンピュータプログラム

Country Status (2)

Country Link
JP (3) JP6510117B2 (ja)
KR (1) KR101986354B1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109785836A (zh) * 2019-01-28 2019-05-21 三星电子(中国)研发中心 交互方法和装置
KR20190065200A (ko) * 2019-05-21 2019-06-11 엘지전자 주식회사 음성 인식 방법 및 음성 인식 장치
JP2019095526A (ja) * 2017-11-20 2019-06-20 富士通株式会社 音声処理プログラム、音声処理装置、及び音声処理方法
CN109992239A (zh) * 2019-04-15 2019-07-09 北京百度网讯科技有限公司 语音出行方法、装置、终端及存储介质
JP2019133182A (ja) * 2017-05-19 2019-08-08 ネイバー コーポレーションNAVER Corporation 音声制御装置、音声制御方法、コンピュータプログラム及び記録媒体
CN113450828A (zh) * 2021-06-25 2021-09-28 平安科技(深圳)有限公司 音乐流派的识别方法、装置、设备及存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109637531B (zh) * 2018-12-06 2020-09-15 珠海格力电器股份有限公司 一种语音控制方法、装置、存储介质及空调
WO2020122271A1 (ko) * 2018-12-11 2020-06-18 엘지전자 주식회사 디스플레이 장치
KR20220071591A (ko) * 2020-11-24 2022-05-31 삼성전자주식회사 전자장치 및 그 제어방법
KR20220136750A (ko) 2021-04-01 2022-10-11 삼성전자주식회사 사용자 발화를 처리하는 전자 장치, 및 그 전자 장치의 제어 방법
CN115731926A (zh) * 2021-08-30 2023-03-03 佛山市顺德区美的电子科技有限公司 智能设备的控制方法、装置、智能设备和可读存储介质
CN114038457B (zh) * 2021-11-04 2022-09-13 贝壳找房(北京)科技有限公司 用于语音唤醒的方法、电子设备、存储介质和程序
JP2023128711A (ja) 2022-03-04 2023-09-14 キヤノン株式会社 医療システム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0643895A (ja) * 1992-07-22 1994-02-18 Nec Corp 音声認識装置
JPH11231896A (ja) * 1998-02-19 1999-08-27 Fujitsu Ten Ltd 音声起動システム
JP2002156992A (ja) * 2000-11-21 2002-05-31 Sony Corp モデル適応装置およびモデル適応方法、記録媒体、並びに音声認識装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006039382A (ja) * 2004-07-29 2006-02-09 Nissan Motor Co Ltd 音声認識装置
JP5549506B2 (ja) * 2010-09-28 2014-07-16 富士通株式会社 音声認識装置及び音声認識方法
KR20140139982A (ko) * 2013-05-28 2014-12-08 삼성전자주식회사 전자 장치의 음성인식을 수행하는 방법 및 이를 사용하는 전자 장치
KR101986354B1 (ko) * 2017-05-19 2019-09-30 네이버 주식회사 키워드 오인식을 방지하는 음성 제어 장치 및 이의 동작 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0643895A (ja) * 1992-07-22 1994-02-18 Nec Corp 音声認識装置
JPH11231896A (ja) * 1998-02-19 1999-08-27 Fujitsu Ten Ltd 音声起動システム
JP2002156992A (ja) * 2000-11-21 2002-05-31 Sony Corp モデル適応装置およびモデル適応方法、記録媒体、並びに音声認識装置

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019133182A (ja) * 2017-05-19 2019-08-08 ネイバー コーポレーションNAVER Corporation 音声制御装置、音声制御方法、コンピュータプログラム及び記録媒体
JP2022033258A (ja) * 2017-05-19 2022-02-28 ネイバー コーポレーション 音声制御装置、動作方法及びコンピュータプログラム
JP2019095526A (ja) * 2017-11-20 2019-06-20 富士通株式会社 音声処理プログラム、音声処理装置、及び音声処理方法
JP7035476B2 (ja) 2017-11-20 2022-03-15 富士通株式会社 音声処理プログラム、音声処理装置、及び音声処理方法
CN109785836A (zh) * 2019-01-28 2019-05-21 三星电子(中国)研发中心 交互方法和装置
CN109992239A (zh) * 2019-04-15 2019-07-09 北京百度网讯科技有限公司 语音出行方法、装置、终端及存储介质
KR20190065200A (ko) * 2019-05-21 2019-06-11 엘지전자 주식회사 음성 인식 방법 및 음성 인식 장치
KR102225001B1 (ko) 2019-05-21 2021-03-08 엘지전자 주식회사 음성 인식 방법 및 음성 인식 장치
US11183190B2 (en) 2019-05-21 2021-11-23 Lg Electronics Inc. Method and apparatus for recognizing a voice
CN113450828A (zh) * 2021-06-25 2021-09-28 平安科技(深圳)有限公司 音乐流派的识别方法、装置、设备及存储介质

Also Published As

Publication number Publication date
KR20180127065A (ko) 2018-11-28
JP6510117B2 (ja) 2019-05-08
JP2022033258A (ja) 2022-02-28
JP2019133182A (ja) 2019-08-08
KR101986354B1 (ko) 2019-09-30

Similar Documents

Publication Publication Date Title
JP6510117B2 (ja) 音声制御装置、音声制御装置の動作方法、コンピュータプログラム及び記録媒体
US11875820B1 (en) Context driven device arbitration
US11600291B1 (en) Device selection from audio data
US12125483B1 (en) Determining device groups
US12094461B2 (en) Processing spoken commands to control distributed audio outputs
US12033632B2 (en) Context-based device arbitration
US11710478B2 (en) Pre-wakeword speech processing
US11887590B2 (en) Voice enablement and disablement of speech processing functionality
US10504511B2 (en) Customizable wake-up voice commands
CN110140168B (zh) 上下文热词
KR102596430B1 (ko) 화자 인식에 기초한 음성 인식 방법 및 장치
US9672812B1 (en) Qualifying trigger expressions in speech-based systems
US9837068B2 (en) Sound sample verification for generating sound detection model
JP6812843B2 (ja) 音声認識用コンピュータプログラム、音声認識装置及び音声認識方法
KR20160145634A (ko) 사용자 정의된 키워드를 검출하기 위한 키워드 모델 생성
KR20140089863A (ko) 디스플레이 장치, 및 이의 제어 방법, 그리고 음성 인식 시스템의 디스플레이 장치 제어 방법
KR102061206B1 (ko) 키워드 오인식을 방지하는 음성 제어 장치 및 이의 동작 방법
US11348579B1 (en) Volume initiated communications
US11693622B1 (en) Context configurable keywords
US11605380B1 (en) Coordinating content-item output across multiple electronic devices
US11328713B1 (en) On-device contextual understanding
KR20210098250A (ko) 전자 장치 및 이의 제어 방법
WO2019187543A1 (ja) 情報処理装置および情報処理方法
US20200321022A1 (en) Method and apparatus for detecting an end of an utterance
KR20240048802A (ko) 치안현장 지원을 위한 단말내장형 음성인식 장치 및 그 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190222

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190403

R150 Certificate of patent or registration of utility model

Ref document number: 6510117

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250