広告ログの解析システム

17
Kauli株式会社 高田 勝裕 お金をかけず広告配信の ログ分析システムを作った話

Upload: katsuhiro-takata

Post on 09-Jul-2015

9.003 views

Category:

Documents


1 download

DESCRIPTION

tokyo webmining

TRANSCRIPT

Page 1: 広告ログの解析システム

Kauli株式会社

高田 勝裕

お金をかけず広告配信の ログ分析システムを作った話

Page 2: 広告ログの解析システム

• 本日は,私が分析システムを開発したときに,いかにお

金をかけないように工夫してシステムを構築したかを説

明します

• ビジネス側面での運用を重視しています

はじめに

Page 3: 広告ログの解析システム

• 自己紹介

• なぜお金をかけないのか

• 現在のシステムの概要

• 可用性や安定性をあげる努力

• まとめ

アジェンダ

Page 4: 広告ログの解析システム

• 高田 勝裕, Ph.D.

• Handle: Karubi Namuru

• Twitter: @karubi

• Facebook: http://www.facebook.com/karubi/

• 職業:Kauli株式会社 代表

• 2009年9月に「Kauli」アドネットワークサービスを開始,現在は広

告枠の収益最大化プラットフォームとして提供

• アルゴリズムの開発,分析システムの構築,そして広告営業

• ここ10年は海外も含めて広告の仕事ばかりです

自己紹介

Page 5: 広告ログの解析システム

• 配信する広告を閲覧者のニーズに合致させるため

閲覧者の興味を引く,または潜在的な需要を喚起する

• 広告主に多くの成果を上げてもらうため

予算内で広告主のサイトに最大の見込み客を送る

• メディア(サイトオーナー)の収益を増やすため

表示回数において最大の報酬を提供する

なぜ広告配信で分析システムが必要か

Page 6: 広告ログの解析システム

• 使えるお金に限界がある

→ まずは営業にお金をかけるべき

• 他社が高級なシステムを導入している

→ 商用DWHとかSPSSとかスタートアップには無理

• 趣味の世界

→ OSSを使い倒したり,300円のサーバで処理させたり

• 思想の世界

→ お金をかけたら負けだと思った

なぜお金をかけないのか

Page 7: 広告ログの解析システム

• 使える分析システムには計算能力が必要

• アルゴリズムを時々変えたいので依存性を排除する

• 必要なときにリソースを投入・開放できる仕組み

• OSSでやりくり

• その時々で最も安いリソースに乗り換えたい

システムの要件

Page 8: 広告ログの解析システム

おおまかな分析システムの概要

ストレージ サーバ

前処理

Lucene

Hadoop HBase

計算

Mahout

Page 9: 広告ログの解析システム

• 前処理

• アクセスログをユニークユーザごとにまとめる仕事

• まとめたログを必要な粒度にばらす仕事

• 計算

• まとまったデータを分析する仕事

• 分析結果を評価する仕事

各パートの役割概要

Page 10: 広告ログの解析システム

• データを整形する

• Lucene

• クローラが拾ってきたウェブページから得た特徴語等の処理

• その他

• ユニークユーザ別にまとめる

• Hadoop and HBase

• 細かくログを切り刻む処理

• 個別のIDに応じて集合をつくる処理

前処理の中身

Page 11: 広告ログの解析システム

• 日々のログの量が一定ではない

• 単純な作業だがHadoopにまかせること

• アルゴリズムによってデータ構造を変えなければならない

• Hadoop and Hbase の組み合わせで楽チン

• 言語別の実装をできる限り楽をしたい

• LuceneのAnalyserは多言語対応

前処理のこだわった点

Page 12: 広告ログの解析システム

• 個々人の意識が明示的なデータの整形

• たとえば,クリック,「いいね!」,訪問時刻,ブラウザ(笑

• 逆に暗黙的なデータの整形

• たとえば,訪問履歴(URLなど)や頻度,選択内容の組み合わせ,

閲覧時間,特徴語

• データセットにまとめる

具体的な前処理の仕事

Page 13: 広告ログの解析システム

• 傾向に基づく分類

• 頻出パターンの抽出

• Mahout

計算の中身

Page 14: 広告ログの解析システム

• アルゴリズムを時々変えること

• Mahoutでサポートされた入力形式を守れば,データ入力の問題

はない

• ローカルサーバがあふれたときに,ネット上のリソースで仕事を

させたい

• EC2にイメージをつくっていつでも起動できる

計算のこだわった点

Page 15: 広告ログの解析システム

• 容易な方法で分析可能

演繹的(単純な加算や条件分岐)

• 評価

大小条件の評価

プリセット値との対応付け

計算の具体的な仕事(1)明示的データ

Page 16: 広告ログの解析システム

• データマイニング

• 発掘や予測などの計算をおこなう

クリック,ウェブページコンテンツ,訪問頻度,ブラウザ,成果など,複

数の要素の組み合わせを利用して,意味を持つ組み合わせを発掘

する

• 評価

• 正確性の評価

Recall(再現率),Precision(精度)

Coverage(全体カバー)や Diversity(多様性)

計算の具体的な仕事(2)暗黙的データ

Page 17: 広告ログの解析システム

• 広告配信の分析システムをお金をかけず作ったことをお

話しました

• 御質問などは [email protected] まで

• なお,広告配信や分析に興味がある方はぜひ当方まで

連絡をください!

• エンジニア(Python使い),学生インターンを募集中

• 広告営業も常時募集中です

まとめ