news 2026/5/25 1:37:12

PyTorch代码(5)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PyTorch代码(5)

PyTorch语法

张量的创建

importtorch a=[1,2,3.]print(type(a))b=torch.tensor(a)print(b)print(type(b))print(b.dtype)importnumpyasnp c=np.random.normal((2,3))d=torch.tensor(c)print(d)e=torch.ones_like(d)print(e)f=torch.zeros_like(d)print(f)g=torch.rand_like(d)print(g)print(torch.rand((2,2)))print(torch.randn([2,2]))print(torch.rand([2,2,]).dtype)h=torch.rand([2,2,])print(h.dtype)print(h.shape)print(h.device)print(torch.is_tensor(h))i=torch.tensor(0)print(torch.is_nonzero(i))print('-'*34)print(torch.numel(h))print(torch.zeros([5,5]))a=torch.zeros([5,5],dtype=torch.int32)print(a)print(torch.zeros([5,5]).dtype)print(torch.ones_like(a))print('-'*34)print(torch.arange(5))print(torch.arange(0,5,2))print(torch.range(0,5))print(torch.range(0,2).dtype)print(torch.arange(0,5).dtype)foriintorch.arange(5):print('epoch:',i)print(torch.eye(3))print(torch.ones_like(a)*5)print(torch.full([2,2],2))print(torch.full_like(a,2))a=torch.rand([3,2,])print(a)b=torch.rand([3,2,])print(b)print(torch.cat([a,b],dim=0))

张量的运算API(1)

importtorch b=torch.rand([3,2])print(b)c,d=torch.chunk(b,chunks=2,dim=1)print(c)print(d)print(torch.reshape(torch.reshape(b,[2,3]),[-1]))print('-'*34)src=torch.tensor([[1,2],[3,4],[5,6]])index=torch.tensor([[0,2],[1,0],[2,1]])'''out = torch.zeros_like(src) out.scatter_(dim=0, index=index, src=src) #src [i][j] 这个数,要搬到 out 的 第 index [i][j] 行、第 j 列 print(out) '''a=torch.arange(10).reshape(5,2)#print(a)#print(torch.split(a,[1,4]))''' print(a.shape) print(torch.squeeze(torch.reshape(a,[1,1,5,2]),dim=0).shape) '''b=torch.rand(5,2)print(torch.stack([a,b],dim=0).shape)#torch.Size([2, 5, 2])print(torch.stack([a,b],dim=1).shape)#torch.Size([5, 2, 2])print(torch.cat([a,b],dim=0).shape)#torch.Size([10, 2])print(torch.cat([a,b],dim=1).shape)#torch.Size([5, 4])

张量的运算API(2)

importtorch a=torch.rand([3,2])print(a)#print(torch.take(a,torch.tensor([0,2,4])))''' print(torch.tile(a,dims=[1,2])) print(torch.tile(a,dims=[2,1])) '''''' print(torch.transpose(a,0,1)) print('-'*34) print(torch.unbind(a,dim=0)) print(torch.unbind(a,dim=1)) print('-'*34) print(torch.unsqueeze(a,dim=0).shape) print(torch.unsqueeze(a,dim=1).shape) print(torch.unsqueeze(a,dim=-1).shape) '''b=torch.zeros_like(a)print(torch.where(a>0.5,a,b))

dataset的基本代码实现

fromtorch.utils.dataimportDatasetfromPILimportImageimportosclassMyDataset(Dataset):def__init__(self,root_dir,label_dir):self.root_dir=root_dir self.label_dir=label_dir self.path=os.path.join(self.root_dir,self.label_dir)self.img_path=os.listdir(self.path)def__getitem__(self,index):img_name=self.img_path[index]img_item_path=os.path.join(self.root_dir,self.label_dir,img_name)img=Image.open(img_item_path)label=self.label_dirreturnimg,labeldef__len__(self):returnlen(self.img_path)root_dir='dataset'ants_label_dir='ants'bees_label_dir='bees'ants_dataset=MyDataset(root_dir,ants_label_dir)bees_dataset=MyDataset(root_dir,bees_label_dir)dataset=ants_dataset+bees_dataset

如何用SummaryWriter记录图像和标量

importnumpy numpy.bool8=boolfromtorch.utils.tensorboardimportSummaryWriterimportnumpyasnpfromPILimportImage writer=SummaryWriter('logs')image_path='dataset/ants/0013035.jpg'img_PIL=Image.open(image_path)img_array=np.array(img_PIL)print(type(img_array))print(img_array.shape)writer.add_image("test",img_array,1,dataformats='HWC')#y=2xforiinrange(100):writer.add_scalar('y=2x',2*i,i)writer.close()

使用transforms.ToTensor()将PIL图像转换为Tensor

fromPILimportImagefromtorch.utils.tensorboardimportSummaryWriterfromtorchvisionimporttransforms img_path="dataset/ants/0013035.jpg"img_PIL=Image.open(img_path)writer=SummaryWriter('logs')#1.使用transforms.ToTensor()将PIL图像转换为Tensortransform=transforms.ToTensor()img_tensor=transform(img_PIL)writer.add_image('Tensor_img',img_tensor)writer.close()
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/25 1:37:04

【助睿实验指导】学生用户画像 - 考勤画像可视化分析

实验目的 基于已完成 K-Means 聚类并标注考勤群体的学生考勤主题标签表,本实验聚焦“纪律高危型”群体,分析其行为特征。相比其他群体,该群体存在高频违纪、多维度异常叠加等行为特征,是校园考勤管理中风险最高、影响最大的群体。…

作者头像 李华
网站建设 2026/5/25 1:36:04

家国铺路,希望AI平台能够在之后对深度玩家松松绑

在已获得实证,确认可以形成质变前提下,为遵循ai平台规定又不像deepseek一样不顾家国情怀,决定在5月30日向官方纰漏。现在请各位好手帮我确认,现有平台机制是否已有成熟落地理论和实际行动。我未找到相关资料,使用中也确…

作者头像 李华
网站建设 2026/5/25 1:35:19

基础能力系列 - 多线程1 - 内存序

C11 定义了 6 种原子操作的内存序(memory order),用于控制多线程中的可见性和重排序规则。如下是六种内存序的简介、特点和适用场景: 六种内存序一览表 内存序名称描述 / 特点是否同步其他线程可见性是否禁止重排序使用场景示例m…

作者头像 李华
网站建设 2026/5/25 1:35:00

AArch64异常处理机制详解与ARMv8架构实践

1. AArch64异常处理模型概述 异常处理是现代处理器架构的核心机制之一,它使处理器能够响应硬件事件、软件错误以及系统调用等各类特殊情况。在ARMv8-A架构的AArch64执行状态下,异常处理模型经过精心设计,为操作系统和系统级开发者提供了灵活而…

作者头像 李华
网站建设 2026/5/25 1:33:31

腾讯云TRTC、声网、即构三款实时音视频SDK怎么选?2026实测对比

做企业级直播、远程医疗、在线教育这些场景,底层用哪家的RTC SDK是最核心的决策之一。我们团队三家的都用过,有些直观感受分享下。一、先说各自定位腾讯云TRTC声网Agora即构ZEGO核心优势腾讯生态整合全球化覆盖教育场景深度优化最低延迟200ms以内200ms以…

作者头像 李华