人工智能深度学习和机器学习的基础知识及其关系
扫描二维码
随时随地手机看文章
学习 tensorflow,caffe 等深度学习框架前,需要先了解一些基础概念。本文以笔记的形式记录了一个零基础的小白需要先了解的一些基础概念。
人工智能,机器学习和深度学习的关系
人工智能(ArTIficial Intelligence)——为机器赋予人的智能
"强人工智能"(General AI):无所不能的机器,它有着我们所有的感知(甚至比人更多),我们所有的理性,可以像我们一样思考
"弱人工智能"(Narrow AI):弱人工智能是能够与人一样,甚至比人更好地执行特定任务的技术。例如,Pinterest 上的图像分类;或者 Facebook 的人脸识别。
强人工智能是愿景,弱人工智能是目前能实现的。
机器学习—— 一种实现人工智能的方法
机器学习最基本的做法,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测。
深度学习——一种实现机器学习的技术
机器学习可以通过神经网络来实现。可以将深度学习简单理解为,就是使用深度架构(比如深度神经网络)的机器学习方法。目前深度架构大部分时候就是指深度神经网络。
神经网络组成
一个神经网络由许多神经元组成,每个圆圈是一个神经元,每条线表示神经元之间的连接。x 表示的输入数据,y 表示的是输出数据,w 表示每层连接的权重。w 也就是我们构造完神经网络之后需要确定的。
最左边的叫做输入层,这层负责接受输入数据。
最右边的叫做输出层,我们可以从这层获取神经网络输出数据
输入层和输出层之间叫做隐藏层。隐藏层层数不定,简单的神经网络可能是 2-3 层,复杂的也可能成百上千层,隐藏层较多的就叫做深度神经网络。
深层网络比浅层网络的表达能力更强,能够处理更多的数据。但是深度网络的训练更加复杂。需要大量的数据,很多的技巧才能训练好一个深层网络。
问题:假设计算速度足够快,是不是深度网络越深越好?
不是。深度网络越深,对架构和算法的要求就越高。在超过架构和算法的瓶颈后,再增加深度也是徒劳。
神经元(感知器)神经网络由一个个的神经元构成,而一个神经元也由三部分组成。
输入权值 每个输入会对应一个权值 w,同时还会有一个偏置值 b。也就是图中的 w0。训练神经网络的过程,其实就是确定权值 w 的过程。
激活函数 经过权值运算之后还会经历激活函数再输出。比如我们可以用阶跃函数 f 来表示激活函数。
输出 最终的输出,感知器的输出可以用这个公式来表示
神经元可以拟合任意的线性函数,如最简单拟合 and 函数。
and 函数真值表如上图所示。取 w1 = 0.5;w2 = 0.5 b = -0.8。激活函数取上面示例的阶跃函数 f 表示。可以验证此时神经元能表示 and 函数。
如输入第一行,x1 = 0,x2 = 0 时,可以得到
y 为 0,这就是真值表的第一行。
在数学意义上,可以这样理解 and 函数的神经元。它表示了一个线性分类问题,它就像是一条直线把分类 0(false,红叉)和分类 1(true,绿点)分开
而实际上,神经元在数学上可以理解为一个数据分割问题。神经元是将神经网络转换成数学问题的关键。比如需要训练神经网络做一个分类器,那么在数学上可以将输入的参数(x1,x2...,xn)理解为 m 维坐标系(设 x 是 m 元向量)上的 n 个点,而每个神经元则可以理解为一个个拟合函数。取 m 为 2,放在最简单的二维坐标系里面进行理解。