初識神經網路----一
一、幾個np的常用函式
①np.sum:相比於簡單的相加,sum可以實現矩陣相加。應用於兩個list需要相加,可以用for迴圈逐個相加,亦可以sum
②np.dot/np.multiply:前者是真正意義上的矩陣乘法,後面的只是相應的位置相乘,從而得到一個結果
③np.float_,將正數轉換成float,很多結果需要小數形式表示
二、交叉熵
首先看一個圖,這個圖透過對四個點進行計算,得到其判斷的結果及相應的機率
有兩個判定結果,那麼我們怎麼判斷哪個2結果更好呢?
我們引入交叉熵的概念,交叉熵越小,表示結果越好
如圖所示,我們透過分類得到三個顏色對應有禮物的機率分別為0.8,0.7,0.1
那麼現實中哪種情況更有可能呢?
最右面一列,利用公式計算
為什麼用 ln() 函式 :約定俗稱 + 計算出的數值合理,得到一個最小的,即可以判斷我們最可能的情況
那麼這是有或者沒有,兩種情況,那麼對於三種情況呢?例如我們在影像識別,可能是鴨子,企鵝,大象
我們引入一個單熱點編碼,得到一個類似的二維矩陣,可以想象上面的是這個方程的 m = 2時候的形式
三、誤差函式
我們先來看一段程式碼
def sigmoid(x):
return 1 / (1 + np.exp(-x))
def output_formula(features, weights, bias):
return sigmoid(np.dot(features, weights) + bias)
def error_formula(y, output):
return - y*np.log(output) - (1 - y) * np.log(1-output)
def update_weights(x, y, weights, bias, learnrate):
output = output_formula(x, weights, bias)
d_error = -(y - output)
weights -= learnrate * d_error * x #//////////////
bias -= learnrate * d_error #############
return weights, bias
做標註的兩行進行了權值更新,即x - 學習率*x*(y-output) //當然後面的 y-output不一定是這樣,對於不同的損失函式也不同
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2983/viewspace-2801121/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 初識卷積神經網路第一講!卷積神經網路
- 圖神經網路知識神經網路
- 神經網路:numpy實現神經網路框架神經網路框架
- 神經網路神經網路
- 基於神經網路的OCR識別神經網路
- 【Python】keras神經網路識別mnistPythonKeras神經網路
- 為什麼說BP神經網路就是人工神經網路的一種?神經網路
- 簡述脈衝神經網路SNN:下一代神經網路神經網路
- 卷積神經網路知識點總結卷積神經網路
- 卷積神經網路進行影像識別卷積神經網路
- 使用神經網路識別手寫數字神經網路
- 卷積神經網路—基礎知識(1)卷積神經網路
- LSTM神經網路神經網路
- 8、神經網路神經網路
- BP神經網路神經網路
- 模糊神經網路神經網路
- 聊聊從腦神經到神經網路神經網路
- 圖神經網路GNN 庫,液體神經網路LNN/LFM神經網路GNN
- 什麼?神經網路還能創造新知識?神經網路
- TensorFlow 卷積神經網路之貓狗識別卷積神經網路
- 【Python】keras卷積神經網路識別mnistPythonKeras卷積神經網路
- 用神經網路來識別人物影象性別神經網路
- 卷積神經網路的小基礎知識卷積神經網路
- 神經網路篇——從程式碼出發理解BP神經網路神經網路
- 【深度學習篇】--神經網路中的卷積神經網路深度學習神經網路卷積
- 【神經網路篇】--RNN遞迴神經網路初始與詳解神經網路RNN遞迴
- 人工神經網路初學:是什麼以及為什麼?神經網路
- 卷積神經網路卷積神經網路
- 迴圈神經網路神經網路
- 人工神經網路(ANN)神經網路
- 生成型神經網路神經網路
- 機器學習整理(神經網路)機器學習神經網路
- 神經網路入門神經網路
- 神經網路基礎知識神經網路
- (一)線性迴圈神經網路(RNN)神經網路RNN
- 一文看懂神經網路工作原理神經網路
- 用一個畫素攻陷神經網路神經網路
- 一文看懂卷積神經網路卷積神經網路