(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-06-12
(45)【発行日】2023-06-20
(54)【発明の名称】会話分析装置、会話分析方法および会話分析プログラム
(51)【国際特許分類】
G06F 40/30 20200101AFI20230613BHJP
G06F 40/216 20200101ALI20230613BHJP
G06Q 10/0639 20230101ALI20230613BHJP
【FI】
G06F40/30
G06F40/216
G06Q10/0639
(21)【出願番号】P 2019070723
(22)【出願日】2019-04-02
【審査請求日】2022-01-11
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】原田 将治
【審査官】長 由紀子
(56)【参考文献】
【文献】特開2018-036871(JP,A)
【文献】特開2008-210367(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-58
G06Q 10/06-99/00
(57)【特許請求の範囲】
【請求項1】
会話音声
に含まれる複数の発話時間のうち、最長の発話時間を特定し、会議時間に対する前記最長の発話時間の比率に応じたリスク評価値を判定する第1判定部と、
前記会話音声に対して音声認識を行い、前記会話音声に含まれる単語を抽出する音声認識部と、
より抽象的な単語ほど上位の層に位置する概念構造情報と、前記会話音声に含まれる単語を基にして、前記会話音声における会話内容の抽象度を判定する
処理、または、前記会話音声に含まれる単語のうち、言語コーパスに含まれる単語の出現頻度を基にして、前記会話音声における会話内容の抽象度を判定する処理を行う第2判定部と、
前記
リスク評価値および前記抽象度
を乗算した値と、閾値との比較結果を基にして、前記会話内容を評価する評価部と
を有することを特徴とする会話分析装置。
【請求項2】
前記第1判定部は、前記会話音声に含まれる所定の単語の出現回数
に応じたリスク評価値を更に判定することを特徴とする請求項1に記載の会話分析装置。
【請求項3】
前記会話音声の区間のうち、
前記最長の発話区間の開始時刻から所定時間前の時刻と、前記最長の発話区間の終了時刻から所定時間後の時刻との間の区間を、前記会話の状態の判定に寄与した区間を着目区間として抽出する抽出部を更に有し、前記第2判定部は、前記着目区間に含まれる単語を基にして、前記会話内容の抽象度を判定することを特徴とする請求項
1または2に記載の会話分析装置。
【請求項4】
コンピュータが実行する会話分析方法であって、
会話音声
に含まれる複数の発話時間のうち、最長の発話時間を特定し、会議時間に対する前記最長の発話時間の比率に応じたリスク評価値を判定し、
前記会話音声に対して音声認識を行い、前記会話音声に含まれる単語を抽出し、
より抽象的な単語ほど上位の層に位置する概念構造情報と、前記会話音声に含まれる単語を基にして、前記会話音声における会話内容の抽象度を判定する
処理、または、前記会話音声に含まれる単語のうち、言語コーパスに含まれる単語の出現頻度を基にして、前記会話音声における会話内容の抽象度を判定する処理のうちいずれか一方の処理によって、抽象度を判定し、
前記
リスク評価値および前記抽象度
を乗算した値と、閾値との比較結果を基にして、前記会話内容を評価する
処理を実行することを特徴とする会話分析方法。
【請求項5】
コンピュータに、
会話音声
に含まれる複数の発話時間のうち、最長の発話時間を特定し、会議時間に対する前記最長の発話時間の比率に応じたリスク評価値を判定し、
前記会話音声に対して音声認識を行い、前記会話音声に含まれる単語を抽出し、
より抽象的な単語ほど上位の層に位置する概念構造情報と、前記会話音声に含まれる単語を基にして、前記会話音声における会話内容の抽象度を判定する
処理、または、前記会話音声に含まれる単語のうち、言語コーパスに含まれる単語の出現頻度を基にして、前記会話音声における会話内容の抽象度を判定する処理のうちいずれか一方の処理によって、抽象度を判定し、
前記
リスク評価値および前記抽象度
を乗算した値と、閾値との比較結果を基にして、前記会話内容を評価する
処理を実行させることを特徴とする会話分析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、会話分析装置等に関する。
【背景技術】
【0002】
コールセンターにおけるオペレータと顧客との会話、または、会議の参加者による会話等において、「会話対象(会話内容)」を評価することが求められている。たとえば、オペレータと顧客との会話の対象は、商品に関する問合せや、クレーム対応等となる。会議の参加者による会話の対象は、プロジェクト等となる。
【0003】
会議中の会話を録音した音声データを基にして、プロジェクトを評価する技術として、以下に説明するような従来技術がある。この従来技術は、設定ワードおよび設定ワードに類似する類似ワードを予め定義する。
図18は、設定ワードおよび類似ワードの一例を示す図である。たとえば、設定ワード「遅れている」に対応する類似ワードは「遅延、遅い、・・・」となる。以下の説明では、設定ワードおよび設定ワードに類似する類似ワードをまとめて「設定ワード」と表記する。
【0004】
従来技術は、音声データに対して音声認識を行い、音声データに含まれる設定ワードの出現回数をカウントする。従来技術は、設定ワードの出現回数に応じて、リスク評価値を特定し、会話の対象を評価する。たとえば、従来技術では、設定ワードの出現回数が多いほど、リスク評価値を大きくし、このリスク評価値が大きいほど、会話対象(プロジェクト)のリスクが高いと評価する。また、この従来技術では、会議時間に対する最大の発話時間の比率を算出し、比率が大きいほど、リスク評価値を大きくしている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2009-146121号公報
【文献】特開2017-27102号公報
【文献】特開2011-55160号公報
【文献】特開2018-36868号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
会議の会話において、要求仕様の整理が「遅れている」、「できていない」と発話された場合のリスクと、出力メッセージの決定が「遅れている」、「できていない」と発話された場合のリスクとは、同程度のリスクではない。プロジェクト全体として「要求仕様の整理」に関する作業は数日から数週間かかるものであり、要求仕様の整理が遅れている場合には、大きなリスクである。これに対して、プロジェクト全体として「出力メッセージ」に関する作業は、1時間で解決できるものであり、出力メッセージが送れていても、リスクは小さいといえる。
【0007】
しかしながら、従来技術では、要求仕様の整理に関して、「遅れている」、「できていない」と発話された回数と、出力メッセージに関して、「遅れている」、「できていない」と発話された回数とが同数の場合には、各リスクは同じリスクと評価してしまう。このため、従来技術では、リスク有無を評価できても、会話の対象としてのリスクの程度を適切に評価することができていない。
【0008】
1つの側面では、本発明は、会議の発話に基づいた会議の対象としてのリスク判定をおこなうことができる会話分析装置、会話分析方法および会話分析プログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
第1の案では、会話分析装置は、第1判定部と、音声認識部と、第2判定部と、評価部とを有する。第1判定部は、会話音声を分析して、会話の状態を判定する。音声認識部は、会話音声に対して音声認識を行い、会話音声に含まれる単語を抽出する。第2判定部は、会話音声に含まれる単語を基にして、会話音声における会話内容の抽象度を判定する。評価部は、会話の状態と抽象度とを基にして、会話対象を評価する。
【発明の効果】
【0010】
会議の発話に基づいた会議の対象としてのリスク判定をおこなうことができる。
【図面の簡単な説明】
【0011】
【
図1】
図1は、本実施例1に係る会話分析装置の処理を説明するための図である。
【
図2】
図2は、本実施例1に係る会話分析装置の構成を示す機能ブロック図である。
【
図3】
図3は、本実施例1に係るリスク評価値テーブルのデータ構造の一例を示す図である。
【
図4】
図4は、本実施例1に係る抽象度判定テーブルのデータ構造の一例を示す図である。
【
図6】
図6は、本実施例1に係る第2判定部の処理を説明するための図である。
【
図7】
図7は、本実施例1に係る会話分析装置の処理手順を示すフローチャートである。
【
図8】
図8は、発明の効果を補足するための図である。
【
図9】
図9は、本実施例2に係る会話分析装置の構成を示す機能ブロック図である。
【
図10】
図10は、本実施例2に係る設定キーワードテーブルのデータ構造の一例を示す図である。
【
図11】
図11は、本実施例2に係るリスク評価値テーブルのデータ構造の一例を示す図である。
【
図12】
図12は、本実施例2に係る生成部の処理を説明するための図である。
【
図13】
図13は、本実施例2に係る会話分析装置の処理手順を示すフローチャートである。
【
図14】
図14は、本実施例3に係る会話分析装置の構成の一例を示す機能ブロック図である。
【
図15】
図15は、本実施例3に係る抽出部の処理を説明するための図である。
【
図16】
図16は、本実施例3に係る会話分析装置の処理手順を示すフローチャートである。
【
図17】
図17は、本実施例に係る会話分析装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【
図18】
図18は、設定ワードおよび類似ワードの一例を示す図である。
【発明を実施するための形態】
【0012】
以下に、本願の開示する会話分析装置、会話分析方法および会話分析プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例1】
【0013】
図1は、本実施例1に係る会話分析装置の処理を説明するための図である。まず、会話分析装置は、テーブル10Aを基にして、会議Aの会話対象のリスクを評価する場合について説明する。テーブル10Aは、会議Aで発声された単語と、回数との関係を示すテーブルである。
【0014】
会話分析装置は、テーブル10Aの各単語のうち、設定キーワードに対応する単語を特定し、特定した設定キーワードに対応する単語の出現回数を基にして、「会議の状態」の良し悪しを判定する。たとえば、会話分析装置は、設定キーワードに対応する単語の出現回数が閾値以上である場合、会議の状態が「悪い」と判定し、出現回数が閾値未満である場合、会議の状態が「良い」と判定する。
【0015】
たとえば、設定キーワードを「遅れている」、「できていない」とし、出現回数の閾値を「10」とする。そうすると、会話分析装置は、テーブル10Aのうち、設定キーワードに対応する単語の出現回数「16」が閾値「10」以上となるため、会議Aの状態が悪いと判定する。
【0016】
続いて、会話分析装置は、テーブル10Aの各単語の抽象度を基にして「会話内容の抽象度」を判定する。各単語の抽象度は、言語コーパスにおける出現頻度によって決定され、出現頻度が高いものほど、抽象度が高くなる。
【0017】
たとえば、テーブル10Aでは、抽象度の高い「仕様書」が多く出現している。このため、会話分析装置は、会議Aの会話内容の抽象度が高いと判定する。「会話内容の抽象度が高い」ということは、会議で具体的な点が議論されておらず、抽象的な議論しかなされていないことを意味する。
【0018】
会話分析装置は、会話の状態の判定結果と、会話内容の抽象度の判定結果とを基にして、会議Aの会話対象のリスクを評価する。上記のように、会話の状態が悪く、かつ、会話内容の抽象度が高いため、会議Aにおける会話対象に関しては、意識合わせが求められ、解決しにくいと言える。このため、会話分析装置は、会議Aの会話対象のリスクが「大」であると評価する。
【0019】
次に、会話分析装置は、テーブル10Bを基にして、会議Bの会話対象のリスクを評価する場合について説明する。テーブル10Bは、会議Bで発声された単語と、回数との関係を示すテーブルである。
【0020】
会話分析装置は、テーブル10Bの各単語のうち、設定キーワードに対応する単語を特定し、特定した設定キーワードに対応する単語の出現回数を基にして、「会議の状態」の良し悪しを判定する。たとえば、会話分析装置は、テーブル10Bのうち、設定キーワードに対応する単語の出現回数「16」が閾値「10」以上となるため、会議Bの状態が悪いと判定する。
【0021】
続いて、会話分析装置は、テーブル10Bの各単語の抽象度を基にして「会話内容の抽象度」を判定する。たとえば、テーブル10Bでは、抽象度の低い「文字コード」が多く出現している。このため、会話分析装置は、会議Bの会話内容の抽象度が低いと判定する。「会話内容の抽象度が低い」ということは、会議で具体的な点が議論されていることを意味する。
【0022】
会話分析装置は、会話の状態の判定結果と、会話内容の抽象度の判定結果とを基にして、会議Bの会話対象のリスクを評価する。上記のように、会話の状態は悪いが、会話内容の抽象度が低いため、会議Bにおける会話対象に関しては、論点が明確で意思疎通しやすく解決に結びつきやすいといえる。このため、会話分析装置は、会議Bの会話対象のリスクが「小」であると評価する。
【0023】
上記のように、本実施例1に係る会話分析装置は、設定キーワードの出現回数に基づく会議の状態の良し悪しに加えて、会議内容の抽象度を用いて、会話対象のリスクを評価している。たとえば、設定キーワードの出現回数だけでは、会議A、会議Bともにリスクが大であると判定してしまう場合があるが、抽象度に鑑みると、会議Bは抽象度が低いため、具体的な議論が行われており、リスクは小さいと判定することができる。すなわち、会話の対象としてのリスクの程度を適切に評価することができる。
【0024】
次に、本実施例1に係る会話分析装置の構成の一例について説明する。
図2は、本実施例1に係る会話分析装置の構成を示す機能ブロック図である。
図2に示すように、この会話分析装置100は、第1判定部110と、音声認識部120と、第2判定部130と、評価部140とを有する。
【0025】
記憶部105は、リスク評価値テーブル105aと、抽象度判定テーブル105bとを有する。記憶部105は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。
【0026】
図3は、本実施例1に係るリスク評価値テーブルのデータ構造の一例を示す図である。
図3に示すように、このリスク評価値テーブル105aは、比率と、リスク評価値とを対応付ける。比率は、後述する第1判定部110により算出されるものである。リスク評価値は、会議の状態の悪さの程度を示す値であり、リスク評価値が大きいほど、会議の状態が悪いことを示す。
【0027】
図4は、本実施例1に係る抽象度判定テーブルのデータ構造の一例を示す図である。
図4に示すように、抽象度判定テーブル105bは、単語と、抽象度とを対応付ける。抽象度は、単語の抽象度の程度を示す値であり、抽象度が大きいほど、単語がより抽象的であることを示す。たとえば、単語の抽象度は、概念DB(Data Base)に基づいて決定される。
【0028】
図5は、概念DBの一例を示す図である。概念DB50において、各単語が概念木構造で定義され、概念階層が高いほど、抽象度が高くなる。概念階層「1」が最も高い階層であり、概念階層2、3、4、・・・、9の順に、階層は低くなる。
【0029】
図5において、単語「事象」、「行為」の概念階層は「1」であり、抽象度は「9」となる。単語「要求仕様」の概念階層は「5」であり、抽象度は「5」となる。単語「会員」の概念階層は「6」であり、抽象度は「4」となる。単語「ID」の概念階層は「7」であり、抽象度は「3」となる。単語「ユニバーサルデザイン」の階層は「9」であり、抽象度は「1」となる。
【0030】
たとえば、単語「要求仕様」は、概念DB50の「要求仕様」にヒットするため、単語「要求仕様」の抽象度は「5」となる。単語「ユニバーサルデザイン」は、概念DB50の「ユニバーサルデザイン」にヒットするため、単語「ユニバーサルデザイン」の抽象度は「1」となる。
【0031】
なお、単語が複合語の場合には、複合語に含まれる複数の単語のうち、概念階層の最も低い単語を特定し、特定した単語の概念階層に1を加算した概念階層を、複合語の概念階層とする。たとえば、単語(複合語)「会員ID」は、概念DB50の「会員」と「ID」とにヒットする。概念DBの「会員」の概念階層「6」と「ID」の概念階層「7」のうち、低い方の概念階層「7」に1を加算した概念階層「8」を、単語「会員ID」の概念階層として特定し、特定した概念階層「8」の抽象度「2」を、単語「会員ID」の抽象度として特定する。
【0032】
図2の説明に戻る。
図2の各処理部110,120,130,140は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などによって実現できる。また、各処理部110~140は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジックによっても実現できる。
【0033】
会話分析装置100は、会話音声データ20を図示しない外部装置から取得する。会話音声データ20は、会議の会話を録音した音声データであり、たとえば、時間と音声のパワーとを対応付ける。
【0034】
第1判定部110は、会話音声データ20を分析して、会話の状態を判定する処理部である。たとえば、第1判定部110は、会話音声データ20の音声のパワーを走査して、音声のパワーが閾値Thp以上となる区間を、それぞれ発話区間として特定する。
【0035】
第1判定部110は、会話音声データ20から特定する複数の発話区間のうち、最初の発話区間の開始時刻から、最後の発話区間の終了時刻までの時間を「会議時間」として算出する。
【0036】
第1判定部110は、複数の発話区間の長さを比較して、最長の発話区間を特定する。第1判定部110は、式(1)を基にして、会議時間に対する最長の発話区間の比率を算出する。
【0037】
比率=最長の発話区間/会議時間×100(%)・・・(1)
【0038】
第1判定部110は、式(1)に基づいて算出した比率と、リスク評価値テーブル105aとを比較して、リスク評価値を判定する。リスク評価値は、会話の状態の一例である。第1判定部110は、リスク評価値の判定結果を、評価部140に出力する。
【0039】
なお、本実施例1で説明する第1判定部110は、式(1)を基にして、リスク評価値を判定する場合について説明したが、
図1で説明したように、設定キーワードの出現回数に基づいて、会話の状態を判定してもよい。たとえば、第1判定部110は、音声認識部120の音声認識結果に含まれる全単語の出現回数の総数に対する設定キーワードの出現回数の比率を算出し、算出した比率と、リスク評価値テーブル105aとを基にして、リスク評価値を判定してもよい。
【0040】
音声認識部120は、会話音声データ20を音声解析し、発声された単語を抽出する処理部である。音声認識部120は、抽出した各単語の情報を、第2判定部130に出力する。音声認識部120は、どのような音声認識技術を利用してもよい。たとえば、会話音声データ20に含まれる声の特徴を基にして、話し言葉を文字列に変換し、単語を定義した辞書情報を基にして、単語を抽出する。
【0041】
第2判定部130は、音声認識部120の音声認識結果と、抽象度判定テーブル105bとを基にして、会話内容の抽象度を判定する処理部である。第2判定部130は、判定した会話内容の抽象度の情報を、評価部140に出力する。
【0042】
たとえば、第2判定部130は、音声認識結果に含まれる複数の単語と、抽象度判定テーブル105bとを比較して、抽象度判定テーブル105bに登録された各単語について、単語毎の出現回数をカウントする。
【0043】
図6は、本実施例1に係る第2判定部の処理を説明するための図である。
図6に示す例では、単語「要求仕様」の出現回数が「6」、単語「会員ID」の出現回数が「1」、単語「出力メッセージ」の出現回数が「1」である。単語「要求仕様」の抽象度が「10」、単語「会員ID」の抽象度が「2」、単語「出力メッセージ」の抽象度が「4」であるため、抽象度の合計は「66」となる。また、各単語の抽象度の平均は「8.25」となる。第2判定部130は、この抽象度の平均を、判定結果の抽象度の情報として、評価部140に出力する。
【0044】
評価部140は、第1判定部110から出力される会話の状態(リスク評価値)と、第2判定部130から出力される抽象度とを基にして、会話音声データ20に含まれる会話対象のリスクを評価する処理部である。
【0045】
たとえば、評価部140は、リスク評価値と、抽象度とを乗算した値が、基準評価値以上である場合、会話対象のリスクが「リスク大」であると評価する。一方、評価部140は、リスク評価値と、抽象度とを乗算した値が、基準評価値未満である場合、会話対象のリスクが「リスク小」であると評価する。
【0046】
評価部140は、評価結果を図示しない表示装置に出力して表示させてもよいし、ネットワークを介して図示しない外部装置に評価結果を通知してもよい。
【0047】
次に、本実施例1に係る会話分析装置100の処理手順の一例について説明する。
図7は、本実施例1に係る会話分析装置の処理手順を示すフローチャートである。
図7に示すように、会話分析装置100は、会話音声データ20を取得する(ステップS101)。
【0048】
会話分析装置100の第1判定部110は、会議時間に対する最長の発話時間の比率と、リスク評価値テーブル105aとを基にして、会話の状態(リスク評価値)を判定する(ステップS102)。
【0049】
会話分析装置100の音声認識部120は、会話音声データ20に対して音声認識を実行し、発声された単語を抽出する(ステップS103)。会話分析装置100の第2判定部130は、発声された単語と、抽象度判定テーブル105bとを基にして、会話内容の抽象度を判定する(ステップS104)。
【0050】
会話分析装置100の評価部140は、会話の状態(リスク評価値)および会話内容の抽象度を基にして、会話対象のリスクを総合的に評価する(ステップS105)。評価部140は、評価結果を通知する(ステップS106)。
【0051】
次に、本実施例1に係る会話分析装置100の効果について説明する。会話分析装置100は、第1判定部110によって判定される会議の状態に加えて、会議内容の抽象度を用いて、会話対象のリスクを評価している。これによって、会話の対象としてのリスクの程度を適切に評価することができる。
【0052】
ここで、発明の効果の補足として、リスクの大小と、単語の出現頻度との関係について説明する。
図8は、発明の効果を補足するための図である。たとえば、単語「中止処理」は、関連文書30a,30b,30cの様々な箇所で出現しており、出現頻度が高く、抽象度が高いと言える。抽象度が高いと、改善すべき点の範囲が広く、リスクは大きいと考えられる。抽象度が高いと、具体性にかけ、「中止処理が具体的に何の中止処理になのか」誤解のリスクもある。
【0053】
単語「文字コード」は、関連文書30a,30b,30cのうち、特定の関連文書30cにのみ出現しており、出現頻度が低く、抽象度が低いと言える。抽象度が低いと、改善すべき点の範囲が限定的であり、リスクは小さいと考えられる。
【0054】
図8で説明したように、リスク評価値の大きい(会話の状態が悪い)会話の内容の議論の中心が、抽象度の高い単語であれば、リスクの程度も大きいと推定できる。
【0055】
ところで、本実施例1に係る会話分析装置100の第2判定部130は、概念DB50を基に生成された抽象度判定テーブル105bを基にして、単語の抽象度を特定していたがこれに限定されるものではない。第2判定部130は、単語(あるいは複合語)と、概念DB50とを直接比較して、単語(あるいは複合語)に対応する抽象度を特定してもよい。
【実施例2】
【0056】
図9は、本実施例2に係る会話分析装置の構成を示す機能ブロック図である。
図9に示すように、会話分析装置200は、記憶部205と、音声認識部210と、第1判定部220と、第2判定部230と、評価部240と、生成部250とを有する。
【0057】
記憶部205は、設定キーワードテーブル205aと、リスク評価値テーブル205bと、抽象度判定テーブル205cとを有する。記憶部205は、RAM、ROM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
【0058】
設定キーワードテーブル205aは、会話の状態を判定するための抽出対象となる設定キーワードを定義するテーブルである。
図10は、本実施例2に係る設定キーワードテーブルのデータ構造の一例を示す図である。
図10に示すように、この設定キーワードテーブル205aには、各種の設定キーワードが登録される。
【0059】
図11は、本実施例2に係るリスク評価値テーブルのデータ構造の一例を示す図である。
図11に示すように、このリスク評価値テーブル205bは、出現回数と、リスク評価値とを対応付ける。出現回数は、会話音声データ20の音声認識結果に含まれる単語のうち、設定キーワードの出現回数を示すものである。リスク評価値は、会議の状態の悪さの程度を示す値であり、リスク評価値が大きいほど、会議の状態が悪いことを示す。
【0060】
たとえば、出現回数が「Na以上、Nb未満」の場合、リスク評価値は「0」となる。出現回数が「Nb以上、Nc未満」の場合、リスク評価値は「1」となる。出現回数が「Nc以上」の場合、リスク評価値は「2」となる。ここで、Na、Nb、Ncの値は、予め設定される値であり、大小関係をNa<Nb<Ncとする。なお、2つの閾値Na、Nbを用いて、リスク評価値を特定してもよい。たとえば、Na未満の場合に、リスク評価値を「0」とし、Na以上、Nb未満の場合に、リスク評価値を「1」とし、Nb以上の場合にリスク評価値「2」としてもよい。
【0061】
抽象度判定テーブル205cは、単語と抽象度とを対応付けるテーブルである。抽象度判定テーブル205cのデータ構造は、
図4で説明した抽象度判定テーブル105bのデータ構造と同様である。
【0062】
図9の説明に戻る。
図9の各処理部210,220,230,240は、CPUやMPUなどによって実現できる。また、各処理部210~240は、ASICやFPGAなどのハードワイヤードロジックによっても実現できる。
【0063】
会話分析装置200は、会話音声データ20を図示しない外部装置から取得する。会話音声データ20は、会議の会話を録音した音声データであり、たとえば、時間と音声のパワーとを対応付ける。
【0064】
音声認識部210は、会話音声データ20を音声解析し、発声された単語を抽出する処理部である。音声認識部210は、抽出した各単語の情報を、第1判定部220および第2判定部230に出力する。音声認識部210は、どのような音声認識技術を利用してもよい。たとえば、会話音声データ20に含まれる声の特徴を基にして、話し言葉を文字列に変換し、単語を定義した辞書情報を基にして、単語を抽出する。
【0065】
第1判定部220は、会話音声データ20の音声認識結果を基にして、会話の状態を判定する処理部である。たとえば、第1判定部220は、音声認識部210の音声認識結果と、設定キーワードテーブル205aとを基にして、音声認識結果の各単語のうち、設定キーワードの出現回数をカウントする。第1判定部220は、カウントした出現回数と、リスク評価値テーブル205bとを比較して、リスク評価値(会話の状態)を判定する。第1判定部220は、判定結果となる会話の状態を、評価部240に出力する。
【0066】
第2判定部230は、音声認識部210の音声認識結果と、抽象度判定テーブル205cとを基にして、会話内容の抽象度を判定する処理部である。第2判定部230は、判定した会話内容の抽象度の情報を、評価部240に出力する。第2判定部230が、会話内容の抽象度を判定する処理は、実施例1で説明した第2判定部130が、会話内容の抽象度を判定する処理と同様である。
【0067】
評価部240は、第1判定部220から出力される会話の状態(リスク評価値)と、第2判定部230から出力される抽象度とを基にして、会話音声データ20に含まれる会話対象のリスクを評価する処理部である。評価部240がリスクを評価する処理は、評価部140がリスクを評価する処理と同様である。
【0068】
生成部250は、言語コーパス25を取得し、抽象度判定テーブル205cを生成する処理部である。言語コーパス25は、会話対象に関する言語コーパスとする。たとえば、会話対象が会議に関するものであれば、言語コーパス25は、会議に関する言語コーパスとなる。
【0069】
生成部250は、言語コーパス25を形態素解析し、各形態素(以下、単語)の出現頻度を集計する。生成部250は、単語の出現頻度を基にして、抽象度判定テーブル205cの各単語に対する抽象度を算出する。
【0070】
図12は、本実施例2に係る生成部の処理を説明するための図である。
図12のテーブル10Cは、単語と、言語コーパス25での単語の出現頻度とを対応付けるテーブルである。生成部250は、式(2)を基にして、各単語の抽象度を算出してもよいし、出現頻度が低い順の順位を抽象度として算出してもよい。
【0071】
抽象度=log(出現頻度)×2・・・(2)
【0072】
たとえば、式(2)を基にして算出した各単語の抽象度を、第1抽象度と表記する。出現頻度の順位を基にして算出した各単語の抽象度を、第2抽象度と表記する。生成部250は、第1抽象度または第2抽象度のいずれか一方の抽象度を、抽象度判定テーブル205cに登録する。
【0073】
次に、本実施例2に係る会話分析装置200の処理手順の一例について説明する。
図13は、本実施例2に係る会話分析装置の処理手順を示すフローチャートである。
図13に示すように、会話分析装置200は、会話音声データ20を取得する(ステップS201)。会話分析装置200は、会話音声データ20に対して音声認識を実行し、発声された単語を抽出する(ステップS202)。
【0074】
会話分析装置200の第1判定部220は、発声された単語を基にして、設定キーワードの出現回数をカウントし、音声の状態(リスク評価値)を判定する(ステップS203)。
【0075】
会話分析装置200の第2判定部230は、発声された単語と、抽象度判定テーブル205cとを基にして、会話内容の抽象度を判定する(ステップS204)。
【0076】
会話分析装置200の評価部240は、会話の状態(リスク評価値)および会話内容の抽象度を基にして、会話対象のリスクを総合的に評価する(ステップS205)。評価部240は、評価結果を通知する(ステップS206)。
【0077】
次に、本実施例2に係る会話分析装置200の効果について説明する。会話分析装置100は、第1判定部110によって判定される、設定キーワードの出現回数に基づく会議の状態に加えて、会議内容の抽象度を用いて、会話対象のリスクを評価している。これによって、会話の対象としてのリスクの程度を適切に評価することができる。
【実施例3】
【0078】
図14は、本実施例3に係る会話分析装置の構成の一例を示す機能ブロック図である。
図14に示すように、この会話分析装置300は、記憶部305と、第1判定部310と、抽出部320と、音声認識部330と、第2判定部340と、評価部350とを有する。
【0079】
記憶部305は、リスク評価値テーブル305aと、抽象度判定テーブル305bとを有する。記憶部305は、RAM、ROM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
【0080】
リスク評価値テーブル305aは、比率と、リスク評価値とを対応付けるテーブルである。比率およびリスク評価値に関する説明は、実施例1のリスク評価値テーブル105aで行った説明と同様である。リスク評価値テーブル305aのデータ構造は、
図3で説明したリスク評価値テーブル105aのデータ構造と同様である。
【0081】
抽象度判定テーブル305bは、単語と、抽象度とを対応付けるテーブルである。抽象度に関する説明は、実施例1の抽象度判定テーブル105bで行った説明と同様である。抽象度判定テーブル305bのデータ構造は、
図4で説明した抽象度判定テーブル305bのデータ構造と同様である。
【0082】
会話分析装置300は、会話音声データ20を図示しない外部装置から取得する。会話音声データ20は、会議の会話を録音した音声データであり、たとえば、時間と音声のパワーとを対応付ける。
【0083】
第1判定部310は、会話音声データ20を分析して、会話の状態を判定する処理部である。第1判定部310は、第1判定部110と同様にして、会議時間に対する最長の発話区間の比率を算出する。第1判定部310は、算出した比率と、リスク評価値テーブル305aとを比較して、リスク評価値を判定する。第1判定部110は、リスク評価値(会話の状態)の判定結果を、評価部350に出力する。
【0084】
また、第1判定部310は、比率を算出する場合に利用した、「最長の発話区間」の情報を、抽出部320に出力する。
【0085】
抽出部320は、第1判定部310による会話の状態の判定に寄与した区間を「着目区間」として抽出する処理部である。
図15は、本実施例3に係る抽出部の処理を説明するための図である。たとえば、最長の発話区間を、時刻t
1~時刻t
2とすると、抽出部320は、時刻t
1a~時刻t
2aを着目区間として抽出する。時刻t
1aは、t
1よりも所定時間(たとえば、5分間)前の時刻である。時刻t
2aは、t
2よりも所定時間(たとえば、5分間)後の時刻である。抽出部320は、着目区間の情報を、第2判定部340に出力する。
【0086】
音声認識部330は、会話音声データ20を音声解析し、発声された単語を抽出する処理部である。音声認識部330は、抽出した各単語の情報を、第2判定部340に出力する。音声認識部330は、どのような音声認識技術を利用してもよい。たとえば、会話音声データ20に含まれる声の特徴を基にして、話し言葉を文字列に変換し、単語を定義した辞書情報を基にして、単語を抽出する。
【0087】
第2判定部340は、音声認識部330の音声認識結果の単語のうち、着目区間に発声された単語と、抽象度判定テーブル305bとを基にして、会話内容の抽象度を判定する処理部である。第2判定部340は、判定した会話内容の抽象度の情報を、評価部350に出力する。
【0088】
たとえば、第2判定部340は、着目区間に含まれる複数の単語と、抽象度判定テーブル305bとを比較して、抽象度判定テーブル305bに登録された各単語について、単語毎の出現回数をカウントする。第2判定部340は、カウントした単語毎の出現回数を基にして、抽象度を判定する。カウントした単語毎の出現回数を基にして、抽象度を判定する処理は、実施例1で説明した第2判定部130の処理と同様である。
【0089】
評価部350は、第1判定部310から出力される会話の状態(リスク評価値)と、第2判定部340から出力される抽象度とを基にして、会話音声データ20に含まれる会話対象のリスクを評価する処理部である。評価部350がリスクを評価する処理は、評価部140がリスクを評価する処理と同様である。
【0090】
次に、本実施例3に係る会話分析装置300の処理手順の一例について説明する。
図16は、本実施例3に係る会話分析装置の処理手順を示すフローチャートである。
図16に示すように、会話分析装置300は、会話音声データ20を取得する(ステップS301)。
【0091】
会話分析装置300の第1判定部110は、会議時間に対する最長の発話時間の比率と、リスク評価値テーブル305aとを基にして、会話の状態(リスク評価値)を判定する(ステップS302)。会話分析装置300の抽出部320は、会話の状態の判定に寄与した着目区間を抽出する(ステップS303)。
【0092】
会話分析装置300の音声認識部330は、会話音声データ20に対して音声認識を実行し、発声された単語を抽出する(ステップS304)。会話分析装置300の第2判定部340は、着目区間中に発声された単語と、抽象度判定テーブル305bとを基にして、会話内容の抽象度を判定する(ステップS305)。
【0093】
会話分析装置300の評価部350は、会話の状態(リスク評価値)および会話内容の抽象度を基にして、会話対象のリスクを総合的に評価する(ステップS306)。評価部350は、評価結果を通知する(ステップS307)。
【0094】
次に、本実施例3に係る会話分析装置300の効果について説明する。会話分析装置300は、会議内容の抽象度を判定する場合に、会議の状態の判定に寄与した着目区間で発声された単語を用いて、抽象度を判定し、会話対象のリスク評価に用いる。これにより、会議の状態に密接に関係する区間の抽象度を用いて、リスクの大小を評価できる。
【0095】
ところで、本実施例3に係る会話分析装置300は、会話の状態の判定に寄与した着目区間を、最長の発話区間を用いて抽出していたがこれに限定されるものではない。たとえば、会話分析装置300の抽出部320は、設定キーワードが含まれる発話区間を基にして、着目区間を抽出してもよい。この場合には、第1判定部310は、音声認識部330から、音声認識結果を取得し、発話区間に設定キーワードが含まれるか否かを判定し、設定キーワードの含まれる発話区間の情報を、抽出部320に出力する。
【0096】
次に、本実施例に示した会話分析装置100(200,300)と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。
図17は、本実施例に係る会話分析装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【0097】
図17に示すように、コンピュータ500は、各種演算処理を実行するCPU501と、ユーザからのデータの入力を受け付ける入力装置502と、ディスプレイ503とを有する。また、コンピュータ500は、記憶媒体からプログラム等を読み取る読み取り装置504と、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行うインタフェース装置505とを有する。コンピュータ500は、各種情報を一時記憶するRAM506と、ハードディスク装置507とを有する。そして、各装置501~507は、バス508に接続される。
【0098】
ハードディスク装置507は、音声認識プログラム507a、第1判定プログラム507b、抽出プログラム507c、第2判定プログラム507d、評価プログラム507eを有する。CPU501は、音声認識プログラム507a、第1判定プログラム507b、抽出プログラム507c、第2判定プログラム507d、評価プログラム507eを読み出してRAM506に展開する。
【0099】
音声認識プログラム507aは、音声認識プロセス506aとして機能する。第1判定プログラム507bは、第1判定プロセス506bとして機能する。抽出プログラム507cは、抽出プロセス506cとして機能する。第2判定プログラム507dは、第2判定プロセス506dとして機能する。評価プログラム507eは、評価プロセス506eとして機能する。
【0100】
音声認識プロセス506aの処理は、音声認識部120,210,330の処理に対応する。第1判定プロセス506bの処理は、第1判定部110,220,310の処理に対応する。抽出プロセス506cの処理は、抽出部320の処理に対応する。第2判定プロセス506dの処理は、第2判定部130,230,340の処理に対応する。評価プロセス506eの処理は、評価部140,240,350の処理に対応する。
【0101】
なお、各プログラム507a~507eついては、必ずしも最初からハードディスク装置507に記憶させておかなくてもよい。例えば、コンピュータ500に挿入されるフレキシブルディスク(FD)、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ500が各プログラム507a~507eを読み出して実行するようにしてもよい。
【0102】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0103】
(付記1)会話音声を分析して、会話の状態を判定する第1判定部と、
前記会話音声に対して音声認識を行い、前記会話音声に含まれる単語を抽出する音声認識部と、
前記会話音声に含まれる単語を基にして、前記会話音声における会話内容の抽象度を判定する第2判定部と、
前記会話の状態と前記抽象度とを基にして、前記会話内容を評価する評価部と
を有することを特徴とする会話分析装置。
【0104】
(付記2)前記第1判定部は、前記会話音声に含まれる所定の単語の出現回数、または、前記会話音声に含まれる複数の発話時間のうち、最長の発話時間を基にして、前記会話内容のリスクの程度を示す評価値を、前記会話の状態として判定することを特徴とする付記1に記載の会話分析装置。
【0105】
(付記3)前記第2判定部は、言語コーパスに含まれる単語の出現頻度を基にして前記抽象度を判定することを特徴とする付記1または2に記載の会話分析装置。
【0106】
(付記4)前記第2判定部は、より抽象的な単語ほど上位の層に位置する概念構造情報と、前記会話音声に含まれる単語とを基にして、前記抽象度を判定することを特徴とする付記2に記載の会話分析装置。
【0107】
(付記5)前記会話音声の区間のうち、前記会話の状態の判定に寄与した区間を着目区間として抽出する抽出部を更に有し、前記第2判定部は、前記着目区間に含まれる単語を基にして、前記会話内容の抽象度を判定することを特徴とする付記1~4のいずれか一つに記載の会話分析装置。
【0108】
(付記6)コンピュータが実行する会話分析方法であって、
会話音声を分析して、会話の状態を判定し、
前記会話音声に対して音声認識を行い、前記会話音声に含まれる単語を抽出し、
前記会話音声に含まれる単語を基にして、前記会話音声における会話内容の抽象度を判定し、
前記会話の状態と前記抽象度とを基にして、前記会話内容を評価する
処理を実行することを特徴とする会話分析方法。
【0109】
(付記7)前記会話の状態を判定する処理は、前記会話音声に含まれる所定の単語の出現回数、または、前記会話音声に含まれる複数の発話時間のうち、最長の発話時間を基にして、前記会話内容のリスクの程度を示す評価値を、前記会話の状態として判定することを特徴とする付記6に記載の会話分析方法。
【0110】
(付記8)前記抽象度を判定する処理は、言語コーパスに含まれる単語の出現頻度を基にして前記抽象度を判定することを特徴とする付記6または7に記載の会話分析方法。
【0111】
(付記9)前記抽象度を判定する処理は、より抽象的な単語ほど上位の層に位置する概念構造情報と、前記会話音声に含まれる単語とを基にして、前記抽象度を判定することを特徴とする付記7に記載の会話分析方法。
【0112】
(付記10)前記会話音声の区間のうち、前記会話の状態の判定に寄与した区間を着目区間として抽出する処理を更に実行し、前記抽象度を判定する処理は、前記着目区間に含まれる単語を基にして、前記会話内容の抽象度を判定することを特徴とする付記6~9のいずれか一つに記載の会話分析方法。
【0113】
(付記11)コンピュータに、
会話音声を分析して、会話の状態を判定し、
前記会話音声に対して音声認識を行い、前記会話音声に含まれる単語を抽出し、
前記会話音声に含まれる単語を基にして、前記会話音声における会話内容の抽象度を判定し、
前記会話の状態と前記抽象度とを基にして、前記会話内容を評価する
処理を実行させることを特徴とする会話分析プログラム。
【0114】
(付記12)前記会話の状態を判定する処理は、前記会話音声に含まれる所定の単語の出現回数、または、前記会話音声に含まれる複数の発話時間のうち、最長の発話時間を基にして、前記会話内容のリスクの程度を示す評価値を、前記会話の状態として判定することを特徴とする付記11に記載の会話分析プログラム。
【0115】
(付記13)前記抽象度を判定する処理は、言語コーパスに含まれる単語の出現頻度を基にして前記抽象度を判定することを特徴とする付記11または12に記載の会話分析プログラム。
【0116】
(付記14)前記抽象度を判定する処理は、より抽象的な単語ほど上位の層に位置する概念構造情報と、前記会話音声に含まれる単語とを基にして、前記抽象度を判定することを特徴とする付記12に記載の会話分析プログラム。
【0117】
(付記15)前記会話音声の区間のうち、前記会話の状態の判定に寄与した区間を着目区間として抽出する処理を更にコンピュータに実行させ、前記抽象度を判定する処理は、前記着目区間に含まれる単語を基にして、前記会話内容の抽象度を判定することを特徴とする付記11~14のいずれか一つに記載の会話分析プログラム。
【符号の説明】
【0118】
100,200,300 会話分析装置
105,205,305 記憶部
105a,205b,305a リスク評価値テーブル
105b,205c,305b 抽象度判定テーブル
110,220,310 第1判定部
120,210,330 音声認識部
130,230,340 第2判定部
140,240,350 評価部
205a 設定キーワードテーブル
320 抽出部