基礎(chǔ)知識(shí)
定義:在機(jī)器學(xué)習(xí)和認(rèn)知科學(xué)領(lǐng)域晴圾,人工神經(jīng)網(wǎng)絡(luò)(artificial neural network穷劈,縮寫ANN)亲桥,簡(jiǎn)稱神經(jīng)網(wǎng)絡(luò)(:neural network,縮寫NN)或類神經(jīng)網(wǎng)絡(luò)缴守,是一種模仿生物神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)和功能的計(jì)算模型,用于對(duì)函數(shù)進(jìn)行估計(jì)或近似镇辉。
神經(jīng)網(wǎng)絡(luò)的種類:
基礎(chǔ)神經(jīng)網(wǎng)絡(luò):?jiǎn)螌痈兄髀潘耄€性神經(jīng)網(wǎng)絡(luò),BP神經(jīng)網(wǎng)絡(luò)忽肛,Hopfield神經(jīng)網(wǎng)絡(luò)等
進(jìn)階神經(jīng)網(wǎng)絡(luò):玻爾茲曼機(jī)村砂,受限玻爾茲曼機(jī),遞歸神經(jīng)網(wǎng)絡(luò)等
深度神經(jīng)網(wǎng)絡(luò):深度置信網(wǎng)絡(luò)屹逛,卷積神經(jīng)網(wǎng)絡(luò)础废,循環(huán)神經(jīng)網(wǎng)絡(luò)汛骂,LSTM網(wǎng)絡(luò)等
神經(jīng)網(wǎng)絡(luò)界的大佬:Geoffrey Hinton(Yann lecun的老師)、Yann Lecun评腺、Yoshua bengio帘瞭、Andrew Ng
在神經(jīng)網(wǎng)絡(luò)中,感知機(jī)不再被稱之為感知機(jī)蒿讥,而是稱為神經(jīng)元
感知機(jī)—>神經(jīng)元—>多個(gè)—>神經(jīng)網(wǎng)絡(luò)
神經(jīng)網(wǎng)絡(luò)的特點(diǎn)
- 輸入向量的維度和輸入神經(jīng)元的個(gè)數(shù)相同
- 每個(gè)連接都有個(gè)權(quán)值
- 同一層神經(jīng)元之間沒有連接
- 由輸入層蝶念,隱層,輸出層組成
-
第N層與第N-1層的所有神經(jīng)元連接芋绸,也叫全連接
神經(jīng)網(wǎng)絡(luò)的組成
- 結(jié)構(gòu)(Architecture)例如媒殉,神經(jīng)網(wǎng)絡(luò)中的變量可以是神經(jīng)元連接的權(quán)重
- 激勵(lì)函數(shù)(Activity Rule)大部分神經(jīng)網(wǎng)絡(luò)模型具有一個(gè)短時(shí)間尺度的動(dòng)力學(xué)規(guī)則,來(lái)定義神經(jīng)元如何根據(jù)其他神經(jīng)元的活動(dòng)來(lái)改變自己的激勵(lì)值摔敛。
- 學(xué)習(xí)規(guī)則(Learning Rule)學(xué)習(xí)規(guī)則指定了網(wǎng)絡(luò)中的權(quán)重如何隨著時(shí)間推進(jìn)而調(diào)整廷蓉。(反向傳播算法)
神經(jīng)網(wǎng)絡(luò)的多分類有單獨(dú)的結(jié)構(gòu)
某一個(gè)樣本—>得出屬于全部類別的每一個(gè)概率,哪一個(gè)概率類別的大马昙, 就取哪一個(gè)
api模塊
在使用tensorflow的時(shí)候桃犬,tf.nn,tf.layers,tf.contrib模塊有很多功能是重復(fù)的:
- tf.nn:提供神經(jīng)網(wǎng)絡(luò)相關(guān)操作的支持,包括卷積運(yùn)算(conv)给猾、池化操作(pooling)疫萤、歸一化、loss敢伸、分類操作扯饶、enbedding、RNN池颈、Evaluation
- tf.layers:主要提供的高層的神經(jīng)網(wǎng)絡(luò)尾序,主要和卷積相關(guān)的,對(duì)tf.nn進(jìn)一步封裝
- tf.contrib:tf.contrib.layers提供能夠?qū)⒂?jì)算圖中的 網(wǎng)絡(luò)層躯砰、正則化每币、摘要操作,是構(gòu)建計(jì)算圖的高級(jí)操作
淺層人工神經(jīng)網(wǎng)絡(luò)模型
SoftMax回歸
ps:輸出層有多少個(gè)神經(jīng)元琢歇,就有多少個(gè)偏置
對(duì)于輸出層兰怠,輸出的計(jì)算的結(jié)果,是一些數(shù)據(jù)李茫,而非直接就是概率揭保,那么如何將這些計(jì)算結(jié)果和概率聯(lián)系起來(lái)?這就要用到softmax魄宏,將其轉(zhuǎn)換成各自的概率
softmax回歸的公式
經(jīng)過(guò)softmax處理后:
- 能夠計(jì)算概率值
-
所有類別的概率值相加都等于1
計(jì)算出來(lái)的概率秸侣,再經(jīng)過(guò)one-hot編碼后,才能轉(zhuǎn)換成各自的類別([0 1 0 0 0]的轉(zhuǎn)置)
交叉熵?fù)p失
公式
一個(gè)樣本就有一個(gè)交叉熵?fù)p失(最后要求所有樣本的交叉熵?fù)p失的平均值),eg:
- 計(jì)算的概率:[0.01 0.02 0.23 ... 0.41]
- 目標(biāo)值:[0 1 0 0 ... 0]
- 則各自的交叉熵?fù)p失就是:0log(0.01) 1log(0.02) ...
- 交叉熵就是衡量概率和結(jié)果的兩者差異大小的一種方式味榛;交叉熵越大椭坚,誤差越大,所以我們要做的就是減小交叉熵頓時(shí)
幾種算法的對(duì)比
"""
算法 策略 優(yōu)化
線性回歸 均方誤差 梯度下降
邏輯回歸 對(duì)數(shù)似然損失 梯度下降
神經(jīng)網(wǎng)絡(luò) 交叉熵?fù)p失 反向傳播算法(就是梯度下降)
為什么稱為反向傳播算法:因?yàn)樯窠?jīng)網(wǎng)絡(luò)中有傳播的概念搏色,神經(jīng)網(wǎng)絡(luò)中權(quán)重的更新需要從后往前不斷的更新善茎,所以更為反向傳播算法
正向傳播:特征輸入到神經(jīng)網(wǎng)絡(luò)中,經(jīng)過(guò)一層層的計(jì)算继榆,最終得到輸出
"""