JP6775465B2 - 対話ルール照合装置、対話装置、対話ルール照合方法、対話方法、対話ルール照合プログラム、及び対話プログラム - Google Patents

対話ルール照合装置、対話装置、対話ルール照合方法、対話方法、対話ルール照合プログラム、及び対話プログラム Download PDF

Info

Publication number
JP6775465B2
JP6775465B2 JP2017084616A JP2017084616A JP6775465B2 JP 6775465 B2 JP6775465 B2 JP 6775465B2 JP 2017084616 A JP2017084616 A JP 2017084616A JP 2017084616 A JP2017084616 A JP 2017084616A JP 6775465 B2 JP6775465 B2 JP 6775465B2
Authority
JP
Japan
Prior art keywords
utterance
user
dialogue
unit
rule
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.)
Active
Application number
JP2017084616A
Other languages
English (en)
Other versions
JP2018181259A (ja
Inventor
東中 竜一郎
竜一郎 東中
齋藤 邦子
邦子 齋藤
松尾 義博
義博 松尾
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017084616A priority Critical patent/JP6775465B2/ja
Publication of JP2018181259A publication Critical patent/JP2018181259A/ja
Application granted granted Critical
Publication of JP6775465B2 publication Critical patent/JP6775465B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、ユーザ発話の書き換えを用いる対話ルール照合装置、対話装置、対話ルール照合方法、対話方法、対話ルール照合プログラム、及び対話プログラムに関する。
対話システムにおいて、人間はコンピュータと対話をすることにより、種々の情報を得たり、要望を満たしたりする。また、所定のタスクを達成するだけではなく、日常会話を行う対話システムも存在し、これらによって、人間は精神的な安定を得たり、承認欲を満たしたり、信頼関係を築いたりする。
対話システムの類型については、非特許文献1に詳述されている。
商用システムにおいて最もよく利用されている対話システムの実装形態は、対話ルールを用いたものである。対話ルールとは、発話パターン(pattern)と応答発話(template)とからなる。この対話ルールを用いた対話システムでは、ユーザ発話が、例えば単語列のマッチングによって発話パターンにマッチした場合に、システムが当該発話パターンに対応する応答発話を用いて応答する。例えば、AIML(Artificial Intelligence Markup Language)と呼ばれる、対話ルールを記述する言語で記述された対話ルールの一例を以下に示す。なお、発話パターンに含まれるアスタリスク「*」は、どんな単語列にでもマッチする記号である。
<category>
<pattern>お酒 * 飲め * か</pattern>
<template>お酒好きです</template>
</category>
例えば、ユーザ発話が「お酒は飲めますか」であった場合、当該ユーザ発話が発話パターンを示す<pattern>の記述内容にマッチする。そのため、システムは、応答発話を示す<template>の記述内容である「お酒好きです」という発話を行う。
なお、AIMLについては、非特許文献2に詳述されている。
中野幹生,駒谷和範,船越孝太郎,中野有紀子,奥村学(監修)対話システム,コロナ社,2016. WALLACE, Richard S. The anatomy of ALICE. In: Parsing the Turing Test. Springer Netherlands, 2009. pp. 181-210.
対話ルールを用いて応答処理を行う際、文脈を考慮していないために不具合が起こる場合がある。例えば、以下のようなルールがあったとする。
<category>
<pattern>かわい いです ね</pattern>
<template>ありがとうございます</template>
</category>
この対話ルールによれば、システムは、ユーザに「かわいいですね」と言われた時に「ありがとうございます」と答える。しかし、もし「かわいいですね」という発話の前に、ユーザとシステムとが「猫」の話題で話していたとする。その場合には、「かわいいですね」という発話はおそらく猫のことを言っており、「ありがとうございます」という応答は不適切なものになるだろう。
また、言語において、同じ内容について様々な言い方で発話することが可能である。例えば、相手がお酒が飲めるか確認する際に、「お酒は飲めますか」という表現だけでなく「アルコールは飲めますか?」といった表現も可能である。このように、ユーザ発話として想定し得る全ての言い方に対して応答できるような対話ルールを予め作っておくことは難しい。
さらに、ユーザ発話と対話ルールの発話パターンとを照合させる際に、単語が一致しなくても内容が大まかに一致していればマッチさせたい場合もある。その場合であっても、現状の対話ルールを用いた手法では、単語が一致しているか否かに基づいて、ユーザ発話と対話ルールの発話パターンとを照合させるため、単語が異なると内容が大まかに一致していてもマッチさせることができない。
本発明は、ユーザ発話に対する応答発話を対話ルールを用いて決定する際に、ユーザ発話と対話ルールとを適切に照合させることができる対話ルール照合装置、対話装置、対話ルール照合方法、対話方法、対話ルール照合プログラム、及び対話プログラムを提供することを目的とする。
上記目的を達成するために、本発明の対話ルール照合装置は、ユーザ発話を入力とし、発話パターン及び前記発話パターンの発話に対する応答発話の組からなる複数の対話ルールに基づいて、前記ユーザ発話と前記発話パターンとを照合することにより前記ユーザ発話に対する応答発話を決定する発話ルール照合装置であって、対話における、前記ユーザ発話に省略された格要素を補完するか、又は焦点語を前記ユーザ発話に追加する処理、前記ユーザ発話中の名詞句を類義語に置き換える処理、及び、前記ユーザ発話を当該ユーザ発話のトピックに置き換える処理の少なくとも1つの処理により前記ユーザ発話を書き換え、書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々を前記発話パターンと照合する発話ルールマッチ部を含む。
なお、前記発話ルールマッチ部は、書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々と照合された前記発話パターンの各々との類似度を求め、前記少なくとも1つの処理の各々に対して予め定められた優先順位と、前記類似度とに基づいて、前記ユーザ発話に対する前記応答発話を決定するようにしても良い。
上記目的を達成するために、本発明の対話装置は、発話パターン及び前記発話パターンの発話に対する応答発話の組からなる複数の対話ルールに基づいて、ユーザ発話と前記発話パターンとを照合することにより前記ユーザ発話に対する応答発話を決定する発話装置であって、ユーザ発話を入力する入力部と、前記ユーザ発話から名詞句及び焦点語を抽出し、抽出した前記名詞句及び前記焦点語を対話履歴記憶部に記憶させる焦点抽出部と、前記対話履歴記憶部に記憶された前記名詞句及び前記焦点語の少なくとも一方に基づいて、前記ユーザ発話に省略された格要素を補完するか、又は前記焦点語を前記ユーザ発話に追加するゼロ代名詞補完部と、前記ユーザ発話中の名詞句を類義語に置き換える類義語置換部と、前記ユーザ発話を当該ユーザ発話のトピックに置き換えるトピック抽出部と、前記ゼロ代名詞補完部による処理、前記類義語置換部による処理、及び前記トピック抽出部による処理の各々により書き換えられた後の前記ユーザ発話、及び、書き換えられる前の前記ユーザ発話の各々を前記発話パターンと照合することにより、前記ユーザ発話に対する前記応答発話を決定する発話ルールマッチ部と、前記発話ルールマッチ部により決定された前記応答発話を出力する出力部と、を含む。
なお、前記発話ルールマッチ部は、書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々と照合された前記発話パターンの各々との類似度を求め、前記ゼロ代名詞補完部による処理、前記類義語置換部による処理、及び前記トピック抽出部による処理の各々に対して予め定められた優先順位と、前記類似度とに基づいて、前記ユーザ発話に対する前記応答発話を決定するようにしても良い。
上記目的を達成するために、本発明の対話ルール照合方法は、発話ルールマッチ部を含み、ユーザ発話を入力とし、発話パターン及び前記発話パターンの発話に対する応答発話の組からなる複数の対話ルールに基づいて、前記ユーザ発話と前記発話パターンとを照合することにより前記ユーザ発話に対する応答発話を決定する発話ルール照合装置における対話ルール照合方法であって、前記発話ルールマッチ部が、対話における、前記ユーザ発話に省略された格要素を補完するか、又は焦点語を前記ユーザ発話に追加する処理、前記ユーザ発話中の名詞句を類義語に置き換える処理、及び、前記ユーザ発話を当該ユーザ発話のトピックに置き換える処理の少なくとも1つの処理により前記ユーザ発話を書き換えるステップと、前記発話ルールマッチ部が、書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々を前記発話パターンと照合するステップと、を含む。
なお、本発明の対話ルール照合方法は、前記発話ルールマッチ部が、書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々と照合された前記発話パターンの各々との類似度を求め、前記少なくとも1つの処理の各々に対して予め定められた優先順位と、前記類似度とに基づいて、前記ユーザ発話に対する前記応答発話を決定するステップを更に含むようにしても良い。
上記目的を達成するために、本発明の対話ルール照合プログラムは、コンピュータを、上記対話ルール照合装置の各部として機能させるためのプログラムである。
上記目的を達成するために、本発明の対話プログラムは、コンピュータを、上記対話装置の各部として機能させるためのプログラムである。
本発明によれば、ユーザ発話に対する応答発話を対話ルールを用いて決定する際に、ユーザ発話と対話ルールとを適切に照合させることが可能となる。
実施形態に係る対話装置の機能的な構成を示すブロック図である。 実施形態に係る対話処理の流れを示すフローチャートである。 実施形態に係るゼロ代名詞補完処理のサブルーチンの流れを示すフローチャートである。
以下、本実施形態について図面を用いて説明する。
図1は、本実施形態に係る対話装置10の機能的な構成を示すブロック図である。図1に示すように、本実施形態に係る対話装置10は、入力部12、焦点抽出部14、対話履歴記憶部16、ゼロ代名詞補完部18、類義語置換部20、トピック抽出部22、対話ルール記憶部24、発話ルールマッチ部26、及び、出力部28を備えている。
入力部12は、ユーザ発話を受け付ける。ユーザ発話は、ユーザによりテキストとして入力された発話でも良く、ユーザ発話の音声が音声認識を用いてテキストに変換された発話であっても良い。入力部12は、入力したユーザ発話を、ゼロ代名詞補完部18、類義語置換部20、及びトピック抽出部22に出力させると共に、対話履歴記憶部16に記憶させる。
焦点抽出部14は、ユーザ発話に含まれる焦点語を抽出する。焦点語とは、ユーザ発話に含まれる話題を表す単語列(主に名詞句)である。例えば、ユーザ発話が「昨日ラーメンを食べたんですよ」であれば、「ラーメン」が焦点語になる。本実施形態では、条件付き確率場(Conditional Random Fields,CRF)と呼ばれる機械学習の手法を用いて、焦点抽出器を学習し、学習した焦点抽出器を用いて焦点語を抽出する。CRFとは、所定の系列に対してラベルを付与した学習データがある場合に、学習データから、未知の系列についてラベルを付与することができる推定器を得る一般的な学習手法である。CRFについては、下記非特許文献3に記載されている。
[非特許文献3]言語処理のための機械学習入門(自然言語処理シリーズ),高村大也(著),奥村学(監修),コロナ社,2010.
本実施形態では、「昨日/<center>ラーメン</center>/を/食べ/た/ん/です/よ」、「<center>イギリス</center>/が/好き/です」といった、発話について焦点語となる箇所に、焦点語であることを意味する<center></center>というタグを付与したデータを大量に準備し、これらのデータから、CRFを用いて、焦点語抽出器を学習する。
なお、上記データにおいてスラッシュは形態素の区切りを示すが、これらの形態素の区切りは、形態素解析器を用いて得ることができる。本実施形態では、下記非特許文献4に開示されているJTAGという形態素解析器を用いている。また、CRFの学習に用いる素性テンプレートには、単語の表層形、品詞、及び終止形を含むが、意味情報(例えば、日本語語彙大系から得られる一般名詞属性)等を用いても良い。
[非特許文献4]T. Fuchi and S. Takagi, "Japanese Morphological Analyzer using Word Cooccurrence-JTAG", Proc. of COLING-ACL, pp. 409-413, 1998.
このように、学習された焦点抽出器によれば、例えば「私はコーヒーが好きなんです」とのユーザ発話から、「コーヒー」が焦点語として抽出される。
また、焦点抽出部14は、形態素解析の結果を用いて、ユーザ発話から名詞句も抽出する。本実施形態では、名詞句として名詞連続(品詞が名詞の単語を連結したもの)を抽出する。
焦点抽出部14は、抽出した名詞句及び焦点語を、対話履歴記憶部16に記憶させる。一つのユーザ発話から、複数の名詞句及び焦点語が抽出されることもある。また、名詞句と焦点語とが同じである場合もある。
対話履歴記憶部16は、対話履歴として、過去のユーザ発話、及び過去のユーザ発話から抽出された名詞句及び焦点語を、発話番号と併せて記憶している。発話番号は、各々のユーザ発話を識別するための番号であり、ユーザ発話が入力される度にインクリメントされる連続した発話番号が、各々のユーザ発話に付与される。
ゼロ代名詞補完部18は、入力したユーザ発話について照応解析を行い、対話における、ユーザ発話に省略された格要素を補完することにより、ゼロ代名詞を解消する。ゼロ代名詞とは、省略された格要素である。例えば、「猫」を話題にしている時に発話された「かわいいですね」というユーザ発話には、「猫が」もしくは「猫は」という格要素(及び格助詞(又は係助詞))が省略されている。本実施形態では、日本語のゼロ代名詞解消技術として、下記非特許文献5に開示されている技術を用いる。
[非特許文献5]今村賢治,東中竜一郎,泉朋子,“対話解析のためのゼロ代名詞照応解析付き述語項構造解析”,自然言語処理,Vol.22, No.1, pp.3-26, 2015.
当該技術では、ユーザ発話中の述語(動詞、形容詞、ダ文等)について、必須格辞書を参照し、述語に必須格が欠けていると認められる場合、その格要素を対話履歴中の名詞句及び焦点語の中から探索する。探索の仕方は、学習データに基づいて統計的に決定する。
本実施形態では、入力したユーザ発話に含まれる述語の各々について、ガ格、ヲ格、ニ格、デ格、ト格、カラ格、及びマデ格の格について、必須格辞書に基づき省略が認められれば、その格要素を抽出する。上記非特許文献5では、ガ格、ヲ格、及びニ格を扱っているが、当該技術に加え、その他の格要素については、別途準備した格フレーム辞書を用いて格要素を抽出する。具体的には、述語と格とに統計的に有意に共起する名詞句を予めテキストコーパスを用いて列挙しておき、対話履歴中の名詞句又は焦点語に、列挙された名詞句と一致するものがあれば、一致する名詞句を省略された格要素として抽出する。
例えば、「食べる」という述語について「デ格」と有意に共起する名詞句として、「家」、「コンビニ」、「レストラン」等があるとする。もし、「食べる」という述語について省略された「デ格」の格要素を抽出したい場合、文脈中の名詞句又は焦点語に「コンビニ」があれば、「コンビニ」を省略された要素として抽出する。
また、ゼロ代名詞補完部18は、ユーザ発話に省略された格要素を補完しない場合であって、ユーザ発話に焦点語が含まれていない場合に、焦点語をユーザ発話に追加する。
さて、ゼロ代名詞補完部18は、ユーザ発話について以下の手順で、ゼロ代名詞を補完するか、あるいは焦点語を追加した新しいユーザ発話を生成する。
IF ユーザ発話中に焦点語が存在しない
IF ユーザ発話中にゼロ代名詞(省略された格要素)が存在する
FOR 省略された格要素のそれぞれについて
IF 省略された格要素が「I」、「YOU」、及び「exog」の何れかではない
(書き換え1)当該発話の先頭に、省略された格要素と格助詞を連結した文字列を追加
IF 対話履歴から得られる焦点語が存在する
IF 書き換え1が実施されておらず、かつ、焦点語がユーザ発話に含まれていない
(書き換え2)ユーザ発話の先頭に焦点語と「は」とを連結した文字列を追加
ただし、「I」、「YOU」、及び「exog」は、特殊な照応先で、それぞれ、一人称(「私」が省略されている場合)、二人称(「あなた」が省略されている場合)、外界照応(文脈中には存在しない対象が省略されている場合)を指す。対話履歴から得られる焦点語とは、対話履歴に最後に追加された焦点語のことである。すなわち、これまでの対話における、最新の話題を表すものである。
上述した手順によれば、対話履歴として「イタリアに行きました」というユーザ発話が記憶されている場合に、「いいですね」というユーザ発話が、「イタリアはいいですね」に書き換えられる。また、対話履歴として「ラーメンを食べました」というユーザ発話が記憶されている場合に、「美味しいですよね」というユーザ発話が、「ラーメンが美味しいですよね」に書き換えられる。
なお、上述した、ゼロ代名詞補完部18が行う、対話履歴記憶部16に記憶された名詞句及び焦点語の少なくとも一方に基づいて、ユーザ発話に対してゼロ代名詞を補完するか、あるいは焦点語を追加した新しいユーザ発話を生成するゼロ代名詞補完処理については、図3に示すフローチャートを用いて、より具体的に後述する。
ゼロ代名詞補完部18は、このようにして書き換えたユーザ発話を、書き換え前のユーザ発話と併せて発話ルールマッチ部26に出力する。
類義語置換部20は、入力したユーザ発話中の名詞句について、類義語辞書を参照し、もし類義語があれば、名詞句をその類義語で置き換えた発話文を作成する。例えば、類義語辞書に「お酒」の類義語として「アルコール」があるとする。その場合、「お酒が好きです」というユーザ発話が入力した際に、「アルコールが好きです」というユーザ発話を生成する。複数の名詞句に書き換え候補とする類義語がある場合、何れかの名詞句に書き換え候補とする類義語が複数ある場合等には、各々の名詞句を各々の類義語で書き換えた全ての発話文を列挙しても良いし、一部の名詞句のみを類義語で書き換えた発話文を生成しても良く、全ての名詞句を一部の類義語のみで書き換えた発話文を生成しても良い。
名詞句を類義語で置き換えることにより多くの発話文を生成すると、後段の発話ルールマッチ部26においてユーザ発話と対話ルールの発話パターンとをマッチングさせる際に時間がかかる。そのため、本実施形態では、ユーザ発話中の複数の名詞句のうち、類義語で書き換え可能な名詞句の1つ(例えば、先頭の名詞句)について、1つの類義語で書き換えるものとする。
類義語置換部20は、このようにして書き換えたユーザ発話を、書き換え前のユーザ発話と併せて発話ルールマッチ部26に出力する。
トピック抽出部22は、入力したユーザ発話に対して、そのユーザ発話のトピック(話題)を表す文字列を取得する。具体的には、まず、ユーザ発話を機械学習の手法を用い複数のクラスに分類する。クラスとは、例えば「スポーツ」、「料理」、「美容」等である。本実施形態では、全部で40程度のクラスが用いられ、分類器を予め学習しておく。分類器を学習する際には、多数のユーザ発話を準備し、各々のユーザ発話に対して正解クラスをラベルとして付与し、ユーザ発話を入力した際にそのユーザ発話をこれらの何れかのクラスに分類する分類器を学習する。
ユーザ発話を何れかのクラスに分類する分類方法としては、一般的なテキスト分類手法を用いることができる。例えば、自然言語の発話から形態素解析を経て得られる単語n−gramを特徴量として、学習データに基づき(すなわち、複数の発話のそれぞれについて、クラスがラベル付されたデータ)、機械学習の手法を用いて、分類器を学習すれば良い。学習アルゴリズムとしては、ロジスティック回帰、サポートベクトルマシン、深層学習による手法等が挙げられる。テキスト分類手法の一般的なアルゴリズムについては、上記非特許文献3に開示されている。また、深層学習による手法については、下記非特許文献6に開示されている。
[非特許文献6]Yoon Kim,"Convolutional Neural Networks for Sentence Classification", Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp.1746-1751, 2014.
トピック抽出部22は、ユーザ発話を分類したクラスのクラス名(例えば、「スポーツ」、「料理」等)を書き換え後のユーザ発話として、書き換え前のユーザ発話と併せて発話ルールマッチ部26に出力する。
対話ルール記憶部24は、発話パターン及び発話パターンの発話に対する応答発話の組からなる複数の対話ルールを示すデータを記憶している。対話ルールは、上述したAIML形式で記述された対話ルールの集合である。本実施形態では、数万個の対話ルールが作成され、対話ルール記憶部24に記憶されている。
発話ルールマッチ部26は、ゼロ代名詞補完部18による処理、類義語置換部20による処理、及びトピック抽出部22による処理の各々により書き換えた後のユーザ発話の各々、及び、書き換える前のユーザ発話を発話パターンと照合する。照合方法としては、例えば、上記非特許文献2に示されるような前方一致によるものを用いればよい。
本実施形態では、対話ルール記憶部24に記憶されている複数の対話ルールの発話パターンの各々に対し、発話パターンにおいて記述されているアスタリスク「*」以外からなる単語集合と、ユーザ発話を形態素分解して得られる単語集合とを、それぞれ単語ベクトルで表現し、TF−IDF(Term Frequency-Inverse Document Frequency)による重み付けを行った上で、単語ベクトル間のコサイン類似度を計算し、コサイン類似度が最も高い発話パターンに対応する応答発話を出力する。TF−IDFの重みは、大量の対話データ、新聞記事等を用いることにより計算される。
ここで、書き換え前のユーザ発話をU1とし、ゼロ代名詞補完部18による処理により書き換えられたユーザ発話をU2とし、類義語置換部20による処理により書き換えられたユーザ発話をU3とし、トピック抽出部22による処理により書き換えられたユーザ発話をU4とする。この場合、U1、U2、U3、U4のそれぞれを、対話ルール記憶部24に記憶されている複数の対話ルールの発話パターンと照合し、照合結果に基づいてシステムの応答発話を決定する。
U1、U2、U3、U4のそれぞれについて得られるコサイン類似度をcos(U1)、cos(U2)、cos(U3)、cos(U4)とした場合、システムはコサイン類似度が最も高い発話パターンの応答発話を、ユーザ発話に対する応答発話として決定し、決定した応答発話を出力部28に出力する。
又は、ゼロ代名詞補完部18による処理、類義語置換部20による処理、及びトピック抽出部22による処理の各々に対して予め定められた優先順位と、コサイン類似度とに基づいて、ユーザ発話に対する応答発話を決定しても良い。例えば、書き換え前、ゼロ代名詞補完部18による処理、類義語置換部20による処理、及びトピック抽出部22による処理の順に優先順位が定められている場合には、cos(U1)が所定の閾値(例えば、0.8)を超えていたらU1を出力し、そうでない場合、cos(U2)が所定の閾値を超えているか確認する。また、cos(U2)が所定の閾値を超えている場合、U2を出力し、そうでない場合、cos(U3)が所定の閾値を超えているか確認する。また、cos(U3)が所定の閾値を超えている場合、U3を出力し、そうでない場合、U4を出力する、といった具合である。
なお、類似度の計算方法としては、コサイン類似度を用いる方法に限らず、集合同士の類似度として一般的なJaccard係数を用いる方法等、発話パターンに含まれる単語集合とユーザ発話に含まれる単語集合との類似度を計算することができる方法であれば何れの方法を用いても良い。
出力部28は、発話ルールマッチ部26によって決定された応答発話を、システム発話として出力する。出力方法としては、応答発話を示すデータをディスプレイ等の表示手段に表示させたり、応答発話を示すデータを外部装置に送信したり、応答発話を示す音声を音声出力手段により出力させたりする方法が挙げられる。
なお、本実施形態に係る対話装置10は、例えば、CPU(Central Processing Unit)、RAM(Random Access Memory)、各種プログラムを記憶するROM(Read Only Memory)を備えたコンピュータ装置で構成される。また、対話装置10を構成するコンピュータは、ハードディスクドライブ、不揮発性メモリ等の記憶部を備えていても良い。本実施形態では、CPUがROM、ハードディスク等の記憶部に記憶されているプログラムを読み出して実行することにより、上記のハードウェア資源とプログラムとが協働し、上述した機能が実現される。
次に、本実施形態に係る対話装置10による対話処理の流れを、図2に示すフローチャートを用いて説明する。本実施形態では、対話装置10に、対話処理の実行を開始するための予め定めたデータが入力されたタイミングで対話処理が開始されるが、対話処理が開始されるタイミングはこれに限らず、例えば、ユーザ発話が入力されたタイミングで対話処理が開始されても良い。
ステップS101では、入力部12が、ユーザ発話を入力する。
ステップS103では、焦点抽出部14が、入力したユーザ発話から名詞句及び焦点語を抽出する。
ステップS105では、焦点抽出部14が、入力したユーザ発話と、当該ユーザ発話から抽出した名詞句及び焦点語とを、対話履歴記憶部16に記憶させる。
ステップS107では、ゼロ代名詞補完部18が、上述したゼロ代名詞補完処理を行う。
ここで、ゼロ代名詞補完部18によるゼロ代名詞補完処理の流れを、図3に示すフローチャートを用いて説明する。
ステップS201では、ゼロ代名詞補完部18が、入力したユーザ発話を取得する。
ステップS203では、ゼロ代名詞補完部18が、ユーザ発話に焦点語が存在するか否かを判定する。ステップS203でユーザ発話に焦点語が存在すると判定した場合(S203,Y)は、本ゼロ代名詞補完処理のプログラムの実行を終了し、図2のステップS109に移行する。また、ステップS203でユーザ発話に焦点語が存在しないと判定した場合(S203,N)はステップS205に移行する。
ステップS205では、ゼロ代名詞補完部18が、ユーザ発話にゼロ代名詞が存在するか否かを判定する。ステップS205でユーザ発話にゼロ代名詞が存在すると判定した場合(S205,Y)は、ステップS207に移行する。また、ステップS205でユーザ発話にゼロ代名詞が存在しないと判定した場合(S205,N)はステップS215に移行する。
ステップS207では、ゼロ代名詞補完部18が、ユーザ発話から、1つの省略された格要素を選択する。
ステップS209では、ゼロ代名詞補完部18が、ステップS207で選択された格要素が「I」、「YOU」、及び「exog」の何れかであるか否かを判定する。ステップS209で、ステップS207で選択された格要素が「I」、「YOU」、及び「exog」の何れかであると判定した場合(S209,Y)は、ステップS213に移行する。また、ステップS209で、ステップS207で選択された格要素が「I」、「YOU」、及び「exog」の何れかでないと判定した場合(S209,N)はステップS211に移行する。
ステップS211では、ゼロ代名詞補完部18が、ユーザ発話の先頭に、格要素と格助詞とを連結した文字列を追加する。
ステップS213では、ゼロ代名詞補完部18が、未処理の格要素、すなわちステップS207乃至S211の処理を行っていない格要素が存在するか否かを判定する。ステップS213で未処理の格要素が存在すると判定した場合(S213,Y)は、ステップS207に戻って、未処理の格要素を選択する。また、ステップS213で未処理の格要素が存在しないと判定した場合(S213,N)はステップS215に移行する。
ステップS215では、ゼロ代名詞補完部18が、上述した、対話履歴から得られる焦点語が存在するか否かを判定する。ステップS215で対話履歴から得られる焦点語が存在すると判定した場合(S215,Y)は、ステップS217に移行する。また、ステップS215で対話履歴から得られる焦点語が存在しないと判定した場合(S215,N)は、本ゼロ代名詞補完処理のプログラムの実行を終了し、図2のステップS109に移行する。
ステップS217では、ゼロ代名詞補完部18が、ゼロ代名詞の補完(上記ステップS211の処理)が行われておらず、かつ焦点語がユーザ発話に含まれていないか否かを判定する。ステップS217でゼロ代名詞の補完が行われておらず、かつ焦点語がユーザ発話に含まれていないと判定した場合(S217,Y)は、ステップS219に移行する。また、ステップS217でゼロ代名詞の補完が行われた、又は焦点語がユーザ発話に含まれていると判定した場合(S217,N)は、本ゼロ代名詞補完処理のプログラムの実行を終了し、図2のステップS109に移行する。
ステップS219では、ゼロ代名詞補完部18が、ユーザ発話の先頭に、焦点語と「は」とを連結した文字列を追加し、図2のステップS109に移行する。
図2のステップS109では、類義語置換部20が、入力したユーザ発話中の名詞句を類義語に置き換える。
ステップS111では、トピック抽出部22が、入力したユーザ発話を当該ユーザ発話のトピックに置き換える。
ステップS113では、発話ルールマッチ部26が、ゼロ代名詞補完部18による処理、類義語置換部20による処理、及びトピック抽出部22による処理の各々によりユーザ発話を書き換えられた後のユーザ発話、及び、書き換えられる前のユーザ発話の各々を、対話ルールの発話パターンと照合することにより、ユーザ発話に対する応答発話を決定する。
ステップS115では、出力部28が、決定された応答発話を出力し、本対話処理のプログラムの実行を終了する。
このように、本実施形態では、対話における、ユーザ発話に省略された格要素を補完するか、又は焦点語をユーザ発話に追加する処理、ユーザ発話中の名詞句を類義語に置き換える処理、及び、ユーザ発話を当該ユーザ発話のトピックに置き換える処理の少なくとも1つの処理により前記ユーザ発話を書き換え、書き換える前のユーザ発話及び書き換えた後のユーザ発話の各々を発話パターンと照合することにより、ユーザ発話に対する応答発話を決定する。
これにより、事業者にとって有用な対話ルールのみを用いた発話応答を実現することができる。そして、対話システムを用いた事業の実現性が高まり、人間とコンピュータが効率的に協業することができる。
なお、本実施形態では、図1に示す機能の構成要素の動作をプログラムとして構築し、対話装置10として利用されるコンピュータにインストールして実行させるが、これに限らず、ネットワークを介して流通させても良い。
また、構築されたプログラムをハードディスク、CD−ROM等の可搬記憶媒体に格納し、コンピュータにインストールしたり、配布したりしても良い。
10 対話装置
12 入力部
14 焦点抽出部
16 対話履歴記憶部
18 ゼロ代名詞補完部
20 類義語置換部
22 トピック抽出部
24 対話ルール記憶部
26 発話ルールマッチ部
28 出力部

Claims (5)

  1. ユーザ発話を入力とし、発話パターン及び前記発話パターンの発話に対する応答発話の組からなる複数の対話ルールに基づいて、前記ユーザ発話と前記発話パターンとを照合することにより前記ユーザ発話に対する応答発話を決定する発話ルール照合装置であって、
    対話における、前記ユーザ発話に省略された格要素を補完するか、又は焦点語を前記ユーザ発話に追加する処理、前記ユーザ発話中の名詞句を類義語に置き換える処理、及び、前記ユーザ発話を当該ユーザ発話のトピックに置き換える処理の少なくとも1つの処理により前記ユーザ発話を書き換え、
    書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々を前記発話パターンと照合する発話ルールマッチ部
    を備え、
    前記発話ルールマッチ部は、書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々と照合された前記発話パターンの各々との類似度を求め、前記少なくとも1つの処理の各々に対して予め定められた優先順位と、前記類似度とに基づいて、前記ユーザ発話に対する前記応答発話を決定する
    対話ルール照合装置。
  2. 発話パターン及び前記発話パターンの発話に対する応答発話の組からなる複数の対話ルールに基づいて、ユーザ発話と前記発話パターンとを照合することにより前記ユーザ発話に対する応答発話を決定する発話装置であって、
    ユーザ発話を入力する入力部と、
    前記ユーザ発話から名詞句及び焦点語を抽出し、抽出した前記名詞句及び前記焦点語を対話履歴記憶部に記憶させる焦点抽出部と、
    前記対話履歴記憶部に記憶された前記名詞句及び前記焦点語の少なくとも一方に基づいて、前記ユーザ発話に省略された格要素を補完するか、又は前記焦点語を前記ユーザ発話に追加するゼロ代名詞補完部と、
    前記ユーザ発話中の名詞句を類義語に置き換える類義語置換部と、
    前記ユーザ発話を当該ユーザ発話のトピックに置き換えるトピック抽出部と、
    前記ゼロ代名詞補完部による処理、前記類義語置換部による処理、及び前記トピック抽出部による処理の各々により書き換えられた後の前記ユーザ発話、及び、書き換えられる前の前記ユーザ発話の各々を前記発話パターンと照合することにより、前記ユーザ発話に対する前記応答発話を決定する発話ルールマッチ部と、
    前記発話ルールマッチ部により決定された前記応答発話を出力する出力部と、
    を含み、
    前記発話ルールマッチ部は、書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々と照合された前記発話パターンの各々との類似度を求め、前記ゼロ代名詞補完部による処理、前記類義語置換部による処理、及び前記トピック抽出部による処理の各々に対して予め定められた優先順位と、前記類似度とに基づいて、前記ユーザ発話に対する前記応答発話を決定する
    対話装置。
  3. 発話ルールマッチ部を含み、ユーザ発話を入力とし、発話パターン及び前記発話パターンの発話に対する応答発話の組からなる複数の対話ルールに基づいて、前記ユーザ発話と前記発話パターンとを照合することにより前記ユーザ発話に対する応答発話を決定する発話ルール照合装置における対話ルール照合方法であって、
    前記発話ルールマッチ部が、対話における、前記ユーザ発話に省略された格要素を補完するか、又は焦点語を前記ユーザ発話に追加する処理、前記ユーザ発話中の名詞句を類義語に置き換える処理、及び、前記ユーザ発話を当該ユーザ発話のトピックに置き換える処理の少なくとも1つの処理により前記ユーザ発話を書き換えるステップと、
    前記発話ルールマッチ部が、書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々を前記発話パターンと照合するステップと、
    前記発話ルールマッチ部が、書き換える前の前記ユーザ発話及び書き換えた後の前記ユーザ発話の各々と照合された前記発話パターンの各々との類似度を求め、前記少なくとも1つの処理の各々に対して予め定められた優先順位と、前記類似度とに基づいて、前記ユーザ発話に対する前記応答発話を決定するステップと、
    を含む対話方法。
  4. コンピュータを、請求項記載の対話ルール照合装置の各部として機能させるための対話ルール照合プログラム。
  5. コンピュータを、請求項記載の対話装置の各部として機能させるための対話プログラム。
JP2017084616A 2017-04-21 2017-04-21 対話ルール照合装置、対話装置、対話ルール照合方法、対話方法、対話ルール照合プログラム、及び対話プログラム Active JP6775465B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017084616A JP6775465B2 (ja) 2017-04-21 2017-04-21 対話ルール照合装置、対話装置、対話ルール照合方法、対話方法、対話ルール照合プログラム、及び対話プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017084616A JP6775465B2 (ja) 2017-04-21 2017-04-21 対話ルール照合装置、対話装置、対話ルール照合方法、対話方法、対話ルール照合プログラム、及び対話プログラム

Publications (2)

Publication Number Publication Date
JP2018181259A JP2018181259A (ja) 2018-11-15
JP6775465B2 true JP6775465B2 (ja) 2020-10-28

Family

ID=64276951

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017084616A Active JP6775465B2 (ja) 2017-04-21 2017-04-21 対話ルール照合装置、対話装置、対話ルール照合方法、対話方法、対話ルール照合プログラム、及び対話プログラム

Country Status (1)

Country Link
JP (1) JP6775465B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109871428B (zh) * 2019-01-30 2022-02-18 北京百度网讯科技有限公司 用于确定文本相关度的方法、装置、设备和介质
CN112597777A (zh) * 2021-01-05 2021-04-02 网易(杭州)网络有限公司 一种多轮对话改写方法和装置
JP7312354B2 (ja) * 2021-05-08 2023-07-21 ソフネック株式会社 意図情報抽出プログラム、意図情報抽出装置および意図情報抽出方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003044088A (ja) * 2001-07-27 2003-02-14 Sony Corp プログラム、記録媒体、並びに音声対話装置および方法
JP2006244262A (ja) * 2005-03-04 2006-09-14 Nec Corp 質問回答検索システム、方法およびプログラム
JP4186992B2 (ja) * 2006-01-31 2008-11-26 株式会社豊田中央研究所 応答生成装置、方法及びプログラム
US8145660B2 (en) * 2007-10-05 2012-03-27 Fujitsu Limited Implementing an expanded search and providing expanded search results
JP6095487B2 (ja) * 2013-05-27 2017-03-15 株式会社Nttドコモ 質問応答装置、及び質問応答方法
US9684714B2 (en) * 2014-12-22 2017-06-20 International Business Machines Corporation Using paraphrase metrics for answering questions
JP6544131B2 (ja) * 2015-08-14 2019-07-17 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム

Also Published As

Publication number Publication date
JP2018181259A (ja) 2018-11-15

Similar Documents

Publication Publication Date Title
Arora et al. Character level embedding with deep convolutional neural network for text normalization of unstructured data for Twitter sentiment analysis
US10936664B2 (en) Dialogue system and computer program therefor
CN109299228B (zh) 计算机执行的文本风险预测方法及装置
KR101136007B1 (ko) 문서 감성 분석 시스템 및 그 방법
Fonseca et al. A two-step convolutional neural network approach for semantic role labeling
CN113821605B (zh) 一种事件抽取方法
GB2555207A (en) System and method for identifying passages in electronic documents
Franco-Salvador et al. Language variety identification using distributed representations of words and documents
JP6775465B2 (ja) 対話ルール照合装置、対話装置、対話ルール照合方法、対話方法、対話ルール照合プログラム、及び対話プログラム
CN114528919A (zh) 自然语言处理方法、装置及计算机设备
CN111859950A (zh) 一种自动化生成讲稿的方法
Varaprasad et al. Applications and Techniques of Natural Language Processing: An Overview.
Lyu et al. Deep learning for textual entailment recognition
CN112528653A (zh) 短文本实体识别方法和系统
Celikyilmaz et al. An empirical investigation of word class-based features for natural language understanding
CN116304046A (zh) 对话数据的处理方法、装置、存储介质及电子设备
CN116483314A (zh) 一种自动化智能活动图生成方法
Yurtoz et al. Measuring the effects of emojis on Turkish context in sentiment analysis
Mammadov et al. Part-of-speech tagging for azerbaijani language
Rosyiq et al. Information extraction from Twitter using DBpedia ontology: Indonesia tourism places
JORDAN et al. Real-time language-independent algorithm for dialogue agents
JP6067616B2 (ja) 発話生成手法学習装置、発話生成手法選択装置、発話生成手法学習方法、発話生成手法選択方法、プログラム
Gholami-Dastgerdi et al. Part of speech tagging using part of speech sequence graph
JP2005025659A (ja) ゼロ代名詞解消方法、解消装置、解消プログラムおよびプログラムを記録した記録媒体
Yamaguchi et al. Generating AIML rules from twitter conversations

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181026

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191119

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200214

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200519

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200818

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20200827

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201006

R150 Certificate of patent or registration of utility model

Ref document number: 6775465

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150