深度学习
文章平均质量分 86
码农呆呆
擅长单片机开发,驱动开发,应用软件,深度学习相关开发
展开
-
pytorch深度学习入门(17)之-实现演示神经网络分类过程代码
笔者使用pytorch框架构建神经网络,使用matplotlib显示网络分类过程,生动的演示了网络拟合过程先看效果图:最终训练300次后拟合效果:2.生成数据3.构建网络定义网络:因为是二维平面的演示,因此数据维度是2,数据分别对应x坐标,y坐标因此网络输入维度为(batch_size,2)定义网络:4.显示拟合过程训练过程中,使用matplotlib显示拟合过程最终效果图附上完整代码,可以拷贝直接运行喜欢点个关注吧!原创 2023-11-30 11:58:19 · 536 阅读 · 0 评论 -
pytorch深度学习入门(16)之-使用onnx模型混合精度Float16量化
将模型转换为使用 float16 而不是 float32 可以减小模型大小(最多一半)并提高某些 GPU 上的性能。可能会有一些精度损失,但在许多模型中,新的精度是可以接受的。ORT 将在运行时优化这对,因此结果将保持全精度。混合精度工具的工作原理是将操作集群转换为 float16。如果 float16 转换的结果很差,您可以将大部分操作转换为 float16,但保留一些操作为 float32。由于 ONNX Runtime 的 CPU 版本不支持 float16 运算,并且该工具需要测量精度损失,因此。原创 2023-11-17 17:51:22 · 1362 阅读 · 0 评论 -
pytorch深度学习入门(15)之-使用onnx模型量化
让我们使用 U8U8 作为 (activations :uint8,权重:uint8),U8S8(激活:uint8,权重:int8),类似地S8U8和S8S8用于其余两种格式。该问题的解决方案是将原始计算图的权重和激活张量与量化图的权重和激活张量进行比较,确定它们最大的不同之处,并避免量化这些张量,或者选择另一种量化/校准方法。动态量化和静态量化之间的主要区别在于如何计算激活的尺度和零点。然而,量化过程中的模型优化给调试过程带来了困难,因为它可能会显着改变计算图,导致量化模型与原始模型截然不同。原创 2023-11-17 17:45:07 · 708 阅读 · 0 评论 -
pytorch深度学习入门(14)之-模型量化
本文讲述了pytorch模型量化,减少空间存储,方便在边缘计算场景部署原创 2023-11-16 17:59:55 · 405 阅读 · 0 评论 -
pytorch深度学习入门(13)之-模型剪枝
prune.l1_unstructured(module, name="weight", amount=nWeightAmcount) #L1范数剪枝,既绝对值最小的权重移除prune.ln_structured(module, name="weight", amount=nFeatureAmcount, n=2, dim=0) #结构化剪枝,移除卷积核。原创 2023-11-16 17:42:36 · 862 阅读 · 1 评论 -
pytorch深度学习入门(12)之-神经网络导出onnx模型部署与应用
TorchDynamo 引擎用于连接 Python 的框架评估 API 并将其字节码动态重写为FX 图表。生成的 FX 图表在最终转换为 ONNX 图表之前经过打磨。这种方法的主要优点是使用字节码分析捕获FX 图,从而保留模型的动态特性,而不是使用传统的静态跟踪技术。原创 2023-11-15 17:58:07 · 778 阅读 · 0 评论 -
pytorch深度学习入门(11)之-GAN生成对抗神经网络
概述:GAN网络是一种对抗神经网络,由生成器和判别器两个网络组成。生成器的任务是生成与真实数据相似的虚假数据,而判别器的任务是判断输入数据是真实数据还是虚假数据。在训练过程中,生成器和判别器会相互对抗,生成器会努力生成与真实数据相似的虚假数据来欺骗判别器,而判别器则会尽可能提高自己的判断准确性。GAN网络的训练过程通常包括以下几个步骤:生成器生成虚假数据,并将其输入到判别器中进行判断。判别器对输入数据进行分类,并计算分类误差。根据分类误差,更新判别器的参数,以提高其分类准确率。生成器根据判别器的反馈信息,原创 2023-11-15 17:46:48 · 276 阅读 · 0 评论 -
pytorch深度学习入门(10)之-使用TORCHVISION进行机器视觉迁移学习
使用经过训练的模型对自定义图像进行预测,并将预测的类标签与图像一起可视化。原创 2023-11-14 14:52:19 · 86 阅读 · 0 评论 -
pytorch深度学习入门(9)之-使用TORCHVISION进行目标检测
用于训练对象检测、实例分割和人物关键点检测的参考脚本可以轻松支持添加新的自定义数据集。数据集应继承自标准 torch.utils.data.Dataset类,并实现__len__和getitem。我们需要的唯一特殊性是数据集__getitem__ 应返回一个元组:image:torchvision.tv_tensors.Imageshape 、纯张量或 size 的 PIL 图像[3, H, W](H, W)target:包含以下字段的字典。原创 2023-11-14 11:49:36 · 2342 阅读 · 1 评论 -
pytorch深度学习入门(8)之-Torchaudio使用Tacotron2 文本转语音
本教程展示了如何使用 torchaudio 中预训练的 Tacotron2 构建文本到语音管道。Tacotron2是一个端到端的语音合成神经网络结构,它由两部分组成,一部分由循环神经网络组成,应用Attention机制,自回归地产生mel谱序列,另一部分是修改后的Wavenet,将mel谱序列映射成音频。在Tacotron2中,首先使用50毫秒帧长,12.5毫秒帧移,汉宁窗截取,然后施加短时傅里叶变换(STFT)得出线性频谱。原创 2023-11-13 17:43:26 · 1169 阅读 · 0 评论 -
pytorch深度学习入门(7)之-Torchaudio语音识别
语音识别是一种让机器通过识别和理解过程把语音信号转变为相应文本或命令的高技术。它涉及信号处理、模式识别、概率论和信息论、发声机理和听觉机理、人工智能等多个领域。近二十年来,语音识别技术取得了显著的进步,开始从实验室走向市场,预计未来10年内,语音识别技术将进入工业、家电、通信、汽车电子、医疗、家庭服务、消费电子产品等各个领域。本教程将向您展示如何正确格式化音频数据集,然后在数据集上训练/测试音频分类器网络原创 2023-11-10 18:13:42 · 1939 阅读 · 1 评论 -
pytorch深度学习入门(6)之-Torchaudio音频采样
重采样的原因可能是由于从网络流、本地媒体文件等各种渠道解码的AVFrame帧,其采样位数、声道数、采样率都是不确定的,但是在很多的播放器框架中,需要播放指定的采样位数、声道数、采样率的音频数据,因此需要首先进行格式转换。由于有限数量的样本只能代表有限数量的频率,因此重采样不会产生完美的结果,并且可以使用多种参数来控制其质量和计算速度。下面的频谱图显示了信号的频率表示,其中 x 轴对应于原始波形的频率(以对数刻度表示),y 轴对应于绘制波形的频率,颜色强度对应于幅度。原创 2023-11-10 17:31:23 · 1360 阅读 · 1 评论 -
pytorch深度学习入门(5)之-Torchaudio音频加载
Torchaudio是一个用于处理音频数据的Python库,它是基于PyTorch的扩展库,提供了丰富的音频处理功能和一系列预处理方法,方便用户在音频领域进行机器学习和深度学习的研究。具体来说,Torchaudio提供了从音频文件的读取到加载,音频变换和增强,以及音频数据可视化的整套工具。此外,Torchaudio还集成了一些常见的音频数据集,方便用户快速获取和处理音频数据。在安装方面,首先需要安装PyTorch,可以通过pip install torch命令来安装最新版本。原创 2023-11-10 17:04:18 · 4745 阅读 · 2 评论 -
pytorch深度学习入门(4)之-优化模型参数与保存加载模型
Number of Epochs - 迭代数据集的次数Batch Size - 参数更新之前通过网络传播的数据样本数量。原创 2023-11-09 17:50:24 · 94 阅读 · 1 评论 -
pytorch深度学习入门(3)之-构建自己的神经网络模型
我们通过子类化来定义我们的神经网络nn.Module,并在 中初始化神经网络层__init__。每个nn.Module子类都在方法中实现对输入数据的操作forward。nn.ReLU(),nn.ReLU(),我们创建 的一个实例神经网络模型,并将其移动到device(cpu或者gpu),并打印其结构。为了使用该模型,我们将输入数据传递给它。这将执行模型的forward以及一些后台操作。不要直接调用model.forward()!原创 2023-11-09 15:53:32 · 225 阅读 · 1 评论 -
pytorch深度学习入门(2)之-张量与数据集加载
张量是一种特殊的数据结构,与数组和矩阵非常相似。在 PyTorch 中,我们使用张量对模型的输入和输出以及模型的参数进行编码。张量与NumPy 的ndarray类似,不同之处在于张量可以在 GPU 或其他硬件加速器上运行。事实上,张量和 NumPy 数组通常可以共享相同的底层内存,从而无需复制数据,张量还针对自动微分进行了优化,如果您熟悉 ndarrays,那么您就会熟悉 Tensor API。如果没有,那就跟随吧!初始化张量张量可以通过多种方式初始化。看看下面的例子:直接来自数据。原创 2023-11-08 19:34:05 · 121 阅读 · 1 评论 -
pytorch深度学习入门1之-快速上手数字识别
本文介绍了pytorch深度学习框架,快速入门上手手写数字识别原创 2023-11-08 14:48:05 · 190 阅读 · 1 评论