记录篇:【菜菜scikit-learn机器学习】sklearn中的逻辑回归

1.名为回归的分类器
逻辑回归,是一种名为 回归 的线性分类器,其本质是由线性回 归变化而来的,一种广泛使用于分类问题中的广义回归算法。要理解逻辑回归从何而来,得要先理解线性回归。线 性回归是机器学习中最简单的的回归算法,它写作一个几乎人人熟悉的方程:

被统称为模型的参数,其中θ被称为截距(intercept) ~ 被称为系数 (coeffiffifficient),这个表达式,其实就和我们小学时就无比熟悉的y=ax+b是同样的性质。 线性回归的任务,就是构造一个预测函数 来映射输入的特征矩阵 x 和标签值 y 的线性关系,而 构造预测函数的核心 就是找出模型的参数:\Theta ^{^{T}} 和 \Theta0 ,著名的最小二乘法就是用来求解线性回归中参数的数学方法。
面试高危问题: Sigmoid 函数的公式和性质

Sigmoid函数是一个S型的函数,当自变量z趋近正无穷时,因变量g(z)趋近于1,而当z趋近负无穷时,g(z)趋近 0,它能够将任何实数映射到(0,1)区间,使其可用于将任意值函数转换为更适合二分类的函数。因为这个性质,Sigmoid函数也被当作是归一化的一种方法,与我们之前学过的MinMaxSclaer同理,是属于数据预处理中的缩放功能,可以将数据压缩到[0,1]之内。区别在于,MinMaxScaler归一化之后,是可以取01的(最大值归一化后就是1,最小值归一化后就是0),但Sigmoid函数只是无限趋近于01

为什么需要逻辑回归?

线性回归对数据的要求很严格,比如标签必须满足正态分布,特征之间的多重共线性需要消除等等,而现实中很多  真实情景的数据无法满足这些要求,因此线性回归在很多现实情境的应用效果有限。逻辑回归是由线性回归变化而来,因此它对数据也有一些要求,而我们之前已经学过了强大的分类模型决策树和随机森林,它们的分类效力很强,并且不需要对数据做任何预处理。何况,逻辑回归的原理其实并不简单。一个人要理解逻辑回归,必须要有一定的数学基础,必须理解损失函数,正  则化,梯度下降,海森矩阵等等这些复杂的概念,才能够对逻辑回归进行调优。其涉及到的数学理念,不比支持向量机少多少。况且,要计算概率,朴素贝叶斯可以计算出真正意义上的概率,要进行分类,机器学习中能够完成二 分类功能的模型简直多如牛毛。因此,在数据挖掘,人工智能所涉及到的医疗,教育,人脸识别,语音识别这些领  域,逻辑回归没有太多的出场机会。但是,无论机器学习领域如何折腾,逻辑回归依然是一个受工业商业热爱,使用广泛的模型,因为它有着不可替代  的优点:1.逻辑回归对线性关系的拟合效果好到丧心病狂 2.逻辑回归计算快 3.逻辑回归返回的分类结果不是固定的0和1,而是以小数形式呈现的类概率数字。

另外,逻辑回归还有抗噪能力强的优点。福布斯杂志在讨论逻辑回归的优点时,甚至有着技术上来说,最佳模型的AUC面积低于0.8时,逻辑回归非常明显优于树模型的说法。并且,逻辑回归在小数据集上表现更好,在大型的  数据集上,树模型有着更好的表现。

2.二元逻辑回归的损失函数

损失函数的概念与解惑
我们使用” 损失函数 这个评估指标,来 衡量参数为\Theta的模型拟合训练集时产生的信息损失的大小,并以此衡 量参数的优劣。

衡量参数的优劣的评估指标,用来求解最优参数的工具损失函数小;模型在训练集上表现优异,拟合充分,参数优秀;损失函数大,模型在训练集上表现差劲,拟合不足,参数糟糕 ,我们追求,能够让损失函数最小化的参数组合 ,注意:没有”求解参数需求的模型没有损失函数,比如KNN,决策树

逻辑回归的损失函数是由极大似然估计推导出来的,具体结果可以写作:

 记录篇:【菜菜scikit-learn机器学习】sklearn中的逻辑回归_第1张图片

由于我们追求损失函数的最小值,让模型在训练集上表现最优,可能会引发另一个问题:如果模型在训练集上表示优秀,却在测试集上表现糟糕,模型就会过拟合。虽然逻辑回归和线性回归是天生欠拟合的模型,但我们还是需要控制过拟合的技术来帮助我们调整模型,对逻辑回归中过拟合的控制,通过正则化来实现

正则化
正则化是用来防止模型过拟合的过程,常用的有 L1 正则化和 L2 正则化两种选项,分别通过在损失函数后加上参数向量 的L1 范式和 L2 范式的倍数来实现。这个增加的范式,被称为 正则项 ,也被称为 " 惩罚项 " 。损失函数改变,基于损失函数的最优化来求解的参数取值必然改变,我们以此来调节模型拟合的程度。其中L1 范式表现为参数向量中的每个参数的绝对值之和,L2 范数表现为参数向量中的每个参数的平方和的开方值。

记录篇:【菜菜scikit-learn机器学习】sklearn中的逻辑回归_第2张图片

L1 正则化和 L2 正则化虽然都可以控制过拟合,但它们的效果并不相同。当正则化强度逐渐增大(即 C 逐渐变小), 参数的取值会逐渐变小,但L1 正则化会将参数压缩为 0 L2 正则化只会让参数尽量小,不会取到 0 。 在L1 正则化在逐渐加强的过程中,携带信息量小的、对模型贡献不大的特征的参数,会比携带大量信息的、对模型有巨大贡献的特征的参数更快地变成0 ,所以 L1 正则化本质是一个特征选择的过程,掌管了参数的 稀疏性 L1 正则化越强,参数向量中就越多的参数为0 ,参数就越稀疏,选出来的特征就越少,以此来防止过拟合。因此,如果特征量很大,数据维度很高,我们会倾向于使用L1 正则化。由于 L1 正则化的这个性质,逻辑回归的特征选择可以由
Embedded嵌入法来完成。
相对的, L2 正则化在加强的过程中,会尽量让每个特征对模型都有一些小的贡献,但携带信息少,对模型贡献不大的特征的参数会非常接近于0 。通常来说,如果我们的主要目的只是为了防止过拟合,选择 L2 正则化就足够了。但是如果选择L2 正则化后还是过拟合,模型在未知数据集上的效果表现很差,就可以考虑 L1 正则化。

你可能感兴趣的:(机器学习,人工智能)