神經網路中的啟用函式是用來幹什麼的

2021-04-20 00:56:16 字數 1832 閱讀 8598

1樓:

不同的啟用函式是用來實現不同的資訊處理能力,神經元的變換函式反映了神經元輸出與其啟用狀態之間的關係。

神經網路中的激勵函式是幹什麼用的,麻煩用通俗的話講,謝謝

2樓:匿名使用者

翻譯為啟用函式(activation function)會更好。

啟用函式是用來加入非線性因素的,因為線性模型的表達能力不夠。

神經網路中relu是線性還是非線性函式?如果是線性的話為什麼還說它做啟用函式比較好? 20

3樓:豬排滑蛋飯

relu是非線性啟用函式

題主的疑問在於,為什麼relu這種「看似線性」(分段線性)的啟用函式所形成的網路,居然能夠增加非線性的表達能力。

1、首先什麼是線性的網路,如果把線性網路看成乙個大的矩陣m。那麼輸入樣本a和b,則會經過同樣的線性變換ma,mb(這裡a和b經歷的線性變換矩陣m是一樣的)。

2、的確對於單一的樣本a,經過由relu啟用函式所構成神經網路,其過程確實可以等價是經過了乙個線性變換m1,但是對於樣本b,在經過同樣的網路時,由於每個神經元是否啟用(0或者wx+b)與樣本a經過時情形不同了(不同樣本),因此b所經歷的線性變換m2並不等於m1。因此,relu構成的神經網路雖然對每個樣本都是線性變換,但是不同樣本之間經歷的線性變換m並不一樣,所以整個樣本空間在經過relu構成的網路時其實是經歷了非線性變換的。

3、還有一種解釋就是,不同樣本的同乙個feature,在通過relu構成的神經網路時,流經的路徑不一樣(relu啟用值為0,則堵塞;啟用值為本身,則通過),因此最終的輸出空間其實是輸入空間的非線性變換得來的。

4、更極端的,不管是tanh還是sigmoid,你都可以把它們近似看成是分段線性的函式(很多段),但依然能夠有非線性表達能力;relu雖然只有兩段,但同樣也是非線性啟用函式,道理與之是一樣的。

5、relu的優勢在於運算簡單,網路學習速度快

4樓:

1、嚴格來說的話 relu算是分段線性函式。中間隱層啟用函式採用線性函式(例如恒等變換)不好是因為,最後算下來多層網路跟單層網路乙個效果。其實 啟用函式的存在是為了神經網路更好的擬合目標函式而已。

2、relu比sigmoid和tanh好是因為它的收斂速度快(sigmoid、tanh函式在自變數比較大的時候 導數很小,採用梯度下降法 變化緩慢,特別是多層網路 就更慢了),計算量比較小(只需要乙個閾值進行比較 而不需要做函式運算)。

5樓:

1、嚴格來講 relu函式算是分段線性函式。中間隱層啟用函式選用線性函式(例如恒等函式)不好,是因為算下來多層網路和單層網路乙個效果。其實啟用函式的存在是為了神經網路更好的擬合目標函式;

2、relu比sigmoid或tanh好 是因為他的收斂速度比另外兩個快很多(sigmoid自變數比較大時導數趨於零 採用梯度下降法 反應慢,多層網路更為明顯),計算量也要小(relu只需要和閾值做比較,不需要帶入函式計算)。

6樓:

神經元的廣泛互聯與並行工作必然使整個網路呈現出高度的非線性特點。在客觀世界中,許多系統的輸入與輸出之間存在著複雜的非線性關係,對於這類系統,往往很難用傳統的數理方法建立其數學模型。設計合理地神經網路通過對系統輸入輸出樣本對進行自動學習,能夠以任意精度逼近任何複雜的非線性對映。

神經網路的這一優點能使其可以作為多維非線性函式的通用數學模型。該模型的表示式非解析的,輸入輸出資料之間的對映規則由神經網路在學習階段自動抽取並分布式儲存在網路的所有連線中。具有非線性對映功能的神經網路應用十分廣闊,幾乎涉及所有領域。

7樓:布衣之莠

relu導數不是常數,非線性的

神經網路中每個節點的運算方式都是一樣的嗎?想被科普一下

同一層,基本都是一樣的。這層的輸出 f 輸入的加權和 加權和 輸入1 引數1 輸入2 引數2。偏執項,再把這個加權和經過f函式的計算,得到這層的輸出 所以,從這個過程來看,每一層所有節點的函式f是一樣的,輸入也是一樣的。不同的是引數1,引數2。引數之所以會不一樣,是因為初始化的引數是不一樣的,比如服...

BP神經網路中某一層的神經元個數與那一層的節點數有什麼區別聯

某層的神經元個數與節點數是乙個意思。按你的假設 雖是3層神經網路,但是去叫做兩層bp網路,因為輸入層一般不算做一層。按你的假設,n就該取2,s1就是隱含層節點數,選取的公式是hornik 提出的公式,可以算的s1取值範圍,到時自己選取合適職,s2就是你輸出層節點數,也就是輸出維數。某層的神經元個數與...

建構函式是用來初始化所定義的物件,如果類中沒有定義任何建構函式,則該類的對

不對,c 裡不寫類的建構函式時,編譯器會為類建立一個預設的建構函式,雖然這個函式什麼都不做,但是類的物件還是會在此時初始化,不過,物件成員的值是隨機的,比如,指標型成員變數可能為null,也有可能不為null。 no如果使用者不提供建構函式,那麼編譯器就會自動合成一個預設建構函式 除非自定義一個私有...