準備做BP網絡,這時候開始出現另一個問題,安裝組件太麻煩。因此卸載python,重裝anaconda。
anaconda的安裝不提,主要記錄一下PyCharm的配置,防止日後忘記。
導入numpy 依然提示找不到,網上的原因很多,比如numpy版本問題,python沒有卸載乾淨,這些都不是癥結所在,按照其他博客配置pycharm還是不對,嘗試了很多次才成功。
選擇File -> Settings
此時如果選擇new environment,保存之後工程依然不正常。
選擇下方已經存在的環境,將上方的路徑抄過來,保存後可以看到包正常導入了。
這裏就可以正常開始編寫了。
二、一階BP網絡。
可以寫入一個簡單的例子進行測試
import numpy as np
X = np.array([ [0,0,1],[0,1,1],[1,0,1],[1,1,1] ])
y = np.array([[0,1,1,0]]).T
syn0 = 2*np.random.random((3,4)) - 1
syn1 = 2*np.random.random((4,1)) - 1
for j in range(60000):
l1 = 1/(1+np.exp(-(np.dot(X,syn0))))
l2 = 1/(1+np.exp(-(np.dot(l1,syn1))))
l2_delta = (y - l2)*(l2*(1-l2))
l1_delta = l2_delta.dot(syn1.T) * (l1 * (1-l1))
syn1 += l1.T.dot(l2_delta)
syn0 += X.T.dot(l1_delta)
print("Output After Training:")
print(l1)
輸出的結果:
Output After Training:
[[9.98723508e-01 9.32809676e-01 7.56653417e-01 1.56893841e-01][9.04139293e-01 1.89699764e-02 9.95628299e-01 8.57919370e-01]
[8.85084914e-01 2.01456012e-02 2.30813915e-01 1.36041946e-03]
[8.49601888e-02 2.86354779e-05 9.56481778e-01 4.23318334e-02]]
Process finished with exit code 0
可以了,明天開始正式研究神經網絡