如何使用 libtorch 实现 LeNet 网络? LeNet 网络论文地址: http://yann.lecun.com/exdb/publis/pdf/lecun-01a.pdf…
基于LeNet网络的中文验证码识别 由于公司需要进行了中文验证码的图片识别开发,最近一段时间刚忙完上线,好不容易闲下来就继上篇<基于Windows10 x64+visual Studio2013+Python2.7.12环境下的Caffe配置学习 >文章,记录下利用caffe进行中文验证码图片识别的开发过程.由于这里主要介绍开发和实现过程,CNN理论性的东西这里不作为介绍的重点,遇到相关的概念和术语请自行研究.目前从我们训练出来的模型来看,单字识别率接近96%,所以一个四字验证码的准确率大概8…
如何使用 libtorch 实现 AlexNet 网络? 按照图片上流程写即可.输入的图片大小必须 227x227 3 通道彩色图片 // Define a new Module. struct Net : torch::nn::Module { Net() { conv1 = torch::nn::Conv2d(torch::nn::Conv2dOptions(3, 96, { 11,11 }).stride({4,4})); conv2 = torch::nn::Conv2d(torch::…
Couldn't import dot_parser, loading of dot files will not be possible的问题 1 .sudo pip uninstall pyparsing 2. sudo pip install -Iv https://pypi.python.org/packages/source/p/pyparsing/pyparsing-1.5.7.tar.gz#md5=9be0fcdcc595199c646ab317c1d9a709 writing d…
本文是在windows10上安装了CPU版本的Mindspore,并在mindspore的master分支基础上使用LeNet网络训练MNIST数据集,实践已训练成功,此文为记录过程中的出现问题: (据说此时mindspore的r0.7版本上是直接执行成功的) Windows10 Miniconda 4.8.3 Python 3.7.7 MindSpore master mindspore的gitee地址 [1]首先使用conda activate mindspore 进入mindspore虚拟…
07_利用pytorch的nn工具箱实现LeNet网络 目录 一.引言 二.定义网络 三.损失函数 四.优化器 五.数据加载和预处理 六.Hub模块简介 七.总结 pytorch完整教程目录:https://www.cnblogs.com/nickchen121/p/14662511.html 一.引言 首先再次安利一篇文章,这篇文章详细介绍了如果使用一个深度神经网络去实现人脸识别,这里面对卷积.池化.全连接.激活函数都有一个较为详细的解释,看完这篇文章,再来看这篇文章,相信会有一种醍醐灌顶之效…
由于公司需要进行了中文验证码的图片识别开发,最近一段时间刚忙完上线,好不容易闲下来就继上篇<基于Windows10 x64+visual Studio2013+Python2.7.12环境下的Caffe配置学习 >文章,记录下利用caffe进行中文验证码图片识别的开发过程.由于这里主要介绍开发和实现过程,CNN理论性的东西这里不作为介绍的重点,遇到相关的概念和术语请自行研究.目前从我们训练出来的模型来看,单字识别率接近96%,所以一个四字验证码的准确率大概80%,效果还不错,完全能满足使用,如…
我们先介绍下pytorch中的cnn网络 学过深度卷积网络的应该都非常熟悉这张demo图(LeNet): 先不管怎么训练,我们必须先构建出一个CNN网络,很快我们写了一段关于这个LeNet的代码,并进行注释: # coding=utf-8 import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable class Net(nn.Module): # 定义N…
参考地址:https://ethereon.github.io/netscope/#/preset/vgg-16 按照上面的图来写即可. 论文地址:https://arxiv.org/pdf/1409.1556.pdf // Define a new Module. struct Net : torch::nn::Module { Net() { conv1_1 = torch::nn::Conv2d(torch::nn::Conv2dOptions(3, 64, { 3,3 }).paddin…
LeNet – 5网络 网络结构为: 输入图像是:32x32x1的灰度图像 卷积核:5x5,stride=1 得到Conv1:28x28x6 池化层:2x2,stride=2 (池化之后再经过激活函数sigmoid) 得到Pool1:14x14x6 卷积核:5x5,stride=1 得到Conv2:10x10x16 池化层Pool2:2x2,stride=2 (池化之后再经过激活函数sigmoid) 得到Pool2:5x5x16 然后将Pool2展开,得到长度为400的向量 经过第一个全连接层,…
一 1x1卷积 在架构内容设计方面,其中一个比较有帮助的想法是使用 1×1 卷积.也许你会好奇,1×1 的卷积能做什么呢?不就是乘以数字么?听上去挺好笑的,结果并非如此,我们来具体看看. 过滤器为 1×1 ,这里是数字 2,输入一张 6×6×1 的图片,然后对它做卷积,过滤器大小为 1×1 ,结果相当于把这个图片乘以数字 2,所以前三个单元格分别是 2. 4. 6 等等.用 1×1 的过滤器进行卷积,似乎用处不大,只是对输入矩阵乘以某个数字.但这仅仅是对于6×6×1的一个通道图片来说, 1×1…
本教程将  主要面向代码,  旨在帮助您 深入学习和卷积神经网络.由于这个意图,我  不会花很多时间讨论激活功能,池层或密集/完全连接的层 - 将来会有  很多教程在PyImageSearch博客上将覆盖  每个层类型/概念  在很多细节. 再次,本教程是您  第一个端到端的例子,您可以训练一个现实的CNN(并在实际中看到它).我们将在本系列帖子中稍后介绍激活功能,汇集层和完全连接层的细节(尽管您应该已经知道卷积运算的基本知识); 但是在此期间,只需跟随,享受教训,并  学习如何使用Python…
caffe-windows之网络描述文件和参数配置文件注释(mnist例程) lenet_solver.prototxt:在训练和测试时涉及到一些参数配置,训练超参数文件 <-----lenet_solver.prototxt-----> # The train/test net protocol buffer definition 网络配置文件的位置 net: "examples/mnist/lenet_train_test.prototxt" # 训练阶段迭代次数,这个…
1.mnist实例 ##1.数据下载 获得mnist的数据包,在caffe根目录下执行./data/mnist/get_mnist.sh脚本. get_mnist.sh脚本先下载样本库并进行解压缩,得到四个文件.  2.生成LMDB 成功解压缩下载的样本库后,然后执行./examples/mnist/create_mnist.sh. create_mnist.sh脚本先利用caffe-master/build/examples/mnist/目录下的convert_mnist_data.bin工具…
caffe在 .\examples\mnist文件夹下有一个 lenet.prototxt文件,这个文件定义了一个广义的LetNet-5模型,对这个模型文件逐段分解一下. name: "LeNet" //网络的名称是LeNet layer { //定义一个网络层 name: "data" //定义该网络层的名称为 data type: "Input" //定义网络层的类型是 输入层 top: "data" //定义网络层的输出…
我假设已经成功编译caffe,如果没有,请参考http://caffe.berkeleyvision.org/installation.html 在本教程中,我假设你的caffe安装目录是CAFFE_ROOT 一.数据准备 首先,你需要从MNIST网站下载mnist数据,并转换数据格式.可以通过执行以下命令来实现 cd $CAFFE_ROOT ./data/mnist/get_mnist.sh ./examples/mnist/create_mnist.sh 如果显示没有安装wget或者gunz…
目录 神经网络的卷积.池化.拉伸 LeNet网络结构 LeNet在MNIST数据集上应用 参考资料 LeNet是卷积神经网络的祖师爷LeCun在1998年提出,用于解决手写数字识别的视觉任务.自那时起,CNN的最基本的架构就定下来了:卷积层.池化层.全连接层.如今各大深度学习框架中所使用的LeNet都是简化改进过的LeNet-5(-5表示具有5个层),和原始的LeNet有些许不同,比如把激活函数改为了现在很常用的ReLu. 神经网络的卷积.池化.拉伸 前面讲了卷积和池化,卷积层可以从图像中提取特…
LeNet网络的结构 输入的32x32x1的单通道图片, 第一层网络: 3x3x1x6的卷积层,步长为1, padding = 1, 经过2x2的池化操作 第二层网络: 5x5x6x16的卷积层, 步长为1, padding = 2, 经过2x2的池化操作 第三层网络: 经过.view(out.size(0), -1)的尺度变化, 通过400, 120 的第一层全连接, 通过120, 84的第二层全连接, 通过84, 10的第三层全连接. LeNet.py import torch from t…
Inception 网络(Inception network) 在上节笔记中,你已经见到了所有的Inception网络基础模块.在本节笔记中,我们将学习如何将这些模块组合起来,构筑你自己的Inception网络. Inception模块会将之前层的激活或者输出作为它的输入,作为前提,这是一个28×28×192的输入,和我们之前笔记中的一样. 我们详细分析过的例子是,先通过一个1×1的层,再通过一个5×5的层,1×1的层可能有16个通道,而5×5的层输出为28×28×32,共32个通道,这就是上个…
Lenet 神经网络在 Mnist 数据集上的实现,主要分为三个部分:前向传播过程(mnist_lenet5_forward.py).反向传播过程(mnist_lenet5_backword.py). 测试过程(mnist_lenet5_test.py). 第一,前向传播过程(mnist_lenet5_forward.py)实现对网络中参数和偏置的初始化.定义卷积结构和池化结构.定义前向传播过程. #coding:utf-8 import tensorflow as tf #每张图片分辨率为28…
**本小节用到的数据下载 1.涉及语句 import d2lzh1981 as d2l 数据1 : d2lzh1981 链接:https://pan.baidu.com/s/1LyaZ84Q4M75GLOO-ZPvPoA 提取码:cf8s 2.FashionMNIST 数据集 数据2 : 为方便,可把数据直接下载下来. 为使用需 1)保持数据文件夹的路径把数据拷贝到jupyter notebook路径下 2)修改 home路径前加点 ,即'./home/kesci/input/FashionMN…
旷视MegEngine网络搭建 在 基本概念 中,介绍了计算图.张量和算子,神经网络可以看成一个计算图.在 MegEngine 中,按照计算图的拓扑结构,将张量和算子连接起来,即可完成对网络的搭建.MegEngine 提供了基于 functional 和基于 Module 的两种方式搭建网络. functional 仅提供最基本的算子功能,数据连接的工作完全由用户完成: Module 对网络模块(包含若干算子及其参数的基本单元)进行了进一步的封装,代码更易复用和维护. 基于 functional…
本文在windows下使用visual studio2013配置关联python(python-2.7.12.amd64.msi)的caffe项目,如果有耐心的人,当然可以自己去下载caffe项目自己进行编译,由于我比较懒,所以这里我利用微软自己移植的caffe进行部署,就不尝试编译官方的caffe(听说自己编译需要解决各种坑),微软移植的解决方案编译确实很方便,解决一些引用就ok了.   (一)Caffe微软官方GitHub 下载地址:https://github.com/Microsoft/…
先从一个具体的例子来开始Caffe,以MNIST手写数据为例. 1.下载数据 下载mnist到caffe-master\data\mnist文件夹. THE MNIST DATABASE:Yann LeCun et al. train-images-idx3-ubyte.gz:  training set images (9912422 bytes)  train-labels-idx1-ubyte.gz:  training set labels (28881 bytes)  t10k-ima…
源码地址 https://github.com/stephen-v/tensorflow_vgg_classify 1. VGG介绍 1.1. VGG模型结构 1.2. VGG19架构 2. 用Tensorflow搭建VGG19网络 3. 训练网络 参考文献 1. VGG介绍 1.1. VGG模型结构 VGG网络是牛津大学Visual Geometry Group团队研发搭建,该项目的主要目的是证明增加网络深度能够在一定程度上提高网络的精度.VGG有5种模型,A-E,其中的E模型VGG19是参加…
我们一般用深度学习做图片分类的入门教材都是MNIST或者CIFAR-10,因为数据都是别人准备好的,有的甚至是一个函数就把所有数据都load进来了,所以跑起来都很简单,但是跑完了,好像自己还没掌握图片分类的完整流程,因为他们没有经历数据处理的阶段,所以谈不上走过一遍深度学习的分类实现过程.今天我想给大家分享两个比较贴近实际的分类项目,从数据分析和处理说起,以Keras为工具,彻底掌握图像分类任务. 这两个分类项目就是:交通标志分类和票据分类.交通标志分类在无人驾驶或者与交通相关项目都有应用,而票…
原文: A Discriminative Feature Learning Approach for Deep Face Recognition 用于人脸识别的center loss. 1)同时学习每个类的深度特征的中心点 2)对深度特征和其对应的类中心的距离有一定的惩罚 提出的center loss函数在CNN中可以训练并且很容易优化. 联合softmax loss和center loss,可以同时增加类间分散程度(inter-class dispension)与类内紧凑程度(intra-cl…
[引言]最近接手了公司的关于虫子识别的项目,使用MXNet框架开发,但是实际用的是Deformable-ConvNets. Deformable-ConvNets为微软研究研究院提出的可变卷积网络,可用于对图像中大小不一的物体识别,不是单单识别图中的猫和狗(它们都一般大小),而识别图像中不同种类的虫子(虫子本身小,而且难以区分),在这样的场景下很适合用可变卷积Deformable-ConvNets. MXNet本身灵活,扩展性强,根据 https://github.com/msracver/De…
参考https://github.com/chenyuntc/pytorch-book/tree/v1.0 希望大家直接到上面的网址去查看代码,下面是本人的笔记 本章介绍的nn模块是构建与autograd之上的神经网络模块 除了nn外还会介绍神经网络中常用的工具,比如优化器optim.初始化init等 1.nn.Module torch的核心数据结构是Module,它是一个抽象的概念,既可以表示神经网络中的某个层,也可以表示一个包含很多层的神经网络 在实际使用中,最常见的做法是继承nn.Modu…
本文来自<A Discriminative Feature Learning Approach for Deep Face Recognition>,时间线为2016年.采用的loss是Center loss. 0 引言 通常使用CNN进行特征学习和标签预测的架构,都是将输入数据映射到深度特征(最后一层隐藏层的输出),然后到预测的标签,如图1. 在通用目标,场景和动作识别中,预测的样本归属的类别也处在训练集中,这被称为"闭集识别".因此,预测的标签能表示模型的性能,且sof…