3.5 使用多个输入进行预测
神经网络可以融合多个数据点的智能
前面的那个神经网络能够以一个数据点作为输入,并基于该数据点预测出一个结果。有一天小明会想(在赔了一些钱后),单独靠硬币的正反面来预测第二天股票的涨跌不是个很好的预测器。于是他决定增加别的预测指标,比如这只股票最近五天的价格,这只股票当前所属的行业的指数五天趋势,这只股票前三天的形态是否是上升形态。
在上面这样的神经网络中,我们有了更多的输入数据点。
这个神经网络比之前的单数据点输入要复杂一点,但实际上只是一个简单的推广。我们修改一下之前的神经网络代码。
weights = [0.05,0.2,0.15,0.3]
def neural_network(input,weights):
pred = w_sum(input, weights)
return pred
def w_sum(input,weights):
assert(len(input)==len(weights))
result = 0
for i in range(len(input)):
result += input[i]*weights[i]
return result
# 数据集
coin = [4,6,7,3,9]
stock = [2.1,-1.3,3.05,-0.5,0.88]
industry = [1.0,0.2,2.4,-1.3,-0.22]
shape = [2,-0.5,3,-0.9,-0.2]
# 输入神经网络
input = [coin[0],stock[0],industry[0],shape[0]]
pred = neural_network(input,weights)
网友评论