广义梯度下降
你不能通过遵守规则来学习走路,你需要通过做和摔倒来学习。 ——理查德·布兰森
一、如何设计多输入的神经元
1、具有多个输入的空网络
def w_sum(a,b):
assert(len(a) == len(b))
output = 0
for i in range(len(a)):
output += (a[i] * b[i])
return output
weights = [0.1, 0.2, -.1]
def neural_network(input, weights):
pred = w_sum(input,weights)
return pred
2、预测+比较:进行预测,并计算误差和增量
把数据输入到神经元计算。下面共有四组数据,每一组都要同时输入到神经元的三个输入。
toes = [8.5 , 9.5, 9.9, 9.0]
wlrec = [0.65, 0.8, 0.8, 0.9]
nfans = [1.2 , 1.3, 0.5, 1.0]
win_or_lose_binary = [1, 1, 0, 1]#代表四次输入的比赛数据,对应的四次输赢(实际发生)
true = win_or_lose_binary[0]
input = [toes[0],wlrec[0],nfans[0]]#把第一组数据(第一列)装配进input
pred = neural_network(input,weights