我正在尝试为感知器创建训练方法,但不确定我是否正确应用了训练数据和标签。 我的数据和标签都是这种形式
data = [[0,0], [0,1], [1,1], [1,0]]
and_labels = [0, 0, 1, 0]
weights = [] (set by another function to be either a set weight or a random weight between 0 and 1)
我的训练功能是:
def train_all(self, train_data, train_labels): # STUDENT SOLUTION
# set initial weight
if len(self.weights) != len(train_data[0]): # if the length of our weights list is not equal to the length of our training data
self.reset_weights(len(train_data[0])) # reset the weights to the size of training data
# TODO
sum=0
for x in train_data:
if train_data[x] == [1,0] and train_labels[x] != [0]:
sum += self.weights[x] # calculating weight?
else:
在使用输入数据和标签时,我真的很困惑。标签是什么,输出应该给定的数据正确吗? (并且标签要求输入 1 和输入 2 都处于活动状态/1)。我不确定如何转换数据及其权重,因为数据有两个输入,例如:[0,0]。有人可以指导我如何正确使用数据和权重的正确方向吗?谢谢!