0

看着this代碼爲什麼使用輸出火花庫(1 + 1)多層感知器的前面三角洲計算

for (i <- (L - 2) to (0, -1)) { 
    layerModels(i + 1).computePrevDelta(deltas(i + 1), outputs(i + 1), deltas(i)) 
} 

我想知道爲什麼我們通過outputs(i+1),而不是outputs(i)在上述代碼段中。據我瞭解,這只是需要S形活化層,其中有一個衍生物f'(x) = f(x) * (1-f(x)) = outputs(i) * (1-outputs(i))

這意味着爲了找到prevDelta我們應該使用outputs(i)

回答

0

我覺得這是爲什麼。如果像我這樣的人偶然在這裏摔跤,我會在這裏回答。

您必須注意,我們正在計算僅取決於下一層(第i + 1層)的增量和梯度的圖層i的增量。您必須注意,我們根據需要使用layerModels(i + 1),而不是layerModels(i)