3:用tensorflow搭个神经网络出来 为什么用tensorflow呢,应为谷歌是亲爹啊,虽然有些人说caffe更适合图像啊mxnet效率更高等等,但爸爸就是爸爸,Android都能那么火,一个道理嘛.其实这些个框架一通百通,就是语法不一样了些.从tensorflow开始吧. 关于tf的安装详见另一篇博文,此处tensorflow的学习基本来自Udacity中google的深度学习课程. 1:tensorflow的计算图 在tensorflow中编写代码可以分成两个部分,首先是要定义一个计算…
我们知道神经网络的结构是这样的: 那卷积神经网络跟它是什么关系呢?其实卷积神经网络依旧是层级网络,只是层的功能和形式做了变化,可以说是传统神经网络的一个改进.比如下图中就多了许多传统神经网络没有的层次. 卷积神经网络的层级结构      • 数据输入层/ Input layer • 卷积计算层/ CONV layer • ReLU激励层 / ReLU layer • 池化层 / Pooling layer • 全连接层 / FC layer 1.数据输入层该层要做的处理主要是对原始图像数据进行预…
1.基础神经网络: 输入向量x,权重向量w, 偏置标量b, 激活函数sigmoid(增加非线性度) 优化手段: 梯度下降优化, BP向后传播(链式规则) 梯度下降优化: 1. 使用得目标函数是交叉熵  c = 1/nΣΣ[yj*lnaj^2 + (1-yj)*ln(1-aj^2)]  yj表示得是样本标签, aj表示的是输出值                            2.批量梯度下降:每次迭代一部分样本,进行参数跟新. 3. 随机梯度下降:每次迭代只选择单个样本 4. 梯度更新的方…
一.前言 这篇卷积神经网络是前面介绍的多层神经网络的进一步深入,它将深度学习的思想引入到了神经网络当中,通过卷积运算来由浅入深的提取图像的不同层次的特征,而利用神经网络的训练过程让整个网络自动调节卷积核的参数,从而无监督的产生了最适合的分类特征.这个概括可能有点抽象,我尽量在下面描述细致一些,但如果要更深入了解整个过程的原理,需要去了解DeepLearning. 这篇文章会涉及到卷积的原理与图像特征提取的一般概念,并详细描述卷积神经网络的实现.但是由于精力有限,没有对人类视觉的分层以及机器学习等…
先一层一层的说卷积神经网络是啥: 1:卷积层,特征提取 我们输入这样一幅图片(28*28): 如果用传统神经网络,下一层的每个神经元将连接到输入图片的每一个像素上去,但是在卷积神经网络中,我们只把输入图像的一部分连接到下一层的神经元上. 比如每个神经元连接对应的一个5*5的区域: 这个输入图像的区域被称为隐藏神经元的局部感受野(local receptive fields),它是输入像素上的一个小窗口.每个连接学习一个权重.而隐藏神经元同时也学习一个总的偏置.可以把特定的隐藏神经元看作是在学习分…
sklearn实战-乳腺癌细胞数据挖掘(博客主亲自录制视频教程,QQ:231469242) https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campaign=commission&utm_source=cp-400000000398149&utm_medium=share https://blog.csdn.net/eddy_zheng/article/details/50763648 1.…
前言:这只是我的一个学习笔记,里边肯定有不少错误,还希望有大神能帮帮找找,由于是从小白的视角来看问题的,所以对于初学者或多或少会有点帮助吧. 1:人工全连接神经网络和BP算法 <1>:人工神经网络结构与人工神经网络可以完美分割任意数据的原理: 本节图片来源于斯坦福Andrew Ng老师coursea课件(此大神不多介绍,大家都懂) 在说明神经网络之前,先介绍一下神经网络的基础计算单元,感知器. 上图就是一个简单的感知器,蓝色是输入的样本,g(z)是激活函数,z=x1*w1+-,a=g(z) 这…
一.计算机视觉 如图示,之前课程中介绍的都是64* 64 3的图像,而一旦图像质量增加,例如变成1000 1000 * 3的时候那么此时的神经网络的计算量会巨大,显然这不现实.所以需要引入其他的方法来解决这个问题. 二.边缘检测示例 边缘检测可以是垂直边缘检测,也可以是水平边缘检测,如上图所示. 至于算法如何实现,下面举一个比较直观的例子: 可以很明显的看出原来6 * 6的矩阵有明显的垂直边缘,通过3 * 3的过滤器(也叫做 "核")卷积之后,仍然保留了原来的垂直边缘特征,虽然这个边缘…
加载数据集. 这里的keep_prob是dropout的一个参数.dropout是一种随机置零的策略,用来防止模型过拟合. 这里定义两层,上面是卷积层,下面是池化层. 搭建了一层卷积.一层池化.一层卷积.一层池化.之后将输出展平,输入到全连接层里,进行输出,激活函数选用了relu函数. 这是上面神经网络用到的参数. 之后我们构建模型,pred是整个网络的输出. cost设置为交叉熵 \[l(\varphi)=ylog(1-\varphi)+(1-y)log(1-\varphi)\] 优化器设置为…
import os import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data INPUT_NODE = 784 OUTPUT_NODE = 10 LAYER1_NODE = 500 def get_weight_variable(shape, regularizer): weights = tf.get_variable("weights", shape, initializer…