第6回

知能情報工学
第6回
ニューラルネット
2016年5月24日
吉川雅博
1
ニューラルネットワーク
脳はニューロンと呼ばれる神経細胞が相互に結合したネットワークで
情報を処理
ニューロンをモデル化した閾値論理ユニットを用いて実現
入力
𝑥0
重み
𝑤0
⋮
⋮
𝑥𝑖
⋮
𝑥𝑑
𝑤𝑖
出力
𝑥0 𝑤0
1
𝑥𝑖 𝑤𝑖
𝑥𝑑 𝑤𝑑
𝑔𝑖 (𝒙)
∑
0
⋮
𝑤𝑑
閾値関数
0 or 1
閾値を越えるまでは0
閾値を越えると1
2
フィードフォワードニューラルネット
入力層
中間層
(隠れ層)
出力層
0 𝜔1
𝑥0
⋮
𝑥𝑖
1 𝜔𝑘
⋮
0 𝜔𝑐
𝑥𝑑
閾値論理ユニット
出力層の各ユニットにクラスを割り当てる
→ 値が1になったユニットに対応するクラスで識別
例:クラス𝜔𝑘 に対応するユニットの出力が1→クラス𝜔𝑘 と識別
3
ニューラルネットの出力(1)
入力層
𝐼層
中間層(隠れ層)
𝐻層
出力層
𝑂層
𝑥0
⋮
𝐼
𝑤0𝑗
𝑧𝑗
𝐼
𝑤𝑑𝑗
𝑧𝑗
𝐼
𝑤𝑖𝑗
𝑥𝑖
⋮
𝑧𝑗
𝑥𝑑
1.0
𝐻層𝑗番目のユニットの出力𝑧𝑗
𝐼
𝑤𝑖𝑗
𝑥𝑖 )
𝑧𝑗 = sigmoid(
𝑖
0.5
シグモイド関数
0.0
0
4
ニューラルネットの出力(2)
入力層
𝐼層
𝑥0
中間層(隠れ層)
𝐻層
𝑧0
⋮
𝑧𝑗
𝑥𝑖
出力層
𝑂層
𝐻
𝑤0𝑘
𝐻
𝑤𝑗𝑘
𝑦𝑘
𝐻
𝑤𝑛𝑘
⋮
𝑥𝑑
𝑧𝑛
𝑂層𝑘番目のユニットの出力𝑦𝑘
𝐻
𝑤𝑗𝑘
𝑧𝑗 )
𝑦𝑘 = sigmoid(
𝑗
5
学習時の重みの求め方
誤差逆伝搬法(バックプロパゲーション)による重み修正
入力層
中間層(隠れ層)
教師信号
出力層
𝑦1
𝑏1
⋮
⋮
𝑥𝑖
𝑦𝑘
𝑏𝑘
⋮
⋮
⋮
𝑦𝑐
𝑏𝑐
𝑥0
𝑥𝑑
𝑾𝐼
𝑾𝐻
③ ②の誤差を元に ② ①の誤差を元に
重み修正
重み修正
(最急降下法)
① 出力と教師信号
との誤差計算
6
ハイパパラメータ
学習する前に予め決定しておくべきパラメータ
ニューラルネット・・中間層の数,中間層ユニットの数
交差確認法などで最適値を決定
→ 非線形な識別関数も学習可能
ただし,過学習に注意!
7