2016-01-25 61 views
-1

我想實現一個神經網絡與3個隱藏的神經元,八度/ Matlab的錯誤

的代碼導致我的麻煩是:

bias = [-1 -1 -1]; 

    % Output layer 
    x3_1 = bias(1,4)*weights(4,1) + x2(1)*weights(4,2) + x2(2)*weights(4,3) + x2(3)*weights(4,4); 
    out(j) = sigmoid(x3_1); 

我收到錯誤:

一(I,J):列索引超出範圍;值4出結合的3 錯誤的:在文件/home/8.m從「/home/8.m」稱爲近線45,列12

+0

錯誤是明確陳述。當您只有3列時,您正嘗試訪問第4列。 – excaza

+0

@excaza我有weight = ones(4,4);怎麼會這樣 ? – ferrer

+1

@ferrer:只需啓用debugging:debug_on_error(1),然後重新運行腳本並等到它停止,然後評估你的變量 – Andy

回答

1

你試圖訪問bias(1,4)當偏壓被初始化爲[ -1 -1 -1]。看起來您錯過了每次迭代期間更新偏差值的步驟,因此它們始終是[-1 -1 -1]。

+0

沒有偏差實際上沒有更新,它的權重被更新。 – ferrer