JP2015018238A - 自然言語理解のための自動音声認識プロキシシステム - Google Patents

自然言語理解のための自動音声認識プロキシシステム Download PDF

Info

Publication number
JP2015018238A
JP2015018238A JP2014140729A JP2014140729A JP2015018238A JP 2015018238 A JP2015018238 A JP 2015018238A JP 2014140729 A JP2014140729 A JP 2014140729A JP 2014140729 A JP2014140729 A JP 2014140729A JP 2015018238 A JP2015018238 A JP 2015018238A
Authority
JP
Japan
Prior art keywords
asr
recognition
recognizer
subsystem
type
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
JP2014140729A
Other languages
English (en)
Other versions
JP2015018238A5 (ja
JP6025785B2 (ja
Inventor
イエラカリス ヨーヨス
Yeracaris Yoryos
イエラカリス ヨーヨス
ビー.カルス アルウィン
B Carus Alwin
ビー.カルス アルウィン
ラプシーナ ラリッサ
Lapshina Larissa
ラプシーナ ラリッサ
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.)
Interactions Corp
Original Assignee
Interactions 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
Priority claimed from US13/936,440 external-priority patent/US9245525B2/en
Application filed by Interactions Corp filed Critical Interactions Corp
Publication of JP2015018238A publication Critical patent/JP2015018238A/ja
Publication of JP2015018238A5 publication Critical patent/JP2015018238A5/ja
Application granted granted Critical
Publication of JP6025785B2 publication Critical patent/JP6025785B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】構成するASRコンポーネントの制限なしに、一貫して高品質な体験を提供する対話式システムを提供する。
【解決手段】対話式応答システムが、HSRサブシステムをASRサブシステムと混合して、音声ユーザインタフェースの能力全体を容易にする。システムは、不完全なASRサブシステムがそれでもなおHSRサブシステムの負担を軽減できるようにする。ASRプロキシを使用してIVRシステムが実行され、プロキシは、ASRの信頼性閾値や、HSRのための人間リソースの利用可能性などの要因に基づいて、いずれか特定の発話に対していくつのASRおよびHSRサブシステムが認識を実行すべきかを動的に決定する。
【選択図】図11

Description

本発明は、対話式応答通信システムの分野に関し、より詳細には、発話を自動音声認識(ASR)プロセッサ、人間音声認識(HSR)リソース、またはASR機構とHSR機構の両方に、選択的にルーティングする対話式応答通信システムに関する。
関連出願
本出願は、2011年1月5日に出願された「Automated Speech Recognition System for Natural Language Understanding」という名称の米国特許出願第12/985,174号明細書の一部継続出願である、2011年3月24日に出願された「Automated Speech Recognition Proxy System For Natural Language Understanding」という名称の、本願の所有者が所有する同時係属の米国特許出願第13/070,865号明細書(現米国特許第8,484,031号明細書)の一部継続出願であり、この出願に対して米国特許法第120条に基づき優先権を主張する。上記で参照した出願の内容は、本明細書に完全に記載されているかのように、参照により本明細書に組み込まれる。
多くの会社は、電子的手段(最も一般的には、電話、Eメールおよびオンラインテキストチャット)によって顧客と対話する。このような電子システムは、必要な顧客サービスエージェントまたはサポートエージェントの数を制限することにより、会社にとって多くの金銭を節約する。しかし、これらの電子システムが提供する顧客体験は一般に、満足には及ばないものである。顧客体験は、単純なトランザクションの場合には容認できることもあるが、顧客がコンピュータに話しかけることまたはコンピュータと対話することに熟達していない場合は、辻褄が合わないかまたは全くもどかしいものであることが多い。
このような対話式応答システムは、当技術分野で周知である。例えば、対話式音声応答(IVR)システムを使用して電話を介して顧客サービスを提供することは、このようなシステムの1つである。IVR技術を利用した顧客サービスシステムの例が特許文献1に記載されている。IVRシステムは通常、一連の録音済みフレーズを使用して顧客と通信し、いくつかの口頭入力およびタッチトーン信号に応答し、また、電話をルーティングまたは転送することができる。このようなIVRシステムの欠点は、これらが通常は「メニュー」構造を中心に構築されていることであり、この構造は、一度にわずかな有効オプションしか発信者に提示せず、また、発信者からの狭い範囲の応答を必要とする。
これらのIVRシステムの多くは今や、音声認識技術を組み込んでいる。音声認識技術を組み込んだシステムの例が特許文献2に記載されている。IVRシステムによって使用される音声認識技術の頑強性は様々だが、これらが聞こうとする、かつ理解できる応答は、所定範囲の応答であることが多く、このことは、エンドユーザが日常語でシステムと対話する能力を制限する。従って、発信者はしばしば、「コンピュータに話しかけているかのように」システムに話しかけることを余儀なくされているように感じることになる。さらに、音声認識を利用するシステムと対話しているときでも、顧客入力はしばしば認識されないかまたは間違って決定され、それにより顧客は、できるだけ早く人間の顧客サービスエージェントと接触することを求める。
より入り組んだ顧客サービス要求のために、人間の顧客サービスエージェントが使用され続けている。これらのエージェントは、顧客に電話で話しかけ、顧客のEメールに応答し、および顧客とオンラインでチャットすることができる。エージェントは通常、顧客の質問に答えるか、または顧客の要求に応答する。会社は顧客サービスグループを有するが、これらは「顧客リレーションマネジメント」を専門にする会社に外部委託されることもある。このような会社は、何百人ものエージェントがスタッフとして配置されるセンタを運営し、これらのエージェントは、1日の全勤務時間を、電話をして過ごすかまたは他の方法で顧客と対話して過ごす。このようなシステムの例が特許文献3に記載されている。
顧客サービス対話の典型的なモデルは、1人のエージェントが、顧客対話の継続時間にわたって顧客を援助するものである。時には、顧客が複数の要求について助けを必要とする場合、あるエージェント(例えば技術サポート担当者)が顧客を別のエージェント(販売担当者など)に転送することもある。しかし一般には、1人のエージェントが、顧客の電話またはチャットセッションの全継続時間にわたってこの1人の顧客の援助に自分の時間を費やすか、または、Eメールを介して顧客の問題を解決することに専念する。また、ほとんどのコールセンタは、エージェントが通話のログをとる(記録を残す)ために時間を割くものと考える。この重いエージェントインタフェースモデルの欠陥は、(1)エージェント離職者率が高いこと、並びに(2)通例、多くの初期および継続的なエージェントの訓練が必要であることであり、これらの全てにより、顧客サービスは結局、これらの顧客サービス提供者にとってかなりの出費になる。
エージェント関連の出費を軽減するために、組織によっては、その顧客サービスニーズを外部委託する。高速光ファイバ音声データネットワークの急増に伴う、近年の米国における傾向の1つは、より低い労働コストを利用するために顧客サービスセンタを海外に配置することである。このような外部委託は、海外の顧客サービスエージェントが英語を流暢に話すことを必要とする。これらのエージェントが電話ベースのサポートに使用される場合、エージェントが英語ではっきりと理解し話すことができることがしばしば課題になる。海外への外部委託の不幸な結果は、サービスを求める人にとっての、誤解、および、満足に及ばない顧客サービス体験である。
改良された対話式応答システムは、コンピュータによって実施される音声認識を、人間エージェントの断続的使用と一体化する。ある程度、これは何年も行われてきた。人間の係員と自動音声レコグナイザの両方を使用するシステムが扱われている(特許文献4)。同様に、ユーザの発話を人間によって解釈する必要のある通話部分のみが、人間エージェントに提示されるシステムが開示されている(特許文献5)。これらの特許の内容、並びに本明細書で言及する他の全ての技術は、本明細書に完全に記載されているかのように参照により本明細書に組み込まれる。このようなシステムの利益は、そのコストが比較的低ければ高まり、この低コストは一般に、限られた人間対話しか必要としないものである。このような限られた人間対話を達成するには、最小限の初期訓練しか必要とせず、時の経過に伴って結果が向上し続けるシステムを有することが望ましいであろう。特に、本番使用に適する「初日からの」性能をもたらし、時の経過に伴って効率が素早く向上する学習/訓練システムが、とりわけ価値があるであろう。
多くの既存のASRシステムは、システムの各特定ユーザの声を認識するように訓練される必要性、または妥当な結果を提供するために認識語彙を厳しく制限する必要性など、かなりの訓練制約を被る。このようなシステムは、ユーザによって人工的と認識されやすい。典型的な人間プロンプト「ご用件をどうぞ。」と、人工的なプロンプト「予約したい場合は「したい」と、予約状況を確認したい場合は「状況」と、予約をキャンセルするには「キャンセル」と言って下さい。」との間の相違を考察されたい。
ASR(自動音声認識)による音声システムの目標は、「2001年宇宙の旅」の中のHALによく似た、発信者対話を実施するための会話システムを達成することであった。ASR機能を改善するために、音声ユーザインタフェース(VUI)技法が開発された。これにより、より高精度の音声認識を達成するために、使用される語彙を削減しようとして、かつ発信者が話さなければならない単語に関するヒントを発信者に与えようとして、プロンプトが正確かつコンパクトに表現される。それ以来、ASRは向上し、今や自由回答式の会話認識にも対処する。しかし、このような自由回答式の会話は、より多い語彙を必要とし、その結果、音声認識エラー率はずっと高くなる。結果的に、IVRシステムに対するより多くの不満および軽蔑の念が発信者に残る。これは例えば、前に何が述べられ理解されたかを過度に確認すること、間違った選択を行うこと、および発信者を前のメニューに戻らせることに基づく。VUI設計は、会話を一般から特定に絞り込もうとして、発信者をいわゆる「ディレクテッドダイアログ」に導こうと試みる。小さい領域は、語彙が限られ発話レパートリが相対的に著しく小さいので、ASRおよびNLUは、ディレクテッドダイアログに適用されたときは、より成功してきた。IVR業界は、音声認識による統計および「探索」を使用して知識領域を特徴付けて、理解をさらに高めることに取り組んでいる。しかし、これらの手法はなお、かなりの数の発信者、特に、個人化されたASR音響モデルを構築するなどの複雑な技法を使用しても理解が困難な方言または発音パターンを有する発信者を、うまく扱わない。人間援助型認識の登場に伴い、今や、自動化と共に人間の理解を活用して音声、テキスト、グラフィックス、およびビデオを認識する機会があり、これにより、理解がより正確になり、ASRベースのIVRシステムの弱点の多くが回避される。IVRシステムの根本的なタスクは、ユーザ要求に対応する様々な用件フォーム中の情報スロットを埋めるのを調整することである。従来のIVRシステムでは、この調整は通常、あらかじめ固定された決定木に従って実施され、ユーザと対話するための限られた数の方法からの逸脱はほとんどない。VUI設計の変形や、正確な理解をうまく識別するために最適化する種々の基準や、可能な最短の時間で理解および認識する技法を含めた、種々の認識戦略が開発されてきた。
発信者と、人間援助型認識を使用する自動システムとの間の対話をできるだけシームレスかつ自然なものにするために様々な適切な技法をシステムが使用することには、多くの理由がある。
人間は、自動音声認識(ASR)、グラフィックスおよびビデオ処理、並びに自然言語理解(NLU)技法よりも、ずっと高い精度で意味を認識し解釈する。自動化の精度が不十分なときに人間を用いて理解することができるならば、かなり多くのユーザ対話を自動化しながらもなお、良いユーザ体験を提供することが可能になる。しかし、コンピュータリソースは、異常な予測されないボリュームピークを満たすようにスケールすることができるが、人間リソースは、そうしたコンピュータリソースとは異なり、スケジュールされる必要があり、ピークに合うようにタイミングよく利用可能ではないことがある。従って、精度が十分でないときにはDTMF(dual-tone multi-frequency)も使用して、システムがどんな特定の適用例での必要HSR量にも自動的に合わせ、それによりHSRの使用を最小限に抑えることが必要とされている。予定外のピーク中に人間の対話が変化することになっても、より従来式のやり方でセルフサービスを実施し続けることができる。
目標は今や、どのように人間援助と自動化を組み合わせて発信者の発話を最もよく認識および解釈すると同時に可能な最も人間らしいユーザ体験を達成するかということになるが、音声認識を整調し、認識された発話を分類して、最高の認識レベルを達成するのに使用される従来技法は、微妙だが重要な形で変化する。従って、既存のシステムによって対処されない難題は、最もうまくいくユーザ体験を提供しながら、所与の作業負荷の下における所与の状況でどのように人間と自動化との最も効率的な組合せを使用するかである。
従来、ASRシステムは、発話されるのに伴って、それを「聞く」のを開始する。認識自動化が失敗した場合は、ユーザは、完全な発話が話されるのにかかる時間長にわたって待機することになり、その後、HSRが、聞くのを開始してそれを処理することになる。そうではなく、システムがリアルタイムに近い形で対話を理解しようとすることができれば望ましいであろう。例えば、ユーザがどんどん単語を話してそれらの意味(または「意図」)を記述するのに伴い、まずASRによって処理され、次にHSRによって処理される結果、発話の終わりと応答の始まりとの間にかなりの時間ギャップが生じる。この時間ギャップは、例えば、タイピング音などのオーディオ再生で埋めることもできる。これは適用例によってはうまくいく可能性があり、特に、データを収集する適用例ではうまくいく可能性がある。他の適用例では、この時間ギャップにより、システムと自然な会話を続けるのが困難になる。加えて、話が長いほど認識品質が低くなることも多い。話が長いほど、話に含まれる単語が多いだけでなく単語結合も多い。まとめると、これらにより、音声認識エラーが増加し、理解の精度が低下する。
従って、人間援助を使用する前にできるだけ早く理解してうまくいく認識を予測し、人間らしい対話を維持することのできる、自動認識システムが必要とされている。さらに、人間援助が求められる場合もあるので、この自動認識システムはまた、人間援助のスタッフ配置を監視して、システムステータス負荷および人間援助スキルセット能力に応じて、理解の信頼度を自動的に調節することおよび/または完全な自動化に進むことができることも必要とする。
自然言語理解(NLU)システムなど、より大がかりなシステムは、使用可能な結果をより大きな文法および語彙から得るために、骨の折れる手仕事による文法記述の多大な機械学習期間を必要とする。特に、語彙が動的である可能性のある環境(新しい演劇、または新しい音楽グループによるコンサートの、チケット注文をとるシステムなど)では、学習期間は、満足のいく結果をもたらすためにはあまりにも長すぎることがある。アクセント、方言、語彙および文法の地域差などを含めると、このようなシステムが認識精度の妥当な閾値を達成できるようにシステムに教えるタスクは、さらに複雑になる。
現在利用可能なASRシステムは、数、データ並びに単純な文法(すなわち、小さい単語のセット、およびそれらからなる表現)など、単純な口頭の発話を認識するのには効果がある。しかし、今までのところ、ASRシステムは、自由に流動する会話を提供する音声インタフェースを生み出すだけの十分に高いレベルの音声認識性能を提供していない。加えて、ASR性能は、上述したようなアクセントや方言によって劣化するだけでなく、背景雑音、子供の声よりも大人の声、および多くの場合に男性の声よりも女性の声によっても劣化する。ASR性能は時の経過に伴って向上しており、あるシステムは、発信者からの極めて幅広い応答を認識するように意図された統計言語モデルを使用し、従って発信者は、非常に制約された話し方で話すのではなく自然に話すときでも認識されることが可能である。そうであっても、ASR性能は依然として人間同士の実際の対話には匹敵しておらず、最高レベルの性能を提供するASRシステムは、時間がかかり、構築して特定の適用例に整調する(tune)のが高価である。
予想される様々な回答の統計的確率並びに類義語を考慮することによって文法を整調することは、ASR性能を向上させるために使用される技法の1つである。別の技法は、統計言語モデルを作り出すことだが、これは、生のオペレータとの生の電話会話の発話の録音を文字に起こすためのかなりの労力を必要とする可能性がある。ASR性能は、ある適用例ではかなり許容できるが、他の適用例ではまだ適さず、従って、知られているASRベースのシステムは依然として、制約されない自然な発話を理解する能力に欠ける。
従って、構成するASRコンポーネントの制限なしに、一貫して高品質な体験を提供する対話式システムが、依然として当技術分野で必要とされている。
米国特許第6,411,686号明細書 米国特許第6,499,013号明細書 米国特許第5,987,116号明細書 米国特許第5,033,088号明細書 米国特許第7,606,718号明細書
対話式応答システムが、HSRサブシステムをASRサブシステムと混合して、自然言語理解を容易にし、音声ユーザインタフェースの能力全体を改善する。このシステムは、不完全なASRサブシステムが、必要時にHSRを使用でき、それでもなお、負荷がかかっているHSRサブシステムの負担を軽減できるようにする。ASRプロキシを使用してIVRシステムが実現され、このプロキシは、一連の規則に基づいて、発話を1つのASRのみにルーティングすること、発話を少なくとも1つのASRに加えてHSRにもルーティングすること、発話を1または複数のHSRサブシステムのみにルーティングすること、ASRに元々送られた発話をHSRにルーティングし直すこと、HSRを使用して1または複数のASRの整調および訓練を補助すること、並びに、複数のASRを使用して結果の信頼性を高めることを決定する。
一態様では、ASRプロキシは、認識決定エンジンおよび結果決定エンジンを備える。関連する一態様では、この2つのエンジンは、様々な用件フォーム中の情報スロットを正確に埋めるために、認識性能、自然言語理解、並びに認識および文法整調を容易にする。
さらに別の態様では、ASRプロキシは、アプリケーション基準と、認識信頼度予測と、履歴結果と、特定ユーザの声で経験される認識とのうちの、1または複数に基づいて、ASRリソースおよび/またはHSRリソースを選択する。
さらに別の態様では、ASRプロキシは、ASRの使用を最大限にすること、またはやりとりをより「人間らしい」若しくはより「人間らしくない」ものにすることなど、様々なパラメータに基づいて構成可能である。
さらに別の態様では、ASRプロキシは、HSRのシステムリソースキャパシティに自動的に合わせて、ASRまたはDTMFの使用を最大限にする。
さらに別の態様では、ASRプロキシは、ASR結果を分析する評価コンポーネントの結果を使用して、長さベースのテストに対する最適な長さと、種々のプロンプトへのユーザ応答に対する最適な品質測定基準レベルと、種々のプロンプトに対する最適な分類器とのうちの、1または複数を選択する。
さらに別の態様では、ASRプロキシによるASRリソースまたはHSRリソースの選択は、ASRプロキシに音声認識を要請するソフトウェアアプリケーションにはトランスペアレントである。
さらに別の態様では、このシステムは、HSR使用時のリアルタイムに近い形で、うまくいく自動認識を予測する方法を使用して、より人間らしい体験を維持する。
本開示において対象とされる特定の構成を他の様々な方式でも実現できることは、当業者なら認識するであろう。特段に定義しない限り、本明細書で使用される全ての技術用語および科学用語は、本開示の属する技術分野の当業者によって一般に理解されるのと同じ意味を有する。
前述の特徴は、本開示の範囲を逸脱することなく、単独でまたは組み合わせて使用することができる。本明細書に開示するシステムおよび方法の他の特徴、目的および利点は、後続の詳細な記述および図から明らかになるであろう。
さらに他の特徴および様々な利点は、添付図面と共に後続の詳細な記述を読めば明らかになるであろう。図面全体を通して、同じ参照文字は同じ部分を指す。
対話式応答システムのアーキテクチャの一実施形態を示すブロック図である。 顧客と対話式応答システムと人間インタフェースとの間の通信の方法の一実施形態を示すフローチャートである。 図2のコンテキストにおける、顧客/対話式応答システムの対話の一実施形態を示すチャートである。 図2のコンテキストにおける、顧客意図およびデータをキャプチャするための一実施形態を示すコンピュータ画面ユーザインタフェースの図である。 図2のコンテキストにおける、顧客/対話式応答システムの対話の一実施形態を示すチャートである。 図2のコンテキストにおける、顧客意図およびデータをキャプチャするための一実施形態を示すコンピュータ画面ユーザインタフェースの図である。 図2のコンテキストにおける、顧客/対話式応答システムの対話の一実施形態を示すチャートである。 図2のコンテキストにおける、顧客意図およびデータをキャプチャするための一実施形態を示すコンピュータ画面ユーザインタフェースの図である。 対話式応答システムのコンテキストでEメールを処理するフローチャートである。 訓練サブシステムを有する対話式応答システムのアーキテクチャの一実施形態を示すブロック図である。 ASR訓練に関する例示的な処理フロー800の図である。 本明細書で参照されるコンピュータ/プロセッサのいずれかとして使用されるコンピュータ900の例を示す高レベルのブロック図である。 異なる意図分析者によってオーディオストリームの意図およびデータを認識することのタイムライン表現の図である。 ASRプロキシと対話するアプリケーションのブロック図であり、プロキシの主要なコンポーネントを示す図である。 ASRを使用するかHSRを使用するかまたは両方を使用するかを決定するための、認識決定エンジンのプロセスおよび決定フローを示す流れ図である。 単一のASRを使用する結果決定エンジンのプロセスおよび決定フローを示す流れ図である。 複数のASRを使用する結果決定エンジンのプロセスおよび決定フローを示す流れ図である。 ASRとHSRの両方を使用する結果決定エンジンのプロセスおよび決定フローを示す流れ図である。 HSRを使用する結果決定エンジンのプロセスおよび決定フローを示す流れ図である。 自動認識および人間援助認識による応答ギャップを示す時系列の図である。 アプリケーション、およびASRプロキシとの対話のブロック図であり、ASRプロキシの主要なコンポーネントを示す図である。 認識に関する統計とシステムステータスに関する情報とを用いた認識決定および結果決定のプロセスおよび決定フローを示す流れ図である。 ASR統計とシステムステータスとを用いた認識決定および結果決定を示す流れ図である。 タイマASR統計とシステムステータスとを用いた認識決定および結果決定を示す流れ図である。 予測器認識ASR統計とシステムステータスとを用いた認識決定および結果決定を示す流れ図である。 統計を生み出すためのプロセスを示すフローの図である。 統計を生み出すためのいくつかの認識最適化基準の例を示す図である。
まず、図1〜図10に従って、対話式応答システム並びに関連する機械学習システムおよびプロセスの動作についての記述を提供する。その後、図11〜図16に従って、ASRプロキシシステム並びにそれに関連するプロセスの動作についての記述を提供する。図17〜図24および対応する考察は一般に、ASRプロキシを最適化するプロセスに関し、目標は、コンピュータ認識の自動化と人間援助型認識との組合せを最適化すると同時にユーザ体験を向上させることである。特段に明白でない限り、本明細書で使用される用語「意図」および「意味」は、発話に対応するコンテキスト上の理由を指すことに留意されたい(例えば、新しいフライト予約をするという発信者の用件意図をシステムに決定させる)。対照的に、用語「認識する」およびその派生語は一般に、本明細書では、音をそれに対応する単語に変換するプロセスに使用される。
人間援助型決定エンジンを使用して、マルチチャネルおよびマルチモーダルシステムが実現される。これは、「対話」を自動化にルーティングした後で、かつ自動化からの予測結果に応じて、予測データおよびキャパシティ要因のセットに基づいて、自動認識の競合の前であってもHSRの使用を決定する。ある実施形態では、システムは、「発話」または「ビデオ」を自動的に加速させ、自動化と人間援助との間の時間ギャップをさらに短縮する。
プロンプトに対する応答の解釈は、テキスト分析の2つの種類、すなわち情報抽出およびセンス分類として見ることができる。情報抽出は、顧客ID、電話番号、日時、住所、製品タイプ、問題など、用件フォームのスロットを埋めるのに不可欠な特定の情報断片を、識別、抽出および正規化することである。センス分類は、追加の2つの情報タイプ、すなわち意味(意図)および応答品質を識別することに関係する。意味(意図)は、どんな種類のフォームを埋める必要があるかということと関係がある(料金請求、予約のスケジューリング、苦情など)。応答品質は、応答自体と関係がある(不明瞭、雑音、英語ではなくスペイン語、生のエージェントと話したいという要望など)。
この応答解釈は、意図分析のみ(純粋なHSR)によって行うか、自動化(ASRおよび意図分類)によって行うか、またはASRとHSRの何らかの組合せによって行うことができる。ASR自動化の結果における信頼度測定基準を使用して、いつASRが信頼性のある結果を生成しているかを決定することで、限定的な品質損失でまたは品質損失なしに、ASR自動化をHSRに対してトレードオフすることが可能である。このことは、プロキシ処理システムにおけるこの2つの手法の組合せにより、HSRのみを使用する場合よりも大きなスループットを達成することができ、より小さい意図分析者チームでピーク需要負荷を処理できることを意味する。
図1は、対話式ルータ101(以下「iルータ」と呼ぶ)を介して対話プラットフォーム102を対話式応答システム100に接続するアーキテクチャの一実施形態を示す。図1に示すように、対話プラットフォーム102は、通信リンク104を介して顧客103に接続される。対話プラットフォーム102はまた、データリンクを介してiルータ101において対話式応答システム100に接続され、データリンクは、この例示的な実施形態ではTCP/IPデータリンクを含む。この例示的な実施形態における対話プラットフォーム102は、コンピュータサーバを含む。コンピュータサーバの正確な構成は実装形態によって異なるが、通常は、Dialogic(登録商標)などのベンダからの音声ボードを使用してWindows(登録商標)やLinux(登録商標)などのオペレーティングシステムを実行するPentium(登録商標)ベースのサーバからなる。対話プラットフォーム102はまた、Eメールゲートウェイまたはウェブサーバとすることもできる。従って、顧客入力は、電話または構内通話を介して対話式応答システム100に入り、テキストは、Eメールまたは対話式チャットインタフェース(例えば、ウェブページ、若しくはYahoo Messengerなどのスタンドアロンアプリケーション)を介して入力される。
図1のアーキテクチャでは、様々な実施形態で、いくつかの異なるタイプのデバイスを使用して対話プラットフォーム102および通信リンク104の各々が実現される。対話プラットフォーム102は、顧客103と通信できる任意のデバイスによって実現することができる。例えば、対話プラットフォーム102は、一実施形態では、対話式応答システム100中の電話サーバであり、この場合、顧客は電話をかけている。電話サーバは、入来呼の応答、転送および切断を扱う。電話サーバはまた、事前録音済みオーディオクリップのための倉庫であり、従って電話サーバは、任意のウェルカムプロンプト、およびiルータ101によって指示された他のオーディオクリップを再生することができる。
本実施形態による電話サーバは、オフザシェルフ(off the shelf)コンポーネントから、例えば、オペレーティングシステムとしてのWindowsと、Pentiumプロセッサなどの中央処理装置と、Intel(登録商標)Dialogic音声ボードとから組み立てられる。このアーキテクチャを使用した場合、通信リンク104は、顧客の電話と電話サーバの間のインタフェースを提供する任意の手段によって実現される。例えば、通信リンク104は、様々な実施形態で、ダイヤルアップ接続または双方向ワイヤレス通信リンクである。
別の例示的な実施形態では、対話プラットフォーム102は、対話式応答システム100中のゲートウェイサーバである。この例示的な実施形態によれば、顧客は、Eメール、対話式テキストチャットまたはVOIPによって、対話式応答サーバと対話する。ゲートウェイサーバは、カスタマイズドオープンソースEメール、wwwサーバソフトウェアまたはSIPを実行する。さらに、この例示的な実施形態によるゲートウェイサーバは、Eメール、対話式テキストチャットまたはVOIPトランザクションを顧客と行うとともに、システムの他の要素とのデータ転送および受信もするように設計される。このアーキテクチャを使用した場合、通信リンク104は、顧客のコンピュータとゲートウェイサーバとの間のインタフェースを提供する任意の手段によって実現される。例えば、通信リンク104は、様々な実施形態で、専用インタフェース、単一のネットワーク、ネットワークの組合せ、ダイヤルアップ接続またはケーブルモデムである。
図1には対話プラットフォーム102が1つしか示されていないが、本明細書を検討した後には、複数の対話プラットフォーム102をこのシステム中で使用できることを当業者なら理解するであろう。対話プラットフォーム102が複数ある場合、対話式応答システムは、音声およびテキストデータを介して顧客と通信することができる。さらに、顧客ベースごとの専用対話プラットフォーム102によって、複数の顧客ベースに対応することもできる。このようにして、複数の対話プラットフォーム102のうちのどれが対話を開始したかを決定することによってワークフロー(後で詳述する)が選択される。
図1のアーキテクチャでは、iルータ101は、対話式応答システム100を制御するソフトウェアを備える。iルータ101は、他のコンポーネント間のアクティビティを調整しトランザクションを管理することによって、顧客103との対話を始めから終わりまで「所有する」。iルータ101は、1または複数のプログラム可能スクリプト(この例示的な実施形態によれば「ワークフロー」と呼ばれる)に従って、顧客103との対話を管理する。一般に、ワークフローは、ワークフローを通る経路が、顧客から入力された意図に依存するような、対話フローを含む。ワークフローは、システムエンジニアによって事前にプログラムされ、有利には、顧客満足や速度や精度などを向上させるために定期的に「小改良」される。この例示的な実施形態によれば、iルータ101は、ほぼ常に、ワークフロー中の次のステップまたは経路を選択することを「受け持っている」。
iルータ101は、顧客コミュニケーションの形に応じて、オーディオクリップ、Eメール、テキストデータまたは他の対話タイプの形で、対話プラットフォーム102から入力された対話を受信する。iルータ101は、この入力を、1または複数の人間エージェント105(「意図分析者」すなわち「IA」と呼ばれることもある)、音声認識エンジンまたはエキスパートシステム(まとめて108、また「自動音声レコグナイザ」すなわち「ASR」と呼ばれることもある)に転送し、応答を利用してその現在のワークフローを進める。入力を人間によって解釈(または翻訳)することが必要なときは、iルータ101は、現在のワークフローの適切な視覚コンテキストを表示するよう、人間エージェントのデスクトップソフトウェアに指示する。iルータ101が入力を理解すると、iルータ101は、ワークフローの中を進み、対話プラットフォーム102に、顧客103に適切に応答するよう指示する。
対話プラットフォーム102が電話サーバを含む例示的な一実施形態では、iルータ101は、顧客に対して再生するためのサウンドクリップを送るか、テキスト−音声クリップを送るか、またはこの両方を送る。あるいは、対話プラットフォーム102は、サウンドクリップを記憶することができるか、テキスト−音声機能を有することができるか、またはこの両方とすることができる。この実施形態では、iルータは、顧客に対して何をいつ再生するかについて、対話プラットフォーム102に指示する。
iルータ101は、この例示的な実施形態では、WindowsやLinuxなどのオペレーティングシステムを実行するネットワーク化されたオフザシェルフの市販プロセッサを備える。さらに、iルータ101のソフトウェアは、特定の適用例に適したオブジェクトを組み込んだ、修正されたオープンVoiceXML(VXML)ブラウザおよびVXMLスクリプトを含む。本明細書を検討した後には、これらのオブジェクトをどのように構築するかを当業者なら理解するであろう。
図1の例示的なアーキテクチャによれば、対話式応答システム100は、人間エージェント105の少なくとも1つのプールを含む。人間エージェント105のプールはしばしば、コンタクトセンタ所在地に位置する。人間エージェント105は、本発明のこの実施形態によれば、システム100に特有の特殊化されたデスクトップソフトウェア(図3B、図4Bおよび図5Bに関してさらに後述する)を使用し、このソフトウェアは、可能性ある意図の集まりを、その時点までの顧客対話の履歴またはコンテキストと共に、それらの画面(それらのユーザインタフェース)上に提示する。1または複数の人間エージェント105は、入力を解釈し、適切な顧客意図、データ、またはこの両方を選択する。
電話対話の場合、人間エージェント105は、ヘッドホンを装着し、iルータ101の指示で電話サーバ102からストリーミングされるサウンドクリップ(「発話」)を聞く。本発明の一態様によれば、単一の人間エージェント105が顧客103に関するトランザクション全体を扱うことにはならない。そうではなく、人間エージェント105は、顧客103の発話を人間によって解釈することが必要であるものとしてワークフローデザイナによって指定された、トランザクションのいくつかの部分を扱う。iルータ101は、同じ顧客103対話を任意の数の人間エージェント105に送ることができ、所与の対話の一部を多くの異なる人間エージェント105に分配することができる。
本発明の例示的な実施形態によれば、人間エージェント105はオフサイト(Off site)であることが好ましい。さらに、人間エージェント105は、インド、フィリピンおよびメキシコなど、世界の種々の地理エリアに存在してよい。人間エージェント105は、建物内で集団になっていてもよく、または自宅から作業していてもよい。年中無休の人間エージェントサポートを必要とする適用例では、各人間エージェント105が適切な業務時間中に作業できるように、人間エージェント105を世界中に配置することができる。
本発明の対話式応答システム100は、カスタム人間エージェントアプリケーションソフトウェアを利用する。人間エージェント105は、Javaで開発され標準的なコールセンタコンピュータネットワークのワークステーション上で実行される、カスタムアプリケーションを使用する。概して言えば、対話式応答システム100は、顧客103の入力の解釈に向かう人間の知能を、「意図」(顧客が何を欲するか)およびデータ(顧客が何を欲するかを決定するのに必要な任意のデータ)に適用する。解釈は通常、この例示的な実施形態では、何が言われたかについての最も正しい解釈を選択肢のリストから選択することを含む。代替の一実施形態では、コンピュータ支援型データ入力(例えば、テキスト入力またはEメールアドレス入力のオートコンプリート)が、エージェント処理と共に使用される。
オフザシェルフコンポーネントである本発明のワークフローサーバ106は、対話ルータによって使用されるワークフローのアーカイブである。ワークフローサーバ106は、一実施形態では、標準的なサーバオペレーティングシステムを実行する市販のプロセッサを使用して、オフザシェルフハードウェアによって構築され、この例示的な実施形態では、ワークフロードキュメントはXMLで書かれる。ワークフローサーバ106は、iルータ101の挙動を統制する業務規則のまとまりを維持する。
対話式応答システム100は、ワークフローを策定するためにビジネス分析者またはプロセス技術者によって使用されるワークフローデザイナを利用する。ワークフローは、音声認識とのまたは人間エージェントとの所与の対話においてiルータ101が従うマップとしての働きをする。ワークフローは、顧客入力に応答して、ワークフロー中の経路に沿ってiルータ101の「舵をとる」。ワークフロー中の場所は、その時点までに収集されたデータと共に、「コンテキスト」と呼ばれる。
ワークフローデザイナは、人間エージェント105の意図解釈をガイドするために、人間エージェント105に対する命令をワークフローに構築する。ワークフローデザイナは、XMLドキュメントの構築に焦点を合わせるようにカスタマイズされたEclipse(登録商標)ソフトウェア開発環境のバージョンを含んでよい。しかし、本明細書を検討した後には、当業者ならワークフローデザイナを開発できるであろう。
本発明の、性能および対話アーカイブ107は、任意の一般的なコンピュータサーバハードウェア上で維持できるデータベースを含む。性能および対話アーカイブ107は、顧客103とのシステムトランザクションのアーカイブデータ(すなわち、顧客103との対話からのサウンドクリップ、Eメール、チャットなどのリポジトリ)と、人間エージェント105についての性能データとの、両方を含む。
この例示的な実施形態は、対話のグループに関する統計を生成するために、または人間エージェント105の性能ランキングを表示するために、「リポータ」ソフトウェアを利用する。リポータソフトウェアはまた、対話アーカイブ107に記憶された顧客103のコンタクトを構成したサウンドクリップ、Eメール、またはチャットテキストから、顧客103との対話を再構築することができる。リポータソフトウェアは、一連の単純なスクリプトであり、任意の一般的なサーバハードウェア上で実行されてよい。
この例示的な実施形態はまた、マネージャ/管理者ソフトウェアも含み、このマネージャ/管理者ソフトウェアは通常、リポータソフトウェアと同じステーションから実行される。マネージャ/管理者ソフトウェアは、対話式応答システム100についての動作パラメータを設定する。このような動作パラメータは、負荷平衡、ワークフロー中の変更のアップロード、および他の管理変更のための、業務規則を含むが、これらに限定されない。特定の一実施形態では、マネージャ/管理者ソフトウェアは、標準的なコールセンタコンピュータワークステーション上で実行される小さいカスタムJava(登録商標)アプリケーションである。
サポートシステム108は、顧客103の要求に応答する際に利用できる多くのデータベースおよび顧客プロプライエタリシステム(Nuance(登録商標)などのオフザシェルフ自動音声認識(ASR)ソフトウェアも含む)からなる。例えば、サポートシステム108は、顧客情報または知識ベースのためのデータベースを含んでよい。音声認識ソフトウェアは、この例示的な実施形態では、顧客103の発話を解釈するのに使用されるオフザシェルフコンポーネントである。サポートシステム108はまた、テキスト−音声機能も含んでよく、これはしばしば、顧客103に対してテキストを読み上げるオフザシェルフソフトウェアである。
本発明の会社エージェント109は、ワークフローが問い合わせをする、顧客103要求を扱う人間エージェントからなる。例えば、顧客103が会社のことで援助を得ようと意図しており、外部委託された人間エージェント105がこの意図を識別した場合、ワークフローは、電話を会社エージェント109に転送するよう、対話式応答システム100に指示することができる。
対話式応答システム100の要素は、この例示的な実施形態ではTCP/IPネットワークを介して通信する。通信は、iルータ101が従うワークフローによって駆動される。この実施形態における「データベース」は、フラットファイルデータベース、関係データベース、オブジェクトデータベースまたはこれらの任意の組合せとすることができる。
次に図2から図5に移るが、これらの図は、顧客が電話を介して対話式応答システム100と対話するときに、どのように対話式応答システム100によって情報が取り出され処理されるかについての例を示す。図2に示す例は、必要な全てのハードウェア、ソフトウェア、ネットワーキングおよびシステム統合が完全であること、並びに、ビジネス分析者がグラフィックワークフローデザイナを使用して顧客対話における可能性あるステップを策定済みであることを前提とする。ビジネス分析者はまた、対話式応答システムが顧客103に対して言うかもしれないどんなことについても、テキストを作成済みである。これらは、最初のプロンプト(例えば「お電話ありがとうございます。今日はどんなご用件ですか?」)、顧客への応答、追加情報の要求、「口ごもる音声」(iルータ101が応答を決定している間に顧客に送られる音)および締めくくりの言葉を含むが、これらに限定されない。テキスト−音声ソフトウェアまたはボイスタレントのいずれかが、ビジネス分析者によって書かれたサーバ側音声のそれぞれを録音する。このワークフローは、対話式応答システム100にロードされ、そこでiルータ101によって利用可能である。
ブロック201に示すように、対話は、顧客103が会社の顧客サービス電話番号に電話することで開始する。対話プラットフォーム102(この場合は電話サーバ)が、電話に応じ、ブロック202に示すように、(1)発信者のANI/DNIS情報、または(2)他の業務規則(例えば、電話が入来した回線または中継線)のいずれかに基づいて、ワークフローデータベースに記憶された適切なワークフローを取り出す。電話サーバは、ブロック203に示すように適切なウェルカムプロンプトを再生し、顧客はこのプロンプトに応答する(ブロック204)。
例えば、架空の航空会社であるインターエアが、本発明のコールセンタ実施形態による対話式応答システムを介して顧客サービスを提供する。従って、対話プラットフォーム102は電話インタフェースであり、iルータ101は、インターエアにふさわしいワークフローを選択する。
図3Aの例証的なワークフローに、ワークフロー中の第1のポイントまたはコンテキストを示す。顧客発話はなく、従って、キャプチャすべき(かつ応答すべき)意図またはデータはない。唯一の応答は、挨拶、および顧客入力を求めるプロンプトである。
処理は図2のフローチャート中のボックス204に進む。電話サーバは、顧客の口頭入力をディジタル化するのを開始し、iルータに接続する。この時点で、ワークフローまたは業務規則は、顧客に対する対話式応答を人間エージェントによって扱う必要があるのか音声認識ソフトウェアによって扱う必要があるのかを決定する。すなわち、iルータは、電話のための適切なワークフローをワークフローリポジトリから選択し、ワークフロー規則に従って顧客との会話を行う。
顧客の言葉を解釈するために、iルータ101は適宜、ブロック205に示すように、サポートシステムからのASRを使用するか、または顧客のオーディオをコンタクトセンタ中の人間エージェント105にストリーミングさせる。人間エージェント105がワークフローによって必要とされる場合は、iルータ101は、ブロック207に示すように、負荷平衡アルゴリズムを適用することによって、利用可能な人間エージェントを識別し、彼らの画面上でポップアップをトリガし(図3Bの、最初は空のポップアップ画面に示すように)、いくつかの選択可能な意図オプションを提示し、識別された人間エージェントに顧客オーディオをストリーミングし始める。本開示が与えられれば当業者なら思いつくであろうが、この負荷平衡は、様々な時点で、様々な要因のいずれかに基づいて、発話を解釈するためのより多いかまたは少ない人間エージェントを識別することを含む。ブロック210および211に示すように、人間エージェントは、顧客の発話をヘッドホンで聞き、コンピュータソフトウェアが発話の解釈を促す。
図4Aの例示的なワークフローによれば、1または複数の人間エージェントが聞く顧客発話は、「今日の午後のシカゴからロンドンへの自分のフライトを確認したい。」である。図4Bに示すように、エージェントの画面は、現在のコンテキスト(またはワークフロー中のポイント)を示す。この例証的なスクリーンショットでは、人間エージェントが選択できる、可能性ある要求(回答不能および終了を含む)が12個ある。稼働時には、エージェントに利用可能な可能性ある解釈は数百個ある。このように選択が多種多様であることで、解釈のフレキシビリティがエージェントに与えられ、これによりiルータは、解釈された意図に従ってそのワークフロー中で跳び回ることができる。従って、本発明の一態様によれば、iルータは、顧客が途中で主題を変えたとしても、適切に応答することができる。
それぞれの場合に、各エージェントは、ワークフローの現在のコンテキストで顧客発話の最もふさわしい解釈であると感じるものを選択する。図4Bの例では、人間エージェントは、「CFT」(フライト時間の確認)を選択し、出発都市および到着都市(または、顧客が発話する可能性のある他の事前プログラム済み情報)を入力するかまたはドロップダウンメニューから選択する。
ブロック208および209では、人間エージェントは、任意の応答遅延を補償するために、ステーションで受け取られた顧客オーディオクリップに加速を適用することを決定できることに留意されたい(応答遅延は通常、アプリケーションセットアップにおける遅れ時間、すなわち、人間エージェントのデスクトップソフトウェアがストリーミングオーディオを受けて適切なワークフローを表示するのにかかることになる時間に起因する)。ネットワークレイテンシは0.2秒前後である場合があり、アプリケーション遅延は、1+秒の範囲でより大きい可能性がある。アプリケーション遅延を補償するために、対話式応答システムは、ボイスクリップを加速させる(ただし歪みが認識できるところまではしない)。この目的は、顧客が応答を待つ間に目立った遅延を体験しないように、より「リアルタイムの」会話対話に向けて努力することである。加速は、言葉が電話サーバから流れてくるのに伴ってその言葉に適用される。加速は、リンク固有のレイテンシを克服することはできないが、加速により、人間エージェントは、どんなアプリケーションセットアップ時間も「回復」して、対話における遅れ時間の量を、理想的にはネットワーク中のレイテンシによって課される限度まで削減することができる。しかし、加速は任意選択であり、初心者のエージェントはよりゆっくりした再生を必要とすることがあるが、より経験を積んだエージェントは加速を適用することができる。
テスト213で、iルータは、顧客オーディオ解釈の精度をリアルタイムで評価し、各エージェントの速度/精度プロファイルを更新する。ブロック214で、iルータは、解釈を処理してワークフロー中の次のステップ(例えば、入力データに基づくデータベース検索)を実施し、次に、電話サーバを介して適切な応答を顧客に転送する(218)(解釈が正確であると見なされる場合)。解釈が正確であるとiルータが判定した場合、iルータは、音声認識ソフトウェアの解釈に基づいて、または1若しくは複数の人間エージェントの応答にキーアルゴリズムを適用することによって、応答の再生を電話サーバから顧客に向けて送る。この例では、応答は、図4Aの画面2の最後のブロックで与えられる。
精度を決定するために、iルータは、2人の人間エージェントの解釈を比較し、合意に達しない場合は、さらに解釈を求めて、第3の人間エージェントに対して顧客オーディオクリップを再生する(すなわち、「多数決規則」でどれが正確な応答かを決定する)。他の業務規則を使用して正確な解釈を決定してもよい。例えば、最も良い精度スコアを有するエージェントからの解釈を選択することができる。あるいは、解釈のうちの1つを選択して顧客に対して再生することができ(「・・・と仰っていると理解しております」)、顧客の応答が、その解釈が正しかったかどうかを決定する。さらに、既知のデータから解釈を選択することもできる(例えば、Eメールアドレスの2つの解釈を顧客Eメールアドレスのデータベースと比較することができる、クレジットカード番号の2つの解釈のうちの一方のみがチェックサムアルゴリズムをパスすることになる、など)。
対話式応答システムは、ほぼ任意の数の人間エージェントが一度に同じ顧客対話を扱うことを可能にする。即ち、対話式応答システムは、忙しい時間中は2人のエージェントが聞くようにすることができ、または、より暇な時間中は7人の人間エージェントが聞くようにすることができる。さらに、電話の量が多い時間中は、「二重チェック」規則をなくすことによって精度を低下させて速い応答時間を維持することができる。エージェントの速度/精度プロファイルに基づいて高い信用ランクが割り当てられたエージェントには、二重チェックなしで作業するよう求めることができる。より素早いシステム可用性に対して精度をトレードオフすることに加えて、オーディオクリップの途切れのない流れが各エージェントに流れており、それにより人間エージェントの「怠け」時間が低減される。
図2のフローチャートに戻り、ブロック204に見られるように顧客が再び応答することになるか、ブロック215に示されるように、電話が転送されることになるか(ワークフロー中のステップによって若しくは業務規則によってそのように指示された場合)または顧客が電話を終了する。ブロック213で解釈が不正確であると見なされる場合は、iルータ101は、時間稼ぎ音声を顧客に対して再生し(ブロック216)、別の解釈を求めてオーディオクリップを追加の人間エージェントに送り(ブロック217)、その精度を再評価する。
iルータは、ワークフローをそのガイドとして使用して、顧客との対話を電話完了まで管理する。iルータは、電話の中の多くの時点で、解釈を求めて顧客発話を人間エージェントにストリーミングすることができる。電話が終結すると、顧客対話のスナップショットがアーカイブデータベースに保存される。人間エージェントの速度/精度プロファイルは、常に更新され維持される。
顧客の要求を解釈するのに人間の介入が必要ない場合はブロック206および214に示すように、ASRがオーディオクリップを解釈し、iルータが適切な応答を決定する。
インターエアの例を続けるが、図5Aに見られるように、キャプチャされた顧客発話は、2つの要求、すなわち食べ物および娯楽の問合せを有する。本発明の別の態様によれば、人間エージェントは、2つの意図、すなわち食事および映画を捕える。入力すべき関連のあるデータはない。というのは、対話式応答システムは、図4Bで入力された前のデータ(このデータは図5Bで見える)から、フライト情報を既に知っているからである。図5Bに見られるように、人間エージェントは、可能性ある意図のオンスクリーン表示から「一般」および「食事」を入力する。人間エージェントはまた「映画」も入力する。図5Aに見られるように、対話式応答システムは適切な応答を提供する。図5Bに見られるように、顧客が、「どんな食事が出ますか?」、「特別食はありますか?」、「映画の年齢制限はどの区分ですか?」など、食事または映画に関するさらに他の情報を要求した場合、適切な人間エージェント解釈オプションがコンピュータ画面上で突き止められる。
図6は、顧客が電子メール(当技術分野で一般に知られているEメール)を介して対話するときに、どのように対話式応答システムによって情報が取り出され処理されるかについての例を示す。ブロック601に示すように、対話は、顧客が会社の顧客サービスEメールアドレスにEメールを送ることで開始する。対話プラットフォーム(この例示的な実施形態ではゲートウェイサーバ)が、Eメールを開き、602に示すように、(1)顧客のto/from情報と(2)他の業務規則とのいずれかに基づいて、ワークフローデータベースに記憶された適切なワークフローを取り出す。ゲートウェイサーバは、602に示すように、適切な応答承認を送る。iルータ101は、ブロック603に示すように、負荷平衡アルゴリズムを適用することによって、Eメールを扱うための利用可能な人間エージェントを識別し、彼らの画面上でポップアップをトリガして解釈のための可能性ある意図を示し、1または複数の人間エージェントにEメールの内容を送る。人間エージェントは、ブロック604および605に示すように、Eメールを解釈する。テスト606で、iルータ101は、顧客Eメール解釈の精度をリアルタイムで評価し、各エージェントの速度/精度プロファイルを更新するが、このテストの後、iルータ101は、解釈を処理し、それに従ってワークフロー中の次のステップを実施する。最終的に、iルータ101は、ブロック607に見られるように、ゲートウェイサーバを介して適切なEメール応答を顧客に転送する(解釈が正確であると見なされる場合)。ブロック608に示すように、Eメールは適切なデータベースにアーカイブされる。解釈が不正確であると見なされる場合は、iルータ101は、別の解釈を求めてEメールを別の人間エージェントに送り(ブロック609)、その精度を再評価する。iルータ101は、ワークフローをそのガイドとして使用して、顧客との対話をEメール応答まで管理する。
図1〜図6に関する上記の対話式応答システムおよびそれを構成するプロセスに対する考察は、1または複数の音声認識および関連サブシステム108の動作を含む。IVRシステム100の実現には、実際、人間による対話の必要性を最小限に抑えるためにこのようなサブシステム108が顧客の発話のかなりの部分を認識できることが必要である。
次に図7を参照すると、IVRシステム100の一部として、訓練サブシステム710が含まれる。稼働時には、訓練サブシステム710は、サブシステム108中のリアルタイムASRに機械学習機能を選択的に提供して、新しいまたは変更された顧客対話に対してこれらが非常に素早く適応できるようにする。例えば、IVRシステム100が会社に対して最初にインストールされたとき、組込みASRの一般的な機能は、実際の顧客対話にはあまり使えないことがあり、特に、これらの対話が業界特有の用語を多く含む場合にはそうである(例えば、接地事故回路遮断装置を注文するために電話する電気工は通常、「GFCI」という頭字語を使用するであろうが、これを容易に認識するASRはほとんどないであろう)。同様に、新しい提供物が利用可能になったとき、既存のASR機能は、前はうまくいっていたにもかかわらず障害を起こし始めることがある(例えば、過去の使用において「iPod(登録商標)」を正しく識別したASRが、「iPad(登録商標)」など似た名称の別の製品が導入されると障害を起こし始めることがある)。これらの変更は、ある適用例では頻繁でない場合があるが、他の適用例では定期的に発生する場合がある。例えば、ロックコンサートのチケットを販売するための適用例は、バンド名に対する新しい顧客要求に定期的に適応することが必要になる。
一実施形態では、訓練は、このような訓練に対する指示された必要性に基づいて行われる。ASRの精度が容認性閾値よりも十分に高い既存のシステムの場合、訓練は、仮に行われるとしても、たまにしか行われない可能性がある。このような場合、訓練は、例えば、電話の量が極めて少ない期間中(この期間中は、IA105は通常なら比較的暇である)だけ行うことができる。システムが新しい場合は、またはASRの成功が容認可能限度未満に下落しているときは常に、より多くの訓練が必要とされてよく、従って訓練サブシステム710はより頻繁にアクティブになる。
訓練サブシステム710の非リアルタイム訓練ASR711は、入力として、顧客の発話をiルータ101から受け取り、対応する意図をIA105から受信する。実際には、後述するように複数の訓練ASR711を使用することができる。
リアルタイム本番処理の場合と同様、非リアルタイム訓練のための処理は、ある実施形態では、単一のIAからの入力を含み、他の実施形態では、複数のIAからの入力を含む。異なるIAによって選択された意図の違いは、多大な追加の訓練を必要とする特に微妙な発話を示す可能性があるので、これらの違いは、ASRを訓練する際に非常に役立つ。用件意図が、「はい」または「いいえ」などのごくわずかなオプションしかない小さい文法を有することができ、「はい」および「いいえ」における発話の事前パッケージ済みの理解がASRに付属しているような、最も単純な形では、訓練は、文法整調に使用できる統計モデルを構築することからなる場合がある。より複雑な訓練では、言われる可能性のある発話の統計言語モデルを構築するために、領域知識を用いてASRの単語認識が援助される。
好ましい一実施形態では、IVRシステム100は、サポートシステム108中の複数の利用可能なリアルタイムASRを使用して実現される。実際には、各ASRが強みと弱みを有することが見出され、特定エリアでの成功は、特定の状況でどのASRを使用するかを決定するためにiルータ101によって使用可能であり、また、特定の状況での訓練からどのASRが利益を受けることができるかを決定するために訓練サブシステム710によって使用可能である。現在利用可能なASRは、カーネギーメロン大学(Sphinx)、Nunance、Dragon、Loquendo(登録商標)、Lumenvox、AT&T(登録商標)、SRI International、Nexidia、Microsoft(登録商標)およびGoogle(登録商標)からのASRを含む。厳選されたASRのみがコストなしで利用可能(例えばオープンソースライセンスの下で)なので、経済的な考慮事項により、サポートシステム108に含めるASRの数が制限される場合がある。iルータ101は、いずれか特定のコンテキストでうまく機能すると予想されるASRに本番要求を選択的にルーティングすることができるので、かつ、訓練サブシステム710も同様に、リアルタイムASRをそれらの性能の予想される向上に基づいて選択的に訓練することができるので、相互にいくぶん直交する性能特性を有する1群のASRを選択するのがしばしば有利であろう。このようにすれば、あるASRが別のASRの弱みを埋め合わせることを期待することができる。例えば、電話の言葉を処理するのに最適化されたASRは、ディクテーション機器からの言葉を対象に設計されたASRとはかなり異なる性能特性を有する場合がある。
IVRシステム100で使用されるリアルタイムASRの精度を高めるために、訓練サブシステム710は、訓練ASR711の非リアルタイム動作に基づいて、受信した各発話の意味に特有の訓練をリアルタイムASRに提供することによって、機械学習を容易にする。
一般に、ASRはいくつかの異なる態様で訓練される。第1に、ASRは、オーディオストリーム、およびオーディオストリームの各部分を、話されている単語の認識に至るための助けになれる構成要素に分類できなければならない。通常、これは、「音(phone)」として知られる類似するサウンドクラスと、「ダイフォン(diphone)」として知られるサウンド移行または結合と、「セノン(senone)」と一般に呼ばれる、より複雑な場合のある波形部分とのセットを、オーディオストリーム内で識別することを伴う。一般に、発話は、沈黙期間が検出される場所ではどこでも分割される。発話フレーム(10ミリ秒の時間フレームなど)を分割して、この時間フレーム内でオーディオの様々な異なる特徴面(振幅および周波数が増加しているか、一定であるか、または減少しているかなど)を抽出することによって、発話から特徴が導出される。カーネギーメロン大学から入手可能なSphinx ASRでは、39個の特徴が抽出されて、音声が「特徴ベクトル」として表される。通常、ASRエンジンには、それらの認識が固定されるというこの側面が伴い、このようなシステムのユーザは、どの特徴が分析されるか、またはどのようにそれらが分析されるかを変更することはできない。
ASRは、様々なモデルを使用して、生オーディオ波形から、発話に対応する単語の予測に進む。音響モデルは、受信したセノンに対する最も確率の高い特徴/特徴ベクトルを決定する。音声モデルは、音と単語をマッピングするが、単語は、固定辞書からくるものであるか、または、機械学習によって導出された語彙(若しくは「文法」)からくるものである。言語モデルは、前に認識された単語など、何らかのコンテキストに基づいて、候補単語選択肢を制限する。ASRは通常、これらのモデルの組合せを使用して、どの単語が発話に対応するかを予測する。以下で考察する実施形態における訓練の焦点は、後の2つのモデル、すなわち音声モデルおよび言語モデルだが、本明細書で対象とする概念は、音声認識で使用される他のモデルにも容易に適用することができる。
多くの場合、ASRの訓練は、前に認識された単語からのコンテキストを使用することによって、またはリアルタイムでない処理(すなわち、同じ顧客談話において後で認識された単語)のコンテキストを使用することによって、より効果的に達成することができる。このような訓練について以下に述べる。
まず音声モデルに目を向け、「I would like to fly roundtrip between Boston and San Diego.(ボストンとサンディエゴの間を往復して飛びたい。)」というユーザ発話を考えてみる。「オフザシェルフ」ASRは、これらの単語のいくつかを様々な話者にまたがって認識するのに、いくらか困難を有する場合がある。例えば、単語「roundtrip」を発音する際、何人かの話者は、「d」と「t」の子音の音を1つの音に省略する(rountrip)ことがあるが、他の話者は、これらを別々に発音する(これらが2つの単語「round」と「trip」であるかのように)ことがある。
一実施形態では、訓練サブシステム710は、これらの問題の各々に対処することによって、非リアルタイム訓練ASR711に機械学習を提供する。まず、訓練サブシステム710は、発話が最初に受信されたときにIA105によって決定された、発話に対応する用件意味に基づいて、ターゲット語彙を選択する。この場合、IAは「新規予約」を用件意味として選択した可能性が高い。単語「roundtrip」は、一般的な文法においては4万個の単語のうちの1つであったかもしれず、ごく低い統計発生率を有したかもしれないが、「新規予約」の意図に特有の文法においては、たった千個の単語のうちの1つかもしれず、はるかに高い統計発生率を有するかもしれない。従って、訓練サブシステム710は、特徴ベクトルがこの単語の標準化モデルからかなり逸脱するとしても、適用可能な文法を変更することによって、話されたこととして単語「roundtrip」を訓練ASR711が受諾する確率を大幅に上げる。さらに、「roundtrip」の追加の発話が「新規予約」の意図に関連付けられるようになるのに伴い、これらの発話は、「roundtrip」が話された既に認識済みのインスタンスの少なくともいくつかと、より近く合致することになる可能性が高い。従って、時が経つにつれて、単語「roundtrip」が「新規予約」の意図の中で発生する可能性と、この単語の発音のばらつきとの両方が、以下の2つの結果につながることになる。すなわち、(a)単語を認識する際の確実性がより高くなること(これは、「予約のキャンセル」の意図に関連する文法など、同じ単語を含む他の文法にも伝搬させることができる)、および、(b)単語が特定の意図にどれくらい頻繁に関連付けられるかに関する精緻化された統計によって、用件意図をよりよく予測できることである。
上述した発話の例に戻るが、早口の話者は、「Boston」と後続の単語「and」との間の区別を曖昧にして、全ての音をはっきり発音できないことがあり、それにより、訓練ASR711は、音「Bostonan」を分析しようとしていることがある。同様に、都市名「San Diego」が、話者によっては、むしろ「Sandy A-go」のように聞こえるようにして発音されることがある。この場合もやはり、一般化された文法ではなく「新規予約」特有の文法を選択することで、「Boston」および「San Diego」の認識が信頼度を持って達成される統計的可能性が劇的に高まる可能性が高いことになる。一層の精緻化として、訓練サブシステム710は、ユーザ談話全体の発話の中を通る反復的パスを利用して、訓練をさらに一層改善する。上述の例では、その後、談話中に発信者は、文の最後に、訓練ASR711によって容易に認識されるようにして「Boston」と言うことがある。「Boston」に関するこの話者の音響シグネチャが、ASRのマッピングに含められ、それにより、第2のパスでは、同じ話者の「Boston」発話は、前よりもよい「Boston」に対する合致と考えられることになる。同様に、話者は、2回目に、「San」と「Diego」との間でより区別を付けるようにして「San Diego」と言うことがあり、それにより反復的に認識を試みれば1回目の曖昧な発話がうまく認識される可能性がより高まることにつながる学習が提供される。長い顧客談話の場合、システムが認識できる単語を通して発信者の声特性がよりよく理解されるようになるので、複数の反復によって認識全体のかなりの改善に至ることができる。
ここで図10も参照するが、一実施形態では、意図分析者による実際の認識時点を使用して、オーディオストリームが、認識のための別々の発話に分解される(例えば訓練ASR711によって)。具体的には、発話意図「I want to take a flight from」の認識時点(1001、1004)、データ部分「Boston」の認識時点(1002、1005)、およびデータ部分「San Diego」の認識時点(1003、1006)は全て、十分に異なり、従って、オーディオを認識のための別々の発話に分解するのを容易にするために、時間フレーム自体が使用可能である。場合によっては、IAは、発話が完了する前(または後)に認識を提供することがあり(例えば、図10の1003に示すように、「San Diego」は、最後の「o」音の前にIAによって認識される)、従ってそのような場合は、時間フレームは、IAによって提供された認識の後(または前)の適切な休止で終わるように調節される。可能性ある用件意図およびそれらを表すのに使用される典型的な単語の数は、意図認識文法を絞り込むのに使用可能であり、収集されるデータのタイプ(例えば都市名)は、データ認識文法を絞り込むのに使用可能である。
言語モデルに移るが、訓練システム710はやはり、用件意図を利用して訓練を援助する。例えば、IAが「新規予約」の用件意図を示した場合、発話の中の単語「and」の少なくとも1つのインスタンスの前に1つの都市名がきて、後に別の都市名が続くことになる可能性が、統計的に非常に高いであろう。同様に、単語「from」または「to」が認識された場合、これらの単語の後に都市名が続く確率が統計的に非常に高いであろう。対照的に、IAによって決定された用件意図が「座席指定」である場合、これらの同じ単語「from」および「to」は、隣接する都市名と相関することはめったにないが、そうではなく、近くの数字と文字の対に相関するであろう(例えば「I would like to change from seat 39B to seat 11A.(座席39Bから座席11Aに変更したい。)」)。
このような言語モデル訓練はまた、ユーザの変化する言い回しに容易に適応することを可能にする。例えば、航空会社がイングランドへのサービスを開始した場合、航空会社は、同じ用件意図について、前に使用されていたのとは異なる言語を使用した要求を急に受け始めることがある。例えば、前の「I would like to fly roundtrip between Boston and San Diego.」の例は、英国人の顧客によって「I would like to book a return trip between Boston and London.」と話されるかもしれない。最初は、単語「book」は「新規予約」文法において高確率で現れないであろうが、この文法におけるこの単語の統計的使用は、追加の英国人顧客によってすぐに増加する。同様に、用語「return」の使用は、英国人顧客ベースの追加によって変化し、「新規予約」文法は、これを認識するように相応に調節される。
訓練サブシステム710はまた、用件意図と、談話の中の隣接する認識された単語との組合せに基づいて、認識候補についての統計を調節する。用件意図が「新規予約」であると決定され、また、最初、ユーザの談話の中の1つの発話のみが、使用可能な信頼度レベルでは認識できないという例を考えてみる。談話が都市名を1つだけ含んでいたと認識された場合、認識されなかった発話が別の都市名である確率が非常に高く、このシステムを使用する航空会社によって対応される都市名である確率はさらに高い。文法内の候補単語に対する確率を変更して部分的認識を行うと、いくつかの候補単語がそれ以上の考慮からうまく切り捨てられることがあり、1つの候補(おそらく都市名)だけが、使用可能な確実度レベルになることがある。この場合、機械学習は、この特定ユーザの都市の発音をASRのモデルに組み込み、それにより類似の発話の後続のインスタンスがより容易に認識されるようにする。
許容可能な用件意図ごとに別々の文法を維持することで、通常なら可能であるはずよりも迅速なASRの教授を訓練サブシステム710が提供するのが容易になる。例えば、発話「book」、「notebook」および「Bucharest」には、強い音声上の類似性がある。これらの意味のうちのどれがユーザの発話に対応するかの決定は、用件意図を考慮することによって大きく向上する。例えば、用件意図が「遺失物取扱所」である場合は、「book」(その名詞の意味の)および「notebook」(「notebook computer」におけるような)は、他のコンテキストの場合よりもずっと高い可能性で現れるであろう。用件意図が「新規予約」である場合は、「book」(その動詞としての意味の)もまた、非常に高い可能性で現れるであろう。同様に、用件意図が「新規予約」である場合は、「Bucharest」は、用件意図が例えば「座席選択」であった場合よりも、高い可能性で現れるであろう。
訓練ASR711自体が十分に訓練された後は、用件意図と言語モデルとの間の相関を非常に頑強な方式で作り出すことができる。例えば、似たように聞こえる単語のマッピングの例示的な一部は、次のとおりとすることができる。
Figure 2015018238
訓練ASR711は、サポートシステム108からのリアルタイムASRに勝る2つの利点を有するので、言語モデル統計を作り出すのに特によく適する。第1に、本番動作に使用されないので、リアルタイムで動作する必要はなく、従って、リアルタイム処理に使用されるだけの十分な素早さで認識を実施することが少なくとも比較的中程度のコンピューティングプラットフォーム上ではできないはずの、より複雑な認識アルゴリズムを利用することができる。これにより、訓練ASR711は、サポートシステム108中のリアルタイムASRが認識できないであろう発話を認識することができる。第2に、訓練ASR711は、顧客談話からの演繹的な情報だけでなく、帰納的な情報も利用することができる。従って、対話の中の全ての発話が分析されるまで待機し、次いで認識時に複数のパスをとることができ、おそらく、後の反復では、成功する可能性がより高くなる。前述のように、「Bostonan」のように聞こえる最初のユーザ発話は、2回目の「Boston」の発話の後には、はるかに容易に認識することができる。
訓練ASR711は、時の経過に伴って、関連する各用件意図と共に使用される言語要素に関係する一連の統計を構築する。一実施形態では、複数の訓練ASR711が使用され、各訓練ASR711は統計全体に貢献する。ある実施形態では、統計は認識に関する確実性の尺度を含み、この尺度は、単一の訓練ASR711による認識の複数のインスタンスに基づくか、複数の訓練ASR711間の一致に基づくか、又はこの両方に基づく。
このようにして作り出された統計は、サポートシステム108中のリアルタイムASRのいずれかによって使用可能である。サポートシステム中の、リアルタイム認識に使用できる種々のASRの各々は、通常、訓練のためのそれ自体のメカニズムと、どのように言語モデルを訓練のためにこのメカニズムに入力できるかに関する対応する仕様とを有する。好ましい一実施形態では、訓練サブシステム710は、それが作り出す統計をサポートシステム108中のASRごとにフォーマットし、それにより、訓練サブシステム710によって生成された統計をこれらのASRの各々が利用できるようにする。実際には、ASRは、それらが訓練のためにサポートするメカニズムにおいて大きく異なり、従って、訓練アルゴリズム712は、既存の各ASR、並びにサポートシステム108に追加される可能性のある新しい各ASRに適切な方式で、訓練データを収集し、フォーマットし、ASRに提供するように、容易に構成可能である。リアルタイムASRの性能は訓練に伴って向上するので、その認識の品質は、処理210、211でリアルタイムASRがIA105の機能に取って代わるのを可能にすることができる。
訓練サブシステム710はまた、各ASRの機能と共に機能して、ASR訓練がIVRシステム100中での使用に最大限に活用されるのを確実にする。例えば、ASRは、センテンスツリーを使用するなどして、いつ十分な発話部分が統計分析の実施に使用可能と認識されるかについての閾値の決定をサポートすることができ、訓練アルゴリズム712は、訓練の進展を決定するためにこのような特徴に適合するように構成される。
サポートシステム108中のリアルタイムASRは、異なる統計処理を必要とする2つの異なる方法で使用される。第1の方式では、これらは、対応する用件意図をIAが決定した後で、プロセスを認識するのに使用される。例えば、1または複数のIA105が、発信者によって話された文についての用件意図として「新規予約」を選択する場合があり、これに基づいて、サポートシステム108中の1または複数のリアルタイムASRが、発信者によって話された特定の単語を認識しようとすることになる。
第2の方式では、IAではなくリアルタイムASRを使用して用件意図が決定される。これは、発信者によって話された特定の単語を決定するのとは異なる認識タスクである。例えば、用件意図が「新規予約」である可能性があるか「座席要求」である可能性があるかを決定することは、「新規予約」に関する単語「から」および「まで」、並びに、「座席予約」に関する単語「通路側」および「窓側」など、各意図に特有の、可能性の高い少数のキーワードを認識することを伴うことがある。サポートシステム108中のあるタイプのASRは、用件意図を決定することに、よりよく適する場合があり、別のタイプのASRは、その用件意図に基づいて単語を認識することに、よりよく適する場合がある。一実施形態では、訓練サブシステム710によって提供される、リアルタイムASRごとの訓練統計のフォーマットは、リアルタイムASRが意図の決定に最適化されることになるか、または決定された意図に基づく単語認識に最適化されることになるかに基づいて、調節される。
訓練プロセスの一部は、機械学習がサポートシステム108中のリアルタイムASRに対してどれ位効果的であったかを決定することを含む。これは妥当性検査と呼ばれる。好ましい一実施形態では、妥当性検査は訓練サブシステム710によって実施される。代替的実施形態では、妥当性検査はiルータ101または専用の妥当性検査プロセッサ(図示せず)によって実施される。妥当性検査では、ASRを、相互と、およびIAと並列で動作させて、それらの性能がどれ位匹敵するかを決定する。各訓練インスタンスは、IAによって提供される用件意味ごとに文法使用の統計モデルおよび確率を作り出すのに使用される、より多くの情報を提供する。状況によっては、IAからの履歴データもまた、発話に対して利用可能な場合のある予期される自動化レベルを決定する。IAが、発話に対して複数の意味をいつも決まって提供する場合、ASRは、かなりのコンテキスト訓練が可能な場合にのみ使用可能となるであろう。頑強なコンテキスト処理を有するASRは、そのような発話を正しく処理できるかもしれないが、コンテキスト的に強くないASRは、どれだけ多くの訓練が提供されるかにかかわらず、最低閾値を満たすことができないかもしれない。例えば、発話「IP」は、「インターネットプロトコル(Internet Protocol)」または「知的所有権(Intellectual Property)」を意味する可能性がある。両方の意味が一般的である適用例で使用された場合、ASRが訓練後に2つの意味のうちのどちらが適切な意味かを導出できない限り、処理精度の誤りが予想されることになる。
訓練が進むにつれて、リアルタイムASRの性能は向上する。IVRシステム100内でこのASRを特に使用する必要性を満たすほど統計的に安定した時点で、ASRは本番動作に配置される。例えば、発話についての用件意味を決定するように意図されたASRは、その性能がIAの性能に達するほど十分に訓練された時点まで、非本番モードでIAと並列で動作することができ、十分に訓練されたとき、本番動作に切り替えられて、処理210、211におけるIAの負担が軽減される。
典型的な一実施形態では、リアルタイム本番処理と訓練処理の両方で、2人のIAからの入力が2つのASRに提供されて、精度が高められる。同じユーザ談話における同じ発話についての2人のIAからの入力が異なる場合、ある実施形態では、発話は、意味の決定のために第3のIA(場合によってはIAの品質の程度に基づいて選択される)にサブミットされる。
妥当性検査を介して決定されるように、かつ環境の特質に基づいて決定されるように、ASRが一定閾値よりも高い精度レベルに達したとき、訓練処理は遷移する。例示的な一実施形態では、ASRは本番処理に使用されるが、訓練は前述のように継続する。求められるものがより厳しくない環境では、または利用可能なリソースがより少ない環境では、訓練は全て終わる。第3の環境では、訓練は継続するが、優先順位が下がる(例えば、訓練処理は、一定量の利用可能な処理キャパシティがあるときにのみ、またはASRの性能が一定程度まで劣化したことがわかったときにのみ、行われる)。
ある実施形態では、妥当性検査プロセッサが、ASRをテストしてそれらの性能レベルを決定するように構成される。妥当性検査は、ある実施形態では、訓練段階の後に続き、他の実施形態では、訓練と同時に実施される。妥当性検査からの結果に基づいて、iルータ101は、ASRおよびIAへのその発話割り当てを変更する。例えば、ASRが用件意味の決定においてIAと比較して十分にうまく機能することがわかった場合、iルータ101は発話を、IAにルーティングするよりもはるかに頻繁にこのASRにルーティングする。有利にも、このようなルーティングは非常に適応可能かつ構成可能である。図3〜図5に関して使用した例に従うと、iルータ101は、性能統計に基づいて、ウェルカムメッセージの直後の応答解釈にはIAの方を選ぶことができ(図4B)、映画または食事についての応答解釈には第1のASRの方を選ぶことができ(図5A)、座席指定や飛行機情報についての応答解釈には第2のASRの方を選んで、図5Bに示される他の選択肢を選択することができる。ある実施形態では、特定の解釈エリアごとに2つのASR(210、211におけるように)が選択されて、精度が保証される。両方のASRが同じ解釈を提供する場合は、対応する応答がユーザに提供される。ASRが異なる場合は、217におけるように、発話はIAに提供されて、判決を介して意味が選択される。
結果として、人間IAは、ASRが適切に機能できない特定のときだけ必要とされ、処理は、業務基準に応じてIAの介入の後すぐにASRに戻ることができ、IAは顧客談話に接続されたままでいる必要はない。訓練がASRを向上させることができる場合、訓練は、IVRシステム100全体に対する多くの追加コストも他のオーバヘッドも課すことなく、ASRを向上させる。適切な自動応答がユーザに提供されるように、単一のユーザ発話を聞いてユーザの意味または意図を所定オプションのドロップダウンリストから選択すること以上には、人間の対話が関与する必要はない。
図8を参照すると、ASR訓練に関する例示的な処理フロー800が示されている。ユーザ発話を含むディジタル化されたオーディオストリームが、1または複数のIA105に提供され(801)、また、図7に関して述べたように使用可能な意図応答をIAが提供できる場合は、オーディオストリームは訓練ASR711に提供される。訓練ASR711がオーディオをそれに相当するテキストに変換するために発話を十分に認識(802)できない場合は、発話は廃棄され、訓練に使用されない。
ASR711が発話を十分に認識(802)できる場合は、図7に関して上述したように、統計モデル/整調文法(例えば、IAによって提供された意味およびデータに対応する文法)が構築される(803)。ASR711によって決定された、一定信頼度閾値未満である発話のいくつかについては、ASR711による意図またはデータの認識をIAが検証するための追加の検証ループを利用することができる。認識が確認された場合は、処理は803について述べたように進むが、そうでない場合は、結果は廃棄される。
次に、訓練ASR711の性能が今や十分であるかどうか決定する(804)ためのテストが行われる。性能閾値は、適用例のクリティカル性に依存する場合がある。ヘルスケア適用例は、例えば無料旅行者情報サービスがエラーに対して耐性を有するであろうよりもずっと、エラー耐性が低い場合がある。性能閾値はまた、新しい単語または句が統計モデルに追加されるレートに依存する場合もある。性能が十分でない場合は、処理は戻って、ディジタル化(801)でき追加の訓練に使用できるさらに他の発話に備える。性能が十分である場合は、訓練の結果が適用されて、サポートシステム108のリアルタイムASRが、訓練から得られたモデルで構成され(805)、これらのリアルタイムASRは妥当性検査され、適切なら本番処理に使用される。
ある実施形態では、次いで訓練は完了と見なされる。ASRは、最初は暫定モードで、即ちIAのシャドーとして、オンラインにされる。ASRが、業務基準によって(例えば、ASRからの結果と1または複数のIAの結果とを比較することによって)決定されるように品質レベルを満たす場合は、ASRは、完全に本番で使用され始め、それにより処理210でIAに取って代わる。同様に、第2のASRの性能が測定され、このASRが認識において十分な品質を生む場合は、オンラインにされて、処理211で第2のIAに取って代わる。他の実施形態では、特定の環境によって決まる時点でさらにテスト806が行われて、ASRの性能が何らかの適用可能な最低閾値未満に下落したかどうか確認される。下落した場合は、フローは追加の訓練のために801に戻る。性能が容認可能である場合は、処理は806にループバックし、適切な時点でテストを繰り返す。多くの試行の後でも性能が容認可能閾値に達しない場合は、ある実施形態では、訓練は放棄される。
図9は、本明細書で参照されるコンピュータ/プロセッサのいずれかとして使用されるコンピュータ900の例を示す高レベルのブロック図である。図示されているのは、チップセット904に結合された少なくとも1つのプロセッサ902である。チップセット904は、メモリコントローラハブ920および入出力(I/O)コントローラハブ922を備える。メモリコントローラハブ920にはメモリ906およびグラフィックスアダプタ912が結合され、グラフィックスアダプタ912には表示デバイス918が結合される。I/Oコントローラハブ922には、記憶デバイス908、キーボード910、ポインティングデバイス914およびネットワークアダプタ916が結合される。コンピュータ900の他の実施形態は、異なるアーキテクチャを有する。例えば、ある実施形態では、メモリ906はプロセッサ902に直接に結合される。ある実施形態では、キーボード910、グラフィックスアダプタ912、ポインティングデバイス914および表示デバイス918などのコンポーネントは、直接人間対話を必要としないある種のコンピュータ900(例えばある種のサーバコンピュータ)には使用されない。
記憶デバイス908は、ハードドライブ、CD−ROM、DVD、またはソリッドステートメモリデバイスなどのコンピュータ可読記憶媒体である。メモリ906は、プロセッサ902によって使用される命令およびデータを保持する。ポインティングデバイス914は、マウス、トラックボールまたは他のタイプのポインティングデバイスであり、キーボード910と共に使用されてコンピュータシステム900にデータを入力する。グラフィックスアダプタ912は、表示デバイス918上に画像および他の情報を表示する。ネットワークアダプタ916は、コンピュータシステム900をインターネット1001に結合する。コンピュータ900のある実施形態は、図9に示すものとは異なるコンポーネントおよび/またはそれ以外のコンポーネントを有する。
コンピュータ900は、本明細書に述べる機能を提供するためのコンピュータプログラムモジュールを実行するように適合される。本明細書において、用語「モジュール」とは、指定された機能を提供するのに使用されるコンピュータプログラム命令および他のロジックを指す。従って、モジュールは、ハードウェア、ファームウェアおよび/またはソフトウェアにおいて実現することができる。一実施形態では、実行可能コンピュータプログラム命令で形成されるプログラムモジュールが、記憶デバイス908に記憶され、メモリ906にロードされ、プロセッサ902によって実行される。
本明細書に述べるコンポーネントによって使用されるコンピュータ900のタイプは、実施形態、およびエンティティによって使用される処理力に応じて異なる。例えば、顧客のコンピュータ103は通常、限られた処理力しか有さない。対照的に、iルータ101は、本明細書に記載の機能を提供するために共に働く複数のサーバを含む場合がある。ある適用例では、単一のプロセッサ(または1組のプロセッサ)が、サポートシステム108中のリアルタイムASRと、訓練サブシステム710の訓練ASR711および他の機能との、両方を実現することができる。これらの適用例では、どれ位多くの訓練をいつ行うかを決定することで、比較的安価かつ適度に強力なコンピュータを、訓練と本番ASR処理との両方に使用することができる。
前述のシステムおよび方法は、音声対話に適用可能であるだけでなく、実施形態によっては、例えばビデオ、テキスト、Eメール、チャット、写真および他の画像でも使用可能である。これら他の実施形態は、例えばオンラインチャット、セキュリティ監視、テーマパークコンシェルジュサービス、およびデバイスヘルプなどの適用例で使用可能である。具体的な例として、自由回答式の質問が前述のようにして解釈され処理されるヘルプ機構を、Apple,Inc.によって提供されるiPhone(登録商標)やiPadデバイスなどの消費者デバイスに提供することができる。同様に、前述の技法を使用して、ビデオストリームおよび画像の認識を容易にすることもできる。
以上の考察から明白なように、顧客対話の一部を処理するのに、HSRサブシステムよりもASRサブシステムの方が適切であることもある。可能な最良のユーザ体験を提供するためには、アプリケーションプログラム(ワークフローリポジトリ106に記憶されたもの等)が音声認識リソースを求める場合に、このような認識に使用されるリソースの選択(即ち、ASRまたはHSR、並びに現在の認識タスクに最もよく適する特定のASR/HSRリソースの選択)を最適化することによって、利益を達成することができる。
図11を参照すると、適切な処理リソースのこのような選択を達成するためのASRプロキシ1102の動作のブロック図が示されている。より具体的には、以下に述べる機能は、様々な実施形態で、ボイス拡張可能マークアップ言語(VXML)ブラウザ内でのメディアリソース制御プロトコル(MRCP)におけるカプセル化と、ウェブサービスと、アプリケーションプログラミングインタフェース(API、例えばJavaまたはC#言語で書かれたもの)とのうちの、1または複数によって実現される。特定の一実施形態では、様々なベンダからの共通ASRが、VXMLプラットフォーム(ブラウザ)への標準インタフェースとしてMRCPを使用し、この環境では、ASRプロキシ1102は、VXMLプラットフォームと共に実行されるソフトウェアアプリケーション1101にとってはASRエンジンに見えるように構成されるが、そうではなく、ASRサブシステムとHSRサブシステムの両方からの音声認識リソースを提供することによって、VXMLアプリケーションと音声認識機能との間のプロキシとしての働きをする。
後でより詳細に述べるように、ASRプロキシ1102は、1または複数のASRサブシステム1104(サポートシステム108の考察に関して上述したものなど)またはHSRサブシステム1106(オフサイトエージェント105の考察に関して上述したものなど)を自由に選択するように構成される。統計のデータベースサブシステム1105に基づいて、ASRプロキシ1102は、認識決定エンジン1103(この動作については図12に関してさらに述べる)および結果決定エンジン1107(この動作については図13〜図16に関してさらに述べる)と通信して、いずれか特定の時点でどのASR/HSRリソース1104、1106を利用するかに関する決定を行う。いずれかのHSRリソースが使用のために選択された場合は、オフサイトエージェント105に関して上述したように、対応するユーザインタフェース情報が、適切なHSRデスクトップワークステーション1108に提供される。
ASRプロキシ1102は、発話がASRによって認識されるべきかまたはHSRによって認識されるべきかをソフトウェアアプリケーション1101の開発者が考慮する必要性を軽減する。従って、このようなソフトウェア開発者は、コンピュータで従来使用されてきたものよりも人間らしい音声ユーザインタフェースを構築する(かつその利用可能性を想定する)ことができる。
図11をより詳細に参照すると、様々な実施形態で、ソフトウェアアプリケーション1101は、様々な目的を果たす。一実施形態では、ソフトウェアアプリケーション1101は、フリーダイヤル発信者補助のためのIVRシステムであり、別の実施形態では、タブレットコンピュータ上の対話式ヘルプアプリケーションである。ソフトウェアアプリケーション1101は、何を認識すべきかをASRプロキシ1102に教える(すなわち文法をASRプロキシ1102に提供する)こと、並びに発話(通常は、.wavファイルなどのオーディオファイル、またはリアルタイムオーディオストリーム(例えばMRCPリアルタイムプロトコルストリーム))をそれに提供することによって、ASRプロキシ1102に指示する。ASRプロキシ1102は、予想されるように、発話を正しく認識したというASRの信頼度を示す信頼度スコアと共に、認識したものの「テキスト」または意味で応答する。
ASRプロキシ1102は、従来のASRとは異なる機能を有することができるので、ASRプロキシ1102は、例えば統計および決定に関する文法メタタグ中にある追加情報を必要とする場合がある。この追加情報は、プロンプトおよび文法を識別するための固有の方式、現セッションを識別するための固有の方式、「声」またはユーザを識別するための固有の方式(話者の音響モデルの学習を継続するため)、並びに、ASRプロキシ1102の挙動を指定するための閾値などである。ある適用例では、文法は事前定義済みまたは組込みである。他の適用例では、文法は組込みではなく、従って、文法に関係するメタ情報(エージェントの決定を枠組みにはめたりガイドしたりするためのユーザインタフェース情報など)が提供されて、可能性ある応答がよりよく定義される(例えばHSRサブシステムの場合)。
ソフトウェアアプリケーション1101が、発話を認識するようASRプロキシ1102に要求すると、ASRプロキシ1102は、処理を認識決定エンジン1103に渡す。認識決定エンジン1103は、どのように発話を認識するかを決定することを担う。例えば、ソフトウェアアプリケーション1101によって提供されるパラメータおよび信頼度閾値が、この決定に影響を及ぼすことがある。具体的な例として、極めて高い認識品質を適用例が必要とする場合、認識決定エンジン1103は、認識がHSRリソース1106のみによって達成されるよう指示することができる。他方、適用例はコストが最も重要だと考える場合もあり、その結果、デフォルトではASRリソース1104のみが使用されるよう指示して、HSRリソース1106の使用は、ASRを使用するとエラーが多くなる場合のみに取っておくこともできる。
一実施形態では、認識決定エンジン1103は、適用例の特定の要件を満たすように適切な閾値を変動させて、同様の決定を自動的かつ動的に行う。従って、資産の多い銀行顧客には、高い品質閾値を使用することができ、一方消費者からの公共料金支払いの問合せには、より低い容認可能閾値が与えられる。この実施形態では、閾値は、過去の認識試行に基づいて計算された履歴統計に基づく。
ASRリソースの使用とHSRリソースの使用との間で選択することによってだけでなく、このようなリソースの組合せを選択できるようにすることによっても、有益な結果が得られることがわかっている。例えば、あるパラメータセットは、複数のASRリソースによって認識されるように発話をサブミットすることによって最もよく満たされ、別のパラメータセットは、単一の特定ASRに発話をサブミットすることによって最もよく満たされ、さらに別のパラメータセットは、ASRリソースとHSRリソースの混合に発話をサブミットすることによって最もよく満たされる場合がある。実際には、ASRが訓練または整調された程度(例えば上記の訓練に関する考察のとおり)、ASRが特定の文法について妥当性検査されたかどうか、複数の認識経路のコストが容認可能かどうか、および履歴結果などの事柄は全て、いずれか特定の状況でどのリソースを適用するかを決定する際に役立つ。
同様に、発話に関係するセキュリティメタタグも、最も適切な認識リソースを決定するのに役立つ。例えば、発話が社会保障番号であることを示すメタタグを、ASRリソースによって処理されるように送って、人物に関する個人情報を人間が入手する可能性を回避することができる。
ある実施形態で考慮される別のパラメータは、様々なシステムリソースのアクティビティのレベルである。人間のスタッフに多量の要求が溜まっている場合、この未処理要求は、ASRリソースの使用を増加させることの方を選ぶためのパラメータとして使用可能である。
ある実施形態では、同じタイプであろうと異なるタイプであろうと複数のリソースを使用して、結果の二重チェックが提供される。
さらに別の実施形態では、認識決定エンジン1103は、現在のオーディオストリームの長さを動的に把握しており、これを、対応する文法によって定義される予想される発話の長さと比較する。例えば、発話が、「赤(red)」、「緑(green)」、「青(blue)」の3色のうちの1つだけからなる文法を有すると予想され、実際の発話の長さが3秒である場合、発話が文法中の予想される単一音節の色のうちの1つでないという予期に基づいて、発話をASRリソースに認識させるという前の決定を変更し、ASRに加えてまたはASRに代えてHSRリソースに認識させることができる。このような手法は、「意外な」発話を認識するための最終的な時間を最小限にし、従ってASRプロキシ1102の全体的な効率を高めることがわかっている。
上述したように、ASRプロキシ1102および対応するエンジン1103、1107の動作は、システムを個人化するための統計、閾値および他の固有情報を広く利用して、ソフトウェアアプリケーション1101のニーズに対応する。この情報は、図11に示すように統計データベース1105に記憶される。例えば、ASRの動作の結果は、信頼度スコア統計としてデータベース1105に記憶され、このASRについての総統計は、ソフトウェアアプリケーション1101によって必要とされる適用可能な業務規則または他の規則の下でこのASRが使用可能かどうかに関して考慮される。さらに、話者、プロンプト、文法、適用例、認識方法(例えばASR、HSR、単一ASR、複数ASR、複数HSR)、信頼度、合致なしまたは入力なし、および訓練/整調など、発話に関するあらゆる統計は、ASRプロキシ1102によってデータベース1105に記憶される。
前の図に関して述べたのと同様にして、発話に対する使用可能な結果をASRが提供できなかった場合は、発話は、認識/不一致解決のために、HSRリソースに送られる。統計は、ASRだけでなくHSRについても維持され、統計はさらに、個別の話者ベースでも維持される。従って、ASRが特定の話者の認識において特に効果的であることがわかった場合、同じ話者からの後の発話にこのASRが使用される可能性を増大させるために、統計が維持および更新される。同様に、統計は、個別の文法ベースでも維持され、それにより、この場合もやはり、予想される文法、またはプロンプト/文法の組合せに基づいて、使用する適切なリソースを認識決定エンジンが選ぶ可能性が最大化される。例えば、「はい/いいえ」文法は、「あなたはジョンスミスですか?」など、ASRによる単純なプロンプトの認識にはより効果的であろうが、「今日は先週の同じ日に比べて気分がいいですか?」など、より複雑な質問には、効果がより低いであろう。
上記から一般化すると、統計は、様々な根拠で生成され、いつ特定のASR/HSRリソースを使用するかについてインテリジェントな決定が行われるように維持される。信頼度レベルに基づいて、高信頼度のASR認識が可能な文法を、より頻繁にソフトウェアアプリケーション1101によって使用することすらできる。例えば、「はい」または「いいえ」文法は、単純なASRリソースでは信頼度が非常に高いであろう。統計は、「あなたの電話番号を(555)123−4567として頂戴しておりますが正しいでしょうか?」などの単純な確認ステートメントから、「この1週間、気分がよかった場合は「はい」と言って下さい。気分が全く優れなかった場合は「いいえ」と言って下さい。」などのより複雑なコミュニケーションまでの、プロンプト/文法の組合せに関して記録される。
本明細書における文法に関する考察は、文法とプロンプトの組合せに拡張可能かつ一般化可能である。例えば、ある統計は、現在のセッションにおける現在の話者の1組の発話(すなわち複数のプロンプトにわたる)についての全体的な信頼度に関係する。ASR認識がプロンプト/文法の組合せにかかわらず話者に対して失敗している場合、このことは、ASRプロキシ1102が、この話者に対してはASRを試みるどころかHSRに頼る方がよいであろうことを示す。他方、特定の話者の発話が、強い信頼度をいつも決まって示している場合、ASRプロキシは、好ましい認識方法としてASRを使用する。特定のセッションを超えて一般化するために、固有の話者参照IDにより、システムは、特定の話者を認識して(例えば、システムと接続するのに使用された電話番号に基づいて)、適切なASRリソースまたはHSRリソースを選ぶことができる。
ソフトウェアアプリケーション1101は、ソフトウェア開発者が特定の状況について適切だと思うことのできる、かつ、状況によっては、前の認識経験に基づいて時の経過に伴って生成された、閾値を提供する。例えば、HSRリソースを介した二重チェックまたは確認によって統計を生成することができる場合、これらの統計は、収集されてデータベース1105に記憶される。このような統計からの平均、標準偏差およびモード情報が、このようなアプリケーションの全体的な目標に基づき、ソフトウェアアプリケーション1101のソフトウェア開発者によって決定された必要性に応じて、様々な閾値に適用される。
さらに、統計は、ASRリソースにさらに依拠することが効果的でなくなるときを決定するのにも使用可能である。例えば、ASRおよび特定の文法についてのかなりのサンプルサイズの認識品質が、性能が容認可能な認識閾値を超える可能性が低いことを示す場合、このASRは、この特定の認識タスクに対しては将来の考慮から除外される。この認識タスクはより多くの訓練(または整調)を必要とする可能性があるが、複数の訓練/整調を試みてもうまくいかないことが判明することにより、この特定の認識試行は、プロンプト/文法に対する調節や、新しいASRまたは新しいバージョンのASRの使用などの変化が生じるまで、考慮から永久に除外される。
統計はまた、ASRを整調するのにも使用可能である。文法の整調は、文法「赤、緑、または青」において「赤」が使用されるときのパーセントなど、純粋に統計的であることもあり、または、「青」に対する「ターコイズ」など、類義語を含む可能性もある。後者の場合、整調は、HSRリソースを「文法外」レコグナイザに使用することによって容易になる(例えば、特定の場合に「ターコイズ」が「青」の類義語と考えられるべきであることを確認するために)。このような整調の直後は、適用例によっては、整調されたASRを、本番ベースではなく「サイレントな」限定テストベースで導入して、性能が容認可能な閾値よりも高いことを確実にすることが望ましいであろう。一実施形態では、ASRが当該の文法を認識できることを検証するために、かつ、上述した妥当性検査の間に信頼度閾値統計を計算するために、かつ、ASRによる認識が無効な場合に信頼度閾値統計を計算するために、HSRが利用される。妥当性検査の後でも、ASRまたはHSRリソースによるランダム二重チェックが、選択された認識方法の妥当性に対する継続的なチェックを提供する。このようなチェックの頻度は、一実施形態では、正しいASR認識と間違ったASR認識との間の統計的偏差に基づく。具体的な例として、正しい認識の平均信頼度が56であり、間違った認識の平均信頼度が36である状況を考えてみる。標準偏差が小さい(例えば8)場合、このことは、正しい認識と間違った認識との間には実際上の混乱はほとんどないことを示唆することになり、従って、二重チェックはあまり頻繁に使用する必要はない。しかし、標準偏差がより大きい(例えば12)場合は、文法信頼度閾値をより細かく整調するために、より頻繁な二重チェックが必要とされるであろう。
時の経過に伴って、統計は、ASRプロキシ1102に、その初期動作を変更するよう提案することができる。例えば、非常によい成功が統計的に示唆される場合、このことは、2つのASRの二重チェックから、1つのASRのみのチェックへの変更を提案することができる。または、成功が乏しい場合は、特に難しい文法に対して訓練若しくは整調する試みを止めて、代わりにHSRのみを使用することを提案することができる。
ASRの初期訓練と後続の整調は両方とも、共通の特性を共有し、これらは同様に実施されてよい。しかし、多くの場合、訓練は、初期整調よりも微妙な問題、大きい語彙および統計言語モデルを伴い、従って、整調ではうまく働く技法が、訓練には最適でないことがある。訓練は、かなりより大きいサンプルサイズ、HSRをより多く使用すること、および文法外ASRリソースに依拠することを必要とする場合がある。
特に複雑な文法は、異なる認識モデルを有する2つのASR(異なるベンダからの)による一貫した二重チェックを必要とすることがあり、異なる結果がHSRによって判決される。複数のHSR(例えば、2つのHSRと、違いを解決するように働く第3のHSR)に依拠することは、場合によっては、さらに利益をもたらすことができる(例えば、本明細書にその内容が完全に記載されているかのように参照によりその内容が組み込まれる特許文献5参照)。ASRプロキシ1102は、ソフトウェアアプリケーション1101を介して、これらの可能性のいずれにも対処するように構成可能である。
図12に移るが、一実施形態では、認識決定エンジン1201は、以下のように動作して、履歴統計(例えば、話者、セッション、文法および適用例についての)並びに他の要因に応じて、かつ様々な構成設定に基づいて、どのように発話を処理するか決定する。図12に示す例では、最初のステップとして、認識決定エンジン1201は、ASRが訓練または整調されるまでASRが使用されないように指示することができる。これを決定するためにチェック1202が行われる。そのように指示される場合は、チェック1207が行われて、このような整調/訓練が既に完了したかどうか判定される。そのように指示されない場合は、クイックチェック1203が行われ、訓練が必要でないほど文法が十分に単純(例えば文法がごく少数の語末しか有さない)かどうか判定される。文法が単純でない場合は、処理は再びチェック1207に移る。文法が十分に単純である場合は、処理はチェック1204に移る。上述したチェック1207では、この文法に対するASR成功についての記憶済み統計と、ASRが前にこの文法に対して整調/訓練されたかどうか(同じアプリケーション1101中であろうと、または類似の目標および対応する信頼度閾値を有する場合のある他のアプリケーション中であろうと)とを調べる。十分に訓練/整調されていることをこれらの統計が示す場合は、チェック1207は処理をチェック1204に渡す。そうでない場合は、処理はHSR処理1210に進む。
チェック1204では、データベース1105に記憶された信頼度統計、およびASRが特定の文法を理解できる閾値と、セッション内で話者を認識することの進行中の信頼度における第2の統計とを使用する。整調または訓練されない単純な文法の場合、ASRがどれくらいうまく認識タスクを実施しているかに関する進行中の統計が、アプリケーションによって提供される予期される認識信頼度閾値、またはプロキシによって計算された閾値と比較される。最初の認識が実施されつつある場合では、閾値は、満たされないと自動的に見なされるように設定されてよく、強制的にHSRによって認識されるようにして、プロキシによって閾値を最初に計算できるようにする。ある実施形態では、閾値は、現在の文法に関する履歴情報によって増補される。追加で、ASRの話者認識能力が、閾値よりも高い信頼度を示唆する場合は、ASR処理が使用されることになり、処理はチェック1205に移る。そうでない場合は、HSR処理1210が使用される。例えば、閾値は、ASR認識が信頼度(または調節済み信頼度、例えば高価値の話者)未満になる回数として設定することができる。適用例によっては、この回数は、信頼度未満のASR認識が1回でもあれば後続の認識をHSRによって実施させるように、低く設定される。
チェック1205で、ソフトウェアアプリケーション1101または別の構成要素(例えば訓練若しくは妥当性検査のための要件)により認識に二重チェックの使用が必要とされるかどうか判定する。二重チェックの使用が必要とされない場合は、処理はステップ1206に移り、単一のASRが認識に使用される。
二重チェックが必要とされる場合は、処理はチェック1208に移り、2つ以上のASRによって二重チェックを行うことができるか(例えば、訓練されたASRおよび他の形で容認可能なASRが、2つ以上利用可能なので)どうか判定する。行うことができる場合は、処理はステップ1209に移り、そのような複数のASRによって認識が実施される。行うことができない場合、例えばASRが認識に適さないかまたはASR妥当性検査が実施されることになる場合は、処理はステップ1210および1211に移り、従って、認識はASRリソースとHSRリソースの両方によって実施される。
ASRまたはHSRが認識を完了すると、認識に関する統計が統計データベース1105に記憶される。
図11に関して上述したように、ASRプロキシ1102はまた、結果決定エンジン1107と通信する。このようなエンジンの目的は、ASR/HSRリソースによる認識プロセスの結果を評価することである。図13を参照すると、例示的な結果決定エンジン1301が示されており、この動作について次のように述べる。結果決定エンジン1301は、1または複数のASR/HSRリソースからの認識の結果を検討し、適切な次のステップを決定する。最初に、チェック1302が行われて、報告された信頼度レベルが、ソフトウェアアプリケーション1101によって設定されたかまたはASRプロキシ1102によって計算された認識閾値を満たすかどうか判定される。満たす場合は、認識成功を反映するように妥当性検査統計が更新されて(1303)、結果決定エンジン1301の動作は完了する。満たさない場合は、さらに処理が必要とされるので、「フィラー(filler)」プロンプトがユーザに提供される(1304)。例えば、発信者は、「まだ作業中なのでお待ち下さい。」と言われることがある。発信者に提供される特定のメッセージは、このようなデフォルトメッセージである場合もあり、または、何らかの形の参照を介してソフトウェアアプリケーション1101によって提供および決定されるより具体的なメッセージである場合もある。
次いで処理は、1または複数のHSRリソースによる認識1305に移り、チェック1306に移って、HSRの認識がASRの認識と一致するかどうか判定される。一致する場合は、統計が再び更新される(1303)が、今回は、認識はHSRも必要としたので、統計は比例配分される。一実施形態では、比例配分は、信頼度閾値をクリアしたとすれば提供されたはずのスコアから3分の1の差引きである。
HSRとASRとの間の認識の結果が異なる場合は、チェック1308が行われて、二重HSRが使用されたかどうか判定される。使用された場合は、二重HSRからの結果が使用され(1307)、成功したASR認識を追跡する統計がデクリメントされる。使用されなかった場合は、追加のフィラーメッセージが再生され(1309)、追加のHSR認識が企てられる(1310)。HSR結果が一致しない場合は、HSRを使用する第3の試みが実施される(これは、ある実施形態では行われるが、他の実施形態では行われない)。HSR間に合意がない場合、「合致なし」という結果が返される。これは、どのレコグナイザも話者を理解しないことを示す(従ってASRへのどんな偏向も示されない)。現在の負荷条件に応じて、第2または第3のHSRを実施するのが実際的でないこともあり、その場合は、単一のHSR結果が使用されるが、やはりASRへの偏向はない。このような実施形態では、図14、図15および図16に関しても論じる結果決定エンジンの動作について、同様の処理が使用される。ASRがHSR認識と合致すると判定された場合は、処理は完了する。そうでない場合は、処理は1307に戻って、上述したように、HSR認識を適用し統計を更新する。
一実装形態では、ASRは、認識の結果として文法から選択する必要はないことに留意されたい。ASRはまた、「合致なし」、「入力なし」または「雑音」という結果を返すこともでき、その場合は、やはりアプリケーションによって確立された基準に応じて、前述のようにさらにHSR処理が使用される。
図14を参照すると、結果決定エンジン1401の一実施形態が示されており、この動作について以下のように述べる。結果決定エンジン1401は、2つ以上のASRリソースからの認識の結果を検討し、適切な次のステップを決定する。最初に、チェック1402が行われて、2つのASRリソースからの結果が一致するかどうか判定される。一致する場合は、チェック1403が行われて、信頼度が適切な閾値よりも高いかどうか判定される。一実施形態では、各ASRはそれ自体の閾値を有し、いずれかのASRが信頼度閾値よりも高ければ信頼度は十分であると考えられる。その場合、閾値よりも高いレコグナイザについては妥当性検査統計がインクリメントされ(1404)(一致するが閾値未満であるASRがあれば、それについての統計はインクリメントもデクリメントもされない)、処理は完了する。
結果が一致しない場合、または信頼度レベルが十分に高くない場合は、フィラーが発信者に対して再生され(1405)、1406で、認識を実施するようHSRリソースが呼び出される。次にチェック1407が行われて、ASR結果のうちの少なくとも1つがHSR結果と一致するかどうか判定される。一致しない場合、チェック1408が行われて、HSRが二重チェックHSRであったかどうか判定される。そうでなかった場合は、再びフィラーが再生され(1409)、追加のHSR認識1410が実施される。HSRがASRと一致する場合、またはHSRが二重チェックであった場合、または第2のHSR1410が実施された場合は、処理は移行して、一致するHSR結果を使用する(1411)。これは、一致しないASRからの統計をデクリメントすることを含み、また、一致するが閾値未満であるASRがあれば、それらからの統計をデクリメントする(ただし比例配分量、一実施形態では3分の1で)。次に、閾値より高い一致するASR妥当性検査統計があれば、それらがインクリメントされ(1412)、処理は完了する。
図15は、1または複数のASRリソースが1または複数のHSRリソースと共に使用される場合の、結果決定エンジンの処理を示す。この場合の、特定の結果決定エンジン1501の動作は、結果が全て一致するかどうかチェックすること(1502)によって開始する。一致する場合は、上記のように、チェック1503が行われて、各ASRについての信頼度がその閾値よりも高いかどうか判定され、閾値よりも高い場合は、妥当性検査統計がインクリメントされる(1504)。上述したように、一致するが閾値未満であるASRがあれば、それらについては比例配分の差引きでインクリメントされる。次いで処理は完了する。
結果が一致しない場合、チェック1505が行われて、二重チェックHSRが使用されたかどうか判定され、使用されなかった場合は、フィラーが再生され(1506)、第2のHSR認識1507が実施される。次いで、HSR結果が一致すると仮定して、上述したように、HSR結果が使用され(1508)、一致しないASRについての統計がデクリメントされる。HSR結果が一致しない場合は、処理は図13に関して上述したように継続する。一致するASRがあれば、それらについては、完全に、または上述したように比例配分方式で、妥当性検査統計がインクリメントされる(1509)。次いで処理は完了する。
図16を参照すると、HSRリソースのみが使用される場合の、結果決定エンジン1601の一実施形態の処理が示されている。最初のチェック1602で、二重チェックHSRが使用されたかどうか判定する(呼出し元アプリケーションによって二重チェックHSRが必要とされたと仮定して)。二重チェックが使用されなかった場合は、フィラーが再生され(1603)、第2のHSR認識1604が実施されて、認識が正しいことが確実にされる。
次にチェック1605が行われて、HSRの結果が一致するかどうか判定される。一致しない場合は、処理は完了し、一実施形態では、呼出し元アプリケーションの要件を満たすために、第3のHSR認識(図示せず)など、このプロセスの範囲外のさらに他の処理が必要とされることになる。このような場合、第3の認識の後に収束がない場合は、「合致なし」状況が宣言され、これは、認識の試みが失敗したことを示す。収束がある場合は、少なくとも2つの一致するHSRの結果が使用される。
チェック1605における2つのHSR結果が一致する場合は、処理は完了し、例えば認識された発話は、前述のような整調/訓練のためのグループに追加することができる。プロンプトに対する応答の解釈は、テキスト分析の2つの種類、すなわち情報抽出およびセンス分類として見ることができる。情報抽出は、顧客ID、電話番号、日時、住所、製品タイプ、問題など、用件フォームのスロットを埋めるのに不可欠な特定の情報断片を、識別、抽出および正規化することである。センス分類は、追加の2つの情報タイプ、即ち意味(意図)および応答品質を識別することに関係する。意味(意図)は、どんな種類のフォームを埋める必要があるかということと関係がある(料金請求、予約のスケジューリング、苦情など)。応答品質は、応答自体と関係がある(不明瞭、雑音、英語ではなくスペイン語、生のエージェントと話したいという要望など)。
図17を参照するが、上述の方法およびシステムを実現して、人間らしい体験を最大限にすることができる。予測最適化1730およびメディア加速1734の結果に示すように、ASRプロキシからアプリケーションに応答し返すための全体的な認識ギャップ時間は、一例では1.25秒に短縮することができる。図17の具体的なグラフを詳しく検討するが、1710は、最適化されない典型的な認識体験を表す。認識すべきメディア(発話)は、3.75秒の長さである(1750)。この場合に、ASRプロキシがメディアをリアルタイムでストリーミングするが、通常、自動認識を完了するには、メディアストリームの終わりから、1秒の数分の1だけ多くかかる(1712)。ASRプロキシの結果決定エンジンは、HSR(後述する図18の1860)が必要だと決定するが、メディア(発話)は始めから処理される必要があり、これにより、もう約4秒が追加され(1714)、ユーザから見たギャップは少なくとも4.25秒になる。このギャップは、アプリケーション1810によって、業界で「フィラープロンプト」としばしば呼ばれる方式で埋めることができ、それにより、システムがまだ問題に取り組んでいることをユーザが確実に認識するようにする。このフィラープロンプトは、発信者とのより人間らしい対話を生み出す目標を達成しないのは確かである。グラフ1715に移ると、システムは、メディアを例えば1秒加速させることによって改善を図ることができ、それにより、人間援助による理解を3秒に短縮し(1719)、認識ギャップまでのメディア停止を3.25秒に短縮することができる。これはなかなかの改善である。1730に示すように、自動認識が、部分認識予測器を使用して、より短い時間で結果の予測を提供する。1732に示すように、認識が失敗したと判定するのに2秒しかかからず、その後、ASRプロキシは、人間援助を求めてメディアをストリーミングし、メディアを加速させる。結果として、メディアの終わりから人間援助の成功までの全体的な認識ギャップは、4.25秒から1.25秒に大きく短縮された。これにより、ASRプロキシの認識ギャップは、人間らしい対話により近く合致する範囲に短縮される。
図18に、ASRプロキシの主要なシステムコンポーネントを示し、図11のいくつかの要素を詳述してASRプロキシをさらに例証する。図11の図解の一部にはないが、本開示内にはユーザ状態管理ストア1813があり、明確にするためにこれを図18に特に示す。ユーザ状態管理1813は、ユーザに関する情報(例えば、ユーザ識別、好ましい通信チャネルおよび所有機器)を有する。認識成功(人間援助ではなく自動化)など、ユーザの処理にとって重要な情報が、将来の使用のために統計ストア1830に記憶される。システムは、各対話のステータスに関する情報を維持する。この情報は、一方では、意図分析の利用可能性に関する情報からなり、他方では、提示された認識要求と、これらの要求に対する応答と、これらの応答の意味(意図)と、これらの応答から抽出された特定の内容と、プロキシが次にどんなアクションを実施することになるかとのシーケンスに関する情報からなる。
プロキシ処理システムは、特定のプロンプトと、このプロンプトに対する応答の意味(意図)と、この応答から抽出された特定の情報とに基づいて、そのアクション(すなわち、どんな追加情報をユーザに要求するか、およびその情報を用いてどんなアクションを次に実施するか)を調整する。システムステータスサブシステム1815は、HSRキャパシティまたはある実施形態ではシステム負荷と、これがどのように自動認識および人間認識の使用に影響を及ぼすかとを、常に把握している。図18の残りの要素については、他の図に関して上述したとおりであり、ここでは、ASR/NLU1850は、利用できる複数のASR/NLUインスタンスを表すように複数の円で特に示されている。
図19に、システムステータスの評価に基づいてASRまたはDTMFの機能を場合により使用する(アプリケーションに基づいて適切なら)、決定エンジンの動作を示す。本明細書では、これらの動作は認識決定エンジン1980および結果決定エンジン1990によって処理されるものとして述べるが、様々なメモリおよびプロセッサアーキテクチャを使用してこのようなエンジンを実現できることは、当業者なら認識するであろう。認識に関する統計がない場合(1900)は、十分なHSRキャパシティがない場合にDTMF手法を使用して自動化するようアプリケーションに知らせること以外には、自動化は使用されない。DTMFがアプリケーションに利用可能にされることになり、アプリケーションは、業務規則によってDTMFの変形が利用可能にされることを許容する。この実施形態では、DTMFは、アプリケーションからの第2の認識要求に基づいて使用されることになる。様々な実施形態で、アプリケーションは、利用可能であることを無視して後続の認識を試みることを選ぶこともでき、または、ある認識要求に対してはDTMFを使用し、最も難しいアイテムはHSRに任せることを選ぶこともできる。例えば、電話番号のデータ収集はDTMFによって容易に行うことができるが、EメールアドレスはHSRによってより適切に扱われる。
アプリケーションが、ある実施形態で、システムステータス1815および統計の利用可能性1830に応じて、通知し(1900R)、いくつかの形の人間らしい対話を提供する。即ち、これらの対話は、(1)人間援助による理解のみを使用した、人間らしい対話1925、(2)自動化と人間援助の組合せを高品質で使用した、人間らしい対話1930、(3)アプリケーションが異なる品質に応答できることを必要とせずに、自動化と人間援助の組合せを負荷要因に応じて可変品質で使用した、人間らしい対話1930、(4)アプリケーションがより低い自動化信頼度に合わせて検証促進を増加させる、自動化1950と人間援助1960の組合せを負荷要因に応じて可変品質で使用した、人間らしい対話1930または1940、および、(5)DTMFダイアログなど、人間らしくなることが意図されない対話1940である。このように、システムは、ASRプロキシの機能とシステムの負荷とに応答して、種々のタイプのプロンプトを提示する。例えば、(5)の場合では「販売については1を押して下さい。・・・については2を押して下さい・・・」となるが、同じ質問が、「どういったご用件ですか?」として言い換えられることになり、これは(1)の場合を例証する。
図20は、図18および図19で主に述べたようなロジックおよびコンポーネントを含み、統計を用いたASRおよびHSR処理のフローを示す。図21および図22は、任意選択の同時並行フローであることに留意されたい。図20は、認識決定エンジン2000および結果決定エンジン2020を使用し、これらは、統計1820をシステムステータス情報1815と共に使用し、任意選択で、認識メディア(音声、ビデオ)を加速させて(2010)、自動化と人間援助との間のフェイルオーバ時間を短縮する。
図21に、任意選択の並行フローを示すが、この場合、認識決定エンジン2100における認識およびシステムステータス1815に、タイマ統計が組み合わせられる。メディアが、通常うまく認識できるもの(システム負荷に従って調節できる)よりも長い場合は、タイマイベントが発火し、認識は人間援助1860に移る。結果決定エンジン2150は、前述のように動作する。
図22に、任意選択の並行フローを示すが、この場合、認識決定エンジン2200中で、システム負荷予測信頼度調節に応じてメディアの一部に対する認識予測が行われ、認識が十分に成功でない場合、認識は人間援助1860に移る。結果決定エンジン2250は、やはり前述のように動作する。
図23に、メディアおよびメディアの意味の周りでデータを収集して、意味抽出のための最適な文法および分類器を構築するための、かつ最適な認識予測器も構築するための、整調サブシステム/フローを示す。図23では、ASR2310および分類器自動化が、アプリケーション中のプロンプトの選択されたサブセット2320に適用される使用ケースについて述べる。アプリケーションプロンプトのセットは様々なカテゴリに入るが、これらのうちのいくつかは自動化の自明な候補であり、いくつかは自動化が困難である。例えば、はい/いいえプロンプト、および限られたオプションプロンプトの場合は通常、ユーザ発話のレパートリはごく限られ、意図ラベルはごく少数となる。これらのタイプのプロンプトを評価しモデル化するには、ASR文法に対しても統計言語モデルに対しても機械学習分類器2340に対しても、比較的少量のデータしか必要でない。他方、自由回答式プロンプトでは、ユーザははるかに制約の少ない発話セットを生むことができるが、自由回答式プロンプトはより難しい。これらは、一般的と領域特有の両方の知識ベース2330によって増補することができる。これらのタイプのプロンプトには、比較的より多量のデータが必要である。多量のデータがあるときであっても、全てのタイプの発話または意図ラベルについての信頼できるモデルを生むには、なお多様性が大きすぎる場合もある。言い換えれば、これらの場合、プロンプトの言語的、カテゴリ的および統計的な特性を確立して、これらの特性に基づいてプロンプトの選択および策定を駆動することによって、自動化は進行する。これは、次のような1組の相関するタスクを伴う。
− 発話をそれらの特性に基づいて種々のカテゴリに分類する。
− ASRおよび分類器自動化に適した特性により、所与のアプリケーションの候補プロンプトを識別する。
− 早期認識の成功または失敗に対して予測器を決定する。
− 各プロンプトにつき、このプロンプトによって生成される発話に対するASRのための音響モデルおよび言語モデルと、このプロンプトのターゲット意図についての分類器モデルとを作り出し、整調し、記憶する。
− ASRおよび分類器自動化と、人間による意図分析とを、いつ利用またはトレードオフするかを決めるための、選択基準を決定する。
図24は、北米電話番号を複数の認識構成要素に分割する例を用いた、どのようにタイマ統計を計算できるか、並びに非常に単純な予測器の例である。要素2401から2403は、特定の質問(プロンプト)をうまく認識した際に集められた統計を表す。要素2401は、長さが2秒以下の種類の発話を表す。この長さは、この例で統計を有する全ての発話の15%を表す。ASRは、2秒以下の発話に対して90%成功と決定された。要素2402は、2秒よりも長く3秒以下の種類の発話を表し、ASR認識の成功は75%であり、発話の25%がこのグループに入る。要素2403は、3秒よりも長く4秒以下の種類の発話を表す。これは、システムステータスによって影響を受ける可能性のある使用ケースの例である。十分なHSRリソースがある場合は、タイマを確立して認識を3秒(2402)で中断し、ASRを使用して発話の32.3%をうまく認識することができる。または、システム負荷が増大した場合は、タイマを4秒(2403)に調節し、44.3%を認識することができる。非常に高い負荷の下では、ASRプロキシは、タイマを使用しないことを決定することができることに留意されたい。但しこれは、話者にとってより長い待機時間を引き起こす。しかしこの結果、55.3%までがうまく認識される。
要素2404は、3桁のエリアコードのASR認識を表す。要素2405は、3桁のエリアコードのASR認識と、それに加えて3桁の交換局の認識を表す。要素2406は、北米電話番号全体のASR認識を表す。例えば、電話番号を話すのに約8秒かかる場合、各ステップ2404、2405および2406は、発話を処理するのにより多くの時間がかかる。第1のステップ2404は時間のうちの約30%(2.4秒)かかり、ステップ2は時間のうちの60%(4.8秒)かかり、3つの認識ステップのうちのいずれかが信頼度未満の結果を示す場合は、認識は人間援助に移る。例えば、エリアコードが正しく認識されない場合、電話番号全体が話された後で初めて失敗するのではなく、電話番号が話されている間に、HSRの使用が2.4秒以内に起こる可能性がある。
様々な実施形態および実装形態で、この応答解釈は、意図分析者のみ(純粋なHSR)によって行うか、自動化ASR(純粋な自動音声認識および意図分類)によって行うか、またはASRとHSRの何らかの組合せによって行うことができる。ASR自動化の結果における信頼度を使用して、いつASRが信頼できる結果を生成しているかを決定することで、品質損失なしに(または制御された品質損失で)ASR自動化をHSRに対してトレードオフすることが可能である。このことは、プロキシ処理システムにおけるこの2つの手法の組合せにより、HSRのみを使用する場合よりも大きなスループットを達成することができ、より小さい意図分析者チームでピーク需要負荷をうまく満たすこともできることを意味する。
上記の主題については、可能性ある様々な実施形態に関して特に詳細に述べた。主題を他の実施形態で実践することもできることを、当業者なら理解するであろう。第1に、コンポーネントの特定の命名、用語の大文字使用、属性、データ構造またはいずれか他のプログラミング上若しくは構造上の側面は、必須でも有意でもなく、主題またはその特徴を実現するメカニズムは、異なる名称、フォーマットまたはプロトコルを有してもよい。さらに、システムは、述べたようにハードウェアとソフトウェアの組合せを介して実現されてもよく、または完全にハードウェア要素において実現されてもよい。また、本明細書で述べた、様々なシステムコンポーネント間における機能の特定の分割は、例に過ぎず、必須ではない。単一のシステムコンポーネントによって実施される機能が、代わりに複数のコンポーネントによって実施されてもよく、複数のコンポーネントによって実施される機能が、代わりに単一のコンポーネントによって実施されてもよい。
上述のいくつかの部分では、主題の特徴、プロセスステップおよび命令を、情報に対する操作のアルゴリズムおよび象徴表現で提示している。これらのアルゴリズム的記述および表現は、データ処理技術分野の当業者によって、その作業の本質を他の当業者に最も効果的に伝えるために使用される手段である。これらの操作は機能的または論理的に記述されるが、これらの操作は、ソフトウェア、ファームウェアまたはハードウェアにおいて具体化されてよく、ソフトウェアにおいて具体化されるときは、リアルタイムネットワークオペレーティングシステムによって使用される種々のプラットフォーム上に存在しこれらのプラットフォームから操作されるように、ダウンロードされてよい。
さらに、一般性を失うことなく、操作のこれらの構成をモジュールとしてまたは機能的名称によって言及することが、時として好都合であることもわかっている。
特段に明記されない限り、または上記の考察から明らかなように、この記述全体を通して、「決定する」などの用語を利用した考察は、コンピュータシステムメモリ若しくはレジスタ内で、または他のそのような情報記憶、伝送、若しくは表示デバイス内で、物理的(電子的)な量として表されるデータを操作および変換する、コンピュータシステムまたは類似の電子コンピューティングデバイスのアクションおよびプロセスを指すことを理解されたい。
主題はまた本明細書の動作を実施するための装置に関する。この装置は、必要とされる目的のために特に構築されたものであってもよく、またはコンピュータによってアクセスできコンピュータプロセッサによって実行できるコンピュータ可読媒体に記憶されたコンピュータプログラムによって選択的にアクティブ化または再構成される汎用コンピュータを含んでもよい。このようなコンピュータプログラムは、非一時的コンピュータ可読記憶媒体に記憶されてよく、この非一時的コンピュータ可読記憶媒体は、以下のものに限定されないが、フロッピー(登録商標)ディスクや光ディスクやCD−ROMや光磁気ディスクを含めた任意のタイプのディスク、ROM、RAM、EPROM、EEPROM、磁気若しくは光学カード、ASICまたは電子的命令を記憶するのに適した任意のタイプの媒体などであり、これらは各々コンピュータシステムバスに結合される。さらに、本明細書で言及されるコンピュータは、単一のプロセッサを備えてもよく、またはコンピューティング能力の増大のために複数プロセッサ設計を利用するアーキテクチャであってもよい。
また、主題は、いずれか特定のプログラミング言語に関して述べるものではない。様々なプログラミング言語を使用して本明細書に記載の主題の教示を実現できること、並びに、特定の言語へのどんな言及も、主題の使用可能性および最良モードのために提供するものであることを理解されたい。
主題は、多くのトポロジにまたがる幅広いコンピュータネットワークシステムによく適する。この分野内で、大きいネットワークの構成および管理は、インターネットなどのネットワークを介して異種のコンピュータおよび記憶デバイスに通信可能に結合される、記憶デバイスおよびコンピュータを含む。
最後に、本明細書で使用される言語は、主に読みやすさおよび教授目的のために選択されたものであり、主題を線引きまたは制限するために選択されたのではない場合があることに留意されたい。従って、本明細書の開示は、主題の範囲を限定するのではなく例証するものとする。

Claims (20)

  1. 対話を処理するためのコンピュータ実行システムであって、前記対話は、さらなるコンピュータ実行処理に使用可能になる前に認識を必要とする発話を含み、前記システムは、
    前記発話を提供するように構成されたアプリケーションと、
    認識のために前記発話を受信するように構成された認識決定エンジンであって、前記認識決定エンジンは、第1のタイプのレコグナイザサブシステムおよび第2のタイプのレコグナイザサブシステムから1または複数のレコグナイザを動的に選択する、認識決定エンジンと、
    前記1または複数のレコグナイザと動作可能に結合され、認識結果を提供するように構成された結果決定エンジンと
    を備えることを特徴とするシステム。
  2. 前記認識決定エンジンに動作可能に接続されたシステムステータスサブシステムをさらに備え、前記認識決定エンジンは、前記動的な選択において使用するために、前記システムステータスサブシステムからのシステム負荷情報を入力とすることを特徴とする請求項1に記載のシステム。
  3. 前記1または複数のレコグナイザのサブセットは、前記認識決定エンジンに信頼度測定基準を提供するように構成され、前記認識決定エンジンは前記信頼度測定基準を前記動的な選択において使用することを特徴とする請求項1に記載のシステム。
  4. 前記信頼度測定基準は閾値を含み、前記閾値はリソース利用可能性に基づいて変動することを特徴とする請求項3に記載のシステム。
  5. 前記認識決定エンジンは、認識コスト要因に基づいて、前記第2のタイプのレコグナイザサブシステムに対して前記第1のタイプのレコグナイザサブシステムを選択することの方を選ぶように構成されたことを特徴とする請求項1に記載のシステム。
  6. 前記認識決定エンジンは、人間リソース利用可能性要因に基づいて、前記第2のタイプのレコグナイザサブシステムに対して前記第1のタイプのレコグナイザサブシステムを選択することの方を選ぶように構成されたことを特徴とする請求項1に記載のシステム。
  7. 前記結果決定エンジンは、前記レコグナイザサブシステムのうちの第1のレコグナイザサブシステムと、前記レコグナイザサブシステムのうちの第2のレコグナイザサブシステムとの間の結果の一致に応答して、前記レコグナイザサブシステムのうちの前記第1のレコグナイザサブシステムに関連する信頼度閾値を更新するように構成されたことを特徴とする請求項1に記載のシステム。
  8. 前記認識決定エンジンは、最初に前記第1のタイプのレコグナイザサブシステムのうちの第1のレコグナイザサブシステムを選択し、前記第1のタイプのレコグナイザサブシステムのうちの前記第1のレコグナイザサブシステムによって提供された最初の結果に応答して、前記レコグナイザサブシステムのうちの第2のレコグナイザサブシステムの後続の選択を行うように構成され、前記後続の選択は、前記発話の処理が前記第1のタイプのレコグナイザサブシステムのうちの前記第1のレコグナイザサブシステムによって完了される前に行われることを特徴とする請求項1に記載のシステム。
  9. 対話を処理するためのコンピュータ実行方法であって、前記対話は、さらなるコンピュータ実行処理に使用可能になる前に認識を必要とする発話を含み、前記コンピュータ実行方法は、
    発話を表すデータをコンピュータアプリケーションから受信することと、
    第1のタイプのレコグナイザおよび第2のタイプのレコグナイザから1または複数のレコグナイザを動的に選択することと、
    前記1または複数のレコグナイザによる処理の結果に応答して認識結果を提供することと
    を備えることを特徴とするコンピュータ実行方法。
  10. 前記動的に選択することはシステム負荷測定基準に応答したものであることを特徴とする請求項9に記載のコンピュータ実行方法。
  11. 前記動的に選択することは信頼度測定基準に応答したものであることを特徴とする請求項9に記載のコンピュータ実行方法。
  12. 前記信頼度測定基準は閾値を含み、前記閾値はリソース利用可能性に基づいて変動することを特徴とする請求項11に記載のコンピュータ実行方法。
  13. 前記動的に選択することは、認識コスト要因に基づいて、前記第2のタイプのレコグナイザに対して前記第1のタイプのレコグナイザを選択することの方を選ぶことを特徴とする請求項9に記載のコンピュータ実行方法。
  14. 前記動的に選択することは、人間リソース利用可能性要因に基づいて、前記第2のタイプのレコグナイザに対して前記第1のタイプのレコグナイザを選択することの方を選ぶことを特徴とする請求項9に記載のコンピュータ実行方法。
  15. 前記レコグナイザのうちの第1のレコグナイザと前記レコグナイザのうちの第2のレコグナイザとの間の結果の一致に応答して、前記レコグナイザのうちの前記第1のレコグナイザに関連する信頼度閾値を更新することをさらに備えることを特徴とする請求項9に記載のコンピュータ実行方法。
  16. 最初に前記第1のタイプのレコグナイザのうちの第1のレコグナイザを選択し、前記第1のタイプのレコグナイザのうちの前記第1のレコグナイザによって提供された最初の結果に応答して、前記レコグナイザのうちの第2のレコグナイザの後続の選択を行うことをさらに備え、前記後続の選択は、前記発話の処理が前記第1のタイプのレコグナイザのうちの前記第1のレコグナイザによって完了される前に行われることを特徴とする請求項9に記載のコンピュータ実行方法。
  17. 対話を処理するための実行可能コンピュータプログラムコードを記憶した非一時的コンピュータ可読記憶媒体であって、前記対話は、さらなるコンピュータ実行処理に使用可能になる前に認識を必要とする発話を含み、前記コンピュータプログラムコードは、
    発話を表すデータをコンピュータアプリケーションから受信するための命令と、
    第1のタイプのレコグナイザおよび第2のタイプのレコグナイザから1または複数のレコグナイザを動的に選択するための命令と、
    前記1または複数のレコグナイザによる処理の結果に応答して認識結果を提供するための命令と
    を備えることを特徴とする非一時的コンピュータ可読記憶媒体。
  18. 前記動的な選択はシステム負荷測定基準に応答したものであることを特徴とする請求項17に記載の非一時的コンピュータ可読記憶媒体。
  19. 前記動的な選択は信頼度測定基準に応答したものであることを特徴とする請求項17に記載の非一時的コンピュータ可読記憶媒体。
  20. 前記信頼度測定基準は閾値を含み、前記閾値はリソース利用可能性に基づいて変動することを特徴とする請求項19に記載の非一時的コンピュータ可読記憶媒体。
JP2014140729A 2013-07-08 2014-07-08 自然言語理解のための自動音声認識プロキシシステム Expired - Fee Related JP6025785B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/936,440 2013-07-08
US13/936,440 US9245525B2 (en) 2011-01-05 2013-07-08 Automated speech recognition proxy system for natural language understanding

Publications (3)

Publication Number Publication Date
JP2015018238A true JP2015018238A (ja) 2015-01-29
JP2015018238A5 JP2015018238A5 (ja) 2015-11-26
JP6025785B2 JP6025785B2 (ja) 2016-11-16

Family

ID=52439233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014140729A Expired - Fee Related JP6025785B2 (ja) 2013-07-08 2014-07-08 自然言語理解のための自動音声認識プロキシシステム

Country Status (1)

Country Link
JP (1) JP6025785B2 (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10192554B1 (en) 2018-02-26 2019-01-29 Sorenson Ip Holdings, Llc Transcription of communications using multiple speech recognition systems
US10388272B1 (en) 2018-12-04 2019-08-20 Sorenson Ip Holdings, Llc Training speech recognition systems using word sequences
JP2019194839A (ja) * 2018-02-09 2019-11-07 アクセンチュア グローバル ソリューションズ リミテッド 人工知能に基づくサービス実施
US10573312B1 (en) 2018-12-04 2020-02-25 Sorenson Ip Holdings, Llc Transcription generation from multiple speech recognition systems
CN111613208A (zh) * 2020-05-22 2020-09-01 云知声智能科技股份有限公司 一种语种识别方法和设备
KR20200127814A (ko) * 2019-05-02 2020-11-11 삼성전자주식회사 사용자의 입력 입력에 기초하여 타겟 디바이스를 결정하고, 타겟 디바이스를 제어하는 서버 및 그 동작 방법
WO2021002493A1 (ko) * 2019-07-01 2021-01-07 엘지전자 주식회사 지능형 게이트웨이 장치 및 그를 포함하는 제어 시스템
US11017778B1 (en) 2018-12-04 2021-05-25 Sorenson Ip Holdings, Llc Switching between speech recognition systems
US11170761B2 (en) 2018-12-04 2021-11-09 Sorenson Ip Holdings, Llc Training of speech recognition systems
JP2022501652A (ja) * 2018-05-29 2022-01-06 合同会社EasyDialog 効率的な対話構成
US11488604B2 (en) 2020-08-19 2022-11-01 Sorenson Ip Holdings, Llc Transcription of audio
US11721343B2 (en) 2019-05-02 2023-08-08 Samsung Electronics Co., Ltd. Hub device, multi-device system including the hub device and plurality of devices, and method of operating the same

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001067096A (ja) * 1999-08-31 2001-03-16 Omron Corp 音声認識結果評価装置および記録媒体
JP2001217935A (ja) * 2000-01-26 2001-08-10 Internatl Business Mach Corp <Ibm> 音声認識手段を使用する自動音声応答システムおよび方法
JP2004530149A (ja) * 2001-02-13 2004-09-30 トムソン ライセンシング ソシエテ アノニム 音声認識のための処理、モジュール、装置及びサーバ
JP2006011066A (ja) * 2004-06-25 2006-01-12 Nec Corp 音声認識/合成システム、同期制御方法、同期制御プログラム、および同期制御装置
JP2006154724A (ja) * 2004-10-28 2006-06-15 Fujitsu Ltd 対話システム、対話方法、及びコンピュータプログラム
JP2009505139A (ja) * 2005-08-09 2009-02-05 モバイル・ヴォイス・コントロール・エルエルシー 音声制御型ワイヤレス通信デバイス・システム
US20100004930A1 (en) * 2008-07-02 2010-01-07 Brian Strope Speech Recognition with Parallel Recognition Tasks
WO2011148594A1 (ja) * 2010-05-26 2011-12-01 日本電気株式会社 音声認識システム、音声取得端末、音声認識分担方法および音声認識プログラム
US20120179469A1 (en) * 2011-01-07 2012-07-12 Nuance Communication, Inc. Configurable speech recognition system using multiple recognizers

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001067096A (ja) * 1999-08-31 2001-03-16 Omron Corp 音声認識結果評価装置および記録媒体
JP2001217935A (ja) * 2000-01-26 2001-08-10 Internatl Business Mach Corp <Ibm> 音声認識手段を使用する自動音声応答システムおよび方法
JP2004530149A (ja) * 2001-02-13 2004-09-30 トムソン ライセンシング ソシエテ アノニム 音声認識のための処理、モジュール、装置及びサーバ
JP2006011066A (ja) * 2004-06-25 2006-01-12 Nec Corp 音声認識/合成システム、同期制御方法、同期制御プログラム、および同期制御装置
JP2006154724A (ja) * 2004-10-28 2006-06-15 Fujitsu Ltd 対話システム、対話方法、及びコンピュータプログラム
JP2009505139A (ja) * 2005-08-09 2009-02-05 モバイル・ヴォイス・コントロール・エルエルシー 音声制御型ワイヤレス通信デバイス・システム
US20100004930A1 (en) * 2008-07-02 2010-01-07 Brian Strope Speech Recognition with Parallel Recognition Tasks
WO2011148594A1 (ja) * 2010-05-26 2011-12-01 日本電気株式会社 音声認識システム、音声取得端末、音声認識分担方法および音声認識プログラム
US20120179469A1 (en) * 2011-01-07 2012-07-12 Nuance Communication, Inc. Configurable speech recognition system using multiple recognizers

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019194839A (ja) * 2018-02-09 2019-11-07 アクセンチュア グローバル ソリューションズ リミテッド 人工知能に基づくサービス実施
US11710488B2 (en) 2018-02-26 2023-07-25 Sorenson Ip Holdings, Llc Transcription of communications using multiple speech recognition systems
US10192554B1 (en) 2018-02-26 2019-01-29 Sorenson Ip Holdings, Llc Transcription of communications using multiple speech recognition systems
JP2022501652A (ja) * 2018-05-29 2022-01-06 合同会社EasyDialog 効率的な対話構成
US10573312B1 (en) 2018-12-04 2020-02-25 Sorenson Ip Holdings, Llc Transcription generation from multiple speech recognition systems
US11935540B2 (en) 2018-12-04 2024-03-19 Sorenson Ip Holdings, Llc Switching between speech recognition systems
US10672383B1 (en) 2018-12-04 2020-06-02 Sorenson Ip Holdings, Llc Training speech recognition systems using word sequences
US11594221B2 (en) 2018-12-04 2023-02-28 Sorenson Ip Holdings, Llc Transcription generation from multiple speech recognition systems
US10971153B2 (en) 2018-12-04 2021-04-06 Sorenson Ip Holdings, Llc Transcription generation from multiple speech recognition systems
US11017778B1 (en) 2018-12-04 2021-05-25 Sorenson Ip Holdings, Llc Switching between speech recognition systems
US11170761B2 (en) 2018-12-04 2021-11-09 Sorenson Ip Holdings, Llc Training of speech recognition systems
US10388272B1 (en) 2018-12-04 2019-08-20 Sorenson Ip Holdings, Llc Training speech recognition systems using word sequences
US11145312B2 (en) 2018-12-04 2021-10-12 Sorenson Ip Holdings, Llc Switching between speech recognition systems
KR102429436B1 (ko) 2019-05-02 2022-08-04 삼성전자주식회사 사용자의 입력 입력에 기초하여 타겟 디바이스를 결정하고, 타겟 디바이스를 제어하는 서버 및 그 동작 방법
KR102309540B1 (ko) 2019-05-02 2021-10-07 삼성전자주식회사 사용자의 입력 입력에 기초하여 타겟 디바이스를 결정하고, 타겟 디바이스를 제어하는 서버 및 그 동작 방법
KR20210120960A (ko) * 2019-05-02 2021-10-07 삼성전자주식회사 사용자의 입력 입력에 기초하여 타겟 디바이스를 결정하고, 타겟 디바이스를 제어하는 서버 및 그 동작 방법
KR20200127814A (ko) * 2019-05-02 2020-11-11 삼성전자주식회사 사용자의 입력 입력에 기초하여 타겟 디바이스를 결정하고, 타겟 디바이스를 제어하는 서버 및 그 동작 방법
US11721343B2 (en) 2019-05-02 2023-08-08 Samsung Electronics Co., Ltd. Hub device, multi-device system including the hub device and plurality of devices, and method of operating the same
WO2021002493A1 (ko) * 2019-07-01 2021-01-07 엘지전자 주식회사 지능형 게이트웨이 장치 및 그를 포함하는 제어 시스템
US11605378B2 (en) 2019-07-01 2023-03-14 Lg Electronics Inc. Intelligent gateway device and system including the same
CN111613208B (zh) * 2020-05-22 2023-08-25 云知声智能科技股份有限公司 一种语种识别方法和设备
CN111613208A (zh) * 2020-05-22 2020-09-01 云知声智能科技股份有限公司 一种语种识别方法和设备
US11488604B2 (en) 2020-08-19 2022-11-01 Sorenson Ip Holdings, Llc Transcription of audio

Also Published As

Publication number Publication date
JP6025785B2 (ja) 2016-11-16

Similar Documents

Publication Publication Date Title
US10049676B2 (en) Automated speech recognition proxy system for natural language understanding
JP6025785B2 (ja) 自然言語理解のための自動音声認識プロキシシステム
US10810997B2 (en) Automated recognition system for natural language understanding
US8484031B1 (en) Automated speech recognition proxy system for natural language understanding
US8560321B1 (en) Automated speech recognition system for natural language understanding
US11355098B1 (en) Centralized feedback service for performance of virtual assistant
US8914294B2 (en) System and method of providing an automated data-collection in spoken dialog systems
CA2826116C (en) Natural language classification within an automated response system
US10789943B1 (en) Proxy for selective use of human and artificial intelligence in a natural language understanding system
CA2530867A1 (en) Behavioral adaptation engine for discerning behavioral characteristics of callers interacting with an vxml-compliant voice application
WO2004072926A2 (en) Management of conversations
US20230315983A1 (en) Computer method and system for parsing human dialouge
US20060069568A1 (en) Method and apparatus for recording/replaying application execution with recorded voice recognition utterances
Suendermann Advances in commercial deployment of spoken dialog systems
AU2020447125B2 (en) Hot-word free pre-emption of automated assistant response presentation
US11914923B1 (en) Computer system-based pausing and resuming of natural language conversations

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20150325

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20150325

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151009

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151009

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20151009

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20151104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160217

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160419

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160819

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20160829

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161011

R150 Certificate of patent or registration of utility model

Ref document number: 6025785

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees