卷积神经网络(convolutional neural network, CNN),最早是19世纪60年代,生物学家对猫视觉皮层研究发现:每个视觉神经元只会处理一小块区域是视觉图像,即感受野。后来到了80年代,日本科学家提出了神经认知机(Neocognitron)的概念,也可以算作是卷积神经网络最初的实现原型,在CS231n的课上说过,卷积神经网络不是一夜产生的,从这个发展过程中我们就可以看出,确实是这样的。卷积神经网络的要点就是局部连接(Local Connection)、权值共享(Weight sharing)和池化层(Pooling)中的降采样(Down-Sampling)。
比如 下面 是tensorflow卷积定义 relu(W*X+B) W 矩阵 * X矩阵 + B矩阵 = W 权重variable变量 * X (placeholder占位符外部输入)variable变量 + B偏重变量,因为深度学习 会自动 不断地计算loss损失 BP 来调整 w b 所以 w b初始化 可以随便 全部都是0 都行 ,所以 其实 就是 X 以及 Y 对于 X来说其实我们知道 就是 我们图像数据 Y 是图像的标签,但是Y需要转为数学可以计算的值,所以采用one-hot 数组记录 标签的索引就行,比如 xx1 xx2 xx3 相应的y1=[1,0,0] y2=[0 1 0] y3=[0 0 1]
那么 其实 就是 X 图像的像素 通过外部输入 placeholder占位符 Y值 外部输入 通过 placeholder占位符
我们知道 W*X 矩阵 相乘 必须 符合 MXN NXM =MXM 也就是说W的 列 必须 与 X的行数目相同 这是要注意的,所以上一张shape来规范维度计算 ,下面是一个卷积层 定义 relu(wx+b) 下面是tensorflow来表示relu(wx+b)的公式
其中要注意参数 strides 是卷积滑动的步长 你可以配置更多的系数,
下面继续 讲X [None ,w*h] 对于每一个 w*h 是一个矩阵 每一层的w 也是一个矩阵 每一层的 b也是一个矩阵 ,每一层的输出y1 也是一个矩阵 y=[w*h]*w+b 为了减少系数,我们使用卷积,把它转换成MXN的值 ,这里就是跟全连接层的不同,使用了卷积转换成了一个MXN的卷积特征 而全连接层就是 y=wx+b (这里省略了那些relu(wx+b) tanh(wx+b))
所以我们现在来看看每一层的w 定义
因为卷积层的w是需要 与 w*h 提取的MXK来做矩阵相乘 所以 他是跟卷积核相关 以及 输入 输出 相关,对于每一张图像
可以装xp虚拟机。微软的官网上边有下载。不要自己乱下载,不然会有很多未知问题。现在较流行的是vmware7.0 。window xp pro 镜像文件。下载好备用。(找一个“电脑疯子”xp镜像文件,600m的纯净版最好。)记好路径。
Hadoop|
Apache Pig|
Apache Kafka|
Apache Storm|
Impala|
Zookeeper|
SAS|
TensorFlow|
人工智能基础|
Apache Kylin|
Openstack|
Flink|
MapReduce|
大数据|
云计算|
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....