SLSLVPVisual Learning Platform
公式自我檢查中…
NEURAL NETWORK · INTERACTIVE LAB
神經網路參數優化互動平台
從前向傳播、反向傳播到梯度下降,逐步觀察單一神經元如何更新參數。
MODEL1 Neuron2 inputs + bias
ACTIVATIONLinear即時切換
OPTIMIZERGradient DescentFull precision
!
COMPUTATIONAL GRAPH
神經元計算圖
灰色實線=前向傳播;粉紅虛線=反向梯度。
左右滑動查看完整計算圖 →
Bias b1.00
Input x₁2.00
Input x₂-1.00
加總 Σ
b + w₁x₁ + w₂x₂
1 + 0.5(2) + 1.5(-1)
0.50
預測 ŷ0.50Linear
單筆 MSE
(ŷ-y)²6.2500Target y3.00
b = 1.00
w₁ = 0.50
w₂ = 1.50
∂L/∂ŷ
∂ŷ/∂z
∂L/∂z
∂L/∂b
∂L/∂w₁
∂L/∂w₂
ACTIVATION
激勵函數 f(z)
決定加總值 z 如何被轉換成模型輸出。
OPTIMIZATION CONSOLE
READY模型訓練與參數優化
每次 Step 都使用目前梯度更新 w₁、w₂ 與 b。
即時 Loss6.2500
更新步數 Steps0
梯度範數—
加總 z0.500
預測 ŷ0.500
誤差 e = ŷ − y-2.500
局部斜率 f′(z)1.000
b1.00—
w₁0.50—
w₂1.50—
LAST STEP最近一次更新成效
WAITING
Loss—→—
ΔLoss—
相對變化—
最佳 Loss6.2500
b—
w₁—
w₂—
Best step0
Loss trajectory
最近 24 steps
尚未開始最佳化執行 Step 或 Auto-Train 後顯示 Loss 趨勢
LEARNING LAYER數學計算閱讀層級先掌握核心,再逐步展開完整 Chain Rule 與回推路徑。
STEP 01 · FORWARD PASS
前向傳播
依序完成加權求和、激活函數與 Loss 計算。
加權求和 · z = b + w₁x₁ + w₂x₂—
權重貢獻 1—w₁ × x₁
權重貢獻 2—w₂ × x₂
偏差項—b
加總結果—z
激活函數 · ŷ = f(z)—
z→f(z)→ŷ→與目標 y 比較
單筆 MSE · L = (ŷ-y)²—
Prediction error—e = ŷ − y,MSE 即 e²(此處 n=1)。
此平台一次示範一筆、單一純量輸出的資料。標準 MSE 為平均平方誤差;此處資料點數 n=1,因此等同平方誤差。內部計算保留完整浮點精度,僅顯示時格式化。
STEP 02 · BACKPROPAGATION
反向傳播與連鎖律
從 Loss 沿計算圖反向傳遞局部導數。
Loss 對輸出 · ∂L/∂ŷ = 2(ŷ-y)—
激活函數導數 · f′(z) = ∂ŷ/∂z—
連鎖律 · ∂L/∂z = (∂L/∂ŷ)·f′(z)—
∂L/∂w₁ = (∂L/∂z)·x₁—
∂L/∂w₂ = (∂L/∂z)·x₂—
∂L/∂b = ∂L/∂z—
Loss 對輸出—∂L/∂ŷ
×
輸出對加總—∂ŷ/∂z = f′(z)
=
Loss 對加總—∂L/∂z
—
BACKPROP MAP從 Loss 反推到每個可訓練參數沿著箭頭往回走;邊上的數字是 Chain Rule 要相乘的局部導數。
先從 Loss 本身開始,接著逐層回推。
1 / 4 · Loss
STARTL—
→∂L/∂ŷ—
OUTPUTŷ—
→∂ŷ/∂z—
PRE-ACTIVATIONz—
∂z/∂w₁ = x₁—PARAMETERw₁—
∂z/∂w₂ = x₂—PARAMETERw₂—
∂z/∂b1.000000PARAMETERb—
Chain Rule沿任一路徑,把邊上的局部導數相乘,就得到 Loss 對該參數的梯度。
PATH TO w₁Loss → ŷ → z → w₁依序乘上每一段局部導數,回推到 w₁。
Step 1L從 Loss 出發
⟶
Step 2ŷ∂L/∂ŷ = —
⟶
Step 3z∂ŷ/∂z = —
⟶
Step 4w₁∂z/∂w₁ = —
RESULT—
PATH TO w₂Loss → ŷ → z → w₂前兩段完全相同,最後一段改為 x₂。
Step 1L從 Loss 出發
⟶
Step 2ŷ∂L/∂ŷ = —
⟶
Step 3z∂ŷ/∂z = —
⟶
Step 4w₂∂z/∂w₂ = —
RESULT—
PATH TO bLoss → ŷ → z → bbias 的最後一段固定為 1,因此梯度等於 ∂L/∂z。
Step 1L從 Loss 出發
⟶
Step 2ŷ∂L/∂ŷ = —
⟶
Step 3z∂ŷ/∂z = —
⟶
Step 4b∂z/∂b = 1
RESULT—
梯度的正確解讀
梯度描述的是「目前參數附近」的局部變化率。若參數 θ 發生一個很小的變化 Δθ,則 Loss 的一階近似為 ΔL ≈ (∂L/∂θ)·Δθ。因此不應把梯度直接解讀成「參數增加 1,Loss 一定改變同樣數值」。
OPTIMIZATION · GRADIENT DESCENT
梯度最後如何更新參數?
θnew = θold − η · ∂L/∂θ
這個版本使用最基本、沒有 momentum 與 weight decay 的梯度下降更新。減號代表沿著局部最陡上升方向的反方向移動,以嘗試降低 Loss。
參數 θ目前值梯度 ∂L/∂θ更新量 Δθ更新後 θnew
b————
w₁————
w₂————
目前值 θ_old—b
→
梯度 g—∂L/∂b
→
縮放 ηg—η·∂L/∂b
→
更新量 Δθ—−η·∂L/∂b
→
更新後 θ_new—b + Δb
目前值 θ_old—w₁
→
梯度 g—∂L/∂w₁
→
縮放 ηg—η·∂L/∂w₁
→
更新量 Δθ—−η·∂L/∂w₁
→
更新後 θ_new—w₁ + Δw₁
目前值 θ_old—w₂
→
梯度 g—∂L/∂w₂
→
縮放 ηg—η·∂L/∂w₂
→
更新量 Δθ—−η·∂L/∂w₂
→
更新後 θ_new—w₂ + Δw₂
方向規則若梯度為正,更新量為負;若梯度為負,更新量為正。因為梯度下降使用 θ_new = θ_old − η·∂L/∂θ,故移動方向與梯度方向相反。
b——
w₁——
w₂——
STEP-BY-STEP UPDATE用同一套規則,逐步更新每一個參數每個參數都遵循:先求梯度 → 乘上學習率 η → 加上負號得到 Δθ → 套回 θ_new = θ_old + Δθ。
先使用 Backprop 得到每個參數的梯度 gθ。
1 / 4 · 梯度
PARAMETERb
Step 1|梯度—g_b = ∂L/∂b
Step 2|乘上 η—η·g_b
Step 3|反向移動—Δb = −η·g_b
Step 4|更新新值—b_new = b + Δb
PARAMETERw₁
Step 1|梯度—g₁ = ∂L/∂w₁
Step 2|乘上 η—η·g₁
Step 3|反向移動—Δw₁ = −η·g₁
Step 4|更新新值—w₁_new = w₁ + Δw₁
PARAMETERw₂
Step 1|梯度—g₂ = ∂L/∂w₂
Step 2|乘上 η—η·g₂
Step 3|反向移動—Δw₂ = −η·g₂
Step 4|更新新值—w₂_new = w₂ + Δw₂
WHY DESCENT?
為什麼要走 −∇L,而不是 +∇L?
對足夠小的參數位移 Δθ,一階 Taylor 近似給出 ΔL ≈ ∇LᵀΔθ。若選擇 Δθ = −η∇L,則:
ΔL ≈ ∇Lᵀ(−η∇L) = −η‖∇L‖² ≤ 0
‖∇L‖²—(∂L/∂b)²+(∂L/∂w₁)²+(∂L/∂w₂)²
一階預測 ΔL—−η‖∇L‖²
目前 η—learning rate
重要:這是局部一階近似。若 η 太大,有限步長可能跨過低點,使實際 Loss 上升;因此「沿負梯度方向」不等於「任意步長都保證下降」。
ReLU 在 z=0:數學上不可微;本互動平台採用 f′(0)=0 的常見實作慣例,並在畫面中明確揭露。
Auto-Train:每次按 Step 都是一個參數更新 iteration,不稱為 epoch;只有在定義資料集並完整走訪資料後,才適合使用 epoch 這個名詞。