PyTorch相关函数学习总结(1)_pytorch矩阵非整数幂-程序员宅基地

技术标签: 机器学习  pytorch学习  深度学习  pytorch  

(1)torch.where按照一定的规则合并两个tensor

参考博客torch.where()函数解读_wang xiang的博客-程序员宅基地_torch.where()

a=torch.randn(3,4)
b=torch.where(a>0.5,torch.ones_like(a,dtype=torch.float32),
                           torch.zeros_like(a,dtype=torch.float32))
print(a)
print(b)

结果:

tensor([[-0.6641, -0.0887,  1.1933, -1.0697],
        [-1.1706, -0.5115, -0.4221,  0.6041],
        [-0.7595,  0.9305,  0.2127, -1.3725]])
tensor([[0., 0., 1., 0.],
        [0., 0., 0., 1.],
        [0., 1., 0., 0.]])

这个有点像C语言中的?:表达式,如果前面的条件成立就是选择分号前面的值否则选择分号后面的值。

(2)TensorDataset

参考链接PyTorch 小功能之 TensorDataset_TBTB的博客-程序员宅基地_tensordataset

该类中的tensor第一个维度必须相等

目前对这个的理解就是说打包的两个tensor就把特征和标签对应起来了

通过线性回归的数据进行举例:

n=400

X=10*torch.rand([n,2])-5.0  #n*2
w0=torch.tensor([[2.0],[-3.0]])
b0=torch.tensor([[10.0]])
Y=X@w0+b0+torch.normal(0.0,2.0,size=[n,1])

ds=TensorDataset(X,Y)#第一维度需要一样
print(ds[0])

这里就把自变量和对应的函数值对应起来了

(3)random_split用来划分数据集

参考博客:

https://blog.csdn.net/qq_42951560/article/details/115445317

data_train,data_valid=torch.utils.data.random_split(data,[int(len(data)*0.7),int(len(data)*0.3)])

这个7:3划分数据集

(4)torch.squeeze

参考链接:torch.unsqueeze() 和 torch.squeeze() - 知乎

torch.squeeze用来降维,可以在指定维度上进行降维,只能去掉维度是1的地方

(5)index_select

参考博客:pytorch中index_select()的用法_g_blink的博客-程序员宅基地_torch.index_select

其中有三个参数分别对应 tensor,维度,索引

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_51117848/article/details/122373730

智能推荐

Niagara内容示例 4.3 Mesh Orientation vs. Rotational Force_ue5 的niagara 的drag是什么?-程序员宅基地

文章浏览阅读2k次,点赞3次,收藏5次。粒子效果有三竖列的粒子,都在绕某个轴进行旋转。根据下面的文本提示来看,应该是每堆粒子的旋转操作的赋予方式不同,分别是直接操作网格体朝向(Mesh Orientation),操作旋转的速度(Rotational Velocity),操作发起旋转的力(Rotational Force)。(理科生可能会比较好懂,其实就是分别操作位置,速度以及加速度,如果你脑中有公式的话,其实这三者做的是同一件事,。)Niagara蓝图部分蓝图中包含了三个发射器(对应三种模式),并配文做出相应的解释。左上角是操作Mesh朝._ue5 的niagara 的drag是什么?

silvaco使用中的问题和解决方法-程序员宅基地

文章浏览阅读2.5w次。@坏坏小辛前言关于silvaco的教程,网上有很多,但多以安装教程为主。本文是想根据自己的使用经验,写一篇关于使用中遇到的问题以及解决方案的经验交流贴。作为一个仿真小白,真的是零基础接触这个软件,遇到过一些可以被称之为“智障”的问题,但我想一定也有跟我有类似经历的初学者或者即将迈入sivalco的同道中人,相信在看了这篇博文以后,大家能够感同身受或者有所领悟。基础问题不再废话,我想先说几个..._silvaco

Http Header “Content-Type” 》》》 application/x-www-form-urlencoded 与 application/json的区别-程序员宅基地

文章浏览阅读6.2k次,点赞7次,收藏11次。通过POST方式提交数据到接口的时候,常常会遇到这种句子:webClient.Headers.Add(“Content-Type”, “application/json”);或者webClient.Headers.Add(“Content-Type”, “application/x-www-form-urlencoded”);那究竟应该用哪种方式?答案是跟我们提交的参数格式有关。如果是...

视频云服务平台架构设计难点与趋势-程序员宅基地

文章浏览阅读3.9k次。本文来自容联视频云产品技术总监雷辉在LiveVideoStackCon 2019上海大会的演讲,内容以案例或场景化故事为出发点,来畅想视频通讯领域的新技术应用。文/雷辉..._视频 点云可视化 服务端架构

SQLite数据库---ListView控件之商品展示案例_接下来我们通过一个购物商城的案例来演示如何通过listview控件与数据适配器显示一-程序员宅基地

文章浏览阅读2.6k次,点赞3次,收藏18次。开发一个购物车,需要将购物车中的商品以陈列的形式展示,并且还需要对购物车的商品进行增删改查操作。要实现这些功能就需要使用ListView和SQLite数据库。接下来通过一个“商品展示”案例实现在界面上的操作数据库。具体步骤如下:1.创建程序首先创建程序,修改包名,设计用户交互界面。此程序对应的布局文件(activity_main.xml)如下所示:

Leetcode python《热题 HOT 100》15. 三数之和_力扣热门100 python 三数之和-程序员宅基地

文章浏览阅读392次。Leetcode python 之 《热题 HOT 100》:https://leetcode-cn.com/problemset/hot-100/15. 三数之和给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。例如, 给定数组 nums ..._力扣热门100 python 三数之和

随便推点

BerryBoot实现树莓派多系统切换_树莓派如何切换系统-程序员宅基地

文章浏览阅读9.1k次,点赞3次,收藏20次。最新太忙了好久没有更新文章了,前段时间自己通过树莓派+OwnCloud+花生壳打造了自己的私人云盘。最近本人有想通过树莓派搞点其他事情,比如Kodi多媒体、Lakka游戏等等,但是又不想不断的更换SD卡(树莓派默认SD卡为系统盘),于是想到通过BerryBoot来实现系统的切换,无需替换SD卡。一、准备工作1.下载BerryBoot:(sourceforge)下载地址: http..._树莓派如何切换系统

Tomcat原理 (持续更新_tomcat同一个请求访问 list内容会变吗-程序员宅基地

文章浏览阅读1.8k次。HTTP​ 总是由客户端通过建立连接并发送http请求​ 框架源码都好喜欢用三元运算符呀,我发现我用的频率不是很高,以后也会考虑把简单的if语句化简成三元运算符Sockethost​ 在Socket的构造方法中,我注意到这个细节,我发现host不仅可以代表ip地址,还能是网址,说明底层可以把网址解析成对应的ip地址作用​ 书上描述的非常好,用来向网络发送和接受数据。而具体的实现则是由java强大的io流来实现的。​ 如果用这个来实现浏览器功能的话,就先获取out流,然后往这个里面写h_tomcat同一个请求访问 list内容会变吗

笔记本内置键盘的外接改造(上篇)_笔记本键盘改造成外接键盘-程序员宅基地

文章浏览阅读1.1w次,点赞12次,收藏21次。笔记本内置键盘的外接改造(上篇)这是我的第一篇博客,emmm,就这样吧最近有人联系到我,问我能否把笔记本内置键盘改装后外接在电脑上使用What??!!我首先想到的并不是这个计划的可行性,而是为什么他要把笔记本内置的薄膜键盘外接来用,难道买个机械键盘不香吗,好吧,每个人都有权利追求自己想要的,于是我就开始分析计划的可行性可行性据我了解,笔记本的内置键盘基本上都是薄膜型的矩阵键盘,而且一般..._笔记本键盘改造成外接键盘

Vue+Koa2+mongodb 搭建项目_koa2mongodb项目创建-程序员宅基地

文章浏览阅读773次,点赞2次,收藏7次。文章目录前言一、项目用到的一些关键依赖二、后端框架的基础搭建1.引入库2.三、前端框架的基本搭建四、后端实现基础的登录注册1.Bcrypt加密五、前端实现基础的页面跳转1.登录拦截六、整合前后端资源实现登录注册六、ui-element的使用1.分页功能2.icon的使用七、数据库的设计实现留言功能(嵌套回复)八、如何解决页面刷新导致的空白问题1.后端koa2方法2.前端vue方法前言本文是基于koa2+vue+mongodb搭建的留言板项目,koa2作为后端框架,vue+ui-element作为前端_koa2mongodb项目创建

7天速成、0基础必看!学习效率提升80%的Python入门教程(建议收藏)-程序员宅基地

文章浏览阅读786次。对于零基础学Python的朋友,网络上给出的学习方向90%以上并不合适。面对大量可选择的学习资源,依然有许多人在为如何学Python而犯愁。什么样的学习方式对于初学者最高效呢?通过调研发..._初中生python入门

Docker实战之(四)安装mysql_3306:3306 --name mysql -v /root/mysql/conf:/etc/my-程序员宅基地

文章浏览阅读226次。拉取镜像并指定版本号docker pull mysql:5.7启动mysqldocker run -p 3306:3306 --name mysql -d mysql:5.7查看启动状态docker ps -s如上则启动成功Navicat连接_3306:3306 --name mysql -v /root/mysql/conf:/etc/mysql/conf.d

推荐文章

热门文章

相关标签