最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python機(jī)器學(xué)習(xí)實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)示例解析

 更新時(shí)間:2021年10月29日 10:30:52   作者:SquirreI7  
這篇文章主要為大家介紹了python機(jī)器學(xué)習(xí)python實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的示例解析,在同樣在進(jìn)行python機(jī)器學(xué)習(xí)的同學(xué)可以借鑒參考下,希望能夠有所幫助

單神經(jīng)元引論

請(qǐng)?zhí)砑訄D片描述

對(duì)于如花,大美,小明三個(gè)因素是如何影響小強(qiáng)這個(gè)因素的。

請(qǐng)?zhí)砑訄D片描述

這里用到的是多元的線性回歸,比較基礎(chǔ)

from numpy import array,exp,dot,random

其中dot是點(diǎn)乘
導(dǎo)入關(guān)系矩陣:

在這里插入圖片描述

X= array ( [ [0,0,1],[1,1,1],[1,0,1],[0,1,1]])
y = array( [ [0,1,1,0]]).T ## T means "transposition"

為了滿足0到1的可能性,我們采用激活函數(shù)
matlab作圖

x=[-8:0.001:8]
y=1./(1+exp(-x))
plot(x,y)
grid on
text(-6,0.8,['$\frac{1}{1+e^{-x}}$'],'interpreter','latex','fontsize',25)

請(qǐng)?zhí)砑訄D片描述

然后

for it in range(10000):
	z=dot(X,weights)
    output=1/(1+exp(-z))##'dot' play role of "dot product"
    error=y-output
    delta=error*output*(1-output)
    weights+=dot(X.T,delta)

請(qǐng)?zhí)砑訄D片描述

其中

delta=error*output*(1-output)

是求導(dǎo)的結(jié)果和誤差相乘,表示梯度

請(qǐng)?zhí)砑訄D片描述

具體數(shù)學(xué)流程

所以具體流程如下,X具體化了一下

請(qǐng)?zhí)砑訄D片描述

error即為每個(gè)帶權(quán)參數(shù)經(jīng)過激活函數(shù)映射后到y(tǒng)結(jié)果的量化距離

在這里插入圖片描述

最終代碼:(PS:默認(rèn)lr取1,可修改)

from numpy import array,exp,dot,random
"""
Created on vscode 10/22/2021
@author Squirre17
"""
X=array([[0,0,1],[1,1,1],[1,0,1],[0,1,1]])
y=array([[0,1,1,0]]).T ## T means "transposition"
random.seed(1)
epochs=10000
weights=2*random.random((3,1))-1## 3 row 1 line, range[-1,1)
for it in range(epochs):
    output=1/(1+exp(-dot(X,weights)))##'dot' play role of "dot product"
    error=y-output
    slope=output*(1-output)
    delta=error*slope
    weights+=dot(X.T,delta)

print(weights)
print(1/(1+exp( -dot([[1,0,0]], weights))))

參考

請(qǐng)?zhí)砑訄D片描述

多神經(jīng)元

請(qǐng)?zhí)砑訄D片描述

這個(gè)意思就是兩個(gè)美女XOR
單神經(jīng)元沒法解決,只能解決單一線性關(guān)系

請(qǐng)?zhí)砑訄D片描述

在這里插入圖片描述

代碼如下,可自行調(diào)整epocheslr

from numpy import array,exp,dot,random
"""
Created on vscode 10/22/2021
@author Squirre17
"""
X=array([[0,0,1],[0,1,1],[1,0,1],[1,1,1]])
y=array([[0,1,1,0]]).T # T means "transposition"
random.seed(1)
epochs=100000
w0=2*random.random((3,4))-1 # input layer neure
w1=2*random.random((4,1))-1 # hidden layer neure
lr=1
def fp(input):
    l1=1/(1+exp(-dot(input,w0))) # 4×4
    l2=1/(1+exp(-dot(l1,w1))) # 4×1
    return l1,l2
def bp(l1,l2,y):
    l2_error=y-l2
    l2_slope=l2*(1-l2)
    l1_delta=l2_error*l2_slope*lr # 4×1
    l1_error=l1_delta.dot(w1.T)
    l1_slope=l1*(1-l1)
    l0_delta=l1_error*l1_slope*lr
    return l0_delta,l1_delta
for it in range(epochs):
    l0=X
    l1,l2=fp(l0)
    l0_delta,l1_delta=bp(l1,l2,y)
    w1+=dot(l1.T,l1_delta) # 4×4 4×1 # adjust w1 according to loss
    w0+=dot(l0.T,l0_delta)
print(fp([[1,0,0]])[1])

其中關(guān)于l1_error=l1_delta.dot(w1.T),就是第三層的誤差反向加權(quán)傳播給第二層

請(qǐng)?zhí)砑訄D片描述

以上就是python機(jī)器學(xué)習(xí)實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)示例解析的詳細(xì)內(nèi)容,更多關(guān)于python機(jī)器學(xué)習(xí)實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 如何從PyTorch中獲取過程特征圖實(shí)例詳解

    如何從PyTorch中獲取過程特征圖實(shí)例詳解

    特征提取是圖像處理過程中常需要用到的一種方法,其效果好壞對(duì)模型的泛化能力有至關(guān)重要的影響,下面這篇文章主要給大家介紹了關(guān)于如何從PyTorch中獲取過程特征圖的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • PyTorch中model.zero_grad()和optimizer.zero_grad()用法

    PyTorch中model.zero_grad()和optimizer.zero_grad()用法

    這篇文章主要介紹了PyTorch中model.zero_grad()和optimizer.zero_grad()用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python異步編程入門之實(shí)現(xiàn)文件批處理的并發(fā)處理方式

    Python異步編程入門之實(shí)現(xiàn)文件批處理的并發(fā)處理方式

    本文以Python初級(jí)程序員為對(duì)象,介紹了如何使用asyncio和logging模塊實(shí)現(xiàn)一個(gè)異步批處理文件的并發(fā)處理系統(tǒng),以提高處理大量文件或數(shù)據(jù)時(shí)的效率,其中,通過配置日志系統(tǒng)記錄處理文件的日志信息,定義AsyncBatchProcessor類控制并發(fā)任務(wù)的數(shù)量
    2024-10-10
  • python代碼中的縮進(jìn)規(guī)則詳細(xì)解釋(史上最全)

    python代碼中的縮進(jìn)規(guī)則詳細(xì)解釋(史上最全)

    這篇文章主要介紹了代碼縮進(jìn)的重要性以及在Python語言中的具體規(guī)則,代碼縮進(jìn)有助于提高代碼的可讀性和整潔性,并且是Python語言中一個(gè)強(qiáng)制性的語法要求,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-01-01
  • python無法識(shí)別vim中文代碼的解決方案

    python無法識(shí)別vim中文代碼的解決方案

    這篇文章主要介紹了python無法識(shí)別vim中文代碼的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Facebook開源一站式服務(wù)python時(shí)序利器Kats詳解

    Facebook開源一站式服務(wù)python時(shí)序利器Kats詳解

    這篇文章主要為答案及介紹了Facebook開源一站式服務(wù)python時(shí)序利器Kats的功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-11-11
  • python如何解決指定代碼段超時(shí)程序卡死

    python如何解決指定代碼段超時(shí)程序卡死

    這篇文章主要介紹了python如何解決指定代碼段超時(shí)程序卡死,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 詳解Python中 __get__和__getattr__和__getattribute__的區(qū)別

    詳解Python中 __get__和__getattr__和__getattribute__的區(qū)別

    __get__、__getattr__、__getattribute都是訪問屬性的方法,但作用不太相同,這里我們就來詳解Python中 __get__和__getattr__和__getattribute__的區(qū)別:
    2016-06-06
  • 利用python 讀寫csv文件

    利用python 讀寫csv文件

    python中有一個(gè)讀寫csv文件的包,直接import csv即可。利用這個(gè)python包可以很方便對(duì)csv文件進(jìn)行操作。
    2020-09-09
  • Python數(shù)組與列表的區(qū)別解析

    Python數(shù)組與列表的區(qū)別解析

    列表因?yàn)槠浯鎯?chǔ)的類型可以是任何對(duì)象,因此列表的用處更廣泛,更多樣化,并且列表可以有更多的存儲(chǔ)空間去使用,而數(shù)組使用的空間就相對(duì)較少,這篇文章主要介紹了Python數(shù)組與列表的區(qū)別,需要的朋友可以參考下
    2023-11-11

最新評(píng)論

无锡市| 霍州市| 贞丰县| 吉安市| 合作市| 林甸县| 青岛市| 中江县| 彩票| 芦溪县| 康马县| 乌拉特中旗| 平阳县| 昭通市| 吴堡县| 辛集市| 山阴县| 绍兴市| 盐亭县| 华蓥市| 丰顺县| 宜都市| 太康县| 宁远县| 金寨县| 新巴尔虎右旗| 遂宁市| 岳阳县| 湖南省| 英山县| 武汉市| 凤凰县| 丹东市| 工布江达县| 博湖县| 衢州市| 朔州市| 陕西省| 灯塔市| 定结县| 三明市|