什么是深度学习?
深度学习是机器学习领域中一个新的研究方向,它被引入机器学习使其更接近于人工智能。
- 深度学习是机器学习领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能。 深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。 深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。
- 深度学习在搜索技术,数据挖掘,机器学习,机器翻译,自然语言处理,多媒体学习,语音,推荐和个性化技术,以及其他相关领域都取得了很多成果。深度学习使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。
人工智能、机器学习和深度学习的关系
人工智能是一个最宽泛的概念,是一个研究领域,同时也是一个实现目标,而机器学习则是实现这一目标的一类方法。深度学习只是机器学习这一类方法中的一种。
- 进一步说,由于人工智能这个最宽泛的概念只阐述了目标,而没有限定方法,因此实现人工智能存在的诸多方法和分支。机器学习是当前比较有效的一种实现人工智能的方式。深度学习是机器学习算法中最热门的一个分支,近些年取得了显著的进展,并替代了大多数传统机器学习算法。
- 如上图所示,传统机器学习算术依赖人工设计特征,并进行特征提取,而深度学习方法不需要人工,而是依赖算法自动提取特征。深度学习模仿人类大脑的运行方式,从经验中学习获取知识。这也是深度学习被看做黑盒子,可解释性差的原因。
深度学习的发展历程
早期的浅层结构(如支持向量机、逻辑回归等)在涉及到一些复杂的问题,如语音、图像、视觉等问题时,会造成维度灾难。
- 我们都知道,一种新的概念的出现必然是为了解决某种问题或者验证某种结论,那深度学习这一新概念的提出是为了解决什么问题的呢?
- 由于早期绝大多数机器学习与信号处理技术都使用浅层结构(如支持向量机、逻辑回归等),在解决大多数简单问题或者有限制条件的问题上效果明显。
- 但是涉及到一些复杂的问题,如语音、图像、视觉等问题时,数据的维度会很高,也就是我们通常所说的维数灾难,这会导致很多机器学习问题会变得相当困难。各位学者又是如何去解决这一问题的呢?
- 为何神经网络到2010年后才焕发生机呢?这与深度学习成功所依赖的先决条件:大数据涌现、硬件发展和算法优化有关。由于神经网络和深度学习是非常强大的模型,需要足够量级的训练数据,而大数据就是神经网络发展的有效前提,但很多场景下没有足够的标记数据来支撑深度学习。其实深度学习的能力特别像科学家阿基米德的豪言壮语:“给我一根足够长的杠杆,我能撬动地球!”,深度学习也可以发出类似的豪言:“给我足够多的数据,我能够学习任何复杂的关系”。但在现实中,足够长的杠杆与足够多的数据一样,往往只能是一种美好的愿景。直到近些年,各行业IT化程度提高,累积的数据量爆发式地增长,才使得应用深度学习模型成为可能。此外,还需要依靠硬件的发展和算法的优化。现阶段,依靠更强大的计算机、GPU、AutoEncoder、预训练和并行计算等技术,深度学习在模型训练上的困难已经被逐渐克服。其中,数据量和硬件是更主要的原因。
深度学习的前景
以深度学习为基础的人工智能技术,在升级改造众多的传统行业领域,存在极其广阔的应用场景。
- 以深度学习为基础的人工智能技术,在升级改造众多的传统行业领域,存在极其广阔的应用场景。艾瑞咨询的研究报告提到,人工智能技术不仅可在众多行业中落地应用(广度),同时,在部分行业(如安防、遥感、互联网、金融、工业等)已经实现了市场化变现和高速增长(深度),为社会贡献了巨大的经济价值。其实,以深度学习为基础的AI技术在各行业已经得到了广泛的应用:以计算机视觉的行业应用分布为例,根据互联网数据中心的数据统计和预测,随着人工智能向各个行业的渗透,当前较多运用人工智能的互联网行业的产值占比反而会逐渐变小。
深度学习改变了很多领域算法的实现模式。
- 深度学习改变了很多领域算法的实现模式。在深度学习兴起之前,很多领域建模的思路是投入大量精力做特征工程,将专家对某个领域的“人工理解”沉淀成特征表达,然后使用简单模型完成任务(如分类或回归)。而在数据充足的情况下,深度学习模型可以实现端到端的学习,即不需要专门做特征工程,将原始的特征输入模型中,模型可如图所示,同时完成特征提取和分类任务。
深度学习还推动人工智能进入了工业大生产阶段,算法的通用性促使标准化、自动化和模块化的框架产生。
-
除了应用广泛的特点外,深度学习还推动人工智能进入了工业大生产阶段,算法的通用性促使标准化、自动化和模块化的框架产生。 在深度学习出现之前,不同流派的机器学习算法理论和实现有所不同,这就导致每个算法均要独立实现,如随机森林和支撑向量机(SVM)。但在深度学习框架下,不同模型的算法结构具有较大的通用性,如常用于计算机视觉的卷积神经网络模型(CNN)和常用于自然语言处理的长期短期记忆模型(LSTM),都可以分为组网模块、梯度下降的优化模块和预测模块等。 这就使得抽象出统一的框架成为了可能,就能大大降低编写建模代码的成本。因此,一些相对通用的模块,如网络基础算子的实现、各种优化算法等都可以由框架实现。建模者只需要关注数据处理,配置组网的方式,并能够用少量代码串起训练和预测的流程即可。
-
在深度学习框架出现之前,机器学习工程师处于“手工作坊”生产的时代。为了完成建模,工程师需要储备大量的数学知识,并为特征工程工作积累大量行业知识。每个模型是极其个性化的,建模者如同手工业者一样,将自己的积累形成模型的“个性化签名”。而今,“深度学习工程师”进入了工业化大生产时代,只要掌握深度学习必要但少量的理论知识,掌握Python编程,即可在深度学习框架上实现非常有效的模型,甚至与该领域最领先的模型不相上下。建模领域的技术壁垒面临着颠覆,这同时也是新入行者的机遇。