人工智能的发展之深度学习
- 参考书籍:深度学习之PyTorch物体检测实战 (董洪义)
1. 相关定义
人工智能(Artificial Intelligence,AI)
:给计算机以人类的理解能力与逻辑思维。机器学习
:让计算机自动地从大量的数据中学习规律,利用该规律对未知的数据做出预测。深度学习
:利用深度神经网络的结构完成训练和预测的算法。
2. 三者之间的关系
- 机器学习是实现人工智能的方法之一。
- 深度学习是机器学习其中算法之一。
3. 人工智能分类
弱人工智能(Artificial Narrow Intelligence,ANI)
:擅长某个特定任务 【某个特征方向的强者】。- 例如语言翻译相关任务,判断一张图片中是花还是树,是不可行的。
强人工智能
:像人一样听、说、读、写样样精通。但未达到通用人工智能的水平。【和人差不多,但不通用】超人工智能(Artificial Super Intelligence,ASI)
:在几乎所有领域都比人类大脑聪明的智能,包括创新、社交、思维等。【比人聪明】
4. 机器学习分类
有监督学习
:- 包括训练与预测阶段。
- 训练时使用带有标注标签数据对模型进行训练,预测时对训练后的模型对预测数据进行预测。
- 通常分为分类与回归两个问题,常见算法有决策树、支持向量机和神经网络等。
无监督学习
:- 输入的数据无标签信息【没有正确答案】,无法对模型进行明确评判。
- 常见的算法有K-Means聚类。
强化学习
:- 让模型在一定的环境中学习,每次行动会有对应的奖励,使奖励最大化。
- 被认为是走向通用人工智能的学习方法。
- 常见的强化学习有基于价值、策略与模型3种方法。
5. 深度学习发展历史
5.1 定义
- 主要是通过搭建深层的
人工神经网络(Artificial Neural Network)
来进行知识的学习。 - 输入数据通常较为复杂、规模大、维度高。
- 深度学习是机器学习问世以来最大的突破之一。
5.2 发展历史
-
1943年
:MCP(McCulloch and Pitts)人工神经元网络
:希望使用简单的加权求和与激活函数来模拟人类的神经元过程。
-
1958年
:感知器(Perception)模型
:使用了梯度下降法学习多维的训练数据,成功地实现了二分类问题,掀起了深度学习的第一次热潮。
-
1969年
:Minsky
证明了感知器仅仅是一种线性模型,对简单的是否【0,1】判断都判断不出来,且生活中的大部分都是非线性的问题,造成了深度学习长达20年的停滞不前。
-
1986年
:深度学习领域“三驾马车”之一的Geoffrey Hinton
将非线性的Sigmoid函数应用到了多层感知器中,并利用反向传播(Backpropagation)算法进行模型学习,使得模型能够有效地处理非线性问题
。
-
1998年
:“三驾马车”中的卷积神经网络之父YannLeCun
发明了卷积神经网络LeNet模型,可有效解决图像数字识别问题,被认为是卷积神经网络的鼻祖
。
-
之后几年深度学习
陷入了第二次低谷
,因为神经网络
存在两个致命问题:- 1.Sigmoid在函数两端具有饱和效应,会带来梯度消失问题。
- 2.随着神经网络的加深,训练时参数容易陷入局部最优解【因为深度学习并不是凸函数】
-
2006年
:- Hinton提出了利用无监督的初始化与有监督的微调缓解了局部最优解问题,再次挽救了深度学习,
这一年也被称为深度学习元年
。
- Hinton提出了利用无监督的初始化与有监督的微调缓解了局部最优解问题,再次挽救了深度学习,
-
2011年
:- 诞生的ReLU激活函数有效地缓解了梯度消失现象。
- 诞生的ReLU激活函数有效地缓解了梯度消失现象。
-
2012年
:扫描二维码关注公众号,回复: 14941574 查看本文章- AlexNet网络迎来了
深度学习爆发式发展
,在ImageNet图像分类任务中以 “碾压”第二名算法的姿态取得了冠军。
- AlexNet网络迎来了
-
深度学习从此一发不可收拾,VGGNet、ResNet等优秀的网络接连问世,并且在分类、物体检测、图像分割等领域渐渐地展现出深度学习的实力,大大超过了传统算法的水平
5.3 深度学习发展核心因素
大数据
:- 大部分的深度学习模型是有监督学习,依赖于数据的有效标注。
- 一个高性能的物体检测模型,通常需要上万甚至是几十万的标注数据。
GPU
:- 深度学习发展起来的的一个很重要因素就是硬件发展,尤其是GPU为深度学习模型的快速训练提供了可能。
- 深度学习模型通常有数以千万计的参数,存在大规模的并行计算,传统的以逻辑运算能力著称的
CPU
面对这种并行计算会异常缓慢,GPU
以及CUDA
计算库专注于数据的并行计算,为模型训练提供了强有力的工具。
模型
:- 在大数据与
GPU
的强有力支撑下,推出了VGGNet、ResNet和FPN
等一系列深度学习模型,并且在学习任务的精度、速度等指标上取得了显著的进步。 深度学习模型可以分为
卷积神经网络(Convolutional Neural Network,CNN)
循环神经网络(Recurrent Neural Network,RNN)
生成式对抗网络(GenerativeAdviserial Network,GAN)
- 在大数据与
6. 计算机视觉
6.1 含义
- 计算机视觉是研究使机器如何学会 “看” 的学科
- 最早起源于20世纪50年代:
- 当时主要专注于光学字符识别、航空图片的分析等特定任务。
- 在20世纪90年代:
- 计算机视觉在多视几何、三维重建、相机标定等多个领域取得了众多成果,也走向了繁荣发展的阶段
- 但在很长的一段时间里,计算机视觉很难有鲁棒的高语义理解。
- 深度学习的爆发,真正将计算机视觉的发展推向高峰的。
- 由于视觉图像丰富的语义性与图像的结构性,计算机视觉也是当前人工智能发展最为迅速的领域之一。
6.2 成就
图像成像
:- 是计算机视觉较为底层的技术,主要是成像后的应用。
- 相关应用
- 修复图像的DCGAN网络
- 图像风格迁移的CycleGAN
- 在医学成像、卫星成像等领域中,超分辨率也至关重要,例如SRCNN(Super-Resolution CNN)
2.5D空间
:- 通常将涉及2D运动或者视差的任务。
- 相关应用
- 光流的估计(FlowNet)
- 单目的深度估计(FCRN)
- 双目的深度估计(3D CycleGAN)
3D空间
:- 通常应用于机器人或者自动驾驶领域,将2D图像检测与3D空间进行结合。
- 相关应用
- 相机标定(Camera Calibration)
- 视觉里程计(VisualOdometry,VO)
- SLAM(Simultaneous Localization and Mapping)
环境理解
:- 环境的高语义理解是深度学习在计算机视觉中的主要应用。
- 相关应用
- 图像分类(Classification)
- 物体检测(Object Detection)
- 图像分割(Segmentation)【细分】
- 语义分割(Semantic Segmentation)
- 实例分割(Instance Segmentation)
- 物体跟踪(Tracking)
- 关键点检测(SDM)
6.3 计算机视觉任务的区别
- 图像分类、物体检测与图像分割是最基础、也是目前发展最为迅速的3个领域。
- 三者区别
-
图像分类
:- 输入图像往往仅包含一个物体
- 目的是判断每张图像是什么物体
- 是图像级别的任务,相对简单,发展也最快。
-
物体检测
:- 输入图像中往往有多个物体
- 目的是判断出物体出现的位置与类别
- 是计算机视觉中非常核心的一个任务。
-
图像分割
:- 输入与物体检测类似
- 要判断出每一个像素属于哪一个类别,属于像素级的分类。
- 图像分割与物体检测任务之间有很多联系,模型之间可以相互借鉴。
-