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
320
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
第一回☆GREE AI Programming ContestでTensorFlow
TensorFlow User Group #5 で発表された資料です。
https://tfug-tokyo.connpass.com/event/56100/
gree_tech
PRO
November 15, 2018
More Decks by gree_tech
See All by gree_tech
AI画像認識を活用したゲーム内決済処理検証の自動化
gree_tech
PRO
0
85
長期運営で肥大化したExcelマスターデータの解消に向けた移行事例
gree_tech
PRO
0
84
ゲームにおけるメディアミックス展開との向き合い方 -ヘブンバーンズレッドのメディアミックス企画の立て方-
gree_tech
PRO
0
89
課題発見から始めるプロダクト密着型TA組織立ち上げ 〜小規模TAチームが3Dアセットの生産性を倍にした方法〜
gree_tech
PRO
0
95
属人化を叩き割れ!「制作加速」と「安定化」の矛盾を打破する:8年目プロダクトが辿り着いた「ミスが起こり得ない」アセット制作フローの全貌
gree_tech
PRO
0
88
20年続く長寿タイトルが、15年目にして売上を伸ばせた理由
gree_tech
PRO
0
86
我々はどう生きるか
gree_tech
PRO
1
830
変わるもの、変わらないもの :OSSアーキテクチャで実現する持続可能なシステム
gree_tech
PRO
0
5.2k
マネジメントに役立つ Google Cloud
gree_tech
PRO
0
84
Other Decks in Technology
See All in Technology
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
4.4k
20分でわかるセキュアAPI
nwiizo
2
300
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
9
3k
メルカリのグローバルアプリで挑んだ AlloyDB 運用と課題解決の実践記
hatappi
0
250
ラジオの科学
frievea
0
340
My broken English still works: speaking at global OSS events
naruoga
0
110
なぜ Temporal の大小比較には compare しかないのか / Why Does Temporal Only Have compare() for Comparisons
kazukihayase
1
150
その“隠したつもり”が命取り ── 自前と平文をやめて「正解」に委ねる
kuroneko13
0
130
まちスペース®とデジタルツインと「まちづくり」
hiro_ogi
0
130
35分でわかるEffective Platform Engineering
nwiizo
3
200
会社紹介資料 / Sansan Company Profile
sansan33
PRO
24
430k
FPGAが実現する遠方宇宙の高空間分解能天体撮影 -大型地上望遠鏡の視力を補正する「補償光学」とは?-
komei_mt
0
320
Featured
See All Featured
WENDY [Excerpt]
tessaabrams
11
39k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
210
Bash Introduction
62gerente
615
220k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.4k
Embracing the Ebb and Flow
colly
88
5.1k
Site-Speed That Sticks
csswizardry
13
1.4k
Building the Perfect Custom Keyboard
takai
2
840
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.5k
Facilitating Awesome Meetings
lara
57
7.1k
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.