Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
パーセプトロンとニューラルネット1
Search
Ayumu
February 14, 2019
Technology
120
0
Share
パーセプトロンとニューラルネット1
長岡技術科学大学 自然言語処理研究室
学部3年 守谷 歩
Ayumu
February 14, 2019
More Decks by Ayumu
See All by Ayumu
B3ゼミ_03_28_マルチモーダル学習_.pdf
ayumum
0
200
マルチモーダル学習
ayumum
0
190
B3ゼミ 自然言語処理におけるCNN
ayumum
0
140
言語処理年次大会報告
ayumum
0
130
ニューラルネット4
ayumum
0
140
文献紹介「二値符号予測と誤り訂正を用いたニューラル翻訳モデル」
ayumum
0
200
ニューラルネット3 誤差伝搬法,CNN,word2vec
ayumum
0
200
ニューラルネット実践
ayumum
0
140
文献紹介[Zero-Shot Dialog Generation with Cross-Domain Latent Action]
ayumum
0
230
Other Decks in Technology
See All in Technology
なぜ、IAMロールのプリンシパルに*による部分マッチングが使えないのか? / 20260518-ssmjp-iam-role-principal
opelab
2
150
SDDで⾒える、AIコーディングの"内訳"
lycorptech_jp
PRO
0
130
"スキルファースト"で作る、AIの自走環境
subroh0508
1
650
LT準備のToilを削減 〜決定論×確率論のスライド生成CLI〜
shukob
0
120
ラズパイ & Picoで入門:Zephyr(RTOS)の環境構築からビルドまでの紹介
iotengineer22
0
170
コーポレートサイトのアクセシビリティ改善とJIS準拠への実践
lycorptech_jp
PRO
2
100
コーディングAIが導くリスクベースド探索的テストの実践
lycorptech_jp
PRO
1
120
サプライチェーン攻撃への備えについて考えている #湘なんか
stefafafan
2
2.2k
Claude Code / Codex / Kiro に AWS 権限を 渡すとき、何を設計すべきか
k_adachi_01
6
1.9k
キャリア25年目にしてTypeScript に出会うまで - 「型」を通じて振り返るプログラミング言語遍歴 / Meeting TypeScript After 25 Years in Tech - Looking Back at My Programming Language Journey Through "Types"
bitkey
PRO
2
130
AI Agent に“攻略本”を渡したら、150フォームの移行が回り始めた話/登壇資料(高橋 悟生)
hacobu
PRO
1
270
Purview Endpoint DLP 動かしてみた
kozakigh
1
460
Featured
See All Featured
Bash Introduction
62gerente
615
210k
The Cult of Friendly URLs
andyhume
79
6.9k
We Are The Robots
honzajavorek
0
230
What does AI have to do with Human Rights?
axbom
PRO
1
2.1k
Scaling GitHub
holman
464
140k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
350
Embracing the Ebb and Flow
colly
88
5k
A better future with KSS
kneath
240
18k
BBQ
matthewcrist
89
10k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.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関数である。 まとめ