文章导读:
如果正确的利用模式识别进行商业预测和决策,那么会为企业带来巨大的利益。机器学习(ML)研究这些模式,并将人类决策过程编码成算法。这些算法可以被应用到几个实例以得出有意义的结论。在这篇文章中,我们将了解一些机器学习的基础、工作原理及特点。
1、人工智能
•人工智能是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。
•人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。
1956年,几个计算机科学家相聚在达特茅斯会议,提出了“人工智能”的概念,梦想着用当时刚刚出现的计算机来构造复杂的、拥有与人类智慧同样本质特性的机器。其后,人工智能就一直萦绕于人们的脑海之中,并在科研实验室中慢慢孵化。之后的几十年,人工智能一直在两极反转,或被称作人类文明耀眼未来的预言,或被当成技术疯子的狂想扔到垃圾堆里。直到2012年之前,这两种声音还在同时存在。
2012年以后,得益于数据量的上涨、运算力的提升和机器学习新算法(深度学习)的出现,人工智能开始大爆发。据领英近日发布的《全球AI领域人才报告》显示,截至2017年一季度,基于领英平台的全球AI(人工智能)领域技术人才数量超过190万,仅国内人工智能人才缺口达到500多万。
人工智能的研究领域也在不断扩大,图二展示了人工智能研究的各个分支,包括专家系统、机器学习、进化计算、模糊逻辑、计算机视觉、自然语言处理、推荐系统等。
但目前的科研工作都集中在弱人工智能这部分,并很有希望在近期取得重大突破,电影里的人工智能多半都是在描绘强人工智能,而这部分在目前的现实世界里难以真正实现(通常将人工智能分为弱人工智能和强人工智能,前者让机器具备观察和感知的能力,可以做到一定程度的理解和推理,而强人工智能让机器获得自适应能力,解决一些之前没有遇到过的问题)。
弱人工智能有希望取得突破,是如何实现的,“智能”又从何而来呢?这主要归功于一种实现人工智能的方法——机器学习。
2、机器学习:一种实现人工智能的方法
机器学习最基本的做法,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测。与传统的为解决特定任务、硬编码的软件程序不同,机器学习是用大量的数据来“训练”,通过各种算法从数据中学习如何完成任务。
举个简单的例子,当我们浏览网上商城时,经常会出现商品推荐的信息。这是商城根据你往期的购物记录和冗长的收藏清单,识别出这其中哪些是你真正感兴趣,并且愿意购买的产品。这样的决策模型,可以帮助商城为客户提供建议并鼓励产品消费。
机器学习直接来源于早期的人工智能领域,传统的算法包括决策树、聚类、贝叶斯分类、支持向量机、EM、Adaboost等等。从学习方法上来分,机器学习算法可以分为监督学习(如分类问题)、无监督学习(如聚类问题)、半监督学习、集成学习、深度学习和强化学习。
传统的机器学习算法在指纹识别、基于Haar的人脸检测、基于HoG特征的物体检测等领域的应用基本达到了商业化的要求或者特定场景的商业化水平,但每前进一步都异常艰难,直到深度学习算法的出现。
3、深度学习:一种实现机器学习的技术
深度学习本来并不是一种独立的学习方法,其本身也会用到有监督和无监督的学习方法来训练深度神经网络。但由于近几年该领域发展迅猛,一些特有的学习手段相继被提出(如残差网络),因此越来越多的人将其单独看作一种学习的方法。
最初的深度学习是利用深度神经网络来解决特征表达的一种学习过程。深度神经网络本身并不是一个全新的概念,可大致理解为包含多个隐含层的神经网络结构。为了提高深层神经网络的训练效果,人们对神经元的连接方法和激活函数等方面做出相应的调整。其实有不少想法早年间也曾有过,但由于当时训练数据量不足、计算能力落后,因此最终的效果不尽如人意。
深度学习摧枯拉朽般地实现了各种任务,使得似乎所有的机器辅助功能都变为可能。无人驾驶汽车,预防性医疗保健,甚至是更好的电影推荐,都近在眼前,或者即将实现。
4、人工智能vs机器学习vs深度学习----------三者区别
机器学习是一种实现人工智能的方法,深度学习是一种实现机器学习的技术。我们就用最简单的方法——同心圆,可视化地展现出它们三者的关系。
关于分支:
机器学习是人工智能的一个小分支,深度学习是机器学习的一个小分支。
人工智能是一个比机器学习更广泛的概念。它是关于将人类的认知智能如何传授给计算机的过程。任何机器使用算法以智能方式执行任务,这就是展现的人工智能。
机器学习是人工智能的一个子集。它是关于机器从一组数据中学习的能力。通过信息处理的这种学习增强了算法,从而提供更好的评估和对未来的预测。
深度学习深入机器学习,可以被认为是机器学习的一个子集。神经网络允许计算机模仿人类的大脑。就像我们的大脑天生的具有识别归类和分类信息的模式一样,神经网络也为计算机实现了同样的功能。深度学习有时也被称为深度神经网络,因为决策树的嵌套层次结构的层数是数以百万计的数据节点。
让你的机器学习人工智能认证计数
自从第一次工业革命以来,机器就一直驱动着我们的生活方式,使之成为当今工业4.0的趋势。因此,在某种程度上有必要通过让你很好地了解一个强大的技术平台,如机器学习、人工智能和深度学习,成为这一革命的一个组成部分。一旦你完成了它的来龙去脉,成功就在眼前拥抱你!
目前,业界有一种错误的较为普遍的意识,即“深度学习最终可能会淘汰掉其他所有机器学习算法”。这种意识的产生主要是因为,当下深度学习在计算机视觉、自然语言处理领域的应用远超过传统的机器学习方法,并且媒体对深度学习进行了大肆夸大的报道。
深度学习,作为目前最热的机器学习方法,但并不意味着是机器学习的终点。起码目前存在以下问题:
1.深度学习模型需要大量的训练数据,才能展现出神奇的效果,但现实生活中往往会遇到小样本问题,此时深度学习方法无法入手,传统的机器学习方法就可以处理;
2.有些领域,采用传统的简单的机器学习方法,可以很好地解决了,没必要非得用复杂的深度学习方法;
3.深度学习的思想,来源于人脑的启发,但绝不是人脑的模拟,举个例子,给一个三四岁的小孩看一辆自行车之后,再见到哪怕外观完全不同的自行车,小孩也十有八九能做出那是一辆自行车的判断,也就是说,人类的学习过程往往不需要大规模的训练数据,而现在的深度学习方法显然不是对人脑的模拟。
举例来了解机器学习
经研究预测,截至到2020年,企业采用机器学习、人工智能和深度学习、物联网(IOT)以及大数据将从他们那些不太知情的同行那里带走超过1兆2000亿美元。
数据是机器学习的关键。算法从一定数量的数据中学习,然后应用这种学习来做出明智的决策。Netflix有一个很好的关于下一个你想看的节目的想法,Facebook可以在照片中识别你和你的朋友,这要感谢机器学习.。
机器学习是关于自动执行任务的,它的应用跨越了广泛的行业领域。数据安全公司可以使用机器学习来追踪恶意软件,而金融公司可以使用它来增强其盈利能力这里有个例子,让我们考虑一个手电筒,无论什么时候,当“黑暗”一词出现在一个短语中的时候,它就会被程序打开。我们将使用的几个短语作为关于手电筒的机器学习算法的输入数据。
用程序语言来表达机器学习
为了解决业务的复杂性,并带来机器学习的技术创新,编程语言和框架技术不断地被引入和更新。一些编程语言来来往往,而一些被相关的、保留的还在经历着考验。这两个编程语言在机器学习和人工智能的圈子里是最强大的。还有其他语言如java、C++、Julia、SAS、MATLAB、Scala,还有很多。然而,我们讨论的仅限于Python和R这两个语言.
Python不仅流行,还很简单,并且功能众多。它是一种能在所有主流平台上使用的便携式编程语言,如Linux、Windows、MAC和UNIX。Python不仅作为Web应用开发的通用语言,而且还可以作为科学计算、数据挖掘和分析的专用语言。如果有一种在招聘人员中最喜欢的机器学习和AI的编程技术,那就肯定是Python了。
R语言是适用于机器学习的另一种编程语言,并且它与统计学家和数学家有着密切的联系。现在,虽然机器学习本身与统计学的原理密切相关,但是R作为机器学习语言可以带来巨大的好处。如果你希望在大数据中解决模式问题,R语言是最佳选择,它是由统计学家和科学家设计的,很方便地用于数据分析。
机器学习算法的工作原理
机器学习算法评估一个用一种特殊的数据来泛化的预测模型。因此,必须有大量的实例,以供机器学习算法用来理解系统的行为。现在,当机器学习算法与新类型的数据一起出现时,系统将能够生成类似的预测。了解机器学习算法的不同组成部分和它们之间的相互关系,可以使机器学习任务变得更加容易。
机器学习算法有一个结构化的学习组件,使他们有能力理解输入数据中的模式,从而导致输出。
输入数据 -> 模式 -> 机器学习算法 -> 推断/输出
这里让"Y"表示未来的预测结果,让"X"表示输入的实例.那么,我们得出这个表达式:
Y=f (X)
其中“Y”也称为映射函数,“f”称为目标函数。“f”总是未知的,因为它在数学上是无法确定的。因此,机器学习被用来获得目标函数的近似值,“f”。机器学习算法考虑到关于目标函数的几个假设,并用一个带有评估的假设来开始。为了得到输出的最佳估值,进行了大量的假设迭代。正是这种假设使得机器学习算法能够在短时间内得到一个更好地逼近目标函数的近似值。