BP神經網路與自動控制理論中 反饋 的區別與相同之處是什麼?

時間 2021-06-03 10:38:23

1樓:黑帥

BP演算法不能算反饋吧,他只是多元函式求偏導的一種表達,反饋是需要輸出影響控制輸入的,相比之下rnn更有自控中反饋的感覺。如果你硬要歸於反饋的話,那麼所有效能度量的演算法都是反饋吧。

2樓:

我試著解釋清楚吧:

BP是一種在神經網路中實現優化演算法的方式,這種操作如果放在框圖中確實就是乙個方塊。不過大多數時候,當神經網路已經搭好後,這個操作按規則來就行了,大多數框架都把這塊自動實現了,也就不用顯式表達了。

為什麼題主覺得這個像反饋?因為反饋描述的是輸入和輸出之間複雜的因果作用。乙個神經網路,給定了target,再用BP訓練,確實構成了反饋。

我先把反饋的框圖放在這裡,然後來一塊一塊地說:

我們知道反饋系統中sum符號後應該是error,那麼輸入應該是target,與之相減的應該是prediction,或者說是神經網路的推理結果。那麼反饋系統中的B其實是神經網路的前向傳播過程,F反而是反向傳播過程,輸出是網路的權重。

說實話,如果不這麼拆開看清楚,確實容易讓人暈。

至於為什麼自控領域裡,那要看你從哪個角度來看神經網路,怎麼理解控制。這個反饋結構對理解BP並不是很重要。其實有些非線性系統辨識的書裡也會有神經網路啊,auto regression model也可能用神經網路和BP啊。

如果再看SGD,那麼就更是到處都可能碰到了。再比如在強化學習裡,value function和policy function都用神經網路,value evaluation就不算控制,更新policy就算控制,其實都是怎麼習慣怎麼來罷了。

3樓:太空員外

控制是online,神經網路的優化往往是offline。

如果寫的不清楚或者不恰當,希望直接指出,答主也在學習,會繼續修改。

控制:控制用的是誤差修正e = r - r_hat; r是目標量(是已知的,可以理解成監督學習裡的輸出,在Block Diagram裡面往往是放在最左面的),e是誤差(注:在在控制裡,誤差的最小值是已知的)。

e的修正方法可以是通過PID和plant不斷的修改u_hat以至於e逼近0。在不考慮擾動的情況下,乙個穩定的控制系統是乙個自回歸系統(在無輸入的情況下),應該收斂到e等於0(或某乙個常數)的。

不準確的說,其原因可以理解為這個控制系統的穩態(t->inf)是其拉普拉斯變化的零態(S=0)結果(終值定理)。

機器學習:

監督學習的誤差修正(歐式距離)可以是J = (y - y_hat)^2; y是輸出。J是誤差函式(注:在機器學習裡面,誤差函式的最小值是未知的)。

優化的目標為了最小化這個誤差函式J。它的修正方法是讓J對y求導,得到dj/dy然後推出dj/dw(誤差對引數w的導數),通過梯度下降法或者是其他的高階方法(如牛頓法)來調整w最小化J。優化時候,需要調整引數w。

在控制系統中(不考慮設計過程),不存在需要調整的引數。

*關於機器學習的牛頓法和PID:

當J是凸的(有全域性唯一的最小值,且這些最小值都是相鄰的),二階可導的,優化J可以用牛頓法,二分法或任意的貪婪法。當它的梯度(多元函式的導數)J為0時代表了全域性最小值。

所以優化J,就是使J=0,這樣優化的目標就和控制相似了。這也說明,可以使用PID之類的控制器來加速收斂。但是要注意的是,機器學習中的誤差函式往往對引數w是非線性的,所以PID的設計一般需要是自適應的是穩健的,否則J可能會不不收斂。

*關於控制和優化:

如果在設計控制系統的時候,也是可以通過優化方法來使控制系統達到指定的目標。這一類叫最優控制。

4樓:Grace

單說「反饋」這種機制在生物範疇的神經元裡也有,不一定要歸到自控範疇。你可以想想,為什麼控制裡的「反饋「會是這樣的一種構造方式。

當然很早之前就有人在用BP神經網做智慧型控制了,數學模型不好確定的時候。

卷積神經網路和BP神經網路的關係?

乙個維度的BP神經網路就相當於CNN中的全連線了,無非是多幾個全連線,CNN是二維,二維如果搞成全連線就導致運算量巨大,所以有了權重共享,大大減少了運算量,CNN卷積的思想肯定也源於BP神經網路就,在影象上做二維卷積的CNN發出炫目的光芒下,BP神經網路就已經快被人們遺忘了,但是不管CNN再怎麼發展...

深層神經網路與淺層神經網路相比,有哪些優點?為什麼要發展深度學習?

Ricman 一,區別 在架構上,除了除了輸入層和輸出層之外,神經網路乙個中間層。中間層在國內很多翻譯叫隱藏層。它其它就是乙個編碼器。淺層神經網路的中間層數量較少,雖然有研究表明淺層神經網路可以滿足當下很多的功能與需求,但不可否認的淺層神經網路比較大,引數數量很多。目前業界已經有乙個非常明確的結論 ...

深度學習與神經網路有什麼區別?

徐佳逸 深度學習可以理解成用深度神經網路 DNN,Deep Neural Network 來進行機器學習,他倆的關係可以從這個定義中一目了然地看出來。深度神經網路 DNN 一般分為三種架構 樸素的DNN 就是一般性的神經網路往多層擴充套件,缺點很多包括訓練緩慢,用Backprop進行訓練梯度衰減得厲...