为了账号安全,请及时绑定邮箱和手机立即绑定

更新列表列表只针对一次迭代进行,但在 Perceptron 算法 ML 中的进一步迭代中不会发生

更新列表列表只针对一次迭代进行,但在 Perceptron 算法 ML 中的进一步迭代中不会发生

暮色呼如 2022-08-11 16:59:08
以下是我的多类感知器算法代码。在这里,我试图更新列表列表给出的权重向量 - 权重。逻辑是正确的,它在 1 次迭代中正确执行。列表的权重列表初始化为全部 0。在第一个迭代中,权重列表会更新,但在后续迭代中,该列表不会更新。我不明白我做错了什么?请帮忙。谢谢代码: **import numpy as npdata = open("mnist_data_training.csv",'r')weights = [[0 for _ in range(784)] for _ in range(10)]for _ in range(0,3):    for row in data:        lst_row = (row.rstrip('\n').split(','))        list_row = lst_row[:-1]        if (max_weight_index != (lst_row[784])):            weights[lst_row[784]] = np.add(weights[lst_row[784]],list_row) **# Updating weight vector here**            weights[max_weight_index] = numpy.subtract(weights[max_weight_index],list_row) **#Updating weight vector here**GitHub 链接 - https://github.com/sudhakosuri/Multi-Class-Perceptron.git
查看完整描述

1 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

在迭代开始时使用 filepointer.seek() 解决了这个问题。


查看完整回答
反对 回复 2022-08-11
  • 1 回答
  • 0 关注
  • 87 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信