当前位置: 首页 > news >正文

深度学习-01 Pytorch

PyTorch是一个开源的机器学习框架,它提供了一个灵活的高级接口,可以帮助开发者构建神经网络模型以及进行深度学习的训练和推理。PyTorch基于Torch库和Lua编程语言开发而来,但在PyTorch中使用Python作为主要编程语言。PyTorch的设计目标是简单易用、灵活性强,并且可以提供高性能的计算。它的核心特点包括:
1.动态图计算:PyTorch使用动态图计算方式,这意味着在编写代码时可以直接操作和修改计算图,而不需要预先定义静态图。
2.自动求导:PyTorch能够自动计算张量的导数,这对于训练神经网络模型非常重要。开发者可以使用autograd模块轻松地定义和计算导数。
3.强大的GPU加速:PyTorch支持使用GPU进行计算,可以充分发挥GPU在深度学习任务中的性能优势。开发者可以通过简单的代码更改,将计算转移到GPU上。
4.大型社区支持:PyTorch拥有一个庞大的用户社区,有许多开发者不断贡献新的功能和工具,以及解决问题和提供支持。
5.深度学习框架的完整功能:PyTorch提供了许多用于构建和训练深度学习模型的工具和功能,如各种层、优化算法和损失函数等。

本地解释器位置: D:\deeplearning\anaconda3\envs\pytorch\python.exe

Tensboard是一个用于可视化和分析深度学习模型训练过程中中间结果的工具。它是TensorBoard的一个扩展,可用于PyTorch和TensorFlow模型。
1.Tensboard为我们提供了一个交互式的界面,可以帮助我们更好地理解我们的模型如何学习和改进。它可以显示训练过程中的损失函数变化、模型准确率、学习率等指标的趋势图。此外,Tensboard还提供了可视化工具,可以显示模型中的权重、梯度和激活值的分布情况,帮助我们分析模型的表现和瓶颈。
2.使用Tensboard非常简单,只需在代码中添加几行代码,就可以将关键的训练指标和中间结果保存到日志文件中。然后,我们可以在Tensboard界面上加载这些日志文件,即可查看模型训练的详细信息和可视化结果。

tensorboard --logdir=logs  		//打开 tensorboard生成的logs下的文件

Transforms是PyTorch中的一个重要模块,用于数据预处理和数据增强。它提供了多种常用的转换函数,可以对图像、文本、张量等进行各种操作。
在PyTorch中,数据预处理通常是在数据加载之前进行的。通过使用transforms模块,可以对原始数据进行多种操作,如缩放、裁剪、旋转、翻转、标准化等,以便更好地适应模型的训练要求。同时,transforms还可以用于数据增强,通过随机变换数据的方式来扩充训练集,提高模型的泛化能力。

tensor_trans=transforms.ToTensor()              #声明一个转换tensor类型的工具
tensor_img=tensor_trans(img)                    #转换图片类型#一些例子
from PIL import Image
from torchvision import transforms
from torch.utils.tensorboard import SummaryWriter
from torchvision.transforms import Resizewriter=SummaryWriter("logs")
img=Image.open("hymenoptera_data/train/bees/39747887_42df2855ee.jpg")
print(img)# ToTensor
trans_totensor=transforms.ToTensor()
img_tensor=trans_totensor(img)
writer.add_image("ToTensor",img_tensor)# Normalize
print(img_tensor[0][0][0])
trans_norm=transforms.Normalize([0.5,0.5,0.5],[0.5,0.5,0.5])
img_norm=trans_norm(img_tensor)
print(img_norm[0][0][0])
writer.add_image("Normlize",img_norm)# Resize
print(img.size)
trans_resize=transforms.Resize((512,512))
# img PIL->resize->img_resize PIL
img_resize=trans_resize(img)
# img_resize PIL->totensor->img_resize tensor
img_resize=trans_totensor(img_resize)
writer.add_image("Resize",img_resize)
print(img_resize)# Compose - resize - 2
#还有很多方法。。。。。。writer.close()

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • LLM大模型学习:探索LLM的精髓-理解Prompts概念与LangChain快速应用技巧”
  • 服务器断电,Centos7启动报错
  • SprinBoot+Vue应急信息管理系统的设计与实现
  • CNN模型手写数字识别及其相关概念
  • 一个全面、先进、公平且模块化的开源RAG框架
  • 【JVM】JVM栈帧中的动态链接 与 Java的面向对象特性--多态
  • SOMEIP_ETS_098: SD_ClientService_subscribe_without_method_call
  • [数据集][目标检测]轮胎缺陷检测数据集VOC+YOLO格式2154张4类别
  • go基础知识归纳总结
  • 【ARM compiler】生成ELF文件中包含了那些内容
  • Mertens定理(级数乘法)
  • 电脑安装Winserver2016无法安装网卡驱动(解决办法)
  • Android 12 SystemUI下拉状态栏禁止QuickQSPanel展开
  • LeetCode:977. 有序数组的平方 双指针 时间复杂度O(n)
  • 利用数据分析提升SEO排名的7种方法
  • 2018一半小结一波
  • Akka系列(七):Actor持久化之Akka persistence
  • Android系统模拟器绘制实现概述
  • CEF与代理
  • input的行数自动增减
  • JS+CSS实现数字滚动
  • JS变量作用域
  • js面向对象
  • leetcode98. Validate Binary Search Tree
  • Python利用正则抓取网页内容保存到本地
  • 入门到放弃node系列之Hello Word篇
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 正则学习笔记
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • 3月7日云栖精选夜读 | RSA 2019安全大会:企业资产管理成行业新风向标,云上安全占绝对优势 ...
  • SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解 ...
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
  • ## 基础知识
  • (2)nginx 安装、启停
  • (31)对象的克隆
  • (9)STL算法之逆转旋转
  • (二)pulsar安装在独立的docker中,python测试
  • (附源码)计算机毕业设计SSM智慧停车系统
  • (三)c52学习之旅-点亮LED灯
  • (三十)Flask之wtforms库【剖析源码上篇】
  • (四)c52学习之旅-流水LED灯
  • (转)http-server应用
  • (转)scrum常见工具列表
  • (转载)虚函数剖析
  • . NET自动找可写目录
  • ..回顾17,展望18
  • .Mobi域名介绍
  • .net core控制台应用程序初识
  • .net 前台table如何加一列下拉框_如何用Word编辑参考文献
  • .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖
  • .NET 通过系统影子账户实现权限维持
  • .NET程序员迈向卓越的必由之路
  • .NET面试题(二)
  • .vue文件怎么使用_vue调试工具vue-devtools的安装