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
PRML勉強会 第五章 -前半 - 川上雄太作成分
Search
takegue
June 02, 2014
Technology
1.6k
0
Share
PRML勉強会 第五章 -前半 - 川上雄太作成分
代理Upload
takegue
June 02, 2014
More Decks by takegue
See All by takegue
不自然言語の自然言語処理: コード補完を支える最新技術
takegue
1
910
つかわれるプラットフォーム 〜デザイン編〜@DPM#2
takegue
2
12k
カルチャーとエンジニアリングをつなぐ データプラットフォーム
takegue
4
6.6k
toC企業でのデータ活用 (PyData.Okinawa + PythonBeginners沖縄 合同勉強会 2019)
takegue
4
1.2k
Rettyにおけるデータ活用について
takegue
0
940
Sparse Overcomplete Word Vector Representations
takegue
0
260
Aligning Sentences from Standard Wikipedia to Simple Wikipedia
takegue
0
250
High-Order Low-Rank Tensors for Semantic Role Labeling
takegue
0
140
Dependency-based empty category detection via phrase structure trees
takegue
0
110
Other Decks in Technology
See All in Technology
エンジニアは生成AIと どのように向き合うべきか? ことばの意味という観点から
verypluming
3
340
AI駆動開発が変える、大規模開発の前提 ーHuman in the Loop から Human on the Loop へ / AIE2026
visional_engineering_and_design
2
2.1k
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
490
Java正規表現エンジン(NFA)の仕組みと パフォーマンスを維持するための最適化手法
takeuchi_132917
0
180
ルールやカスタム機能、どう使う?理想の出力を引き出すために今知りたいIBM Bob 5つの機能
muehara
1
310
新規事業を牽引する技術選定 〜フルスタックTypeScript開発の実践事例〜
nullnull
2
260
もりもり新機能を一挙紹介! AgentCoreに入門して、AWS上にAIエージェントを構築しよう
minorun365
PRO
6
720
Javaで学ぶSOLID原則
negima
1
270
oracle-to-databricks-migration-with-llm-and-dbt
casek
1
430
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development with AI-DLC
yoshidashingo
0
110
価格.comをAI駆動で全面刷新する ー 30年分の技術的負債を返し、次の30年の土台をつくる ー / AI Engineering Summit Tokyo 2026
tkyowa
36
38k
20260528_生成AIを専属DSに_Howの次にすべきことを考える
doradora09
PRO
0
280
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Designing for Timeless Needs
cassininazir
1
250
A Soul's Torment
seathinner
6
2.9k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
820
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Deep Space Network (abreviated)
tonyrice
0
160
How to Talk to Developers About Accessibility
jct
2
220
Transcript
PRML 勉強会 第5章 ニューラルネットワーク 担当:王研究室 川上雄太
ニューラルネットワーク(以降NN)はいろんな事に使える 最近、第3次NNブームが到来(過ぎつつある?) NNのライブラリ,ツールキットはいろいろあるので、 割と手軽に利用可能だったりする
目標 それらを使うときのために • 中で何が起こっているのか • パラメータの意味 • etc を理解しておくこと! なので、本質的に重要でなさそうな部分はごっそり
省きます。。。 (近似の話、計算の高速化など)
5章のすすめかた(予定) • 第一週 • NNとは何か • NNの訓練 • 誤差逆伝搬 ←重要!
• ヘッセ行列 • 第二週 • NNの正則化、畳み込みNN • 混合密度NN • ベイズNN
NNとは何か PRML §5.1 p.226 – p.233
5.1 フィードフォワードネットワーク関数 • 3,4章でも取り扱ったクラス分類の線形モデルを 思い出す , = =1 (5.1) ・
はクラス分類なら非線形活性化関数 回帰なら恒等写像 • 基底関数の線形和を関数にかける、という式 • をさらにパラメータ依存の関数にすると?
5.1 フィードフォワードネットワーク関数 = = ℎ (1) + 0 (1) =1
(5.3) ← (5.2) ℎ(・)はシグモイド関数 • ここでいう(1)は、1層目という意味 (後で説明) • これを(5.1)式の線形モデルの基底関数とする
5.1 フィードフォワードネットワーク関数 = ℎ (1) + 0 (1) =1 (5.3)
← (5.2) = (2) + 0 (2) =1 (5.5) ← (5.4) (5.1)式の に相当 (5.1)式のf ・ に相当
5.1 フィードフォワードネットワーク関数 入力値を2段階の線形和・非線形関数で変換している = ℎ (1) + 0 (1) =1
(5.3) ← (5.2) = (2) + 0 (2) =1 (5.5) ← (5.4) 入力層 隠れ層 出力層
5.1 フィードフォワードネットワーク関数 • 1つにまとめると • 図で表すと , = 2 =0
ℎ (1) =0 (5.9)
5.1 フィードフォワードネットワーク関数 • こんな図で表せるので”ネットワーク” • (5.9)式の出力を求める計算過程を順伝搬と呼ぶ • 今後この構造を2層NNと呼ぶ • ネットワーク構造には様々な拡張が考えられる
NNのはたらき • 万能近似器 • どんな連続関数でも任意の精度で近似可能 (隠れ層をめっちゃ増やせば)
NNのはたらき • 万能近似器 • どんな連続関数でも任意の精度で近似可能 (隠れ層をめっちゃ増やせば)
NNの訓練 PRML §5.2 p.233 – p.242
何をしたいのか • NNのパラメータは2層まとめて • この重みを最適化したい →誤差関数 の最小化 , = 2
=0 ℎ (1) =0 5.9 再掲
解くべき問題と誤差関数の種類 回帰 2クラス分類 他クラス分類 出力ユニット の 活性化関数 線形出力関数 = ロジスティック
シグモイド関数 = 1 1 + exp − ソフトマックス関数 = exp (, ) exp( (, )) 誤差関数 二乗和誤差関数 = 1 2 , =1 − 2 交差エントロピー誤差関数 E = − ln =1 + 1 − ln 1 − 多クラス交差エントロピー 誤差関数 E = − ln , =1 =1
5.2.1 パラメータ最適化 • 誤差関数の値が小さくなる方向にパラメータを更 新していけばいい(勾配降下法など) (+1) = + ∆() •
いろいろなアルゴリズムがあるが、結局は∆()の 決め方の違い
5.2.4 勾配降下最適化 • 最も単純なアプローチ (+1) = () − (()) •
は学習率パラメータ • 最急降下法ともいう • バッチ訓練では共役勾配法、準ニュートン法な どの方が頑健で速い
5.2.4 勾配降下最適化 • 勾配降下法にはオンライン版もある • オンライン? 個々のデータ点について逐次的に最適化 データの冗長性に強い 局所解を回避しやすい
誤差逆伝搬 error backpropagation PRML §5.3 p.242 – p.250
何をしたいのか • NNは誤差関数を最小化するように学習する (最急降下法の場合) (+1) = () − (()) •
パラメータに関する誤差関数の微分 が 知りたい
5.3.1 誤差関数微分の評価 • 例えば単純な線形モデルの場合 = =1 (5.45) • ある入力パターンnに対する誤差関数は =
1 2 − 2 (5.46) • 重み に関する勾配は = − (5.47) 誤差信号 リンクの 入力値
5.3.1 誤差関数微分の評価 • 多層ネットワークの場合は? 複数層の線形モデルと非線形関数 = = ℎ • 誤差関数
は、 を通してのみ に依存する ことを利用して微分を分解 = (5.50)
5.3.1 誤差関数微分の評価 = 5.50 ここで、 ≡ は誤差と呼ばれる また、 = (5.52)
すると = (5.53)
5.3.1 誤差関数微分の評価 = 5.53 (5.47)式を参考にすると = − (5.54) • 隠れユニットのは
= = (5.55) という感じで入力側に遡って評価
5.3.1 誤差関数微分の評価 • 長々やったけど結局どういうことかというと 逆伝搬公式 = = ℎ′ 出力側 入力側
学習の流れ 0.重みをランダムに振る 1.入力ベクトル による現在の出力を求める (順伝搬) 2.出力層での誤差 を計算する 3. をもとに全ての隠れユニットの を得る(逆伝搬)
4. を用いて誤差関数の微分( )を評価 5.重みを更新 6.誤差が十分小さくなったら終了 ならなければ1.に戻る (+1) = () − (())
とりあえずここまで 次週は ・NNの正則化 ・NNのなかまたち (畳込みNN, 混合密度NN, ベイズNN) ・deep learningの話 についてできるといいなああ