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

第一回☆GREE AI Programming ContestでTensorFlow

gree_tech
November 15, 2018

第一回☆GREE AI Programming ContestでTensorFlow

TensorFlow User Group #5 で発表された資料です。
https://tfug-tokyo.connpass.com/event/56100/

gree_tech

November 15, 2018
Tweet

More Decks by gree_tech

Other Decks in Technology

Transcript

  1. Copyright © GREE, Inc. All Rights Reserved. 第⼀回☆GREE AI Programming

    Contest で TensorFlow 2017/05/24 グリー株式会社 開発本部データエンジニアリンググループ 森⽥ 想平
  2. Copyright © GREE, Inc. All Rights Reserved. • グリーという会社で、全社横断的な分析基盤を開発運⽤するチームを マネジメントしています

    • 最近はAI関連システムも⾒ています • アナリストチームは別にある ⾃⼰紹介(会社の宣伝) 第⼀回☆GREE AI Programming ContestでTensorFlow
  3. Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /

    開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
  4. Copyright © GREE, Inc. All Rights Reserved. 開催趣旨 第⼀回☆GREE AI

    Programming ContestでTensorFlow • リテラシーをあげる • 輪読会なども以前から実施 • http://www.deeplearningbook.org/ • 正しい⽅向に夢を広げたい • 低コストで使える環境を⽤意する • 使えばわかる事は多い(使わないとよくわからない) • なるべく沢⼭のエンジニアが触った⽅がよい • 応⽤範囲が広い • 興味ある⼈も多い
  5. Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /

    開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
  6. Copyright © GREE, Inc. All Rights Reserved. • ⽇時 •

    2016年9⽉中旬 2週間 • 最初1週間の予定だったが伸びた • 参加者数 • 18チーム 30⼈くらい • 思ったより多くなったので途中で締め切り 開催概要 第⼀回☆GREE AI Programming ContestでTensorFlow
  7. Copyright © GREE, Inc. All Rights Reserved. • お題 •

    画像の2値分類 • 決まりごと • チーム戦(1〜3名) • ⽣成されたモデルの権利は会社に帰属 • 簡単な賞品あり • 画像の取り扱いについて取り決めをし、誓約する • Ex. コンテスト環境(AWS)外への持ち出し禁⽌。ローカルPC使⽤不可 • 業務外の時間で お題 第⼀回☆GREE AI Programming ContestでTensorFlow
  8. Copyright © GREE, Inc. All Rights Reserved. • 学習データセット •

    OK: 30,000件、NG: 10,000件 • 評価データセット • 6,000件のhash key+labelを、規定のAPIに送信すると、そのう ち秘密の4,000件のみを対象にしたスコアを返す • コンテスト期間終了後、最後に送信されたデータ6,000件すべてを利 ⽤した精度で順位を判定 • つまり、最終結果だけ6,000件すべてを利⽤する 評価⽅法 第⼀回☆GREE AI Programming ContestでTensorFlow
  9. Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /

    開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
  10. Copyright © GREE, Inc. All Rights Reserved. • コンテスト⽤のAWS環境 •

    サンプルプログラム • サンプルプログラムが動くようセットアップしたAMI • データセット • スコア計算のためのAPIサーバ • サポートチャット 運営側が⽤意したもの 第⼀回☆GREE AI Programming ContestでTensorFlow
  11. Copyright © GREE, Inc. All Rights Reserved. • なんでAWSだったのか •

    業務で幅広く利⽤しており、アカウントやセキュリティ周りの設 定等になれてたから • (Google) Cloud Datalabも検討しました • 専⽤アカウントを作り、そこに各チームがEC2をたてて、作業を⾏う • g2.2xlargeが各チーム1インスタンス • APIサーバもそのアカウントの中にある 運営側が⽤意したもの コンテスト⽤のAWS環境
  12. Copyright © GREE, Inc. All Rights Reserved. • (注︓コンテストは2016/09に実施しました) •

    CUDA 7.5-18 (for Ubuntu14.04) • cuDNN v4.0 for CUDA 7.0 • Python3 • TensorFlow 0.9.0 • がインストールしてあるAMIを⽤意 • awsコマンド⽤の設定ファイルに上記AMI(やセキュリティグループ 等)を書いておいて、それを使ってインスタンス作成等してもらう 運営側が⽤意したもの サンプルプログラムが動くようセットアップしたAMI
  13. Copyright © GREE, Inc. All Rights Reserved. • サンプルコードとデータはS3に置いておき、コピーしてもらう •

    データはStandard TensorFlow formatと⽣画像の両⽅⽤意 • 4万枚程度 • サンプルコード • ⽣TensorFlow • 畳み込み層が2層、全結合が1層の、⽐較的単純なネットワーク 運営側が⽤意したもの サンプルコードとデータセット トレーニング % python train.py --data_dir='data/train/*' --max_steps=100000 評価 % python output.py --checkpoint_dir=./train --eval_data=data/eval > result.json
  14. Copyright © GREE, Inc. All Rights Reserved. • WebUIからチーム名を登録してもらってAPIキーを発⾏ •

    回答の送信時にはチーム名とAPIキーで認証 • 回答の送信はAPIを直接叩いてもいいけど、ラップしたコードを配る • チーム⼀覧と現時点でのランキングを表⽰できる • 最終スコアを⼀番最後の回答に対して計算する • スコアは単純な正解率(正しく分類できたデータの⽐率) 運営側が⽤意したもの スコア計算のためのAPIサーバ 評価結果をAPIサーバに送信 % ./submit result.json
  15. Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /

    開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
  16. Copyright © GREE, Inc. All Rights Reserved. • モデルの改善 •

    とりあえず複雑にしたり • 前処理の⼯夫 • 画像に既存の仕組み( Cloud Vision APIか何か)ラベルをつけて、 そのラベルを特徴にして分類した。 • ⽬視でもっと細かいラベルを⾃分たちでひたすらつけた • こっちの⽅が効果があった コンテスト中のできごと 第⼀回☆GREE AI Programming ContestでTensorFlow
  17. Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /

    開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
  18. Copyright © GREE, Inc. All Rights Reserved. • 参加者の感想 •

    とりあえずマシンパワーが貧弱 • 基本的に学習がゆっくり • 3⼈チームで1⼈がGPU使うと2⼈が暇⼈になる • 分散もしたくなる • 運営の感想 • 動いてよかった • 実アプリに適⽤する場合のだいたいの流れが把握できた • こういうのに興味ある⼈や、各⼈の熱量がわかってよかった 終わってみて 第⼀回☆GREE AI Programming ContestでTensorFlow
  19. Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /

    開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
  20. Copyright © GREE, Inc. All Rights Reserved. • 深層学習に慣れ親しむためのプログラミングコンテストを実施した •

    たくさんのエンジニアが、体験できた • 参加者はTensorFlowを書くだけのつもりだった • つもりだったが、結局前処理を頑張る感じになりました • 私が浅はかでした • 第⼆回もやる予定 まとめ 第⼀回☆GREE AI Programming ContestでTensorFlow