Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第一回☆GREE AI Programming ContestでTensorFlow
Search
gree_tech
PRO
November 15, 2018
Technology
0
91
第一回☆GREE AI Programming ContestでTensorFlow
TensorFlow User Group #5 で発表された資料です。
https://tfug-tokyo.connpass.com/event/56100/
gree_tech
PRO
November 15, 2018
Tweet
Share
More Decks by gree_tech
See All by gree_tech
REALITY株式会社における開発生産性向上の取り組み: 失敗と成功から学んだこと
gree_tech
PRO
2
130
『ヘブンバーンズレッド』におけるフィールドギミックの裏側
gree_tech
PRO
2
90
セキュリティインシデント対応の体制・運用の試行錯誤 / greetechcon2024-session-a1
gree_tech
PRO
1
96
『アナザーエデン 時空を超える猫』国内海外同時運営実現への道のり ~別々で開発されたアプリを安定して同時リリースするまでの取り組み~
gree_tech
PRO
1
78
『アサルトリリィ Last Bullet』におけるクラウドストリーミング技術を用いたブラウザゲーム化の紹介
gree_tech
PRO
1
89
UnityによるPCアプリの新しい選択肢。「PC版 Google Play Games」への対応について
gree_tech
PRO
1
110
実機ビルドのエラーによる検証ブロッカーを0に!『ヘブンバーンズレッド』のスモークテスト自動化の取り組み
gree_tech
PRO
1
110
"ゲームQA業界の技術向上を目指す! 会社を超えた研究会の取り組み"
gree_tech
PRO
1
140
Jamstack でリニューアルするグリーグループのメディア
gree_tech
PRO
2
300
Other Decks in Technology
See All in Technology
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
130
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
170
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
170
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
0
110
Why does continuous profiling matter to developers? #appdevelopercon
salaboy
0
180
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
1
2.3k
TypeScript、上達の瞬間
sadnessojisan
46
13k
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
200
強いチームと開発生産性
onk
PRO
33
11k
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
The Language of Interfaces
destraynor
154
24k
The Pragmatic Product Professional
lauravandoore
31
6.3k
The Cult of Friendly URLs
andyhume
78
6k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
4 Signs Your Business is Dying
shpigford
180
21k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Practical Orchestrator
shlominoach
186
10k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Building Applications with DynamoDB
mza
90
6.1k
Automating Front-end Workflow
addyosmani
1366
200k
Transcript
Copyright © GREE, Inc. All Rights Reserved. 第⼀回☆GREE AI Programming
Contest で TensorFlow 2017/05/24 グリー株式会社 開発本部データエンジニアリンググループ 森⽥ 想平
Copyright © GREE, Inc. All Rights Reserved. • グリーという会社で、全社横断的な分析基盤を開発運⽤するチームを マネジメントしています
• 最近はAI関連システムも⾒ています • アナリストチームは別にある ⾃⼰紹介(会社の宣伝) 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /
開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. 開催のきっかけ トップダウン 第⼀回☆GREE
AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. トップの気持ち 第⼀回☆GREE AI
Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. 開催趣旨 第⼀回☆GREE AI
Programming ContestでTensorFlow • リテラシーをあげる • 輪読会なども以前から実施 • http://www.deeplearningbook.org/ • 正しい⽅向に夢を広げたい • 低コストで使える環境を⽤意する • 使えばわかる事は多い(使わないとよくわからない) • なるべく沢⼭のエンジニアが触った⽅がよい • 応⽤範囲が広い • 興味ある⼈も多い
Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /
開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • ⽇時 •
2016年9⽉中旬 2週間 • 最初1週間の予定だったが伸びた • 参加者数 • 18チーム 30⼈くらい • 思ったより多くなったので途中で締め切り 開催概要 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • お題 •
画像の2値分類 • 決まりごと • チーム戦(1〜3名) • ⽣成されたモデルの権利は会社に帰属 • 簡単な賞品あり • 画像の取り扱いについて取り決めをし、誓約する • Ex. コンテスト環境(AWS)外への持ち出し禁⽌。ローカルPC使⽤不可 • 業務外の時間で お題 第⼀回☆GREE AI Programming ContestでTensorFlow
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
Copyright © GREE, Inc. All Rights Reserved. Ref. プロダクション側での実装 第⼀回☆GREE
AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /
開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • コンテスト⽤のAWS環境 •
サンプルプログラム • サンプルプログラムが動くようセットアップしたAMI • データセット • スコア計算のためのAPIサーバ • サポートチャット 運営側が⽤意したもの 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • なんでAWSだったのか •
業務で幅広く利⽤しており、アカウントやセキュリティ周りの設 定等になれてたから • (Google) Cloud Datalabも検討しました • 専⽤アカウントを作り、そこに各チームがEC2をたてて、作業を⾏う • g2.2xlargeが各チーム1インスタンス • APIサーバもそのアカウントの中にある 運営側が⽤意したもの コンテスト⽤のAWS環境
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
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
Copyright © GREE, Inc. All Rights Reserved. • WebUIからチーム名を登録してもらってAPIキーを発⾏ •
回答の送信時にはチーム名とAPIキーで認証 • 回答の送信はAPIを直接叩いてもいいけど、ラップしたコードを配る • チーム⼀覧と現時点でのランキングを表⽰できる • 最終スコアを⼀番最後の回答に対して計算する • スコアは単純な正解率(正しく分類できたデータの⽐率) 運営側が⽤意したもの スコア計算のためのAPIサーバ 評価結果をAPIサーバに送信 % ./submit result.json
Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /
開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • モデルの改善 •
とりあえず複雑にしたり • 前処理の⼯夫 • 画像に既存の仕組み( Cloud Vision APIか何か)ラベルをつけて、 そのラベルを特徴にして分類した。 • ⽬視でもっと細かいラベルを⾃分たちでひたすらつけた • こっちの⽅が効果があった コンテスト中のできごと 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /
開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • 参加者の感想 •
とりあえずマシンパワーが貧弱 • 基本的に学習がゆっくり • 3⼈チームで1⼈がGPU使うと2⼈が暇⼈になる • 分散もしたくなる • 運営の感想 • 動いてよかった • 実アプリに適⽤する場合のだいたいの流れが把握できた • こういうのに興味ある⼈や、各⼈の熱量がわかってよかった 終わってみて 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • 開催のきっかけ /
開催趣旨 • 開催概要 • 運営側が⽤意したもの • 実施期間中の出来事 • 参加者、運営者の感想など • まとめ あらすじ 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved. • 深層学習に慣れ親しむためのプログラミングコンテストを実施した •
たくさんのエンジニアが、体験できた • 参加者はTensorFlowを書くだけのつもりだった • つもりだったが、結局前処理を頑張る感じになりました • 私が浅はかでした • 第⼆回もやる予定 まとめ 第⼀回☆GREE AI Programming ContestでTensorFlow
Copyright © GREE, Inc. All Rights Reserved.