当前位置 : 首页/人工智能/机器学习/机器学习定义及其学习步骤详解

机器学习定义及其学习步骤详解

发布时间:2021年9月9日 15:36 作者:誉新源

一、什么是机器学习呢?


前面讲了那几个人工智能的领域,那么,机器学习和人工智能还有什么关系呢?


这里面的机器学习实际上既可以是人工智能的一个研究领域,也可以是一种实现人工智能的方法。


认为这是一种方法,因为以上所有领域都将使用机器学习。正如做自然语言处理一样,那实际上是在做基于机器学习方法的自然语言处理算法。


认为这是一个领域,因为机器学习也有许多研究,比如强化学习、弱监督学习、最优化算法、抽样方法等等。


接下来回到机器学习的话题。实际上,机器学习研究的是如何模拟人或实现人类学习的行为,从而有能力应付新任务。


那么学的是什麽?实际上是数据。


机器学习是一门数据驱动的科学,人类可以从历史数据中学习经验,再一次面对类似问题时,就能想出相应的解决办法。机器学习实际上就是通过对历史数据进行学习得到一个模型,该模型具有预测未知数据的能力。


1.人工智能的数学表达


把机器学习作为一种数学形式,那麽机器学习实际上是学习一个函数。在此,我们把输入当作理想输出,而理想输出当作,那么么些机器学习形式,使其成为现实。


面对不同的任务,我们会有不同的看法。如下面这张图是语音识别,即图片分类。


而且对于获得不同形式的方法,则对应着不同的机器学习算法,百度一搜就能搜出一大堆,这里就不再举例了。


深信已经学过函数的人,不难理解以上内容。但是实际上,我们在书里看到的并不像这样。作者第一次学习机器学习时,还是看机器学习相关的书籍,记得当时看到里面一堆数学符号,每一次感觉一点都看懂了一点,又觉得一点也不懂,看得是一脸懵逼。


接下来我们就开始添加符号。


2.添加数据


想想刚才说的,机器学习实际上是一门数据驱动的科学。那几个人开始增加数据。


在这里,数据的输入被定义为,包含n个样本,组成数据集。使用代表数据集的第i个样本。


类似地,数据的理想输出,或称为标签的数据,组成数据集合的标签集。使用代表一组标签的第i个样本。在这里就是一一对应。


下面是验证码识别的数据集,这里有一些验证码的图片,每一张都有一个文件名。


这就是这幅图(这实际上是一张图片的二维数组,以后的图像处理将讨论如何将图像读入程序的阵列):


这张图片的文件名为:2bfwr。


如今我们的目标实际上变成了:使成立。


3.添加参数


当然,加入数据并不代表最终结果,我们还可以使用函数参数来表示,表示一系列参数。


假设我们的函数形式是一次函数,那么这里的函数也有两个参数,像:


在添加参数之后,我们的目标实际上变成:使成立。


这个公式在英文中是这样的:given,parameterizedbyis.。


4.机器学习数据集


下面我们来看一下机器学习的数据集。


以上我们得到的目标是:命令成立。事实上,我们在学习时,我们的目标就是学习历史数据,让新的数据能够成功预测出来。


因此,在数据构建时,需要我们将数据集分成最少的两个部分:一部分作为历史数据,也就是训练集;另一部分作为未知数据,作为测试集处理。培训集的标签和测试集的标签表示如下:、
在我们前面的输入变成了测试集的每个样本,然后数据集变成了。当前的目标是可以实现的。也就是说,通过对训练数据的学习,可以成功地预测出测试集中的每一项数据。


5.机器学习算法流程


接下来,我们将查看机器学习算法的流程。


1.评估指标


在上面添加了数据集之后,我们的目标实际上是让每个测试集合与标签相同。事实上,这一条件非常苛刻。


此处定义了一个评估函数,用来表示在测试集合中预测好的结果。


例题:对于一项文本分类任务,我们可以将其作为评价指标的正确率(在此阶段)作为评价指标:


这一指标当然是越高越好,在弱化之前就能预测每个样本是否正确,机器学习的目标现在变成了最大化测试集的评估指标。


2.损耗函数


其次,定义了一种损失函数,用以表示预测值与真实值的接近程度。


对损失函数进行了分类,并将在以后的课程中加以介绍。在这里只需要知道,损失函数通常为正,而且,在那个时候,预测值与实际值相等。


以前一直说,机器学习是学习数据。并且机器的这种学习过程,就是要使训练数据损失函数最小化,即:


此处要解的也就是,求使上式最小化时的值。


请注意:


(argmin表示变量值,使目标函数取最小值)


数学符号在这里看起来有点吓人,但实际上也就是,与我们解一元函数的参数相似,很可能会算出来,那么我们最后得到的形式也是。


6.总结


基于机器学习的算法流程也是这样的:通过使训练集的损失函数最小化,从而达到最大化测试集的评价指标。利用训练集进行学习,将测试集预测的能力称为泛化能力,机器学习模型将具有这种能力。


看着这我们可能会有一个疑问,对什么叫机器学习没有直接最优化的评价指标?


同时还可以通过最大化训练集的评价指标来最大化测试集的评价指标。事实上,很多机器学习任务在这里,是很难直接优化评价指标的,比如说,上面提到的准确率,或者说正确的个数,这在函数中是不可导的,用微积分也是不可微的,是很难直接优化的。


诚然,有些时候我们也可以直接优化评价指标,这时我们只需取一个负号,令,也就是最小化“负评价指标”,即最大化评价指标。


损耗函数可提供更一般的形式。


二、机器学习分类


1.按标签是否分类


以上所举的例子实际上都是有标签的数据集,但是有些时候数据集没有标签。依据数据集是否标记可分为监督学习和非监督学习。


监管学习的培训数据如:;非监督数据如:


这个系列的课程以及后面的课程所涉及的内容都是监督学习的,也就是说,数据都是有标签的,读者如果有兴趣可以自己看看无监督学习方面的内容。
按照输出的标签分类。


2.按照标签输出的类型

可分为回归问题、分类问题和时间序列问题。


返回问题输出的标签是数值类型,比如:房价预测,股价预测,结果都是具体的数值,取值有无限可能。


这类问题输出的标签是类别,比如:动物识别,垃圾短信分类,预测结果是一个有限的类别。


时序问题输出的标签是一系列的,比如:机器翻译,看图说话,预测结果就是单词的序列。


3.机器学习系统的实现步骤


下面我们来看一下一个机器学习系统所需要的步骤,实际上,它只需要以下五个步骤。


1.收集数据:这也是构建我们的和的步骤,通常我们选择一个网络中已有的数据集。


2.特征工程:本步骤将把我们的数据转化为有用的信息。选择有用的信息,删除无用的信息,比如我们要预测二手房的价格,那么我们可能会房子面积、地理位置、是否南北通透等,与卖家的年龄,卖主身高没有什么关系。


3.训练模型:这里要选择机器学习算法,以及最优化方法,来得到我们的函数。


4.测试调优:这里需要不断尝试各种方法,以达到更好的效果。


5.使用模型:所有这些方法最终都获得一个好的模型后,即可投入使用。