Upgrade to Pro — share decks privately, control downloads, hide ads and more …

事業立ち上げにデータサイエンティストは必要なのか? / How Data Scientists...

事業立ち上げにデータサイエンティストは必要なのか? / How Data Scientists Can Help Startups

サイバーエージェンの社外向けカンファレンスCA BASE NEXTで、「事業立ち上げにデータサイエンティストは必要なのか?」というタイトルで発表しました。
https://ca-base-next.cyberagent.co.jp/2021/sessions/start-up-and-data-science/

Komei Fujita

May 26, 2021
Tweet

More Decks by Komei Fujita

Other Decks in Business

Transcript

  1. 藤田光明 Komei Fujita 2018年度 新卒入社 AI事業本部 DX本部小売セクター データサイエンティスト 興味 •

    ビジネス x 経済学 / CFML(反実仮想機械学習) • A/Bテストを通したプロダクトグロース @ko-fujita @6km6km 2
  2. サイバーエージェントでやってきたこと 事業フェーズの異なる2つのプロダクトを経験した Dynalyst (2018 - 2020) • リエンゲージメント広告プラットフォーム(DSP) • ジョインした時点で4-5年目

    • 市場シェアも大きい • たくさんの機械学習モデルが運用されている 自分がやってきたこと(一例) • MLモデルの開発からプロダクト実装まで • 共同研究 with AI Lab (WWW2020に採択) • A/Bテスト基盤の設計・構築 • 10人弱のデータサイエンスチームマネジメント 小売の新規事業 (2020 - ) • 小売の購買データを用いた デジタルマーケティングプラットフォーム • 初期メンバーとしてジョイン • 当初は売るものもない、顧客もいない 自分がやってきたこと • ??? 4
  3. 1. 分析・予測自体が商品である場合 プロダクト例 • 分析コンサル: 分析レポートが商品 • google cloud vision

    api: 画像認識できるAIが商品 • 極予測AI: クリエイティブからスコアを算出するAIが商品 9
  4. 意思決定の結果、売上/利益が発生する モデル作成 DS 購買確率 商品A: 40% 商品B: 20% 商品C: 30%

    商品Aを推薦 (意思決定) AI 14 顧客 データサイエンスの役割は分析・予測を通して、 意思決定の質やスピードを「改善」して 売上/利益を向上させること
  5. 2. 分析・予測の結果を使った意思決定が商品である場合 • 立ち上げ期にデータサイエンスが必要なのか? • 最初はなくてもよさそうな気がする? ◦ 商品の推薦: まずはランキングで ◦

    クーポン対象: とりあえず過去買った人に ◦ 施策AorB: そもそも比較したい施策が複数あることがあまりない 以降では、意思決定が商品である場合に絞って議論する 15
  6. 立ち上げとグロース 本発表では以下のように各事業フェーズを定義しておく • 立ち上げフェーズ ◦ 売上が立っていない段階 ◦ 顧客はゼロかテストクライアント(or ベータユーザ)のみ ◦

    目的: スケールする売り方を見つける • グロースフェーズ ◦ 売上が立ち始めて顧客が増えていく段階 ◦ 目的: 売上をより大きくしたり、コストを下げたり 17
  7. [再掲]サイバーエージェントでやってきたこと 事業フェーズの異なる2つのプロダクトを経験した グロースフェーズ Dynalyst (2018 - 2020) • リエンゲージメント広告プラットフォーム ◦

    DSP: Demand Side Platform • ジョインした時点で4-5年目 • 市場シェアも大きい • たくさんの機械学習モデルが運用されている 立ち上げフェーズ 小売の新規事業 (2020 - ) • 小売の購買データを用いた デジタルマーケティングプラットフォーム • 初期メンバーとしてジョイン • 売るものもない、顧客もいない 各事業フェーズでのデータサイエンスを 自分の経験をもとに整理する 18
  8. Dynalystでのデータサイエンス • 扱えるデータ ◦ 過去数年分(数TB/日)の広告配信ログ ◦ 顧客や提携先の大量のデータ • データサイエンスでできること ◦

    データドリブンな施策の立案・評価 ◦ 既に運用されているMLモデルの改善 ◦ プロダクトの新たな強みをつくるための新しい予測機能の追加 19
  9. 小売の新規事業でのデータサイエンス • 扱えるデータ ◦ 「扱える」= 「クエリできる」という意味でいうと不可能 ◦ 各所に様々な形式の購買 / ユーザ

    / 提携データが散らばっている ◦ サービス独自のデータ(広告配信ログなど)は当然なし • データサイエンスでできること? ◦ データが扱えないので何もできない? ◦ 改善する対象がないのでデータサイエンスによる改善ができない? 20
  10. 事業フェーズごとのデータサイエンス データ DSによる 改善の必要性 立ち上げ フェーズ △ (or ✕※) △

    (or ✕) グロース フェーズ ◎ ◎ 22 ※ 立ち上げ時でも有用な外部のデータが手に入る場合がある • データあり: 代理店の広告クリエイティブ配信実績、協業先の購買データなど 自分の所属プロダクトはこのパターン、DXの文脈でCAでも増えてきた • データなし: ABEMAなどのtoCサービスではこのパターンが多そう 以降では前者のパターンを中心に話すが、後者でも当てはまる部分はある(と思う...) データサイエンティストは 必要なのか??
  11. コア機能の一例: 購買予測 • 小売広告マーケティングの理想の一つは広告での購買リフト ◦ 購買リフト = (広告を配信した場合の購買率) - (広告を配信しなかったときの購買率)

    ◦ しかし、広告配信の実績がない立ち上げ期にはリフトを予測するデータがない ◦ => まずは広告に関わらない購買予測をできるようにする ◦ 購買予測は購買によるリフト予測につながるはず • 予測の対象は? ◦ 1商品?店舗すべての商品? ◦ どういう顧客が何に対してお金を払うのか? • 予測に必要なデータ? ◦ どういうデータをとっておくか? ◦ => リフトを予測したいなら広告を出す / 出さない(の一部)をランダムにする必要あり? ◦ どういうデータ構造で持っておくか? 32
  12. ロードマップをDSが作らないと... たとえば、予測のために必要なデータがなかったり データを貯める期間 データを使う期間 クーポンを 使った クーポン渡したけど を使わなかった 35 クーポンを

    渡さなかった クーポンを使ったデータしか保存していないと... クーポンを渡す / 渡さない(の一部)をランダムに決めていないと... クーポンを使ったデータしか 残ってないので、 クーポン使用率やクーポンに よる購買リフトが予測できな い...
  13. ロードマップをDSが作らないと... たとえば、予測のために必要なデータがなかったり データを貯める期間 データを使う期間 クーポンを 使った クーポン渡したけど を使わなかった 36 クーポンを

    渡さなかった クーポンを使ったデータしか保存していないと... クーポンを渡す / 渡さない(の一部)をランダムに決めていないと... クーポンを使ったデータしか 残ってないので、 クーポン使用率やクーポンに よる購買リフトが予測できな い... データサイエンティストが 責任持ってロードマップを作るべき • プロダクトがDSで正しく改善できる状態にする • 将来自分が進めるタスクを真っ当にする
  14. データ分析基盤の設計に入るべき • 最終的にデータ分析基盤を一番使うのはDS • 理想形を持っているはず • 理想形とその実装コストのバランスを考えながら設計する ◦ データエンジニアと議論する ◦

    理想形はどう実装すれば実現可能なのか? ◦ どういうポイントは妥協できる / できないのか? • 具体的な貢献ポイント ◦ 何をやらないかを決める ◦ データ生成過程を設計する 40
  15. データ分析基盤の設計への貢献ポイント • データ生成過程の設計 ◦ プロダクトのコアになる機能は最初からA/Bテストを仕込んでおく ◦ システム内のさまざまな意思決定を確率的にしておく ▪ 簡単なルールベースにあまり効果が見込めないならランダムに ▪

    事後的な分析の価値が高まる(バイアスの少ない評価が可能) ◦ これらは立ち上げ時にやっておくのが大事 ▪ デフォルトバイアスを回避 ▪ 一度作ってしまうとあとから変えるのは難しい 42
  16. 確率的な意思決定の例: 商品推薦 43 (決定的な) ルールベース ランダム 若者なら冷たい お年寄りなら温かい 冷たい: 温かい

    = 50%:50% ルールベース :ランダム = 90%:10% 温かい商品を若者に推薦したデータがなく、 どちらの商品を推薦すべきか評価不可能 冷たいを推薦する確率 = f(age) ランダムデータを使ったり、因果推論 的手法で分布を補正することで、 どちらの商品を推薦すべきか評価可能
  17. DSが実装できるためのインフラ側の工夫 AWSを使った例: • ETLを足すときに実装箇所や命名規則が 明確なコード設計 • Infrastructure as Code(IaC) ◦

    terraform, digdag ◦ コードで管理することで 真似しやすくレビューしやすくする • すぐ壊せる ◦ s3, glue data catalog, redshift spectrum データサイエンティストが実装しても負債にならないこと 46
  18. • ロードマップに従ってやることを決める • 本発表では予測機能の実装に絞る • 重要なポイント ◦ 予測結果を使って、どう意思決定を改善するのか ◦ 予測をシステムでどう扱うか

    ◦ 予測モデルをいかに早く作れるか ◦ 予測モデルの今後の改善余地はあるか 3. 分析と予測機能の実装 50 詳細は サイバーエージェントのdevelopers blogで https://developers.cyberagent.co.jp/blog/archives/29757/
  19. • ロードマップに従ってやることを決める • 本発表では予測機能の実装に絞る • 重要なポイント ◦ 予測結果を使って、どう意思決定を改善するのか ◦ 予測をシステムでどう扱うか

    ◦ 予測モデルをいかに早く作れるか ◦ 予測モデルの今後の改善余地はあるか 3. 分析と予測機能の実装 今回はここに注目する 51
  20. 例: オンライン推論 vs バッチ推論 広告配信におけるコンバージョン予測(CVR予測)について リクエスト(ユーザ、広告面) ユーザDB CVR_1 = f(userX,

    状態A, 面a ) request(userX, 面a) オンライン特徴 意思決定: g(CVR_1) userX: 状態A 55 Dynalystでは、オンラインの特徴 (特にユーザの状態)が事業的に重要 実装コストが高いオンライン推論を選択
  21. 例: オンライン推論 vs バッチ推論 広告配信におけるコンバージョン予測(CVR予測)について リクエスト(ユーザ、広告面) ユーザDB CVR_1 = f(userX,

    状態A, 面a ) request(userX, 面a) オンライン特徴 意思決定: g(CVR_1) userX: 状態A 56 芝田さんによる、Cythonでオンライン推論を高速 化した話もあります。そちらもぜひ サイバーエージェントにおけるMLOpsに関する取り組み | CA BASE NEXT - CyberAgent Developer Conference by Next Generations
  22. 例: オンライン推論 vs バッチ推論 広告配信におけるコンバージョン予測(CVR予測)について リクエスト(ユーザ、広告面) 予測値DB request(userX, 面a) CVR_2

    = f(userX)を事前計算 新規事業 g(CVR_2) userX: CVR_2 58 • ユーザの情報が事業的に重要 • リアルでの購買行動のため、状態の遷移が 頻繁に起こりにくい 実装コストが低いバッチ推論を選択 オンラインの特徴が重要になりそうな段階でオ ンライン推論に移行予定
  23. 事業立ち上げのジレンマ • ある程度再現性のある経験かも? ◦ 立ち上げを専門にいろんなプロダクトを渡り歩くとか? ◦ CAにはたくさんの部署/子会社があり、組織全体の成長につながりそう • 一方で、自分の技術資産をすり減らしてる感も... ◦

    メインのタスクはDSができる状態を用意すること ◦ 実際のDSタスクはあまりやれない ◦ => プロダクトの最前線でDSをやっている人たちとは差がついてくる ◦ 自分の少ない技術資産で、今後その人たちと戦っていけるのか...? 62
  24. 65