韩梅梅和李雷是百度的实习生,他们刚入职就接受了一项任务,用机器学习的方法来预测某个行业query和广告之间的点击率。该模型将会用于对广告展现时,根据点击率,对展现的广告做重排序。他们两个都采用了LR方法来解决问题,具体的做法是:
(1)根据一个月该行业的日志,找到每次搜索时,当时展现的所有广告(一次展现固定出三条广告)。他们把每个广告的每次展现当作样本,当时是否点击为LR的y值:0或者1。这样一共获得了50w个样本(比如在一次搜索queryA下展现了三条广告a,b,c,其实a被点击了一次,那么这次搜索一共对应3个样本,其中第一个样本的y为1,后面两个样本的y为0)
(2)对样本做均匀抽样分成两份,70%为训练样本,30%为测试样本,抽取了100种特征,其中一个特征是当时广告在网页中的排序(1,2或者3)
(3)使用公司的LR在训练样本上进行训练,在测试样本中进行检测, 认为LR模型给出的p即为广告的点击率,其中
a.对于广告在网页中的排序,韩梅梅使用的方法是离散乘0-1特征,即将排序离散成(是否为第一名,是否为第二名,是否为第三名),如果样本的排序是第一名,对应的特征为(1,0,0),如果样本的排序为第二名,对应的特征为(0,1,0),而李雷的方法是直接对排序做归一后当作特征的取值,如第一名为0,第二名为0.5,第三名为1,问他们谁的方法效果会更好,为什么?
b.一般大型LR模型都是使用随机梯度下降的方式,所以需要选择初始值,韩梅梅把beta()的初始值设置成了广告的平均点击0.01,而李雷把bata()设置为1,问在实际线上应用的时候,他们谁的方法效果会更好,为什么?
c.在直接使用LR模型的时候(loss=\sum yi*log(h(x))+(1-yi)*log(1-h(x)))h(x)=1/(1+exp(-xi*thetai)),韩梅梅和李雷发现在训练样本中拟合的很好,但是在测试样本中效果比较差,问可能是什么原因导致?怎么解决?
d.在测试的时候,他们使用auc来评估效果,请问auc是怎么计算的?

 

 

150 题数据挖掘

https://www.jianshu.com/p/37b5d84a3481

 

 

[机器学习]以下不属于有监督的词义消歧方法的是

  • Flip-Flop算法
  • 贝叶斯分类器
  • 最大熵消歧
  • 基于词典的消歧

 

机器学习模型 error 和模型 bias 和 variance 之间的关系:

  • 没有关系
  • error = bias^2+variance
  • error = bias+variance^0.5
  • error = bias + variance

 

欠拟合的原因:模型复杂度过低,不能很好的拟合所有的数据,训练误差大;
避免欠拟合:增加模型复杂度,如采用高阶模型(预测)或者引入更多特征(分类)等。
过拟合的原因:模型复杂度过高,训练数据过少,训练误差小,测试误差大;
避免过拟合:降低模型复杂度,如加上正则惩罚项,如L1,L2,增加训练数据等。

Continue reading

RandomForest 与 GBDT 的区别:

相同点:

1.都由很多棵树组成

2.最终的结果是由多棵树一起决定的

不同点:

1.RandomForest中的树可以是分类树,也可以是回归树,而GBDT只能由回归树(CART)组成,这也说明GBDT各个树相加是有意义的

2.RandomForest中的树是并行生成的,而GBDT是串行生成的,GBDT中下一颗树要去拟合前一颗树的残差,所以GBDT中的树是有相关关系的,而RandomForest中的树的相关性依赖于Boostrap生成的样本子集的相关性

3.RandomForest 对异常值不敏感,GBDT敏感

4.RandomForest是通过降低模型方差来提高性能的,而GBDT是通过降低偏差来提高性能

Continue reading

函数的梯度是函数上升的最大方向。 如果要对一个目标函数做最小化,每次只需将目标函数对各个parameters 做偏导,得到梯度,然后用当前parameter加上负梯度乘以一个步长进行更新。 步长太大可能跳出局部最优点。 常用的梯度下降方法有batch gd(使用全部数据计算梯度),SGD(对每个sample计算梯度)。 SGD计算更快,并且能取得不错的效果,而且有时能跳出局部最优,去explore其他更优 的极值点

Continue reading

生成模型学习联合概率分布,再用贝叶斯
判别模型直接学习条件概率分布

简单地说,对于监督学习,预测时,一般都是在求生成模型: 从数据中学习联合概率分布,然后利用贝叶斯公式求:; 这类典型的模型包括:朴素贝叶斯、LDA、HMM
判别模型:直接学习, 它直观输入什么特征X,就直接预测出最可能的; 典型的模型包括:LR, SVM,CRF,Boosting,Decision tree….
Continue reading

决策树是机器学习中一种基本的分类和回归算法,是依托于决策抉择而建立起来的树。
原理:依托树中的决策规则来预测未知样本的类别和值。
过程:决策树学习算法包含特征选择(从训练数据的特征中选择一个特征作为当前节点的分裂标准),决策树的生成(依据选择特征标准,从上至下递归生成子节点,直到数据集不可再分则停止)与决策树的剪枝(决策树易过拟合,需要通过剪枝来缩小树的结构和规模)。
终止条件:依据选择特征标准,从上至下递归生成子节点,直到数据集不可再分则停止
防止过拟合:剪枝

Continue reading