tensorflow CNN 卷积神经网络中的卷积层和池化层的代码和效果图 因为很多 demo 都比较复杂,专门抽出这两个函数,写的 demo. 更多教程:http://www.tensorflownews.com #!/usr/bin/python # -*- coding: UTF-8 -*- import matplotlib.pyplot as plt import tensorflow as tf from PIL import Image import numpy img = Ima…
# -*- coding: utf-8 -*- """ Created on Sun Mar 4 09:21:41 2018 @author: markli """ import numpy as np; def ReLU(x): return max(0,x); def logistic(x): return 1/(1 + np.exp(-x)); def logistic_derivative(x): return logistic(x)*(…
卷积层Conv的输入:高为h.宽为w,卷积核的长宽均为kernel,填充为pad,步长为Stride(长宽可不同,分别计算即可),则卷积层的输出维度为: 其中上开下闭开中括号表示向下取整. MaxPooling层的过滤器长宽设为kernel*kernel,则池化层的输出维度也适用于上述公司计算. 具体计算可以AlexNet为例.…
一.输入层 1.用途 构建深度神经网络输入层,确定输入数据的类型和样式. 2.应用代码 input_data = Input(name='the_input', shape=(1600, 200, 1)) 3.源码 def Input(shape=None, batch_shape=None, name=None, dtype=None, sparse=False, tensor=None): if not batch_shape and tensor is None: assert shape…
一.前向计算和反向传播数学过程讲解…
卷积神经网络(CNN)由输入层.卷积层.激活函数.池化层.全连接层组成,即INPUT-CONV-RELU-POOL-FC (1)卷积层:用它来进行特征提取,如下: 输入图像是32*32*3,3是它的深度(即R.G.B),卷积层是一个5*5*3的filter(感受野),这里注意:感受野的深度必须和输入图像的深度相同.通过一个filter与输入图像的卷积可以得到一个28*28*1的特征图,上图是用了两个filter得到了两个特征图: 我们通常会使用多层卷积层来得到更深层次的特征图.如下: 关于卷积的…
import numpy as np import tensorflow as tf M = np.array([ [[1],[-1],[0]], [[-1],[2],[1]], [[0],[2],[-2]] ]) print("Matrix shape is: ",M.shape) filter_weight = tf.get_variable('weights', [2, 2, 1, 1], initializer = tf.constant_initializer([[1, -1…
4.1卷积神经网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.9池化层 优点 池化层可以缩减模型的大小,提高计算速度,同时提高所提取特征的鲁棒性. 池化层操作 池化操作与卷积操作类似,但是池化操作是保留池化窗口在扫过原始图像中时的最大值.注意:每个信道都在其单独的信道中执行池化操作. 其维度公式也满足公式: \[\lfloor\frac{(n+2p-f)}{s}+1\rfloor*\lfloor\frac{(n+2p-f)}{s}+1\rfloor\] 其中n为原始图像大小,p…
1. 传统的边缘检测(比如Sobel)手工设计了3*3的filter(或者叫kernel)的9个权重,在深度学习中,这9个权重都是学习出来的参数,会比手工设计的filter更好,不但可以提取90度.0度的边缘,也可以提取出任意朝向的边缘(比如73度).把这9个权重当成参数的思想已经成为计算机视觉中最为有效的思想之一. 2. Padding 对于原始的卷积操作,原图分辨率为n*n,filter分辨率为f*f,则卷积后的结果是 (n-f+1)*(n-f+1).有两个缺点:1)每次卷积操作都会把图像缩…
1. Case study:学习经典网络的原因是它们可以被迁移到其他任务中. 1.1)几种经典的网络: a)LeNet-5(LeCun et al., 1998. Gradient-based learning applied to document recognition,NG建议重点读II部分,泛读III部分):这个网络大概60k个参数.那个时期习惯于用average pooling(现在是max pooling),sigmoid/tanh(现在是ReLU),最后的分类函数现在已经不常用了(…