Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
パーセプトロンとニューラルネット1
Ayumu
February 14, 2019
Technology
0
88
パーセプトロンとニューラルネット1
長岡技術科学大学 自然言語処理研究室
学部3年 守谷 歩
Ayumu
February 14, 2019
Tweet
Share
More Decks by Ayumu
See All by Ayumu
B3ゼミ_03_28_マルチモーダル学習_.pdf
ayumum
0
100
マルチモーダル学習
ayumum
0
89
B3ゼミ 自然言語処理におけるCNN
ayumum
0
75
言語処理年次大会報告
ayumum
0
61
ニューラルネット4
ayumum
0
88
文献紹介「二値符号予測と誤り訂正を用いたニューラル翻訳モデル」
ayumum
0
100
ニューラルネット3 誤差伝搬法,CNN,word2vec
ayumum
0
120
ニューラルネット実践
ayumum
0
82
文献紹介[Zero-Shot Dialog Generation with Cross-Domain Latent Action]
ayumum
0
110
Other Decks in Technology
See All in Technology
VS Code Meetup #21 - もう一度知りたい基礎編 - ファイル操作、コーディングの基本編
74th
0
190
Settlement simulation testing to ensure correct settlement processing
applepine1125
2
1.1k
Trusted Web プロトタイプ
finengine
0
320
漫画で使えそうな背景画像をblenderを使って作ってみた!
nokonoko1203
1
270
私のAWS愛を聞け!ここが好きだよAmazon FSx for NetApp ONTAP
non97
0
750
品質特性のすすめ
honamin09
0
170
年700万円損するサーバレスの 認可システムをご紹介します!!
higuuu
3
330
ここが好きだよAWS管理ポリシー_devio2022/i_am_iam_lover
yukihirochiba
0
3.1k
COSCUP x KCD Taiwan 2020 - 那些年我們在開源社群的日子 - Cloud Native Taiwan
pohsien
0
120
セキュアなTerraformの使い方 ~ 機密情報をコードに含めず環境構築するにはどうしたらいいの?
harukasakihara
9
1.5k
ソフトバンクaPaaS領域への挑戦
sbtechnight
0
310
SBOMを利用したソフトウェアサプライチェーンの保護
masahiro331
1
190
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
106
5.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
498
130k
The Web Native Designer (August 2011)
paulrobertlloyd
75
2k
Fashionably flexible responsive web design (full day workshop)
malarkey
396
62k
In The Pink: A Labor of Love
frogandcode
131
21k
What the flash - Photography Introduction
edds
62
10k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_i
25
15k
VelocityConf: Rendering Performance Case Studies
addyosmani
316
22k
Code Reviewing Like a Champion
maltzj
506
37k
Rails Girls Zürich Keynote
gr2m
87
12k
Git: the NoSQL Database
bkeepers
PRO
415
59k
Fireside Chat
paigeccino
13
1.4k
Transcript
パーセプトロンと ニューラルネット1 2019/02/14 長岡技術科学大学 自然言語処理研究室 学部3年 守谷 歩 パーセプトロン、多重パーセプトロン、ニューラ ルネット、活性化関数
パーセプトロンとは ⚫複数の入力を一つの出力にするもの。 ⚫出力の値は1か0 y x1 x2 w1 w2 = ቊ
0 (1 ∗ 1 + 2 ∗ 2 ≤ 1 (1 ∗ 1 + 2 ∗ 2 > は閾値
論理回路みたいに考えられるのなら ⚫AND ⚫OR y x1 x2 w1 w2 y x1
x2 w1 w2 x1 x2 y 0 0 0 0 1 0 1 1 1 1 0 0 x1 x2 Y 0 0 0 0 1 1 1 1 1 1 0 1 パーセプトロン ቊ 0 (1 ∗ 1 + 2 ∗ 2) ≤ 1 (1 ∗ 1 + 2 ∗ 2) > は閾値 {1 = 0.5, 2 = 0.5, = 0.7(0.5よりも大きい)} {1 = 0.5, 2 = 0.5, = 0.3(0.5より小さい)}
Pythonで実装 パーセプトロンAND,OR ⚫コード ⚫結果
実装したパーセプトロンを図示化 パーセプトロン = ቊ 0 (1 ∗ 1 + 2
∗ 2) ≤ 1 (1 ∗ 1 + 2 ∗ 2) > は閾値 これを = −(:バイアス)とすると = ቊ 0 1 ∗ 1 + 2 ∗ 2 + ≤ 0 1 1 ∗ 1 + 2 ∗ 2 + > 0 y x1 x2 w1 w2 ORゲートの重み {1 = 1, 2 = 1, = 0.5}
XORおさらい ⚫論理回路の知識を使うとXORはANDゲート、NANDゲート、ORゲー トから実装することができる。 x1 x2 y 0 0 0 0
1 1 1 1 0 1 0 1 x1 s2 s1 x2 x1 x2 y y
多重パーセプトロン ⚫2段階にすることでXORみたいな状態でも表現可能 ⚫この時の一番左を第0層として扱い、出力まで層を増やせる ⚫XORは2層のパーセプトロン s1 x1 x2 s1 y 第0層
第1層 第2層
⚫コード ⚫結果 Pythonで実装 多重パーセプトロンXOR
⚫パーセプトロンでいろいろな領域に分ける方法は分かったが具体 的な重みは自動的に計算できないのか? ⚫ニューラルネットは重みをデータから学習する性質がある ニューラルネット実装への導入
⚫入力層、中間層(隠れ層)、出力層に分けられたネットワーク ⚫重みをもつ層を数えることが多い(例:中間層が5個あったら6層 ネットワーク) ニューラルネットとは 入力層 中間層 出力層
⚫パーセプトロンの動作を関数h(x)にする = ቊ 0 1 ∗ 1 + 2 ∗
2 + ≤ 0 1 1 ∗ 1 + 2 ∗ 2 + > 0 (w1,w2:重み x1,x2:入力 b:バイアス) = h(b+w1∗x1+w2∗x2) ℎ = ቊ 0 ( ≤ 0) 1 ( > 0) パーセプトロンの式変形 h(x) h(x) x1 x2 w1 w2 1 y b
⚫さっき導出した活性化関数は閾値を境に出力が切り替わる関数: ステップ関数である。 ⚫パーセプトロンはステップ関数を使っている。 ⚫ステップ関数ℎ = ቊ 0 ( ≤ 0)
1 ( > 0) 活性化関数 h(x) ステップ関数
⚫ニューラルネットはパーセプトロンと違い活性化関数にシグモイド 関数などの関数を使っている。 ⚫シグモイド関数では、値を1,0の2値でなく、1から0の値を使ってい る ⚫シグモイド関数ℎ = 1 1+exp(−) 活性化関数 h(x)
シグモイド関数
⚫ニューラルネットではシグモイド関数のほかにReLU関数といった関 数を使用することがある。 ⚫ReLU関数は1から0の値に変換せず、0から入力xまでといった値を 使っている。 ⚫ReLU関数ℎ = ቊ ( ≥ 0)
0 ( < 0) 活性化関数 h(x) ReLU関数
⚫パーセプトロンは複数の入力を0,1の2値で返すことができる。 ⚫ニューラルネットはパーセプトロンと違って重みが自動的につくら れる。 ⚫出力を閾値よりも高いかどうかで見るパーセプトロンは活性化関 数としてステップ関数が使用されている。 ⚫出力が、入力が小さい場合0に近い値、入力が大きい場合1に近 い値を返す活性化関数がシグモイド関数である ⚫入力が0を超えていたらそのまま出力し、それ以外なら0にする活 性化関数がReLU関数である。 まとめ