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
ニューラルネット3 誤差伝搬法,CNN,word2vec
Search
Ayumu
February 28, 2019
Technology
0
170
ニューラルネット3 誤差伝搬法,CNN,word2vec
2019/02/28
長岡技術科学大学 自然言語処理研究室
学部3年 守谷 歩
Ayumu
February 28, 2019
Tweet
Share
More Decks by Ayumu
See All by Ayumu
B3ゼミ_03_28_マルチモーダル学習_.pdf
ayumum
0
170
マルチモーダル学習
ayumum
0
160
B3ゼミ 自然言語処理におけるCNN
ayumum
0
100
言語処理年次大会報告
ayumum
0
98
ニューラルネット4
ayumum
0
110
文献紹介「二値符号予測と誤り訂正を用いたニューラル翻訳モデル」
ayumum
0
170
ニューラルネット実践
ayumum
0
120
文献紹介[Zero-Shot Dialog Generation with Cross-Domain Latent Action]
ayumum
0
190
パーセプトロンとニューラルネット1
ayumum
0
110
Other Decks in Technology
See All in Technology
Operating Operator
shhnjk
1
650
VGGT: Visual Geometry Grounded Transformer
peisuke
1
620
Sansanのデータプロダクトマネジメントのアプローチ
sansantech
PRO
0
230
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
230
CDK Vibe Coding Fes
tomoki10
1
530
AI エージェントと考え直すデータ基盤
na0
18
7.3k
Four Keysから始める信頼性の改善 - SRE NEXT 2025
ozakikota
0
210
[SRE NEXT] ARR150億円_エンジニア140名_27チーム_17プロダクトから始めるSLO.pdf
satos
5
2.1k
AWS CDK 入門ガイド これだけは知っておきたいヒント集
anank
5
600
CDK Toolkit Libraryにおけるテストの考え方
smt7174
1
450
ソフトウェアQAがハードウェアの人になったの
mineo_matsuya
3
110
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
730
Featured
See All Featured
Writing Fast Ruby
sferik
628
62k
Side Projects
sachag
455
42k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
980
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Speed Design
sergeychernyshev
32
1k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Facilitating Awesome Meetings
lara
54
6.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
The Cult of Friendly URLs
andyhume
79
6.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Producing Creativity
orderedlist
PRO
346
40k
Transcript
ニューラルネット 2019/02/28 長岡技術科学大学 自然言語処理研究室 学部3年 守谷 歩 誤差逆伝搬法,CNN,word2vec
誤差逆伝搬法 ⚫逆伝搬は順方向とは逆向きに局所的な微分をする + **2 = 2(x+y)*1 = 1 = 1
∗ 2 = 2(x+y)
ReLUの逆伝搬 ⚫ReLU関数はy = ቊ ( > 0) 0 ( ≤
0) より、その微分の形はy = ቊ 1 ( > 0) 0 ( ≤ 0) で表すことができる。 relu relu 0 > 0 ≤ 0
Sigmoidの逆伝搬 ⚫Sigmoid関数はy = 1 1+exp(−) より、その微分の形はy = y(1 − y)
で表すことができる。 sigmoid (1 − )
Affineレイヤ ⚫重みWと入力X,バイアスBを行列として考え、その総和を計算する 場合、行列の内積の計算を行う。これをアフィン変換といい、アフィ ン変換を行う処理を「Affineレイヤ」と呼ぶ dot + ∗ W = ∗
= ∗
各レイヤ実装
重みの更新 ⚫SGD(確率的勾配降下法):現状の重みを勾配の方向へある一定の距 離更新する。 ← − η ⚫Momentum:モーメンタムは運動量という意味であり、勾配方向への距 離の更新に速度を追加する。 ← −
← + ⚫AdaGrad:パラメータの各要素に学習係数を調整しながら学習を行う(更 新のステップを調整する) ℎ ← ℎ + ۨ ← − η 1 ℎ ⚫Adam:MomentumとAdaGradの利点を組み合わせ、効率的にパラメータ 空間を探索する
CNN(畳み込みニューラルネット) ⚫Convolutionレイヤ、Poolingレイヤを全結合層に追加したネット ワーク。 ⚫畳み込み層といった、入力データを受け取った次元Nと同じ次元N のデータとして出力する。この時の入出力のデータを特徴マップと 呼ぶ。 ⚫入力データの周囲に固定のデータを埋めることをパディングと呼 ぶ。パディングを行うことで出力サイズを調整することができる。 ⚫フィルターを適用する位置の間隔をストライドという。
CNN(畳み込みニューラルネット) ⚫Poolingレイヤ:プーリングとは縦、横咆哮の空間を小さくする演算 である。例として2*2のMAXプーリングを行うと2*2の行列で最大値 を取る要素を取り出す。一般的に、プーリングのサイズとストライド は同じ値とする。プーリングによって、入力データのずれを吸収でき る ⚫情報をスライドさせながら生成された情報が畳み込まれたレイヤ をConvolutionレイヤと呼ぶ Conv Affine
Pooli ng ReLU ReLU Affine Softm ax
分散表現 カウントベース手法 ⚫自然言語処理をするにあたってコーパスを用いる。コーパスを使う ために元のテキストデータを辞書型にし、単語のリストを単語IDのリ ストに変換する。 ⚫単語の分散表現は、単語を固定長のベクトルで表現する。 ⚫また、そのために、単語の意味は、周囲の単語によって形成され るといった分布仮説を用いる。
分散表現 コサイン類似度 ⚫ex) You sey goodbye, and I say hello→7*7の単語の頻度のテーブ
ルができる。 ⚫このテーブルを共起行列とし、各単語のベクトルが求まる、 ⚫単語ベクトル表現の類似度を計算する場合、2つのベクトルのコサ イン類似度を見る。 Similarity x, y = x ∗ y | |
分散表現 相互情報量PMI ⚫単語の頻度では、意味的に近い要素の関連性が少なくなる。 ⚫Xが起こる確率とyが起こる確率を使い相互情報量といった指標を 使う P x, y = log2
P x, y ()
Word2vec 推論ベース ⚫推論ベースは、周囲の単語が与えられたときに、その間にどのよ うな単語が出現するかを推測する手法 ⚫Ex)you ? Goodbye, and I say
hello ⚫One-Hotベクトルでベクトルを生成、CBOWモデルを用いる。 ⚫CBOWモデルはコンテキストからターゲット推論を行うニューラル ネット ⚫またほかにもSkip-gramモデルといったターゲットからコンテキスト 推論を行うニューラルネットも使用することができる。
CBOWモデル ⚫CBOWモデルの入力はコンテキストで表される。入 力層がコンテキストの数あり、中間層を経て出力層 へたどり着く。出力層のニューロンは各単語のスコ アであり、値が高いと対応する単語の出現確率も 高くなる。 ⚫スコアにSoftmax関数を適用すると確率が得られ る。 ⚫CBOWモデルの損失関数 =
−( |−1 , +1 )
Skip-gram ⚫Skip-gramモデルはCBOWと逆で、ターゲットか らコンテキストを予測するモデルである。 ⚫Ex)you ? Goodbye ? I say hello
⚫それぞれの出力層で、個別に損失を求め、そ れらを足し合わせら物を最終的な損失とする。 ⚫Skip-gramモデルの損失関数 = 1 =1 ( −1 + (+1 | )