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

Cookpad TechConf2022 / Machine-Learning-At-Cook...

Cookpad TechConf2022 / Machine-Learning-At-Cookpad-Mart

2022/11/25 に行われた Cookpad TechConf 2022 で発表された 「新規事業クックパッドマートを 支える機械学習の技術」の資料です。

Speaker1: Yusuke Fukasawa https://twitter.com/fukkaa1225
Speaker2: Yasuhiro Yamaguchi https://twitter.com/altescy

Yusuke Fukasawa

November 30, 2022
Tweet

More Decks by Yusuke Fukasawa

Other Decks in Technology

Transcript

  1. 16

  2. 17 RecVAE KL Divergence User Rating Matrix μ log σ^2

    User Rating Matrix log σ^2 Cross-Entropy Loss μ Encoder Weights: θ_old Dropout rate: 0 Encoder Weights: θ Dropout rate: 0.5 Decoder Weights: θ Predicted User Rating Matrix
  3. 工夫したこと.1 19 • 精度以外の指標にも着目する ◦ レコメンドの順位を評価するNDCGと合わせて、以下の指標を特に注視 ▪ Item Coverage •

    レコメンデーションが偏っていないか ▪ Average Popularity • 人気商品ばかりが上位に並んでいないか ◦ 学習にかかる時間
  4. 20 MacridVAE NDCG: ◦ ItemCoverage: ◦ AveragePopularity: × Training Time:

    × RecVAE NDCG: ◦ ItemCoverage: △ AveragePopularity: △ Training Time: ◦
  5. 工夫したこと.2 22 • 定性評価を怠らない ◦ 推薦結果をたくさん グッと睨む ◦ Beyond Metrics

    ▪ アルゴリズムの 性格を理解する カバレッジは低いが サーモンに玉ねぎ → カルパッチョだ! 合わせ買いしやすい カバレッジは高いけど サーモンに真鯛 → 美味しそうだけど 役割が似てる? 脳内会議 (玉ねぎ) (真鯛刺身) RecVAE (ItemCoverage: 0.3) Item2Vec (ItemCoverage: 0.5)
  6. ユーザレビューの半自動チェック 26 • レビューテキスト・投稿画像それ ぞれをスコアリング • しきい値 → Slack 通知

    • 最終的に hide するかどうかは CS の方による手動 ◦ 業務負担の削減が目的 熟れ過ぎて包丁で剥けませんでした 美味しかったのですが 少し変色しているところがありました とても美味しいしらすでした!
  7. ユーザレビューチェッカーを高速に実装する 27 • 半自動監視の仕組みが、レシピサービスのつくれぽに対して既に存在 している ◦ 画像: 「料理・食べ物画像かどうか」を判定するモデル ◦ テキスト:

    つくれぽのメッセージについて、不適切かどうかをスコアリングす るモデル • レビューチェックを素早く実装するために、似た仕組みのこれらを活用
  8. 29 BiLSTM Max-Pool Avg-Pool Sum Concat Feed-Forward fastText よかった/ざんねん •

    過去に投稿されたレビューのコメ ントからよかった/ざんねんを予測 するように学習 • Global/Localな特徴を捉えるため に複数のPoolingを導入 レビューコメント レビューチェック: テキスト
  9. 商品の内容を表す「キーワード」を紐づけたい 32 • クックパッドマートの商品名は多様 ◦ 商品名は出品者によって自由に入力される ◦ 商品名に表記揺れ・キャッチコピーなどが含まれる ◦ 商品の実態を機械的に判断することが困難

    • 商品のタイトル等から実態を表す食材キーワードを付与したい ◦ 愛知県産 グリーンアスパラ → アスパラガス ◦ 甘くて美味しいシルクスイート → さつまいも
  10. 商品の内容を表す「キーワード」を紐づけたい 33 • クックパッドマートの商品名は多様 ◦ 商品名は出品者によって自由に入力される ◦ 商品名に表記揺れ・キャッチコピーなどが含まれる ◦ 商品の実態を機械的に判断することが困難

    • 商品のタイトル等から実態を表す食材キーワードを付与したい ◦ 愛知県産 グリーンアスパラ → アスパラガス ◦ 甘くて美味しいシルクスイート → さつまいも
  11. 食材キーワード予測における課題 • 扱う商品のバリエーションの多さ ◦ 1万以上の商品が出品されている ◦ あまりスーパーなどで見かけない商品もあり、種類の分布はロングテール • 商品名の表記揺れ ◦

    漢字・かな・略称 : 豚肉小間切れ /豚コマ / 豚小間肉 ◦ 食材名・品種名の違い : じゃがいも / メークイン / キタアカリ • Fine-grained な分類の必要性 ◦ 同じ「牛肉」でも、「ステーキ用」や「切り落とし」などの区別が必要 ◦ 「加熱用」「生食用」の区別も 34
  12. まとめ 38 • レコメンデーション … バランスを表す指標・定性評価の重要性 • レビューチェック ... 高速に通知機能を実装

    • キーワードサジェスト … 多様な表記・分類に対応 • 今後も機械学習を使って、クックパッドを大成長させます 💪