如今在機(jī)器學(xué)習(xí)的領(lǐng)域中,有許多方法可以用來(lái)解決特定的問(wèn)題,例如房?jī)r(jià)預(yù)測(cè)、郵件分類、文件壓縮等。而與我們?nèi)粘I铌P(guān)系最密切的應(yīng)用莫過(guò)于計(jì)算機(jī)視覺(jué)(如學(xué)校門禁系統(tǒng))和自然語(yǔ)言處理(如Siri)。這些日常生活中的智能應(yīng)用都離不開(kāi)深度學(xué)習(xí),而深度學(xué)習(xí)則依賴于神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)。
什么是神經(jīng)網(wǎng)絡(luò)?
神經(jīng)網(wǎng)絡(luò)的核心思想是模仿生物神經(jīng)系統(tǒng)的結(jié)構(gòu),特別是大腦中神經(jīng)元之間的連接方式。每個(gè)神經(jīng)元接收其他神經(jīng)元傳遞來(lái)的信號(hào),經(jīng)過(guò)處理后輸出信號(hào)到其他神經(jīng)元。神經(jīng)網(wǎng)絡(luò)通過(guò)調(diào)整這些連接(稱為“權(quán)重”)來(lái)學(xué)習(xí)數(shù)據(jù)之間的關(guān)系。想要模擬這個(gè)過(guò)程則需要一下三個(gè)步驟相互協(xié)調(diào)
1. 激活函數(shù)
2. 前向傳播
3. 反向傳播
1、激活函數(shù)
概念理解:激活函數(shù)是神經(jīng)網(wǎng)絡(luò)能夠擬合各種非線性數(shù)據(jù)的核心。它將線性變換后的數(shù)據(jù)以非線性方式返回,幫助網(wǎng)絡(luò)處理復(fù)雜問(wèn)題。
常見(jiàn)的激活函數(shù)包括:
ReLU函數(shù)(修正線性單元):將輸入值中的負(fù)值輸出為0,正值保持不變,如圖所示:

Sigmoid函數(shù)(多用于分類問(wèn)題的輸出層):將輸入值映射到[0,1]范圍,如圖所示:

2、前向傳播
概念理解:前向傳播是神經(jīng)網(wǎng)絡(luò)計(jì)算輸出值的過(guò)程。對(duì)于每一組輸入數(shù)據(jù),網(wǎng)絡(luò)逐層進(jìn)行線性變換,并通過(guò)激活函數(shù)處理,最終生成輸出結(jié)果。
舉例說(shuō)明: 假設(shè)我們有一組輸入數(shù)據(jù)x1, x2, x3(對(duì)應(yīng)于三個(gè)特征)。在神經(jīng)網(wǎng)絡(luò)的一個(gè)神經(jīng)元中,這些數(shù)據(jù)會(huì)進(jìn)行如下線性變換:
Z= w1 * x1+ w2 * x2+ w3 * x3 + b
其中, w1,w2,w3是一個(gè)神經(jīng)元中我們自己通過(guò)隨機(jī)函數(shù)已經(jīng)設(shè)定好的權(quán)重,b是偏置。之后,Z會(huì)通過(guò)激活函數(shù),例如ReLU,得到輸出值.
如果有多個(gè)神經(jīng)元,則只有每個(gè)神經(jīng)元的權(quán)重和偏置不同,但計(jì)算方式類似。將所有神經(jīng)元的輸出傳遞到下一層,重復(fù)這一過(guò)程,直到最后一層,完成一次前向傳播。
3、反向傳播
概念理解:反向傳播是神經(jīng)網(wǎng)絡(luò)優(yōu)化參數(shù)的關(guān)鍵。其目標(biāo)是通過(guò)梯度下降算法,調(diào)整每層神經(jīng)元的參數(shù),使網(wǎng)絡(luò)預(yù)測(cè)值與真實(shí)值之間的誤差最小化。
主要步驟:
1. 計(jì)算損失函數(shù)的值,例如均方誤差(MSE)。
2. 使用鏈?zhǔn)椒▌t,逐層計(jì)算損失函數(shù)對(duì)各參數(shù)的偏導(dǎo)數(shù)。
3. 使用求得的倒數(shù)來(lái)更新參數(shù)
與普通的梯度下降不同,反向傳播是同時(shí)對(duì)一層中的多個(gè)神經(jīng)元進(jìn)行參數(shù)優(yōu)化,并逐層更新,直到返回至輸入層。
神經(jīng)網(wǎng)絡(luò)的工作流程
以下是一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)運(yùn)行過(guò)程:
1.輸入數(shù)據(jù):輸入一組特征數(shù)據(jù)x1, x2, x3。特征數(shù)量越多,輸入數(shù)據(jù)越豐富,網(wǎng)絡(luò)的學(xué)習(xí)能力越強(qiáng)。
2.前向傳播:按照前文所述,逐層進(jìn)行線性變換與激活函數(shù)處理,生成輸出值。
3.計(jì)算損失:根據(jù)損失函數(shù)計(jì)算網(wǎng)絡(luò)輸出與實(shí)際值的差距。
4.反向傳播:通過(guò)梯度下降算法,調(diào)整每個(gè)參數(shù)的值,減小損失。
5.重復(fù)訓(xùn)練:多次重復(fù)前向傳播與反向傳播的過(guò)程,不斷優(yōu)化網(wǎng)絡(luò)的性能。
總結(jié)
神經(jīng)網(wǎng)絡(luò)是一種與傳統(tǒng)編程范式不同的計(jì)算模型,它通過(guò)自動(dòng)學(xué)習(xí)數(shù)據(jù)中的模式來(lái)進(jìn)行任務(wù)處理。神經(jīng)網(wǎng)絡(luò)的核心機(jī)制包括前向傳播和反向傳播。前向傳播是神經(jīng)網(wǎng)絡(luò)根據(jù)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)的過(guò)程,其中數(shù)據(jù)經(jīng)過(guò)網(wǎng)絡(luò)的各層傳遞,逐步進(jìn)行加權(quán)求和和激活函數(shù)計(jì)算,最終得到輸出。反向傳播則是通過(guò)計(jì)算預(yù)測(cè)誤差并通過(guò)梯度下降等優(yōu)化方法調(diào)整網(wǎng)絡(luò)的權(quán)重和偏置,從而使得模型逐步減少誤差,優(yōu)化預(yù)測(cè)能力。通過(guò)這種迭代優(yōu)化的過(guò)程,神經(jīng)網(wǎng)絡(luò)能夠從大量的數(shù)據(jù)中提取有用的特征,進(jìn)而提高在未知數(shù)據(jù)上的泛化能力,解決各類實(shí)際問(wèn)題。
本文轉(zhuǎn)自:SUIBE數(shù)據(jù)科學(xué)系
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4839瀏覽量
107932 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8558瀏覽量
137058
發(fā)布評(píng)論請(qǐng)先 登錄
神經(jīng)網(wǎng)絡(luò)的初步認(rèn)識(shí)
評(píng)論