Python感知器训练

时间:2021-05-31 17:13:43

标签: python training-data loss-function perceptron

我正在尝试为感知器创建训练方法,但不确定我是否正确应用了训练数据和标签。 我的数据和标签都是这种形式

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]。有人可以指导我如何正确使用数据和权重的正确方向吗?谢谢!

0 个答案:

没有答案