32
CET(Capture EveryThing) ププププププププププ ププププ プププププププププププ 高高高高高高高高高高高高高高高高高高高高高高 ICT 高高高高高高高高高高高高高高高高高高高高高高高 高高高高高高高高高高高高高高高高 高高高高高高高高高高高高高高高高高高高高高高高高高高 高高高高高高 2 高 高高高高高高高高高

CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

Embed Size (px)

Citation preview

Page 1: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

CET(Capture EveryThing) プロジェクトにおける

機械学習・データマイニング最前線

高柳慎一株式会社リクルートコミュニケーションズ

ICT ソリューション局アドテクノロジーサービス開発部兼

株式会社リクルートライフスタイルネットビジネス本部ディベロップメントデザインユニット

アーキテクト 2 兼 リーン開発グループ

Page 2: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

2

会社&自己紹介

Page 3: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

3

リクルートグループの提供価値

リクルートグループ

<提供価値>

人生や生活の中で選択に困った際に

その人が必要とする情報を提供

クライアント(企業)

悩み

ユーザ(生活者)

悩み

<提供価値>

ユーザとの出会いの機会や

最終的なマッチングを創出

Page 4: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

4

リクルートグループについて

㈱リクルートホールディングス

㈱リクルートキャリア

㈱リクルートジョブズ

㈱リクルートスタッフィング

㈱スタッフサービス・ホールディングス

㈱リクルートライフスタイル

㈱リクルートマーケティングパートナーズ

㈱リクルート住まいカンパニー

㈱リクルートアドミニストレーション

㈱リクルートテクノロジーズ

㈱リクルートコミュニケーションズ

主な事業会社

機能会社

制作・宣伝・流通・サービス開発機能

社員募集領域

AP 人材募集領域

派遣人材募集領域

本社機能R & D (事業開発)

グローバル住宅領域

派遣人材募集領域

日常消費領域

結婚・進学・自動車等領域

アドミニストレーション機能

IT /基幹システム開発

リクルートコミュニケーションズ&リクルートライフスタイルはここです

Page 5: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

5

リクルートコミュニケーションズの概要

• リクルートコミュニケーションズ– リクルートグループの機能会社– 制作、流通・宣伝、カスタマーサポート– デジタルマーケティング等の統括的な支援

リクルートコミュニケーションズ

メディア制作 流通・宣伝 カスタマー

サポート

サポート

デジタルマーケティ

ング

Page 6: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

6

リクルートライフスタイルのサービス概要

Page 7: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

7

自己紹介

• CET(Capture EveryThing) プロジェクト、やリーン開発に伴う AB テストなどのデータ分析 / 開発を担当

http://www.ipsj.or.jp/event/sj/sj2016/IT-F_bigdata.html

Page 8: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

8

CET プロジェクトについて

Page 9: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

• リクルートライフスタイルの全サービス横断で、リアルタイムにデータ(システムログ、ユーザの行動、在庫変動など)を収集・分析するための基盤

• リアルタイムデータ分析に必要な処理(収集、加工、集計、分析、可視化)を一気通貫で実施

• 少数精鋭なビジネス系メンバ、データサイエンティスト、エンジニアでプロジェクトを推進

CET の概要・特徴

9

Page 10: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

• サービス・ビジネスに関するあらゆる情報の変化(ユーザの行動、在庫量の変動など)を、我々サービス提供者がリアルタイムに把握できていない

• その結果、状況に応じて最適な施策を講じることができておらず、機会損失が発生している

CET が解決する課題

10

• リアルタイムなデータに対する適切な処理を実施することで課題を解決

Page 11: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

CET のログ収集システム構成

11

CET – Capture EveryThingサービス サービス運用者

機械学習エンジニア

データ分析者

が活用

ELB

Elasticsearch,Kibana

BigQuery

S3

APIELB Cloud Bigtable* GCP 関連製品は技術検証中

Cloud Pub/Sub

Cloud Dataproc,Apache Spark

計算結果を格納

Page 12: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

• コールセンタでリアルタイムにログをモニタリング

• アプリケーションのスローダウンやユーザ操作の戸惑いなど、ユーザビリティに関する情報を迅速に検知し、顧客サポート品質向上に努める

リアルタイムデータ可視化事例 – Air レジ

12

Page 13: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

• Spark Streaming を使用してウインドウ集計を実施

• 定期的に直近のユーザ行動ログを集計し、宿ページごとの UU 数をリアルタイムに算出

ストリームデータ処理事例 1 – じゃらん

13

Page 14: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

• Spark Streaming を使用してログを定期的に集計

• 処理時間が特定のしきい値を超えるログの件数をURLごとに集計し、結果をサービス運用者へ通知

ストリームデータ処理事例 2 – サービス共通

CET – Capture EveryThingサービス サービス運用者

ELB Cloud Pub/Sub

Cloud DataprocApache Spark

14

Amazon SNS

AWS Lambda

メール

Slack

Page 15: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

15

ストリームデータ処理事例 3 – 直近閲覧状況の可視化

Page 16: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

16

CET における機械学習 / データマイニング

Page 17: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

17

エンジニア兼データ分析者の使うツール群

今日は特に  を活用した機械学習 / データマイニングの話をしします!

Page 18: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

18

CET のデータ分析環境

AWS S3

Elastic Search

TreasureData

RedShift

Spark Notebook

Docker※一部試験環境用

AWS S3

Cloud Bigtable

RUNDECK※サーバ・バッチ起動管理

分析用サーバ (EC2)

Spark 用サーバ (EMR)

Page 19: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

19

R を活用した機械学習 / データマイニングの流れ

• データの取得– COLD データ : 数億件のレコードを RedShift,

TreasureData で捌いて特徴量抽出 / 生成– HOT データ : CET の Elastic Searchから取得

• 機械学習 / データマイニングの実行– 1,000万件程度のレコードに対して実施

• 分析環境 (AWS)– 基本的には r3.2xlarge を複数人で使用– 計算パワーが足りないときは で殴る💰(インスタンスのグレードを上げる)

• サービスへの展開– BigTable に格納し、結果を API 化

Page 20: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

20

社内用パッケージの開発

• DB接続・ ID マスキング・ AUC 計算などのよくやる処理をパッケージとして共通化

Page 21: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

21

顧客のクラスタリング

• 時系列データのクラスタリングを実施• あるクラスタに属するユーザに対して、

サービス改善の施策を提案

関連・使用しているRのパッケージなど・秘密のマエショリ・ dplyr, tidyr, rls (いつもの)※クラスタリング結果(同一クラスタに属するもの)

Page 22: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

22

XXしそうなユーザの判定

• ユーザの行動に応じて、画面選択の省略やデフォルト値の変更を行う

• 多値クラス分類問題を解いて、デフォルトの選択肢を用意する

関連・使用しているRのパッケージなど・ ranger・ dplyr, tidyr, rls (いつもの)

Page 23: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

23

人気上昇ランキング

• じゃらんの全宿の”予約速度”を計算し、スコアリング。人気度に応じた文言を表示

関連・使用しているRのパッケージなど・ RcppRoll・ dplyr, tidyr, rls (いつもの)

Page 24: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

• 在庫変動データに基づいた、在庫売り切れ予測

• 予約が急激入り始める時点の予測• 多腕バンディットアルゴリズムを活用した配信

• リアルタイム異常検知※すべてを  でやるわけではない

今後対応を検討していること

24

Page 25: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

25

機械学習 / データマイニングエンジニアの

スキル向上の施策

Page 26: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

26

手を動かしながら学ぶ機械学習

手を動かしながら学ぶ機械学習クラスタリング・回帰・自然言語処理までを手を動かしながら順にお勉強するという企画

Page 27: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

27

機械学習大会

機械学習大会某機械学習サイトにインスパイアされたサイト( Play framework で内製)。予測結果をアップロードすると結果の計算&順位付けを行う(※この大会は、ほぼ皆某 Deep でやってました… )

Page 28: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

28

論文輪読会

論文輪読会テーマは自由&論文の時期も自由、ただし「発表者本人がこれから勉強したいこと」が条件

Page 29: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

29

あれやこれやの詳細は…

懇親会で!!!

Page 30: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

30

補足

Page 31: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

• SparkR を EC2上で動かして分散処理してみる | Tech Blog | リクルートライフスタイル RECRUIT LIFESTYLEhttp://engineer.recruit-lifestyle.co.jp/techblog/2015-08-19-sparkr/

• 第 4回 [データ分析編]“制約なし”で大規模データ分析基盤を構築:リクルートライフスタイルの技術力を追え!|gihyo.jp … 技術評論社http://gihyo.jp/dev/serial/01/recruit-lifestyle/0004

(補足)関連資料 1/2

31

Page 32: CET (Capture EveryThing)プロジェクトにおける機械学習・データマイニング最前線

• リクルートライフスタイル全サービス横断のリアルタイムログ収集・可視化・分析基盤 @JAWS-UG Meguro #2 http://www.slideshare.net/RecruitLifestyle/ss-53400381

• 「ビッグデータは“リアルタイム”でこそ価値がある」 CET エンジニア 吉田啓二氏インタビュー | Tech Blog | リクルートライフスタイル RECRUIT LIFESTYLE http://engineer.recruit-lifestyle.co.jp/techblog/2015-11-02-yoshida-interview-1/

(補足)関連資料 2/2

32