- 博客(13)
- 资源 (23)
- 收藏
- 关注
原创 《视觉SLAM十四讲》书籍图片资源
chapter22-12-22-32-42-52-62-82-92-102-112-122-132-14chapter33-13-23-33-4chapter44-1chapter55-15-25-55-65-75-9chapter66-16-26-3chapter77-27-37-47-57-67-77-87-97-107-117-127-13chapter88-18-28-38-48-58-68
2017-04-29 12:23:28 6099 2
原创 c++知识
虚函数多态性是面向对象语言的基本特征,多态性可以简单地概括为“一个接口,多种方法”。多态性分为静态多态性(编译过程中绑定)和动态多态性。 函数重载(和运算符重载)属于静态多态性,一个函数名(调用接口)对应着几个不同的函数原型(方法)。 虚函数属于动态多态性,对比如下: 通过对象名访问虚函数时,调用哪个类的函数取决于定义对象名的类型(对象类型是基类时,就调用基类的函数;对象类型是子类时,就调用子
2017-04-26 16:30:30 951
原创 Python实用操作
函数参数默认参数定义时:必选参数在前,默认参数在后。 调用时:多个默认参数间没有顺序# 定义def enroll(name, gender, age=6, city='Beijing'): ...# 调用enroll('Adam', 'M', city='Tianjin')可变参数可变参数用于应对函数参数个数不确定的情况,当然这种情况也可以不嫌麻烦地把参数作为list或tuple传进来
2017-04-25 15:01:48 1452
原创 经典卷积神经网络介绍
AlexNet 2012年,Hinton的学生Alex Krizhevsky提出了深度卷积神经网络模型AlexNet,获得当年ILSVRC(Image Large Scale Visual Recognition Challenge)比赛分类项目的冠军。AlexNet主要使用到的新技术如下:a) 成功使用ReLU作为CNN的激活函数,并验证了其在较深网络中的有效性,解决了Sigmod在网络较深时的
2017-04-22 19:08:43 7510
原创 为什么会出现Batch Normalization层
训练模型时的收敛速度问题众所周知,模型训练需要使用高性能的GPU,还要花费大量的训练时间。除了数据量大及模型复杂等硬性因素外,数据分布的不断变化使得我们必须使用较小的学习率、较好的权重初值和不容易饱和的激活函数(如sigmoid,正负两边都会饱和)来训练模型。这样速度自然就慢了下来。下面先简单示例一下数据分布的不断变化为什么会带来这些问题,如图: 我们使用Wx+b=0对小黄和小绿进行分类。由于
2017-04-21 16:36:12 9508 1
原创 tensorflow实现迁移学习
此例程出自《TensorFlow实战Google深度学习框架》6.5.2小节 卷积神经网络迁移学习。 数据集来自http://download.tensorflow.org/example_images/flower_photos.tgz ,及谷歌提供的Inception-v3模型https://storage.googleapis.com/download.tensorflow.org/mode
2017-04-19 19:24:57 27325 45
原创 tensorflow实现LeNet-5模型
此例程出自《TensorFlow实战Google深度学习框架》6.4.1小节 经典卷积网络模型之LeNet-5模型,具体可搜索“LeNet-5, convolutional neural networks”。 例程中的网络模型与原始LeNet-5模型不太一样,网络结构如下:INPUT: [28x28x1] weights: 0CONV5-32: [28x28x32]
2017-04-17 21:23:42 19804 6
原创 TensorFlow最佳实践样例程序
此例程出自《TensorFlow实战Google深度学习框架》第5章 MNIST数字识别问题,很好的一个例子。工程目录:-mnist_best -dataset //存放数据集的文件夹,可以http://yann.lecun.com/exdb/mnist/下载 -model //存放模型的文件夹 -mnist_eval.py //定义了测试过程 -mnist_
2017-04-16 23:23:03 10541 7
原创 为什么使用卷积层替代CNN末尾的全连接层
原本CNN网络的经典结构是: 卷积层——>池化层——>……——>全连接层FCN的出现为什么要把CNN网络最后的全连接层特换为卷积层?或者换句话说这样会带来什么好处呢? 1. 首先,说一下卷积层和全连接层的区别:卷积层为局部连接;而全连接层则使用图像的全局信息。可以想象一下,最大的局部是不是就等于全局了?这首先说明全连接层使用卷积层来替代的可行性。 2. 然后,究竟使用卷积层代替全连接层会带来什
2017-04-16 11:32:50 22911
原创 tensorflow常用函数及概念
命令式编程与声明式编程命令式编程(imperative programming):每个语句都按原来的意思执行,可以精确控制行为。通常可以无缝的和主语言交互,方便的利用主语言的各类算法,工具包,bug和性能调试器。缺点是实现统一的辅助函数困和提供整体优化都很困难。比如numpy和Torch。 声明式语言(declarative programing):用户只需要声明要做什么,而具体执行则由系统完成。
2017-04-15 00:25:34 12620 4
原创 为什么“Pretrained+Fine-tuning”
Deep Learning或者说CNN在图像识别这一领域取得了巨大的进步,那么自然我们就想将CNN应用到我们自己的数据集上,但这时通常就会面临一个问题:通常我们的dataset都不会特别大,一般不会超过1万张,甚至更少。这种情况下,直接使用train from scratch的方式在小数据集上容易过拟合,尤其是在数据分布差异化很大的场景下。然后就有了迁移学习了,Transfer Learning关心
2017-04-13 11:43:11 5704 1
原创 为什么“卷积”神经网络
一直在接触卷积神经网络,今天就说一下为什么会有卷积,卷积会带来什么好处和CNN中如何使用卷积。为什么会有卷积(这里主要解释下卷积具有什么意义,为什么人们会想到卷积。有些人一提到卷积可能首先想起来的是局部连接、参数共享呀等等,这些只是它带来的好处。如果一个方法对于我们的问题本身没有什么意义,即使它会带来一大堆的好处人们应该也是不会去使用的。)19世纪60年代,科学家通过对猫的视觉皮层细胞研究发现,每一
2017-04-12 22:40:52 10714 1
原创 位运算
基础知识位运算是把数字用二进制表示之后,对每一位上0或1的运算。位运算总共只有5种运算:与、或、异或、左移和右移。对于异或操作,需要注意一下0^0=0; 1^1=0; 1^0=1。应用:二进制中1的个数题目:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。例如把9表示成二进制是1001,有2位是1.因此如果输入9,该函数输出2。 分析对于负数1000 0000右移一位的时候,得到110
2017-04-09 00:15:52 868
Machine_Learning_Yearning_V0.5_01
2016-12-08
CS231n课程知识点汇总(lecture1-5).docx
2016-11-18
OpenCV3编程入门_毛星云编著
2015-12-05
基于Activex控件的C++、C#混合编程
2015-11-07
扫雷程序源码
2015-06-12
VS2010 VC++创建.rc资源文件(二)
2015-06-07
VS2010 VC++创建.rc资源文件(一)
2015-06-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人