SlideShare a Scribd company logo
1 of 108
Download to read offline
本スライド中に登場するスプラトゥーン関連画像は任天堂株式会社の著作物です。
2004	
|	
2011	
2011	
|	
2014	
2014	
|	
SEサービス プリセールス 	
@	So+ware	Research	Associates,	Inc.	
システム構築、客先のシステム運用、提案でキャリアをスタート	
→	プリセールス〜PMを担当するインフラエンジニア	
システムアーキテクト @	Trigence	Semiconductor,	Inc.	、ほか	
エンベデッド開発支援、ITシステム管理、機械学習支援まで	
多岐に対応	
セールスエンジニア	
@	Fusion-io,	Inc.	
高速半導体ストレージ ioDrive	/	ioMemory	シリーズの	SE	として活動
– 
– 
– 
– 
– 
– 
様々なステージとルール	
•  16のステージ、4つのルール	
•  勝利に向けチームで立ち向かう	
	
多様な楽しみ方	
•  90以上のブキから好きなものを	
選んでプレイ
Wii	U用ゲーム「スプラトゥーン」支援ソフト	
– HDMIキャプチャを介して情報を自動取得	
– 数値・文字列データとして認識	
– お好みの方法で蓄積、出力	
Nintendo	WiiU	
& スプラトゥーン	
データ化	
{	“kills”:	5,	“deaths”:	1	}	
IkaLog	
外部ツールへ出力	
(棒読みちゃん等)	
出力例
HDMI	
キャプチャデバイス	
IkaLog	実行用PC
録画ソフト 自動制御	
AmaRecTV	
カラーLED連動	
Fluentd	転送	
スプラトゥーン戦績記録SNS	
CSV/JSONファイル保存	 スクリーンショット保存	
SNS投稿	
IkaLog
•  IkaLogユーザのひとり @fetus_hina さんが開発、
運営する Web サイト	
•  IkaLog からのプレイデータを受け取り、

表示・集計する	
•  IkaLogからの投稿を分析し

統計情報、トレンドを表示
17	https://stat.ink/
自分が倒されて	
行動不能だった時間	
イカ(味方/敵 計8匹)の生死状況	
チームのスペシャル発動、キル/デス	
自分の塗り面積	
https://stat.ink/
https://stat.ink/	
ナワバリバトル – 互いの干渉が少ない	
ガチエリア – “相手を倒しつつ生存”がカギ	
ガチホコ – 全体的に乱戦になりやすい	
ガチヤグラ – 全体的に乱戦になりやすい
https://stat.ink/
.96ガロンデコ	
アップデートをきっかけにユーザー数が激減	
ロングブラスターカスタム	
夏以降、人気を博しているブキのひとつ	
https://stat.ink/
データソース	h^ps://stat.ink/en`re/user	
【ピーク】	24時間あたり370ユーザ、約15,000ゲーム	
2016年11月時点にて	
24時間あたり 平均100ユーザ超が利用、平均2500ゲームを処理	
最後の“フェス“	
(ゲーム内イベント)
23	
勝率0%	
勝率100%
•  2014年INTEROPでの”Chainer”デモがきっかけ	
–  深層学習のプレゼンテーションみて「凄いな」と思った	
–  “何か面白いソフトウェアを作りたいな”	
–  ちょうどスプラトゥーンの発売直後だった	
•  未経験からのチャレンジ	
–  OpenCV経験 3時間ぐらい	
–  機械学習/ディープライーニング経験 なし
ここまでするなら	
自動化できるツールを作ろう!
ソース映像	 マスク画像	 加算画像	
+	
=	
=	
正しいマスクを加算すると画像が真っ白になる	
違うマスクを加算すると画像が真っ白にならない
30
31
32
33
34
35
37
•  ゲーム中で使われているフォントは2種類	
–  画面上に現れる数字フォントは1種類	
–  フォントが判っているのだから、認識できるはず	
•  試行錯誤の後、既存OCRエンジンの利用は断念	
–  機械学習ベースの認識エンジンを実装
• 
• 
– 
– 
– 
– 
– 
文字として	
認識されないことも
●	
●	●	
●	
■	
■	
■	
■	
?	
▲	
▲	
▲	
▲	
?	
?	
?	
?	
とてもシンプルな機械学習	
	
標本    の傍にあるサンプルがどれかで	
	
分類する。	
	
	
K=1	の場合は最寄りのサンプルがある	
クラスに分類される。	
	
	
K=3	の場合は近くに3つのサンプルがある	
クラスに分類される。
•  GitHub にソースあり	
–  https://github.com/hasegaw/opencv_knn_example/	
•  三つのパターン ○ △ □ で画像を生成し、

kNNで学習する	
•  ランダムに ○ △ □ から画像を生成し、その画像
の種類を判定する	
–  KNN を用いてそれに近い画像を見つけ出す	
–  見つけた画像の種類から、問題図形の種類を特定
問題図形をランダムに
生成	
K近傍法を用いて、学習済みの	
図形から、もっとも近い図形を調べる	
仕分ける	
○	 △	 □	
○	学習済み図形	
○	 △ □
1)画面上の数字部分(位置固定)を切り抜き	
2)縦・横のヒストグラムを生成し各文字の位置を特定	
	
	
3)文字を検出用サンプルのサイズ(等幅)にリサイズ、

	 	 	二値化	
	
4)KNNにより既知の検出用サンプルと照らし合わせて

	 	 	認識する
•  基本は数字の認識と一緒	
•  認識率はそれほど高くないが、認識回数で精度を確保	
–  IkaLogは現在毎秒10フレームほど解析している	
–  下記例では、死因のメッセージ合計49fを解析し、

最多頻度は96gal_deco (18f, 36%) だった → 結果的に正解	
	
votes={	
		'supershot':	6,	 	'carbon_deco':	1, 	 	'bucketslosher':	1, 	'octoshooter_replica':	1,	
		'splashshield':	1, 	'sshooter_collabo':	5, 	'hotblaster':	2,	 	'pablo':	1,	 	'nzap89':	6,	
		'sharp_neo':	3, 	'hotblaster_custom':	2, 	'96gal_deco':	18, 	'52gal':	1,	 	'hokusai':	1	
}
• 
• 
• 
黒いブレット	
明るいブレット	
背景色
黒いブレット	
明るいブレット	
背景色
• 
– 
– 
• 
– 
– 
• 
– 
– 
57
スプラトゥーンのブキ 59種類(スライド作成当時)
• 
• 
• 
• 
他の装備品が被っている	 保護色(まだマシ)	 保護色(マジつらい)
(まだバグがあった頃のバージョンの表示なので色がずれているけども)	
こんなかんじで特徴量を抽出していた
入力画像	 ラプラシアン
フィルタ適用	
グレースケール	 K近傍法による	
クラス分類	
Thanks	@itooon	
sschooter_collabo	
	
スプラシューター	
コラボ	
特徴画像
63
長所	
– 色の違いに鈍感	
– 画像の「形」でざっくり認識	
短所	
– 解像度の違いに弱い	
– 似た形の画像を正しく分類できない
スクリーンでは視認しにくいが、ユーザーが様々な解像度の画像を送ってくる「現実」
67
オリジナルのブキ	
(longblaster)	
カスタムバージョン	
(longblaster_custom)	
更に追加(Apr	2016)	
(longblaster_necro)	
出力される特徴量に被りが発生し、	
特徴量算出アルゴリズムの見直しが必要に
longblaster_necro	
longblaster_custom	
longblaster	
IkaLog内部で使用する特徴量を	
主成分分析(PCA)で2次元空間に	
投影したもの	
出力される特徴量に被りが発生し、	
特徴量算出アルゴリズムの見直しが必要に
ゲーム終了時に表示される別の画面	
画面上に表示される「ギアパワー」画像を分類する	
	
KNNの問題点	
・「メイン」ギアパワーと「サブ」ギアパワーで	
 画像の大きさが異なる	
・ユーザー環境によって解像度が異なる	
・ブキ画像同様、状況によって特徴量が変化	
	
→ 「画像サイズの変化に強い分類器がほしい」
• 
•  ❌ ⭕
– 
– 
– 
• 
• 
(本スライド中の画像の一部はイメージであり実際のものとは異なります。)	
	
オブジェクト	
ストレージ	
	
作業用	
インスタンス	
on	IaaS	
1年以上のデータを蓄積	
総データ量 4TB以上	
	
IkaLogユーザ	 stat.ink	
hasegaw
•  機械学習/深層学習の精度は前処理の精度に影響を受ける	
•  画像のズレ/ゆがみ対策(自動補正)を実装し、対策

テンプレートマッチング、最小二乗法を用いて最適候補を選定	
アスペクト比が壊れている	 なぜか画像がズレている	リファレンス	
分類に	
使用する画像
Thanks	@itoooon
長所	
– ニューラルネットワークにより認識率が大幅に向上	
短所	
– データが大きくなる(例:100MB~400MB)	
– Windows版に組み込みしづらい	
PythonスクリプトをEXE化する「Py2EXE」と

ディープラーニングフレームワークは相性が悪い	
– 処理に時間がかかる
ゲーム終了時のスクリーンショット	
stat.ink	から投稿データを深夜バッチで受け取り	
約4000枚/日	
認識対象となるブキ画像	
約24000サンプル/日	
Chainer	による	DNN	で自動的に分類	
スクリーンショットからサンプルを生成	
ブキ精度向上にあたり注目したいサンプル	
(絞り込み済)	
実際に IkaLog	が利用するブキ認識モデルの強化、テストに利用
–  入力値: RGBもしくはHSVの色情報	(47*45*3=6,345	units)	
–  出力値: 各クラスの出力値(91	units,	So+maxを適用する)	
–  使用する結合:全結合のみを使用(理由は後述)	
–  目 的:特徴量の自動生成	
•  今回の用途であれば、深層学習で特徴量を自動的に見つけ出せるはず	
•  各ブキの背景色の重みが自動的ゼロに調整されれば、背景色への考慮
も不要	
–  目標性能値	
•  目標性能値:	91クラスのマルチクラス分類が350ms未満(画面1枚あたり3
秒以内)	
•  stat.ink	の投稿データに対して99.99%の精度
0	
1	
2	
3	
..	
..	
n	
0	
1	
2	
3	
…
89	
90	
Input	Layer	 Output	Layer	Hidden	Layer	
52gal	
52gal_deco	
96gal	
96gal_deco	
…	
sschooter_wasabi	
wakaba
80
•  Azure	ML上でアルゴリズムの事前検証	
–  小さなデータセットを使用し分類器を作成	
–  入力層:	ピクセル情報(をPCAにかけたもの)	
–  隠れ層:	1層、150ユニット(暫定)	
–  出力層:	各クラス(のはず)	
•  この方針でトレーニングすれば、精度が高い分類器を	
得られるだろうと判断	
–  特に何も考えなくても98%以上の精度が得られた	
–  各種ボケ画像も、おおよそ問題なく判定できた
83
•  Azure	MLで得た結果をベースに、IkaLogに組み込む
モデルを作成する	
–  stat.inkに投稿された90万点のブキ画像を教師データとして用意	
–  フレームワーク「Chainer」を使用	
–  GPUの恩恵も受けられる	
•  学習したモデルの配布用フォーマット	
–  float32	→	float16に変換	
–  配布するモデルファイルのサイズが半減
CPU	 GPU	 #	of	
jobs	
Throughput	
(images/s)	
GPU	Time	
/epoch	(s)	
RelaJve	
perf.	
(virtual)	
Core	i7-4790S	
定格3.2GHz	
使用せず	 1	 3,928	 234.5s	 1X	
Core	i7-4790S	
定格3.2GHz	
GeForce	
GTX760	
1	 10,371	 39.2s	 5.9X	
Core	i7-4790S	
定格3.2GHz	
GeForce	
GTX760	
4	 (^l)	15,988	 25.8s	
(103	/	4)	
9.08X	
Core	i7-4790S	
定格3.2GHz	
GeForce	
GTX	1080	
4	 (^l)	30,320	 6.25s	
(25.0s	/	4)	 37.52X	
2X	E5-2630L	v3		
定格 1.80GHz	
Tesla	
P100	
4	 (^l)	65,811	 2.5s	
(10.3/4)	
93.8X	
Special	Thanks	to	
※スループットとEpochあたりのGPU処理時間は測定基準が異なるため単純比較できません。	
※マルチジョブ実行時は類似ジョブが並列動作しているためGPU実行総時間をジョブ数で割っています。	
自宅の	
Linux	Box
K近傍法	 既存ImageNet	 新ニューラルネット	
認識効率	 一部ユーザでは	
低い	
99.99+%	
	
99.99+%	
	
モデルサイズ	 20MB(現時点)	 400MB	(AlexNet)	
100MB	(GoogleNet)	
14MB	(Float32)	
7MB	(Float16)	
分類にかかる時間	
@	IvyBridge	2GHz	
とても高速	 ~300ms	 ~20ms	
•  出来合いのImageNetよりも高速、	
より小さなモデルデータ(配布物)	
•  従来のIkaLogよりも高い認識精度を実現	
Special	Thanks	to
•  ニューラルネットの順伝播処理を新規実装	
– 既存のフレームワークは組み込まない	
(Windowsユーザ対策)	
– 高度な機能を実装すると面倒なため、最低限の	
機能を絞り込んで実装(LinearFunc`on,	ReLU)	
h^ps://github.com/hasegaw/IkaLog/commit/3238b67749334a3c4254aa6f25c005f83e210895	
–  IvyBridge	2.0GHzで20ms以下、	
PYNQ-Z1	(Cortex-A9	650MHz)	で200ms以下で順伝播可能
88	
この書籍の最初の100ページ分が	
IkaLogのニューラルネットの実装	
そのものです。
•  ニューラルネットを他の用途にも適用	
–  ブキ分類器のほか、ギアパワー分類器を作る(優先度 高)	
–  ガチホコのタッチダウン分類器を作る	
–  戦況評価関数にRNNが使えるのではないか	
	
•  本当に必要なデータセットの選定	
–  21GBのデータセットには大量の重複データが含まれている	
–  重複データをうまく取り除くと学習時間、作業効率、精度に	
メリットがあると考える	
–  PCA-based	anomaly	detec`on	が使えそう
•  IkaLogでは、複数の機械学習アプローチを適用している	
–  リアルタイム処理では、おもにK近傍法(KNN)を利用	
–  入力画像にロバストな分類器を作るため、深層学習を利用	
•  特徴量の自動抽出、何十万の画像から自動的な学習	
•  IkaLogとディープラーニング	
–  Windowsアプリケーションにそのまま組み込めるような	
深層学習のフレームワークは限られている	
–  しかし、関数や機能を限定すれば、比較的容易に実装可能	
–  学習には既存の深層学習フレームワークやGPUを活用
HDMI	
キャプチャデバイス	
IkaLog	実行用PC
FPGAボード
Processor:	Dual-Core	ARM	Cortex-A9	
FPGA:	1.3	M	reconfigurable	gates	
Memory:	512MB	DDR3	/	FLASH	
Storage:	Micro	SD	card	slot	
Video:	HDMI	In	and	HDMI	Out	
Audio:	Mic	in,	Line	Out	
Network:	10/100/1000	Ethernet	
Expansion:	USB	Host	connected	to	
	ARM	PS	
Interfaces:	1x	Arduino	Header,	2x	
Pmod	(49	GPIO)	
GPIO:	16	GPIO	(65	in	total	with	
Arduino	and	Pmods)	
Other	I/O:	6x	User	LEDs,	4x	
Pushbu^ons,	2x	Switches		
Dimensions:	3.44”	x	4.81”	
	(87mm	x	122mm)
Intel	PCの6倍の時間がかかる!!
• 
– 
– 
• 
• 
• 
– 
– 
• 
• 
• 
• 
最適化の効果
• 
pi@raspberrypi:~/ikalog/IkaLog $ PYTHONPATH=./lib/ python3 bench_1024mat.py
encode 0.000015974s logical_and_popcnt 0.094928265s total 0.094944239s
<class 'ikalog.utils.ikamatcher2.reference.Numpy_uint8'>
encode 0.000014544s logical_and_popcnt 0.021027803s total 0.021042347s
<class 'ikalog.utils.ikamatcher2.reference.Numpy_uint8_fast'>
encode 0.005746365s logical_and_popcnt 0.002564192s total 0.008310556s
<class 'ikalog.utils.ikamatcher2.arm_neon.NEON'>
• 
– 
– 
• 
• 
– 
– 
ARM	Core	
HDMI	
RX	
DRAM	
RGB	
(1280,	720,	3)	
HSV	
(1280,	720,	3)	
Gray	
(1280,	720,	1)	 IkaLog実行時間の	
10.4%が色変換	
ARM	NEON	命令使用
ARM	Core	
HDMI	
RX	
Color	
Converter	
DRAM	
RGB	
(1280,	720,	3)	
HSV	
(1280,	720,	3)	
Gray	
(1280,	720,	1)	 IkaLogは色変換済みの	
データ参照のみにする	キャプチャ時にPL部で	
色変換を済ませておき	
DRAMに書き込んでおく
らぴす	(2000-2014)
©	07strikers

More Related Content

What's hot

名古屋アジャイル勉強会「XPから学ぶアジャイル」
名古屋アジャイル勉強会「XPから学ぶアジャイル」名古屋アジャイル勉強会「XPから学ぶアジャイル」
名古屋アジャイル勉強会「XPから学ぶアジャイル」hiroyuki Yamamoto
 
ネットワークカメラを使った玄関前モニタリングの苦労話
ネットワークカメラを使った玄関前モニタリングの苦労話ネットワークカメラを使った玄関前モニタリングの苦労話
ネットワークカメラを使った玄関前モニタリングの苦労話Takeshi HASEGAWA
 
Androidテスティング実践3 ユニットテスト・CI編
Androidテスティング実践3 ユニットテスト・CI編Androidテスティング実践3 ユニットテスト・CI編
Androidテスティング実践3 ユニットテスト・CI編株式会社 NTTテクノクロス
 
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移まべ☆てっく運営
 
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集yuki0211s
 
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能Study Group by SciencePark Corp.
 
ゲームエンジンの中の話
ゲームエンジンの中の話ゲームエンジンの中の話
ゲームエンジンの中の話Masayoshi Kamai
 
初心者にも丸わかり!Soft layeroverlaynetworkの魅力
初心者にも丸わかり!Soft layeroverlaynetworkの魅力初心者にも丸わかり!Soft layeroverlaynetworkの魅力
初心者にも丸わかり!Soft layeroverlaynetworkの魅力WendyKanaeUeda
 
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方Unity Technologies Japan K.K.
 
IkaLog Presentation at qpstudy 2015.11
IkaLog Presentation at qpstudy 2015.11IkaLog Presentation at qpstudy 2015.11
IkaLog Presentation at qpstudy 2015.11Takeshi HASEGAWA
 
要求開発を補完する現状分析
要求開発を補完する現状分析要求開発を補完する現状分析
要求開発を補完する現状分析Atsushi Takayasu
 
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015Yahoo!デベロッパーネットワーク
 
いまなぜドメイン駆動設計か
いまなぜドメイン駆動設計かいまなぜドメイン駆動設計か
いまなぜドメイン駆動設計か増田 亨
 

What's hot (20)

初心者向けデバイスドライバ講座(1)
初心者向けデバイスドライバ講座(1)初心者向けデバイスドライバ講座(1)
初心者向けデバイスドライバ講座(1)
 
名古屋アジャイル勉強会「XPから学ぶアジャイル」
名古屋アジャイル勉強会「XPから学ぶアジャイル」名古屋アジャイル勉強会「XPから学ぶアジャイル」
名古屋アジャイル勉強会「XPから学ぶアジャイル」
 
ネットワークカメラを使った玄関前モニタリングの苦労話
ネットワークカメラを使った玄関前モニタリングの苦労話ネットワークカメラを使った玄関前モニタリングの苦労話
ネットワークカメラを使った玄関前モニタリングの苦労話
 
ssmjp October 2014
ssmjp October 2014ssmjp October 2014
ssmjp October 2014
 
Androidテスティング実践3 ユニットテスト・CI編
Androidテスティング実践3 ユニットテスト・CI編Androidテスティング実践3 ユニットテスト・CI編
Androidテスティング実践3 ユニットテスト・CI編
 
初心者向けデバイスドライバ講座(6)
初心者向けデバイスドライバ講座(6)初心者向けデバイスドライバ講座(6)
初心者向けデバイスドライバ講座(6)
 
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
 
ドライバへのETWの埋め込み
ドライバへのETWの埋め込みドライバへのETWの埋め込み
ドライバへのETWの埋め込み
 
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
 
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
 
ゲームエンジンの中の話
ゲームエンジンの中の話ゲームエンジンの中の話
ゲームエンジンの中の話
 
初心者向けデバイスドライバ講座 (2)
初心者向けデバイスドライバ講座 (2) 初心者向けデバイスドライバ講座 (2)
初心者向けデバイスドライバ講座 (2)
 
Androidアプリケーション開発中級研修 前編
Androidアプリケーション開発中級研修 前編Androidアプリケーション開発中級研修 前編
Androidアプリケーション開発中級研修 前編
 
初心者にも丸わかり!Soft layeroverlaynetworkの魅力
初心者にも丸わかり!Soft layeroverlaynetworkの魅力初心者にも丸わかり!Soft layeroverlaynetworkの魅力
初心者にも丸わかり!Soft layeroverlaynetworkの魅力
 
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
 
IkaLog Presentation at qpstudy 2015.11
IkaLog Presentation at qpstudy 2015.11IkaLog Presentation at qpstudy 2015.11
IkaLog Presentation at qpstudy 2015.11
 
要求開発を補完する現状分析
要求開発を補完する現状分析要求開発を補完する現状分析
要求開発を補完する現状分析
 
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
 
いまなぜドメイン駆動設計か
いまなぜドメイン駆動設計かいまなぜドメイン駆動設計か
いまなぜドメイン駆動設計か
 
Androidアプリケーション開発中級研修 後編
Androidアプリケーション開発中級研修 後編Androidアプリケーション開発中級研修 後編
Androidアプリケーション開発中級研修 後編
 

Viewers also liked

Polyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGAPolyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGAryos36
 
ゆるふわコンピュータ (IPSJ-ONE2017)
ゆるふわコンピュータ (IPSJ-ONE2017)ゆるふわコンピュータ (IPSJ-ONE2017)
ゆるふわコンピュータ (IPSJ-ONE2017)Shinya Takamaeda-Y
 
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法Kentaro Sano
 
Golang, make and robotics #gocon
Golang, make and robotics #goconGolang, make and robotics #gocon
Golang, make and robotics #goconHideyuki TAKEI
 
集積回路が真の道具になるために
集積回路が真の道具になるために集積回路が真の道具になるために
集積回路が真の道具になるためにJunichi Akita
 
cocos2d-x で PlugAir を 使えるようにしてみた
cocos2d-x で PlugAir を 使えるようにしてみたcocos2d-x で PlugAir を 使えるようにしてみた
cocos2d-x で PlugAir を 使えるようにしてみたHideyuki TAKEI
 
2017年のFPGA Community活動について
2017年のFPGA Community活動について2017年のFPGA Community活動について
2017年のFPGA Community活動についてMr. Vengineer
 
電子回路の民主化とその実践
電子回路の民主化とその実践電子回路の民主化とその実践
電子回路の民主化とその実践Junichi Akita
 
IkaLog: Data Collector for Splatoon and Machine Learning
IkaLog: Data Collector for Splatoon and Machine LearningIkaLog: Data Collector for Splatoon and Machine Learning
IkaLog: Data Collector for Splatoon and Machine Learning Takeshi HASEGAWA
 
Beatroboでのハードウェアプロトタイピング
BeatroboでのハードウェアプロトタイピングBeatroboでのハードウェアプロトタイピング
BeatroboでのハードウェアプロトタイピングHideyuki TAKEI
 
Cortex-M0プロセッサから自作して Lチカをやってみた
Cortex-M0プロセッサから自作してLチカをやってみたCortex-M0プロセッサから自作してLチカをやってみた
Cortex-M0プロセッサから自作して LチカをやってみたJunichi Akita
 
Polyphony の並列化
Polyphony の並列化Polyphony の並列化
Polyphony の並列化ryos36
 
研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門ryos36
 
FPGA・リコンフィギャラブルシステム研究の最新動向
FPGA・リコンフィギャラブルシステム研究の最新動向FPGA・リコンフィギャラブルシステム研究の最新動向
FPGA・リコンフィギャラブルシステム研究の最新動向Shinya Takamaeda-Y
 
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)Shinya Takamaeda-Y
 
FPGAのトレンドをまとめてみた
FPGAのトレンドをまとめてみたFPGAのトレンドをまとめてみた
FPGAのトレンドをまとめてみたTakefumi MIYOSHI
 
TensorFlow XLA とハードウェア
TensorFlow XLA とハードウェアTensorFlow XLA とハードウェア
TensorFlow XLA とハードウェアMr. Vengineer
 

Viewers also liked (20)

Polyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGAPolyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGA
 
ゆるふわコンピュータ (IPSJ-ONE2017)
ゆるふわコンピュータ (IPSJ-ONE2017)ゆるふわコンピュータ (IPSJ-ONE2017)
ゆるふわコンピュータ (IPSJ-ONE2017)
 
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
 
Golang, make and robotics #gocon
Golang, make and robotics #goconGolang, make and robotics #gocon
Golang, make and robotics #gocon
 
集積回路が真の道具になるために
集積回路が真の道具になるために集積回路が真の道具になるために
集積回路が真の道具になるために
 
Klabの梅雨対策
Klabの梅雨対策Klabの梅雨対策
Klabの梅雨対策
 
cocos2d-x で PlugAir を 使えるようにしてみた
cocos2d-x で PlugAir を 使えるようにしてみたcocos2d-x で PlugAir を 使えるようにしてみた
cocos2d-x で PlugAir を 使えるようにしてみた
 
2017年のFPGA Community活動について
2017年のFPGA Community活動について2017年のFPGA Community活動について
2017年のFPGA Community活動について
 
電子回路の民主化とその実践
電子回路の民主化とその実践電子回路の民主化とその実践
電子回路の民主化とその実践
 
IkaLog: Data Collector for Splatoon and Machine Learning
IkaLog: Data Collector for Splatoon and Machine LearningIkaLog: Data Collector for Splatoon and Machine Learning
IkaLog: Data Collector for Splatoon and Machine Learning
 
Beatroboでのハードウェアプロトタイピング
BeatroboでのハードウェアプロトタイピングBeatroboでのハードウェアプロトタイピング
Beatroboでのハードウェアプロトタイピング
 
Cortex-M0プロセッサから自作して Lチカをやってみた
Cortex-M0プロセッサから自作してLチカをやってみたCortex-M0プロセッサから自作してLチカをやってみた
Cortex-M0プロセッサから自作して Lチカをやってみた
 
IkaLog20170316pynq_dist
IkaLog20170316pynq_distIkaLog20170316pynq_dist
IkaLog20170316pynq_dist
 
Polyphony の並列化
Polyphony の並列化Polyphony の並列化
Polyphony の並列化
 
研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門
 
FPGA・リコンフィギャラブルシステム研究の最新動向
FPGA・リコンフィギャラブルシステム研究の最新動向FPGA・リコンフィギャラブルシステム研究の最新動向
FPGA・リコンフィギャラブルシステム研究の最新動向
 
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
 
FPGAのトレンドをまとめてみた
FPGAのトレンドをまとめてみたFPGAのトレンドをまとめてみた
FPGAのトレンドをまとめてみた
 
Gpu vs fpga
Gpu vs fpgaGpu vs fpga
Gpu vs fpga
 
TensorFlow XLA とハードウェア
TensorFlow XLA とハードウェアTensorFlow XLA とハードウェア
TensorFlow XLA とハードウェア
 

Similar to IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)

協業アプリ開発を推進するテクニカルコンサルタントの挑戦 〜『歌マクロス』を成功に導く技術支援〜
協業アプリ開発を推進するテクニカルコンサルタントの挑戦  〜『歌マクロス』を成功に導く技術支援〜協業アプリ開発を推進するテクニカルコンサルタントの挑戦  〜『歌マクロス』を成功に導く技術支援〜
協業アプリ開発を推進するテクニカルコンサルタントの挑戦 〜『歌マクロス』を成功に導く技術支援〜DeNA
 
DRIVE CHARTを支えるAI技術
DRIVE CHARTを支えるAI技術DRIVE CHARTを支えるAI技術
DRIVE CHARTを支えるAI技術Yusuke Uchida
 
「納品のない受託開発」にみるソフトウェア受託開発の未来
「納品のない受託開発」にみるソフトウェア受託開発の未来「納品のない受託開発」にみるソフトウェア受託開発の未来
「納品のない受託開発」にみるソフトウェア受託開発の未来Yoshihito Kuranuki
 
A16_VB でクラサバシステムの開発をしていた平凡なチームが、どのようにクラウドネイティブプロダクト開発にシフトしアジャイル開発を進めることができたのか...
A16_VB でクラサバシステムの開発をしていた平凡なチームが、どのようにクラウドネイティブプロダクト開発にシフトしアジャイル開発を進めることができたのか...A16_VB でクラサバシステムの開発をしていた平凡なチームが、どのようにクラウドネイティブプロダクト開発にシフトしアジャイル開発を進めることができたのか...
A16_VB でクラサバシステムの開発をしていた平凡なチームが、どのようにクラウドネイティブプロダクト開発にシフトしアジャイル開発を進めることができたのか...日本マイクロソフト株式会社
 
[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1MinGeun Park
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱Koichi ITO
 
全世界135か国に配信したレーシングゲーム『ACR DRIFT』の制作秘話と技術基盤の構築について
全世界135か国に配信したレーシングゲーム『ACR DRIFT』の制作秘話と技術基盤の構築について全世界135か国に配信したレーシングゲーム『ACR DRIFT』の制作秘話と技術基盤の構築について
全世界135か国に配信したレーシングゲーム『ACR DRIFT』の制作秘話と技術基盤の構築についてCROOZ, inc.
 
Salesforce developer conference tokyo2013
Salesforce developer conference tokyo2013Salesforce developer conference tokyo2013
Salesforce developer conference tokyo2013Ikou Sanuki
 
Social Change 〜 ソフトウェア開発者が経営者になるまでと、これからの戦略
Social Change 〜 ソフトウェア開発者が経営者になるまでと、これからの戦略Social Change 〜 ソフトウェア開発者が経営者になるまでと、これからの戦略
Social Change 〜 ソフトウェア開発者が経営者になるまでと、これからの戦略Yoshihito Kuranuki
 
非エンジニアのためのIt業界
非エンジニアのためのIt業界非エンジニアのためのIt業界
非エンジニアのためのIt業界Hideto Masuoka
 
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜gree_tech
 
高信頼性を確保するソフトウェア開発手法と実践 -組込み製品の潜在的価値を今以上に高めるために-
高信頼性を確保するソフトウェア開発手法と実践-組込み製品の潜在的価値を今以上に高めるために-高信頼性を確保するソフトウェア開発手法と実践-組込み製品の潜在的価値を今以上に高めるために-
高信頼性を確保するソフトウェア開発手法と実践 -組込み製品の潜在的価値を今以上に高めるために-Yoshio SAKAI
 
Dreamforce2016から読み解く、これからのit 大友幹
Dreamforce2016から読み解く、これからのit 大友幹Dreamforce2016から読み解く、これからのit 大友幹
Dreamforce2016から読み解く、これからのit 大友幹TerraSky
 
クリエイティブワークを支えるHelix Core
クリエイティブワークを支えるHelix Coreクリエイティブワークを支えるHelix Core
クリエイティブワークを支えるHelix CoreSatoshi OKAWARA
 

Similar to IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank) (20)

協業アプリ開発を推進するテクニカルコンサルタントの挑戦 〜『歌マクロス』を成功に導く技術支援〜
協業アプリ開発を推進するテクニカルコンサルタントの挑戦  〜『歌マクロス』を成功に導く技術支援〜協業アプリ開発を推進するテクニカルコンサルタントの挑戦  〜『歌マクロス』を成功に導く技術支援〜
協業アプリ開発を推進するテクニカルコンサルタントの挑戦 〜『歌マクロス』を成功に導く技術支援〜
 
Pokelabo android web
Pokelabo android webPokelabo android web
Pokelabo android web
 
DRIVE CHARTを支えるAI技術
DRIVE CHARTを支えるAI技術DRIVE CHARTを支えるAI技術
DRIVE CHARTを支えるAI技術
 
「納品のない受託開発」にみるソフトウェア受託開発の未来
「納品のない受託開発」にみるソフトウェア受託開発の未来「納品のない受託開発」にみるソフトウェア受託開発の未来
「納品のない受託開発」にみるソフトウェア受託開発の未来
 
A16_VB でクラサバシステムの開発をしていた平凡なチームが、どのようにクラウドネイティブプロダクト開発にシフトしアジャイル開発を進めることができたのか...
A16_VB でクラサバシステムの開発をしていた平凡なチームが、どのようにクラウドネイティブプロダクト開発にシフトしアジャイル開発を進めることができたのか...A16_VB でクラサバシステムの開発をしていた平凡なチームが、どのようにクラウドネイティブプロダクト開発にシフトしアジャイル開発を進めることができたのか...
A16_VB でクラサバシステムの開発をしていた平凡なチームが、どのようにクラウドネイティブプロダクト開発にシフトしアジャイル開発を進めることができたのか...
 
UShareSoft_20130425
UShareSoft_20130425UShareSoft_20130425
UShareSoft_20130425
 
UShareSoft_20130425
UShareSoft_20130425UShareSoft_20130425
UShareSoft_20130425
 
01.超初心者向けセキュリティ入門
01.超初心者向けセキュリティ入門01.超初心者向けセキュリティ入門
01.超初心者向けセキュリティ入門
 
[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1
 
BPStudy#101発表資料
BPStudy#101発表資料BPStudy#101発表資料
BPStudy#101発表資料
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
 
全世界135か国に配信したレーシングゲーム『ACR DRIFT』の制作秘話と技術基盤の構築について
全世界135か国に配信したレーシングゲーム『ACR DRIFT』の制作秘話と技術基盤の構築について全世界135か国に配信したレーシングゲーム『ACR DRIFT』の制作秘話と技術基盤の構築について
全世界135か国に配信したレーシングゲーム『ACR DRIFT』の制作秘話と技術基盤の構築について
 
Msセミナー20170830 slideshare
Msセミナー20170830 slideshareMsセミナー20170830 slideshare
Msセミナー20170830 slideshare
 
Salesforce developer conference tokyo2013
Salesforce developer conference tokyo2013Salesforce developer conference tokyo2013
Salesforce developer conference tokyo2013
 
Social Change 〜 ソフトウェア開発者が経営者になるまでと、これからの戦略
Social Change 〜 ソフトウェア開発者が経営者になるまでと、これからの戦略Social Change 〜 ソフトウェア開発者が経営者になるまでと、これからの戦略
Social Change 〜 ソフトウェア開発者が経営者になるまでと、これからの戦略
 
非エンジニアのためのIt業界
非エンジニアのためのIt業界非エンジニアのためのIt業界
非エンジニアのためのIt業界
 
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
 
高信頼性を確保するソフトウェア開発手法と実践 -組込み製品の潜在的価値を今以上に高めるために-
高信頼性を確保するソフトウェア開発手法と実践-組込み製品の潜在的価値を今以上に高めるために-高信頼性を確保するソフトウェア開発手法と実践-組込み製品の潜在的価値を今以上に高めるために-
高信頼性を確保するソフトウェア開発手法と実践 -組込み製品の潜在的価値を今以上に高めるために-
 
Dreamforce2016から読み解く、これからのit 大友幹
Dreamforce2016から読み解く、これからのit 大友幹Dreamforce2016から読み解く、これからのit 大友幹
Dreamforce2016から読み解く、これからのit 大友幹
 
クリエイティブワークを支えるHelix Core
クリエイティブワークを支えるHelix Coreクリエイティブワークを支えるHelix Core
クリエイティブワークを支えるHelix Core
 

More from Takeshi HASEGAWA

コンピュータエンジニアへのFPGAのすすめ
コンピュータエンジニアへのFPGAのすすめコンピュータエンジニアへのFPGAのすすめ
コンピュータエンジニアへのFPGAのすすめTakeshi HASEGAWA
 
qpstudy 2014.04 ハードウェア設計の勘所
qpstudy 2014.04 ハードウェア設計の勘所qpstudy 2014.04 ハードウェア設計の勘所
qpstudy 2014.04 ハードウェア設計の勘所Takeshi HASEGAWA
 
次世代I/Oインターフェイス「Eject-io」
次世代I/Oインターフェイス「Eject-io」次世代I/Oインターフェイス「Eject-io」
次世代I/Oインターフェイス「Eject-io」Takeshi HASEGAWA
 
20120729bhyve hackathon hasegaw_en
20120729bhyve hackathon hasegaw_en20120729bhyve hackathon hasegaw_en
20120729bhyve hackathon hasegaw_enTakeshi HASEGAWA
 
20120519_qpstudy 2012.05 いやらしい@hasegawのI/O入門
20120519_qpstudy 2012.05 いやらしい@hasegawのI/O入門20120519_qpstudy 2012.05 いやらしい@hasegawのI/O入門
20120519_qpstudy 2012.05 いやらしい@hasegawのI/O入門Takeshi HASEGAWA
 
Fusion-io入社のご報告
Fusion-io入社のご報告Fusion-io入社のご報告
Fusion-io入社のご報告Takeshi HASEGAWA
 
20110528qpstudy06懇親会LT「雪山の話」
20110528qpstudy06懇親会LT「雪山の話」20110528qpstudy06懇親会LT「雪山の話」
20110528qpstudy06懇親会LT「雪山の話」Takeshi HASEGAWA
 
20110528東京OpenSolaris勉強会2011.05
20110528東京OpenSolaris勉強会2011.0520110528東京OpenSolaris勉強会2011.05
20110528東京OpenSolaris勉強会2011.05Takeshi HASEGAWA
 
OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)Takeshi HASEGAWA
 

More from Takeshi HASEGAWA (17)

FPGAx10_Sakura
FPGAx10_SakuraFPGAx10_Sakura
FPGAx10_Sakura
 
コンピュータエンジニアへのFPGAのすすめ
コンピュータエンジニアへのFPGAのすすめコンピュータエンジニアへのFPGAのすすめ
コンピュータエンジニアへのFPGAのすすめ
 
IkaLog_overview_en
IkaLog_overview_enIkaLog_overview_en
IkaLog_overview_en
 
IkaLog Presentation v1.3
IkaLog Presentation v1.3IkaLog Presentation v1.3
IkaLog Presentation v1.3
 
Eject-io @ Kernel/VM
Eject-io @ Kernel/VMEject-io @ Kernel/VM
Eject-io @ Kernel/VM
 
qpstudy 2014.04 ハードウェア設計の勘所
qpstudy 2014.04 ハードウェア設計の勘所qpstudy 2014.04 ハードウェア設計の勘所
qpstudy 2014.04 ハードウェア設計の勘所
 
Memory expansion
Memory expansionMemory expansion
Memory expansion
 
次世代I/Oインターフェイス「Eject-io」
次世代I/Oインターフェイス「Eject-io」次世代I/Oインターフェイス「Eject-io」
次世代I/Oインターフェイス「Eject-io」
 
20120922qpstudy terror 2
20120922qpstudy terror 220120922qpstudy terror 2
20120922qpstudy terror 2
 
20120729bhyve hackathon hasegaw_en
20120729bhyve hackathon hasegaw_en20120729bhyve hackathon hasegaw_en
20120729bhyve hackathon hasegaw_en
 
20120519_qpstudy 2012.05 いやらしい@hasegawのI/O入門
20120519_qpstudy 2012.05 いやらしい@hasegawのI/O入門20120519_qpstudy 2012.05 いやらしい@hasegawのI/O入門
20120519_qpstudy 2012.05 いやらしい@hasegawのI/O入門
 
RunningFreeBSDonLinuxKVM
RunningFreeBSDonLinuxKVMRunningFreeBSDonLinuxKVM
RunningFreeBSDonLinuxKVM
 
20111028ssmjp
20111028ssmjp20111028ssmjp
20111028ssmjp
 
Fusion-io入社のご報告
Fusion-io入社のご報告Fusion-io入社のご報告
Fusion-io入社のご報告
 
20110528qpstudy06懇親会LT「雪山の話」
20110528qpstudy06懇親会LT「雪山の話」20110528qpstudy06懇親会LT「雪山の話」
20110528qpstudy06懇親会LT「雪山の話」
 
20110528東京OpenSolaris勉強会2011.05
20110528東京OpenSolaris勉強会2011.0520110528東京OpenSolaris勉強会2011.05
20110528東京OpenSolaris勉強会2011.05
 
OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)
 

IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)