フリマアプリ「メルカリ」の多様なデータと機械学習 @TECH PLAY Conference 2017

フリマアプリ「メルカリ」の多様なデータと機械学習 @TECH PLAY Conference 2017

メルカリでは、多様で大量のデータが日々増え続けています。出品時に入力される、商品説明文やタイトルのテキストデータ、商品カテゴリやブランドのカテゴリカルデータや商品画像データ、さらには、お客さまの商品検索・閲覧・購入といった行動の時系列データ、お客さま同士の価格交渉や商品取引の対話データなど、多岐にわたります。当セッションでは、これらのデータを活用したサービスの改善事例や取り組みについて紹介いたします。

49d1983432b4fb651bb9d3c9c3740616?s=128

Takuma Yamaguchi

August 25, 2017
Tweet

Transcript

  1. 2.

    自己紹介 • 学生時代 ◦ パターン認識・画像処理・機械学習の研究 ◦ 博士(工学) • パッケージソフト会社 ◦

    画像認識、音声認識アルゴリズムの研究 ▪ OCR / 音声認識エンジン • 交通インフラ系の製造業 ◦ オペレーションズリサーチ ▪ 鉄道運賃計算アルゴリズム ◦ 画像認識、コンピュータビジョンの研究 ▪ 改札機、駐車場、監視カメラ 2 • ソーシャルゲーム会社 ◦ データ分析基盤の開発・運用 ▪ Hadoop / Spark / Hive / Presto ◦ サーバーサイド • 株式会社メルカリ ◦ 2016年〜 ◦ 画像認識を中心とした機械学習 ◦ サーバーサイド 山口 拓真 (Takuma YAMAGUCHI)
  2. 3.

    フリマアプリ「メルカリ」とは • 日本最大のフリマアプリ ◦ フリマアプリ利用者中約9割がメルカリを利用 ◦ 月間の流通額100億円超 ◦ 1日あたり100万出品 ◦

    アプリダウンロード数 (日本5,000万、アメリカ2,500万) • 安心安全の決済 ◦ エスクロー ◦ お金のやり取りは当社が間に介在 • 3分で簡単出品 ◦ 写真を撮る ◦ 商品情報を記入 ◦ 出品ボタンを押すだけ 3 ※「フリマアプリの利用に関するアンケート調査期間: 2015年10月14日〜10月19日」よりジャストシステム「ファストアスク」調べ
  3. 4.

    メルカリのデータ 4 • 出品データ ◦ 100万出品 / 日 ◦ 商品画像

    ◦ 商品名 ◦ 商品説明 ◦ 商品状態 ◦ 商品価格 ◦ カテゴリ ◦ ブランド ◦ サイズ ◦ 配送方法 • サポートコミュニティ ◦ Q&Aデータ • お客さまの行動データ ◦ 商品検索 ◦ 商品タップ ◦ 商品への「いいね」 ◦ 商品へのコメント ◦ 価格交渉 ◦ 商品購入 ◦ 商品出品 ◦ 取引メッセージ ◦ 問い合わせ ◦ 商品通報 • ライブフリマ ◦ 動画データ メルカリチャンネル ライブ配信で売ったり買ったりを 楽しめるライブフリマの 動画データ 画像 / 動画 / テキスト / 行動ログなど、多岐にわたる大量のデータ
  4. 5.

    メルカリのデータ 5 • 出品データ ◦ 100万出品 / 日 ◦ 商品画像

    ◦ 商品名 ◦ 商品説明 ◦ 商品状態 ◦ 商品価格 ◦ カテゴリ ◦ ブランド ◦ サイズ ◦ 配送方法 • サポートコミュニティ ◦ Q&Aデータ • お客さまの行動データ ◦ 商品検索 ◦ 商品タップ ◦ 商品への「いいね」 ◦ 商品へのコメント ◦ 価格交渉 ◦ 商品購入 ◦ 商品出品 ◦ 取引メッセージ ◦ 問い合わせ ◦ 商品通報 • ライブフリマ ◦ 動画データ メルカリチャンネル ライブ配信で売ったり買ったりを 楽しめるライブフリマの 動画データ 画像 / 動画 / テキスト / 行動ログなど、多岐にわたる大量のデータ
  5. 6.

    メルカリのデータ 6 • 出品データ ◦ 100万出品 / 日 ◦ 商品画像

    ◦ 商品名 ◦ 商品説明 ◦ 商品状態 ◦ 商品価格 ◦ カテゴリ ◦ ブランド ◦ サイズ ◦ 配送方法 • サポートコミュニティ ◦ Q&Aデータ • お客さまの行動データ ◦ 商品検索 ◦ 商品タップ ◦ 商品への「いいね」 ◦ 商品へのコメント ◦ 価格交渉 ◦ 商品購入 ◦ 商品出品 ◦ 取引メッセージ ◦ 問い合わせ ◦ 商品通報 • ライブフリマ ◦ 動画データ メルカリチャンネル ライブ配信で売ったり買ったりを 楽しめるライブフリマの 動画データ 画像 / 動画 / テキスト / 行動ログなど、多岐にわたる大量のデータ
  6. 7.

    検索精度の改善 7 同じ検索ワードでも 検索したいものは人それぞれ • 検索の意図を推定 ◦ 面白い ◦ 効果ありそう

    ◦ 行動ログから推定できそう • 検索ワードのサジェストの改善 ◦ カテゴリフィルタの追加 ◦ 検索→タップログから集計 • 検索アルゴリズムの改善
  7. 8.

    検索精度の改善 8 同じ検索ワードでも 検索したいものは人それぞれ • 検索の意図を推定 ◦ 面白い ◦ 効果ありそう

    ◦ 行動ログから推定できそう • 検索ワードのサジェストの改善 ◦ カテゴリフィルタの追加 ◦ 検索→タップログから集計 • 検索アルゴリズムの改善 ◦ 本体 / 付属品問題 ▪ 本体が欲しいのに付属品ばかり・・・ ▪ パソコン / スマートフォン / ゲーム機
  8. 9.

    メルカリのデータ 9 • 出品データ ◦ 100万出品 / 日 ◦ 商品画像

    ◦ 商品名 ◦ 商品説明 ◦ 商品状態 ◦ 商品価格 ◦ カテゴリ ◦ ブランド ◦ サイズ ◦ 配送方法 • サポートコミュニティ ◦ Q&Aデータ • お客さまの行動データ ◦ 商品検索 ◦ 商品タップ ◦ 商品への「いいね」 ◦ 商品へのコメント ◦ 価格交渉 ◦ 商品購入 ◦ 商品出品 ◦ 取引メッセージ ◦ 問い合わせ ◦ 商品通報 • ライブフリマ ◦ 動画データ メルカリチャンネル ライブ配信で売ったり買ったりを 楽しめるライブフリマの 動画データ 画像 / 動画 / テキスト / 行動ログなど、多岐にわたる大量のデータ
  9. 10.

    デモグラフィック情報 / 趣味嗜好の推定 10 よりよいユーザ体験を提供するために • タイムラインの出しわけ ◦ デモグラフィック情報の推定 ◦

    タップされた商品のタイトルを連結 ◦ TF-IDF + ナイーブベイズ分類器 • 趣味嗜好の推定 女性向け 男性向け columbia ショルダーバッグ mont-bell モンベル ショルダー バッグ、ノース フェイス、コロンビア☆ Columbia ウエストポーチ ショルダーバッグ Columbia・ショルダーバッグ ショルダーバック コロンビア
  10. 11.

    デモグラフィック情報 / 趣味嗜好の推定 11 よりよいユーザ体験を提供するために • タイムラインの出しわけ ◦ デモグラフィック情報の推定 ◦

    タップされた商品のタイトルを連結 ◦ TF-IDF + ナイーブベイズ分類器 • 趣味嗜好の推定 ◦ タップ履歴に基づくユーザクラスタリング ◦ タップされた商品のタイトルを連結 ◦ TF-IDF + k-means ◦ 例えば、プッシュ通知の文言の出しわけ インテリア好き スマホもおしゃれにしたい女子高生 小物まで気を遣うオシャレ男子
  11. 12.

    関連ワード / 関連カテゴリ / 関連ブランドの抽出 12 商品名 ダナキャラン 黒 半

    袖 シャツ カットソー トップス リフレクト アール ユー カットソー2枚 トップス トミーヒルフィガー ロ ンT ☆新品☆ CROON A SONG トップス シンプリシテェ 美品 黒 カットソー カテゴリ Tシャツ/カットソー (半袖/袖なし) (119) Tシャツ/カットソー (半袖/袖なし) (119) トップス (291) Tシャツ/カットソー (半袖/袖なし) (119) Tシャツ/カットソー (七分/長袖) (120) Tシャツ/カットソー (七分/長袖) (120) ブランド Donna Karan New York (763) ReFLEcT (1309) ofuon (392) TOMMY HILFIGER (840) CROON A SONG (503) Simplicite (7227) TAP TAP TAP TAP TAP ダナキャラン 黒 半袖 シャツ カットソー トップス リフレクト アールユー カットソー2枚 トップス トミーヒルフィガー ロン T ☆新品☆ CROON A SONG トップス シンプリシテェ 美品 黒 カットソー 119 119 291 119 120 120 763 1309 392 840 503 7227 商品名、カテゴリID、ブランドIDをタッ プ順に単純にそれぞれ連結 Word2Vecで、単語やIDのベクトル表現を抽出し、類似するものを見てみると: • 関連ワード ◦ (ワンワン, うーたん), (ダウン, ダウンジャケット) • 関連カテゴリ ◦ (ショルダーバッグ, トートバッグ, ハンドバッグ), (ひざ丈スカート, ミニワンピース, ひざ丈ワンピース) • 関連ブランド ◦ (Gap, Old Navy, Nirvana), (IBM, CybertronPC, Dell), (Coach, Lauren Merkin, Michael Kors) 検索精度の改善や、関連商品の 列挙に応用可能
  12. 13.

    メルカリのデータ 13 • 出品データ ◦ 100万出品 / 日 ◦ 商品画像

    ◦ 商品名 ◦ 商品説明 ◦ 商品状態 ◦ 商品価格 ◦ カテゴリ ◦ ブランド ◦ サイズ ◦ 配送方法 • サポートコミュニティ ◦ Q&Aデータ • お客さまの行動データ ◦ 商品検索 ◦ 商品タップ ◦ 商品への「いいね」 ◦ 商品へのコメント ◦ 価格交渉 ◦ 商品購入 ◦ 商品出品 ◦ 取引メッセージ ◦ 問い合わせ ◦ 商品通報 • ライブフリマ ◦ 動画データ メルカリチャンネル ライブ配信で売ったり買ったりを 楽しめるライブフリマの 動画データ 画像 / 動画 / テキスト / 行動ログなど、多岐にわたる大量のデータ
  13. 14.

    カスタマーサポートへの機械学習の適用 (商品通報) 14 不適切な商品に対する 報告(商品通報)機能 • カスタマーサポートスタッフによる巡回 • お客さまによる商品通報によって市場を健全化 •

    商品通報は基本的には人手で全て確認 • 誤操作によるものや、問い合わせ感覚の通報も含まれる • 商品情報や出品者情報などを利用した業務効率化を進行中 ◦ 商品通報の人手による分類結果をそのまま学習できる
  14. 15.

    カスタマーサポートへの機械学習の適用 (プロアクティブサポート) 15 問い合わせの内容は様々 • 取引手順に関するもの • 商品が届かない • 商品が思っていたものと違った

    • 間違った評価をしてしまった • 発送方法がわからない 問い合わせがなくても、お客さまをサポートしたい • 取引メッセージ等からサポート対象を抽出 ◦ USでの特定の対象について進行中 • カスタマーサポートスタッフからメッセージを送信 • プロアクティブなサポートの履歴が溜まれば自動化も視野に入れる
  15. 16.

    メルカリのデータ 16 • 出品データ ◦ 100万出品 / 日 ◦ 商品画像

    ◦ 商品名 ◦ 商品説明 ◦ 商品状態 ◦ 商品価格 ◦ カテゴリ ◦ ブランド ◦ サイズ ◦ 配送方法 • サポートコミュニティ ◦ Q&Aデータ • お客さまの行動データ ◦ 商品検索 ◦ 商品タップ ◦ 商品への「いいね」 ◦ 商品へのコメント ◦ 価格交渉 ◦ 商品購入 ◦ 商品出品 ◦ 取引メッセージ ◦ 問い合わせ ◦ 商品通報 • ライブフリマ ◦ 動画データ メルカリチャンネル ライブ配信で売ったり買ったりを 楽しめるライブフリマの 動画データ 画像 / 動画 / テキスト / 行動ログなど、多岐にわたる大量のデータ
  16. 17.

    画像認識・画像検索の取り組み 17 Convolutional Neural Network カテゴリ認識 ベビー・キッズ > キッズ靴 >

    サンダル ブランド認識 クロックス 毎日、数百万枚もの教師データ付き画像が増えていて、データには困らない 中間層を特徴ベクトルとして利用した類似画像検索
  17. 18.

    カテゴリ認識 学習画像枚数: 約220万 カテゴリ数: 1108 モデル: Inception-v3 学習時間: 約60時間 (GPU:

    Tesla K80 x 8) 正解率: 44.7% (1位)、70.7% (5位) • 1位正解率が低いのは似たカテゴリが多いため • メンズ / レディースの違いなど { "category_names": [ "サンダル << キッズ靴 << ベビー・キッズ", "サンダル << 靴 << メンズ", "サンダル << 靴 << レディース" ], "scores": [ 0.5026, 0.46905, 0.01777 ] } { "category_names": [ "ひざ丈スカート << スカート << レディース", "ロングスカート << スカート << レディース", "スカート << マタニティ << レディース" ], "scores": [ 0.43806, 0.22851, 0.09854 ] }
  18. 19.

    カテゴリ認識 { "category_names": [ "米 << 食料品 << その他", "シーツ/カバー

    << 寝具 << インテリア・住まい・小物", "飲料 << 食料品 << その他"], "scores": [0.9681, 0.0016, 0.00146] } { "category_names": [ "スニーカー << キッズ靴 << ベビー・キッズ", "サンダル << キッズ靴 << ベビー・キッズ", "その他 << キッズ靴 << ベビー・キッズ"], "scores": [0.89564, 0.05821, 0.0106] } { "category_names": [ "おもちゃ/人形 << 趣味/おもちゃ << ハンドメイド", "クラフト/布製品 << 趣味/おもちゃ << ハンドメイド", "その他 << フィギュア << エンタメ・ホビー"], "scores": [0.85471, 0.08039, 0.01565] }
  19. 20.

    ブランド認識 (靴 / バッグ) 学習画像枚数: 約4万(靴) / 約9万(バッグ) カテゴリ数: 121(靴)

    / 244 (バッグ) モデル: Inception-v3 カテゴリ認識のモデルをFineTune 学習時間: 約10時間 (GPU: Tesla K80 x 8) 正解率: - 靴 64.9% (1位)、83.61% (5位) - バッグ 55.6% (1位)、70.7%(5位) { "brand_names": [ "Lacoste", "Emerica", "Old Navy" ], "scores": [ 0.96854, 0.00452, 0.00218 ] } { "brand_names": [ "PUMA", "Saucony", "Reebok" ], "scores": [ 0.71504, 0.04703, 0.02759 ] }
  20. 21.

    ブランド認識 (靴 / バッグ) { "brand_names": [ "Gucci", "Louis Vuitton",

    "Celine" ], "scores": [ 0.95634, 0.0032, 0.00092 ] } { "brand_names": [ "Michael Kors", "Calvin Klein", "New York & Company"], "scores": [0.9791, 0.00212, 0.00082] } { "brand_names": [ "Rebecca Minkoff", "ZARA", "Levi's®"], "scores": [0.97945, 0.00082, 0.00061] }
  21. 27.

    今後の取り組み • カスタマーサポートの充実 ◦ 単にコスト削減ではなく、より良いサービスの実現のために ▪ プロアクティブサポート ▪ 問い合わせ種別の分類 (返答までの時間短縮)

    • 検索精度の改善 ◦ 情報不足でも検索可能 ◦ 検索の意図を汲み取る • 画像認識や画像検索技術の利用 ◦ 画像認識による ▪ 出品の省力化 ▪ 検索の最適化 ◦ 画像検索による商品検索 ▪ 検索対象が巨大なのが課題 ▪ 似たものの定義も重要 機械学習を利用したサービス開発は、すごく楽しい でも、わざわざ機械学習を使ったりはしない
  22. 28.