神经网络

神经网络的图像处理之初步了解

2019-03-25  本文已影响0人  我喜欢蓝色儿

3月16日,经学长指明方向后,开始在b站上观看视频学习TensorFlow,目前刚刚接触到三层CNN的搭建。应老师要求,课程每两周做一次小组汇报,下面不是我要汇报的,算是我对第四周自学的一个小总结,主要讲神经网络和通过代码如何理解神经网络以及图像处理的大致思路。


一、神经网络

我们项目需要用到神经网络的深度学习功能,就是希望神经网络能够像人脑一样不断地去学习,提升自己的能力,不断地得到最优的结果。

神经网络是一种数学模型,是存在于计算机的神经系统,由大量的神经元相连接并进行计算,模仿人脑神经系统进行信息处理功能。

这个图就是一个神经网络系统,由大量的节点和之间的联系构成。

每个节点代表一种特定的输出函数。每两个节点间的连接都代表一个对于通过该连接信号的加权值。

一个神经元的功能是求得输入向量与权向量的内积后,经一个非线性传递函数得到一个标量结果(baidu)。负责传递信息和加工信息(通俗地讲)。

它由很多层构成。输入层就是负责接收信息,比如说一只猫的图片。输出层就是计算机对这个输入信息的认知,它是不是猫。隐藏层就是对输入信息的加工处理。

然后我们通过几个例子来了解一下神经网络是如何被训练,和训练的。我们目前是通过TensorFlow这个框架来学习神经网络的。

1、y = 0.1*x + 0.3

神经网路的训练需要很多数据作为学习的对象。比如他要判断一张图片是不是猫。就要输入上千万张的带有标签的猫猫狗狗的图片,然后再训练上千万次。

对于我们这个例子,这个函数就是我们需要学习的对象,我们想要通过神经网络训练出这样的一个线性模型。

它有两个参数,weights和biases,我们会分别生成一个随机数给他初始化。

因为训练是一个过程,所以中间难免会出错。我们深知,道路是曲折的,但前途是光明的。对于训练过程中错误的结果,我们会对比它和正确答案之间的区别,然后把这个区别反向传递回去,对每个相应的神经元进行一点点的改变。那么下一次在训练的时候就可以用已经改进一点点的神经元去得到更加稍微准确一点的结果。

中间涉及到损失函数,和优化器,不多说了。

2、y = x^2 - 0.5

现实并没有我们想象的那么美好, 它是残酷多变的。现实世界中绝大多数问题是无法通过线性解决的,我们需要将线性模型转换成非线性的。

解决方法就是:给每个神经元的输出套上一个激活函数。

(用这些函数给计算机一个刺激行为。

处理非线性关系。非线性关系是自然界的普遍特性。人工神经元处于激活或抑制二种不同的状态,这种行为在数学上表现为一种非线性关系。

神经元有一个被激活的过程,被激活的神经元所传递的信息就是对输出结果有价值的信息。那如果输出的结果是错误的,一些容易被激活的神经元就会变得迟钝,另外一些神经元就会变得敏感。一次次训练,神经元的参数不断改变,最后变得对真正重要的信息更为敏感。)

给大家直观的展示一下这个函数的一个训练结果吧(由matplotlib生成)。

通过这几个例子,大家大概能了解到神经网络有一个学习的过程。


二、处理图像

上述的例子主要是让神经网路处理一些数字类的数据,那它也可以处理图像类的信息,比如我现在有一些标准的图片,例如1-9传给神经网络进行训练。然后我们将一些需要判断的图片传给神经网络,神经网络就会记录下这些像素点的位置,然后输出它认为的数字。把真实值和训练值进行比较,不断训练以减小识别误差。

那么我们需要做什么的,我们也需要处理图像,但是我们处理图像的方式与上述所说的有所不同。需要用到CNN。

神经网络不再是对每个像素的输入信息做处理,而是对图片上每一小块像素区域的处理。有一个批量过滤器,它会收集信息,然后整理信息。比如说对于一个人脸,第一次能整理出一个轮廓,第二次能总结出更高的信息结构(鼻子),再总结,就能提取出整个一张脸。然后进行信息分类。

它加强了图片信息的连续性,使得神经网络能看到一个图形,而非是一个点。

这就是卷积神经网络中的卷积的作用。除了需要识别图像的轮廓,关键还是对颜色的处理。一个图像有长宽高,高就是颜色通道。不断压缩。

CIE Lab,它更接近人眼视觉;理论上包括了人眼可见的所有色彩的色彩模式;色域比显示器甚至人眼的色域都要大;与光线即设备无关;弥补了RGB 色彩模型色彩分布不均的不足。

色泽参数:

L值(Lightness,亮度),在0~100之间,0表示黑色,100表示白色

a值(Redness,红色度),表示红绿之间的色泽,100为红色,一80为绿色;

b值(Yellowness,黄色度),表示黄蓝之问的色泽,100为黄色,一80为蓝色 。

图像在输入网络前,首先从RGB颜色空间转换为Lab颜色空间,标注分类信息后制作为训练数据集,利用该数据集进行网络训练。

原图的L 通道作为网络的输入,分别进入特征提取部分及分类网络部分,得到预测分类及对应于ab 通道的输出;

而原图的分类标签及ab 通道信息作为监督信息(label),供网络输出进行对比以计算各类损失,将所有损失反馈给网络,按照损失梯度对权重进行调整,从而训练整个网络,实现着色。

那我们今天主要先说一下处理图像信息的大致步骤,以后再具体介绍如何实现。CNN具体是怎样工作的。

上一篇 下一篇

猜你喜欢

热点阅读