メモ:Learning from the past:Answering New Questions with Past Answers(WWW2012)

http://www2012.wwwconference.org/proceedings/proceedings/p759.pdf

 

CQA(今回はYahoo!answers)サイトにおいて,見回答の質問を,過去の解決済みの質問を再利用することで減少させることを試みる.ベストアンサーを提供した人間と同程度のクオリティを実現する挑戦.自然言語処理技術を利用する.

 

アプローチの概要図[1]

f:id:A_Koide0519:20121222181220p:plain

 

2つのフェーズからなる

フェーズ1:候補選択

・新たな質問が与えられた時,ある程度の候補になるまで解答候補を選抜する

まず,今回利用する過去の質問回答は,質問者がベストアンサーをつけたもので,かつ少なくとも3つの星がつけられているもの(良質な質問回答のみを対象に)

質問のタイトルをunigram分解し,tf-idfで重み付け.

質問間のコサイン類似度がある閾値\alphaを超えたものを候補とする.後半ででてくるけど,今回は\alpha = 0.9とする.

さらに,その候補の中で,タイトルと文章で上記と同様のunigram+tf-idfを施したベクトルを作成し,ランキングする.

 

フェーズ2:上位候補の検証

新たな質問,過去の質問,過去の回答の3つのエンティティそれぞれの特徴,並びに相互関係からなる特徴量を利用して,95このFeature vectorを作成

 

概念図[1]

f:id:A_Koide0519:20121222182516p:plain

 

●特徴量

1.表面的な特徴量

テキストのながさ,クエスチョンマーク,ストップワード,最大のIDF値など…

 

2.言語学的分析

・Latent Topic

LDAを利用.2つのエンティティの最大確率のトピック,トピックの類似関係(JS-divergenceなど)

 

係り受け解析

WH句を抽出.名詞や動詞の数.

後半はよくわからないが,述語がミスマッチしていないかどうかも見てる?

 

3.Result List分析

IR方面の特徴量.正直よくわからん.解釈が間違っていなければ,フェーズ1でやった候補選択とランク付けをIRに見立てて,それを利用して特徴量を作っている.解答をクエリとするときは,その解答の候補質問をResult Listとしている・・・?

・クエリが明快であるかどうか

文献[2]を読めばわかるかも…クエリ(新しい質問のタイトル)のあいまいさ.質問のタイトルを投げたときに検索された候補のトピックの多様性で評価.例えば”What's wrong with me?”という質問は多くのトピックの質問に含まれるから明快でない.

・クエリのフィードバック

文献[3]をry.クエリ間のResult Listの類似度みたいなものを取っている気がする.

・Listの長さ

候補がどのくらいになるのか

 

●使用する分類器

SVM,Random Forest, ロジステック回帰,ナイーブベイズ(wekaを利用)

.※この後の結果はRandom Forestの結果

 

○実験

アクティブなカテゴリである美容,健康,ペットのカテゴリデータを利用.過去の質問回答集合はそれぞれ305,508,449,890,201,654となった.

 

・人手によるラベル付け

アマゾンのとこのトルコ人さんに依頼.

セットは(NewQuestion,過去の解答)になる.1200セット用意して,ラベル付けしてもらう.セット内容が,解答として満足か満足でないかを評価する.満足なセットは全体の50-60%くらい.健康に関しては解答の一致度を示すFleiss'kappaが低かったが,質問がセンシティブなものが多い傾向があったためと思われる.

 

○オフラインの結果

・10-fold closs validation

F値が高くなるのは,どのカテゴリでもRecallが0.5以下のところ(ペット0.5,健康・美容0.2)

・特徴量として全体的にクエリのフィードバックがよく効いていた

 

○オンラインの結果

・カテゴリごとに自動回答するロボット作成

・一週間くらいつかったところ,ユーザは彼らがロボットであることに気付かなかった

・ロボットが常にファーストアンサーとなった(アルゴリズムの効率性)

 

そこで,ベストアンサーをもらう割合が一般ユーザとどれくらい違うか評価する

・ユーザが満足したかどうかをベストアンサーがついたかどうかで決める

・ベストアンサーは,質問者あるいはコミュニティで決められたものに限る

 

結果として,ロボットの方が2-4倍多くベストアンサーをもらっていた.

また,実験後の期間に収集した未解決な問題を解かせたところ,数%の問題を解決することができた.

 

メモ

内容的に,やろうと思えばシステムに組み込めそうな感じがするし,質問回答の効率も上がる気がする.応用先が明快で,内容としても面白いし,実験も徹底していた.

自然言語処理機械学習もさることながら,IRの知識も来年以降使いそうな感じだし,勉強しないとなぁ。

 

参考文献&図の引用

  1. Learning from the past:Answering New Questions with Past Answers,WWW,2012
  2. Precision prediction based on ranked list coherence. Information Retrieval, 2006
  3. Query Performance Prediction in Web Search Environments 、SIGIR, 2005