“教学参考-12”版本间的差异

来自cslt Wiki
跳转至: 导航搜索
第18行: 第18行:
 
* 模型训练的基础方法:首先将学习目标定义成合理的数学形式,这一数学形式称为目标函数。目标函数的参数即是模型的参数。选择一个数据集(称为训练集),利用合理的优化方法来调整模型参数,使得目标函数在该训练集上的取值最大,即完成了模型训练过程。
 
* 模型训练的基础方法:首先将学习目标定义成合理的数学形式,这一数学形式称为目标函数。目标函数的参数即是模型的参数。选择一个数据集(称为训练集),利用合理的优化方法来调整模型参数,使得目标函数在该训练集上的取值最大,即完成了模型训练过程。
 
[[文件:Apple-orange.png]]
 
[[文件:Apple-orange.png]]
* 举例:以区分苹果-桔子的学习任务来举例说明。我们设计一个简单的模型: Y = a  ✖ C + b ✖ S ,其中C代表颜色,S代表大小,(a,b)为待学习的模型参数。
+
* 以区分苹果-桔子的学习任务来举例说明。我们设计一个简单的模型: Y = a  ✖ C + b ✖ S ,其中C代表颜色,S代表大小,(a,b)为待学习的模型参数。
 
+
* 收集一个训练集,集中包含若干桔子和苹果的样例,每个样例表示成(C,S,T)的形式,其中T代表水果的真实类别,T=0时代表桔子,T=1时代表苹果。我们希望Y与T越接近越好,这样就可以用Y来预测T。
 
+
* 设计一个目标函数 L=||Y-T||2。显然,L越小,说明Y和T越接近,模型越精确。因此,模型训练任务可以转化成目标函数L的最小化任务,即通过选择参数(a,b),使训练集中所有样本上计算得到L之和最小。
 
+
* 对目标函数求最小值可以有多种方法。右图展示了一种逐渐优化的训练过程:首先对(a,b)随机取值,然后在这一取值附近随机选择一组新的取值,如果目标函数没有增长,则丢掉该参数值,否则予以保留。这一过程重复进行,如(A) -(D)所示。经过若干次尝试后,桔子-苹果的分类面就会变得越来越准确。
===机器学习基本框架===
+
 
+
* 实现机器自主学习需要解决五个基本问题:
+
:*学习的目标是什么?是分类更精确,还是预测更合理?如何将这一目标定义成数学形式?
+
:*学习的主体是什么?是神经网络的连接,还是产生式规则的排序?
+
:*如何学习?是通过模拟生物进化,还是通过数值优化方法?这是学习算法的问题。
+
:*学习的材料是什么?是观察到的图片,还是听到的声音?这是数据的问题。
+
:*学习应满足什么样的条件,或遵循什么样的规则?这些条件和规则通常以先验知识的形式包含在模型设计中。例如,对图像处理任务,卷积神经网络通常可以模拟人类视觉系统的处理方式,因此往往性能更好。
+
 
+
 
+
===机器学习与人工智能===
+
 
+
* 人工智能是一门科学,其目的是让机器拥有人的智能。人工智能中包含很多种方法,机器学习是其中之一,是通过学习积累知识、实现智能的方法。目前,机器学习是人工智能最重要的方法。
+
* 通过自主学习,机器有可能打破人类知识的上限,获得人类尚未发现的新知识,发现达到目标的新途径,从而获得“超人”的智能。
+
* 今天人工智能所展现出的强大能力,包括人们谈论的人工智能威胁,很大程度上来源于机器学习,因为只有自主学习的机器,才可能超越它的创造者,拥有难以预期的强大能力。
+
* 值得说明的是,让机器学习的思想在图灵时期就提出来了,图灵还认为这是实现智能机器的基础方案。后来的SNARC神经网络也具有学习能力。然而,机器学习在人工智能发展的最初三四十年里并没有占据主流,人工智能的发展最初并没有按照图灵的思路进行下去。
+
* 早期人工智能研究者认为,学习能力是人的基础智能之一,是人工智能的研究目标之一,即如何让机器模拟人类的学习能力。这种思想并没有意识到学习的基础性地位,而是把它列为和推理、运动、计划等并列的智能之一进行处理。这一思想极大影响了机器学习在人工智能中的地位。如果翻开当时的教科书,你会发现“机器学习”只是其中很短的一章,大部分在讲人为设计的搜索算法,知识表达等等。
+
* 随着时代的变化,研究者渐渐发现,机器学习不应该视为人工智能的目标之一,而应该是一种基础方法,是比其它智能更基础、更重要的能力。不会运动不怕,只要会学习就可以;不会推理也不怕,只要会学习就可以...依此类推,所有思维能力都可以通过学习获得。
+
* 这种“学习是第一推动力”是一种全新的思想,在90年代以后开始成形,极大推动了人工智能的发展,成为今天人工智能革命的起点。有趣的是,这一思路正是图灵六十年前的思路。
+
 
+
 
+
 
+
===机器学习的例子:苹果和桔子分类===
+
 
+
* 我们的目标是对苹果和桔子进行分类。基于生活经验,我们知道又大又红的更可能是苹果,小一些颜色偏橙黄色的是桔子。基于这一知识,我们以“颜色”和“大小”作为特征,设计一个分类模型:  Y = a  ✖ 颜色 + b ✖ 大小
+
* 在上述模型中,我们并不指定参数a和b的值,而是给机器一些苹果和桔子的样例(数据),让机器自我学习a和b的取值。
+
* 为了使上述学习任务具有明确的数学形式,我们设桔子的标记T=0,苹果的标记T=1,学习算法通过调整(a,b)的取值,使分类模型的输出Y近可能接近T。
+
* 当学习完成后,就得到一个预测模型。基于这一模型,得到一个分类面,这个分类面一侧的Y>0.5,一侧Y<0.5,分类而上Y=0.5。分类面是线性的,因此称为线性模型。
+
* 对一个新样本利用分类模型公式计算它的Y值,如果<0.5则认为是桔子,如果>0.5则认为是苹果。这是机器学习的基本流程。
+

2022年8月2日 (二) 11:42的版本

教学目标

  • 理解机器学习系统构造的基本流程:模型设计-训练-测试-选择
  • 了解流程中每一步的基本原则和基本方法
  • 了解数据对机器学习的重要性

教学内容

模型设计

  • 没有免费的午餐: 机器学习里有很多种模型,每种模型都有其适用范围,没有哪一种模型在所有场景下都优于其他模型。这一结论在机器学习里是一条可严格证明的定理,称为“没有免费的午餐”定理。
  • 机器学习实践中很重要的一点是深入理解任务场景,设计与场景匹配的模型。模型设计合理,可以极大提高学习效率,改善模型的性能。机器学习很大程度上是一种权衡的艺术
  • 在模型设计中,需要考虑的因素包括:数据的格式和数据量,数据的分布形式,训练过程的内存和计算开销,可容忍的错误率,运行时的硬件能力、外部环境干扰等。在设计型时需要对这些因素综合考虑,得到最合适的建模方案。

模型训练

  • 设计好了模型之后即需要对它进行学习,这一过程称为模型训练。
  • 模型训练的基础方法:首先将学习目标定义成合理的数学形式,这一数学形式称为目标函数。目标函数的参数即是模型的参数。选择一个数据集(称为训练集),利用合理的优化方法来调整模型参数,使得目标函数在该训练集上的取值最大,即完成了模型训练过程。

Apple-orange.png

  • 以区分苹果-桔子的学习任务来举例说明。我们设计一个简单的模型: Y = a ✖ C + b ✖ S ,其中C代表颜色,S代表大小,(a,b)为待学习的模型参数。
  • 收集一个训练集,集中包含若干桔子和苹果的样例,每个样例表示成(C,S,T)的形式,其中T代表水果的真实类别,T=0时代表桔子,T=1时代表苹果。我们希望Y与T越接近越好,这样就可以用Y来预测T。
  • 设计一个目标函数 L=||Y-T||2。显然,L越小,说明Y和T越接近,模型越精确。因此,模型训练任务可以转化成目标函数L的最小化任务,即通过选择参数(a,b),使训练集中所有样本上计算得到L之和最小。
  • 对目标函数求最小值可以有多种方法。右图展示了一种逐渐优化的训练过程:首先对(a,b)随机取值,然后在这一取值附近随机选择一组新的取值,如果目标函数没有增长,则丢掉该参数值,否则予以保留。这一过程重复进行,如(A) -(D)所示。经过若干次尝试后,桔子-苹果的分类面就会变得越来越准确。