一.項目背景
神經網絡是模擬人體生物神經元原理構建的,比較基礎的有M-P模型,它按照生物
神經元的結構和工作原理構造出來的一個抽象和簡化的模型。簡單來說,他是對一個生
物神經元建模,下圖是一個M-P模型示意圖。
跟人體生物神經元類似,神經元激活與否取決于某一閾值電平,即只有大當其總和閾值θ
時,神經元才會被激活而發放脈沖,否則整個神經元不會發生輸出信號。整個過程用下面函數
來表示。
上圖中f我們稱為激活函數,常見的激活函數可以分為兩種類型,線性與非線性函數,具體見下圖。
常用激活函數有S形函數,雙曲正切函數等,后期我們會講到。對于M-P模型而言,神經元只有興奮和抑
制狀態,因此這里的激活函數定義為單位階躍函數,輸出y只有0和1兩種信號
二.搭建網絡
該網絡含有一個輸入層,兩個隱藏層和一個輸出層的神經網絡,接下來我們手動實現它。
import numpy as np
#定義Sigmod激活函數
def sigmod(z):
return 1/(1+np.exp(-z))
#Z1=X*W1+b1,A1=sigmod(Z1)
#輸入數據,形狀為(1,2)
X=np.array([
[0.1,0.5]
])
#(2,3)
W1=np.array([
[0.1,0.3,0.5],
[0.2,0.4,0.6]
])
#(1,3)
b1=np.array([
[0.1,0.2,0.3]
])
#進行線性運算
Z1=np.dot(X,W1)+b1
#經過sigmod激活函數,將線性函數轉換為非線性函數
A1=sigmod(Z1)
print('Z1 shape',Z1.shape)
print('A1 shape',A1.shape)
#第2層
#Z2=W2*A1+b2,A2=sigmod(Z2)
#(3,2)
W2=np.array([
[0.1,0.2],
[0.3,0.4],
[0.5,0.6]
])
#(1,2)
b2=np.array([[0.1,0.2]])
#進行線性運算
Z2=np.dot(A1,W2)+b2
#經過sigmod激活函數,將線性函數轉換為非線性函數
A2=sigmod(Z2)
print('Z2 shape',Z2.shape)
print('A2 shape',A2.shape)
#第3層
#Z3=W3*A2+b3,A3=sigmod(Z3)
#(2,2)
W3=np.array([
[0.1,0.3],
[0.2,0.4]
])
#(1,2)
b3=np.array([[0.1,0.2]])
#線性運算
Z3=np.dot(A2,W3)+b3
#輸出Y
Y=sigmod(Z3)
#表示一個樣本兩個輸出值
Y
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
神經網絡
+關注
關注
42文章
4779瀏覽量
101166 -
模型
+關注
關注
1文章
3305瀏覽量
49218 -
神經元
+關注
關注
1文章
363瀏覽量
18511
發布評論請先 登錄
相關推薦
高階API構建模型和數據集使用
一、前言前面結合神經網絡簡要介紹TensorFlow相關概念,并給出了MNIST手寫數字識別的簡單示例,可以得出結論是,構建的神經網絡目的就是利用已有的樣本數據訓練網絡的權重和偏置,使
發表于 11-04 07:49
如何構建神經網絡?
原文鏈接:http://tecdat.cn/?p=5725 神經網絡是一種基于現有數據創建預測的計算系統。如何構建神經網絡?神經網絡包括:輸入層:根據現有數據獲取輸入的層隱藏層:使用反
發表于 07-12 08:02
淺析構建神經網絡3D可視化應用的框架
今天要為大家推薦一套超酷炫的,用于構建神經網絡3D可視化應用的框架——TensorSpace。TensorSpace 可以使您更直觀地觀察神經網絡模型,并了解該模型是如何通過中間層tensor的運算來得出最終結果的。
如何在微控制器中構建神經網絡
人工神經網絡在維基百科中被定義為“受構成動物大腦的生物神經網絡模糊啟發的計算系統。此類系統通過考慮示例來“學習”執行任務,通常無需使用特定于任務的規則進行編程。
發表于 07-07 14:44
?0次下載
構建神經網絡模型的常用方法 神經網絡模型的常用算法介紹
神經網絡模型是一種通過模擬生物神經元間相互作用的方式實現信息處理和學習的計算機模型。它能夠對輸入數據進行分類、回歸、預測和聚類等任務,已經廣泛應用于計算機視覺、自然語言處理、語音處理等領域。下面將就神經網絡模型的概念和工作原理,
發表于 08-28 18:25
?1070次閱讀
使用PyTorch構建神經網絡
PyTorch是一個流行的深度學習框架,它以其簡潔的API和強大的靈活性在學術界和工業界得到了廣泛應用。在本文中,我們將深入探討如何使用PyTorch構建神經網絡,包括從基礎概念到高級特性的全面解析。本文旨在為讀者提供一個完整的、技術性的指南,幫助理解并實踐PyTorch
評論