我最近开始用 Python 编写非常简单的机器学习代码,但遇到了一个大问题:教系统改进猜测。
所以这就是代码的内容:我将有一个生物列表,它们的特征用数值表示。我想编写一个代码,根据它们的特征来识别生物是猫还是鱼,或者两者都不是。(例如,具有高毛皮值和 4 条腿的生物更可能是猫。)
我对神经网络的想法是有 5 个输入节点(用于五个特征)和 2 个输出节点(一个用于表示它是什么猫,一个用于表示它是什么鱼)。输入节点乘以权重值,然后将所有节点加在一起以产生输出节点之一。这对其他输出重复。系统出错的程度只是输出节点的值与实际存在的猫/鱼之间的差异。
但是我怎样才能使用这些信息来纠正输入节点的权重呢?由于权重是随机生成的,因此它们一开始可能处于“错误”的方向。例如,如果对象是一只猫,那么我们应该期待较高的皮毛和腿值。但是如果腿的权重为负而毛的权重为正怎么办?将权重乘以误差不会使我们更接近准确地确定存在。我的神经网络一开始就存在缺陷吗?或者在选择反向传播算法时是否有经验法则?