javascript隨機(jī)數(shù)生成函數(shù) 如何用代碼編寫一個神經(jīng)網(wǎng)絡(luò)異或運(yùn)算器?
如何用代碼編寫一個神經(jīng)網(wǎng)絡(luò)異或運(yùn)算器?異或問題,即可以確定兩個輸入輸入x1,x2如何確定不對。下面是用Python利用的代碼importnumpyand(1)#能生成然后輸入向量XX([[0,0,1]
如何用代碼編寫一個神經(jīng)網(wǎng)絡(luò)異或運(yùn)算器?
異或問題,即可以確定兩個輸入輸入x1,x2如何確定不對。
下面是用Python利用的代碼
importnumpyand(1)#能生成然后輸入向量XX([[0,0,1],[0,1,1],[1,0,1],[1,1,1]])#生成目標(biāo)向量yy([[0],
如何用代碼編寫一個神經(jīng)網(wǎng)絡(luò)異或運(yùn)算器?
,如何用代碼編寫一個神經(jīng)網(wǎng)絡(luò)異或運(yùn)算器?
,[0]])#定義sigmoid和它的導(dǎo)函數(shù)defnonlin(x,derivFalse):if(derivTrue):returnx*(1-x)return1/(1np.exp(-x))#隨機(jī)生成初始的隨機(jī)向量syn02*np.random.random((3,4))-1syn12*np.random.random((4,1))-1#一又開始我們先來5萬次循環(huán)吧:)whilejinxrange(50000):#在反向傳播前先向這邊能傳播,計算出每一層的輸出l0Xl1nonlin((l0,syn0))l2nonlin((l1,syn1))#可以計算出然后輸入層和目標(biāo)向量的差值(控制輸出誤差)l2_errory-l2#每循環(huán)一萬次,再打印三次作為輸出誤差的數(shù)值if(j000)0:printError:str((np.abs(l2_error)))print(l2)#算出控制輸出層的誤差l2_deltal2_error*nonlin(l2,derivTrue)#計算前一層對后一層的誤差會影響l1_errorl2_(syn1.T)#換算輸入輸入層對整體的誤差l1_deltal1_error*nonlin(l1,derivTrue)#如何修改權(quán)重向量讓結(jié)果越加靠近了目標(biāo)向量syn1(l2_delta)syn0(l1_delta)如果不是你想執(zhí)行了上面的代碼,然后你會發(fā)現(xiàn)這種非線性的多層神經(jīng)網(wǎng)絡(luò)順利地解決的辦法了異或問題,當(dāng)輸入輸入x1,x2完全相同時,會輸出低0,不不同時,會輸出1。就是喜歡人工智能,算法,Python、JavaScript、Java相關(guān)話題,就了解頭條號:編程快訊
喜歡的朋友也可以點(diǎn)zan、關(guān)注、轉(zhuǎn)發(fā)、評論!同時希望能大家在評論中補(bǔ)充不足以的地方!
ae添加表達(dá)式快捷鍵?
一.什么是AE表達(dá)式?
AE表達(dá)式是AE內(nèi)部基于條件javascript語言開發(fā)的代碼,根據(jù)AE里可做動畫的屬性添加。
二.怎摸先添加AE表達(dá)式?
1.首先按住ALT鍵,右鍵點(diǎn)擊屬性前的碼表