APP下载

大数据背景下机器学习的趋势分析

2018-03-04陆敬怡祝子健

网络安全技术与应用 2018年12期
关键词:搜索

◆陆敬怡 祝子健

大数据背景下机器学习的趋势分析

◆陆敬怡 祝子健

(南京邮电大学 江苏 210046)

机器学习是当前计算机信息处理技术中的热点,特别是在大数据的背景下,每天互联网会产生30万亿千兆字节的数据,这些数据使我们的决策变得更加科学。本文通过介绍大数据背景下机器学习的特点和趋势,分析在机器学习领域存在的主要问题,提出三种大数据背景下机器学习算法的趋势。

大数据;机器学习;算法设计

0 前言

大数据通常是指不能装进计算机内存储器的数据,大数据的显著特点是数据的数量大、种类多、产生快、处理快、价值高等。

面对海量的数据,人们需要一个智能分析的接口将人类与计算机世界进行连接,随着数据挖掘、数据处理、机器学习等相关技术的成熟,可以借助机器学习、并行处理等非传统的工具对大量的数据进行处理、分析和预测,从而为决策提供依据。

机器学习是通过模拟人类的各种学习行为,来学习新的知识并不断完善机器的结构,提高各方面处理问题的性能。机器学习的过程就是计算机通过学习提前输入里面的数据和信息,对数据和信息进行处理,展示我们想要的结果的过程。整个学习过程的目的是明确的,思路是提前设定的,数据越多学习的过程越长,建立并且训练的模型数据越多,处理的结果就越准确。而且整个学习过程是迭代学习的过程,一般计算机在处理过程中使用这种迭代算法不断完善模型的方法,就属于机器学习的过程。要使用机器学习,各种学习模式是必须的,伴随着大数据处理技术的发展,我们可以更加准确地使用机器学习方法处理,使之成为大数据处理的重要工具,而大数据为机器学习提供更多的数据,帮助机器学习变得更加强大。但归根到底,机器学习并不等同于大数据处理,而大数据的处理也不仅仅是机器学习。

大数据已成为信息处理的热点,当大数据和机器学习结合在一起时,可以显著提高计算机对数据的处理能力和预测能力。大数据与机器学习的结合,已经被广泛应用于网络营销、关键词搜索、广告设计等领域,未来会延伸到更多的领域。

1 大数据背景下机器学习的主要问题

与传统的机器学习相比,大数据背景下的机器学习大大扩充了学习数据的数量,提高了机器学习的准确性,但与此同时也带来了很多问题。

首先随着计算机硬件技术的提高以及编程算法的不断优化,数据之间的关系越来越复杂,例如在海量的数据中如何区分哪些数据是有用的,哪些数据是冗余的,哪些数据会对其他数据的运行造成干扰和影响,如何将这些数据提取出来越来越成为人们难以控制的问题,如何从海量复杂的数据中挖掘出数据之间的规律并发挥数据信息的最大价值成为大数据背景下机器学习函待解决的重点,也是大数据处理技术的核心。

大数据背景下的机器学习,在理论上,数据的数量越多,数据样本越丰富,计算机能学习的数据就越多,机器学习就能训练出更加复杂的模型,模型的处理信息能力就越强。但在当前现实中,规模宏大的大数据给计算机的机器学习带来了很多麻烦,例如,在一些复杂的模型中,随着数据数量的增加,机器学习过程的计算量可能会产生超线性增长速度,而不是按照相同比例增长,使计算量变得更加复杂,大大影响了机器学习的速度,使得计算机新建模型的处理效率变低。因此很多领域经常使用简单的模型去处理大数据,尽管有更复杂准确的模型。例如在工业领域机器学习中的分类器常用的有logistic regression和kernel SVM两种,前者是比较简单的线性模型,在创建模型的时候不需要大量的数据资源,能高效的进行模型训练和数据分析预测;而kernel 属于较复杂的分类器,它的模型通常需要大量的数据训练才能创建,它的预测结果相对来说更加准确。在工业领域人们使用最多的是logistic regression分类器,因为如果只是增加数据的数量,而不采用更为复杂的模型,那么大数据背景下的机器学习同传统的机器学习并没有本质的差别。因此,怎样使用大数据训练出更加复杂有效的模型也是当前机器学习的主要问题,大数据背景下训练模型,最大的问题就是计算量大和计算时间长以及计算机内存容量的限制。

2 大数据背景下机器学习算法的主要趋势

在大数据背景下去训练复杂的机器模型,就应该在机器学习算法设计中解决计算量和计算时间以及内存容量的问题。未来大数据背景下的机器学习算法设计主要有三种趋势:并行算法、在线算法以及近似算法。

2.1 并行算法

解决大数据算法问题最主要的方法就是引入并行算法,并行算法是一些可同时执行的诸多进程的集合,这些进程相互作用和协调动作从而达到求出问题的解。在大数据的处理中就是将数据处理任务分配到多台计算机或者处理器上,这些计算机或者处理器相互通信和协作,能快速、高效地求解大型复杂数据样本的处理。并行算法的处理效率与运行时间、处理器数目、并行算法的成本、总运算量和分布式有关系,分布式并行算法的设计通常需要具备较高的硬件资源,它需要各种集群计算的资源,通常适合谷歌、微软等这种计算能力强大的企业。并行算法和分布式计算是有差别的,不是所有的算法都可以用分布式计算来解决,即使有大量的计算资源。例如,理想状态下,用五十台计算机做并行计算,会把计算时间缩短至以前的五十分之一,可事实并非如此,实际计算过程中,并行算法很难达到这种效率。分布式并行算法的设计不仅仅需要解决存储量的问题,还需考虑到通信数据的多少,数据间是否同步等问题。

在大数据背景下,内存容量是制约计算量的主要因素,如果并行算法可以提前对数据特征进行识别分类,合理的安排并行的各计算机去处理分类的数据,让每台计算机并行计算时的内存消耗低于未并行时的内存消耗量,那么并行算法就会显著提高计算量,缩短计算时间。在并行算法设计中通常需要考虑选择同步还是异步处理的问题,如果选择同步处理,那么在一轮轮的数据迭代过程中,每一轮所有的计算机同步运行,先运行完成的计算机要等待后面的计算机,直到全部计算机完成这一轮的迭代过程,这种迭代方式会降低数据处理的效率,因此在并行计算中通常使用异步算法设计,即计算机完成每一次迭代后可以继续去计算。

2.2 在线算法

传统的机器学习算法通常在每一轮训练完成后,用所有的数据去重新更新模型,使得每次更新的计算量很大。而在线算法是当前机器学习的另一项发展趋势,在线算法在每一轮数据训练完成后,只用少量的有用的数据去更新模型,这样使计算量变小,机器的内存消耗变小,提高模型创建效率。随机优化算法是在线算法的一种变体,它的设计思想与在线算法一样,虽然经过迭代训练计算机已经获取了数据,但每一轮模型更新只会随机选择少量的数据来创建新模型,随机优化算法已经在大数据处理过程中被使用。

2.3 近似算法

矩阵分解是机器学习中的难点,因为机器学习中很多算法及模型都需要进行各种矩阵分解,分解的时间通常与样本数据的平方成正比,在大数据背景下,面对海量的数据,如果不能高效率的进行矩阵分解,那么机器学习就不能用来解决大数据问题。

一种有效的处理大规模矩阵分解的方式就是随机算法,随机算法是找出大矩阵的近似矩阵,近似矩阵通常是小矩阵,它具有和大矩阵相似的性质,对近似矩阵快速地进行矩阵分解等操作,得出近似矩阵的分解结果,把近似矩阵的分解结果等同于大矩阵的分解结果。这种近似的计算已经被越来越多的实验证明是非常准确的,因此很多近似算法已成为处理大数据的机器学习过程中非常高效且有前景的方法。

3 结语

在大数据背景下,机器学习的未来变得更加光明。然而,机器学习并不仅仅是利用海量的数据去训练模型,而是逐步把大数据用在复杂模型的训练和创建中。并行算法、分布式算法、在线算法和近似算法都为大数据下的机器学习的提供了帮助,未来,机器学习将会更加高效地处理大数据。

[1]孙凯.大数据背景下机器学习在数据挖掘中的应用浅析[J].科学技术创新,2018.

[2]马巍巍,殷凤梅,张江.大数据背景下机器学习并行算法研究[J].电子技术与软件工程,2018.

[3]李成录.大数据背景下机器学习算法的综述[J].信息记录材料,2018.

[4]王凌.大数据背景下的机器学习算法简述[J].数字传媒研究,2017.

[5]朱巍,陈慧慧,田思媛,王红武.人工智能:从科学梦到新蓝海——人工智能产业发展分析及对策[J].科技进步与对策,2016.

[6]吴元立,司光亚,罗批.人工智能技术在网络空间安全防御中的应用[J].计算机应用研究,2015.

猜你喜欢

搜索
计算机技术在文检工作中的应用
入室盗窃案外围现场勘查的几点启示 
基于西洋跳棋的博弈程序研究
学科整合,信息技术教育教学的“魂”
优惠信息检索与分析
精心设计享受乐趣