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

[JA] Has Image Recognition Technology Surpassed Human Abilities?

mercari
PRO
September 30, 2017
2.6k

[JA] Has Image Recognition Technology Surpassed Human Abilities?

mercari
PRO

September 30, 2017
Tweet

Transcript

  1. Mercari Tech Conf 2017
    Machine Learning Engineer
    Takuma Yamaguchi
    画像認識技術は人間を超えたのか?
    ~ メルカリにおける商品画像認識の現状と今後の発展 ~

    View Slide

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

    View Slide

  3. 5.1

    View Slide

  4. 5.1
    O. Russakovsky, et al. ImageNet Large Scale Visual Recognition
    Challenge. IJCV, 2015.

    View Slide

  5. View Slide

  6. View Slide

  7. メルカリと ImageNet の画像データ
    メルカリ
    • カテゴリ数: 1,100+
    • 服
    • 靴
    • バッグ
    • 本
    ImageNet (ILSVRC)
    • カテゴリ数: 1,000
    • milk can
    • rugby ball
    • paper towel
    • earthstar
    • envelope
    • miniskirt, mini
    • cowboy hat, ten-gallon hat
    • Trolleybus, trolley coach
    • etc...
    • 車
    • ハンドメイド
    • 化粧品
    • おもちゃ
    • etc...
    識別の難易度はメルカリ・ImageNet で大きく変わらなさそう
    → メルカリの商品画像においても人間の識別能力を機械学習で実現できるのでは?

    View Slide

  8. 商品カテゴリの認識
    • データ
    • 1,108 クラス
    • 学習用: 220万枚
    • テスト用: 11万枚
    • Framework
    • TensorFlow
    • モデル
    • Deep Neural Networks
    • Inception-v3
    • https://github.com/tensorflow/models
    • 学習環境
    • AWS EC2 p2.8xlarge
    • CPU x 32
    • GPU(Tesla K80) x 8
    • 学習パラメータ等
    • Learning Rate: 0.1
    • Batch Size: 256
    • Epoch: 15 (60時間)
    • ほとんどチューニングせず

    View Slide

  9. 商品カテゴリの認識
    Top-5 Error: 29.3%
    データクリーニングもパラメータチューニングして
    いない割に識別できているが、これは人間レベル
    の精度なのか?
    多くのカテゴリにおいては、うま
    く識別できている様子
    さらによくすることは可能?
    何が起きているのか?
    改善は可能か?

    View Slide

  10. 識別率の悪いカテゴリ
    • レディース > 小物 > その他
    • レディース > バッグ > その他
    • レディース > トップス > その他
    • レディース > その他 > その他
    • メンズ > その他
    • ベビー・キッズ > その他 > その他
    • ハンドメイド > 趣味/おもちゃ > その他
    • スポーツ・レジャー > その他 > その他
    • コスメ・香水・美容 > その他 > その他
    • エンタメ・ホビー > コレクション > ノベルティグッズ
    • エンタメ・ホビー > コレクション > その他
    • エンタメ・ホビー > その他 > その他
    • インテリア・住まい・小物 > その他
    • その他 > 日用品/生活雑貨/旅行 > 日用品/生活雑貨
    • その他 > 日用品/生活雑貨/旅行 > その他
    • その他 > アンティーク/コレクション > 雑貨
    • その他 > アンティーク/コレクション > その他
    • その他 > その他
    ほとんどが “その他” のカテゴリで、選
    択肢がないため選択したものなので仕
    方がない

    View Slide

  11. 誤識別の分析
    • ベビー・キッズ > キッズ服(女の子用) 100cm~ > ジャケット/上着 (0.3682)
    • ベビー・キッズ > ベビー服(女の子用) ~95cm > アウター (0.3037)
    • ベビー・キッズ > ベビー服(男女兼用) ~95cm > アウター (0.0615)
    • ベビー・キッズ > キッズ服(男女兼用) 100cm~ > ジャケット/上着 (0.0529)
    • ベビー・キッズ > ベビー服(男の子用) ~95cm > アウター (0.0481)
    カッコ内の数字は識別の確度を表
    すスコアで、すべての候補のスコア
    の和は 1.0 となる

    View Slide

  12. 誤識別の分析
    カッコ内の数字は識別の確度を表
    すスコアで、すべての候補のスコア
    の和は 1.0 となる
    正解は・・・ベビー・キッズ > キッズ服(男の子用) 100cm~ > ジャケット/上着
    (正解: お客様が選択したカテゴリ
    )
    • ベビー・キッズ > キッズ服(女の子用) 100cm~ > ジャケット/上着 (0.3682)
    • ベビー・キッズ > ベビー服(女の子用) ~95cm > アウター (0.3037)
    • ベビー・キッズ > ベビー服(男女兼用) ~95cm > アウター (0.0615)
    • ベビー・キッズ > キッズ服(男女兼用) 100cm~ > ジャケット/上着 (0.0529)
    • ベビー・キッズ > ベビー服(男の子用) ~95cm > アウター (0.0481)

    View Slide

  13. 誤識別の分析
    • レディース > ジャケット/アウター > ピーコート (0.4849)
    • メンズ > ジャケット/アウター > ピーコート (0.3372)
    • ベビー・キッズ > キッズ服(男の子用) 100cm~ > コート (0.0305)
    • ベビー・キッズ > キッズ服(男女兼用) 100cm~ > コート (0.0289)
    • レディース > ジャケット/アウター > トレンチコート (0.0176)
    カッコ内の数字は識別の確度を表
    すスコアで、すべての候補のスコア
    の和は 1.0 となる

    View Slide

  14. 誤識別の分析
    正解は・・・ベビー・キッズ > キッズ服(男の子用) 100cm~ > ジャケット/上着
    カッコ内の数字は識別の確度を表
    すスコアで、すべての候補のスコア
    の和は 1.0 となる
    (正解: お客様が選択したカテゴリ
    )
    • レディース > ジャケット/アウター > ピーコート (0.4849)
    • メンズ > ジャケット/アウター > ピーコート (0.3372)
    • ベビー・キッズ > キッズ服(男の子用) 100cm~ > コート (0.0305)
    • ベビー・キッズ > キッズ服(男女兼用) 100cm~ > コート (0.0289)
    • レディース > ジャケット/アウター > トレンチコート (0.0176)

    View Slide

  15. 誤識別の分析
    ベビー・キッズ > キッズ服(男の子用) 100cm~ > ジャケット/上着
    • 複数のカテゴリが当てはまる場合がある
    • ピンクの水玉のジャケットが男の子用であってもおかしいことではない
    • サイズがわずかに違うだけの商品は写真からでは人間も見分けられない
    • 服だけでなく靴などにも当てはまる
    間違え方の傾向が、人間とよく似ていることも多く、非常に興味深い

    View Slide

  16. ベビー・キッズ > おもちゃ > 知育玩具 (0.7098)
    誤識別の分析
    ベビー・キッズ > おもちゃ > 知育玩具
    ベビー・キッズ > おもちゃ > オルゴール (0.9111)

    View Slide

  17. 誤識別の分析
    ベビー・キッズ > おもちゃ > 知育玩具
    ベビー・キッズ > おもちゃ > オルゴール
    ルーピングとメリーの識別能力が未
    熟のようで、画像の多様性に対し
    て、学習不足 / データ不足であった
    可能性が高い
    ベビー・キッズ > おもちゃ > オルゴール (0.9111)
    CNNの中間層を利用して商品同士の類似度計算が可能

    View Slide

  18. 精度改善のためには?
    No one tells a child how to see, especially in the early years. They learn this through
    real-world experiences and examples. If you consider a child's eyes as a pair of biological
    cameras, they take one picture about every 200 milliseconds, the average time an eye
    movement is made. So by age three, a child would have seen hundreds of millions of
    pictures of the real world. That's a lot of training examples. So instead of focusing solely
    on better and better algorithms, my insight was to give the algorithms the kind of training
    data that a child was given through experiences, in both quantity and quality.

    View Slide

  19. 結局、画像認識術は人間を超えているのか?
    • メルカリの商品画像のカテゴリ認識において
    • (具体的な数値目標はないが) まだ超えられていない
    • 既存の認識技術で人間の識別能力を再現できる可能性はある
    • 多様性に耐えうるように、より大規模なデータセットで学習する必要がある
    • カテゴリ認識だけでなく
    • ブランド
    • 商品名
    • 商品状態
    • 価格帯
    の推定など、画像認識技術により、
    よりよいカスタマエクスペリエンスを提供できる余地が十分にある

    View Slide

  20. 商品ブランドの認識
    商品カテゴリの認識モデルと同じくInception-v3
    Under Armour Converse PUMA
    識別結果

    View Slide

  21. 商品ブランドの認識
    Timberland
    Tommy Hilfiger Gucci

    View Slide

  22. Deep Neural Networksは何を見て識別しているのか?
    Bolei Zhou, et al., Learning Deep Features for Discriminative Localization, CVPR 2016.
    • Class Activation Mappingというテクニックで可視化できる
    • 一般的な Convolutional Neural Networks なら適用可能
    • Inception-v3においても適用可能

    View Slide

  23. Deep Neural Networksは何を見て識別しているのか?

    View Slide

  24. 商品ブランドの認識

    View Slide

  25. 商品ブランドの認識

    View Slide

  26. 画像説明文の生成
    • Oriol Vinyals, et al., Show and tell: A neural
    image caption generator, CVPR 2015.
    • https://github.com/tensorflow/models/tree
    /master/im2txt
    • https://research.googleblog.com/2016/09/
    show-and-tell-image-captioning-open.html
    画像のカテゴライズだけでなく、説明文の生成の研究も進んでいる
      → 商品画像から商品タイトルも生成できるのでは?

    View Slide

  27. 商品タイトルを含む商品情報の推定
    タイトル
    ブランド
    カテゴリ
    価格
    カラー
    画像
    Deep Neural Networks / Deep Learningを中心とした複数の推定モデルを学習
    ベビー・キッズ
    > キッズ靴
    > サンダル
    クロックス
    クロックバンド
    Crocs
    ¥1,500 〜 ¥2,500
    ピンク
    合計で5,000万件以上の
    商品データを学習データとして利用
    (現状、精度評価段階であり定量的な評価結果を公開できるまでに至っていない )

    View Slide

  28. 製品知識・ブランド知識がない人にとっては人間を超えていると思える結果も出ている
    商品タイトルを含む商品情報の推定

    View Slide

  29. 商品タイトルを含む商品情報の推定
    製品知識・ブランド知識がない人にとっては人間を超えていると思える結果も出ている

    View Slide

  30. Google VisionAPIとの比較
    Labels
    Vision API
    OCRをやっていないにもかかわらず
    画像特徴から商品タイトルを正しく生成できている
    SHARP AQUOSのリモコンである
    という情報が得られている

    View Slide

  31. Google VisionAPIとの比較
    Labels
    Vision API
    Text
    OCRをやっていないにもかかわらず
    画像特徴から商品タイトルを正しく生成できている
    ソウルに関する雑誌であることが
    認識できている

    View Slide

  32. Google VisionAPIとの比較
    Labels
    Vision API
    新生児〜乳幼児のいる家庭
    においては認知されている商品
    おしりふきウォーマー / ベビーグッズ
    であることは認識できていない

    View Slide

  33. まとめ
    • ImageNet (ILSVRC) のカテゴリ認識では人間の精度を達成とされている
    • メルカリの商品画像を利用したカテゴリ分類モデルを学習
    • ImageNetの識別率には数値的に遠い結果が得られた
    • 誤識別率の高いカテゴリ
    • “その他” カテゴリのような定義があいまいなカテゴリ
    • サイズや性別によってわけられたカテゴリ (メンズ / レディース / キッズ)
    • 改善の余地は多々ある
    • 学習時のハイパーパラメータ調整
    • 学習データの追加(特に多様な商品を含むカテゴリ )
    • 今後発展
    • カテゴリだけではなく、商品タイトル、ブランド、価格、カラーなども含めた推定
    • それらの項目を推定するプロトタイプはできており、現在性能評価中
    • 製品知識・ブランド知識がない場合には、人間の能力を超えていると感じられる結果も含まれる
    • e.g. コンビ おしりふきウォーマー / ブルガリ プールオム

    View Slide

  34. Thank You

    View Slide