2017.03.03:机器学习

来源:互联网 发布:神舟游戏本 蓝天 知乎 编辑:程序博客网 时间:2024/06/04 18:46

logistic回归是一种广义线性回归(generalized linear model),因此与多重线性回归分析有很多相同之处。它们的模型形式基本上相同,都具有 w‘x+b,其中wb是待求参数,其区别在于他们的因变量不同,多重线性回归直接将w‘x+b作为因变量,即y=w‘x+b,而logistic回归则通过函数Lw‘x+b对应一个隐状态pp=L(w‘x+b),然后根据p1-p的大小决定因变量的值。如果Llogistic函数,就是logistic回归,如果L是多项式函数就是多项式回归。

logistic回归的因变量可以是二分类的,也可以是多分类的,但是二分类的更为常用,也更加容易解释,多类可以使用softmax方法进行处理。实际中最为常用的就是二分类的logistic回归。

Logistic回归模型的适用条件

1 因变量为二分类的分类变量或某事件的发生率,并且是数值型变量。但是需要注意,重复计数现象指标不适用于Logistic回归。

2 残差和因变量都要服从二项分布。二项分布对应的是分类变量,所以不是正态分布,进而不是用最小二乘法,而是最大似然法来解决方程估计和检验问题。

3 自变量和Logistic概率是线性关系

4 各观测对象间相互独立。

原理:如果直接将线性回归的模型扣到Logistic回归中,会造成方程二边取值区间不同和普遍的非直线关系。因为Logistic中因变量为二分类变量,某个概率作为方程的因变量估计值取值范围为0-1,但是,方程右边取值范围是无穷大或者无穷小。所以,才引入Logistic回归。

Logistic回归实质:发生概率除以没有发生概率再取对数。就是这个不太繁琐的变换改变了取值区间的矛盾和因变量自变量间的曲线关系。究其原因,是发生和未发生的概率成为了比值,这个比值就是一个缓冲,将取值范围扩大,再进行对数变换,整个因变量改变。不仅如此,这种变换往往使得因变量和自变量之间呈线性关系,这是根据大量实践而总结。所以,Logistic回归从根本上解决因变量要不是连续变量怎么办的问题。还有,Logistic应用广泛的原因是许多现实问题跟它的模型吻合。例如一件事情是否发生跟其他数值型自变量的关系。

注意:如果自变量为字符型,就需要进行重新编码。一般如果自变量有三个水平就非常难对付,所以,如果自变量有更多水平就太复杂。这里只讨论自变量只有三个水平。非常麻烦,需要再设二个新变量。共有三个变量,第一个变量编码1为高水平,其他水平为0。第二个变量编码1为中间水平,0为其他水平。第三个变量,所有水平都为0。实在是麻烦,而且不容易理解。最好不要这样做,也就是,最好自变量都为连续变量。

一是寻找危险因素

正如上面所说的寻找某一疾病的危险因素等。

二是预测

如果已经建立了logistic回归模型,则可以根据模型,预测在不同的自变量情况下,发生某病或某种情况的概率有多大。

三是判别

实际上跟预测有些类似,也是根据logistic模型,判断某人属于某病或属于某种情况的概率有多大,也就是看一下这个人有多大的可能性是属于某病。

这是logistic回归最常用的三个用途,实际中的logistic回归用途是极为广泛的,logistic回归几乎已经成了流行病学和医学中最常用的分析方法,因为它与多重线性回归相比有很多的优势,以后会对该方法进行详细的阐述。实际上有很多其他分类方法,只不过Logistic回归是最成功也是应用最广的。

 

准确率(accuracy),其定义是: 对于给定的测试数据集,分类器正确分类的样本数与总样本数之比。也就是损失函数是0-1损失时测试数据集上的准确率

 

精确率(precision)的公式是\(P = \frac{TP}{TP+FP}\),它计算的是所有"正确被检索的item(TP)"占所有"实际被检索到的(TP+FP)"的比例.

 

召回率(recall)的公式是\(R = \frac{TP}{TP+FN}\),它计算的是所有"正确被检索的item(TP)"占所有"应该检索到的item(TP+FN)"的比例。

 

ROC曲线,接受者操作特性曲线就是以虚报概率为横轴,击中概率为纵轴所组成的坐标图,和被试在特定刺激条件下由于采用不同的判断标准得出的不同结果画出的曲线。

 

1、建立递阶层次结构;

2、构造两两比较判断矩阵;(正互反矩阵

对各指标之间进行两两对比之后,然后按9分位比率排定各评价指标的相对优劣顺序,依次构造出评价指标的判断矩阵A

3、针对某一个标准,计算各备选元素的权重;

关于判断矩阵权重计算的方法有两种,即几何平均法(根法)和规范列平均法(和法)。

1)几何平均法(根法)

计算矩阵A各行各个元素的乘积,得到一个n行一列的矩阵B

计算矩阵每个元素的n次方根得到矩阵C

对矩阵C进行归一化处理得到矩阵D

该矩阵D即为所求权重向量。

2)规范列平均法(和法)

矩阵A每一列归一化得到矩阵B

将矩阵B每一行元素的平均值得到一个一列n行的矩阵C

矩阵C即为所求权重向量。

 

1.线性回归假设特征和结果满足关系。其实线性关系的表达能力非常强大,每个特征其实线性关系的表达能力非常强大,每个特征对结果的影响强弱可以有前面参数体现,而且每个特征变量首先映射到一函然对结果的影响强弱可以有前面参数体现,而且每个特征变量首先映射到一函然对结果的影响强弱可以有前面参数体现,而且每个特征变量首先映射到一个函数,然后再参与线性计算。

2. 我们程序也需要一个机制去评估θ是否比较好,所以说需要对我们做出的函数进行评估,一般这个函数称为损失或者错误函数,描述 h函数不好的程度,在下面我们称这个函数为J函数。如何调整θ以使得J(θ)取得最小值有很多方法 ,其中取得最小值有很多方法,其中最小二乘法和梯度下降法。

3. 梯度下降法是按面的流程进行:

1)首先对θ赋值,这个可以是随机的也让θ是一个全零的向量。

2)改变θ的值,使得的值,使得J(θ)按梯度下降的方向进行减少。

4. 将训练特征表示为 X矩阵,结果表示成Y向量,仍然是线性回归模型误差函数不变。误差函数不变。那么θ可以直接由下面公式得出。但此方法要求 X是列满秩的是列满秩的,而且求矩阵的逆比较慢 。

5. 也就是说如果 p(x|y)符合多元高斯分布,那么p(y|x)符合logistic回归模型。反之,不成立。

 

 

0 0
原创粉丝点击