backpropagation

    0熱度

    1回答

    我有一個反向傳播模型工作得很好,但我想實施批量訓練。 一批培訓(反向傳播功能),僞代碼之前代碼: forevery(connection in this.connections.in){ // Adjust weight var deltaWeight = rate * gradient + momentum * connection.previousDeltaWeight;

    -1熱度

    1回答

    我的意思是像國際象棋,草稿,井字遊戲,2048,超級馬里奧遊戲,在一般遊戲需要多個遊戲,移動完成。 我敢肯定人們可以使用遺傳算法,但我願意知道是否有純反向傳播訓練它的方式。我會用什麼作爲目標值? 我的想法讓他玩一些運動,直到遊戲結束,並使用最終結果作爲目標值的,但我認爲這將只是訓練最後一步,不是嗎? 另一種方法是訓練每一個動作,但那麼目標值會是什麼?您可以有多個有效的移動選擇,但是確實足夠長遠。如

    0熱度

    1回答

    我正在學習如何使用scikit-learn開發反向傳播神經網絡。我仍然對如何在我的神經網絡中實現k-fold交叉驗證感到困惑。我希望你們能幫助我。我的代碼如下: import numpy as np from sklearn.model_selection import KFold from sklearn.neural_network import MLPClassifier f = o

    0熱度

    1回答

    我有一個神經網絡,在某個點分支到兩個子網絡。 當我分別訓練子網時,我的準確性相當好。然而,當我訓練他們兩個時,似乎其中一項任務是劫持公共層中的權重,從而造成一種情況,即我有一項任務的精度很高,另一項任務的準確性較差。 爲了減少更強大的任務的影響,我正考慮允許定義每n次迭代的權重更新。 你認爲這有意義嗎?

    0熱度

    3回答

    您是否知道我如何將自定義正則化函數應用於CNTK? 特別是,我想補充損失函數的導數對輸入的影響;類似於 newLoss = loss + lambda * gradient_F(inputs) 其中F是模型學到的函數,輸入是模型的輸入。 如何在CNTK中實現此目的?我不知道如何訪問與輸入相關的梯度,以及如何將梯度與正規化器的權重進行比較。

    0熱度

    1回答

    我試着運行我的下面的代碼來訓練我的貝葉斯網絡。 p = [-1:.05:1]; t = sin(2*pi*p)+0.1*randn(size(p)); net = feedforwardnet(2,'trainbr'); net = train(net,p,t); a = net(p); 並且收到如下錯誤; Default value is not a member of type "

    0熱度

    1回答

    我學習人工神經網絡,我做了兩個腳本(在fortran90和Python)爲簡單的二元分類問題。 我第一次沒有偏見,我收斂良好。但是爲每個節點添加一個偏差它不再收斂(或者一切接近0或者接近1的所有節點) 偏差爲1,並且對於每個節點具有特定的權重。它是隨機初始化的,然後更新添加delta等其他權重。我試圖改變梯度步長,但它仍然在做同樣的事情。 有人做過任何線索.... EDIT: 網絡: IN

    0熱度

    1回答

    我是Tensorflow的新生。最近我想用兩層神經網絡模型擬合一個非線性函數「y = 1 + sin(x * pi/4)」。程序代碼如下: #!/usr/bin/python import tensorflow as tf import numpy as np import math import matplotlib.pyplot as plt

    1熱度

    1回答

    我有一個優化問題,其中我想最大化的目標函數是不可微分的。我用遺傳算法訓練了一個線性模型,但線性模型的表現並不好。我正在考慮用神經網絡替換線性模型。但我的理解是,使用不可區分的目標函數,我不能使用backprop方法來執行更新。 那麼,有沒有人知道如何使用遺傳算法來訓練神經網絡?

    0熱度

    1回答

    我相信這有一個簡單的答案!我要求提高我的理解力。 的圖:的變形例:CS231N Back Propagation 如果該隱規則被施加到得到德爾塔用於Y,梯度是:dy = -4根據圖。 應用鏈式法則記號:df/dy = df/dq * dq/dy 數控: double x = -2; double y = 5; double q = 3; double z = -4; double f =