$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Big Dataで価値を生み出すためのSmall Trial & Method
Search
Recruit Technologies
February 13, 2019
Technology
0
290
Big Dataで価値を生み出すためのSmall Trial & Method
2019/02/13 みんなのPython勉強会#42での、河野・内田の講演資料になります
Recruit Technologies
February 13, 2019
Tweet
Share
More Decks by Recruit Technologies
See All by Recruit Technologies
障害はチャンスだ! 障害を前向きに捉える
rtechkouhou
1
730
Flutter移行の苦労と、乗り越えた先に得られたもの
rtechkouhou
3
12k
ここ数年間のタウンワークiOSアプリのエンジニアのチャレンジ
rtechkouhou
1
1.6k
大規模環境をAWS Transit Gatewayで設計/移行する前に考える3つのポイントと移行への挑戦
rtechkouhou
1
1.9k
【61期 新人BootCamp】TOC入門
rtechkouhou
3
42k
【RTC新人研修 】 TPS
rtechkouhou
1
41k
Android Boot Camp 2020
rtechkouhou
0
41k
HTML/CSS
rtechkouhou
10
51k
TypeScript Bootcamp 2020
rtechkouhou
9
46k
Other Decks in Technology
See All in Technology
Lessons from Migrating to OpenSearch: Shard Design, Log Ingestion, and UI Decisions
sansantech
PRO
1
150
プロンプトやエージェントを自動的に作る方法
shibuiwilliam
13
12k
生成AIを利用するだけでなく、投資できる組織へ / Becoming an Organization That Invests in GenAI
kaminashi
0
110
マイクロサービスへの5年間 ぶっちゃけ何をしてどうなったか
joker1007
16
6.6k
多様なデジタルアイデンティティを攻撃からどうやって守るのか / 20251212
ayokura
0
490
re:Invent2025 コンテナ系アップデート振り返り(+CloudWatchログのアップデート紹介)
masukawa
0
390
Snowflakeでデータ基盤を もう一度作り直すなら / rebuilding-data-platform-with-snowflake
pei0804
6
1.6k
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
1.5k
JEDAI認定プログラム JEDAI Order 2026 エントリーのご案内 / JEDAI Order 2026 Entry
databricksjapan
0
140
【U/day Tokyo 2025】Cygames流 最新スマートフォンゲームの技術設計 〜『Shadowverse: Worlds Beyond』におけるアーキテクチャ再設計の挑戦~
cygames
PRO
2
730
AI駆動開発における設計思想 認知負荷を下げるフロントエンドアーキテクチャ/ 20251211 Teppei Hanai
shift_evolve
PRO
2
420
Jakarta Agentic AI Specification - Status and Future
reza_rahman
0
110
Featured
See All Featured
How to Ace a Technical Interview
jacobian
281
24k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
0
15
sira's awesome portfolio website redesign presentation
elsirapls
0
86
It's Worth the Effort
3n
187
29k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
91k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
WCS-LA-2024
lcolladotor
0
380
Navigating Weather and Climate Data
rabernat
0
42
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
63
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
0
57
Making Projects Easy
brettharned
120
6.5k
Transcript
1 Big Data で 価値を生み出すため Small Trial & Method 2019-02-13
みんな Python勉強会#42 https://www.pexels.com/photo/adult-apple-device-business-code-340152/
お話しする内容 データを活用したプロダクト開発案件 について ・ど ようなシステムやプロセスを採用したか ・どういう工夫をしてきたか これらを踏まえて、ご紹介いたします。 2
各案件担当者と 共同発表という形でお伝えします 関心 あるトピックが見つかりましたら、ぜひとも交流タイムで各発表者とマッチングして リアルな目線で ディスカッションを楽しんでいただけたらと思います 内田 臣了 共同発表 3
河野 晋策 twitter / @lapis_zero09
1. じめに 2. レコメンド機能開発 3. 不正行為・規約違反行為対策 4. Jupyter Notebook Tips
4
1. じめに 5
今回ご紹介するプロダクト事例 6 婚活 恋活 http://www.recruit-mp.co.jp/service/zexy.html
市場 グロース期 ・米国で 結婚したカップル 1/3がオンラインで 出会い ・他ドメイン 大規模サービスに比べて、チームやプロダクトとして まだ発展途上 フェーズ
7
ほか:スタッフ用 業務管理ツールなど サブシステム システム概略(カスタマー向けアプリ) 8
データ基盤 9
データ基盤 BigQueryというクラウドDWHソリューションを利用 ・他ツールで そ まま再現できない手法も出てきます ・各自 環境に照らしながら聞いていただけれ と思います 10 Google
Cloud 発表資料より引用
データ活用(一部抜粋) 色々やっています 11
本日 これら2つ 案件開発についてご紹介します データ活用事例 12 レコメンド機能 不正行為・規約違反行為対策 http://image.itmedia.co.jp/l/im/ait/articles/1804/23/l_news011_04.jpg https://zexy-koimusubi.net/ https://www.irasutoya.com/2018/07/blog-post_403.html
2. レコメンド機能開発 Trial 13
自己紹介 内田 臣了 (Shinryo Uchida) リクルートテクノロジーズ ITエンジニアリング本部 プロダクトエンジニアリング部 APプロダクト開発グループ 2017年4月
新卒入社 リクルート 運営するサービス 検索改善業務に従事 柴犬が好き 14
Small Trial for Big Data ケーススタディを通してお伝えしたいこと ビッグデータを扱う案件であっても 1つ1つ 小さな分析・検証 積み重
である 15
サービス 16
ご利用 流れ 1. 異性を探す 2. いい !を送る 3. マッチングしたらメッセージを交換 4.
お見合い・デートを申し込み 5. 交際開始(退会) 17
ご利用 流れ 1. 異性を探す 2. いい !を送る 3. マッチングしたらメッセージを交換 4.
お見合い・デートを申し込み 5. 交際開始(退会) 18
おすすめ順 「異性を探す」ステップに関連 検索結果 並び順 ひとつ ユーザー プロフィール内容や行動に基づき スコアを算出しランキング お客様 出会いに大きく影響を与えるため
非常に重要な役割 19
おすすめ順 開発プロセス 今回 おすすめ順 開発プロセス 話をします (ロジック 中身 話 しません)
各工程 開発コストを下げて 高速にサイクルを回す工夫 誰でも 手軽に 開発 • 特定 開発者に縛られない • 素早いリリース • リスク 小さく 20 分析 実装 検証
おすすめ順 開発プロセス 21 分析 実装 検証
1. 分析 22 分析 実装 検証
Google BigQueryとJupyter Notebookによる分析 23 おすすめ順ロジック 改良 直感で なく必ずデータに基づいて行う 主要なデータ(個人情報除く) Google
BigQuery上に格納されており、 分析者 それにアクセスし作業する マッチング率 改善につながる 特徴量 作り込みや 施策 効果 見立てを行う
データ分析ハッカソン 24 4月に入社した新入社員たちを対象に データ分析ハッカソンを開催 入社数か月 新人でも すぐに分析に取りかかれる環境 詳しく こちら:リクルートテクノロジーズ 新人研修特別版(データ分析編) https://recruit-tech.co.jp/blog/2018/05/29/data_bootcamp2018/
2. 実装 25 分析 実装 検証
マイクロサービス化による高速リリース 26 検索エンジン レコメンドAPI 定義 ファイル サービス バックエンド クライアント サービス
バックエンドから検索エンジンに 直接クエリを投げる で なく、 おすすめ順ロジックを適用する機能をAPIとして切り出しそれを仲介
メリット:更新時 コスト・リスク 軽減 27 検索エンジン レコメンドAPI 定義 ファイル サービス バックエンド
クライアント 更新不要 更新不要 更新不要 更新 デプロイ 規模を小さくしてコスト・リスクを軽減 • ロジック 適用・切り戻しが容易 • 万が一 障害時、切り離しが容易 直接検索エンジンにリクエストする経路も用意
メリット:誰でもおすすめ順をカスタマイズ可能 28 検索エンジン レコメンドAPI 定義 ファイル サービス バックエンド クライアント レコメンド定義をJSONファイルに切り出し
➔ 誰でも容易にロジックを変更可能 • エンジニアに依頼せずとも企画者が直接定義を編集できる (実際にプロダクトマネージャや企画者がロジックを調整している)
3. 検証 29 分析 実装 検証
A/Bテストによる効果検証 30 定義A 定義B A群 B群 それぞれ 群で測定指標を比較 レコメンド API
A群 B群 • マッチング率 • いい !送信率 など • マッチング率 • いい !送信率 など 無作為に分け、異なるロジックを適用 比較 新ロジック適用前にA/Bテストでオンライン評価 ➔ 良い効果が観測された場合、新たなロジックを全適用する もし大きな毀損があった場合 、 即座に測定を中止し元 ロジックに切り戻しを実施
Redashを介したBigQueryクエリ共有 31 比較 測定用 クエリ 即実行可能な状態でRedashで共有 パラメータを指定して ボタンを押すだけで誰でも実行可能 データ基盤チームによる 主要KPI日次レポート
仕組みも存在
まとめ 32 小さく作って小さく試しながら 堅実にレコメンド機能を磨き込んでいる 速く作るために各工程で コストを小さくし 改善サイクルを高速に回す仕組みを整えている 分析 実装 検証
ビッグデータを扱う案件であっても 1つ1つ 小さな分析・検証 積み重 である
3. 不正行為・規約違反行為対策 Trial 33
' $%("!#&(
https://zexy-enmusubi.net/promise/
• • FS • '"$ • FS
• (&#'"$ • 2
• Recruit Technologies Co., Ltd. •
• @lapis_zero09 lapis-zero09 https://www.lapis-zero09.xyz/profile/ 3
4 FS 1 F( • KPI( •
C-E( 2 8G5 • ( 3 A8D • ! ) '" • 8G5'&%A8D( 4 A8D6BG9E0 • :C@G56BG9E0 • ,E1E>D • ROI'&%6BG9E0 5 247? • Minimum Viable Product*$ 1G<4.E39,'247?
https://zexy-koimusubi.net/static/promise.html5
6 ! • •
!
8<, 7 42:<9 ! • • "
&%' ! #0<7 42:<9' ! ' #-/17' +<6/*;.3)
1. 8 ;9?B>("+$/! * AKPI %*&,)8B7A .
3B=62@5:1 → A .#-
2. 9
2. 10
3. 4. 3. $' •
$' • ) 11 4. %)( • &#)%)( • (("' F 9 !! http://scikit-learn.org/stable/tutorial/machine_learning_map/index.html (("'https://www.slideshare.net/ShinsakuKono/introduction-to-ensemble-methods-for-beginners
5. Feasibility Study5,6 12 READMEJ) 8:I • ?BQLZ]N=[S\B •
* • -J9I3 OY]U=7F1A • argparse MVP= DI • ! J+A • BOPTJG9 • %&#=[S\B'4 @7<EH/<!A • % B;DB • ^XT\VRMA@I C@ 03 _($J2<".
13 "(! FB
(% &# &# 'KPI
14 FS ( ) 1 F( • KPI( •
C-E( 2 8G5 • ( 3 A8D • ! ) '" • 8G5'&%A8D( 4 A8D6BG9E0 • :C@G56BG9E0 • ,E1E>D • ROI'&%6BG9E0 5 247? • Minimum Viable Product*$ 1G<4.E39,'247?
15 FS 1 2
3 " "!
-,03/! " (%/3+1'& 1. )$
2. #!)$ .03!2 16
17 &$,.+',.- p&$,.+#.) - p(%*"+
p"#! p 18
3;/9;:4)+, 1. &0158-" 2. 6;2 79;&* 3. $(#$*
ü0158 ü! ü 19
• ü"#$ ü%#! ü
• 20
%(" 21 $#'(& ! • •
! !!
Amazon EC2 $& * • * •
• )#'DB *!) 22 Web#% (*&
($@&/2?3=: 1. F; • )Deep Learing46>579A8,06*7<9+ 2. DCE;
• ($<: 3. /.1 • ($< -+ • #<!"'%-+ 23
4. Method編 34
35 ご清聴ありがとうございました https://www.pexels.com/photo/adult-apple-device-business-code-340152/