基础算法要深刻理解:
1、最最基础的lr
解决了什么问题,回归预测和分类预测,简单的特征去预测,符合常理。
比如点击率预测问题,有了样本/训练数据以后,我们得知道用什么样的特征去描述数据。
根据业务场景感知,找出特征,构建决策函数,f(x)=wx+b,预测点击率然后经过sigmoid转换为0-1之间的值,1/(1+e(-(wx+b)))。
至于衡量一个二分类模型的好坏,有分类准确率、准确率、召回率、ROC曲线、AUC值。
决策函数的模型的数学形式确定后,剩下就是如何去求解模型中的参数。统计学中常用的一种方法是最大似然估计,即找到一组参数,使得在这组参数下,我们的数据的似然度(概率)越大。在逻辑回归模型中,似然度可表示为:
![](https://img.haomeiwen.com/i12921408/a8bbdbcdfa47bc53.png)
机器学习中有损失函数的概念,其衡量的是模型预测错误的程度,可以从熵的概念,信息熵、KL散度、交叉熵的概念得到log损失,如果取整个数据集上的平均log损失,我们可以得到
![](https://img.haomeiwen.com/i12921408/b83f06d4af8d332f.png)
J(θ)=−1/N (l(θ))
即在逻辑回归模型中,我们最大化似然函数和最小化log损失函数实际上是等价的。对于该优化问题,存在多种求解方法,这里以梯度下降的为例说明。梯度下降(Gradient Descent)又叫作最速梯度下降,是一种迭代求解的方法,通过在每一步选取使目标函数变化最快的一个方向调整参数的值来逼近最优值。
![](https://img.haomeiwen.com/i12921408/c171047a878ba8b6.png)
梯度下降的具体公式:
(y预测值-y真实值)*x
整个训练过程非常集成化:
训练数据格式libsvm,load/fit/predict,计算acc/auc;训练结果之后可以分析特征权重,看是否符合预期。
其他的算法虽然原理、应用(解决问题)不同,但整体解决思路以及模型训练过程相似,其他也得捋一捋。
其他的思路:
1、贝叶斯生成模型
2、svm分类
3、决策分类/回归
4、集成学习
得用sklearn跑跑最简单的例子。前提是先安装 scikit-learn。
参考资料:https://tech.meituan.com/2015/05/08/intro-to-logistic-regression.html
todo:深入理解ROC曲线、AUC指标
lr的下一个进化是fm,特征交叉啊
--20210202晚,所以接下来了解fm
网友评论