见证一个人工智能的诞生

当代生活,谁还不会来两句人工智能,深度学习呢?

机器学习正给世界带来重大影响。小区门口的人脸识别开锁、手机里的信息流推荐、路上的自动驾驶,这一切技术的背后都是机器学习。

这个系列打开了人工智能的黑盒。从现在开始,借助于让人连连称赞的建模,理解人工智能。

识别数字

Part 1 :输入数据库 | input database

顾名思义,从识别数字来引入机器学习。 识别数字 为了做到这一点,我们做的第一件事就是将图片转化为数字,这就需要用到MNIST数据库 数据库经过了特殊的处理,每一个图片都是28*28像素(pixel),每一个pixel存储着这个像素点的灰度,即明暗信息,通常用1byte(8bit)来存储,范围为0-255。灰度为0为纯黑,灰度为255为纯白MNIST数据库 如此,我们就把这\(28\times28=784\)个灰度信息组成一个向量(vector),n维的向量可以理解为定义在一个n维坐标系中的点。 三维向量 784维向量 每个数字的特征灰度不同,将这个784维的向量放置到784维的坐标系中就会形成不同的集合(set),用以区分不同的数字。

接下来要做的就很简单:我们只需要让机器画一条线,让这两个集合分开,在二维坐标系中这十分容易,三维空间就需要二维平面分成两块,而784维空间就需要783维的超平面进行分割,用感知器公式可以进行如下表示: \[\sum_{i=1}^{784}W_i\times X_i+b=0\]\[W_1\times X_1+W_2\times X_2+\dots+W_{784}\times X_{784}+b=0\] 这里的\(X_i\)代表着对应像素的灰度信息,每个像素点有自己对应的权重\(W_i\),b代表阈值,对W和b进行调整,就能改变超平面的位置。 二维平面分割 我们通过比较\(\sum_{i=1}^{784}W_i\times X_i\)与阈值b的大小,就可以让机器完成分类。

Part 2 : 训练感知器 | training perceptron

784维示意 通过以后会了解到的算法我们可以让机器通过不断地学习,自动的调整权重和阈值,达到识别数字的目的。

更高清的图片所处的维度更高,所用的方法也类似