
深度学习
文章平均质量分 88
_寒潭雁影
中科大IT向博士,熟悉MFC,C++,C等语言,参与过ffmpeg、机器视觉、并行计算、数据库等相关项目的研发和代码的编写http://blog.youkuaiyun.com/weixinhum为本人博客,上面记录了本人的一些技术总结
展开
-
spconv1.2.1库的编译与安装
SpConv是一个稀疏卷积库,在点云相关的深度学习算法中用的比较多。由于目前官方升级到了2.0,然而有些算法(比如审稿人要我复现的Cylinder3D)仍需要用到1.2.1版本,因此本人花了亿点点时间折腾了一下。。。原创 2023-08-04 22:44:45 · 1750 阅读 · 0 评论 -
Pytorch1.0的(C++ & cpu)版本在Windows上的使用
之前一直用Pytorch做的网络训练,最近想看看训练出来的模型在C++上的表现(毕竟稍微注重效率的工程都用的C++写),因此花了点时间研究了一波。因为PyTorch的Python版本和C++版本使用的文件描述有区别,因此需要先把Python版本训练的模型转换成Torch Script形式(相信这一点不太方便的地方后面会被FB大佬们改掉的)。转换的代码如下:import torchimpor...原创 2019-03-15 18:28:35 · 2472 阅读 · 0 评论 -
numpy图像语义分隔评估实现
在做图像语言分隔的时候,我们往往需要计算出像素精确度,交并比等值来评估我们的算法或者神经网络的表现。本篇文章着重介绍如何用numpy实现像素精确度、平均像素精确度、平均交并比和加权的交并比的计算。在正式开始之前需要先掌握几个numpy的函数和编程技巧。bincount函数功能:实现个数的统计。示例:假设有numpy数组:x = np.array([0, 1, 1, 3, 2, 1, 7]...原创 2019-02-17 17:13:12 · 1722 阅读 · 1 评论 -
Windows与Ubuntu平台神经网络运行效率比较
最近一直在搞神经网络,因为习惯了Windows的操作,一直在Windows下看文章写东西,也就顺势在Windows下做了代码编写和训练。一开始觉得速度也就那样,没太注意,但一次因为电脑比较忙拿同样的代码到别的装了Ubuntu系统的机子上面跑,才发现它们的效率意外的相去甚远。下面放出同样的代码在两个平台下的运行速度,希望看到的人能得到些许有用信息。MXNet架构实现内容为FCN全卷积神经网络,...原创 2019-01-16 21:26:15 · 10541 阅读 · 6 评论 -
visdom简易教程
如果想用pytorch来做神经网络学习和训练,那么不管想不想,你都得学visdom这个可视化工具,因为别人全部用这个玩意在进行可视化显示,如果不会用有时甚至别人的代码都跑不起来。这里这么说似乎显得有点怨念,这是真的,因为本人一开始并不想要去搞它。但后来学着学着发现这真是个神器,难怪那么多人一上来直接要求先装上这个。要用这个先要安装,对于python模块而言,安装都是蛮简单的:pip insta...原创 2019-01-05 21:44:44 · 24057 阅读 · 15 评论 -
卷积与转置卷积
得益于神经网络崛起,卷积成为近些年大热的数学词汇,不再只是待在信号处理这门要命的课程之中。关于卷积在图像处理中的应用,操作部分看上图就明白了:假设输入图像的大小为 5 x 5,局部感受野(或称卷积核)的大小为 3 x 3,那么输出层一个神经元所对应的计算过程如上图所示。动态一点的话也可以看下面的动图。而为什么要这么算,如果学过一点图像处理就很好说明,图像处理的经典边缘提取算法如canny,...原创 2019-01-10 17:18:59 · 3258 阅读 · 0 评论 -
GAN生成对抗式神经网络实际操作
上一篇文章我们强力推导了GAN的数学公式,它就是:V=Ex∼Pdata[logD(x)]+Ex∼PG[log(1−D(x))]V = E _ { x \sim P _ { \text {data} } } [ \log D ( x ) ] + E _ { x \sim P _ { G } } [ \log ( 1 - D ( x ) ) ]V=Ex∼Pdata[logD(x)]+Ex...原创 2018-12-28 11:24:13 · 3334 阅读 · 4 评论 -
YOLO动态链接库的编译和使用
前面一篇文章我们介绍了怎么在win10下搭建Yolo v3的开发环境。这篇文章我们将着重介绍YOLO动态链接库的编译,还有如何正确的使用编译出来的Yolo动态链接库进行目标的识别。首先是编译,对应的工程是“yolo_cpp_dll.sln”,其环境的配置跟上篇文章所讲的“darknet.sln”可以说完全一样,因此不再赘述。需要注意的是这里我们直接编译“release x64”版本,不去管...原创 2018-08-07 09:52:35 · 22654 阅读 · 41 评论 -
Windows10+VS2017+CUDA 9.2+CUDNN v7.1.4+OpenCV 3.4.0+YOLO v3环境配置
CUDA 9.2+CUDNN v7.1.4的安装,基本上跟之前这篇文章的描述一致,地址如下:https://blog.youkuaiyun.com/weixinhum/article/details/80296442不同的地方在于CUDA 9.2版本没有出现之前“遇坑一”的问题。接着下载OpenCV3.4.0,准备搭建环境。要强调的是现在最新的版本是OpenCV 3.4.2,然而看github上面...原创 2018-08-06 20:18:55 · 7882 阅读 · 5 评论 -
深度学习3—用三层全连接神经网络训练MNIST手写数字字符集
上一篇文章:深度学习2—任意结点数的三层全连接神经网络 介绍了如何实现一个任意结点数的三层全连接神经网络。本篇,我们将利用已经写好的代码,搭建一个输入层、隐含层、输出层分别为784、100、10的三层全连接神经网络来训练闻名已久的mnist手写数字字符集,然后自己手写一个数字来看看网络是否能比较给力的工作。 在正式做之前,还是按照惯例讲几个会用到的知识点。 首先是mnist数...原创 2018-07-15 16:09:26 · 9573 阅读 · 8 评论 -
深度学习番外篇---WIN10+PyTorch0.4.0+CUDA9.1环境配置
不久前PyTorch0.4.0官方支持了Windows,可谓是感天动地,于是乘比较空闲的时间搭搭环境,顺便做下记录。一.下载和安装CUDA9.1+cudnn-9.1库(注意下载的时候选择好配套的版本)CUDA 地址如下: https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_...原创 2018-05-13 01:53:24 · 10607 阅读 · 1 评论 -
深度学习3番外篇---mnist数据集格式及转换
mnist是在图像机器学习占据“Hello World”地位的库。下载地址如下:http://yann.lecun.com/exdb/mnist/ 下载下来是这样的 train-images-idx3-ubyte(训练集数据,存放训练图像的集合) train-labels-idx1-ubyte(训练集标签,存放训练图像属于1~9中的哪一个) t10k-images-...原创 2017-07-10 01:20:19 · 4078 阅读 · 3 评论 -
深度学习1---最简单的全连接神经网络
本文有一部分内容参考以下两篇文章: 一文弄懂神经网络中的反向传播法——BackPropagation 神经网络 最简单的全连接神经网络如下图所示(这张图极其重要,本文所有的推导都参照的这张图,如果有兴趣看推导,建议保存下来跟推导一起看): 它的前向传播计算过程非常简单,这里先讲一下:前向传播 Y1=f(W(1)11X1+W(1)12X2+...原创 2018-02-14 02:36:04 · 70339 阅读 · 25 评论 -
深度学习0---写一个自己的深度学习架构
自从意识到深度学习是未来之后,自己看了相关的书籍三本,看了吴恩达和李飞飞两位神级人物的课程,配置了caffe,torch,pytorch等等开源架构,也跑了几个开源工程,却始终都感觉似懂非懂,实在是糟心。 经过了严肃认真的思考后,本人决定从最底层开始,自己写一个架构,进而可以深入了解深度学习的方方面面。 本篇作为系列文章的开篇总览,目的就是给自己挖个坑,以提醒自己要好好努力。并且也...原创 2018-02-06 18:21:19 · 3122 阅读 · 0 评论 -
深度学习2---任意结点数的三层全连接神经网络
上一篇文章:深度学习1—最简单的全连接神经网络 我们完成了一个三层(输入+隐含+输出)且每层都具有两个节点的全连接神经网络的原理分析和代码编写。本篇文章将进一步探讨如何把每层固定的两个节点变成任意个节点,以方便我们下一篇文章用本篇文章完成的网络来训练手写字符集“mnist”。 对于前向传播,基本上没有什么变化,就不用说了。主要看看后向传播的梯度下降公式。先放上上篇文章的网络图。 ...原创 2018-02-19 18:16:23 · 14119 阅读 · 0 评论