SlideShare a Scribd company logo
1 of 30
SEXI2013読み会:
Adult Query Classification for Web
Search and Recommendation
2013-06-30
Yoshihiko Suhara
@sleepy_yoshi
Adult Query Classification for Web
Search and Recommendation
• Aleksandr Chuklin, Alisa Lavrentyeva (Yandex)
• Yandex
– ロシアのシェアNo.1検索エンジン
イントロ
なぜ
アダルトクエリ判別が
必要なのか?
幸せな世界
• 検索エンジンというひとつの入り口からおとなも こども
もおねーさんもみんな各々が幸せになれる世界へ案
内
検閲削除
Adult query 判別がなぜ必要か?
• アダルトコンテンツを望む人,望まない人がいる
ハァハァ・・・
検閲済ハァァァ!
おとなには自動的に
セーフサーチOFFにしてあげたい
検閲削除
既存のアプローチ
• 最も簡単なのはホワイトリスト,ブラックリスト
形式
• 既存研究の多くはアダルトコンテンツ判定に
取り組んでいた
– 映像,文書などのアダルトコンテンツ判定
• 今回はアダルトコンテンツ判定の情報を利用
したアダルトクエリ分類器を学習
提案手法
提案手法の概要
• 教師あり学習を用いて分類器を学習
訓練データ
学習アルゴリズム
クエリ分類器
クエリ
(特徴ベクトル)
生成
判定結果
{white, gray, black}
今回は3値分類
利用する特徴
• 大きく以下の2つのアプローチで特徴抽出
– (1) SEarch Result Page (SERP) feature
• 検索結果のadultnessスコアを利用した特徴
• adultnesss スコア [0, 1]
– 各文書に対してあらかじめ付与されたアダルトコンテンツらし
さのスコア
– 具体的な計算方法については記載なし 
– (2) Language feature
• クエリのみから抽出する特徴
(1) SERP features (8 features)
• SERP feature
– 上位N件に存在する adultness > 0 の文書数
– 最上位の adultness スコア
– 上位N件に存在する adultness スコアが以下の範
囲に含まれる数 (4 features)
• [0.25, 0.5), [0.5, 0.75), [0.75, 1.0), [1,0, +∞)
– 上位N件のadultnessスコアの平均と分散 (2
features)
本研究ではN=30と設定
(2) Language features (1/2)
• Language features
– 全クエリ, black, whiteクエリに対して構築された計3個
の言語モデルを利用
• bi-gramモデル+back-off smoothing を利用
– black言語モデルの例
𝑃𝑏𝑙𝑎𝑐𝑘 𝑄 𝑀 𝑏𝑙𝑎𝑐𝑘 = 𝑃(𝑞𝑖|𝑞𝑖−1; 𝑀 𝑏𝑙𝑎𝑐𝑘)
|𝑄|
𝑖=1
– 言語モデル構築に利用するコーパス:
• SERP featureを用いて構築したblack-whiteクエリ分類器に
よって収集したblack/whiteクエリ
• precision 約90%だそう.量については記載されておらず
(2) Language features (2/2)
• 具体的には記載されておらず
システム構成図
クエリ入力
検索結果取得
Adultness計算
検索結果フィルタ
検索結果提示
検索エンジン
ここでフィルタ
実験
Adult query dataset
• 1889クエリを人手で判別
– white: 1118
– gray: 132
– black: 639
– ※サンプルにはsome well-known black wordsを
利用
実験条件
• 分類器にはGradient Boosting Decision Trees
(GBDT) を利用
• 10 Fold cross validation で評価
結果
結果に対する考察
• black, whiteの判別は高精度に達成.grayが
イマイチ
• Language feature がなくても高精度
– 当たり前?
• コーパス作成のblack/white判定にSERP featureを使っ
ているから
• SERPにおけるAdultnessスコアを利用しているから
– 検索結果に出てくる = 当該キーワードを含む
– Adultnessスコア計算にlanguage featureに相当する情報に基
づく特徴が利用されていれば,情報として重複
応用例
• (1) ウェブ検索
– クエリが
• blackに分類: フィルタリングを一切せずに検索結果を提示
• whiteに分類: adultnessスコアが閾値𝛼以上のものを排除して結
果を提示
• grayに分類: adultnessスコアが閾値𝛽以上のものを排除して結果
を提示
• (2) クエリ推薦
– 既に入力されたクエリがwhiteに分類された場合,blackク
エリは提示しない
– 既に入力されたクエリがblackに分類された場合は前候補
を提示
まとめ
• アダルトクエリ判別を3値に分類する方法と特
徴を提案した
• 今後の課題
– grayクエリの更なる分析
– filteringではなくランキングへの反映
感想
• 3値分類の目的がよくわからない
– black/white 判定の精度向上?
– 考察が少ないのでなんともいえず
• 特徴にSERPを使うのはよいとして,adultness
スコア計算方法に依存しているため微妙
– しかもそこがブラックボックスになっている 
おまけ
Yandexの総クエリ数を推定する
• Yandexの1年間に使用されるユニーククエリ
数が論文内に記載されている (いいの?)
– 116,511,310クエリ
• この数字からYandexの年間総クエリ投入数
予測を試みる
Heapsの法則
• コーパスサイズ𝑁の総語彙数𝐷が以下の法則
に従うというもの
𝐷 = 𝑘𝑁 𝛽
– ただし𝑘と 𝛽はコーパスに依存
• 対数を取ると
log 𝐷 = 𝛽 log 𝑁 + log 𝑘
– 両対数の世界では線形の関係
Heapsの法則を用いた予測
• 以下のステップで推定を試みる
– 1. 既存のクエリログから𝑘と𝛽を推定
– 2. 𝐷 = 116,511,310 を代入して総クエリ数𝑁を推定
• 既存のクエリログとしてAOLクエリログデータ
セットを利用して試してみる
AOLデータセットに対する
Heapsの法則の適用
• 両対数グラフでプロットしてみる
– かなりきれいに線形関係
※ 詳しくは http://d.hatena.ne.jp/sleepy_yoshi/20120129/p1 に記載
AOLデータにおける実験
• 一部データを使って推定した𝑘と𝛽を用いて語
彙数増加を予測
– 最小二乗法によるフィッティング
• 10%程度のデータを用いるとかなり高精度にフィット
Yandexクエリ数の推定
• AOL全データに対する最小二乗フィッティング結果
– 推定値: 𝑘 = 3.832, 𝛽 = 0.7406
• 𝐷 = 𝑘𝑁 𝛽
に代入
116,511,310 = 3.832 𝑁0.7406
𝑁 = 12,702,687,258
• よって総クエリ投入数は以下のとおり予測
– 約127億クエリ/年
– 約10億クエリ/月
Thank you!

More Related Content

Viewers also liked

PRML復々習レーン#10 7.1.3-7.1.5
PRML復々習レーン#10 7.1.3-7.1.5PRML復々習レーン#10 7.1.3-7.1.5
PRML復々習レーン#10 7.1.3-7.1.5sleepy_yoshi
 
PRML復々習レーン#7 前回までのあらすじ
PRML復々習レーン#7 前回までのあらすじPRML復々習レーン#7 前回までのあらすじ
PRML復々習レーン#7 前回までのあらすじsleepy_yoshi
 
PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5sleepy_yoshi
 
PRML復々習レーン#10 前回までのあらすじ
PRML復々習レーン#10 前回までのあらすじPRML復々習レーン#10 前回までのあらすじ
PRML復々習レーン#10 前回までのあらすじsleepy_yoshi
 
SIGIR2012勉強会 23 Learning to Rank
SIGIR2012勉強会 23 Learning to RankSIGIR2012勉強会 23 Learning to Rank
SIGIR2012勉強会 23 Learning to Ranksleepy_yoshi
 
PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1sleepy_yoshi
 
PRML復々習レーン#2 2.3.6 - 2.3.7
PRML復々習レーン#2 2.3.6 - 2.3.7PRML復々習レーン#2 2.3.6 - 2.3.7
PRML復々習レーン#2 2.3.6 - 2.3.7sleepy_yoshi
 
SIGIR2011読み会 3. Learning to Rank
SIGIR2011読み会 3. Learning to RankSIGIR2011読み会 3. Learning to Rank
SIGIR2011読み会 3. Learning to Ranksleepy_yoshi
 
PRML復々習レーン#11 前回までのあらすじ
PRML復々習レーン#11 前回までのあらすじPRML復々習レーン#11 前回までのあらすじ
PRML復々習レーン#11 前回までのあらすじsleepy_yoshi
 
TokyoNLP#7 きれいなジャイアンのカカカカ☆カーネル法入門-C++
TokyoNLP#7 きれいなジャイアンのカカカカ☆カーネル法入門-C++TokyoNLP#7 きれいなジャイアンのカカカカ☆カーネル法入門-C++
TokyoNLP#7 きれいなジャイアンのカカカカ☆カーネル法入門-C++sleepy_yoshi
 
PRML復々習レーン#15 前回までのあらすじ
PRML復々習レーン#15 前回までのあらすじPRML復々習レーン#15 前回までのあらすじ
PRML復々習レーン#15 前回までのあらすじsleepy_yoshi
 
ICML2013読み会: Distributed training of Large-scale Logistic models
ICML2013読み会: Distributed training of Large-scale Logistic modelsICML2013読み会: Distributed training of Large-scale Logistic models
ICML2013読み会: Distributed training of Large-scale Logistic modelssleepy_yoshi
 
計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-sleepy_yoshi
 
CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算sleepy_yoshi
 
SMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装するSMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装するsleepy_yoshi
 
TokyoNLP#5 パーセプトロンで楽しい仲間がぽぽぽぽ~ん
TokyoNLP#5 パーセプトロンで楽しい仲間がぽぽぽぽ~んTokyoNLP#5 パーセプトロンで楽しい仲間がぽぽぽぽ~ん
TokyoNLP#5 パーセプトロンで楽しい仲間がぽぽぽぽ~んsleepy_yoshi
 
DSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめDSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめsleepy_yoshi
 
SVM実践ガイド (A Practical Guide to Support Vector Classification)
SVM実践ガイド (A Practical Guide to Support Vector Classification)SVM実践ガイド (A Practical Guide to Support Vector Classification)
SVM実践ガイド (A Practical Guide to Support Vector Classification)sleepy_yoshi
 

Viewers also liked (18)

PRML復々習レーン#10 7.1.3-7.1.5
PRML復々習レーン#10 7.1.3-7.1.5PRML復々習レーン#10 7.1.3-7.1.5
PRML復々習レーン#10 7.1.3-7.1.5
 
PRML復々習レーン#7 前回までのあらすじ
PRML復々習レーン#7 前回までのあらすじPRML復々習レーン#7 前回までのあらすじ
PRML復々習レーン#7 前回までのあらすじ
 
PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5
 
PRML復々習レーン#10 前回までのあらすじ
PRML復々習レーン#10 前回までのあらすじPRML復々習レーン#10 前回までのあらすじ
PRML復々習レーン#10 前回までのあらすじ
 
SIGIR2012勉強会 23 Learning to Rank
SIGIR2012勉強会 23 Learning to RankSIGIR2012勉強会 23 Learning to Rank
SIGIR2012勉強会 23 Learning to Rank
 
PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1
 
PRML復々習レーン#2 2.3.6 - 2.3.7
PRML復々習レーン#2 2.3.6 - 2.3.7PRML復々習レーン#2 2.3.6 - 2.3.7
PRML復々習レーン#2 2.3.6 - 2.3.7
 
SIGIR2011読み会 3. Learning to Rank
SIGIR2011読み会 3. Learning to RankSIGIR2011読み会 3. Learning to Rank
SIGIR2011読み会 3. Learning to Rank
 
PRML復々習レーン#11 前回までのあらすじ
PRML復々習レーン#11 前回までのあらすじPRML復々習レーン#11 前回までのあらすじ
PRML復々習レーン#11 前回までのあらすじ
 
TokyoNLP#7 きれいなジャイアンのカカカカ☆カーネル法入門-C++
TokyoNLP#7 きれいなジャイアンのカカカカ☆カーネル法入門-C++TokyoNLP#7 きれいなジャイアンのカカカカ☆カーネル法入門-C++
TokyoNLP#7 きれいなジャイアンのカカカカ☆カーネル法入門-C++
 
PRML復々習レーン#15 前回までのあらすじ
PRML復々習レーン#15 前回までのあらすじPRML復々習レーン#15 前回までのあらすじ
PRML復々習レーン#15 前回までのあらすじ
 
ICML2013読み会: Distributed training of Large-scale Logistic models
ICML2013読み会: Distributed training of Large-scale Logistic modelsICML2013読み会: Distributed training of Large-scale Logistic models
ICML2013読み会: Distributed training of Large-scale Logistic models
 
計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-
 
CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算
 
SMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装するSMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装する
 
TokyoNLP#5 パーセプトロンで楽しい仲間がぽぽぽぽ~ん
TokyoNLP#5 パーセプトロンで楽しい仲間がぽぽぽぽ~んTokyoNLP#5 パーセプトロンで楽しい仲間がぽぽぽぽ~ん
TokyoNLP#5 パーセプトロンで楽しい仲間がぽぽぽぽ~ん
 
DSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめDSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめ
 
SVM実践ガイド (A Practical Guide to Support Vector Classification)
SVM実践ガイド (A Practical Guide to Support Vector Classification)SVM実践ガイド (A Practical Guide to Support Vector Classification)
SVM実践ガイド (A Practical Guide to Support Vector Classification)
 

Recently uploaded

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 

Recently uploaded (9)

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 

SEXI2013読み会: Adult Query Classification for Web Search and Recommendation