03 2017 档案

摘要:准备数据集 准备KITTI数据集,下载地址 http://www.cvlibs.net/datasets/kitti/eval_object.php,包括的文件有: 把文件放在目录 $DIGITS_ROOT/examples/object-detection/下,然后执行命令: 数据集会被解压到 $ 阅读全文
posted @ 2017-03-31 14:51 zhoulixue 阅读(4609) 评论(1) 推荐(0) 编辑
摘要:1.voc2007数据集下载 2.利用labelImg工具生成xml文件 labelImg下载地址 注意:labelImg存放地址不能有中文,保存的xml文件的地址也不能有中文。 阅读全文
posted @ 2017-03-30 17:37 zhoulixue 阅读(2728) 评论(0) 推荐(1) 编辑
摘要:运行digits 运行mnist实例 现在来运行一个实例:mnist(名符其实的helloworld) 原始数据需要的是图片,但网上提供的mnist数据并不是图片格式的数据,因此我们需要将它转换成图片才能运行。 digits提供了一个脚本文件,用于下载mnist, cifar10 和cifar100 阅读全文
posted @ 2017-03-29 18:01 zhoulixue 阅读(634) 评论(0) 推荐(0) 编辑
摘要:1、caffemodel文件 文件名称为:bvlc_reference_caffenet.caffemodel,文件大小为230M左右,为了代码的统一,将这个caffemodel文件下载到caffe根目录下的 models/bvlc_reference_caffenet/ 文件夹下面。可以运行脚本文 阅读全文
posted @ 2017-03-29 15:03 zhoulixue 阅读(3119) 评论(0) 推荐(0) 编辑
摘要:python/draw_net.py, 这个文件,就是用来绘制网络模型的。也就是将网络模型由prototxt变成一张图片。 在绘制之前,需要先安装两个库 1、安装GraphViz 注意,这里用的是apt-get来安装,而不是pip. 2 、安装pydot 用的是pip来安装,而不是apt-get 安 阅读全文
posted @ 2017-03-29 14:47 zhoulixue 阅读(272) 评论(0) 推荐(0) 编辑
摘要:在深度学习的实际应用中,我们经常用到的原始数据是图片文件,如jpg,jpeg,png,tif等格式的,而且有可能图片的大小还不一致。而在caffe中经常使用的数据类型是lmdb或leveldb,因此就产生了这样的一个问题:如何从原始图片文件转换成caffe中能够运行的db(leveldb/lmdb) 阅读全文
posted @ 2017-03-28 17:32 zhoulixue 阅读(450) 评论(0) 推荐(0) 编辑
摘要:affe的运行提供三种接口:c++接口(命令行)、python接口和matlab接口。本文先对命令行进行解析,后续会依次介绍其它两个接口。 caffe的c++主程序(caffe.cpp)放在根目录下的tools文件夹内, 当然还有一些其它的功能文件,如:convert_imageset.cpp, t 阅读全文
posted @ 2017-03-28 17:25 zhoulixue 阅读(442) 评论(0) 推荐(0) 编辑
摘要:为了程序的简洁,在caffe中是不带练习数据的,因此需要自己去下载。但在caffe根目录下的data文件夹里,作者已经为我们编写好了下载数据的脚本文件,我们只需要联网,运行这些脚本文件就行了。 注意:在caffe中运行所有程序,都必须在根目录下进行,否则会出错 1、mnist实例 mnist是一个手 阅读全文
posted @ 2017-03-28 17:10 zhoulixue 阅读(319) 评论(0) 推荐(0) 编辑
摘要:上文提到,到目前为止,caffe总共提供了六种优化方法: Stochastic Gradient Descent (type: "SGD"), AdaDelta (type: "AdaDelta"), Adaptive Gradient (type: "AdaGrad"), Adam (type: 阅读全文
posted @ 2017-03-28 16:34 zhoulixue 阅读(579) 评论(0) 推荐(0) 编辑
摘要:solver算是caffe的核心的核心,它协调着整个模型的运作。caffe程序运行必带的一个参数就是solver配置文件。运行代码一般为 在Deep Learning中,往往loss function是非凸的,没有解析解,我们需要通过优化方法来求解。solver的主要作用就是交替调用前向(forwa 阅读全文
posted @ 2017-03-28 16:11 zhoulixue 阅读(397) 评论(0) 推荐(0) 编辑
摘要:深度网络(net)是一个组合模型,它由许多相互连接的层(layers)组合而成。Caffe就是组建深度网络的这样一种工具,它按照一定的策略,一层一层的搭建出自己的模型。它将所有的信息数据定义为blobs,从而进行便利的操作和通讯。Blob是caffe框架中一种标准的数组,一种统一的内存接口,它详细描 阅读全文
posted @ 2017-03-28 15:58 zhoulixue 阅读(246) 评论(0) 推荐(0) 编辑
摘要:本文讲解一些其它的常用层,包括:softmax_loss层,Inner Product层,accuracy层,reshape层和dropout层及其它们的参数配置。 1、softmax-loss softmax-loss层和softmax层计算大致是相同的。softmax是一个分类器,计算的是类别的 阅读全文
posted @ 2017-03-28 15:47 zhoulixue 阅读(522) 评论(0) 推荐(0) 编辑
摘要:在激活层中,对输入数据进行激活操作(实际上就是一种函数变换),是逐元素进行运算的。从bottom得到一个blob数据输入,运算后,从top输入一个blob数据。在运算过程中,没有改变数据的大小,即输入和输出的数据大小是相等的。 输入:n*c*h*w 输出:n*c*h*w 常用的激活函数有sigmoi 阅读全文
posted @ 2017-03-28 15:32 zhoulixue 阅读(377) 评论(0) 推荐(0) 编辑
摘要:视觉层(Vision Layers)包括Convolution, Pooling, Local Response Normalization (LRN), im2col等层。 1、Convolution层: 就是卷积层,是卷积神经网络(CNN)的核心层。 层类型:Convolution lr_mul 阅读全文
posted @ 2017-03-28 15:26 zhoulixue 阅读(558) 评论(0) 推荐(0) 编辑
摘要:要运行caffe,需要先创建一个模型(model),如比较常用的Lenet,Alex等, 而一个模型由多个层(layer)构成,每一层又由许多参数组成。所有的参数都定义在caffe.prototxt这个文件中。要熟练使用caffe,最重要的就是学会配置文件(prototxt)的编写。 层有很多种类型 阅读全文
posted @ 2017-03-27 21:43 zhoulixue 阅读(1415) 评论(0) 推荐(0) 编辑
摘要:实现通过外网的主机A连接内网的主机B 设置内网主机B免密登陆外网主机A 在主机B中输入下面的命令,并且一直回车: 然后会在/root/.ssh/下生成2个文件:id_rsa和id_rsa.pub。 可以用下面的命令查看: 在外网主机A中建立自己的文件夹,用来存id_rsa.pub文件。把内网主机B中 阅读全文
posted @ 2017-03-27 20:28 zhoulixue 阅读(702) 评论(0) 推荐(0) 编辑
摘要:卷积神经网络在实际中的应用 在实际训练卷积神经网络中有很多方法可以对均积神经网络进行优化。 使用线性修正单元(Using rectified linear units) 用激活函数: 来代替S型激活函数。 扩展训练数据(Expanding the training data) 插入一个额外的全连接层 阅读全文
posted @ 2017-03-22 18:13 zhoulixue 阅读(245) 评论(0) 推荐(0) 编辑
摘要:卷积神经网络(convolutional neural networks) 使用全连接的网络架构来分类图像完全没有考虑图像的空间结构。卷积神经网络使用了一个特别适用于图像分类的特殊架构。卷积神经网络采用了三种基本概念:局部感受野(local receptive fields),共项权重(shared 阅读全文
posted @ 2017-03-22 17:55 zhoulixue 阅读(349) 评论(0) 推荐(0) 编辑
摘要:在深度网络中,不同层的学习速度差异很大。例如:在网络中后面的层学习情况很好的时候,前面的层常常会在训练时停滞不前,基本上不学习了。另一种情况恰恰相反,前面的层学习的很好,后面的层却停止学习了。 这是因为基于梯度下降的学习算法的本身存在着内在的不稳定性,这种不稳定性使得前面或者后面的层的学习停止。 消 阅读全文
posted @ 2017-03-22 17:02 zhoulixue 阅读(411) 评论(0) 推荐(0) 编辑
摘要:神经网络拥有一种普遍性。不论我们想要计算什么样的函数,我们都确信存在一个神经网络可以计算它。 两个预先声明 ”神经网络可以计算任何函数“的两个预先声明: 1.这句话不是说一个网络可以被用来准确地计算任何函数。而是说,我们可以获得尽可能好一点的近似。 通过增加隐藏神经元的数量,我们可以提升近似的精度。 阅读全文
posted @ 2017-03-18 11:23 zhoulixue 阅读(804) 评论(0) 推荐(1) 编辑
摘要:在训练图像识别的深度神经网络时,使用大量更多的训练数据,可能会使网络得到更好的性能,例如提高网络的分类准确率,防止过拟合等。获取更多的训练样本其实是很好的想法。但是,这个方法的代价很大,在实践中常常是很难达到的。不过还有一种方法能够获得类似的效果,那就是人为扩展训练数据(Artificially e 阅读全文
posted @ 2017-03-17 17:21 zhoulixue 阅读(7084) 评论(2) 推荐(0) 编辑
摘要:研究背景 英文原文: Nearly half of the world depends on seafood for their main source of protein. In the Western and Central Pacific, where 60% of the world’s 阅读全文
posted @ 2017-03-17 17:19 zhoulixue 阅读(2893) 评论(0) 推荐(0) 编辑
摘要:安装git 不同环境下不同安装方法,安装完成后配置git账号: 因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。注意git config命令的–global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户 阅读全文
posted @ 2017-03-16 12:23 zhoulixue 阅读(314) 评论(0) 推荐(0) 编辑
摘要:权重初始化(Weight initialization) 之前的方式是根据独立高斯随机变量来选择权重和偏置,其被归一化为均值为0,标准差为1。 我们可以比使用归一化的高斯分布做的更好。假设我们已经使用归一化的高斯分布初始化了连接第一个隐藏层的权重。现在我将注意力集中在这一层的连接权重上,忽略网络其他 阅读全文
posted @ 2017-03-15 18:37 zhoulixue 阅读(305) 评论(0) 推荐(0) 编辑
摘要:Overfitting and regularization(过度拟合和规范化) 我们的网络在280迭代期后就不再能够推广到测试数据上。所以这不是有用的学习。我们说网络在280迭代期后就过度拟合(overfitting)或过度训练(overtraining)了。 我们的网络实际上在学习训练数据集的特 阅读全文
posted @ 2017-03-15 13:55 zhoulixue 阅读(257) 评论(0) 推荐(0) 编辑
摘要:The cross-entropy cost function(交叉熵代价函数) 二次代价函数: 二次代价函数权重和偏置的偏导数: σ函数的图像: 从图中可以看出,当神经元的输出接近1的时候,曲线变得非常平,所以σ’(z)就很小,这导致了∂C/∂w和∂C/∂b也会非常小。最终导致学习速度下降。 引入 阅读全文
posted @ 2017-03-15 12:52 zhoulixue 阅读(238) 评论(0) 推荐(0) 编辑
摘要:How the backpropagation algorithm works 反向传播的目标是计算代价函数C分别关于w和b的偏导数∂C/∂w和∂C/∂b。 反向传播的核心是一个对代价函数C关于任何权重w(或者偏置b)的偏导数∂C/∂w的表达式。这个表达式告诉我们在改变权重和偏置时,代价函数变化的快 阅读全文
posted @ 2017-03-15 11:04 zhoulixue 阅读(198) 评论(0) 推荐(0) 编辑
摘要:""" network.py ~~~~~~~~~~ A module to implement the stochastic gradient descent learning algorithm for a feedforward neural network. Gradients are calculated using backpropagation. Note that I hav... 阅读全文
posted @ 2017-03-15 10:10 zhoulixue 阅读(429) 评论(0) 推荐(0) 编辑
摘要:基于python脚本语言开发的数字图片处理包,其实很多,比如PIL,Pillow, opencv, scikit-image等。 对比这些包,PIL和Pillow只提供最基础的数字图像处理,功能有限;opencv实际上是一个c++库,只是提供了python接口,更新速度非常慢。到现在python都发 阅读全文
posted @ 2017-03-03 18:01 zhoulixue 阅读(1844) 评论(0) 推荐(0) 编辑
摘要:Python读写文件实际操作的五大步骤: 1.打开文件 说明: 第一个参数是文件名称,包括路径;第二个参数是打开的模式mode'r':只读(缺省。如果文件不存在,则抛出错误)'w':只写(如果文件不存在,则自动创建文件)'a':附加到文件末尾'r+':读写 如果需要以二进制方式打开文件,需要在mod 阅读全文
posted @ 2017-03-03 17:15 zhoulixue 阅读(519) 评论(0) 推荐(0) 编辑
摘要:1.文件操作命令 2.目录操作方法 得到当前工作的目录: 指定所有目录下所有的文件和目录名,例: 判断指定对象是否为文件。是返回True,否则False: 判断指定对象是否为目录。是True,否则False: 检验指定的对象是否存在。是True,否则False: os.path.exists() 返 阅读全文
posted @ 2017-03-03 16:53 zhoulixue 阅读(204) 评论(0) 推荐(0) 编辑
摘要:1.快速绘图 label : 给所绘制的曲线一个名字,此名字在图示(legend)中显示。只要在字符串前后添加"$"符号,matplotlib就会使用其内嵌的latex引擎绘制的数学公式。 color : 指定曲线的颜色 linewidth : 指定曲线的宽度 xlabel : 设置X轴的文字 yl 阅读全文
posted @ 2017-03-03 16:27 zhoulixue 阅读(131) 评论(0) 推荐(0) 编辑
摘要:1.最小二乘拟合 假设有一组实验数据(x[i], y[i]),我们知道它们之间的函数关系:y = f(x),通过这些已知信息,需要确定函数中的一些参数项。例如,如果f是一个线型函数f(x) = k*x+b,那么参数k和b就是我们需要确定的值。如果将这些参数用 p 表示的话,那么我们就是要找到一组 p 阅读全文
posted @ 2017-03-03 16:06 zhoulixue 阅读(313) 评论(0) 推荐(0) 编辑
摘要:1.矩阵运算 矩阵的乘积可以使用dot函数进行计算。 对于二维数组,它计算的是矩阵乘积,对于一维数组,它计算的是其点积。当需要将一维数组当作列矢量或者行矢量进行矩阵运算时,推荐先使用reshape函数将一维数组转换为二维数组: 2.文件存取 NumPy提供了多种文件操作函数方便我们存取数组内容。文件 阅读全文
posted @ 2017-03-03 15:22 zhoulixue 阅读(1703) 评论(0) 推荐(0) 编辑
摘要:先用linspace产生一个从0到2*PI的等距离的10个数, 后将其传递给sin函数,由于np.sin是一个ufunc函数,因此它对x中的每个元素求正弦值,然后将结果返回,并且赋值给y。 计算之后x中的值并没有改变,而是新创建了一个数组保存结果。如果我们希望将sin函数所计算的结果直接覆盖到数组x 阅读全文
posted @ 2017-03-03 15:09 zhoulixue 阅读(209) 评论(0) 推荐(0) 编辑
摘要:导入NumPy函数库 1.创建元素(ndarray) 创建数组: 数组的大小可以通过其shape属性获得: 在保持数组元素个数不变的情况下,改变数组每个轴的长度: 当某个轴的元素为-1时,将根据数组元素的个数自动计算此轴的长度,因此下面的程序将数组c的shape改为了(2,6): 使用数组的resh 阅读全文
posted @ 2017-03-03 11:49 zhoulixue 阅读(1244) 评论(0) 推荐(0) 编辑
摘要:1.Learning with gradient descent(使用梯度下降法进行学习) cost function(代价函数) 训练神经网络的目的是找到能最小化二次代价函数C(w,b)的权重和偏置。梯度下降: when we move the ball a small amount Δv1 in 阅读全文
posted @ 2017-03-03 10:51 zhoulixue 阅读(198) 评论(0) 推荐(0) 编辑
摘要:1.perceptrons(感知器) A perceptron takes several binary inputs ,x1,x2,...,and produce a single binary output: weights(权重):real numbers expressing the imp 阅读全文
posted @ 2017-03-02 11:34 zhoulixue 阅读(863) 评论(0) 推荐(0) 编辑
摘要:#coding=utf-8 import os path = '/opt/fish/' count = 1 for file in os.listdir(path): os.rename(os.path.join(path,file),os.path.join(path,str(count)+".jpg")) count+=1 阅读全文
posted @ 2017-03-01 19:08 zhoulixue 阅读(58906) 评论(1) 推荐(4) 编辑
摘要:#coding=utf-8 import urllib2 import os import re count=0#计数君 for line in open("./imagenet1.synset.geturls"): imagename=str(count+1) print(imagename) try: url=urllib2.url... 阅读全文
posted @ 2017-03-01 19:02 zhoulixue 阅读(285) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示