课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
机器学习是我们学习人工智能技术的时候需要掌握的核心技术之一,而今天我们就一起来了解一下,关于机器学习我们都需要掌握哪些学习方法。
1.学习=表征+评估+优化
你有一个应用程序,你认为机器学习可能是一个很好的选择。现在,一旦进入机器学习的世界,有大量的学习算法可供使用,每年发布数百种。用哪一个?
在这个巨大的空间中不迷路的关键,是要理解所有学习算法都包含三个核心要素:
表征(Representation):输入数据,即要使用的特征,学习器(learner)和分类器(classifier)必须以计算机可以理解的语言表示。学习器可以训练的分类器的集合称为学习器的假设空间。如果分类器不在假设空间中,则无法进行学习。
说明:我们所说的分类器与学习器的含义是什么?假设有训练数据,并使用该数据构建另**一个程序(模型),例如决策树。学习器将是从输入数据构建决策树模型的程序,而决策树模型将是**分类器(能够为每个输入数据样本提供预测输出的东西)。
评估(Evaluation):需要一个评价函数来区分好的分类器和坏的分类器。算法内部使用的评估函数是一个,而我们希望的分类器的外部评估函数可能是另外一个(为了便于优化,也由于后面讨论的问题)。
优化(Optimization):后,我们需要一种方法来搜索分类器,以便我们可以选择好的分类器。优化技术的选择是提高学习器效率的关键。开始时使用现成的优化器是很常见的做法,如果需要的话,可以稍后用自定义的来替换它。
2.泛化很重要
机器学习的基本目标是超越训练集中的样本进行泛化。因为,无论我们有多少数据,我们都不太可能在测试时再次看到这些确切的样本。在学习上表现出色很容易,初学者常见的错误是对训练数据进行测试并产生成功的假象。如果选择分类器然后在新的数据上进行测试,这样做通常不会比随机猜测更好。所以,从一开始就把一些数据放在一边,只在后用它来测试所选的分类器,然后在整个数据上学习那个终的分类器。
当然,保留数据会减少可供学习的数据量,这可以通过进行交叉验证来缓解:将训练数据随机划分为(例如)10个子集,每次用其中9个子集进行训练,用剩下的一个样本测试学习后的分类器,权衡它们的结果来评估特定参数的设置效果如何。
3.仅有数据是不够的
把泛化当成目标时,会遇到另一个主要的后果:不管有多少数据,单凭数据是不够的。假设我们想从一百万个样本中学习100个变量的布尔函数(yes/no分类),这意味着有2^100-10^6个不知道是什么分类的样本。在没有更多信息的情况下,这怎么能比抛硬币更有效呢?
听起来我们被卡住了吧?幸运的是,我们想要在现实世界中学习到的函数,并不是从所有数学上可能的函数一步步地推导出来的!事实上,非常一般的假设–比如相似的样本有相似的分类–是机器学习能成功的一个重要原因。
这意味着领域知识和对数据的理解对于做出正确的假设非常重要。学习过程中对知识的需要是很自然的,机器学习不是魔术,它不能从虚无中得到什么,它所做的是从较少的数据中得到更多的信息。与所有的工程一样,编程也是一项艰巨的工作:我们必须从头开始构建一切。学习更像是农业耕作,让大自然做大部分的工作,而农民把种子和营养物质结合起来种植农作物。学习器将知识与数据结合起来,以编出程序。
4.过拟合的多种面孔
熟悉机器学习的每个人都知道过拟合,但它有多种形式,并不是很明显。理解过拟合的一种方法是将泛化误差分解为偏差和方差。
偏差是学习器一直学习同样错误。无论真实情况如何,方差是学习与真实信号无关的随机事物。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!