阅读之前看这里:博主是正在进行数据分析师求职的一员,博客记录的是在学习和求职过程中一些总结,也希望和大家一起进步,在记录之时,未免存在很多疏漏和不全,如有问题,还请私聊博主指正。
博客地址:天阑之蓝的博客,学习过程中不免有困难和迷茫,希望大家都能在这学习的过程中肯定自己,超越自己,最终创造自己。
在进行模型训练的时候,模型的误差是由偏差和方差相加而成的。
偏差(bias):反映了模型在训练集样本上的期望输出与真实结果之间的差距,即模型本身的精确度,反映的是模型本身的拟合能力。偏差过高说明模型存在欠拟合现象,说明模型过于简单,需要提高模型的复杂度。
方差(variance): 反映了模型在不同的训练集下得到的结果与真实结果之间的误差的波动情况,即模型的稳定性。模型过于复杂时,会学习模型中的噪声,造成过拟合现象。
参数模型有:线性回归模型、逻辑回归、朴素贝叶斯等。
非参数模型,对目标函数的形式不做过多的假设,学习算法可以自由地从训练数据中学习任意地函数。
常见地非参数模型有:SVM模型,决策树模型,随机森林等
生成模型由数据学习联合概率分布 P ( X , Y ) P(X,Y) P(X,Y),然后求出条件概率密度分布 P ( Y ∣ X ) P(Y|X) P(Y∣X)作为预测的方法。
之所以称为生成方法,是因为模型表示了给定输入X产生输出Y的生成关系。
典型的生成模型有:朴素贝叶斯法和隐马尔科夫模型
判别模型是由数据直接学习决策函数 f ( X ) f(X) f(X)或者条件概率分布 P ( Y ∣ X ) P(Y|X) P(Y∣X)作为预测的模型。
判别模型关注的是给定的输入X,应该预测什么的输出Y
典型的判别模型有:k近邻法、感知机、决策树、logistic回归,支持向量机等
优缺点:
生成模型可以还原出联合概率分布,而判别方法不能。
生成方法的学习收敛速度更快,即当样本容量增加的时候,学到的模型可以更快收敛于真实模型。
存在隐变量时,仍然可以使用生成模型方法学习,此时判别方法不能用
判别方法直接预测决策函数,学习准确率更改,可以对数据进行各种成都上的抽象、定义特征并使用特征,因此可以简化学习问题。适用范围更广,计算量小一些,常用的还是判别模型。
一方面,缺失值较多.直接将该特征舍弃掉,否则可能反倒会带入较大的noise,对结果造成不良影响。
另一方面缺失值较少,其余的特征缺失值都在10%以内,我们可以采取很多的方式来处理:
在训练的过程中,通过Gini指数选择分离点的特征,一个特征被选中的次数越多,那么该特征评分越高。
答:这个问题给了你足够的提示来开始思考!由于数据分布在中位数附近,让我们先假设这是一个正态分布。
我们知道,在一个正态分布中,约有68%的数据位于跟平均数(或众数、中位数)1个标准差范围内的,那样剩下的约32%的数据是不受影响的。
因此,约有32%的数据将不受到缺失值的影响。
你的大脑里可能已经开始闪现各种机器学习的算法。但是等等!这样的提问方式只是来测试你的机器学习基础。这不是一个机器学习的问题,而是一个路径优化问题。
机器学习问题由三样东西组成:
1.模式已经存在。
2.不能用数学方法解决(指数方程都不行)。
3.有相关的数据。
低偏差意味着模型的预测值接近实际值。换句话说,该模型有足够的灵活性,以模仿训练数据的分布。貌似很好,但是别忘了,一个灵活的模型没有泛化能力。这意味着,当这个模型用在对一个未曾见过的数据集进行测试的时候,它会令人很失望。
在这种情况下,我们可以使用bagging算法(如随机森林),以解决高方差问题。bagging算法把数据集分成重复随机取样形成的子集。然后,这些样本利用单个学习算法生成一组模型。接着,利用投票(分类)或平均(回归)把模型预测结合在一起。
另外,为了应对大方差,我们可以:
1.使用正则化技术,惩罚更高的模型系数,从而降低了模型的复杂性。
2.使用可变重要性图表中的前n个特征。可以用于当一个算法在数据集中的所有变量里很难寻找到有意义信号的时候。
你可能会说不,但是这有可能是不对的。丢弃相关变量会对PCA有实质性的影响,因为有相关变量的存在,由特定成分解释的方差被放大。
例如:在一个数据集有3个变量,其中有2个是相关的。如果在该数据集上用PCA,第一主成分的方差会是与其不相关变量的差异的两倍。此外,加入相关的变量使PCA错误地提高那些变量的重要性,这是有误导性的。
答:真阳性率=召回。是的,它们有相同的公式(TP / TP + FN)。 注意:要了解更多关于估值矩阵的知识。
答:你可以引用ISLR的作者Hastie和Tibshirani的话,他们断言在对少量变量有中等或大尺度的影响的时候用lasso回归。在对多个变量只有小或中等尺度影响的时候,使用Ridge回归。
从概念上讲,我们可以说,Lasso回归(L1)同时做变量选择和参数收缩,而ridge回归只做参数收缩,并最终在模型中包含所有的系数。在有相关变量时,ridge回归可能是首选。此外,ridge回归在用最小二乘估计有更高的偏差的情况下效果最好。因此,选择合适的模型取决于我们的模型的目标。
答:以下是你可以使用的选择变量的方法:
1.选择重要的变量之前除去相关变量
2.用线性回归然后基于P值选择变量
3.使用前向选择,后向选择,逐步选择
4.使用随机森林和Xgboost,然后画出变量重要性图
5.使用lasso回归
6.测量可用的特征集的的信息增益,并相应地选择前n个特征量。
答:我们可以用下面的方法来处理:
1.把缺失值分成单独的一类,这些缺失值说不定会包含一些趋势信息。
2.我们可以毫无顾忌地删除它们。
3.或者,我们可以用目标变量来检查它们的分布,如果发现任何模式,我们将保留那些缺失值并给它们一个新的分类,同时删除其他缺失值。
答:这种推荐引擎的基本想法来自于协同过滤。
协同过滤算法考虑用于推荐项目的“用户行为”。它们利用的是其他用户的购买行为和针对商品的交易历史记录、评分、选择和购买信息。针对商品的其他用户的行为和偏好用来推荐项目(商品)给新用户。在这种情况下,项目(商品)的特征是未知的。
答:第一类错误是当原假设为真时,我们却拒绝了它,也被称为“假阳性”。第二类错误是当原假设为是假时,我们接受了它,也被称为“假阴性”。
在混淆矩阵里,我们可以说,当我们把一个值归为阳性(1)但其实它是阴性(0)时,发生第一类错误。而当我们把一个值归为阴性(0)但其实它是阳性(1)时,发生了第二类错误。
参考:
1.《百面机器学习》
2.【BAT机器学习面试题】前100题汇总及勘误(上)
3.李航《统计学习方法》
—————————————————————————————————————————————————
博主码字不易,大家关注点个赞转发再走呗 ,您的三连是激发我创作的源动力^ - ^