[英]Simple Perceptron in Python with documentation
我已經用Python編寫了這個簡單的感知器算法
import numpy as nu
import random as ra
function = lambda x: 1 if x >= 0 else 0
training_set=[([1,0,0],1),
([1,1,1],1),
([1,-1,0],0),
([1,0,-1],0),
]
w = nu.random.rand(3)
eta = 0.1
print(w)
for l in range(10000):
for _ in range(4):
x,y = training_set[_]
res = (function(nu.dot(w,x)) - y)
update = eta * res
w += nu.dot(update,x)
print(w)
function
檢查是否w*x>=0
。 我有一個包含4個元素的訓練集,第一個元素是xi
向量,第二個元素是預期的結果。 第一元素xi是偏置。 循環繼續更新wi
進行1000次迭代。 事實是有時會融合,有時不會融合。
一些問題:
w
的初始值,學習率,訓練樣本的順序等。您無法對收斂做出任何硬性陳述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.