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
140
第一回☆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
1.1k
『ヘブンバーンズレッド』におけるフィールドギミックの裏側
gree_tech
PRO
2
370
セキュリティインシデント対応の体制・運用の試行錯誤 / greetechcon2024-session-a1
gree_tech
PRO
1
370
『アナザーエデン 時空を超える猫』国内海外同時運営実現への道のり ~別々で開発されたアプリを安定して同時リリースするまでの取り組み~
gree_tech
PRO
1
330
『アサルトリリィ Last Bullet』におけるクラウドストリーミング技術を用いたブラウザゲーム化の紹介
gree_tech
PRO
1
380
UnityによるPCアプリの新しい選択肢。「PC版 Google Play Games」への対応について
gree_tech
PRO
1
680
実機ビルドのエラーによる検証ブロッカーを0に!『ヘブンバーンズレッド』のスモークテスト自動化の取り組み
gree_tech
PRO
1
430
"ゲームQA業界の技術向上を目指す! 会社を超えた研究会の取り組み"
gree_tech
PRO
1
510
Jamstack でリニューアルするグリーグループのメディア
gree_tech
PRO
2
650
Other Decks in Technology
See All in Technology
DIってなんだか難しい? 依存という概念を「使う・使われる」 という言葉で整理しよう
akinoriakatsuka
1
750
スケールアップ企業のQA組織のバリューを最大限に引き出すための取り組み
tarappo
4
760
モノリスの認知負荷に立ち向かう、コードの所有者という思想と現実
kzkmaeda
0
100
View Transition API
shirakaba
1
850
30代エンジニアが考える、エンジニア生存戦略~~セキュリティを添えて~~
masakiokuda
4
1.9k
Redefine_Possible
upsider_tech
0
180
DevinはクラウドエンジニアAIになれるのか!? 実践的なガードレール設計/devin-can-become-a-cloud-engineer-ai-practical-guardrail-design
tomoki10
3
1k
単一の深層学習モデルによる不確実性の定量化の紹介 ~その予測結果正しいですか?~
ftakahashi
PRO
3
510
20250326_管理ツールの権限管理で改善したこと
sasata299
0
150
Keynote - KCD Brazil - Platform Engineering on K8s (portuguese)
salaboy
0
120
年末調整プロダクトの内部品質改善活動について
kaomi_wombat
0
140
パスキーでのログインを 実装してみよう!
hibiki_cube
0
570
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
The Invisible Side of Design
smashingmag
299
50k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
460
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Gamification - CAS2011
davidbonilla
80
5.2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Navigating Team Friction
lara
183
15k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
It's Worth the Effort
3n
184
28k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Statistics for Hackers
jakevdp
797
220k
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
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.