首页 > 解决方案 > 'function' 对象没有属性 'item'

问题描述

我写了一个函数来训练一个简单的线性回归模型。运行我的训练函数后,我看到这个错误:'function' object has no attribute 'item'

def train (x,y,w,b,alpha,epoch):
train_error = []

  for e in range (epoch):
    w,b = update_w_b(x,y,w,b,alpha)
    train_error.append(avg_loss.item())

#process monitoring
if e%400 == 0:
  print ("epoch: {}/{} \t loss: {:.4f}".format(e+1,epoch,avg_loss(x,y,w,b)))
  return w,b,train_errorenter code here

谢谢大家

标签: python

解决方案


显然,avg_loss是一个函数,因为您在代码的倒数第二行这样调用它,并且您收到的错误消息表明它也是如此。

您还尝试访问avg_lossnamed上的属性item。正如错误消息告诉你的那样,函数没有这样的属性。所以这一行:

train_error.append(avg_loss.item())

是无效的语法。你一定是想在这里做些不同的事情……我不确定是什么。


推荐阅读