python機器學習之神經(jīng)網(wǎng)絡(三)
前面兩篇文章都是參考書本神經(jīng)網(wǎng)絡的原理,一步步寫的代碼,這篇博文里主要學習了如何使用neurolab庫中的函數(shù)來實現(xiàn)神經(jīng)網(wǎng)絡的算法。
首先介紹一下neurolab庫的配置:
選擇你所需要的版本進行下載,下載完成后解壓。
neurolab需要采用python安裝第三方軟件包的方式進行安裝,這里介紹一種安裝方式:
(1)進入cmd窗口
(2)進入解壓文件所在目錄下
(3)輸入 setup.py install
這樣,在python安裝目錄的Python27\Lib\site-packages下,就可以看到neurolab的文件夾了,然后就可以使用neurolab庫了。
使用neurolab庫編寫的代碼如下:
import numpy as np import matplotlib.pyplot as plt import neurolab as nl input = np.array([[4,11],[7,340],[10,95],[3,29],[7,43],[5,128]]) target=np.array([[1],[0],[1],[0],[1],[0]]) #2層網(wǎng)絡,5個輸入節(jié)點,一個輸出節(jié)點 net=nl.net.newff([[3,10],[11,400]],[5,1]) err=net.train(input,target,epochs=500, show=1, goal=0.02) out=net.sim(input) mymean=np.mean(out) x_max=np.max(input[:,0])+5 x_min=np.min(input[:,0])-5 y_max=np.max(input[:,1])+5 y_min=np.min(input[:,1])-5 plt.subplot(211) #誤差曲線 plt.plot(range(len(err)),err) plt.xlabel('Epoch number') plt.ylabel('err (default SSE)') plt.subplot(212) #可視化圖 plt.xlim(x_min,x_max) plt.ylim(y_min,y_max) for i in xrange(0,len(input)): if out[i]>mymean: plt.plot(input[i,0],input[i,1],'ro') else: plt.plot(input[i,0],input[i,1],'r*') plt.show()
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Python文件操作JSON CSV TSV Excel和Pickle文件序列化
這篇文章主要為大家介紹了Python文件操作之JSON、CSV、TSV、Excel和Pickle文件序列化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-11-11Python中scatter函數(shù)參數(shù)及用法詳解
這篇文章主要介紹了Python中scatter函數(shù)參數(shù)及用法詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11Python Selenium XPath根據(jù)文本內(nèi)容查找元素的方法
這篇文章主要介紹了Python Selenium XPath根據(jù)文本內(nèi)容查找元素的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12聊聊python dropna()和notnull()的用法區(qū)別
這篇文章主要介紹了聊聊python dropna()和notnull()的用法區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03python tkinter實現(xiàn)界面切換的示例代碼
今天小編就為大家分享一篇python tkinter實現(xiàn)界面切換的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06Python 判斷時間是否在時間區(qū)間內(nèi)的實例
這篇文章主要介紹了Python 判斷時間是否在時間區(qū)間內(nèi)的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05