首页 > 其他分享 >pytorch 踩坑,TypeError: expected seqence object with len>_0 or a single integer_typeerror: expected se

pytorch 踩坑,TypeError: expected seqence object with len>_0 or a single integer_typeerror: expected se

时间:2024-05-19 12:59:28浏览次数:21  
标签:object len Dataparallel expected integer CPU

CSDN搬家失败,手动导出markdown后再导入博客园

在看 Faster-R-CNN 复现代码(https://blog.csdn.net/weixin_44791964/article/details/105739918)的时候,发现推理阶段报错,Dataparallel 无法 gather

参考 https://discuss.pytorch.org/t/nn-dataparallel-typeerror-expected-sequence-object-with-len-0-or-a-single-integer/97082/23 后发现,问题出在网络输出的 Tensor 其实被某个函数提前放到 CPU 上了,变成了 ndarray,所以 Dataparallel 无法处理

Yes. Sorry, in this line I put tensor to cpu before gather.

return torch.unsqueeze(loss, 0), predicted_interaction.cpu().detach().view(-1, 1), correct_interaction.cpu().detach().view(-1, 1)

看他的回答,意思是在 model(input) 的返回值应该全是 Tensor,但是他的返回值先转回 CPU 上了,而 Dataparallel 只能处理 cuda 数据,所以报错

解决办法:

要么去掉 Dataparallel,要么在输出结果后再转 CPU。

标签:object,len,Dataparallel,expected,integer,CPU
From: https://www.cnblogs.com/algorithmSpace/p/18200235

相关文章

  • RepVGG-GELAN | 融合 VGG、ShuffleNet 与 YOLO 图像检测的准确性及效率再上一层!
    前言 基于YOLO的目标检测算法在速度和准确性之间取得了显著的平衡。然而,它们在脑肿瘤检测中的应用仍然未被充分探索。本研究提出了RepVGG-GELAN,这是一种新型的YOLO架构,通过集成RepVGG,一种重新参数化的卷积方法,特别关注于医学图像中的脑肿瘤检测。RepVGG-GELAN利用RepVGG架构来提......
  • unity Scriptable object
    是什么?一堆我们定义的数据,方便我们之后进行初始化。[CreateAssetMenu(fileName="TestObject",menuName="ScritableObjects/TestObject")]publicclassTestObject:ScriptableObject{publicstringMyString;}此时我们可以批量创建多个类型相同,但是内容不同的......
  • 深度学习项目-MobileNetV2水果识别模型
    FruitRecognitionDeepLearning深度学习小项目,利用CNN和MobileNetV2搭建的水果识别模型。github地址fruit为本次大作业使用的数据集。geneFruit为数据增强后的数据集。FruitRecognition为本次大作业相关代码及相关曲线热力图。项目使用conda环境进行训练,相关测试版本如下:......
  • 【jmeter】.SampleException: Mismatch between expected number of columns: 生成报
    1、问题现象Causedby:org.apache.jmeter.report.core.SampleException:Consumerfailedwithmessage:Consumerfailedwithmessage:Mismatchbetweenexpectednumberofcolumns:17andcolumnsinCSVfile:3,checkyourjmeter.save.saveservice.*configurationor......
  • Uri.EscapeDataString 和 Server.UrlEncoding 的区别
    今天在iis中访问一个即含有空格又含有#的文件名时,通过iis直接访问都无法到达,显示404,即便是urlencode文件名后依然无济于事,最后通过gpt问到了答案。Uri.EscapeDataString和Server.UrlEncode是.NETFramework中用于URL编码的两个方法,它们有以下区别:命名空间和所属类:Uri.Es......
  • [Javascript] Object.groupBy & Map.groupBy
    ArrayGrouping isthenewfeatureofJavaScript/ECMAScript,whichsplitsanarray(or,generally,aniterable),intosmallersub-arrays.GroupingisdifferentthanotherJSarraymethods-it's not apartofthearrayprototype,butastaticmethod.......
  • selenium4中cookie的保存与读取
    selenium4中网页cookie的保存与读取importjsonfromseleniumimportwebdriverdriver=webdriver.Edge()url='https://baidu.com'driver.get(url)保存当前网页的cookiedefsavecks():cookies=driver.get_cookies()jscookies=json.dumps(cookies)......
  • 2.2.3 加入objection机制
    先分析前面的:上一节中虽然输出了"main_phaseiscalled",但是"dataisdrived"并没有输出。但是既然进入了main_phase,应该会把这一整个任务执行完成才对,但是这里好像在执行的过程中被外力kill掉了?UVM中通过objection来控制验证平台的关闭在上一节中并没有调用finish语句,但是在......
  • JavaScript object array sort by string bug All In One
    JavaScriptobjectarraysortbystringbugAllInOnebug//purestringsarray,sortOK✅letarr=["banana","strawberry","apple"];JSON.stringify(arr.sort());//'["apple","banana","strawbe......
  • Python - pyenv, virtualenv, pipenv
    Pyenv可托管多个不同的Python版本。Installpyenv:gitclonehttps://github.com/pyenv/pyenv.git~/.pyenvAdd~/.pyenv/bintoPATH:if[[$(echo$PATH|grep'pyenv'|wc-l)-eq0]];thenPATH=$PATH:~/.pyenv/binfi 查看当前系统上已经安装和正在使用的......