TypeError: cannot unpack non-iterable NoneType object(类型错误:无法解包非迭代的NoneType对象)

情况:使用pytorch训练模型,问题出现在 loss.backward() 这一行代码

网上查了很多资料,大家相同的错误来源不同,别人的解决方式没法解决我的问题。
没有系统学习 pytorch 语法就直接上手写代码,着实难受,所以放下bug,去学习了一下语法知识。
分享一篇不错的文章 深入理解 TORCH.NN
跟着练习了一遍懂了很多,然后一眼就看出自己代码的问题在哪里了。

原代码:

# Train and evaluate
model = HeteroRGCN(G, 8, 8, 8)
opt = torch.optim.Adam(model.parameters(), lr=0.01, weight_decay=5e-4)
user_embedding, item_embedding = model(G)for epoch in range(100):for data in dataloader:user, item_p, item_n = data ···

修改后:

# Train and evaluate
model = HeteroRGCN(G, 8, 8, 8)
opt = torch.optim.Adam(model.parameters(), lr=0.01, weight_decay=5e-4)for epoch in range(2):for data in dataloader:user_embedding, item_embedding = model(G)user, item_p, item_n = data ··· 

关键:修改了 user_embedding, item_embedding = model(G) 的位置

执行 model = HeteroRGCN(G, 8, 8, 8) 这一行代码的时候,是对模型进行初始化,即执行模型的 init 函数部分,
执行 user_embedding, item_embedding = model(G) 这一行代码的时候,是对模型进行前向传播,
(所以把他放在外面的时候,反向反向传播就认为是 NoneType 对象???)

TypeError: cannot unpack non-iterable NoneType object相关推荐

  1. Python关于None的报错:'NoneType' object is not iterable和cannot unpack non-iterable NoneType object

    文章目录 一.TypeError:'NoneType' object is not iterable(类型错误:'NoneType'对象不是可迭代的) 二.TypeError: cannot unpa ...

  2. python nonetype_【已解决】Python程序错误:TypeError: ‘NoneType’ object is not iterable

    [问题] 如下代码:def callBlogFunc(funcToCall, *paraList): funcName = funcToCall.func_name; if(blogIsNetease ...

  3. python常见错误 TypeError: 'NoneType' object is not iterable

    TypeError: 'NoneType' object is not iterable 1. 将None赋给多个值时,会出现提示:TypeError: 'NoneType' object is no ...

  4. python nonetype_python装饰器 ——@符号与“TypeError: ‘NoneType’ object is not callable” | 学步园...

    今天来讨论一下装饰器.装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等.装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数 ...

  5. 执行h2o的python命令时出现:TypeError: ‘NoneType‘ object is not callable

    ... Parse progress: |█████████████████████████████████████████████████████████████████████████████| ...

  6. Python错误 TypeError: ‘NoneType‘ object is not subscriptable解决方案汇总

    目录 前言 一.引发错误来源 二.解决方案 2-1.解决方案一(检查变量) 2-2.解决方案二(使用 [] 而不是 None) 2-3.解决方案三(设置默认值) 2-4.解决方案四(使用异常处理) 2 ...

  7. python nonetype object is not_python报错TypeError: ‘NoneType‘ object is not subscriptable的解决方法...

    发现问题 写python的时候出现了这个错,然后网上的教程的解决方案几乎都是--"重新定义下这个变量",看的我一脸懵逼 后来发现原来是我把return None的方法赋给了变量,之 ...

  8. Python----方法返回None值报错 TypeError NoneType object is not callable

    转载请声明,本文来自:https://blog.csdn.net/shijianduan1/article/details/106415395 相信很多小伙伴, 在遇到报错的时候,直接搜索报错内容, ...

  9. TypeError: 'NoneType' object is not callable : 解决

    遇到的问题:今天在学习Python闭合函数的时候遇到了如上题目的问题,很明显是类型错误 TypeError: 'NoneType' object is not callable 思考:检查代码那里的类 ...

最新文章

  1. LeetCode Find K Pairs with Smallest Sums(大根堆、小根堆)
  2. java移位操作符注意的问题
  3. 牛客网在线编程之“字符串分割”
  4. mac 完全卸载android studio
  5. json中omitempty字段的使用
  6. SQL之用户自定义函数
  7. (08)System Verilog 类继承
  8. Java中堆、栈和常量池的区别
  9. 注意Chart control 中ispostback 的使用
  10. [MFC]Sqlite问题小记
  11. php接口前端,php 接口与前端数据交互实现示例代码
  12. STC官方软件波特率计算器使用方法
  13. 基于PLC四层电梯模型控制系统课程设计
  14. oppo强制升级android版本,OPPO R17升级更新安卓9.0固件rom刷机包:正式版本-C.10
  15. 加州房价预测项目详细笔记(Regression)——(1)研究数据获得灵感
  16. PO,VO,DAO,BO,POJO之间的区别与解释
  17. u盘插电脑计算机卡了,U盘连接电脑非常卡的解决方法-电脑自学网
  18. 比较详细的HC-SR04超声波传感器数据及机器人避障的应用方法
  19. 推荐一个有用的Excel操作类库 LinqToExcel
  20. 51单片机的1T和12T的区别

热门文章

  1. check-lxdialog.sh: line 3: $'\r': command not found
  2. C小项目——电子词典
  3. java agent 监控tomcat_promethues监控tomcat
  4. 打印机更换感光鼓单元k_干货,激光打印机常见故障维修方法总结
  5. centos查看网络速率_CentOS 7查看网络带宽使用情况
  6. Java的Class类文件结构及基本字节码指令
  7. 爬虫实战学习笔记_4 网络请求urllib3模块:发送GET/POST请求实例+上传文件+IP代理+json+二进制+超时
  8. python 对象引用、可变性 和 垃圾回收
  9. 程序员面试金典 - 面试题 16.09. 运算(只用+法做乘除)
  10. LeetCode 1252. 奇数值单元格的数目