playgroundでディープラーニングを勉強しよう

13
AITCオープンラボ Playground で ディープラーニングを 勉強しよう 2017年1月26日 富士通 吉田、井沢 TensorFlow, the TensorFlow logo and any related marks are trademarks of Google Inc. 1

Upload: hiroyuki-yoshida

Post on 07-Feb-2017

302 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Playgroundでディープラーニングを勉強しよう

AITCオープンラボ

Playground でディープラーニングを

勉強しよう2017年1月26日

富士通 吉田、井沢

TensorFlow, the TensorFlow logo and any related marks are trademarks of Google Inc.

1

Page 2: Playgroundでディープラーニングを勉強しよう

はじめに

• TensorFlow Playgroundを使用して

ニューラルネットワークの仕組みをしましょう

URL: http://playground.tensorflow.org/

Page 3: Playgroundでディープラーニングを勉強しよう

Classification問題とは?例:Gaussian

• 二次元座標(X1,X2) を1.0(青)か-1.0(赤)に分類する

-6.0≦X1,X2≦6.0

• 訓練データ500個:

平均2.0、分散0.5の正規分布で(X1,X2)を250個決めて青

平均-2.0、分散0.5の正規分布で(X1,X2)を250個決め赤

• 学習データ:訓練データからランダムに選んだ250個

• テストデータ:訓練データの残り

• ニューラルネットの出力値:-1.0~1.0の連続値

• 誤差:出力が0.8で正解が1.0ならば(1.0-0.8)2=0.04

Page 4: Playgroundでディープラーニングを勉強しよう

ノードの可視化について

Page 5: Playgroundでディープラーニングを勉強しよう

ノードの可視化について

• ノードの背景は、学習データやテストデータとはまったく無関係に、

逐次以下のように表示している。

[-6.0,6.0] ✕[-6.0,6.0]の全領域を100✕100に分割した10000座標

に対して

各座標をネットワークの入力とした時の各ノードの値-1.0~1.0に合わせて、

その座標位置に青色~赤のグラデーション色を表示

ただしDiscretize outputのチェックボックスがチェックされていたら、

グラデーション色を使用せず、値の正/負で濃いオレンジ/濃い空色で表示

Page 6: Playgroundでディープラーニングを勉強しよう

全体レイアウト

分類/回帰

入力層/中間層/出力層入力層/中間層/出力層入力層/中間層/出力層入力層/中間層/出力層

活性化関数

例題

Page 7: Playgroundでディープラーニングを勉強しよう

パーセプトロン①(Gaussian)

①Gaussian選択

②x1とx2を選択

③隠れ層をすべて削除

④活性化関数はなんでもOK⑤学習開始

線形分離可能問題は隠れ層がいらない

Page 8: Playgroundでディープラーニングを勉強しよう

パーセプトロン②(Exclusive or)

①Exclusive or選択

線形分離不可能問題は2層では解けない

CircleやSpiralも試してみよう

Page 9: Playgroundでディープラーニングを勉強しよう

特徴量の選択(Exclusive or)

②X1X2を選択

①Exclusive or選択

入力層に適切な特徴量を使えば2層でも解ける

Page 10: Playgroundでディープラーニングを勉強しよう

DeepLeaning(Exclusive or)

②隠れ層を4個、2個追加①Exclusive or選択

隠れ層が特徴量を発見する 活性化関数Linearでは駄目

Page 12: Playgroundでディープラーニングを勉強しよう

1. TensorFlow Playground(その他機能)

入力層/中間層/出力層入力層/中間層/出力層入力層/中間層/出力層②入力層/中間層/出力層

STEP実行

ノイズ率

反復回数

学習率 正則化 正則率

訓練データ/イテレーション

Page 13: Playgroundでディープラーニングを勉強しよう

付録

TensorFlow Playgroundをローカル起動する。

• ローカルで動かす

• git clone https://github.com/tensorflow/playground.git

• cd playground

• npm install

• npm run serve

• ブラウザで http://localhost:8080/ にアクセス