CNN Notes [001]

CNN卷积神经网络关键点:

{1} 非全连接的网络(稀疏网络),相比于BP神经网络(全连接的网络),当然CNN也可以有一部分层是全连接层。

{2} 权重共享(权重系数相同),也即是卷积核相同(与位置无关),1个卷积核。1个卷积核对应一个特征映射,进行一种特征提取,得到
一个特征提取图,当然一层可以布置多个卷积核。

{3} 卷积过程就是求权重和过程,权重矩阵就是卷积核。

{4} CNN是一种监督学习算法。

{5} CNN层可以分为特征提取层(卷积层)、特征计算层(采样层)、输入层、全连接层、输出层。

{6} CNN具有位置、尺度、形变不变性。

{7} CNN算法的关键是训练过程,也就是学习过程。

{8} 需要训练的参数,
卷积层:(1)卷积核权重系数,(2)卷积核偏移量,
采样层:(1)采样权重系数,(2)采样偏移量,

{9} CNN算法最初是针对二维手写体图像设计的。

{10} CNN训练的并行学习策略,主要体现在同一层不同卷积核之间独立并行?还是其他策略?

时间: 2024-09-30 03:17:57

CNN Notes [001]的相关文章

用tensorflow搭cnn - notes

一次进步一点点,滴水穿石头...估计我也老了 上一层的feature maps被一个可学习的卷积核进行卷积 mj是输入的点, 对于每一个输出对点,都有一个完全不同对卷积核 所以我猜, W就是这里的k, 是要学习和更新的权重,一个卷积核就是一块区域(4x4=16)对应一个核(16个参数),再加上一个b 两个核就是会生成两个不同的output点,两个不同的核,参数又翻倍 如果stride=1,那么一个32x32的图片就有,28x28个小区域,每个区域3个卷积核的话,就有28x28x3x16个参数,爆

深度卷积网络CNN与图像语义分割

转载请注明出处: http://xiahouzuoxin.github.io/notes/ 级别1:DL快速上手 级别2:从Caffe着手实践 级别3:读paper,网络Train起来 级别3:Demo跑起来 读一些源码玩玩 熟悉Caffe接口,写Demo这是硬功夫 分析各层Layer输出特征 级别4:何不自己搭个CNN玩玩 级别5:加速吧,GPU编程 关于语义分割的一些其它工作 说好的要笔耕不缀,这开始一边实习一边找工作,还摊上了自己的一点私事困扰,这几个月的东西都没来得及总结一下.这就来记录

Notes : <Hands-on ML with Sklearn & TF> Chapter 5

.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px solid #000; } .table { border-collapse: collapse !important; } .table td, .table th { background-color: #fff !important; } .table-bordered th, .table-bordere

Neural Networks Learning----- Stanford Machine Learning(by Andrew NG)Course Notes

本栏目内容来自Andrew NG老师的公开课:https://class.coursera.org/ml/class/index 一般而言, 人工神经网络与经典计算方法相比并非优越, 只有当常规方法解决不了或效果不佳时人工神经网络方法才能显示出其优越性.尤其对问题的机理不甚了解或不能用数学模型表示的系统,如故障诊断.特征提取和预测等问题,人工神经网络往往是最有利的工具.另一方面, 人工神经网络对处理大量原始数据而不能用规则或公式描述的问题, 表现出极大的灵活性和自适应性. 神经网络模型解决问题的

tensorflow训练自己的数据集实现CNN图像分类

利用卷积神经网络训练图像数据分为以下几个步骤 读取图片文件 产生用于训练的批次 定义训练的模型(包括初始化参数,卷积.池化层等参数.网络) 训练 1 读取图片文件 1 def get_files(filename): 2 class_train = [] 3 label_train = [] 4 for train_class in os.listdir(filename): 5 for pic in os.listdir(filename+train_class): 6 class_train

TensorFlow实战之CNN实现对鸡蛋的分类

本文标签: TensorFlow TensorFlow实战之CNN 3.1问题分析 为了评估N个鸡蛋中是否有圈养鸡蛋,我们利用卷积神经网络(CNN)让计算机学习圈养鸡蛋和土鸡蛋图片的特征,然后根据鸡蛋的图片将其分类.通过对图片的预处理,将其转化为32*32相同大小的图片.在神经网络加载数据之后,会将其转化为32*32*3的数组.然后通过卷积和池化等一系列操作提取出图片的特征.以达到对鸡蛋进行分类的目的.我们主要用Python语言在TensorFlow中构建卷积神经网络(CNN),让CNN学习圈养

Tensorflow的CNN教程解析

之前的博客我们已经对RNN模型有了个粗略的了解.作为一个时序性模型,RNN的强大不需要我在这里重复了.今天,让我们来看看除了RNN外另一个特殊的,同时也是广为人知的强大的神经网络模型,即CNN模型.今天的讨论主要是基于Tensorflow的CIFAR10教程,不过作为对比,我们也会对Tensorflow的MINST教程作解析以及对比.很快大家就会发现,逻辑上考虑,其实内容都是大同小异的.由于所对应的目标不一样,在数据处理方面可能存在着些许差异,这里我们以CIFAR10的为基准,有兴趣的朋友欢迎去

CS231n - CNN for Visual Recognition Assignment1 ---- KNN

CS231n - CNN for Visual Recognition Assignment1 -- KNN 这作业怎么这么难,特别是对于我这种刚接触Python的- 反正能做出来的就做,做不出来的我就先抄别人的-.就当加深下对课程理解吧-. k_nearest_neighbor.py中主要有: compute_distances_two_loops compute_distances_one_loop compute_distances_no_loops predict_labels # -*

Keras如何构造简单的CNN网络

1. 导入各种模块 基本形式为: import 模块名 from 某个文件 import 某个模块 2. 导入数据(以两类分类问题为例,即numClass = 2) 训练集数据data 可以看到,data是一个四维的ndarray 训练集的标签 3. 将导入的数据转化我keras可以接受的数据格式 keras要求的label格式应该为binary class matrices,所以,需要对输入的label数据进行转化,利用keras提高的to_categorical函数 label = np_u