神經(jīng)網(wǎng)絡(luò)(一)

繼續(xù)發(fā)公式~~撩轰。有興趣閱讀能正常顯示公式的版本請(qǐng)移步 http://blog.kamidox.com/neural-networks-1.html

動(dòng)機(jī)

為什么我們需要神經(jīng)網(wǎng)絡(luò)?

對(duì)非線性分類(lèi)問(wèn)題,當(dāng)特征的個(gè)數(shù)很大的時(shí)候,計(jì)算量將會(huì)非常大犬绒。比如對(duì)有 100 個(gè)特征($x_1, x_2, \cdots, x_100$)的問(wèn)題涡相,如果我們只算二階多項(xiàng)多項(xiàng)式,我們將得到大概 5000 個(gè)特征 ($O(n^2)$)堪侯。而如果按照三階多項(xiàng)式來(lái)模擬,將得到將近 300,000 個(gè)特征 ($O(n^3)$)荔仁。再比如伍宦,針對(duì)一個(gè) 100 x 100 分辨率的圖片,我們假設(shè)每個(gè)象素點(diǎn)只用黑白來(lái)表示乏梁,那么將得到 100,000 個(gè)特征值次洼。這個(gè)時(shí)候如果用二階多項(xiàng)式來(lái)擬合,我們將得到 50,000,000,000 個(gè)特征值組合遇骑。這是非常巨大的計(jì)算量卖毁。

顯然,用線性回歸和邏輯回歸來(lái)解決這類(lèi)問(wèn)題是不現(xiàn)實(shí)的落萎。

神經(jīng)網(wǎng)絡(luò)模型

神經(jīng)網(wǎng)絡(luò)模型是依照大腦的神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)建模的亥啦。即多個(gè)神經(jīng)元構(gòu)成一個(gè)層,這些神經(jīng)元是輸入练链,層的目標(biāo)值為輸出翔脱。一個(gè)神經(jīng)網(wǎng)絡(luò)包含多個(gè)層。神經(jīng)元是神經(jīng)網(wǎng)絡(luò)中的運(yùn)算單位媒鼓。

神經(jīng)元

神經(jīng)元是神經(jīng)網(wǎng)絡(luò)中的最小運(yùn)算單位届吁,多個(gè)神經(jīng)元構(gòu)成一個(gè)層。神經(jīng)網(wǎng)絡(luò)依然使用邏輯回歸算法里介紹的 Sigmoid Function 作為基本模型绿鸣。

$$
g(z) = \frac{1}{1 + e^{-z}} \\
z = \theta^T x \\
h_\theta(x) = \frac{1}{1 + e{-\thetaT x}}
$$

其中疚沐,$x$ 稱作神經(jīng)元的輸入 (input wires or Dendrite),是個(gè)列向量 $[x_1, x_2, ... x_n]$潮模。$\theta$ 稱為權(quán)重 (weights)亮蛔,也可以按照邏輯回歸算法里的叫法,稱為參數(shù) (parameters)再登。$h_\theta(x)$ 稱為輸出 (output wires or Axon)尔邓。這個(gè)是神經(jīng)網(wǎng)絡(luò)模型中的基本運(yùn)算單元晾剖。

類(lèi)似邏輯回歸,我們也會(huì)增加一個(gè)輸入 $x_0=1$梯嗽,在這里稱作偏置單元 (bias unit)齿尽。

神經(jīng)網(wǎng)絡(luò)

神經(jīng)網(wǎng)絡(luò)可以劃分成多個(gè)層,每個(gè)層有一定數(shù)量的神經(jīng)元灯节。其中第一層叫輸入層循头,最后一層叫輸出層,一個(gè)或多個(gè)中間層叫隱藏層炎疆。

neural networks
neural networks

幾個(gè)索引的含義

$a_i^{(j)}$: 表示第 j 層的第 i 個(gè)神經(jīng)元 (unit i in layer j)
$\Theta^{(j)}$: 控制神經(jīng)元網(wǎng)絡(luò)中從第 j 層轉(zhuǎn)化到第 j + 1 層的權(quán)重矩陣卡骂。這個(gè)矩陣?yán)锏脑亟?jīng)常寫(xiě)成 $\Theta_{ik}^{(j)}$ 其中 j 表示第 j 層,i 表示第 j 層神經(jīng)元的單元索引值形入,k 表示第 j 層第 i 個(gè)神經(jīng)元的輸入項(xiàng)索引值全跨。

這段索引的描述很抽像∫谒欤看一下上圖的神經(jīng)網(wǎng)絡(luò)浓若,他們的元素滿足如下關(guān)系。從下面的關(guān)系中去正確地理解各個(gè)變量的索引值的含義蛇数。其中 $g(z) = \frac{1}{1 + e^{-z}}$ 就是 Sigmoid Function挪钓。

$$
a_1^{(2)} = g(\Theta_{10}^{(1)} x_0 + \Theta_{11}^{(1)} x_1 + \Theta_{12}^{(1)} x_2 + \Theta_{13}^{(1)} x_3) \\
a_2^{(2)} = g(\Theta_{20}^{(1)} x_0 + \Theta_{21}^{(1)} x_1 + \Theta_{22}^{(1)} x_2 + \Theta_{23}^{(1)} x_3) \\
a_3^{(2)} = g(\Theta_{30}^{(1)} x_0 + \Theta_{31}^{(1)} x_1 + \Theta_{32}^{(1)} x_2 + \Theta_{33}^{(1)} x_3) \\
h_\Theta(x) = a_1^{(3)} = g(\Theta_{10}^{(2)} a_0 + \Theta_{11}^{(2)} a_1 + \Theta_{12}^{(2)} a_2 + \Theta_{13}^{(2)} a_3)
$$

假設(shè) j 層有 $s_j$ 個(gè)單元,j + 1 層有 $s_{j+1}$ 個(gè)單元耳舅。那么 $\Theta^{(j)}$ 將是一個(gè) $s_{j+1} \times (s_j + 1)$ 的矩陣碌上。

向前傳播 (Forward Propagation) 算法的向量化實(shí)現(xiàn)

針對(duì)上圖的三層神經(jīng)網(wǎng)絡(luò),其元素之前的關(guān)系按照向量化寫(xiě)法如下:

$$
let: z_1^{(2)} = \Theta_{10}^{(1)} x_0 + \Theta_{11}^{(1)} x_1 + \Theta_{12}^{(1)} x_2 + \Theta_{13}^{(1)} x_3 = \Theta^{(1)} x \\
\Rightarrow a_1^{(2)} = g\left( z_1^{(2)} \right) \\
a_2^{(2)} = g\left( z_2^{(2)} \right) \\
a_3^{(2)} = g\left( z_3^{(2)} \right) \\
\Rightarrow a^{(2)} = g\left( z^{(2)} \right) \\
z^{(3)} = \Theta^{(2)} a^{(2)} \\
\Rightarrow h_\Theta(x) = a^{(3)} = g\left( z^{(3)} \right)
$$

上述關(guān)系的本質(zhì)上浦徊,就是從第二層開(kāi)始馏予,每個(gè)神經(jīng)元,都把上一層的神經(jīng)元當(dāng)作輸入盔性,他們之間滿足邏輯回歸算法吗蚌。即從上一層的神經(jīng)元可以計(jì)算出下一層的神經(jīng)元。這也形象地稱為向前傳播算法纯出。

更一般的情況,假設(shè)待訓(xùn)練的數(shù)據(jù)集 $X$ 是 m x n 矩陣敷燎,記作 $X \in R^{m \times n}$暂筝,其中 m 是數(shù)據(jù)集個(gè)數(shù),n 是輸入的特征數(shù)硬贯,此處假設(shè) $X$ 里已經(jīng)加入了偏置單元 (bias unit)焕襟。假設(shè)隱藏層有 s2 個(gè)單元,$\Theta^{(1)}$ 為輸入層到隱藏層的轉(zhuǎn)換參數(shù)饭豹。則 $\Theta^{(1)} \in R^{s2 \times n}$鸵赖。輸出層有 s3 個(gè)單元务漩,$\Theta^{(2)}$ 為隱藏層到輸出層的轉(zhuǎn)換參數(shù)。則 $\Theta^{(2)} \in R^{s3 \times (s2 + 1)}$它褪。我們記 $a^{(2)}$ 為隱藏層饵骨,$a^{(3)}$ 為輸出層,則:

$$
a^{(2)} = g\left( X * \left( \Theta^{(1)} \right)^T \right)
$$

算出后茫打,給 $a^{(2)}$ 加上偏置單元居触。為了書(shū)寫(xiě)方便,此處我們?nèi)匀粚⒓由掀脝卧蟮碾[藏層記作 $a^{(2)}$老赤。則:

$$
a^{(3)} = g\left( a^{(2)} * \left( \Theta^{(2)} \right)^T \right)
$$

這幾個(gè)公式就是神經(jīng)網(wǎng)絡(luò)向量化運(yùn)算的重要規(guī)則轮洋。其中 $g(z) = \frac{1}{1 + e^{-z}}$ 是 Sigmoid Function。熟悉矩陣運(yùn)算的同學(xué)可以驗(yàn)證一下上述運(yùn)算在矩陣維度上的一致性抬旺。

神經(jīng)網(wǎng)絡(luò)通過(guò)學(xué)習(xí)來(lái)決定其特征

單單從 $h_\Theta(x) = g\left(\Theta^{(2)} a^{(2)}\right)$ 式子來(lái)看弊予,神經(jīng)網(wǎng)絡(luò)的輸出就是由特征 $a_1^{(2)}, a_2^{(2)}, a_3^{(2)}$ 的邏輯回歸模型表述的。但這里的每個(gè)特征 $a_1^{(2)}, a_2^{(2)}, a_3^{(2)}$ 都是分別由 $x_1, x_2, x_3$ 的邏輯回歸模型學(xué)習(xí)出來(lái)的开财。這就是神經(jīng)網(wǎng)絡(luò)的精髓所在汉柒。

神經(jīng)網(wǎng)絡(luò)的應(yīng)用實(shí)例

運(yùn)用神經(jīng)網(wǎng)絡(luò)來(lái)模擬邏輯運(yùn)算

假設(shè) $\Theta = [-30, 20, 20]$,

$$
h_\Theta(x) = g(\Theta^T x) = g(-30 + 20x_1 + 20x_2)
$$

$g(z)$ 是 Sigmoid Function床未,其圖形近似于 S 形竭翠。假設(shè) $x_1, x_2 \in [0, 1]$ 是邏輯值。當(dāng) $x_1 = 0, x_2 = 0$ 時(shí)薇搁,$h_\Theta(x) = g(-30) \approx 0$斋扰。同理可以寫(xiě)出下面的真值表:

x_1 x_2 h(x)
0 0 0
1 0 0
0 1 0
1 1 1

這樣就模擬了邏輯 AND 的運(yùn)算,即 h(x) = x1 AND x2啃洋。同理可以推算出當(dāng) $\Theta = [-10, 20, 20]$ 時(shí)传货,h(x) = x1 OR x2。還可以推斷出當(dāng) $\Theta = [10, -20, -20]$ 時(shí)宏娄,h(x) = (NOT x1) AND (NOT x2)问裕。當(dāng)需要計(jì)算 x1 NXOR x2 時(shí),可以用神經(jīng)網(wǎng)絡(luò)模型孵坚,即 x1 NXOR x2 = (x1 AND x2) OR ((NOT x1) AND (NOT x2))粮宛。我們把 x1, x2 當(dāng)作輸入,a1 = (x1 AND x2), a2 = (NOT x1) AND (NOT x2) 當(dāng)作隱藏層卖宠,而最終的輸出由 a1 OR a2 來(lái)計(jì)算得來(lái)了巍杈。這樣我們就可以使用神經(jīng)網(wǎng)絡(luò)模擬復(fù)雜的邏輯運(yùn)算。

運(yùn)用神經(jīng)網(wǎng)絡(luò)來(lái)處理多類(lèi)別的分類(lèi)問(wèn)題

上文介紹的神經(jīng)網(wǎng)絡(luò)只能輸出 0, 1 二元問(wèn)題扛伍。擴(kuò)展到多個(gè)類(lèi)別時(shí)筷畦,我們輸出一個(gè)向量,比如針對(duì)最終結(jié)果是四種類(lèi)別的問(wèn)題時(shí)刺洒,輸出 [1, 0, 0, 0] 表示第一種類(lèi)別鳖宾,輸出 [0, 1, 0, 0] 表示是第二種類(lèi)別吼砂,依此類(lèi)推。

問(wèn):為什么不用 1, 2, 3, 4 四個(gè)不同的值來(lái)表示四種類(lèi)別鼎文,而要用一個(gè)四維的向量來(lái)表示渔肩?
答:從神經(jīng)網(wǎng)絡(luò)模擬邏輯運(yùn)算的例子可以看出來(lái),一個(gè)神經(jīng)元可以輸出只能是從 0 到 1 的之間的值漂问,回憶邏輯回歸算法里的描述赖瞒,這個(gè)值表示的是出現(xiàn) 0 或 1 的概率,我們可以選擇一個(gè)臨界點(diǎn)蚤假,比如 0.5栏饮。當(dāng)輸出值大于等于 0.5 時(shí)判定為 1,當(dāng)輸出值小于 0.5 時(shí)判定為 0磷仰,一個(gè)神經(jīng)元不能輸出整其他整數(shù)值袍嬉。邏輯回歸就是用來(lái)解決分類(lèi)問(wèn)題的離散函數(shù),而不是對(duì)值進(jìn)行預(yù)測(cè)的連續(xù)函數(shù)灶平。針對(duì)四個(gè)類(lèi)別的分類(lèi)問(wèn)題時(shí)伺通,我們可以把輸出層神經(jīng)元個(gè)數(shù)定為 4 個(gè),這樣這四個(gè)輸出層神經(jīng)元的值就構(gòu)成了一個(gè)有四個(gè)元素的列向量逢享。所以罐监,我們使用四維的列向量來(lái)表示。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末瞒爬,一起剝皮案震驚了整個(gè)濱河市弓柱,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌侧但,老刑警劉巖矢空,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異禀横,居然都是意外死亡屁药,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)柏锄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)酿箭,“玉大人,你說(shuō)我怎么就攤上這事趾娃∑呶剩” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵茫舶,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我刹淌,道長(zhǎng)饶氏,這世上最難降的妖魔是什么讥耗? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮疹启,結(jié)果婚禮上古程,老公的妹妹穿的比我還像新娘。我一直安慰自己喊崖,他們只是感情好挣磨,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著荤懂,像睡著了一般茁裙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上节仿,一...
    開(kāi)封第一講書(shū)人閱讀 51,125評(píng)論 1 297
  • 那天晤锥,我揣著相機(jī)與錄音,去河邊找鬼廊宪。 笑死矾瘾,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的箭启。 我是一名探鬼主播壕翩,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼傅寡!你這毒婦竟也來(lái)了放妈?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤赏僧,失蹤者是張志新(化名)和其女友劉穎大猛,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體淀零,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡挽绩,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了驾中。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片唉堪。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖肩民,靈堂內(nèi)的尸體忽然破棺而出唠亚,到底是詐尸還是另有隱情,我是刑警寧澤持痰,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布灶搜,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏割卖。R本人自食惡果不足惜前酿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望鹏溯。 院中可真熱鬧罢维,春花似錦、人聲如沸丙挽。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)颜阐。三九已至平窘,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間瞬浓,已是汗流浹背初婆。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留猿棉,地道東北人磅叛。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像萨赁,于是被迫代替她去往敵國(guó)和親弊琴。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 繼續(xù)發(fā)公式杖爽。有興趣閱讀能正常顯示公式的版本請(qǐng)移步 http://blog.kamidox.com/neural-n...
    kamidox閱讀 838評(píng)論 1 2
  • 成功的教育敲董,就是孩子走到哪里,父母都放心慰安。 首先腋寨,是生活上的放心。孩子的生活能力需要從小培養(yǎng)化焕,而家長(zhǎng)們常常忽視這一...
    人在旅途云在天閱讀 245評(píng)論 2 1
  • 每個(gè)時(shí)代與每個(gè)時(shí)代的交替變遷不一致秧饮,每個(gè)時(shí)代的君臣在領(lǐng)導(dǎo)時(shí)代進(jìn)步或結(jié)束時(shí)不能同日而語(yǔ)凤类。 中國(guó)上下五千年的歷史進(jìn)化穗泵,...
    靈動(dòng)不惑閱讀 156評(píng)論 0 1
  • 想想剛進(jìn)入大二的我, 仍然對(duì)自己的未來(lái)一片迷茫谜疤。 我對(duì)自己的專(zhuān)業(yè)好像并不感冒佃延, 也并不了解自己真正的興趣现诀。 每天倒...
    李欣桐S閱讀 667評(píng)論 0 1
  • 約翰·克利斯朵夫 創(chuàng)作背景 作品鑒賞 編輯
    wyfddml閱讀 1,195評(píng)論 0 1