lenet

caffe---mnist数据集训练与测试

时间秒杀一切 提交于 2020-01-04 16:37:26
1、数据。mnist_test_lmdb和mnist_train_lmdb数据 2、路径。 (1)修改lenet_train_test.prototxt文件,训练和测试两处 source: "....省略/examples/mnist/mnist-train-leveldb" //写上你的绝对路径 backend: LEVELDB //格式改成LEVELDB(2)修改lenet_solver.prototxt文件: net: "....省略/examples/mnist/lenet_train_test.prototxt" //绝对路径 snapshot_prefix: "....省略/examples/mnist/lenet" //绝对路径 solver_mode: CPU //CPU模式 3、右键caffe打开属性: 在Command Arguments输入: train --solver=前面的绝对路径/mnist/lenet_solver.prototxt 4、 确定后debug caffe,大功告成! 1、训练完后,会生成lenet_iter_5000.caffemodel,lenet_iter_5000.solverstate,lenet_iter_10000.caffemodel,lenet_iter_10000.solverstate四个文件 2、产生均值文件

模型创建初步

不羁岁月 提交于 2019-12-28 11:27:53
模型创建初步 实例LeNet: 计算图的角度: 构建模型两要素: LeNet构建子模块 LeNet的forward函数细节(拼接子模块) 来源: CSDN 作者: Major_s 链接: https://blog.csdn.net/qq_41375318/article/details/103641794

LeNet网络

三世轮回 提交于 2019-12-09 18:20:07
LeNet网络 导入必要的工具包 import time import torch from torch import nn , optim 添加文件路径 import sys sys . path . append ( ".." ) import d2lzh_pytorch as d2l device = torch . device ( 'cuda' if torch . cuda . is_available ( ) else 'cpu' ) 构造神经网络层 class LeNet ( nn . Module ) : def __init__ ( self ) : super ( LeNet , self ) . __init__ ( ) self . conv = nn . Sequential ( nn . Conv2d ( 1 , 6 , 5 ) , nn . Sigmoid ( ) , nn . MaxPool2d ( 2 , 2 ) , nn . Conv2d ( 6 , 16 , 5 ) , nn . Sigmoid ( ) , nn . MaxPool2d ( 2 , 2 ) ) self . fc = nn . Sequential ( nn . Linear ( 16 * 4 * 4 , 120 ) , nn . Sigmoid ( ) , nn .

动手学PyTorch | (23) AlexNet

孤人 提交于 2019-12-08 14:46:53
在LeNet提出后的将近20年里,神经⽹络⼀度被其他机器学习⽅法超越,如支持向量机。虽然LeNet可以在早期的⼩数据集上取得好的成绩,但是在更大的真实数据集上的表现并不尽如人意。⼀⽅面,神经⽹络计算复杂。虽然20世纪90年代也有过⼀一些针对神经网络的加速硬件,但并没有像之后GPU那样⼤量普及。因此,训练⼀个多通道、多层和有大量参数的卷积神经网络在当年很难完成。另⼀方面,当年研究者还没有⼤量深⼊研究参数初始化和⾮凸优化算法等诸多领域,导致复杂的神经网络的训练通常较困难。 我们在上一节看到,神经网络可以直接基于图像的原始像素进行分类。这种称为端到端(end-to- end)的⽅法节省了很多中间步骤。然而,在很长⼀段时间里更流行的是研究者通过勤劳与智慧所设计并⽣成的⼿工特征(特征工程)。这类图像分类研究的主要流程是: 1)获取图像数据集 2)使用已有的特征提取函数生成图像的特征 3)使用机器学习模型对图像的特征分类 当时认为的机器学习部分仅限最后这一步。如果那时候跟机器学习研究者交谈,他们会认为机器学习既􏰁重要又优美。优雅的定理证明了许多分类器的性质。机器学习领域生机勃勃、严谨⽽且极其有用。然而,如果跟计算机视觉研究者交谈,则是另外⼀一幅景象。他们会告诉你图像识别⾥“不可告⼈”的现实是:计算机视觉流程中真正􏰁重要的是数据和特征。也就是说,使用较⼲净的数据集和较有效的特征甚⾄

一目了然卷积神经网络 - An Intuitive Explanation of Convolutional Neural Networks

冷暖自知 提交于 2019-12-05 07:14:14
前言:简单翻译了一篇介绍卷积网络的文章,以学习了解卷积网络运行机制。 An Intuitive Explanation of Convolutional Neural Networks 原文地址: https://ujjwalkarn.me/2016/08/11/intuitive-explanation-convnets/comment-page-4/?unapproved=31867&moderation-hash=1ac28e426bc9919dc1a295563f9c60ae#comment-31867 一、什么是卷积神经网络、为什么卷积神经网络很重要?   卷积神经网络<Convolutional Neural Networks>简称ConvNets 或CNNs 属于分类神经网络,在某些领域已经被验证非常有效,比如图像识别、分类领域。ConvNets 不仅仅在人脸、物体、交通标志识别成功而且还助力于机器视觉与自动驾驶。 图 1: 来源 [ 1 ]   在上图 图1 中ConvNet 可以识别场景并且系统可以建立相关关联(“一个足球运动员在踢足球”),然而在下图 图2 的示例中展示了ConvNets 用于识别物体、人和动物。最近,ConvNets 在某些自然语言处理任务(例如句子分类)中也有效。[ 注:微软小冰、苹果Siri 等,读者也可以调用微软AI搭建自己的应用程序

SIGAI深度学习第八集 卷积神经网络2

百般思念 提交于 2019-12-04 01:00:44
讲授Lenet、Alexnet、VGGNet、GoogLeNet等经典的卷积神经网络、Inception模块、小尺度卷积核、1x1卷积核、使用反卷积实现卷积层可视化等。 大纲: LeNet网络 AlexNet网络 VGG网络 GoogLeNnet网络 反卷积可视化 数学特性 根据卷积结果重构图像 本集总结 LeNet网络: LeNet-5网络是Y.LeCun1998年提出来的,现在尊称Y.LeCun为卷积神经网络之父,后来他去了Facebook的AI实验室。 这是第一个广为传播的卷积网络,规模很小,但五脏俱全(卷积、池化、全连接层都有),用于手写文字的识别,采用了标准的卷积层,池化层,全连接层结构,此后各种卷积网络的设计都借鉴了它的思想。 这篇文章提出的方法并没有大规模的被使用和广泛地引起关注,当时是SVM、AdaBoost占据优势,从1998年LeNet出现以后到2012年AlexNet出现,之间的十几年里边,卷积神经网络并没有得到很好的发展。 LeNet网络的结构: MINIST数据集,两个卷积层、两个池化层、一些全连接层,输入图像32×32的灰度图像,第一个卷积层的卷积核的尺寸是5×5的六组卷积核,第一层卷积之后,得到6张(6通道)28×28的图像,再经过2×2的池化层变为6张14×14的图像。 第二个卷积层为16组卷积核,卷积核尺寸也是5×5的

从LeNet-5到NasNet

匿名 (未验证) 提交于 2019-12-03 00:25:02
LeNet-5 : input:输入图片,32*32像素; C1:5*5卷积核,生成6个feature maps,共需要(6*5*5 + 6)=156个参数; S2:2*2个像素相加,然后乘以一个参数,加上一个偏置,共计2*6=12个参数; C3:5*5卷积核,生成16个feature maps,每个feature map由S2中若干个feature maps卷积得到,如图Table1所示; S4:和S2相同的操作,共计16*2 = 32个参数; C5:与S4全连接,共计(5*5*16*120+120)=48120个参数; F6:与C5全连接,共计(120*84+84) = 10164 个参数; output: 与F6全连接。 附:下图是keras自动生成的网络图,正如图所示在平均池化层中是没有参数的。这与Le net原始论文不同。 Alex net: VGGNet: 堆叠多个小的卷积核而不使用池化操作可以增加网络的表征深度,同时限制参数的数量。 vgg16和vgg19都有5个block块,每个block块有一个MaxPooling2D,是特征图缩小两倍。共缩小32倍。卷机层与全连接层相连接时先进行了扁平化处理,然后连接看了两个4096的全连接,最后再接一个softmax分类函数。如果不加全连接层,在keras中会对特征进行全局平均池化以防止过拟合。 优点: 1.参数量减少了 81

12大经典CNN模型的架构(1)

爷,独闯天下 提交于 2019-11-29 12:06:35
从LeNet 到AlexNet 到VGGNet LeNet LeNet是第一个真正意义上的卷积神经网络模型,LeNet5在识别手写数字中取得了非常好的成绩 结构:3个卷积层,2个池化层,2个全连接层。卷积层的卷积核都为5*5,stride-1,池化层都为Maxpooling,激活函数都为sigmoid AlexNet 网络比LeNet更深,结构包括五个卷积层和3个全连接层 使用ReLu激活函数,收敛速度很快,克服了sigmoid函数在网络较深时出现的梯度发散现象 加入Dropout层,防止过拟合 使用了归一化层,增强了模型的泛化性能 使用了裁剪翻转等操作做数据增强 分块训练 VGGNet 增加了网络的深度,证明了使用更小的卷积核且增加网络的深度可以有效改变模型的性能。 参考资料:“有三AI”公众号 来源: https://blog.csdn.net/qq_40330604/article/details/100806490

Pytorch的网络结构可视化(tensorboardX)(详细)

ⅰ亾dé卋堺 提交于 2019-11-29 00:25:44
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/xiaoxifei/article/details/82735355 最近刚刚发现一个非常好用的显示模型神器Netron https://github.com/lutzroeder/Netron 借助这个工具可以像windows的软件一样导入已经训练好的模型加权重即可一键生成 我目前看了下visdom实现pytorch的网络结构查找还是很困难,在stackflow上有很多人使用自己编写的基于matplotlib来实现网络结构可视化适用性也不是很好,后来查找到使用基于tensorboard所开发的tensorboardX可以很方便的实现pytorch网络结构的可视化,因此决定采用这种方式。 1. tensorboardX的简介 tensorboardX的项目路径:https://github.com/lanpa/tensorboardX tensorboardX是基于tensorboard的思想用来写tensorboard events的工具,可以实现对传统的tensorboard中 scalar,image,figure,histogram,audio,text,graph,onnx_graph等事件进行编写。

几种网络LeNet、VGG Net、ResNet原理及PyTorch实现

早过忘川 提交于 2019-11-27 12:30:24
LeNet比较经典,就从LeNet开始,其PyTorch实现比较简单,通过LeNet为基础引出下面的VGG-Net和ResNet。 LeNet LeNet比较经典的一张图如下图 LeNet-5共有7层,不包含输入,每层都包含可训练参数;每个层有多个Feature Map,每个FeatureMap通过一种卷积滤波器提取输入的一种特征,然后每个FeatureMap有多个神经元。 1.INPUT层-输入层 输入图像的尺寸统一归一化为: 32 x 32。 2.C1层 卷积层 输入图片:32 x 32 卷积核大小:5 x 5 卷积核种类:6 输出featuremap大小:28 x 28 (32-5+1)=28 神经元数量:28 x 28 x 6 可训练参数:(5 x 5+1) x 6(每个滤波器5 x 5=25个unit参数和一个bias参数,一共6个滤波器) 连接数:(5 x 5+1) x 6 x 28 x 28=122304 3.S2层 池化层(下采样层) 输入:28 x 28 采样区域:2 x 2 采样方式:4个输入相加,乘以一个可训练参数,再加上一个可训练偏置。结果通过sigmoid 采样种类:6 输出featureMap大小:14 x14(28/2) 神经元数量:14 x 14 x 6 可训练参数:2 x 6(和的权+偏置) 连接数:(2 x 2+1) x 6 x 14 x 14