有两个月没更新了,这两个月主要研究了下深度学习,在我们的产品上训练了几个模型并应用在产品上。总结以下这两个月的工作,这是第一篇。

机器学习介绍

人工智能、机器学习、深度学习概念

它们之间的关系如下图所示:

人工智能

人工智能起始于1950年,当时,一些计算机科学机提出了一个问题——计算机能够思考吗?现在,这个问题仍然在探索中。 人工智能的一个简洁定义——“ the effort to automate intellectual tasks normally performed by humans”. 根据这样一个定义,人工智能包括机器学习、深度学习以及一些其它不通过学习的方法。早期的智能象棋程序,是由程序员制定的各种规则来工作的,并不包含机器学习的成分。 在相当长的一段时间内,许多专家都认为人工制定一个足够大的规则集就可以创造出人工智能,这个方法被叫做符号AI(symbolic AI),在1950年到1980年间,这个方法是人工智能的主流。

尽管符号AI适用于一些定义良好的、有逻辑的问题(比如象棋),它并不适用于规则难以表述的模糊问题,这类问题包括图像识别、语音识别等。这时另一个方法闪亮登场了——机器学习。

机器学习

什么是机器学习

机器学习来自于这样一个问题:计算机除了能够做我们告诉它们做的,可以自己学习来完成一个特定的任务吗?不是通过程序员人工指定相应的规则来处理数据,而是计算机通过观察数据本身能够学习到这些规则吗?在传统的程序中,人们输入数据和处理数据的规则,得到运行结果。在机器学习中,我们输入的是数据以及其对应的结果,机器学习来学习这些规则。而使用这些规则,可以处理新的数据。

一个机器学习系统是训练出来的。系统通过观察许多任务相关的例子来找到其中的统计结构(statistical structure),最终提出相应的规则来完成任务。

机器学习和统计学很相关,但是又有一些重要的区别:机器学习处理大量的数据,比如几百万个图片,每个图片都有上万个像素,而这对于统计分析方法是不现实的;机器学习展示了很少的数学理论,目前阶段实验的作用大于理论。

最后,一种经常引用的英文定义是:A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E。

机器学习的分类

机器学习可以分成下面几种类别:

算法参考:

机器学习做了什么

机器学习通过数据来学习规则,但是这个规则并不是无中生有的,是我们将所有假设都放在一个模型中,然后利用算法搜索这个模型,找到一个最好的。

所以,一个机器学习算法包括三个部分:

深度学习

我们已经了解了机器学习,那深度学习又是什么呢?深度学习是从人工神经网络的基础上发展出来的,它只是比人工神经网络更“深”,这也就是“深度”的由来。

人工神经网络

使用模拟人脑的方式来工作,当然也仅仅是模拟。

深度学习的意思

一个人工神经网络的层数叫做模型的深度,而深度学习就是说这个深度的值很大,目前的模型中少的十几多的一两百层。其实深度学习的另一个比较好理解的名字叫做layered representations learning 或 hierarchical representations learning。

深度学习的本质:a deep learning model is "just" a chain of simple, continuous geometric transformations mapping one vector space into another. All it can do is map one data manifold X into another manifold Y, assuming the existence of a learnable continuous transform from X to Y, and the availability of a dense sampling of X:Y to use as training data。