《机器学习》练习题与解答1.小刚去应聘某互联网公司的算法工程师,面试官问他“回归和分类有什么相同点和不同点”,他说了以下言论,请逐条判断是否准确。1)回归和分类都是有监督学习问题[单选题][必答题]○对○错参考答案:对。解析:这道题只有一个同学做错。本题考察有监督学习的概念。有监督学习是从标签化训练数据集中推断出函数的机器学习任务。有监督学习和无监督学习的区别是:机器学习算法的图谱如下:在回归问题中,标签是连续值;在分类问题中,标签是离散值。具体差别请看周志华《机器学习》书中的例子,一看便懂:2.背景同上题。请判断2)回归问题和分类问题都有可能发生过拟合[单选题][必答题]○对○错答案:对解析:这题有两个同学做错。过拟合的英文名称是Over-fitting(过拟合)。为了说清楚“过”拟合,首先说一下“拟合”【拟合的几何意义】:从几何意义上讲,拟合是给定了空间中的一些点,找到一个已知形式未知参数的连续曲线或曲面来最大限度地逼近这些点。一个直观的例子,是下面的电阻和温度的例子。我们知道在物理学中,电阻和温度是线性的关系,也就是R=at+b。现在我们有一系列关于“温度”和“电阻”的测量值。一个最简单的思路,取两组测量值,解一个线性方程组,就可以求出系数a、b了!但是理想是丰满的,现实是残酷的!由于测量误差等的存在,我们每次测量得到的温度值和电阻值都是有误差的!因此,为了提高测量精度,我们会测量多次,得到多组的值,这样就相当于得到二维平面上的多个点,我们的目标是寻找一条直线,让这条直线尽可能地接近各个测量得到的点。拟合的数学意义:在数学的意义上,所谓拟合(fit)是指已知某函数的若干离散函数值{f1,f2,…,fn}(未必都是准确值,有个别可能是近似甚至错误值),通过调整该函数中若干待定系数f(λ1,λ2,…,λn),使得该函数与已知点集的差别(最小二乘意义)最小。【说说过拟合】古人云“过犹不及”。所谓“过”拟合,顾名思义,就是在学习的集合(也就是训练集)上拟合的很不错,但是有点过头了,什么意思?他能够在学过的数据上判断的很准,但是如果再扔给它一系列新的没学习过的数据,它判断的非常差!比如古时候有个教书先生教小明写数字,“一”字是一横,“二”字是两横,“三”字是三横。然后,小明说,老师你不用教我写数字了,我都会写。老师很惊讶,那你说“万”字怎么写,结果小明在纸上写下了无数个“横”。。用台湾大学林轩田老师的话说,过拟合是“书呆子”,“钻牛角尖”。如果用过于复杂的模型来刻画简单的问题,就有可能得到“聪明过头”的结果。比如下面预测房子的价格(price)和size之间关系的问题(来源于andrewng的ppt)通过五组数据,我们通过肉眼直观地看,可以初步判断房屋的价格和size之间是二次函数的关系,也就是中间这幅图所拟合的情况。而右边这幅图中,自作聪明地用了一个四次函数来拟和这五组数据,虽然在已知的五个数据上都是100%准确,却得出了“当房子的size大于某个值时房子的价格会随着房屋面积增大而越来越低”这样的荒谬结论!这样的是过拟合。左边这个用一条直线来拟合但是拟合的误差很大也不置信,这叫“欠拟合”。在周志华老师的书中,举的例子是这样的:发现了没有?周志华老师用的是“是不是树叶”这样的分类问题举例,andrewng用的是“房价和房屋面积的关系”这样的回归问题举例。这说明,分类和回归都有可能过拟合。3.背景同上题。请判断3)一般来说,回归不用在分类问题上,但是也有特殊情况,比如logistic回归可以用来解决0/1分类问题[单选题][必答题]○对○错答案:对解析:Logistic回归是一种非常高效的分类器。它不仅可以预测样本的类别,还可以计算出分类的概率信息,在一线互联网公司中广泛的使用,比如应用于CTR预估这样的问题中。这里我们不详细说明其原理,后续课程会讲到。很多人对它的名字会产生疑问,挂着“回归”的头,卖的是“分类”的肉,别扭的慌。其实我们不用纠结它到底是“回归”,还是“分类”,非得二选一。可以参考一下百度百科关于“logistic回归”的词条其中举了一个富士康员工“自杀的日期”与“累计自杀人数”之间关系的例子,并通过logistic回归分析来拟合出一条曲线。这说明logistic回归本身也有一定的解决“回归”问题的能力,只是工业界都用它来解决分类问题。4.背景同上题。请判断4)对回归问题和分类问题的评价最常用的指标都是准确率和召回率[单选题][必答题]○对○错答案:错解析:本题有四个同学选错。这道题的用意是提醒大家注意,对回归问题的评价指标通常并不是准确率和召回率,从“房价与房屋面积之间关系预测”这个例子来说,一个已知数据点离预测的曲线之间的距离是多少时能够判定为“准确”,距离为多少时判定为“不准确”?没办法区别。准确率对于度量回归问题的效果其实并不适用。回归问题的误差一般通过“误差”来评估,比如RMSE等。在滴滴大数据竞赛中用的是这样的一个指标很显然不是用的“准确率”来评定。5.背景同上题。请判断5)输出变量为有限个离散变量的预测问题是回归问题;输出变量为连续变量的预测问题是分类问题;[单选题][必答题]○对○错答案:错解析:说反了6.向量x=[1,2,3,4,-9,0]的L1范数是多少[单选题][必答题]○1○19○6○sqrt(111)答案:19解析:这题错了三个同学,其实很简单。请记住:L0范数是指向量中非0的元素的个数。L1范数是指向量中各个元素绝对值之和,也有个美称叫“稀疏规则算子”(Lassoregularization)。L2范数是指向量各元素的平方和然后求平方根。7.小明参加某公司的大数据竞赛,他的成绩在大赛排行榜上原本居于前二十,后来他保持特征不变,对原来的模型做了1天的调参,将自己的模型在自己本地测试集上的准确率提升了5%,然后他信心满满地将新模型的预测结果更新到了大赛官网上,结果懊恼地发现自己的新模型在大赛官方的测试集上准确率反而下降了。对此,他的朋友们展开了讨论,请将说法正确的选项打勾(不定项选择题)[多选题][必答题]□小芳:从机器学习理论的角度,这样的情况不应该发生,快去找大赛组委会反应□小刚:你这个有可能是由于过拟合导致的□小月:早就和你说过了,乖乖使用默认的参数就好了,调参是不可能有收益的□小平:你可以考虑一下,使用交叉验证来验证一下是否发生了过拟合答案:选择第二项、第四项解析:大家都同意第二项,是过拟合导致的。设置第四项的目的,是提醒大家,交叉验证可以用于防止模型过于复杂而引起的过拟合。具体什么是交叉验证,请期待后续课程。8.关于L1正则和L2正则下面的说法正确的是[多选题][必答题]□L2范数可以防止过拟合,提升模型的泛化能力。但L1正则做不到这一点□L2正则化标识各个参数的平方的和的开方值。□L2正则化有个名称叫“Lassoregularization”□L1范数会使权值稀疏答案:第二项、第四项解析:同第6题9.判断这个说法对不对:给定n个数据点,如果其中一半用于训练,另一半用于测试,则训练误差和测试误差之间的差别会随着n的增加而减小[单选题][必答题]○对○错答案:对解析:训练数据越多,拟合度越好,训练误差和测试误差距离自然越小八卦:亲们,这道题曾经出现在《百度2016研发工程师笔试题》。咱们有四个同学做错。10.Consideraproblemofbuildinganonlineimageadvertisementsystemthatshowstheusersthemostrelevantimages.Whatfeaturescanyouchoosetouse?[单选题][必答题]○concrete,abstract○concrete,raw,abstract○concrete,raw○concrete答案:B解析:本题源于林轩田《机器学习基石》课件,给在线图片广告系统挑选特征。concreteuserfeatures,rawimagefeatures,andmaybeabstractuser/imageIDs大致理解一下特征的几种类型,请做错的同学去看一下林轩田老师的视频11.【附加题】考虑回归一个正则化回归问题。在下图中给出了惩罚函数为二次正则函数,当正则化参数C取不同值时,在训练集和测试集上的log似然(meanlog-probability)。请判断这个说法是否正确:随着C的增加,图中训练集上的log似然永远不会增加[单选题][必答题]○对○错答案:对