1.逻辑回归与线性回归的联系和区别
logistic回归与线性回归实际上有很多相同之处,最大的区别就在于他们的因变量不同,其他的基本都差不多,正是因为如此,这两种回归可以归于同一个家族,即广义线性模型(generalized linear model)。这一家族中的模型形式基本上都差不多,不同的就是因变量不同,如果是连续的,就是多重线性回归,如果是二项分布,就是logistic回归。logistic回归的因变量可以是二分类的,也可以是多分类的,但是二分类的更为常用,也更加容易解释。所以实际中最为常用的就是二分类的logistic回归。
区别在于逻辑回归多了一个Sigmoid函数,使样本能映射到[0,1]之间的数值,用来做分类问题。在线性回归模型中,输出一般是连续的, 对于每一个输入的x,都有一个对应的输出y。因此模型的定义域和值域都可以是无穷。但是对于逻辑回归,输入可以是连续的[-∞, +∞],但输出一般是离散的,通常只有两个值{0,
2.逻辑回归的原理
逻辑回归属于监督学习,解决二分类问题。逻辑回归就是将线性回归的(−∞,+∞)结果,通过sigmoid函数映射到(0,1)之间。
https://www.cnblogs.com/pinard/p/6029432.html
3.逻辑回归损失函数的推导及优化
https://blog.youkuaiyun.com/fu_9701/article/details/83097176
4. 正则化与模型评估指标
正则化(regularization)技术来防止过拟合情况,是机器学习中通过显式的控制模型复杂度来避免模型过拟合、确保泛化能力的一种有效方式,分为L1正则化和L2正则化。
L2正则化,其形式是在原先的损失函数后边再加多一项:12λθ2i12λθi2,那加上L2正则项的损失函数就可以表示为:L(θ)=L(θ)+λ∑niθ2iL(θ)=L(θ)+λ∑inθi2,其中θθ就是网络层的待学习的参数,λλ则控制正则项的大小,较大的取值将较大程度约束模型复杂度,反之亦然。L2约束通常对稀疏的有尖峰的权重向量施加大的惩罚,而偏好于均匀的参数。这样的效果是鼓励神经单元利用上层的所有输入,而不是部分输入。所以L2正则项加入之后,权重的绝对值大小就会整体倾向于减少,尤其不会出现特别大的值(比如噪声),即网络偏向于学习比较小的权重。所以L2正则化在深度学习中还有个名字叫做“权重衰减”(weight decay),也有一种理解这种衰减是对权值的一种惩罚。
L1正则化的形式是:λ|θi|与目标函数结合后的形式就是:
L(θ)=L(θ)+λ∑|θi|L(θ)=L(θ)+λ∑|θi|。
需注意,L1 正则化除了和L2正则化一样可以约束数量级外,L1正则化还能起到使参数更加稀疏的作用,稀疏化的结果使优化后的参数一部分为0,另一部分为非零实值。非零实值的那部分参数可起到选择重要参数或特征维度的作用,同时可起到去除噪声的效果。 逻辑回归的优缺点.
模型评估指标:
1.precision(查准率)是指在所有系统判定的“真”的样本中,确实是真的的占比。
2.recall(查全率)是指在所有确实为真的样本中,被判为的“真”的占比。
3.F1-score就是一个综合考虑precision和recall的指标
4.PRC以查准率为Y轴,、查全率为X轴做的图。它是综合评价整体结果的评估指标。
5.ROC全称是“受试者工作特征”(Receiver Operating Characteristic)曲线,ROC曲线以“真正例率”(TPR)为Y轴,以“假正例率”(FPR)为X轴,对角线对应于“随机猜测”模型,而(0,1)则对应“理想模型”。
6.AUC的值为ROC曲线下面的面积,若分类器的性能极好,则AUC为1。
7.IO(交并比)预测框与标注框的交集与并集之比,数值越大表示该检测器的性能越好。
- 样本不均衡问题解决方法
“再缩放”思想:假设训练集是真实样本总体的无偏采样,因此观测几率就代表了真实几率,只要分类器的预测几率高于观测几率就应判断为正例。
做法:1.“欠采样”去除一些正例或者反例使得正反例数目接近,然后再进行学习
2.“过采样”增加一些正例或者反例使得正反例数目接近,然后再进行学习
3.“阈值移动”直接基于原始训练集进行学习,但在用训练好的分类器进行预测时,将再缩放思想的关系式嵌入在及决策过程中 - Sklearn参数
penalty : str, ‘l1’or ‘l2’, default: ‘l2’
LogisticRegression默认带了正则化项
。penalty参数可选择的值为"l1"和"l2".分别对应L1的正则化和L2的正则化,默认是L2的正则化。在调参时如果我们主要的目的只是为了解决过拟合,一般penalty选择L2正则化就够了。但是如果选择L2正则化发现还是过拟合,即预测效果差的时候,就可以考虑L1正则化。另外,如果模型的特征非常多,我们希望一些不重要的特征系数归零,从而让模型系数稀疏化的话,也可以使用L1正则化。
penalty参数的选择会影响我们损失函数优化算法的选择。即参数solver的选择,如果是L2正则化,那么4种可选的算法{‘newton-cg’, ‘lbfgs’, ‘liblinear’, ‘sag’}都可以选择。但是如果penalty是L1正则化的话,就只能选择‘liblinear’了。这是因为L1正则化的损失函数不是连续可导的,而{‘newton-cg’, ‘lbfgs’,‘sag’}这三种优化算法时都需要损失函数的一阶或者二阶连续导数。而‘liblinear’并没有这个依赖。
dual : bool, default: False
Dualor primal formulation. Dual formulation is only implemented for l2 penalty withliblinear solver. Prefer dual=False whenn_samples > n_features.
对偶或者原始方法。Dual只适用于正则化相为l2 liblinear的情况,通常样本数大于特征数的情况下,默认为False。
C : float, default: 1.0
Inverseof regularization strength; must be a positive float. Like in support vectormachines, smaller values specify stronger regularization.
C为正则化系数λ的倒数,通常默认为1
fit_intercept : bool, default: True
Specifiesif a constant (a.k.a. bias or intercept) should be added to the decisionfunction。
是否存在截距,默认存在
intercept_scaling : float, default 1.