2010-05-28 67 views
2

我正在C++中使用前饋反向傳播網絡,但似乎無法使其正常工作。我基於我的網絡是使用交叉熵錯誤函數。然而,我並不是很熟悉它,即使我試圖查看它,我仍然不確定。有時看起來很容易,有時很難。該網絡將解決多項分類問題,據我所知,交叉熵誤差函數適用於這些情況。 有人知道它是如何工作的?交叉熵誤差函數在普通的反向傳播算法中如何工作?

+0

我不是很熟悉神經網絡,但即使如此,你的問題聽起來很模糊。究竟是什麼,你有麻煩?如果你能縮小這些問題的範圍,你很可能會得到一個有用的答案。 – 2010-05-28 15:40:57

+0

好吧,基本上我只是不知道該算法是如何被淘汰的樣子。或者,試圖縮小它,如何計算誤差梯度以及如何使用交叉熵誤差函數反向傳播誤差?網絡使用sigmoid激活功能。 – user353042 2010-05-28 15:45:13

回答

3

啊是的,良好的反向傳播。它的樂趣在於,只要可區分,使用哪種錯誤函數並不重要(實施明智)。一旦您知道如何計算每個輸出單位的交叉熵(請參閱wiki article),只需簡單地使用該函數的偏導數來查找隱藏圖層的權重,並再次輸入輸入圖層。

但是,如果您的問題不是關於實施,而是關於培訓方面的困難,那麼您的工作就是爲您而做。不同的錯誤函數擅長於不同的事情(最好僅僅基於錯誤函數的定義來推理它),並且這個問題由諸如學習率等其他參數混合而成。

希望有幫助,讓我知道如果你需要任何其他信息;你的問題是一個模糊的...