增加最优传输过程中遇到的问题

news2025/4/19 7:01:31

最近,正在使用最优传输,在使用的过程中遇到了一下问题,简单记录一下这些问题。该文章仅用于记录学习,不做其他用途,参考的文章均声明。

修改代码过程中,遇到的错误总结

Question 1. 描述:

linear(): argument ‘input’ (position 1) must be Tensor, not DataFrame

翻译:使用 torch.nn.Linear() 时,必须要求数据是 tensor 类型
解决方案:torch.nn.linear() 使用时要求数据必须是 tensor 类型的。
图片1

Question 2. 描述

RuntimeError:expected scalar type Float but found Double

翻译:RuntimeError:期望标量类型为 Float,但发现为 Double
解决方案:首先看了很多博主写的博客,然后自己一步一步调试,发现代码出现的问题在使用线性变换时,我用于处理的类型是 float64,而 torch.nn.linear() 生成的 weightbias 两个参数是 float32 类型的,通过查阅资料发现,Tensorfloat64float32 不是一个类型,参考了,具体解决方法如下所示:
图片2

Question 3. 描述

‘function’ object has no attribute ‘parameters’

翻译:函数没有 parameters 这个属性
解决方案:经过了解 torch.nn.linear() 这个函数的用法和 Pytorch.optim之optim.Adam() ,参考了 Python-torch.optim优化算法理解之optim.Adam(),在 ly 的帮助下,了解了不能直接用 function ,于是在 linear_1() 函数中返回 linear1 。具体解决方法如下所示:
图片3

Question 4. 描述

mat1 and mat2 shapes cannot be multiplied (1140x8 and 2x2)

翻译:mat1mat2 大小不能相乘( 11408 和 22 )
解决方案:将 mat2 的大小换为 8*8,可用于和 mat1 进行计算的大小。将 Mapping(2) 中的 2 更换为 8 。就解决了该问题。
图片4

Question 5. 描述

Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu! (when checking argument for argument mat1 in method wrapper_addmm)

翻译:预计所有张量都在同一个设备上,但发现至少有两个设备,cuda:0和cpu!(当检查方法 wrapper_addmm 中的参数 mat1 的参数时)
解决方案:经过查阅解决方案,参考了文章 解决RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cp,逐步找到两个 mat1mat2 对应的设备,并对其中不一样的那个 mat 进行修改。

Question 6. 描述

Can’t call numpy() on Tensor that requires grad. Use tensor.detach().numpy() instead.

翻译:不能在需要梯度下降的 Tensor 上直接使用 numpy() ,用 tensor.detach().numpy() 代替。
解决方案:参考了 RuntimeError: Can‘t call numpy() on Tensor that requires grad. Use tensor.detach().numpy() instead.该博客的主要内容。该博客阐述了出现这种情况的原因:待转化类型的Tensor 变量带有梯度,直接将其转化为 numpy 数据将破坏计算图,因此 numpy 拒绝进行数据转换,实际上这是对开发者的一种提醒。如果自己在转换数据时不需要保留梯度信息,可以在变量转换之前添加 detach() 调用。

X_total = X_total.detach.numpy()

若数据部署在 GPU 上时,则修改为

X_total = X_total.cpu().detach.numpy()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/435263.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++数据结构:二叉树的前序、中序、后序遍历的非递归实现

目录 一. 前序遍历的非递归实现 二. 中序遍历的非递归实现 三. 后序遍历的非递归实现 一. 前序遍历的非递归实现 我们知道,前序遍历的访问顺序为:根节点 -> 左子树 -> 右子树。如图1.1所示的二叉树,我们要通过非递归实现前序遍历&am…

车载网络 - Autosar网络管理 - 网络管理简介

一、什么是CAN网络管理及它的作用 现在的车辆是由大量的ECU节点组成的,为了能使各ECU能够正确并及时地进行CAN通信,需要有一套机制来统一协调总线上各节点的休眠唤醒,这套机制就是CAN网络管理(NM)。 网络管理的目的是保…

系统集成项目管理工程师 笔记(第四章:项目管理一般知识)

文章目录 4.1.2 项目目标 1764.1.3 项目的特点 1784.1.9 项目干系人 1894.1.11 事业环境因素 1924.1.12 组织过程资产 1924.2.3 组织结构 1944.2.4 PMO在组织结构中的作用 199PMO类型(支持型、控制型、指令型)项目经理和PMO的区别 4.4 典型的信息系统项目…

图片存储方案-七牛云存储

1.引语 在实际开发中,我们会有很多处理不同功能的服务器。例如: 应用服务器:负责部署我们的应用 数据库服务器:运行我们的数据库 文件服务器:负责存储用户上传文件的服务器 分服务器处理的目的是让服务器各司其职…

tail:查看日志命令工具

文章目录 1. Windows下tail查看日志命令工具下载、使用方法2. baretail【windows端替代tail的工具】3. Tail4win【windows端替代tail的工具】4. MobaXterm【windows端替代tail的工具】5. tail 命令介绍 1. Windows下tail查看日志命令工具下载、使用方法 tail工具下载 链接&am…

中文改写神器下载-中文改写神器

自动文章生成器 随着人工智能技术的快速发展,自动文章生成器已经成为了一个越来越流行的营销推广工具。这种工具可以根据您提供的关键词和主题,在几秒钟之内生成高质量的文章,为企业加快文章产出速度,提高品牌知名度提供了优秀的…

C语言CRC-16 MAXIM格式校验函数

C语言CRC-16 MAXIM格式校验函数 CRC-16校验产生2个字节长度的数据校验码,通过计算得到的校验码和获得的校验码比较,用于验证获得的数据的正确性。基本的CRC-16校验算法实现,参考: C语言标准CRC-16校验函数。 不同厂家通过对输入…

android studio APP工程的项目结构说明

目录 1.APP工程的项目结构图 2.功能说明 2.1app 2.2Gradle Scripts 1.APP工程的项目结构图 2.功能说明 该项目下两个分类:一个是app(代表app模块);另一个是Gradle Scripts。 2.1app app下面有3个子目录,功能如下:…

代码随想录之动态规划(力扣题号)

62 不同路径 很简单的dp class Solution {public int uniquePaths(int m, int n) {//58-02int[][] dp new int[m][n];//初始化for(int i 0;i<m;i){dp[i][0] 1;}for(int i 0;i<n;i){dp[0][i] 1;}for(int i1;i<m;i){for(int j 1;j<n;j){dp[i][j] dp[i-1][j]d…

开发小程序需要多少钱

开发小程序是如今网络世界中的一项重要活动&#xff0c;越来越多的企业和个人开始意识到通过开发小程序来提高自己的品牌价值和商业利益。那么&#xff0c;开发小程序需要多少钱呢&#xff1f; 首先&#xff0c;我们需要明确几个概念&#xff1a;小程序开发的成本通常包括以下…

kubespray-offline 下载并离线部署 kubernetes 自定义版本

kubespray-offline v2.21.0-0 默认部署 kubernetes 版本为 v1.25.6 我们以自定义部署 kubernetes 版本 v1.24.10为例。 下载&#xff1a;https://github.com/tmurakam/kubespray-offline/releases/tag/v2.21.0-0 unzip v2.21.0-0.zip cd kubespray-offline-2.21.0-0在下载介…

网络性能定位

根据tcp协议进行分析 目录 一、SYN_RECV阶段 1.1 确定半连接队列是否有丢包&#xff1a; 1.2 确定全连接队列是否有丢包现象 二、close_wait 三、TIME_WAIT ​ 一、SYN_RECV阶段 内核在监听套接字的时候&#xff0c;在三次握手时&#xff0c;会创建两个队列&#xff0c;在…

求解:使用Antv x6引入插件出现‘ToolItem’问题

一、前言 救救孩子&#xff0c;被困扰一周多了。 二、问题概述 2023年发布了antV X6的2.*版本&#xff0c;发现使用过程中会出现很多错误。 首先&#xff0c;个人使用的框架是Vue3&#xff0c;感觉有可能会是兼容性问题&#xff0c;但是有一个同事的电脑上是可以正常运行的。…

【C语言】基础语法2:运算符和表达式

❤️‍&#x1f525;前情提要❤️‍&#x1f525;   欢迎来到C语言基本语法教程   在本专栏结束后会将所有内容整理成思维导图&#xff08;结束换链接&#xff09;并免费提供给大家学习&#xff0c;希望大家纠错指正。本专栏将以基础出发&#xff0c;在之后的教程中将会不断…

【历史上的今天】4 月 19 日:摩尔定律被提出;微软发布 Pocket PC;第一个 FORTRAN 程序开始运行

整理 | 王启隆 透过「历史上的今天」&#xff0c;从过去看未来&#xff0c;从现在亦可以改变未来。 今天是 2023 年 4 月 19 日&#xff0c;在 1918 年的今天&#xff0c;克利福德贝里&#xff08;Clifford Berry&#xff09;出生。他是世界上第一台电子数字计算设备 Atanasof…

springboot中记录链路日志traceId

一 相关概念 在分布式服务架构下&#xff0c;一个 Web 请求从网关流入&#xff0c;有可能会调用多个服务对请求进行处理&#xff0c;拿到最终结果。在这个过程中每个服务之间的通信又是单独的网络请求&#xff0c;无论请求流经的哪个服务除了故障或者处理过慢都会对前端造成影…

基于PCA和NSST算法联合实现红外与可见光图像融合的Matlab仿真(完整源码+35组数据集)

以下是一个使用PCA和NSST算法实现红外与可见光图像融合的Matlab仿真完整源码。源码中只需修改红外图像&#xff08;IR.bmp&#xff09;和可见光图像&#xff08;VI.bmp&#xff09;名字即可 文章目录 效果展示数据集展示步骤说明完整源码下载地址 效果展示 最终融合效果展示&am…

cifar-10数据集+ResNet50

CIFAR-10-ObjectRecognition 作为一个古老年代的数据集&#xff0c;用ResNet来练一下手也是不错的。 比赛链接&#xff1a;CIFAR-10 - Object Recognition in Images | Kaggle 1. 预设置处理 创建各类超参数&#xff0c;其中如果是在Kaggle上训练的话batch_size是可以达到40…

安全狗深度参与编写《数据安全产品与服务观察报告》发布!

4月11日&#xff0c;由中国通信标准化协会联合数据安全推进计划主办的《数据安全产品与服务观察报告》发布会在北京顺利开展。 作为国内云原生安全领导厂商&#xff0c;安全狗也参与了数据安全推进计划《数据安全产品与服务观察报告》撰写。 此次活动针对数据安全产业、技术、…

排序算法合集(1)

前言&#xff1a; 今天我们正式开始讲述算法中的排序。排序算法是我们十分重要的算法&#xff0c;为什么呢&#xff1f; 排序是在各种情况下都非常重要的&#xff0c;无论是在人类社会还是在计算机科学中。以下是一些排序的重要性&#xff1a; 数据分析&#xff1a;在数据分析…