我正在python中实现perceptron学习算法,无法决定是否需要为每个训练数据添加值1或者在处理权重时是否存在偏差。
例如,如果训练数据是 -
[7.627531214,2.759262235]
[5.332441248,2.088626775]
[6.922596716,1.77106367]
[8.675418651,-0.242068655]
[7.673756466,3.508563011]
我是否需要在训练数据中添加值1,如下所示?为什么? -
[7.627531214,2.759262235,1]
[5.332441248,2.088626775,1]
[6.922596716,1.77106367,1]
[8.675418651,-0.242068655,1]
[7.673756466,3.508563011,1]
不是将值1添加到训练数据中,而是可以不添加变量(例如偏差),将其赋值为1以使用权重。例如
min_weight = 0
max_weight = 5
bias = 1
weights = [bias, min_weight, max_weight]
我们是否需要在感知器中实现学习率?如果是,那么我可以在感知学习过程中使用delta规则和dotproduct方法来学习率吗?