![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习
文章平均质量分 94
陌生的天花板
这个作者很懒,什么都没留下…
展开
-
TensorFlowLite + Armnn 实现神经网络推理
随着深度学习技术的飞速发展,越来越多的神经网络可以运行嵌入式设备上了,但是网上的教程多以安卓平台为主,这可能是因为手机平板等移动设备装机量巨大,所以大家都比较关注,而嵌入式linux上的相关资料和项目不是很多。最近由于工作需要,研究了一下这方面的东西,这里进行一下总结,也希望能过帮助到有需要的朋友。硬件平台: 安装了ubuntu20.04的x86笔记本 安装了ubuntu20.04的rk3399 arm 板目标: 在arm板上运行神经网络(ssd,...原创 2021-11-11 14:22:48 · 2913 阅读 · 2 评论 -
pytorch实战(二)CIFAR-10、ResNet-18
之前用给我们自己设计的一个3层卷积网络在CIFAR-10上进行了实验,后期发现网络参数太少,在保证泛化性能的前提下拟合能力不足,所以需要加深网络,plain网络不如res网络好,所以我们就不设计plain网络了,直接用ResNet-18来做实验。1.ResNet简介参考链接:https://blog.csdn.net/shwan_ma/article/details/78163921...转载 2019-07-08 08:01:27 · 1917 阅读 · 1 评论 -
pytorch文档阅读(六)AUTOGRAD MECHANICS 自动求导机制
AUTOGRAD MECHANICS这部内容会给大家整体地展示自动求导机制是如何工作的以及如何记录下各种操作的Excluding subgraphs from backward每一个Tensor都有一个实现pytorch核心功能的flag:requires_grad,正是因为这个flag的存在,使得在计算梯度时所用的“图”可以有很精细的划分(例如某一个Tensor不参与计算梯度)并且可...翻译 2019-06-27 10:37:50 · 257 阅读 · 0 评论 -
pytorch实战(三)CIFAR-10、DenseNet
1.DenseNet介绍文章链接:https://arxiv.org/pdf/1608.06993.pdf参考链接:https://cloud.tencent.com/developer/article/14515211)ResNet用了加法来做shortcut,这会阻碍信息传播,所以DenseNet用了concat;2)直接concat会导致输入数据channel爆炸,所以做了b...原创 2019-07-08 21:15:56 · 2652 阅读 · 2 评论 -
pytorch应用(一)如何制作数据集
1.下载fashion-mnist数据集因为是二进制文件,所以需要自己转换成图片、txt标签#调用一些和操作系统相关的函数import os#输入输出相关from skimage import io#dataset相关import torchvision.datasets.mnist as mnist#路径root="/home/s/PycharmProjec...原创 2019-06-27 21:30:41 · 9736 阅读 · 1 评论 -
kaggle学习(一)环境搭建
kaggle里的代码都是jupyter notebook 中的,我们也装一个,在python 2.7版本下安装会报字体错误,无法打开jupyter notebook所以需要安装多版本python1.多版本python环境管理器安装参考链接:https://www.linuxidc.com/Linux/2018-04/151988.htmcurl -L https://raw.gith...原创 2019-07-09 09:40:46 · 8482 阅读 · 0 评论 -
pytorch应用(二)如何进行训练
制作好数据集、设计好网络结构,接下来就是训练网络1.设置优化方法、损失函数计算方法#选择优化方法,如果对网络的参数进行了冻结,这里也可以只训练没冻结的部分,设置学习率optimizer = torch.optim.SGD(net.parameters(), lr=1e-1)#设置损失函数criterion = nn.CrossEntropyLoss()#set a loss com...原创 2019-06-28 09:47:39 · 626 阅读 · 0 评论 -
pytorch应用(三)参数初始化
1.代码中如何进行参数初始化参数初始化可以在网络结构设计时进行,例如class AlexNet(nn.Module): def __init__(self): super(AlexNet,self).__init__() ...原创 2019-06-28 11:13:42 · 3278 阅读 · 3 评论 -
pytorch应用(四)训练过程可视化visdom
visdom的安装参考链接:https://blog.csdn.net/qq_36104364/article/details/88956717https://blog.csdn.net/weixin_41735859/article/details/887772171.安装sudo pip install visdom2.打开服务器python -m visdom...转载 2019-06-28 15:35:47 · 1975 阅读 · 0 评论 -
pytorch应用(五)Loss function
很多的 loss 函数都有 size_average 和 reduce 两个布尔类型的参数,需要解释一下。因为一般损失函数都是直接计算 batch 的数据,因此返回的 loss 结果都是维度为 (batch_size, ) 的向量。如果 reduce = False,返回维度为 (batch_size, ) 的向量,input和output的element wise求loss,此时size_a...转载 2019-06-29 09:52:37 · 654 阅读 · 1 评论 -
pytorch实战(一)简单卷积网络CIFAR10图片分类
之前已经学习了:如何利用pytorch设计简单的神经网络如何制作数据集何如使用设计的网络进行训练接下来利用一个简单的1.CIFAR10数据集介绍官方网站:http://www.cs.toronto.edu/~kriz/cifar.html10个类别,每个类别6000张,一共60000张图片,50000张用来训练,10000张用来测试这里可以查看各种方法在该数据集...原创 2019-07-01 15:14:21 · 2221 阅读 · 1 评论 -
pytorch文档阅读(五)如何保存、加载网络模型
1.网络的保存torch.save()有两种方法1)仅保存网络参数torch.save(net.state_dict(), 'net_params.pkl')2)保存整个网络结构 torch.save(net, 'net.pkl')2.网络的加载1)仅加载参数model_object.load_state_dict(torch.load('net_params...原创 2019-06-26 19:55:07 · 6326 阅读 · 0 评论 -
pytorch文档阅读(四)如何在GPU上训练
1.网络模型转移到CUDA上net = AlexNet()net.cuda()#转移到CUDA上2.将loss转移到CUDA上criterion = nn.CrossEntropyLoss()criterion = criterion.cuda()这一步不做也可以,因为loss是根据out、label算出来的loss = criterion(out, label)...原创 2019-06-26 17:06:29 · 2933 阅读 · 0 评论 -
pytorch文档阅读(三)torch.optim
通过torch.nn定义好网络结构以后就要使用一定的优化方法对网络进行训练了,这涉及到优化模块torch.optim1.创建一个optimizer实例注意事项:如果需要在GPU上训练,需要在创建optimizer之前就移动到GPU上,在创建optimizer时必须保证所有待优化变量都储存在一块连续的空间内。optimizer = optim.SGD(model.parameters(...翻译 2019-06-26 14:51:07 · 229 阅读 · 0 评论 -
深度学习基本知识(一)评价方法precision\recall\mAP
1.几种类型比如我们要做一个在一堆猫狗图片中找猫的网络,那么:TruePositive(TP):真阳性,检测出是猫(1),真实情况确实是猫(1)FalsePositive(FP):假阳性,检测出是猫(1),真实情况是狗(0)TrueNegative(TN):真阴性,检测出是狗(0),真实情况是狗(0)FalseNegative(FN):假阴性,检测出是狗(0),真实情况是猫(1...转载 2019-06-21 16:33:24 · 2485 阅读 · 0 评论 -
pytorch文档阅读(一)torch.nn.Containers
1.torch.nn是专门为深度学习设计的模块,所以一般进行网络设计时都必须先import torch.nn下面是torch.nn中包含的一些子模块接下来介绍其中比较重要的几个2.Containers顾名思义,容器,都是一些装东西的类1)Modulemodule是神经网络的基类,我们自己设计的网络都需要继承自这个基类,module也可以包含其他module(关于...翻译 2019-06-26 09:20:58 · 209 阅读 · 0 评论 -
pytorch文档阅读(二)torch.nn.Convolution layers
1.模块功能简介这个模块就是torch为我们设计好的一些层结果,比如我想给网络加一个卷积层,直接用这个模块里的函数就可以实现,而不像低级语言需要自己编写层间的矩阵乘法以及变量的储存等工作,极大提高了网络搭建的效率。一行代码就可以给网络添加一个二维卷积层: self.conv1 = nn.Conv2d(3, 6, 5) Convolution layers模块包含的子模块...翻译 2019-06-26 10:14:01 · 366 阅读 · 0 评论