【実施例】
【0020】
最初に、
図1を参照して、コールセンタシステムについて説明する。
図1に示されるように、コールセンタシステムは、ネットワーク100を介して、IP−PBX(Internet Protocol−Private Branch eXchange:IP回線対応構内交換機)装置101、CTI装置102、音声通話処理システム103及びオペレータ用端末104が接続されて構成されている。
【0021】
IP−PBX装置101は、顧客105の通話端末106からの呼を受けて、IP網と公衆網107のプロトコル変換、発着信の呼制御などをおこなう。
【0022】
CTI装置102は、IP−PBX装置101から通話情報(着番号等)を取得して、音声通話処理システム103に送信する。
【0023】
オペレータ用端末104は、オペレータ108がオペレータ業務に使うオペレータPC端末であり、顧客105の通話端末106と公衆網107を介して通話を行う。
【0024】
顧客105の通話端末106から公衆網107を介して接続されるIP−PBX装置101が、ネットワーク100を介してオペレータ用端末104と接続して通話を行う。オペレータ108は、オペレータ用端末104から電話操作をすることができ、顧客105からの着信がオペレータ用端末104に表示されると、オペレータ用端末104から応答を操作して顧客105とオペレータ108は通話状態になる。
【0025】
音声通話処理システム103は、通話録音情報管理装置109、通話録音装置110、音声認識制御装置111、音声認識結果管理装置112、音声認識装置113を有する。
【0026】
通話録音装置110は、通話端末106でやりとりされる通話のデータストリームを、IP−PBX装置101を介して録音データとして録音する装置である。通話端末106での通話は、通話録音装置110に送られて録音ファイルとして保存される。通話録音装置110は、ミラーリングした通話音声を取得して録音して音声認識装置113に送信する。通話録音情報管理装置109は、通話情報と録音情報を対応付けて管理するためのサーバである。
【0027】
音声認識装置113は、録音データを音声認識エンジンにより、テキストデータに変換する。音声認識装置113は、日本語用エンジン113aと英語語用エンジン113bを有する。通常、顧客105が日本語で通話する場合には日本語用エンジン113aが用いられ、顧客105が英語で通話する場合には英語用エンジン113bが用いられる。日本語用エンジン113a及び英語用エンジン113bは、音声認識のアルゴリズム処理を行い、認識結果をテキストデータとして出力する。音声認識装置113は、各言語に対し複数の音声認識エンジンを持つことも可能である。
【0028】
音声認識制御装置111は、オペレータ用端末104からの音声認識要求を受けて、音声認識装置113に指示を与える。音声認識結果管理装置112は、音声認識装置113が出力するテキストデータをデータベースに格納して音声認識結果を蓄積する。ブラウザアクセスで認識した結果や言語選択画面をオペレータ用端末104に表示させる。
【0029】
次に、実施例の通話音声処理システムについて説明する。
【0030】
図2に示すように、オペレータ用端末104のオペレータPC画面は、通話内容表示領域200と、通話内容表示領域200に隣接した言語選択領域210を有する。音声認識装置113の音声認識エンジンを用いて音声を認識した認識結果は、音声認識結果管理装置112を介してオペレータ用端末104の通話内容表示領域200に表示される。言語選択画面は、言語選択領域210に表示される。
【0031】
オペレータ用端末104のオペレータPC画面は、音声認識結果が表示される通話内容表示領域200と言語選択領域210をウェブブラウザで表示する。言語選択領域210では、音声認識装置113が対応可能な言語が表示されており、言語を選択すると通話録音情報管理装置112に通知する。音声をリアルタイム認識する際、開始時(着信時)はCTI情報(例えば、着番号)により予め決められた音声認識エンジンが選択される。
【0032】
オペレータ108が音声認識エンジンの言語を切替える際に、オペレータ108は言語選択領域210で言語を選択する。選択した言語に対応する音声認識エンジンをテーブルを用いて決定し、音声認識エンジンを即時に切替える。
【0033】
言語選択領域は、日本語と英語(English)が選択可能なオペレータPC画面である。オペレータ108は、オペレータ用端末104を操作して言語選択領域210ら言語を選択する。この場合は、オペレータ108は、言語選択領域210から日本語か英語(English)を選択可能である。言語を選択したら、言語選択領域210の“submit”のボタン220を押して言語を決定する。通話内容表示領域200には、音声認識結果管理装置112に蓄積されたが音声認識結果230が表示される。
【0034】
通話録音情報管理装置109は、着番号・言語対応テーブル300(
図3のテーブル(T−4))、手動切替え用テーブル400(
図4のテーブル(T−5)、通話情報テーブル500(
図5のテーブル(T−6))及び音声認識結果テーブル700(
図7のテーブル(T−8))を有する。音声認識制御装置11は、音声認識エンジン選択テーブル600(
図6のテーブル(T−7))を有する。
【0035】
図3に示すように、着番号・言語対応テーブル(T−4)300は、着番号300aと言語300bを対応付けるテーブルである。例えば、着番号300aの“111”には、言語300bの“日本語”が対応している。
【0036】
図4に示すように、手動切替え用のテーブル(T−5)400は、切替えID400aと言語400bを対応付けるテーブルである。オペレータ108による言語選択時にオペレータ108が手動で日本語か英語を切り替えて選択するテーブルである。例えば、切替えID400aの“F001”には、言語400bの”日本語”が対応し、切替えID400aの“F002”には言語400bの“英語”が対応している。
【0037】
図5に示すように、通話情報テーブル(T−6)500は、通話識別ID500a、着番号500b、エンジンID500c及び言語500dを対応付けて管理するテーブルである。例えば、通話識別ID500aの“AAAA”、着番号500bの“1113”、エンジンID500cの“1”には、言語500dの“日本語”が対応する。また、通話識別ID500a“のBBBB”、着番号500bの“1111”、エンジンID500cの“4”には、言語500dの“英語”が対応している。
【0038】
図6に示すように、音声認識エンジン選択テーブル(T−7)600は、音声認識エンジンを選択するためのテーブルである。音声認識エンジン選択テーブル(T−7)600は、同じ言語用エンジンが複数ある場合の対応も考慮して、ID600a、言語600b、音声認識エンジンアドレス600c、利用状態600dを対応付けて管理する。ここで、音声認識エンジン選択テーブル(T−7)600では省略するが、方言別の言語のエンジンを用意しても良い。方言別の言語とは、英語の場合には、UK英語あるいはUS英語などである。例えば、ID600aの“1”、言語600bの“日本語”、音声認識エンジンアドレス600cの“xxx.xxx.xxx.100.50000”では、利用状態600dは“利用中”となっている。
【0039】
図7に示すように、音声認識結果テーブル(T−8)700は、通話を識別するための通話識別ID70a、音声認識結果の出力順に付与されるシーケンス番号700b、認識実行日時700c(テーブル追加日時に等しい)、認識結果語彙700d(1レコードは、1有音区間分のデータを持つ)を有する。音声認識結果管理装置112は、音声認識装置113から音声認識結果を受信したら音声認識結果テーブル(T−8)700に格納する。音声認識結果テーブル(T−8)の認識実行日時によって、通話中のリアルタイムの認識か、通話終了後の認識かを判断する。例えば、通話識別ID700aの“BBBBB”シーケンス番号700bの“1”、認識実行日時700cの“2017/09/04 13:00:05”には、認識結果語彙700dの“波浪”が対応している。
【0040】
次に、実施例の通話音声処理システムの動作について説明する。
【0041】
例として、日本語と英語に対応している通話音声処理システムにおいて、自動選択で日本語用エンジン113aが選択された後、英語用エンジン113bに切替える場合を説明する。
【0042】
図8及び
図10を参照して、着信時の動作について説明する。
【0043】
最初に、通話録音情報管理装置109は、CTI装置102からCTI情報(通話情報)として着番号を受信する(S800)。
【0044】
通話録音情報管理装置109は、着番号と言語を対応付ける着番号・言語対応テーブル300(
図3のテーブル(T−4))を参照して言語として日本語を選択して着番号言語変換処理(S801)を行い、言語として日本語を使用することを音声認識制御装置111へ通知する(S802)。
【0045】
音声認識制御装置111は、音声認識エンジンとして日本語用エンジン113aを選択する音声認識エンジン選択処理(S803)を行い、音声認識エンジン選択テーブル600(
図6のテーブル(T−7))を書換え、音声認識エンジンアドレスとIDを通話録音情報管理装置109に返す(S804)。
【0046】
ここで、書換え前後の音声認識エンジン選択テーブルをそれぞれ
図15(a)、(b)に示す。テーブル(T−7a)600Aが書換え前のテーブル(
図15(a))であり、テーブル(T−7a’)600Bが書換え後のテーブル(
図15(b))である。具体的には、着信時書換え前の音声認識エンジン選択テーブル(T−7a)600AのID“1”の“日本語”が“空き”の状態から、着信時書換え後の音声認識エンジン選択テーブル(T−7a’)600BのID“1”の“日本語”が“利用中”の状態になる。
【0047】
通話録音情報管理装置109は、通話情報を設定(S805)して、音声認識エンジンアドレスを通話録音装置110に送る(S806)。この場合は、通話録音装置110に日本語用エンジン113aのアドレスを送る。通話録音情報管理装置109は、
図5の通話情報テーブル(T−6a)500に当該通話情報を追加する。具体的には、
図13(a)、(b)に示すように、着信時書換え前の通話情報テーブル(T−6a)500Aに、通話識別ID“BBBBB”、着番号“1113”、エンジンID“1”、言語“日本語”を追加して、着信時書換え後の通話情報テーブル(T−6a’)500Bを作成する。
【0048】
通話録音装置110は、通話を録音し、エンジンアドレス(日本語用エンジンアドレス)を設定してミラーリングされた通話音声を音声認識装置111に送る(S808)。
【0049】
音声認識装置113は、日本語用エンジン113aで音声認識を実行し(S809)、認識結果を音声認識結果管理装置に送る(S810)。
【0050】
音声認識結果管理装置112は、音声認識装置113から送られてきた認識結果を蓄積する(S811)。
【0051】
音声認識結果管理装置112に蓄積された認識結果は、オペレータ用端末104(オペレータPC)に送られて、音声認識結果がオペレータPC画面の通話内容表示領域200(
図2参照)に表示される(S812)。
【0052】
オペレータ108は、オペレータPC画面の通話内容表示領域200に表示された認識結果を閲覧する(S813)。
【0053】
この際、
図10に示すように、顧客105が日本語ではなく英語で通話を行った場合には、音声認識装置113は、日本語用エンジン113aで音声認識を実行し音声認識結果管理装置112に認識結果を送る。この場合、音声認識結果管理装置112は、音声認識装置113から送られてきた間違った認識結果を蓄積して記録する。そして、音声認識結果管理装置112に蓄積された間違った認識結果は、オペレータ用端末(オペレータPC)104に送られて間違った音声認識結果がオペレータPC画面の通話内容表示領域200に表示される。
【0054】
オペレータ108は、オペレータPC画面の通話内容表示領域200に表示された間違った認識結果を閲覧する。
【0055】
例えば、顧客105が“Hello”という音声を発した場合には、音声認識装置113は日本語用エンジン113aで音声認識を実行し“波浪”と認識する。この結果、音声認識結果管理装置112には間違った認識結果(“波浪”)が蓄積される。音声認識結果管理装置112に蓄積された間違った認識結果(“波浪”)は、オペレータPC画面の通話内容表示領域200に表示される。
【0056】
次に、
図9及び
図11を参照して、オペレータ操作による音声認識エンジン切替え時の動作について説明する。
【0057】
オペレータ108は、オペレータPC画面の通話内容表示領域200に表示された間違った認識結果(
図10の“波浪”)を閲覧・確認して、音声認識エンジンの誤りに気付いて、音声認識の言語を日本語から英語(English)に切替える。オペレータ108は、音声認識の言語を英語に切り替えるため、オペレータPC画面に表示された言語選択領域210で英語(English)を選択し、“submit”のボタン220を押して言語として英語を選択し決定する(S900)。そして、英語用の切替えID(F002)が通話録音情報管理装置109に通知される(S901)。
【0058】
通話録音情報管理装置109は、手動切替え用テーブル400(
図4のテーブル(T−5))を参照して、英語用切替えID(F002)に対応した言語である英語に変換する(S902)。
【0059】
通話録音情報管理装置109は、手動切替え用テーブル400(
図4のテーブル(T−5))を用いて変換した言語である英語を音声認識制御装置111へ通知して、音声認識エンジンとして英語用エンジンを利用することを音声認識制御装置111へ知らせる(S903)。
【0060】
音声認識制御装置111は、音声認識エンジンとして英語用エンジン113bを選択(S904)して、音声認識エンジン選択テーブル600(
図6のテーブル(T−7))の書換え利用可能な英語用エンジンアドレスとIDを返す(S905)。ここで、切替え時の書換え前後のテーブルをそれぞれ
図16(a)、(b)に示すテーブル(T−7b)600C、テーブルT−7b’(600D)に示す。
【0061】
具体的には、手動切替え時書換え前の音声認識エンジン選択テーブル(T−7b)600CのID“1”の“日本語”が“利用中”の状態から、手動切替え時書換え後の音声認識エンジン選択テーブル(T−7b’)600DのID“1”の“日本語”が“空き”の状態になる。さらに、手動切替え時書換え前の音声認識エンジン選択テーブル(T−7b)600CのID“3”の“英語”が“空き”の状態から、手動切替え時書換え後の音声認識エンジン選択テーブル(T−7b’)600DのID“3”の“英語”が“利用中”の状態になる。
【0062】
通話録音情報管理装置109は、通話情報を更新する(S906)。具体的には、通話情報に紐付いた音声認識エンジンのIDを利用する英語用エンジン113bのIDに更新する。そして、通話録音情報管理装置109は、通話録音装置110に英語用のエンジンアドレスを送る(S907)。
【0063】
通話録音情報管理装置109は、
図14(a)、(b)に示すように、手動切替え時書換え前の通話情報テーブル(T−6b)500Cを手動切替え時書換え後の通話情報テーブル(T−6b’)500Dに切替える。具体的には、手動切替え時書換え前の通話情報テーブル(T−6b)500Cの通話識別ID“BBBBB”のエンジンIDを“1”から“3”に、言語を“日本語”から“英語”に切替えて、手動切替え時書換え後の通話情報テーブル(T−6b’)500Dを作成する。
【0064】
通話録音装置110は、音声認識エンジンのアドレスを更新して(S908)、通話音声を音声認識装置に送る(S909)。
【0065】
音声認識装置113は、切替えた英語用エンジン113bを用いて音声認識を実行し(S910)、音声認識結果管理装置112に認識結果を送信する(S911)。
【0066】
音声認識結果管理装置112は、音声認識装置113から送られてきた認識結果を蓄積する(S912)。
【0067】
音声認識結果管理装置112に蓄積された認識結果は、オペレータ用端末(オペレータPC)104に送られて音声認識結果がオペレータPC画面の通話内容表示領域200(
図2参照)に表示される(S913)。
【0068】
オペレータ108は、オペレータPC画面の通話内容表示領域200に表示された認識結果を閲覧する(S914)。
【0069】
この際、
図11に示すように、顧客105が英語で通話を行った場合には、音声認識装置113は、英語用エンジン113bで音声認識を実行し音声認識結果管理装置112に認識結果を送る。この場合、音声認識結果管理装置112は、音声認識装置113から送られてきた正しい(顧客の言語に合った)認識結果を蓄積する。そして、音声認識結果管理装置112に蓄積された正しい認識結果は、オペレータ用端末(オペレータPC)104に送られて正しい音声認識結果がオペレータPC画面の通話内容表示領域220に表示される。オペレータ108は、オペレータPC画面の通話内容表示領域200に表示された正しい認識結果を閲覧する。
【0070】
例えば、顧客105が“Please”という音声を発した場合には、音声認識装置113は英語用エンジン113bで音声認識を実行し“Please”と認識して、音声認識結果管理装置112に正しい認識結果(“Please”)が蓄積される。音声認識結果管理装置112に蓄積された正しい認識結果(“Please”)は、オペレータPC画面の通話内容表示領域200に表示される。
【0071】
最後に、
図12を参照して、認識エンジンの切替え失敗時の再実行動作について説明する。
通話終了後、通話録音装置110は通話の録音を録音ファイル110aに出力し、音声認識装置113に送る。音声認識装置113は、録音ファイル110aに対して音声認識を実行し音声認識結果管理装置112に認識結果を蓄積する。
【0072】
具体的には、通話中に英語用エンジン113bが利用中により英語用エンジン113bへの即時切替えができなかった場合は、英語用エンジン113bが利用可能になった時点である通話終了後に出力される録音ファイル110aを音声認識装置113に送る。そして、通話終了後に英語用エンジン113bを用いて音声認識を実行する。
【0073】
具体的には、着信後に、英語用エンジン113bが利用中か否かを判断する。この判断の結果、英語用エンジン113bが利用中でなく、英語用エンジン113bを使用可能と判断した場合には、英語用エンジン113bを用いて着信後の通話中の音声情報を認識する。
【0074】
一方、上記判断の結果、英語用エンジン113bが利用中により、英語用エンジン113bを使用不可能と判断した場合には、通話終了後に、英語用エンジン113bを用いて着信後の音声情報を通話終了後に認識する。
【0075】
実施例によれば、CTI情報による音声認識エンジンの自動選択に加え、オペレータがマニュアル操作で音声認識エンジンを選択できるようにする。これにより、システムリソースの利用を抑えて適切な音声認識エンジンを選択することが可能になる。