Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【輪講資料】From Query to Question in One Click: Sugg...

【輪講資料】From Query to Question in One Click: Suggesting Synthetic Questions to Searchers【WWW2013】

2013-05-29に職場で実施した輪講資料を代理アップロードしました.

Yuichiro SEKIGUCHI

May 29, 2013
Tweet

More Decks by Yuichiro SEKIGUCHI

Other Decks in Research

Transcript

  1. 1 2013-05-29 From Query to Question in One Click: Suggesting

    Synthetic Questions to Searchers Gideon Dror, Yoelle Maarek, Avihai Mejer, Idan Szpektor 2013-05-29 輪講資料
  2. 3 2013-05-29 • ユーザがWeb検索で満足しない場合(知りたい情報が見つ からない、そもそもWeb上にない) ex) Flux Capacitor mechanism ⇒

    ユーザを質問サイトの質問者にシームレス(one click)に スイッチさせるために検索クエリから、検索意図に 合致した質問文を合成し、推薦する技術。 ex) Could you tell me about Flux Capacitor mechanism? • 本研究において以下点で既存研究[1]を改善した。 – 質問文の合成 – 推薦時ランキング精度向上 – 冗長性の排除 • quality 14 [%] 上昇 • redundancy 55 [%] 減少 概要
  3. 7 2013-05-29 •Web検索クエリから”質問文”を自動的 に生成して質問文を推薦って何が嬉しい の? ⇒ “searchers” から “askers” へ

    ・Web検索で満足できなかった検索者※ が質問サイトの質問者になってもらって、 問題を解決してもらう。 特に施策がない場合は、自発的にsearcherからaskers に なって問題を解決している人は 2[%] はじめに ※この質問は大抵、珍しかったり、曖昧であったり通常Web検索 ではユーザ満足を実現できないような質問をしてくる人が今の対象。 検索エンジンの品質が悪いとかそういうのは今は考えない。
  4. 8 2013-05-29 • 概要 • 導入 • 手法 – 処理概要

    – システム概要図(想像図) • 評価 • まとめ 目次
  5. 9 2013-05-29 • オフライン処理 (モデル学習) 1. 質問文テンプレート抽出 2. 質問文表示順位モデル学習[ランキング学習] 3.

    冗長性フィルタリング • オンライン処理 (モデル推定) 1. 質問文生成 (質問文テンプレート利用) 2. 質問文表示順位ランキング[ランキング推定] 3. 冗長性フィルタリング 処理概要 入力:検索クエリ、出力:質問文
  6. 10 2013-05-29 僕の考えたシステム構成図(想像) Input Query: fix old bike why do

    people T1 T2 T3 so much? ⇒ [love, Justin, Beeber], [love, Michael,Joseph ]・・・ who is the T1 T2 T4 T5 in the T3. ⇒ [best,ever,US,basketball,player] [best,evar,US,baseball,player] how can I T1 my T2 T3? ⇒ [fix, old, car],[fix,old,PC] ・・ sequential learning generate question query, question DB template DB question list question reranking output: suggestion lists learn-to-rank ranking model(μ) 1 How can I fix my old bike? ・・・ Input data set why do people fix old bike so much? what are the best sites for old fix for bike. how can I fix my old bike? オンライン処理 オフライン処理
  7. 11 2013-05-29 • 概要 • 導入 • 手法 – 質問文テンプレートについて

    – 質問文ランキングについて • 評価 • まとめ 目次
  8. 13 2013-05-29 • データセット – 28 million Query and Question

    pairs •Yahoo! Answers (質問データはタイトルだけ保持) ⇒ 4.2 million Query and Question pairs [15%減 ] ・ クエリは3~5ワード ・ 質問データには対応するクエリが全て含まれている ・ 質問データにはホワイトリスト20ワードのうち1個は含まれる [WhiteList] ⇒ WH(what,who,etc, and how),補助動詞(should,is,can etc) 手法(質問テンプレート抽出)
  9. 14 2013-05-29 • 質問テンプレートの作り方 検索クエリ: fix old car 質問文: how

    can I fix my old car? 質問テンプレート: how can I T1 my T2 T3? 手法(質問テンプレート抽出) • 質問テンプレート抽出数 – 4000個 最低限10種のクエリに関連ずけられるものだけ残す
  10. 15 2013-05-29 •ランキング学習 – 学習事例数 • 160万事例(query and question pairs

    ) – 80[%] ⇒ training , 10[%] ⇒ development, 10[%]⇒testing – 学習方法 •オンライン学習 データを1個づつ読み込んで、これまでの学習結果(モデル)を更新 しながら学習を進める。 利点: メモリに乗らない大きなデータの学習可能 計算速度は繰り返し計算を必要とするが、 バッチ学習より高速, 分散化が容易 欠点: 精度面でバッチ学習と比較して劣勢だったが、 最新のアルゴリズムでは高精度かつ、高い収束性を誇る – Passive-Aggressive (PA) 法 質問文ランキング
  11. 16 2013-05-29 Ranking model PA training Δj,iを素性と見なせば 2値分類問題に帰着できる (正解) μji

    ・Δj,i >= 1であればα=0 ⇒μ更新しな い ( 間違い) その他は 1-μt-1・Δj,i ⇒ μ更新する。 iterate T
  12. 17 2013-05-29 1. likelihood 2. Language model 3. Questions POS

    language models 4. Query POS sequences 5. Dependency Relations 6. Parse Tree Score 7. Template Word Order baseline = (1) + (2) Zhao et al. [1] ランキング素性
  13. 18 2013-05-29 •likelihood (query, template) likelihood   k k

    i k i q q sim q q sim ) , ( ) , ( k i k q q , はそれぞれk番目のクエリ ) , ( * ) , ( * ) , ( ]) , , [ ], , , ([ car bike sim old old sim fixed fixed sim car old fixed bike old fixed sim                                      ・類似度はcontext vector をtfidf で重み付けしたものでcosine類似度
  14. 19 2013-05-29 •Language model (question) – trigram language model 質問文の文法的な正しさを評価

    – データ量 •Yahoo! Answers の質問文から無作為抽出した 1500万レコードを使って学習 • berkeleylm を利用 – http://code.google.com/p/berkeleylm/ •Baseline-score(Zhao et al.) λ(0.2で評価)した。 Language model ) ( ) 1 ( ) , ( Qestion del LanguageMo Template Query likelihood score baseline        
  15. 20 2013-05-29 •Questions POS language models – five-gram language model

    score for Question POS tags (Coarse-POS※) ※簡略化した品詞 名詞は Nでまとめられる (NN,NNS,NP,NPS) 素性の効果としては高度な文法上の流暢性を考慮する。 – 学習データ •1500万の質問データ(3-gram)で学習 ex) How can I fix my old car? Questions POS language models How can I fix my # Adverb-Verb-Determiner-Verb-eterminer can I fix my old # Verb-Determiner-Verb-eterminer-Adjective I fix my old car # Determiner-Verb-eterminer-Adjective-Noun fix my old car ? # Verb-eterminer-Adjective-Noun-Punctuation
  16. 21 2013-05-29 •Query POS sequences – クエリの品詞の並びを素性化 ex) “fix old

    car” ⇒template ⇒ “should I fix my old car?” ⇒POStag ⇒ “ XXX X VB X JJ NN” ⇒ “VB,JJ,NN” “VB,JJ,NN”から以下の素性を生成 ・ 1-VB,2-JJ,3-NN # uni-gram ・ 1-VB-JJ,2-JJ-NN # bi-gram ・ 1-VB-JJ-NN # tri-gram Query POS sequences
  17. 22 2013-05-29 •Dependency Relations – head-dependent binary features ex) “should

    I fix my old car?” • ‘should → fix’,’I → fix’,’car → fix’ • ‘MD→VB’,’PRP→VB’,’NN→VB’,’M→V’,’N→V’ Dependency Relations
  18. 23 2013-05-29 •Parse Tree Score – parser が提供する 構文木スコアを素性化 スコアが小さい⇒出力された構文木構造の確率が低い

    •Template Word Order – テンプレート中のクエリの順番を素性化 ex) “should I T4 my T1 T2 T3?” ⇒ T4-T1-T2-T3 Parse Tree Score / Template Word Order
  19. 25 2013-05-29 • 概要 • 手法 • 精度評価 – 人手評価

    – 自動評価 – その他 • まとめ 目次
  20. 26 2013-05-29 • 提示方法 – 無作為に抽出された1000クエリに対して クエリ毎に3つ(Q1,Q2,Q3) の質問文を推薦(提示)する • 評価方法

    – 質問文に対して以下の2つの観点での2値(good,poor)で評価 ① 内容の妥当性 (relevance ) ② 文法の正しさ (grammar) – 評価者は3人のYahoo!の編集チームが評価 評価者の意見が別かれた場合は多数決 人手評価 その1
  21. 27 2013-05-29 • アルゴリズム別の人手評価の結果 – Relevant は両手法とも概ね高精度(94[%]~96[%]) ※全てのクエリが質問文に出てくるので、判定者がよく見えるためだと思われる。 – Grammar

    はBaselineの精度がよくなくい、一方で本研究のラン キング方法が有効に働いている(best suggestionで+10%) 人手評価 その2
  22. 29 2013-05-29 自動評価 • 評価データ – データ数 •検証用データの147000クエリ – 正解のラベル

    •実施のログからクエリを生成しているので、あるクエリでクリックし た質問文が既知(これを正解としている) • 結果 – 提案法(Rerank)がどの指標でもBaselineを上回っている。
  23. 31 2013-05-29 • 概要 • 手法 • 精度評価 – 人手評価

    – 自動評価 – 冗長性の排除 (フィルタリング) • まとめ 目次
  24. 32 2013-05-29 多様性(diversifying)の排除 • 推薦時の多様性(diversifying)の排除 – 推薦結果に同じような質問意図を含むケースが散見さ れるので、同じ質問意図のデータをフィルタする ex1) how

    do I fix my old car? how can I fix an old car? how could you fix your old car? ex2) where can I {find/buy/get} a TV for a good price?. ⇒ 5つを推薦した場合、リスト中の2~3個は 質問意図が重複している • 後処理でフィルタリングを実施する – 2種のフィルタリング方法を提案
  25. 33 2013-05-29 • Imposing a Different Question Form - heuristic

    method 異なる疑問表現(interrogative word※)で始まる 質問文を優先して出す ※what,when,where,.. ex) where can I fix a wii game console? where can I buy a wii game console? ⇒ 削除 • Eliminating Redundant Questions - 冗長性の削除 word-base edit-distance を計算し、閾値(K<=3)以内であれば削除す る。ただし、interchangeble pair※の交換はcost=0で交換可能。 ※interchageble pair はDBの共起情報などから生成(5oo pair) ex) what are the {main/major} characteristics of a pigs? ⇒ {main/major}は非交換可能ペア。⇒非削除 フィルタリング方法
  26. 35 2013-05-29 • 人手評価 – データセット: 50クエリx3質問文 (150) – 結果

    各種フィルタリングでDiversityは向上しているが、逆に削除した 分だけランキング下位の質問文が入るのでQualityは低下 人手評価 その1
  27. 36 2013-05-29 • 人手評価 – データセット: 500クエリx3質問文 (1500) – edit-distance

    filter only – 結果 ・ オリジナルのリストにおいて45.3[%]にdiverseがあると判定されている が、quality は 81.8[%]を実現している。 ・filtering 結果はquality で15%(82%→70%)低下しているが、#2,#3の diversityの上昇を考慮するとこの程度のデグレードは許容範囲 人手評価 その2
  28. 37 2013-05-29 自動評価 TOP-1はフィルタしないのでRecall@1は効果がない RIGHT: a suggested question is considered

    as matching the target question if it is “similar enough” to the target question (as opposed to perfectly identical in the previous setup). ⇒ 精度がよくなっているが具体的な方法が明示さえていない?
  29. 39 2013-05-29 まとめ • 今現在、Web検索に満足でいなかった人が、CQAサイト の質問者になるための簡単な仕組みがなかったが、我々 は検索クエリから自動的に質問文を生成、ランキングし リストを表示することによってユーザが投稿者になるた め移行を促進する仕組みを提案した。我々の研究は先行 研究よりも以下の点で有用であると考えている。

    – 数百万事例にも及ぶ巨大なデータを用いた学習 – 数百万レコードからテンプレートを抽出し、質問文の生成 – 冗長性の排除のための2種のフィルタリング • 今後の課題 – 大規模データを用いた施策を繰り返す中で幾つかの施策を実施し 、精度を向上させる。 – オンライン実験を行う。
  30. 40 2013-05-29 [1] S. Zhao, H. Wang, C. Li, T.

    Liu, and Y. Guan. Automaticallygenerating questions from queries for community-basedquestion answering. Reference
  31. 41 2013-05-29 0 | | 1 1   

     MMR N k r Dq MRR N k k 現れなければ  もし、正解がひとつも 順位 は正解が最後に現れた ただし、 順位 正解 か 1 〇 2 3 4 〇 5 6 625 . 0 4 1 1 1 2 1          MRR Mean Reciprocal Rank(MRR) • 平均逆順位: Mean Reciprocal Rank (MRR)