Background
- SIGDIAL 2012
- 対話への知識を深めようと。
- わりと軽めで分かりやすい。
- 最近IIRで出てきた知識。
Abstract
- Twitterから抽出した対話コーパスとリアルタイムクラウドソーシングを用いてDialog Systemを作った。
- 複雑な会話システム(dialog management?)を人手で作るよりも、この研究で使うデータは(実際の会話から取ってきているので)より本当のものに近いと思われる。
Introduction
- ネット上には莫大なデータが存在し、Twitterにもデータを抽出や検索するためのAPIが多く存在している。
- これらは高い頻度で研究に用いられ、例として以下のようなものがあげられる。
- 株式市場予測
- ソーシャルメディアを通しての情報拡散
- 文章の表現
- というのも、サイズが膨大で、会話的な性質が含まれているからである。
使われるデータ
ENG | JPN | |
---|---|---|
Conversational | 37% | 37.5% |
AND Two-Length | 69% | 58.3% |
ENG: Kelly(2009)
JPN: 2.5 million
Chat Bots
- 多くのはルールベース
- 人手で頑張ってどんどんルールを追加している。
- A.L.I.C.E <- AIMLというマークアップ言語で書かれた対話戦略?データベース
- Jabberwacky <- Large-Scale Dialog Corpus
- Cleverbot <- 同上
- 人手で頑張ってどんどんルールを追加している。
In This Paper
- リアルタイムクラウドソーシングとTwitterの大規模コーパスを用いたChat Bot
-
ポジネガの例に基づいた反応の選択で評価し、会話同士の類似度が有効かどうかを判断する?
- (詳しいことは後述するが)ある発話への反応をシステムに選択させ、それを評価する。
evaluate response selection methods based on positive/negative example to judge if each feature could be exploited to judge similarity between uterrances.
Method
Overview
- 図1にあるような 会話対(Utterance Pair) のデータベースを作った。
- すべての会話対は 発話(A) と それに対する返事(B) で構成されている。
- 反応の生成は図2を参照。INPUTに最も似ている発話をデータベースから検索しそれに当たる返事を返す。
- なかった場合は、他のユーザに外注する?(<- Real-Time Crowdsourcing?)
- 120万ほどの会話対を、ブログやTwitterなどで集めた。
- 収集方法としてはStreaming APIやREST APIを用いた。
- 正規表現でTwitter特有の表現(メンション、引用、ハッシュタグ)を除いた。
似た会話対の検索方法
- Twitter特有の表現(前述)を除いて形態素解析。
- POSタグ付与。
- 名詞、動詞、感嘆詞を抽出。
- 日本語では感情表現を完全に抜き出すことが難しかった。
- 文章ベクトルに変換。(IIR Chapter.6参照)
- 2つの文章のcos類似度。(式1,2参照)
- 文章d(i)
- 単語w(j)
- tf(i,j): d(i)の中でのw(j)の出現頻度
- n(j): d(i)の長さ
- x(i,j) = tf(i,j) / n(j)
- sim(d(a),d(b)) = x(a) ・ x(b)
Real-Time Crowdsourcing
システムが適切な会話対を見つけられなかった場合(=類似度が基準に満たさなかった場合)、 システムは入力を他のユーザに譲渡する。
*See the Figure
Evaluation
- 90 user input examples
- 20 utterance-pairs / user
- 1800 tripples
- 30 subjects
- versatile answers are difficult to evaluate
Evaluating Score
- Use P/N learning data
- tripletを学習データで評価(基準を満たせばP、そうでなければN)
- ROC曲線
- 比較手法
- A or A+B(in figure 1)
- Use tf or NOT
- Use idf or NOT
- Eliminate Twitter-Specific Representations not NOT
- Normalize by Character or NOT
- Filter POS or NOT
Result
- Twitter特有の表現をフィルタリングした時に限りランダム分類(?)に近いパフォーマンスを見せた
- Word Count正規化やPOSフィルタリングは分類パフォーマンスをあげている
- 副詞や接辞は会話においてはあまり効果が無いため、POSフィルタリングがノイズ除去の役割を果たしている。
- tfは効果をもたらしたが、idfは分類を妨げていた
Future Work
- Two-Length以上のものを扱う
- より大きなデータベースを利用する