MADRID! Query Categorization

24
WWW2009 MADRID! Query Categorization 於 WWW 於於於於於webkai 於於於於 於於於於 於於於於於於 ()

description

WWW2009 MADRID! Query Categorization. 於 WWW 論文読み会( webkai ) 東京大学 岡崎直観(辻井研究室). 今回の発表資料. 以下の URL に置 いてあります http://www.chokkan.org/www2009/. 自動的に構築した概念グラフを 利用した教師無しクエリ分類. E. Diemert , G. Vandelle . (Yahoo! Search Innovation) - PowerPoint PPT Presentation

Transcript of MADRID! Query Categorization

Page 1: MADRID! Query Categorization

WWW2009 MADRID!Query Categorization

於 WWW 論文読み会( webkai )東京大学 岡崎直観(辻井研究室)

Page 2: MADRID! Query Categorization

以下の URL に置いてあります◦ http://www.chokkan.org/www2009/

今回の発表資料

Page 3: MADRID! Query Categorization

自動的に構築した概念グラフを利用した教師無しクエリ分類

E. Diemert, G. Vandelle.(Yahoo! Search Innovation)Unsupervised query categorization using automatically-built concept graphs, WWW2009, pp. 461-470.

Page 4: MADRID! Query Categorization

クエリからカテゴリを推定したい◦ 「音楽に関連するクエリに対して,アーティストの

ニュースやビデオなどを提示したい」 本研究の目標

◦ 教師無しの手法で高性能なクエリ分類システムを作る◦ Web くらいの大規模なコーパスにスケールさせる◦ Web の構造化されていないデータで分類システムを作る

研究の成果◦ 提案手法でも教師有りの分類システムと肩を並べる◦ 提案手法で構築した概念グラフが,クエリログや Web

文書の知識の代わりとなり得ることを発見した

背景・目標・成果

Page 5: MADRID! Query Categorization

ノード = 概念◦ 本研究では,名詞句とする(※ NP チャンキングなどはやらないが)

エッジ:

◦ ノード t, t’ 間のエッジは必ず一方向(強い方だけ) 無向非循環グラフ

◦ サイクルが出来てしまうときは,サイクル中の再弱のエッジを切る

概念グラフの作り方

NtDd

dtN Nttxref ]'[1

1)',(

t で検索した検索結果上位 N 件に t’ が含まれる割合

t で検索した検索結果上位 N 件

Page 6: MADRID! Query Categorization

カテゴリを表すノードを概念グラフ内に取り込む◦ 各カテゴリには 10 個以内のキーワードが付与されている

カテゴリ名で検索して得られたスニペットに含まれる語をキーワードとする 例 : Helth: {diet, fitness, longevity, disease, symptoms, tretments}

◦ あるカテゴリのキーワードから 0.5 以上の関連度を持つ概念ノード( 2 次以上も)を descriptor ノード群とする

◦ そのカテゴリのノードを概念グラフ内に作成し, descriptor ノード群から関連度1.0 としてエッジを張る

カテゴリを概念グラフに取り込む

Page 7: MADRID! Query Categorization

クエリ q が与えられたとき,そのクエリが属するカテゴリの重み付きスコアを求める◦ クエリから概念のスコア付けを行う

◦ 概念のノードからスコアを伝搬させる(4次まで)

◦ 最終的にカテゴリノードが受け取ったスコアが,クエリのカテゴリ所属スコアになる

クエリに対してカテゴリの重み付けスコアを得る

NqDd

dconceptNconceptw ][0 1

1)(

)(

),()()()(vpredp

vpxrefpwvwvw

Page 8: MADRID! Query Categorization

query の disambiguationも同時にできる!?

Page 9: MADRID! Query Categorization

Yahoo! Search US のクエリログのうち, 3151 クエリを9カテゴリ(音楽,旅行,映画, )に手作業で・・・分類

KDD Cup 2005 データ◦ MSN Search の 800 のクエリに 67 カテゴリを手作業で付与

評価

SVM ( RFB カーネル)

Page 10: MADRID! Query Categorization

Wikipedia を用いたユーザーのクエリ意図の理解

J. Hu, G. Wang, F. Lochovsky, J.-T. Sun, Z. Chen.(MSRA & HKU)Understanding user’s query intent with Wikipedia, WWW2009, pp. 471-480

Page 11: MADRID! Query Categorization

目標◦ 入力クエリの意図クラスを推定するための意味表現形式◦ 検索意図を正しく分類するための意図クラス境界の決定法◦ 入力されたクエリの意図クラスを分類する方法

成果◦ 意図カテゴリを, Wikipedia の概念とカテゴリで表現する

例えば,意図クラス「旅行」を Wikipedia 検索にかけて,「旅行会社」「航空券」などの関連カテゴリ,「時差ぼけ」「搭乗券」などの Wikipedia 記事で表現する

◦ Markov ランダムウォークを使って,各概念・カテゴリが意図クラスに属するスコアを求める

◦ 入力されたクエリを Wikipedia の概念・カテゴリに直接対応付けられないとき,関連する概念・カテゴリを見いだす

目標・成果

Page 12: MADRID! Query Categorization

ノード◦ Wikipedia 概念(記事)◦ カテゴリ

エッジ◦ カテゴリの親子関係◦ 記事間のリンク( Wikilink )◦ 記事のカテゴリ所属関係

エッジの重み◦ 上述の関係によるリンクの数

概念・カテゴリグラフの作成

‘+’ は意図クラスのシード概念・カテゴリを表す(次のス

ライド)

Page 13: MADRID! Query Categorization

意図クラスを表すシード概念を用意する◦ 「旅行」クラスなら,「旅行」

「ホテル」「カテゴリ:旅行」「航空券」など

◦ これらのノードに対し 1/N ,それ以外のノードに 0 を与えるベクトル v0を用意する( N はその意図クラスのシード概念数)

エッジの重みから遷移確率行列( P )を求める

活性伝搬を行い,シードに関連する概念・カテゴリをスコア付きで求める

ノードがある意図クラスに所属するスコアを求める

活性伝搬でスコアを受け取ったノードの色が濃くなってい

Page 14: MADRID! Query Categorization

入力されたクエリがグラフ上に存在するとき◦ その活性値で識別(識別基準が書かれていなかった ,・・・多分何らかの閾値を設定しているはず)

入力されたクエリがグラフ上に存在しないとき◦ Live Search を使ってスニペットを得る◦ スニペットに含まれる語と関連の深い概念を見つける

スニペットの単語ベクトルと, Wikipedia 記事の類似度( BM25 )で,概念のスコア付けを行う

◦ 見いだした概念の意図クラスに関する活性値の和を計算 ある閾値 θ を超えたら,その意図クラスに属すると判定

入力されたクエリから意図クラスを求める

Page 15: MADRID! Query Categorization

手法◦ LR: ロジスティック回帰

ベース概念が素性◦ LRE: LR と活性拡散

拡張された概念が素性となる◦ WIKI: 提案手法◦ WIKI-R: 活性拡散を行わない

テストデータは自作◦ 「旅行」「人名」「仕事」

評価結果

Page 16: MADRID! Query Categorization

ウェブ検索におけるユーザの位置に関する意図の発見

X. Yi, H. Raghavan, C. Leggetter.(Massachusetts Amherst & Yahoo! Labs)Discovering users’ specific geo intention in Web search, WWW2009, pp. 481-490

Page 17: MADRID! Query Categorization

13% 以上の Web 検索は,位置に関する問い合わせ◦ “manhattan coffee” → 「マンハッタンにあるコーヒーショップを探している」

位置に関する検索意図があると思われるクエリの 50%しか,場所名が明示されていない◦ “pizza” → 「ピザの店を探している」らしいが,場所が不明

検索クエリによって,場所のローカル度が異なる◦ “pizza” “dentist” → 「近くのピザ屋」「近くの歯医者」◦ “map” ”hotel” → 「旅行先の地図」「旅行先のホテル」

検索クエリによって,場所の範囲が異なる◦ “pizza” → 10マイル程度の粒度◦ “dentist” → よい歯医者なら 30マイルまで OK◦ “2008 honda civic” → 安ければ 100マイルまで OK

背景

Page 18: MADRID! Query Categorization

検索クエリに都市レベルの粒度の場所検索意図があるかどうかを推定◦ “pizza” → +1; “funny cats” → -1

検索クエリの( IP アドレスなどから推測される現在位置からの相対での)ローカルさを推定◦ local geo queries (高ローカル) : “pizza” “dentist” な

ど◦ neighbor region geo queries: “car dealer” “real estate”◦ others (低ローカル) : “state map” “hotels”

場所に関するクエリに対応する都市を推定◦ “Liberty Statue” → New York

クリックスルー・データから訓練例を自動獲得

研究の目的と成果

Page 19: MADRID! Query Categorization

システムからの出力◦ Q に場所に関する検索意図があるかどうか

その場所は local, neighbor, other のどこにあるか Q に対応する場所を表す都市名

全体のシステム構成

yes

no yes

Page 20: MADRID! Query Categorization

クエリ Q が与えられたとき,場所 Ciを推定したい◦ ナイーブベイズモデル(もどき)で推定

P(Ci) は一様分布として無視する(→「もどき」)

P(Q|Ci) は都市ごとの bi-gramモデルで推定

クエリから場所の条件付き確率

)|()()|( iii CQPCPQCP

n

ikiik CwwPCQP

11 ),|()|(

Page 21: MADRID! Query Categorization

基本的には unigram, bigram, trigram を以下の基準で重み付けしたもの◦ クエリ中の場所以外( Qnc )に出現した回数,確率◦ n-gram のコーパス中での出現頻度,確率◦ n-gram と都市名に関するクエリ部分( Qc )の共起の

強さ( PMI )◦ n-gram と共起する都市名の数◦都市毎の P(w|Ck)

◦ すべての都市に関して最大の P(w|Ck)◦確率分布 P(w|Ck) と一様分布との KL距離

素性 :Geo Information Unit (CIU)

Page 22: MADRID! Query Categorization

訓練例は検索クエリログから自動構築◦ クエリ Q で検索 → DN+ のサイトをクリック : +1

◦ クエリ Q で検索 → DN- のサイトをクリック : -1◦ +1: 7.5M 事例◦ -1: 57.8M 事例

Q を Qc と Qnc に分解◦ Qnc から +1/-1 を推定

クエリから場所検索意図の推定

Page 23: MADRID! Query Categorization

検索クエリ Q を Qc と Qnc に分解する◦ Qc が表す場所と検索した IP アドレスの位置の距離を計算 距離が 50マイル未満 : local geo 距離が 50マイル以上 100マイル未満 : neighbor region

geo 距離が 100マイル以上 : other

◦ Qnc から上記の3つのラベルを当てるタスクと思う

検索クエリのローカルさの推定

Page 24: MADRID! Query Categorization

検索クエリ Q を Qc と Qnc に分解する◦ Qc を場所名とみなして P(Qc|Qnc) の確率モデルを作る

Qnc から最大の P(Qc|Qnc) を与える Qc* を選び, P(Qc*|Qnc)>ta ならば, Qc* を予測した都市とする◦ ta を変えながら precision-recall カーブを描く

クエリから場所の推定