SlideShare a Scribd company logo
ニューラルネットワークの数理
東京大学前期教養学部2年 大森 亮
1
目次
機械学習とは
ニューラルネットワークの原理
学習と誤差逆伝搬
実装上の課題
深層学習とは
2
目次
機械学習とは
ニューラルネットワークの原理
学習と誤差逆伝搬
実装上の課題
深層学習とは
3
機械学習とは
通常のアルゴリズム:
- 人間が明示的に解法の手順を与え問題を解く。
- 決められた規則に従って計算を多数回反復することはコンピューターの
得意分野。
- しかし、人間が手順を与えるのには限界がある、(ex. 画像認識、音声認
識、自然言語処理、ゲーム等のAI、etc.)
そこで…
4
機械学習とは
機械学習と呼ばれる技術を用いる。
- 人間が自然に行っている学習をコンピューター上で実現する様々な手法
の総称である。
- 多数のデータから分類の方法などを学習し、学習の方法のみをプログラ
ムすれば評価方法を自身で身につける。(明示的なプログラムは必要ない)
- 検索エンジン、医療診断、スパムメールの検出など幅広い分野に用いら
れている。(wikipediaより)
5
機械学習とは
 本講演では、数多ある機械学習の手法の中でも
「ニューラルネットワーク(Neural Network)」
に話を限定する。
6
目次
機械学習とは
ニューラルネットワークの原理
学習と誤差逆伝搬
実装上の課題
深層学習とは
7
ニューラルネットワークの原理
Neural Network = 神経回路
- 神経細胞は(とても大雑把に言うと)樹状
突起からシナプスを通じて他の神経細胞
に信号が伝わっている。
- 信号伝達の強さはシナプスによって異
なる
8
樹状突起
シナプス
ニューラルネットワークの原理
Neural Network = 神経回路
- 樹状突起から伝達する信号がある強さ
に達すると急激に電位が変化する。
(cf.ステップ関数)
9
樹状突起
シナプス
h(a) =
(
0 (a < 0)
1 (a 1)
)
ニューラルネットワークの原理
これを模式化する。
「単層パーセプトロン」
-        は入力
-        は重み係数
-   は活性化関数
-  は出力
10
h(·)
y
樹状突起 シナプス
x1
x2
y
h(·)
・
・
・
xD
w1
w2
wD
x1, x2, · · · , xD
w1, w2, · · · , wD
ニューラルネットワークの原理
入力の重みによる線形結合
活性化関数による非線形変換
11
y = h(a)
バイアス
x1
x2
y
h(·)
・
・
・
xD
w1
w2
wD
a =
DX
i=1
wixi + w0
ニューラルネットワークの原理
入力の重みによる線形結合
バイアスの再現のために、常に
   の入力を追加。その入力から
の重み変数がバイアスとなる。
12
x1
x2
y
h(·)
w0
x0 = 1
x0
・
・
・
xD
w1
w2
wD
a =
DX
i=0
wixi
a =
DX
i=1
wixi + w0
活性化関数による非線形変換
活性化関数としては、ステップ関数よ
りもロジスティックシグモイド関数な
どのなめらかな関数を使うと便利。
ロジスティックシグモイド関数:
ニューラルネットワークの原理
13
y
h(·)y = h(a)
h(a) =
1
1 + exp( a)
ニューラルネットワークの原理
どのように学習させるのか?(2クラス分類を例に)
- 入力ベクトルの集合            と、対応する目標ベクトル(答
え)の集合           が与えられる。
- 2クラス分類の場合、各々の目標ベクトルは      で表せる。
- 入力   に対する出力  が   と一致しているなら正しいとする。
- 尤度最大化=負の対数尤度の最小化
- 正しさの尺度となる誤差関数(負の対数尤度)を最小にすることを考える。
14
{xn} (n = 1, 2, · · · , N)
{tn} (n = 1, 2, · · · , N)
{xn} {yn} {tn}
tn 2 {0, 1}
ニューラルネットワークの原理
どのように学習させるのか?(2クラス分類を例に)
- 活性化関数にロジスティックシグモイド関数を用いる(値域(0,1)
- 誤差関数に交差エントロピー関数を用いる。
-    が最小になるような重み係数  を求めればよい。
15
h(a) =
1
1 + exp( a)
E(w) =
NX
n=1
{tn ln yn + (1 tn) ln(1 yn)}
E(w) w
どのように学習させるのか?(2クラス分類を例に)
- 重みwがw+δwまで微小に移動した時、誤差関数の変化は
と表せる。E(w)が最小となる点においては
となるので、これを満たすようなwを見つける。
ニューラルネットワークの原理
16
wT
rE(w)
rE(w) = 0
rE(w) =
✓
@E
@w0
,
@E
@w1
, · · · ,
@E
@wD
◆T
どのように学習させるのか?(2クラス分類を例に)
- 解析的に解くのは不可能に近いので、もっとも単純なアプローチとして、
重みwの初期値w(0)をとり、
のように、勾配 E(w)の逆方向にw(τ)を小さ
く進めて更新することを繰り返す方法である。
(最急降下法)
- η>0は、学習率と呼ばれている。
ニューラルネットワークの原理
17
w(⌧+1)
= w(⌧)
⌘rE(w(⌧)
)
ニューラルネットワークの原理
どのように学習させるのか?(2クラス分類を例に)
- この方法ではすべての訓練データを一度に扱っていて、バッチ手法と呼
ばれている。データの数が多い場合、それぞれの反復ステップで時間がか
かる。
オンライン手法を用いるのが実用上便利。
w(⌧+1)
= w(⌧)
⌘rE(w(⌧)
)
18
ニューラルネットワークの原理
オンライン手法
- 誤差関数は、それぞれの訓練データから得られる誤差の和として
と書ける。それぞれの反復ステップについてnをランダムに取り、
とする。計算量が少なくて済む。
- 局所的最小値への収束を回避できる可能性がある。(個々のデータの停留
点と一般に一致しないため。)
E(w) =
NX
n=1
En(w)
w(⌧+1)
= w(⌧)
⌘rEn(w(⌧)
)
19
ニューラルネットワークの原理
2クラス分類での学習の例
- 2次元平面上のデータの分類。簡単の
為、誤差関数として二乗和誤差を用い
る。
- 各ステップで、ランダムに選んだnに
ついて、各i (i=0,1,2)で次のスライドの
ような計算を行う。
20
x1
x2
w1
w2
y
h(·)
w0x0
2クラス分類での学習の例
ニューラルネットワークの原理
x1
x2
w1
w2
y
h(·)
w0x0
w
(⌧+1)
i = w
(⌧)
i ⌘
@En(w(⌧)
)
wi
= w
(⌧)
i ⌘
@
wi
1
2
(yn tn)2
= w
(⌧)
i ⌘(yn tn)
@yn
wi
= w
(⌧)
i ⌘(yn tn)
@
wi
(a)
= w
(⌧)
i ⌘(yn tn) (a) (1 (a))
@
wi
X
wdxd
= w
(⌧)
i ⌘(yn tn)yn (1 yn) wi
21
xi
2クラス分類での学習の例
- ここで、ロジスティックシグモイド
関数の微分についての性質
を用いた。
ニューラルネットワークの原理
@ (a)
@a
=
@
@a
1
1 + exp( a)
=
exp( a)
(1 + exp( a))
2
= (a) (1 (a))
22
x1
x2
w1
w2
y
h(·)
w0x0
ニューラルネットワークの原理
2クラス分類での学習の例
- 単層パーセプトロンはロジスティック回帰
と等価で、線形な分離しか出来ない。
- 例えばxor集合のような入り組んだデータ
は分離出来ない
23
そこでニューラルネットワーク!
ニューラルネットワークの原理
ニューラルネットワーク
(多層パーセプトロン)
- 先ほどの単層パーセプトロンを
沢山つなげたもの。(図は2層の例)
24
・
・
・
・
・
・
・
・
・
・
・
・
・
・
・
入力層
中間層
出力層
x0
x1
xD
zM
z0
z1
yK
y1
w
(1)
MD w
(2)
KM
w
(2)
10
ニューラルネットワークの原理
ニューラルネットワーク
(多層パーセプトロン)
- 重みベクトルwの次元が大きい
ため、複雑な分類が可能。
25
ニューラルネットワークの原理
ニューラルネットワーク
(多層パーセプトロン)
- 矢印の向きに計算する。(有向閉
路は無いと仮定)
- このネットワークの場合は、
26
・
・
・
・
・
・
・
・
・
・
・
・
・
・
・
入力層
中間層
出力層
x0
x1
xD
zM
z0
z1
yK
y1
w
(1)
MD w
(2)
KM
w
(2)
10
yk(x, w) =
0
@
MX
j=0
w
(2)
kj h
DX
i=0
w
(1)
ji xi
!1
A
目次
機械学習とは
ニューラルネットワークの原理
学習と誤差逆伝搬
実装上の課題
深層学習とは
27
学習と誤差逆伝搬
ニューラルネットワークでの学習
- 重みベクトルwの次元が増えただけで学習の方法は単層の場合と同じ。
などの式に従って最適なwを求める。(これはオンライン手法の場合)
- その際、出力層から入力層に向かい、前に計算した結果を用いて漸化式
的に E(w)を高速に計算することが出来る。その様子から、誤差逆伝搬と
呼ばれる。
28
w(⌧+1)
= w(⌧)
⌘rEn(w(⌧)
)
学習と誤差逆伝搬
学習の手順
Step1 訓練データの選択(ランダムに)
Step2 出力の計算(途中のa,zも保存)
Step3 誤差逆伝搬
29
・
・
・
・
・
・
・
・
・
・
・
・
・
・
・
入力層
中間層
出力層
x0
x1
xD
zM
z0
z1
yK
y1
w
(1)
MD w
(2)
KM
w
(2)
10
学習と誤差逆伝搬
誤差逆伝搬
という記法を用いると、       よ
り、
δjを求めるためには、
30
zi
j
k
1
zj
wji
wkj
・
・
・
j =
@En
@aj
aj =
X
i
wjizi
@En
@wji
=
@En
@aj
@aj
@wji
= jzi
@En
@aj
=
X
k
@En
@ak
@ak
@aj
=
X
k
k
@ak
@zj
@zj
@aj
= h0
(aj)
X
k
wkj k
学習と誤差逆伝搬
誤差逆伝搬
- 特に、活性化関数にロジスティックシグモイ
ド関数を用いた場合、
が成り立つため、
のように  がz,δ,wのみで漸化式的に計算可能
31
zi
j
k
1
zj
wji
wkj
・
・
・
j = h0
(aj)
X
k
wkj k = zj(1 zj)
X
k
wkj k =
0
(a) =
@ (a)
@a
= (a)(1 (a))
@En
@wji
=
@En
@aj
@aj
@wji
= jzi
@En
@wji
=
@En
@aj
@aj
@wji
= jzi
学習と誤差逆伝搬
活性化関数や誤差関数の選び方
- 問題の型により自然に定まる。尤度の最大化。
- 回帰問題の場合、活性化関数は恒等関数、誤差関数は二乗和関数。
- 2クラス分類の場合、活性化関数はロジスティックシグモイド関数、 
誤差関数は交差エントロピー関数(または二乗和関数)。
- 多クラス分類の場合、活性化関数はソフトマックス関数、誤差関数は 
多クラス交差エントロピー関数。
32
学習と誤差逆伝搬
- もし2クラス分類の活性化関数に恒等関数、誤差関数に二乗和を用いると?
(緑:ロジスティック回帰モデル、赤:二乗和モデル)
- 二乗和モデルは外れ値に敏感なので分類には適さない。
33
目次
機械学習とは
ニューラルネットワークの原理
学習と誤差逆伝搬
実装上の課題
深層学習とは
34
実装上の課題
重みの初期値
- すべて同じにしてはいけない。
入る重み係数も出る重み係数もすべて等しいユニットは学習の進み方も等しく、表現で
きる次元が減る。
- 0にしてはいけない。
誤差逆伝搬で更新されず0のまま
- 一般的には乱数を使って設定する。
35
実装上の課題
ネットワークの構造の決定
- 層にユニットを幾つ配置するか、どのようにつなげるか、何層にするか
など事前に決めなければならないことが多い。
- 層の数が多いと、誤差逆伝搬が入力層まで進まずに消えてしまう。(勾
配消失問題)
- そのため2層(中間層が1層)にするのが安全。
36
実装上の課題
過学習
- 訓練用のデータに適合しすぎて、同じ事前分布で得られたデータに対し
て認識や回帰が上手くいかないこと。
- wの次元に対してデータ数が少ないと起こりすい。(図は正弦関数のデー
タ集合への回帰の、中間層のユニット数が1,3,10の時の学習例)
37
実装上の課題
過学習
- 過学習が起きている時は重み係数の絶対値がとても大きくなっているた
め、誤差関数に正則化項を導入するのが一手。(λは正則化係数)
- この新しい誤差関数の勾配は、
であり、誤差逆伝搬でも計算しやすい形である。
38
eE(w) = E(w) +
1
2
wT
w
r eE(w) = rE(w) + w
実装上の課題
学習率ηの決め方
- 大きすぎると極小値付近で振動して収束せず、小さすぎると学習が進ま
ず、時間も掛かるため、ある程度適切に設定する必要がある。
- 先ほどの最急降下法ではなく、共役勾配法を用いれば手動で設定せずに
済む。(バッチ手法向き)
- 学習を進めてみてE(w)が増加していれば学習率が大きすぎるということ
になるので、適宜E(w)の減少を確かめて学習率を調整する方法もある。
39
実装上の課題
- 数学的によくわかっていないことも多いが、実装してみて上手くいけば
いい。
- データ集合を訓練用とテスト用に分け、訓練用データで得られたネット
ワークでテスト用のデータを認識し、その認識率(正解率)を調べる。
- 認識率が高ければ、良い学習が行われたということになる。
40
目次
機械学習とは
ニューラルネットワークの原理
学習と誤差逆伝搬
実装上の課題
深層学習とは
41
深層学習とは
幅広い分野を指すが、簡単に言うと、ニューラルネッ
トーワークの階層を深くしたもの。
- 勉強が追いついていないため、簡単な紹介に留める。
- 深層ニューラルネットワーク(DNNs),畳み込みニューラルネットワーク
(CNN),再起的ニューラルネットワーク(RNN)などなど
42
深層学習とは
畳み込みニューラルネット
ワーク(CNN)
- 画像認識などに使われている方法。
畳み込み層(圧縮)とブーリング層(平
行移動や回転に対する普遍性)が交互
に。
- 勾配消失が起こらないように、活
性化関数に工夫。
43
深層学習とは
ニューラルネットワークは入力ベクトルと目標ベク
トル(答え)が与えられた教師あり学習だが、深層学
習ではこれに事前学習として教師なし学習を組み合
わせることがる。
- cf.自己符号化器
44
深層学習とは
自己符号化器
- 例えば、砂時計型のニューラルネッ
トワーク
- 入力と出力が一致するように学習。
データの適切な圧縮方法を与える。
- 繰り返すことでさらに圧縮可能(積
層自己符号化器)
45
ご清聴ありがとうございました。

More Related Content

PDF
[論文紹介] LSTM (LONG SHORT-TERM MEMORY)
Tomoyuki Hioki
 
PDF
環境音の特徴を活用した音響イベント検出・シーン分類
Keisuke Imoto
 
PDF
SSII2021 [OS2-02] 深層学習におけるデータ拡張の原理と最新動向
SSII
 
PDF
機械学習 入門
Hayato Maki
 
PDF
Jubatus Casual Talks #2 異常検知入門
Shohei Hido
 
PDF
スパースモデリングによる多次元信号・画像復元
Shogo Muramatsu
 
PPTX
機械学習 / Deep Learning 大全 (1) 機械学習基礎編
Daiyu Hatakeyama
 
PPTX
落合流先生流の論文要旨フォーマット
森 哲也
 
[論文紹介] LSTM (LONG SHORT-TERM MEMORY)
Tomoyuki Hioki
 
環境音の特徴を活用した音響イベント検出・シーン分類
Keisuke Imoto
 
SSII2021 [OS2-02] 深層学習におけるデータ拡張の原理と最新動向
SSII
 
機械学習 入門
Hayato Maki
 
Jubatus Casual Talks #2 異常検知入門
Shohei Hido
 
スパースモデリングによる多次元信号・画像復元
Shogo Muramatsu
 
機械学習 / Deep Learning 大全 (1) 機械学習基礎編
Daiyu Hatakeyama
 
落合流先生流の論文要旨フォーマット
森 哲也
 

What's hot (20)

PDF
物体検出コンペティションOpen Imagesに挑む
Hiroto Honda
 
PPTX
Learning to summarize from human feedback
harmonylab
 
PDF
[DL輪読会]A Bayesian Perspective on Generalization and Stochastic Gradient Descent
Deep Learning JP
 
PDF
Deep Learningと画像認識   ~歴史・理論・実践~
nlab_utokyo
 
PPTX
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
Takuji Tahara
 
PPTX
モデル高速化百選
Yusuke Uchida
 
PDF
Teslaにおけるコンピュータビジョン技術の調査
Kazuyuki Miyazawa
 
PDF
Transformer メタサーベイ
cvpaper. challenge
 
PPTX
深層学習の数理
Taiji Suzuki
 
PPTX
Structure from Motion
Ryutaro Yamauchi
 
PDF
Attentionの基礎からTransformerの入門まで
AGIRobots
 
PPTX
画像認識と深層学習
Yusuke Uchida
 
PDF
線形?非線形?
nishio
 
PPTX
量子オートマトンの計算能力
YuuOkano
 
PDF
Optimizer入門&最新動向
Motokawa Tetsuya
 
PDF
SSII2021 [SS1] Transformer x Computer Visionの 実活用可能性と展望 〜 TransformerのCompute...
SSII
 
PPTX
Triplet Loss 徹底解説
tancoro
 
PDF
Action Recognitionの歴史と最新動向
Ohnishi Katsunori
 
PDF
Deep Learningによる画像認識革命 ー歴史・最新理論から実践応用までー
nlab_utokyo
 
PDF
continual learning survey
ぱんいち すみもと
 
物体検出コンペティションOpen Imagesに挑む
Hiroto Honda
 
Learning to summarize from human feedback
harmonylab
 
[DL輪読会]A Bayesian Perspective on Generalization and Stochastic Gradient Descent
Deep Learning JP
 
Deep Learningと画像認識   ~歴史・理論・実践~
nlab_utokyo
 
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
Takuji Tahara
 
モデル高速化百選
Yusuke Uchida
 
Teslaにおけるコンピュータビジョン技術の調査
Kazuyuki Miyazawa
 
Transformer メタサーベイ
cvpaper. challenge
 
深層学習の数理
Taiji Suzuki
 
Structure from Motion
Ryutaro Yamauchi
 
Attentionの基礎からTransformerの入門まで
AGIRobots
 
画像認識と深層学習
Yusuke Uchida
 
線形?非線形?
nishio
 
量子オートマトンの計算能力
YuuOkano
 
Optimizer入門&最新動向
Motokawa Tetsuya
 
SSII2021 [SS1] Transformer x Computer Visionの 実活用可能性と展望 〜 TransformerのCompute...
SSII
 
Triplet Loss 徹底解説
tancoro
 
Action Recognitionの歴史と最新動向
Ohnishi Katsunori
 
Deep Learningによる画像認識革命 ー歴史・最新理論から実践応用までー
nlab_utokyo
 
continual learning survey
ぱんいち すみもと
 
Ad

Viewers also liked (12)

PPTX
NIPS2015読み会: Ladder Networks
Eiichi Matsumoto
 
PDF
ニューラルネットワーク ことはじめ
Kazuhide Okamura
 
PPTX
[Dl輪読会]A simple neural network module for relational reasoning
Deep Learning JP
 
PDF
ニューラルネットワーク勉強会1
yhide
 
PDF
20150310 第1回 ディープラーニング勉強会
哲朗 島田
 
PDF
20170422 数学カフェ Part2
Kenta Oono
 
PDF
EMアルゴリズム
Sotetsu KOYAMADA(小山田創哲)
 
PDF
Kaggleのテクニック
Yasunori Ozaki
 
PDF
Kaggle bosch presentation material for Kaggle Tokyo Meetup #2
Keisuke Hosaka
 
PDF
Kaggle boschコンペ振り返り
Keisuke Hosaka
 
PDF
RBM、Deep Learningと学習(全脳アーキテクチャ若手の会 第3回DL勉強会発表資料)
Takuma Yagi
 
PDF
IIBMP2016 深層生成モデルによる表現学習
Preferred Networks
 
NIPS2015読み会: Ladder Networks
Eiichi Matsumoto
 
ニューラルネットワーク ことはじめ
Kazuhide Okamura
 
[Dl輪読会]A simple neural network module for relational reasoning
Deep Learning JP
 
ニューラルネットワーク勉強会1
yhide
 
20150310 第1回 ディープラーニング勉強会
哲朗 島田
 
20170422 数学カフェ Part2
Kenta Oono
 
Kaggleのテクニック
Yasunori Ozaki
 
Kaggle bosch presentation material for Kaggle Tokyo Meetup #2
Keisuke Hosaka
 
Kaggle boschコンペ振り返り
Keisuke Hosaka
 
RBM、Deep Learningと学習(全脳アーキテクチャ若手の会 第3回DL勉強会発表資料)
Takuma Yagi
 
IIBMP2016 深層生成モデルによる表現学習
Preferred Networks
 
Ad

Similar to ニューラルネットワークの数理 (20)

PPTX
Deep learning chapter4 ,5
ShoKumada
 
PPTX
深層学習による自然言語処理勉強会2章前半
Jiro Nishitoba
 
PDF
深層学習(講談社)のまとめ(1章~2章)
okku apot
 
PDF
20150803.山口大学集中講義
Hayaru SHOUNO
 
PDF
それっぽく感じる機械学習
Yuki Igarashi
 
PDF
Deep learning実装の基礎と実践
Seiya Tokui
 
PDF
PRML 5章 PP.227-PP.247
Tomoki Hayashi
 
PDF
深層学習(岡本孝之 著) - Deep Learning chap.1 and 2
Masayoshi Kondo
 
PDF
深層学習 勉強会 第1回資料(作成途中)
Shuuji Mihara
 
PDF
20160329.dnn講演
Hayaru SHOUNO
 
PPTX
Back propagation
T2C_
 
PDF
LSTM and GRU RNNs in Sentiment Analysis (Japanese)
Parth Nandedkar
 
PDF
PRML輪読#5
matsuolab
 
PDF
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
Kensuke Otsuki
 
PDF
ゼロから作るDeepLearning 5章 輪読
KCS Keio Computer Society
 
PDF
深層学習(岡本孝之 著)Deep learning chap.4_1
Masayoshi Kondo
 
PPTX
ニューラルネットワークの理論
Kazuma Komiya
 
PPTX
初心者向けのニューラルネットワーク.pptx
superleesa
 
PDF
ハンズオン セッション 3: リカレント ニューラル ネットワーク入門
NVIDIA Japan
 
PDF
primers neural networks
Shin Asakawa
 
Deep learning chapter4 ,5
ShoKumada
 
深層学習による自然言語処理勉強会2章前半
Jiro Nishitoba
 
深層学習(講談社)のまとめ(1章~2章)
okku apot
 
20150803.山口大学集中講義
Hayaru SHOUNO
 
それっぽく感じる機械学習
Yuki Igarashi
 
Deep learning実装の基礎と実践
Seiya Tokui
 
PRML 5章 PP.227-PP.247
Tomoki Hayashi
 
深層学習(岡本孝之 著) - Deep Learning chap.1 and 2
Masayoshi Kondo
 
深層学習 勉強会 第1回資料(作成途中)
Shuuji Mihara
 
20160329.dnn講演
Hayaru SHOUNO
 
Back propagation
T2C_
 
LSTM and GRU RNNs in Sentiment Analysis (Japanese)
Parth Nandedkar
 
PRML輪読#5
matsuolab
 
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
Kensuke Otsuki
 
ゼロから作るDeepLearning 5章 輪読
KCS Keio Computer Society
 
深層学習(岡本孝之 著)Deep learning chap.4_1
Masayoshi Kondo
 
ニューラルネットワークの理論
Kazuma Komiya
 
初心者向けのニューラルネットワーク.pptx
superleesa
 
ハンズオン セッション 3: リカレント ニューラル ネットワーク入門
NVIDIA Japan
 
primers neural networks
Shin Asakawa
 

ニューラルネットワークの数理