深度学习-Pytorch同时使用Numpy和Tensors各自特效

news/2024/5/20 21:15:32

深度学习-Pytorch同时使用Numpy和Tensors各自特效

用pytorch构建模型,并训练模型,得到一个优化的模型,那么模型构造的数据类型怎样的?

数据分析

数据分析-Pandas如何转换产生新列

数据分析-Pandas如何统计数据概况

数据分析-Pandas如何轻松处理时间序列数据

数据分析-Pandas如何选择数据子集

数据分析-Pandas如何重塑数据表-CSDN博客

经典算法

经典算法-遗传算法的python实现

经典算法-模拟退火算法的python实现

经典算法-粒子群算法的python实现-CSDN博客

pytorch中常常遇到的,最基本的数据类型就是tensors。

NumPy 和Tensors的鱼和熊掌兼得

Pytroch的基本变量是Tensors,但有时候喜欢,或者需要用Numpy变量来处理数据的时候,如果数据转过来转过去很麻烦,也很费事。其实torch在底层架构设计已经有了解决方案,让数据一致,但数据类型有各自的呈现方式。

CPU 和 NumPy 阵列上的Tensors可以共享其底层内存位置,改变一个的数据将改变另一个数据。

这样,如果熟悉Numpy的操作函数,直接使用就行,似乎鱼和熊掌可兼得。

Tensors到 NumPy 数组

t = torch.ones(5)
print(f"t: {t}")
n = t.numpy()
print(f"n: {n}")
t: tensor([1., 1., 1., 1., 1.])
n: [1. 1. 1. 1. 1.]

Tensors的变化反映在 NumPy 数组中。

t.add_(1)
print(f"t: {t}")
print(f"n: {n}")
t: tensor([2., 2., 2., 2., 2.])
n: [2. 2. 2. 2. 2.]

NumPy 数组到 Tensor

n = np.ones(5)
t = torch.from_numpy(n)

NumPy 数组中的更改反映在Tensors中。

np.add(n, 1, out=n)
print(f"t: {t}")
print(f"n: {n}")
t: tensor([2., 2., 2., 2., 2.], dtype=torch.float64)
n: [2. 2. 2. 2. 2.]

觉得有用 收藏 收藏 收藏

点个赞 点个赞 点个赞

End

GPT专栏文章:

GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案

GPT实战系列-LangChain + ChatGLM3构建天气查询助手

大模型查询工具助手之股票免费查询接口

GPT实战系列-简单聊聊LangChain

GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(二)

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)

GPT实战系列-ChatGLM2模型的微调训练参数解读

GPT实战系列-如何用自己数据微调ChatGLM2模型训练

GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案

GPT实战系列-Baichuan2本地化部署实战方案

GPT实战系列-Baichuan2等大模型的计算精度与量化

GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF

GPT实战系列-探究GPT等大模型的文本生成-CSDN博客


https://www.xjx100.cn/news/3293458.html

相关文章

笔记:GO1.19 带来的优化(重新编译juicefs)

## 背景 go编写的应用程序(juicefs)在k8s(docker)中运行,时不时出现 OOM Killed。 ## 分析 发现某些应用使用juicefs会导致内存使用飙升; k8s的pod给的内存资源:request 2G,limit…

括号生成(力扣题目22)

题目描述: 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 示例 1: 输入:n 3 输出:["((()))","(()())","(())()&q…

安装ansys2024第一步安装ansys license manager遇到错误

这里写自定义目录标题 安装ansys2024时候遇到很多次错误,错误log如下 netstat -ano | findstr 1084 任务管理器里面禁用intel这个自动启动项目,关机重启即可

Python多层嵌套的dict递归解析

Python多层嵌套的dict递归解析 1.问题 遇到多层嵌套的dict ,如何能解析为只有一维的dict ,方便后续数据处理。 一个嵌套的dict : AutoOrderedDict([(total,AutoOrderedDict([(total, 9), (open, 1), (closed, 8)])),(streak,AutoOrderedDi…

单例模式:饿汉式、懒汉式;线程安全的单例模式创建的6种方式

单例模式 单例模式Singleton是一种创建型模式,指某个采用Singleton单例模式,则这个类在同一个 JVM上,只能产生一个实例供外部访问,并且仅提供一个全局的访问方式。 懒汉式 懒汉式线程不安全 public class Singleton1 {privat…

HTTP1.0,HTTP1.1,持久连接,非持久连接,TCP,UDP,三次握手和四次挥手,HTTP与HTTPS,对称加密和非对称加密,状态码

HTTP1.0和HTTP1.1的区别 HTTP1.0HTTP1.1连接方式非持久连接持久连接缓存 主要使用 header 里的 If-Modified-Since、Expires 来做为缓存判断的标准 引入了更多的缓存控制策略,例如 Etag、If-Unmodified-Since、If-Match、If-None-Match 等更多可供选择的缓存头来控…

为何要使用流媒体服务器

安防系统中,我们偶尔会遇到“流媒体服务器”这个词,那么为什么需要这个服务呢? 视频监控 我们知道,监控摄像机的工作原理就是将自然界的光影,通过摄像机镜头对焦到“靶芯”(CMOS),实…

Qt中常见的JS类和函数(二): 全局对象

Qt专栏: http://t.csdnimg.cn/YLlEd 相关系列文章 Qt中字符串转换为JS的函数执行 Qt中常见的JS类和函数(一): 全局对象 Qt中常见的JS类和函数(二): 全局对象 目录 2.3.构造函数属性 2.3.1.Object 2.3.2.Function 2.3.3.Array 2.3.4.ArrayBuffer 2.3.5.String …