# ******neuralnet.py
# 簡易神經網路,python3.5,依賴numpy庫
# 三層神經網路
# x y
# |-| |-| |-|
# |-| w0 |-| w1 |-|
# |-|===>|-|===>|-|
# |-| |-| |-|
# |-| |-| |-|
# l0 l1 l2
# 輸入層 中間層 輸出層
import numpy as np
# 非線性操作 sigmoid
defnonlinear
(x, deriv = false):
if(deriv == true):
return x * (1 - x)
return
1 / (1 + np.exp(-x))
# 樣本(4, 5) 四個樣本,每個樣本5個特徵
x = np.array([[0,0,1,1,0], #樣本1
[0,1,1,1,1], # 樣本2
[1,0,1,0,0], # 樣本3
[1,1,1,0,1]]) # 樣本4
# label (4,1)
y = np.array([[0], # 第乙個樣本是0類
[1], # 第二個樣本是1類
[1], # 第三個樣本是1類
[0]]) # 第四個樣本是0類
print("x.shape: ", x.shape, "; y.shape: ", y.shape)
np.random.seed(1)
# randomly initialize our weights with mean 0
# 引數初始化、權重
w0 = 2 * np.random.random((5, 4)) - 1
w1 = 2 * np.random.random((4, 1)) - 1
print("w0: ", w0)
print("w1: ", w1)
print("w0.shape: ", w0.shape, "; w1.shape: ", w1.shape)
for j in range(50005):
l0 = x # 輸入層
l1 = nonlinear(np.dot(l0, w0)) # 前向傳播
l2 = nonlinear(np.dot(l1, w1)) # 前向傳播
# 計算loss值
l2_error = l2 - y
# 每10000次列印一次
if (j% 10000) == 0:
print("loss: " + str(np.mean(np.abs(l2_error))))
# 反向傳播
l2_delta = l2_error * nonlinear(l2, deriv = true)
l1_error = l2_delta.dot(w1.t)
l1_delta = l1_error * nonlinear(l1, deriv = true)
# 修正引數w1、w0
Win10系統簡易安裝教程
很多年前,剛接觸電腦時,必須掌握的基本技能是安裝作業系統。當時使用ghost安裝,所使用 gho檔案大多是由一些 製作,這種方式很老了,已經被淘汰了 現在win10系統安裝就簡單得多了。安裝前,一定要備份系統盤 桌面 我的文件等重要資料 每次安裝完系統後,我都將桌面 文件等在c盤的路徑遷移到其他盤,...
win10系統下caffe環境的搭建
caffe是深度學習的框架之一,深度學習的框架有很多比較流行的有tensorflow keras和本文將要提到的caffe等等。caffe可能不是最好的深度學習架構,但是在某些領域它卻表現的很好。下面是幾篇關於深度學習架構比較的部落格 caffe在win下環境的搭建是比較棘手的乙個問題,下面介紹下如...
Win10 新版又悲劇了!老外神評論
乙個逆天 bug 阻擋了微軟工程師前進的步伐,按照唐娜姐的說法,本周二依然沒有新版 windows 10 insider build 發布。目前最新的 windows 10 預覽版是 build 15031,屬於 bug bash,也就是 bug 大掃除。同時,它也率屬於 rc 階段的 build ...