2008年7月7日月曜日

Spam Double Funnel

Spam Double Funnel:

サイトにアクセスした時、あるいは広告をクリックした時のデータの流れを探り、そこからスパム活動の傾向を知ろうという研究。米国のサイトを対象とした研究だから分かりにくかった。具体例のサイトとか知らないし。まあともあれこんな内容です。元も論文はこれ→http://www.cs.ucdavis.edu/~hchen/paper/www07.pdf

Abstract

検索エンジンの最適化技術(SEO)を駆使し、Webページの検索結果を上位に上げる事が広く行われている。我々は広く普及したスパム手法である“リダイレクトスパム”に焦点を当てる。リダイレクトスパムはスパムページがトラフィックを第三者のドメインにリダイレクトしていることにより見つけることができる。(リダイレクトスパムは、ユーザがあるスパムページを訪れるとすぐさま広告主である他のページにユーザを飛ばすという手法のスパムであると思ったがどうもこの論文では違うらしい。ググッたところリダイレクトとはプログラムの入力元や出力先を通常とは違うものに変更することとあった。つまりあるページにアクセスあるいはリンクをクリックするとそれが様々なドメインを経由してそのドメインから得た情報をページの一部として表示したり、アクセス情報を記録したりいろいろするらしい。)我々は5層2じょうごモデルをリダイレクトスパムを表現するために用い、層を解析する方法論を提示し、2つの広告キーワードの集合を用いてスパムと思われるドメインを発見する。2つの広告キーワードの一つはスパマーに狙われるキーワードを対象としており、もう一つは広告主に向けて入札額が高いキーワードを対象としている。我々の提案と結果はサーチエンジンがスパムに対して頑健性を増し、サイトの管理人がスパムのドアウェイページを取り除き、広告主がスパムページに広告を載せるような悪い宣伝主を発見するのに有用だろう。


1.Introduction

サーチスパマーとはクオリティの低いページをSEO技術を用いて検索結果上位に引き上げようとする輩を言う。一般的なSEOのテクニックとしてはキーワードの詰め込み、リンクファーム(例えば過度の相互リンク)、Webクローラーとユーザに異なったページを見せる手法(英語でCrawler-browser cloakingという、これはSEOが施されたページをクローラーに見せ、ユーザにはSEOは施されていないが見栄えが良いサイトを見せるという手法。例えばフラッシュで作られたサイトは検索エンジンとの相性が悪いためしばしばこの手法が用いられる。現在でもこの手法が蔓延っているのか分からないが・・・(もう古いテクニックでは?))などがある。最近の手法としては、スパム調査員から逃れるための手法として、click throuth cloakingというものがある。直接URLを入れて入力してきた人に対して偽のコンテンツを見せるというものである。(お気に入りから直接来た人はどうするんだと思ったが、スパムページだとお気に入りに登録する人などいないはずだから良いのだろう)

 

 我々はブラウザーに有名なスパマーによって制御された第3者ドメインを訪れるようにリダイレクトするリダイレクトスパムを扱う。多くのリダイレクトスパムページはシンジケーションを使っており、そこでスパムページの管理者はPay-Per-Clickプログラムに参加し、広告のポータルページを表示する。

 この論文では、我々はシンジケート(アフィリエイト会社やアドセンスのようにPay-per-Clickを行っている仲介業者)が絡んでいるスパムに特に注目して、リダイレクションスパムの活動を総括的に解析する。そして我々は5層2じょうごモデルを提案し、広告をスパムページに表示する流れと広告をクリックした時のトラフィックの流れを表現する。2つの異なった広告の検索用語のベンチマークを構築しStrider Search Ranger system[21]を何万ものスパムリンクを解析するために使い、我々は5層のそれぞれに存在する主要なドメインとドメインの特徴を発見する。

以下2章でSearch Ranger systemを概観し、ダブルファンネルモデルを説明する。3章ではスパマーを対象とした(リダイレクションスパムで良く狙われるターゲットで)検索ベンチマークを作る(スパム対象となる検索語を上から順にピックアップする)。4章ではスパム密度とダブルファンネルを3章で作成したベンチマークを用いて解析する。(どのカテゴリがスパムが多いか、スパム先のサイトはどのサイトが多いかなど)5章では広告主をターゲットとしたベンチマークを作り(入札キーワード額が高い順で検索語をピックアップ)、解析結果を4章の結果と比べる。(広告主が低いクオリティのサイトにリンクをはられて損をしないためにこのような調査も必要?)6章ではリダイレクトのないスパムであるがダブルファンネルモデルと関係するスパムについて討論する。7章では関連研究を述べ、8章では結論を述べる。

  

2.REDIRECTION SPAM

2.1 Definitions:Search Spam and Redirection

リダイレクトスパムは多くのドアウェイページと一つのリダイレクションドメインを結びつけるために大規模なスパマーによって広く使われている。またサーチスパムの中でもRedirectionのスパムはスパムであると決めやすい部類に入るということが書かれている。例えばクローキングや掲示板への大量の書き込みなどを行っている。スパムと適正なSEOとの区別が難しいがドアウェイページはスパムと断定しやすい要素が多くあり扱い易い。

 リダイレクトにはアドセンスのようにセカンドドメインから広告を取ってくる形式のものとセカンドドメインそのものにURLごとページを移動するものの2種類がある。本研究ではその両方を扱う。

2.2 Strider Search Ranger System

Strider Search Ranger Systemは以下のような3つの特徴を持ったスパムを自動で発見するシステムである。

  1. Web Patrol with Search Monkeys[19]

clawler-browser cloakingテクニック(人とクローラーに異なるページを見せるテクニック)を使うスパマーに対してはクライアントサイドも含め全てのスクリプトを実行することによりこれを見破り、click through cloaking テクニック(直接のURL入力に対して異なったページを見せるテクニック、サーチエンジンから来たユーザのみにスパムページを見せる)に対しても、サーチエンジンをクリックしたと見せかけるテクニックによりこれを見破る。

  1. Follow the money through Redirection Tracking

全てのリダイレクトのURLをStrider URL Tracer[20]により盗み出す。

  1. Similarity-based Grouping for Identifying Large-scale Spam

人気のあるクエリから高いスパム密度(high spam density)を得たURLを収集し、その収集したページの類似度(表記はないが恐らくhtmlの構造の類似度)を調べる。調べると、類似度の高いものが同じリダイレクトドメインに繋がっていることが多い。そしてこのように検出されたスパマーは大々的にスパムを行っている場合が多い。次にリダイレクトドメインがスパムコンテンツに対して責任があると確認したのち、そのリダイレクトドメインをシードとして“backward propagation of distrust”[13]を使い他の類似度の高いページを洗い出す。


Search Ranger のスパム発見プロセス

ステップ1:

検索語をサーチエンジンに投げ、Search Monkeyがそれぞれの検索語に対して上位N番目の結果を取り出す。そしてそれぞれのURLをスキャンし全てのURLリダイレクションを記録するXMLファイルを生成する。

ステップ2:

スキャン後、SearchRangerはリダイレクション解析を行う。そして有名なスパマーのリダイレクションドメインにリダイレクトしているURLをスパムと見なす。

ステップ3:

Search Rangerが分類されなかったURL(すなわち有名なスパマーのリダイレクションドメインにリダイレクトしていないURL)を、リダイレクトのトラフィックを受け取った第3者ドメインによってグループ化する。

ステップ4:

Search RangerがサンプルURL(どの辺がサンプルなのか不明??)をそれぞれのグループからスパム検証器に送る、そして検証器はスパムとなりえる要素がないかを調べる。(cloakingや掲示板への大量書き込みなどをチェック)

ステップ5

Search Rangerが分類されなかったURLのグループを出力(この時点でスパムとなり得る要素の値やグループの大きさが一緒に送られる)、人間によってスパムかどうか審査される。スパムだとしたら有名なスパムドメインの集合にそのリダイレクションドメインを加える。


2.3 Spam Double-Funnel

典型的な広告シンジケートビジネスは3つの層からできている。ウェブサイトに魅力的なコンテンツを乗せて集客するサイトオーナー、ウェブサイトに乗せる広告を配信する広告主、広告主とサイトオーナーを繋ぐインフラを提供するシンジケーターである。グーグルアドセンスはシンジケーターの例である。疑わしい広告ビジネスにおいて、スパマーはサイトオーナーの役割と見なす、彼らはクオリティの低いコンテンツを用意し、好ましくないSEOテクニックを使い集客する。スパムが発見されるのを防ぐために、多くのスパマーはオペレーションを2つの層に分断する。最初の層がドアウェイページであり、ドアウェイページのURLはスパマーが検索エンジンの上位に組み込むように努力する。ユーザがドアウェイページへ入ると、ブラウザがスパムコンテンツをリダイレクションドメイン(第2層目)から取ってくるように指示する。スパマーとの結びつきを求めない賢明な広告主のため、多くのシンジケーターは彼らのオペレーションを2つかそれ以上の層に分けている。層は複数のリダイレクトによって結びつけられていて、広告主とスパマーの関係を分かりにくくする。(シンジケーターが広告主を騙す)これらのシンジケーターは大抵小さい会社なので、彼らはしばしば十分なトラフィックのプロバイダーと広告主をひきつけるためにトラフィックアグリゲーションを通じて協力する。

 私たちはこのスパムビジネスを図1のようにモデル化した。広告主はシンジケーターにお金を払い、シンジケーターはアグリゲーターにお金を払いトラフィックを集める。アグリゲーターはシンジケーターと広告主をスパムページから隔離するために仲介役となってトラフィックをスパマーから購入する。スパマーは数百から数千のリダイレクトドメインをセットし何百万ものドアウェイページを設置する。ドアウェイページはリダイレクトドメインから広告を取ってくる。またスパマーは掲示板にドアウェイページのURLを書き込む。


  1. SPAMMER-TARGETED KEYWORDS

リダイレクトスパムで共通の特徴を掴むために、リダイレクトスパムでよく狙われるキーワードとカテゴリを調べた。その結果ほとんどが薬と着メロとギャンブルに関するものであった。以下カテゴリ別にキーワードを示す。

Drugs:phentermine,Viagra,cialis,tramadol,xanax,etc.

Adult:porn,adult dating,sex,etc.

Gambling:casino,poker,roulette,texas holdem,etc.

Ringtone:verizon ringtones,free polyphonic ringtones.etc.

Money:car insurance,debt consolidation,mortgage,etc

・・・残り5カテゴリ

各カテゴリから上位100キーワードをとり1000個のスパマーに狙われる検索語をピックアップした。


4.Redirection-spam analysis

1000個のキーワードでクエリを主要3検索エンジンに投げ、それぞれトップ50のサイトを収集し、リダイレクトスパムを摘出したところ11.6%がスパムであった。我々は最初にカテゴリ別のスパム割合を調べ、その次にダブルファンネルモデルの解析を行う。

4.1 Spam Density Analysis

カテゴリ別のスパムの割合は図2のようになった。薬と、着メロでスパムが多かった。

4.2 Double-Funnel Analysis

我々はダブルファンネルモデルの5層を解析し、それぞれの層にどのようなドメインが関係しているのかを調べ、サーチスパムの傾向を捉えた。

4.2.1 Layer #1 Doorway Domain

図3はドアウェイページへのリンクがどれだけ発見されたかのを表している。また図4は図3のドメインの中でどれくらいの割合でスパムリンクが含まれていたかの割合を示す。


Spam Pages on .gov and .edu Domains

.govや.eduのような商業用でないトップレベルドメインは顕著にスパマーに狙われていた。

図5は.gov/.eduドメインの中で最もスパムの多いURLを持ったドメインを示している。これらは3つの種類に分けられる。それらはUniversal redirectors,Unproteted upload area,Home page-like directoriesである。(ハッキングして何かやってるんだろうが技術的な事はわからない)


4.2.2 Layer #2 Redirection Domains

図6はリダイレクトドメインをドアウェイページにリダイレクトしている数によって上から15個並べた図である。そのうち12個はシンジケートベースであり、テキストベースの広告のポータルページを配信している。2個はポルノ広告を、1個は商業のウェブサイトを配信している。またこれらのドメインの所有者は同じである場合が多く、一握りの主要なスパマーグループが複数のリダイレクトドメインを保持していることがわかった。


4.2.3 The Bottom Three Layers

次に我々はads portalサイト(広告だけをやたらと配信したサイト)のスパムページに焦点を置き12635個のスパムページから5172個のads portalサイトが見つかった。3層と5層に対して、我々はターゲットとなる広告主のURLをads portalサイトから抽出して解析した。4層では、我々はそれぞれのads portalページから一つをランダムに選んで訪問してみて、リダイレクトのトラフィックを記録した。これはシンジケーターのドメイン名が広告ページのコンテンツに現れていないので必要である。

Layer #3 Aggregators

図7はスパムページで広告がクリックされた時、そのトラフィックを受け取るドメインを受け取る広告の数に応じて上から順に並べたものである。

するとトラフィックを受け取るドメインは64.111.のドメインと64.230のドメインの2つでほとんどを占めていることがわかった。


Layer #5: Advertisers(Page analysis)

広告主のドメインネームはしばしばアンカーテキストかマウスオーバーで見ることができる。そのようなドメイン名をads-portalページから取り出し、登場回数順に15位まで並べたところ図8のようになった。ebay.com,orbitz.com等の有名なサイトも見られた。


Layer #4: シンジケーター(click-through analysis)

クリックの解析において、一握りのシンジケーターがリダイレクトの連鎖に含まれている。

Findwhat.com/looksmart.com/7search.comで全体の59%を占めた。彼らはスパムトラフィックアグリゲータと広告主の主要な仲介役のようである。


5.ADVERTISER-TARGETED KEYWORDS

4章では最もスパムの多いキーワード群をベースに5層の解析を行った。しかし、検索する側のユーザや広告主にとって最も関心が高い事は、検索結果にスパムがどれだけ悪影響を及ぼしているかであろう。スパムの多いキーワードであってもあまりユーザや広告主が重視しないようなキーワードであれば問題がない、そこで最も広告の入札額が高い1000個のキーワードについて同様に実験を行った。


5.1 Benchmark of 1000 Most-Spammed Advertiser-Targeted Keyword

入札額上位5000番までのキーワードに対して主要3検索エンジンにクエリをなげスパムの多かった1000キーワードを選択した。するとドラッグやアダルト、ギャンブルの広告が少なくなり他の様々なカテゴリが上がってきた。


5.2 Spam Density Analysis

全体で95753のURLに対して6153個のスパムを発見し、スパム率は5.8%であった。これは前回の実験の半分である。これはスパム率が高いカテゴリが少なかった(ドラッグやアダルトのジャンルのキーワードが少ないのでスパム率が下がるのは当たり前)のと、前回の実験の2週間後に実験を行っており、主要3検索エンジンがスパム除去に乗り出したことが原因として考えられる。(これは微妙だとは思うが)


5.3 Double-Funnel Analysis

我々は5層を解析して、最初のベンチマークと比べた。全ての図で最初のベンチマークで出てきたものと同じものはグレーで表現している。

5.3.1 Layer #1:Doorway Domains

図9はドアウェイページのドメインの上位15個である。スパムが多いキーワードで行った前回の実験(図3参照)との違いは、.infoドメインが増えているという事である。テーブル1から.infoがスパムである確率が.comに比べて異常に高いことが分かる

5.3.2 Layer#2: Redirection Domains

図10は上位15位までのリダイレクションドメインを表している。全てシンジケーションベースとなっていた。ドラッグやアダルトのスパマーがお金に関するサイト(car insurance,mortgage等)のスパマーに入れ替わったのが大きな違いであった。


5.3.3 The Bottom Three Layers

6153のスパムURLのうち2995個の広告のポータルページを抽出した。

Layer #3 Aggregators(Page analysis)

図11は相変わらず66.230と64.111のIPがスパム広告のクリックを受信していた。合計で6153のスパムURLのうち6041個がこのIPを経由していた。

Layer#5

図12は上位15位までのスパム先からたどり着く広告主であり、これは図8のものとかなり違っていた。よく知られたショッピングサイトが多くランキングされるようになった。ここから広告主がターゲットとするキーワードは、スパマーがターゲットとするキーワードよりもショッピングのWebサイトにマッチしているという事が言える。

Layer #4 Syndicators

上位3位のシンジケーターはlooksmart.com、findwhat.com,7search.comであり全体の68%を占めていた。これらのシンジケーターは検索スパム産業に広く深く関わっていることが分かった。


6.OTHER COMMON SPAM

6.1 BLOG FARMS

同じサイトのフォーマット(具体的には良く分からない)で同じブログファームに属しているが、ターゲットとなるキーワードが違うページを発見。

6.2 PARASITE ADS-PORTAL FARMS

既存のサイトに寄生してスパムを逃れる手法。http://(既存のサイトのURL)/(寄生URL)

としてページのアドレスを決定することでスパムを逃れる。


7.RELATED WORK

クローキングに関連する研究

クローキングとリダイレクションを,スパムを隠す戦略であると見なした(Garcia-Molina[8])

クローキングとリダイレクションのWeb検索結果での割合を調べ実態を調査した。また分類機を作成する事でクローキングを発見する方法を提案した。

(Wu and Davison[23],[25])

我々のSearch Monkeysは機械が検索ユーザに成りすますことで、新しいクリッククローキング手法(検索結果以外のクリックに対して他のページを見せるクローキング手法)にも対応できる。


お金とスパムの関係の研究

お金はスパマーにとっての最も大きいインセンティブである。

Jansenはクリック詐欺の問題にも関わらず、スポンサードサーチがスパムの総量を減らすことができたことを観察した。[9](意味不明)

Sarukkaiは検索語の値段(キーワード代の目安のことだと思う)の定量化の手法を提案した。[17]

ChellapillaとChickeringは検索語の上位5000と、キーワード代の高い順の5000を比べ、キーワード代の高いもののサイトの方がスパムが多いという経済的な側面を発見した[5]


リンク関連の研究

スパムをリンクの観点から減らす研究として、不信頼性に基づいたものがある。

スパムサイトのシードからリンクをたどりスパムの度合いを求めていくAnti-Trust Rank(Krishnan and Raj)[12]、似たようなものとして[13],リンクファームについての研究[24]等がある。その他相互リンクに着目した研究[4],[6]、既存のリンク解析技術をスパムの観点から比べた研究[3]等がある。我々の研究ではリンク解析はスパムURLの掲示板への書き込みを解析する事しか行っておらず、リダイレクションの解析に依存してスパム発見を行っている。


コンテンツ関連の研究

ページ内容をアンカーテキストやメタタグから解析して分類器を作りスパムを判定するもの[11],またURL構造や更新期間などからスパムを解析する手法[7],タイトルで使われている言葉や、目に見える割合(恐らくJavascriptなどのプログラムの部分を除いている)に着目したもの[16]、HTML構造の類似性からページ製作者を特定するもの[18],ブログとそれに対するコメントの言語モデルを比較するもの[14](恐らくコメントがスパムなのかそうでないのかを比較する)などがある。


1


2008年7月6日日曜日

Google 京都 Tech Talkに参加



Googleが京都でイベントを行っていたので行ってきた。

どうもGoogleはやりたい事がある人がやりたい事をやる会社らしい。競合の会社とかほとんど考えてないんだとさ、まあ確かにグーグルマップとか今のところどうやって採算とるんだって感じがするし。むしろユーザエクスペリエンスの向上のみを考えて仕事をやっている感じ

まあ資金に余裕があるって事ですな

APIの公開の技術者の心は、他のエンジニアがそれを使って作った作品とかが見たいからっていうのも大きいらしい。

今(教えられないが)ちょっとグーグルマップでやりたい事あるからそれが大学院卒業するまでに終わらなかったらグーグルの門を叩いてみるといいかもしれない。(最も採用されないかもしれないが・・)

写真は記念品、Tシャツまでもらえるとは思わなかった、けど長袖だからこれから着れない・・・

2008年4月14日月曜日

研究論文から垣間見る中国人の国民性

Exploring in the Weblog Space by Detecting Informative and Affective Articlesより(www2007)

この研究はブログ記事をある観点から2つに分類するのという事を行っている。
分類する2つについて述べると、一つは個人的な感想を述べた日記的なブログ記事であり、もう一つは事実や客観的な意見(大衆的な意見?)を淡々と述べたような新聞やニュースサイトに載っているようなことを書いたブログ記事である。
ブログというものは本来、特に日本では個人の日記という意味合いが強いため、前者の日記的なブログ記事が大半であると思うかもしれないが、ブログ検索エンジンでブログを検索してみるとニュース記事のようなブログ記事も多く引っかかってくる。
個人の意見(一般市民の意見)を抽出したい時にニュース記事みたいな記事が引っかかってきてうざいからこのような研究を始めたのだと最初思ったのだが、実はそうではないみたいである。
この研究ではニュース記事のようなブログ記事を良質なブログ記事とみなしていて、個人の感想は有用ではないとしているのである。
ブログにニュース記事を求めるのは意味がわからないっということで議論していたところ、次のような結論に落ち着いた。この論文を書いた人は中国人であり、中国は社会主義国家である。すなわち個人が好き勝手な感想を述べてもらっては全体の統一を取る上で困る、だから個人の意見などは排除してやろう。
ブログの本質は個人による情報発信にあると思っていたが、中国では意外とそうでもないのかもしれないと思った。研究というよりも文化を知る上でこの論文は重要ではあるまいか!

2008年4月10日木曜日

Internet-Scale Collection of Human-Reviewed Data

内容は機械学習などで使うラベル付けを考える時に、企業内や他の企業へのアウトソーシングを行うよりも、インターネットを利用して大衆の力、すなわち集合知を使った方がより安く速くラベル付けが行えるのではないかという考えの元、システムMというアプリケーションを使ってそれらを実証する実験を行っている。システムMはWeb上で集めた労働者に賃金を払いラベル付けを行ってもらうシステムである。ユーザの集め方の具体的な方法については書いていないのが残念ではあった。なぜならユーザを集めるのにお金が掛かっていては結局企業内でラベル付けを行ったほうが安くて済むかもしれないからである。またヤフーアンサーを使ってラベル付けを大衆にしてもらおうという試みも行っている。これはうまく行けば無償でラベルデータを手に入れることができ非常に便利であるが、Q&Aの方式で書かれた文書を機械可読な方式で置き換えるのは非常に難しい話である。そんな時Q&A方式のサイトをもう少し拡張して、多数決やラジオボタンを使った複数選択形式のアンケートを導入できれば機械可読できる確率が高まり有用である。

  1. INTRODUCTION

最近の企業やWebコンテンツ管理システムは、異なるソースからデータを統合することを自動化している。例えばヤフーショッピング、ヤフートラベル、ヤフーローカル(地域の口コミ、就職情報などを検索するアメリカ限定のサービス)などではコンテンツを有料フィードプロバイダ(有用な構造化されたデータを有料で提供しているサービス会社か?)やユーザやWebクローリングから収集している。人手により評価されたデータはそのような自動情報収集システムにおいて重要な役割を果たす。コンテンツ集約はつねに属性抽出(Attribute extraction)、カテゴライゼーション(Categoraization)、エンティティレゾリューション(Entity resolution)を含む。ここでこの3つの意味を説明しておく


Attribute Extraction:128MB(capacity),size 10,10:00-6:00(time)などの副次的な情報に対してラベル付けを行う事

Categorization:外部の分類法を用いてデータの記録を一つあるいはより多くの場所に割り当てること。

Entity resolution:データレコード間に表記の違いがあった場合、それが同じものを指しているのかを確認すること。例えばHilton San Jose,123 Main StreetとSJ Hilton,123 Main St.が同じホテルを指しているかどうかなど。

これらを合わせて、我々はACEと呼ぶことにする。またこのような技術を使ったアプリケ

ーションをACEアプリケーションと呼ぶことにする。


ACEアプリケーションは機械学習アルゴリズムの学習やルール推論や質を確かめるモニタリングやフィードバックのために、人によってラベル付けされた質の高いデータを必要とする。さらに人のレビューはしばしばデータの質を上げるために重要である。例えば外部データフィードはエラーや間違えた情報に対して人手で調整される必要があるかもしれない。あるいはユーザが作り出したコンテンツはスパムや人を不快にさせるようなコンテンツを抑える必要があるかもしれない。(?エラーやスパムを人手により評価されたデータにより抑えられるという事だと思う。)

 効果的に人が評価したリソースを活用する研究は今までにある、特にアクティブラーニングの領域で顕著である。アクティブラーニングは最小限の人を用いて、機械学習のパフォーマンスを最大限に向上させようというものである。ところが人がレビューしたデータを大規模に集める仕組み、人手のデータを提供する回答者の行動に関する研究はほとんど行われていない。

 工業において、人手により評価されたデータを収集するためには一般的に低コスト契約作業員を使用する。これらの作業員は前述したACEアプリケーションで活用するためにデータのラベル付けを行う。このレビューとラベル付けの生態系(ecosysytem)はラベル付けに対して一つの便利なビジネスインタフェースを提供する。しかしますます上昇する関連コストに対して統合された供給連鎖管理システムの潜在性と処理能力と同様に拡張性の限界を持っている。(要するにラベル付けされたデータを作るのにわざわざ低コスト契約作業員を使っていては、大規模システムになるにつれてコストが嵩んでいきシステムの拡張に無理が生じるということ。だからそれ以下のコストでラベル付けされたデータを集める仕組みが必要なのである。)

一方でGoogle Image LabelerやAmazon Mechanical Turkは人手のデータを収集するためインターネットユーザの集合知を活用しようと試みている。潜在的に人が評価したデータを収集する技術プラットフォームとして、これら2つのシステムを凌駕するものとして我々はYahoo! Answersのような一般的なQ&Aの場を挙げる。

インターネット規模で人手で評価されたデータを集めることにより外注や企業内でラベル付けを行う場合のボトルネックとなる処理能力の問題を克服でき、さらにコストも抑えられるのである。

この論文は、データの質とタスクの処理能力とユーザの振る舞いに焦点を当てた人により評価されたデータをインターネット規模で収集するメカニズムの最初の公式の研究である。我々は一般的なQ&Aサイトが人手により評価されたデータの収集に使えるか調べるためにYahoo!Answers上で人手で評価されたデータを集める実験も行った。

  1. RELATED WORK

    1. Active Learning and Collaborative Filtering

教師あり機械学習アルゴリズムはACEアプリケーションにおいて共通して使われる。正確なラベルのついたトレーニングデータセットは学習アルゴリズムのパフォーマンスを上げる上で重要である。ところが人間のレビューをラベル付けに使う事はコストが高い。

Active learning[6]は限られた人手によるレビューを最大限に学習器生成に活用することに焦点を当てている。Active learningはentity resolution[16]や情報抽出[3]やテキスト分類[13]など多くのアプリケーションの分野に適用されている。

 協調フィルタリング[5],[15]はユーザが提供するデータの集合を、ユーザの嗜好を推測するために使っている。

 我々の研究はこれら2つの研究領域を補助するものである。

    1. Data Cleaning

データクリーニングはデータのエラーと不具合を発見して取り除く研究領域である。Entity resolution[4]は一般的なデータクリーニングアプリケーションである。これは実世界のものを表しているデータレコード間の関係を確認するアプリケーションである。データクリーニングの研究は大部分がアルゴリズムによる解決とデータの質による評価に焦点を当てている。しかし我々の研究ではアルゴリズムでデータを使うのではなく、そのようなアルゴリズムで使われる人手で批評されたデータを集めることに重点を置いている。

    1. Human Computation

Human Computation[19]は多数の人々を活用して計算やコンテンツ作りを実行させるという新興の理論的枠組みである。カーネギーメロン大学で開発されたESP Game[20],Peekaboom[21],Verbosity[22]はHuman Computingの模範となるゲームアプリケーションである。我々の研究はインターフェースのデザイン設計よりも人により批評されたデータの解析に焦点を当てている。Gentryら[8]によるセキュリティや信頼性の観点からのhuman computationの研究もある。

  1. SYSTEM TASKS

我々はSystem Mというウェブベースで人手のデータを収集するシステムを実験に用いる。

我々の実験は、現在のデータのサプライチェーンをシステムM上の仕事の形で複製することである。システムMは十分な遂行能力を持っており、構造化された応答インタフェースを提供し、我々の用いる人手で評価されたデータ収集アプリケーションのために多くの役立つ機能を提供する。しかしシステムMではユーザ数が少なく(limited user base)、賃金の作業員への支払いを前提としている。それとは対照的にYahoo! Answersはずっと大きいユーザ数を有しており、作業員には賃金は支払われない。ただし収集されたデータは構造化されていない。セクション5ではSystem Mでの実験をYahoo! Answers上でも行う。

    1. System M Overview

システムM上で、依頼人は作業人に仕事を与える。与えられたタスクに対して依頼人は、タスクが作業員に承認されるまでの寿命、仕事を受け取ってから完了するまで間での長さ、受け入れるべき答えの数、承認された答えごとに支払う報酬を指示する。依頼人は受け取った答えを承認するか却下するか一方的に決定できる。承認された答えだけが課金対象となる。

 システムMではタスクを割り振る前にまず作業員にテストを行わせることで、作業員の作業の正確さを判定し、資格スコアを算出する。そのスコアに応じてタスクを割り振る。そして一度資格スコアが決定するともうそのスコアを更新する事はできなくする。

 

    1. Tasks and Datasets

我々の実験は属性抽出とentity resolution(存在解決)の2つのACEアプリケーションに焦点を置いている。Entity resolutionでは2つのホテルのデータが与えられ、その2つの名前や位置や電話番号が同じであるかそうでないかなどを判断することを作業員は頼まれる。

 属性抽出では、一つは子供か大人かの年齢カテゴリーを選択する。後の2つはブランドや、モデルを製品についての記述から選択し、自由記述する。我々がこれら4つのアプリケーション選んだ理由は、これらが人手でラベル付けされたデータが必要なYahoo!Marketplaceのバックエンドデータ処理システムの中のコンテンツ収集アプリケーションを代表するものであったからである。(実際にマーケットプレイスでラベル付けデータを用いている)

 この実験に使われるデータセットは人手でラベル付けされた優良データセットの一様乱数サンプルである。


  1. EXPERIMENTS

    1. System M Qualification Tests

最初の実験として、我々は4つのアプリケーション(ホテルの解決、年齢抽出、ブランド名抽出、モデル抽出)それぞれに対して資格テストをシステムMに投稿した。資格テストには料金は支払われない。

 ホテル解決テストは20個のホテルの記録のペアが与えられ、作業員はそれが「同じホテル名かどうか」、「同じ位置にあるが名前が違うか」、「同じホテル名であるが場所が違うか」、「完全に異なるものか」、「その他」の5つを選択する。

 年齢、ブランド、モデルについてはまず製品の記述が与えられる。年齢では「大人」か「子供」か、「判定できない」かを選択する。ブランド、モデル抽出テストについては作業員は製品のブランドやモデルをタイプする。

    1. System M Experiments

      1. Experiment Settings

資格テストにより作業員の能力がわかったので今度は作業員の能力別にグループ分けをして資格があるグループと、無いグループを分ける事の有効性を確かめる。まず能力、実験別に11のグループに分け、それぞれのグループに対して300のタスクを課した。

また1つのタスクに付き1セントが支払われる。実験で設定したパラメータは表2の最上部にある通りである。

      1. Accuracy Results

実験結果を表2に示す。

図3~6は作業員の正確さの離散分布であり、正確さを[0,0.05]~[0.95,1],[1,1]の21分割で離散化してグラフで表している。

図7は作業員のタスクでの正確さと作業員のテストでの正確さの関係を示している。これによるほとんどこの2つには相関がない。

      1. Worker Productivity Results

図8は回答数で上10%に入っている人が、全体のタスクのどれだけをこなしたかを示したグラフであるが、これを見るとおよそ20~40%のタスクを上10%でこなしていることがわかり、データが不均一である事がわかる。

図9は作業員の正確さと300問のタスク中何%答えたかの関係であり、10%未満しか質問に答えていない作業員は正確さにかなりばらつきがある事がわかる。

 また仕事を請け負った時間と提出した時間を計ることで、作業員の時給を計算し、分析した。その結果が表3のようになる。この表から

        1. 資格の制限が無くなれば無くなるほど時給が増える

        2. 300問中の5%以上の質問に答えている人は時給が他の人に比べて高く、正確さも若干高くなる傾向がある。

        3. 高時給の人ほどたくさんの質問に答えており、回答も正確である場合が多い。

        4. ほとんどの場合最低賃金率(アメリカではどれくらいか知らないが)を大きく下回っている。

という事が分かった。

      1. Worker Accuracy Across Task Types

図4は作業員が11種類のタスクのうち何種類のタイプのタスクに従事したかを示す図である。全体と、各タスク5%以上の質問に答えた作業員で場合分けしている。我々はさらにタスクのタイプ別に作業員の答えの正確さを調査した。どのタイプのタスクでもコンスタントに正確な作業員もいた。一方でタスクのタイプによって正確さが大きく変わる人もいた。2つ以上のタイプに回答していた人は、全体と各タスク5%以上答えていた人両方とも、正確さが高い人が多かった。

  1. Yahoo! ANSWERS

巨大なオンラインのソーシャルネットワークサイトを人手により評価されたデータの収集に使えないだろうか?そこでYahoo! Answersで実験してみることにする。Yahoo!Answersはトピック別ディレクトリで構成された巨大Q&Aサイトである。これは、ユーザーの献身的行為であり、ユーザには報酬が支払われないという点でGoogle Image Labelerと類似している。2つの疑問が浮かび上がった、一つ目はYahoo!Answersのコミュニティに我々のアプリケーションを導入できるかどうか。もう一つはAnswersの技術プラットフォームが我々のアプリケーションに活用できるかどうかである。これらの質問に答えるため4日間81個の資格テストの質問を手動でYahoo!Answersに投げかけた。それぞれの質問の有効回答期間は3日であった。

 その結果95%の質問に対して最低1つの答えが返ってきていた。我々は手動でそれらがスパムかどうか、役に立つか、質問に答えているか、機械可読可能か、正解かを調べた。表5はその詳細である。

 最も大きい課題は構文解析である。これはまずスパムや役に立たないデータと役立つデータに分類する。次に冗談や、文法的な曖昧さを解消しユーザの意図を解析する。そもそもYahoo!Answersは人的交流を意図して作られているため機械可読にするのは難しい。ブランドやモデルの抽出においてテンプレートマッチングを用いる事もできるが余すところ無くマッチングする事は不可能で明らかな限界がある。

 しかしそれでもある程度の有効回答を得ることができる。またYahoo!Answersの質問に「機械処理するので余計な文章を書かないで」と明記する、あるいは選択形式で質問に答えられるようにするなどYahoo!Answersのインフラを変えていけば、巨大Q&Aサービスを使う事はより人手により批評されたデータを得るのに有効な手段となるはずである。

 

  1. CONCLUSIONS

この研究で、我々は人手により評価されたデータを集めるために、人手により評価されたデータの質、人間の処理能力、ユーザの行動を解析する実験を行った。この研究の主な貢献は、実際に実験して得たのデータセットを使ったことと、その結果得られたデータの質とユーザの行動の徹底的な解析にある。我々の出した正確さのデータは実際のACEアプリケーションにとって非常に励みになるものである。機械学習のためのトレーニングセットのラベル付けや質の確かさを保証するためのモニタリング(quality assurance monitoring)を行いたい場合、これらのデータは参考になる。

 将来的には未来のWeb情報統合システムや内容収集システムは人手により評価されるデータを収集するインターネットベースのシステムと整合を取るようになるだろう。例えば必要に応じてデータ処理システムが、データ収集システムに人間のレビューを要求するようになるであろう。将来の課題として、より大規模に人手により評価されたデータを収集するシステムと作業員のやる気を起こさせるような設計について調査し、より大規模な実験をしていきたいと思っている。またYahoo!Answerからうまくデータを取り出せるような構文解析法や、データを機械で取り出しやすくするようなリッチなインターフェースを考えて行きたい。

6.1 Data Validation Application

この節では人手により評価されたデータを用いるアプリケーションについての議論をデータ検証に拡張させることを考える。人間こそがラベル付けを行う唯一の権威であるから、人間により評価されるデータはACEアプリケーションにとって非常に重要である。しかし人間の判断もあいまいであるし、そもそもデータそのものに曖昧さを含むものがあるためラベルデータはそれ自体完璧なものではない。そこで人間が以前の人手により評価されたデータを検証して、それをフィードバックしていくことによりデータの質と信頼性を向上させることができる。

2008年2月15日金曜日

テキストの自動分類の簡単なまとめ

テキストの自動分類について研究で調べる必要があったので整理してみた.何かの役に立つかもしれないです.

テキストの自動分類に関する研究は1960年にMaronが行った事例が発端とされている.その後1990年代に入り,Webで大量のデータが手に入るようになり,活発に研究されるようになった.
テキスト分類は大きく分けて2つあり,一つは予めカテゴリを定めずに,類似する主題を持つテキスト集合をグループ化する手法であるクラスタリング,もう一つは予めカテゴリを定めておいて,そのいずれかに新たに入ってきた文章を振り分けるテキストカテゴライゼーションである.
テキストカテゴライゼーションにおいて,どの語を分類ルールの生成に使うか,という問題があるが,これについてはN-gramという文章をN個ずつ,単語を一つずつずらしながら区切っていき,それらを語とする方法と,形態素解析という,予め辞書に単語を登録しておき,文章中の文字を辞書と照合することにより,文章を単語に分解していく手法がある.さらに分類精度を高めるために,より文書分類に重要な語を抽出しようという試みもある.これには言語特徴を用いた手法と,統計的特徴を用いた手法の2通りがあり,通常は両方を合わせて使う事が多い.言語特徴として,言語には語と語の関係を表し,それ自体は意味を持たない機能語と,語自体がある概念を表現している内容語に分けられる.機能語は助詞や助動詞を指し,内用語は主に名詞や動詞である.形態素解析を用いている場合は品詞情報を得ることが可能であるので簡単に機能語と内用語を分類する事ができる.一方でN-gramを用いている場合は全てカタカナや,全て漢字が使われている語は内容的に意味を持つ可能性が高い,特に漢字は主題的特徴を現している事が多いという事で,これらを重要語として抽出することが多い.次に統計的特徴として,該当カテゴリにおける語の出現頻度TFや,ある語が出現するテキストがカテゴリに属しているテキスト数DF,あるいは相互情報量,カイ2乗統計を使ったもの,またそれらを組み合わせて使ったものなどが存在する.また統計的特徴を用いたものとしてLSI(Latent Semantic Indexing:滞在意味インデキシング)という方法もあり,これはカテゴリ内で同時に出現する傾向のある複数の語を一つにまとめてしまうもので,例えば「情報センター」という言葉を「情報」と「センター」という2語ではなく1語として捉えることを言う.
分類ルールの作成に関しては,1980年代までは知識ベースのアプローチが主であり,人手で書かれた規則を用いる方法が一般的であったが,1990年代に入ると機械学習を用いた手法が多くなりサポートベクターマシン等が使われるようになった.

2008年1月13日日曜日

クロスレコメンドの効果は?

2006年の春から始まったディレクトリサービスにクロスレコメンドというものがある。これはWebサイトを複数の大手ポータルサイトのディレクトリに登録するサービスである。4万2000円を払い審査に通るとgooやexcite,biglobeなど相当たるサイトのディレクトリに登録される。さてこのサービスにはどれ程のSEO効果があるのだろうか?ちなみに巷ではアクセスアップおよびSEOに対して効果があると様々なメディアで取り上げられていたり、あるサイトではほとんど検索順位が上がらずSEO効果はなかったと書かれていたりと賛否両論である。まあしかし実際にクロスレコメンドに登録して順位が上がったとしても今の検索エンジンは複雑なのでそれがクロスレコメンドへの登録によるものなのか他の要因によるものなのかなどは分かる術はない。そこで検索エンジンのアルゴリズムを考慮してクロスレコメンドの効果について考えたいと思う。
 まず効果があると思われる点が、信用の置ける大手ポータルサイトからのリンクされるという点、それも複数のドメインからのリンクであるという点である。
 質の低いスパムサイトに多数リンクしているようなページからのリンクであればほとんどSEO的には効果がないが、大手ポータルサイトのような質の非常に高いサイトからのリンクは非常に有用なものとなる。さらに複数の大手ポータルサイトからのリンクを受けることになるのでその効果はかなりのものであると言える。また相互リンクではSEO的な効果は半減してしまうが(検索エンジン側でアルゴリズムを公開しているわけではないのでおそらくとしか言えないが常識的に考えればそうだろう)受けるのは一方的な被リンクなわけであるからこれもかなりSEO的にプラスに働いてくるといえる。さらにヤフーディレクトリと比べて登録サイトが少ないのでこの点でもSEO的にプラスである。
 逆に効果が減少してしまうんじゃないかという懸念要素として、検索エンジンの高度化によるクラスタリング機能がまず第一に考えられる。クラスタリング機能とは検索エンジンが内容の似通ったページを類似ページ、ミラーページとしてみなすことである。類似サイトとみなされたページからのリンクはSEO効果が下がるかあるいは全くリンクとしての価値がなくなってしまう恐れがある。ところでこのサービスのリンク集はクロスレコメンドが作っているので、リンク集はgooであってもexciteであってもniftyであってもほとんど同じとなる(リンク先ページとその説明は完全に同じ、サイトのデザイン部分が違うだけ)。すなわちこれらのリンク集は互いに類似ページとみなされてそのSEO価値を失う可能性は大いにある。現在グーグルではクロスレコメンドのディレクトリに対してこのクラスタリングがなされていると思われる節がある。グーグルのバックリンク情報を調べたときにクロスレコメンドと契約しているポータルサイトからのリンクが1つしか出てこない場合が多いからである。(gooからのリンクだけバックリンクとして表示されている場合が多い、ただし実際にクラスタリングされているかどうかはイマイチよくわからない)、YSTに関しては今のところそのような節は見当たらないが、ヤフーディレクトリ側としてはクロスレコメンドは競合サービスといえるのでヤフーディレクトリに登録するよりクロスレコメンドに登録した方がYSTに効果があるなんて事になっては絶対にいけない。だからYSTのアルゴリズムを近々変更してクラスタリング機能を強化してくる可能性は大いにあり得る話だと思う。
 その他のSEO効果が減少する要素としてはリンク集サイトのSEO価値の低下、ディレクトリサービスが始まってから経た年月が少ない(2006年サービス開始、検索エンジンは昔からあるサイトを重視する傾向がある)ということなどが挙げられる。まあこれは最初のクラスタリングに比べたらあまり重要な要素ではないが。
 で、結局総合して考えてクロスレコメンドの効果はどうなんだって事なんですけどグーグルの検索エンジンに対しては割と大きな効果が期待できそうです。クラスタリングに引っかかるとしてもページランクの値の配分に関してはクラスタリングとは何の関係もないです。クラスタリングで他の要因がマイナスになるんでしょうけどそれでもYahooディレクトリに登録するよりはクロスレコメンドに登録したほうが効果が高いと思います。またYSTに関してですけど、こちらはヤフーディレクトリへの登録よりは効果が薄い気はしますがYSTはポータルサイトからのリンクを重視する傾向があるのでそれなりには効果が望めそうです。下手すればヤフーディレクトリを上回る効果が得られるかもしれません(まあ後々上回らないように手を打たれるような気もしますがw)
 まあ複数の大手ポータルサイトがそれぞれ独自にディレクトリを作っていたと仮定してそれに全部登録するよりはSEO効果が薄いけれどもそれなりのSEO効果は十分に望めるのではないかというのが私の見解です。審査もヤフーと比べれば優しく値段も安いので試しにクロスレコメンドに登録してみたらどうかと思います。

 

2008年1月9日水曜日

検索連動広告の掲載順位の決定法など・・ Predicting Clicks

今回の話は検索エンジンの検索連動広告についてである。どの広告をどの順番で表示すれば検索エンジン側の収益の最大化、ユーザの満足度の向上が図れるかという問題についてが書かれてある。クリック率が分かっているならば話は早いのであるが新しい広告に対してはクリック率は過去のデータがないのでわからない。そこで新しい広告に対するクリック率を様々な手法を用いて推定してやるというのが本論文の核となるところである。ちなみにこれはマイクロソフトからの研究発表であるがビジネス要素が強いこのような研究を表に出してもいいのか?と疑問が残る・・・まあ取り合えず貴重な論文ということで・・・邦訳・要約しておいたのでブログに載せときます。論文の詳細はhttp://delivery.acm.org/10.1145/1250000/1242643/p521-richardson.pdf?key1=1242643&key2=0763889911&coll=GUIDE&dl=GUIDE&CFID=49087471&CFTOKEN=54138199です。具体的な表や計算式はこちらを参照願います。またまた図や式が汚くて申し訳ないです。ワードからグーグルdocに移してそこからブログに投稿しているので汚くなるわけです。もう少し互換性をどうにかして欲しいものです。ちなみに検索連動広告を考えている人に一言いっておくと、この論文のような内容が既に検索エンジン側で実装しているとしたら、たとえ個人運営のサイトが大手の会社より多くのクリック単価を払ったとしても大手より検索順位が低くなってしまう事がかなりありそうです。クオリティの低いサイトはお金を払っても認めてもらえないということですね、頑張ってコンテンツの充実などを図りましょう!

1.イントロダクション

ほとんどの主要な検索エンジン会社は今日検索結果の隣に配置されるテキスト広告によって利益を得ている。これはクリックがユーザによってされる度に料金が広告主から検索エンジン会社へ支払われるという仕組みをとっている。このモデルをクリック単価型成果主義と呼ぶ。検索エンジン側の収入とユーザの満足度を最大にするためには、システムがそれぞれの広告に対するユーザの挙動を予測して、可能な限りユーザにクリックを促さなければならない。サーチエンジンは過去に広告がクリックされたかでユーザの挙動を予測することができる。例えば100回広告が表示されてクリックが5回されたならば、その広告のCTR(click-through rate)は0.05と推測することができる。しかしこの予測は新しい広告が入ってきた場合、すなわち過去のデータが利用できない場合は使うことができないという問題がある。

この論文では、私たちは新しく作られた広告がクリックされる可能性を予測する。我々は広告それ自体(広告の長さ、使用されている単語)、広告が指し示すページ、関連する広告の統計情報などを用いて新しい広告の将来的なCTRを合理的に予想する。


2.モチベーション

検索エンジン広告システムの主要な仕事は、サーチエンジンが受け取ったそれぞれのクエリに対してどんな広告を表示するかと、その順番をどうするかを決定することである。大抵広告主は広告が現れる状況をクエリ指定などにより既に指定してしまっているのでサーチエンジン側はマッチした広告を減らすことさえ考えれば良い。

 ユーザが広告をクリックする確率は広告の表示位置によって大きく変わってしまうので、サーチエンジンにとって最も効果的な広告を最も目立つ位置に持ってくることが収入増を考える上で非常に重要な要素になる。しかも広告数が増加傾向にあり、与えられたクエリに対して適合する広告の数は効果的な広告表示枠の数を大きく上回ってしまうことが多くさらに広告の表示位置決定は重要さを増してきている。

 広告の質(ユーザのクリックによって計測される)と総収益を最大にするためにほとんどの検索エンジンは期待収益(クリック率とクリック単価の積)の順に広告を並べ替えている。例外としてYahooはクリック単価の順番のみで並び替えているが今後期待収益の順に並び替びかえる事を検討している。それゆえ理想的な広告の並び替えを実現するには広告のクリック率を推定することが必要となる。

 表示回数が多い広告ではクリック率は単純にクリック数を表示回数で割ったものと推測できる。ところが広告のクリック率は基本的にかなり低い(2.6%程度)ため推定の誤差が非常に大きくなってしまう。例えば真のクリック率が5%であるとして85%の信頼区間でクリック率が4%~6%だと判断するには1000回広告が表示されなければならない。

不正確な広告掲載順位のランキングはユーザと広告主の満足度を低下させ、収益もダウンする。それゆえ新しくて広告表示回数が少ない広告に対して我々は過去履歴を見る以外の手段でクリック率を予測する方法を発見しなければならない。新しい広告や広告主のために広告がクリックされる確率推定することがこの論文で述べられるシステムの目的である。

 先行研究としてRegelsonとFain[19]が同じ入札語や同じトピックのクラスタによって新しい広告のクリック率を推定するというものがある。しかし我々の経験上同じ語であっても広告のパフォーマンスは大きく異なると言う事を知っている。このことを説明するために入札語以外の特徴を取り入れて考える必要がある。後述するが我々のモデルではそのような特徴を自然な形で取り入れている。


3.検索広告の骨組み

広告がクリックされるには

  1. ユーザが広告を見る

  2. ユーザが広告をクリックする

の2つの段階を経る必要がある。ここでユーザが広告を見るかどうかは広告の掲載位置のみに依存し、見られた上で広告がクリックされるかは広告の掲載位置に依存しないと仮定すると、あるポジションである広告がクリックされる確率は次のように表される。

ここでCTRをと定義する。

CTRとの減衰曲線からすべての場所での広告のクリック率を推定することができる。

 何度も表示された広告に対しては簡単にCTRを予測することができる。

広告が見られた回数=広告がクリックされた回数+クリックはされていないが見られたと思われる回数であり、広告掲載位置ごとの広告が見られる確率は実験で調べることができ、クリックされていないが見られたと思われる回数は推定することができる。最後にクリック数を広告が見られた回数で割るとCTRを求める事が出来る。

 我々の目的は新しい広告に対してこのCTRを予測することである。次のセクションではモデルの学習・テスト用のデータについて述べて、その後モデルの詳細について述べていく。



  1. データセット

我々はマイクロソフトのサーチエンジンで実際に使われている広告についての情報を集めた。それぞれの広告には以下の情報が含まれている。

    • Landing page:クリック先のURLの情報

    • Bid term(“keywords”):広告が表示されるのに必要なクエリ(広告主が事前に入力しておく)

    • Title:広告のタイトル

    • Body:広告についてのテキストの説明

    • Display URL:広告下に表示されるURL

    • Clicks:広告が何度クリックされたか

    • Views:広告が何度閲覧されたか(第3章で述べた仮定を用いる、広告の表示回数ではなく、閲覧回数は表示回数に広告掲載位置による減衰係数を掛けたものになる。)

広告主は1万、50万を超えるキーワードに対して広告の数は100万以上、10万を超える広告のテキスト

トレーニングセットとして広告主の70%、検証用として広告主の10%、テスト用として広告主の20%を選んだ。

広告のViewがあまりに少ないと実験で求めたCTRと真のCTRがかなりずれてしまうのでViewが100以下の広告は除くことにした。(トレーニングセットで学習するにあたりView数が大きい方がCTRの予測精度はノイズが少なくなるため良いが、一定のView数を獲得できなかった広告を排除してしまうため偏ったデータとなってしまう。そこでバランスを考えて100という数字を設定した。)


  1. モデル

我々はCTRを予測するためにロジスティック回帰を使うことを考える。ロジスティック回帰は値を0~1の間で予測するため本質的に確率の問題に適している。

 

(モデルのここからははっきり言って良くわからない取り合えず様々なツールを使い、情報を精度が出やすいように正規化している)

ここでは広告のi番目の特徴の値であり、は特徴の学習した重みである。

特徴はある単語が含まれているかどうかやタイトル中の単語の数などであるが詳しくは後述する。

ロジスティック回帰はL-BFGS手法[16]を用いて訓練された。我々はゼロ平均ガウス重みを用いてクロスエントロピー損失関数を使い最適な標準偏差σの値を求めた。(よくわからない)最適なσの値は検証セットからσ=0.1であった。よく行われることだが我々はいつも1にセットされるようなバイアス特徴を加えた。

それぞれの特徴に対して我々はの生成された特徴と、を加えた。1を加えた理由は最低の値を0にするためである、我々は特徴をゼロ平均になり、単位標準偏差を持つように正規化した。異常値を持つ特徴もあったので、偏差値55以上のものは55、偏差値45以下のものは45となるように調整した。これらの調整により制度の向上が見られた。

 我々の計測方法は、モデルにより予測されたCTRと真のCTRのKL-divergenceをとるというものである(KL-divergenceは低いほうが良い)。この場合KL-divergenceは一回の広告のビューの結果をエンコードするために必要となるビット数を示している。我々のベースラインモデルは単純にトレーニングセットの平均のCTRを予測することである。(トレーニングセットのCTRの平均 = テストセットの広告のCTR とする?)


  1. 入札語のCTRの予測

全体の平均のCTRとある入札語のCTRの間にはかなりの差異がある。よって広告のCTRを予測するに当たって、他の同じ入札語、あるいは関連した語のCTRを用いるのが有効である。

6.1 語のCTR

最初の特徴は、同じ入札語の他の広告のCTRである。これをトレーニングセットの広告の平均とうまく組み合わせると次のような式になる。

ここではある入札語を与えている広告主の数ではそれらの広告の平均のCTRである。またはすべてのトレーニングセットの平均のCTRを表している。

我々はロジスティック回帰に(の事だと思う)も特徴として加えた。この2つの特徴をTerm CTR feature setと呼ぶことにする。結果はテーブル1のようになり、誤差を13%減らすことが出来た。

    1. 関連語のCTR

RegelsonとFain[19]の場合と同様に、ある広告の入札語と関連した入札語を持つ広告のを利用したい。そこで入札語の部分集合と上位集合を考える。広告集合を考える、広告の入札語をtとすると、tにm語付け加えたものをと表し、tからn語を取り除いたものをと表し、t からm語付け加えてn語取り除いたものをと表す、これらの集合の総数はで与えられる。ここでこれらの集合のCTRの平均値を次の式により取る

これが関連広告の平均クリック率となり、6.1のをで置き換えて同様の計算をしたところさらに6%の精度の向上が見られた。


  1. 広告の質を予測する

前章ではCTRを入札した語だけに基づいて推測したが、それだけでは十分ではなく、入札語が同じでも図3のようにCTRにはかなりの差が生じていることが分かる。そこでこの章

では広告そのものの特徴がよりよいCTRの予測に使えるのかを試したい。そこで広告をクリックするかどうかの判定基準となるような要因を考えてみた。その結果次のようなものが挙がった。

Appearance

広告が審美的に喜ばしいか

title,body内のの単語数、効果的に大文字を取り入れているか?、エクスクラメーションが多すぎないかなど

Attention Capture

広告がユーザを引き込むかどうか

title,body内にbuy,join,

subscribeなど行動を示す言葉が入っているか、値段が書かれているかなど

Reputation

広告主が知られているか?または有名なブランドであるか?

ファーストドメイン(.comなど)、ドメイン長、セグメント数(books.comだと2セグント,books.something.comだと3セグメント)、短くて良い.comドメインは広告主が大きくて一流である場合が多い

Landing page quality

クリック先のページの質

フラッシュを含んでいるか、イメージの割合、W3Cの規定を遵守しているか、スタイルシートを使っているか、広告で覆われていないかなど

Relevance

どれだけ検索クエリが広告と関連しているか

入札語がtitleに現れるか?bodyに現れるか、bodyに現れるならその割合は?

全部で81の特徴を5つのカテゴリから挙げた。

我々はユニグラムの特徴も加えた。広告のトレーニングセットのtitleとbody中で最も使用頻度が高い10000の語に対して、語が存在したら1の値を、存在しなければ0の値をつけた。これらの特徴は我々が手動でとった特徴の機械版を意図している。これにより我々が発見できなかったような特徴もカバーできるかもしれない。

この結果さらに4%精度が向上した。しかしユニグラムの特徴を使わない場合わずか1%しか精度が向上しなかったのが驚きであった。


  1. 命令の詳細さを計測

例えば

Title: Buy shoes now,

Text: Shop at our discount shoe warehouse!

Url: shoes.com

Terms:{buy shoes,shoe,cheap shoes}

というように広告主が命令を与えておくと、広告主は靴を買いに来る人のみを限定的に狙っているということになる。ところが

Title:Buy [term] now,

Text: Shop at our discount warehouse!

Url:store.com

Terms:{shoe,TVs,grass,paint}

と命令を与えるとより広い層の顧客をターゲットしていることになる。ターゲットの絞込みが弱いともいえる。そしてターゲットの絞込みが弱いとCTRも下がってしまうのではないかと我々は考えているのでこれを実証してみる。

ターゲットの広さを測るために、我々は語のカテゴリーエントロピーを計測することにする。方法はまずTermsの語をWebサーチにかけ、その結果得られるスニペットをテキスト分類アルゴリズムにかけることでそれぞれの語を74のカテゴリーに分類する。そのあと入札語のカテゴリの分布のエントロピーを測り、それを特徴として用いる。我々は入札語の個数も特徴として加えた。エントロピーの特徴と入札語の数の特徴は命令の特異性を扱ったものである。この結果はテーブル3のようになりさらに5.5%程度精度が向上した。


9. データの外部ソースの利用

さらに広告が持つデータ以外のデータを使って2つの特徴を加える。検索ヒット件数と検索回数である。我々は検索回数とCTRの関係を発見した。この関係は図5のようになる。図5より検索回数の多い語はクリック率が高いことが分かる。これらの特徴を考慮して実験したところテーブル4のようになった。ベースラインからだと3%精度が向上したにも関わらず、前章までの組み合わせで実験すると0.5%しか制度が上昇しなかった。これは前章までの特徴の何かと今回の特徴とがオーバーラップしているからである。


10 結果の討論

10.1 特徴の有用性

それぞれの特徴セットを独立してCTRの予測に用いると、どの特徴がより予測に有効なのか興味が出るところである。そこでそれぞれの特徴セットを独立に計測してKL-divergenceをとったところ広告の質が12%(人手でつけた特長とユニグラムの特徴、ユニグラムだけだと10.2%)でエントロピーの特徴が8.9%でサーチデータのセット(検索回数とヒット件数)が3.1%であった。

ロジスティック回帰モデルなので、我々はそれぞれの特徴の重みを知ることができる。その結果はテーブル5のようになった。

ユニグラムの特徴はテーブル6のようになった。これによるとofficialなどがトップに上がってきていることから、ユーザはより権威ある、一流のサイトを好んでクリックする傾向があるといえる。またquotes(見積もり),trial(試用),compareなどより限定的なユーザをつかむような単語が使われている場合のクリック率は低くなった。

それぞれの特徴の有用性をつかむのも面白いが、最も実用的なことはできる限り最終的なモデルに多くの特徴を含ませる事である。これによりどんな広告に対しても的確に予測できるようになるのである。

10.2 初期化後の進化?

我々のモデルはCTRをいくらか正確に予測することができるが、いったいどれくらいのViewがあればCTRが十分に推測できるのであろうか?ベースラインモデルと特徴を用いたモデルの、Viewの数とCTRの誤差の関係を表したグラフは図6のようになる。これによると100回のView、表示回数に換算すると約200~300回の表示でベースラインモデルの誤差と特徴を用いたモデルの誤差が同じになることが分かる。特徴を用いたモデルは100回Viewがあるまでの期間でうまく作用し、収益増をもたらしてくれる事が分かる。

10.3 より多くのViewを持った広告

よりView数を多く持った広告をトレーニングセット、テストセットに選びCTRの予想に用いるとより正確なCTRを予測できる。よって1000Viewを超えた広告のみをトレーニングセット、テストセットに選び同様の実験を行ったところテーブル7のような結果が得られ精度が向上した。しかし1000Viewを超えるような広告は優良な広告が多くデータにかなりバイアスがかかってしまっている。


11 将来への考察・展望

  • この分野の研究があまりなされていないので、誰でも研究、比較できるように標準となるデータセットが必要である。

  • 将来的にはユーザのクエリ情報を用いて、ユーザのクエリと入札語が完全に等しい場合、緩く当てはまる場合などを考慮する必要がある。(緩い例:広告主がパソコンという語が入ったクエリに対して広告を表示するという条件を与えておくと、“パソコン”というクエリ以外にも“中古パソコン”、“パソコン修理”といったクエリに対しても広告が表示される。)例えばクエリと入札語の類似度などを特徴として用いれば、今回のモデルをそのまま適用することができる。

  • RegelsonとFain[19]の手法を追加の特徴として取り入れて我々の手法と比較してみたい。

  • 実際に実用化させるにあたっては、CTRの予測を広告の表示順位を決めるために使う以外に、広告主にCTRを向上させるアドバイスを与えるために使いたい。

  • その他、人による直感的な判断、広告サイトへの再訪問率、滞在時間、またデータを蓄積することで得られる広告主の質などを特徴として加え、さらなる精度の向上を図りたい。