LR模型常见问题
信息速览
- 基础知识介绍-广义线性回归
- 逻辑斯蒂回归模型推导
- 逻辑斯蒂回归常见问题
- 补充知识信息点
基础知识:
机器学习对结果的形式分类:
- 分类算法
- 回归算法
LR:logistic regression 逻辑斯谛回归 (对数几率回归 logit regression)
LR是一个分类模型 是一个基于线性回归(linear regression)的模型
1.预备知识
线形回归
\[f(x_{i})=\omega \cdot x_{i}+b\]
采用均方误差最小的策略来进行优化
\[(w^{*},b^{*})=argmin_{(w,b)}\sum_{i=1}^{m}(f(x_{i}-y_{i}))^{2}\]
最小二乘法(least square method):
基于均方误差最小化来进行模型求解的方法
在真实的数据应用中,会将b参数融入参数\(\omega\)中\(\omega=(\omega;b)\)
最小二乘法也可以使用向量的形式来表示
\[\omega=argmin_{\omega}(y-X \omega)^{T}(y-X\omega)\]
对\(\omega\)求导,解得最优解。在\(det(X^{T}X)\neq 0\)时候
\[\omega=(X^{T} X)^{-1} X^{T} y\]
2.逻辑斯蒂回归
定义推导
基于线性回归的广义模型
\[y=g^{-1}(\omega ^{T} x+b)\]
找到一个单调可微函数将分类任务的真实标记y和线性模型的预测值联系起来。
应用与分类,分类函数- heaviside函数 ,但是其不是一个连续函数
利用 对数几率函数(sigmod函数)来进行代替
\[y=\frac{1}{1+e^{-z}}\]
结合线性回归广义模型
\[y=\frac{1}{1+e^{-(w^{T}x+b)}}\]
\[ln\frac{y}{1-y}=\omega ^{T} x+b\]
- y-正例的可能性
- 1-y 反例的可能性
\(\frac{y}{1-y}\) 称为几率 odds $ln \frac{y}{1-y} $对数几率 log odds=logit
性质
\[ ln\frac{p(y=1 | x)}{p(y=0 | x)}= \omega ^{T} x+b \]
\[p(y=1 |x)=\frac{e^{(w^{T}x+b)}}{1+e^{(w^{T}x+b)}}\]
\[p(y=0 |x)=\frac{1}{1+e^{(w^{T}x+b)}}\]
通过极大似然法来估计\(\omega,b\)的值
似然函数:
\[\prod_{i=1}^{m} p(y=1 |x)^{y_{i}} p(y=0|x)^{1-y_{i}}= \prod_{i=1}^{m} p(y=1 |x)^{y_{i}} (1-p(y=1|x))^{1-y_{i}}\]对数似然函数
\[L(\omega,b)=\sum_{i=1}^{m}[y_{i} ln(p(y=1|x))+ (1-y_{i})ln(1-p(y=1 |x))]\]
\[L(\omega,b)=\sum_{i=1}^{m} ln(p_{i} | x_{i};\omega,b)\]
每个样本属于其真实标记的概率越大越好
\[L(\omega,b)=\sum_{i=1}^{m}[y_{i} ln(p(y=1|x))+ (1-y_{i})ln(1-p(y=1 |x))]\]
\[=\sum_{i=1}^{m}[y_{i=1} ln\frac{p(y=1|x)}{1-p(y=1 |x)} +ln(1-p(y=1 |x) ]\]
\[=\sum_{i=1}^{m}[y_{i=1}(w^{T}+b) - ln (1+e^{(w^{T}x+b)})]\]
利用梯度下降法、拟牛顿法来得到最优解
\(\hat{\omega}=argMAX_{\omega} L(\theta)\)
在计算中通常会将 w,b进行合并这样只有一个矩阵要求。
求极值,找到 w,b的最大值 \(\hat{\omega}\)
最终的逻辑斯蒂模型:
\[P(y=1 |x)=\frac{e^{(\hat{w}^{T}x)}}{1+e^{(\hat{w}^{T}x)}}\]
\[P(y=0 |x)=\frac{1}{1+e^{(\hat{w}^{T}x)}}\]
3.常见逻辑斯蒂回归问题
- LR模型的损失函数的推导
为什么要使用似然函数来实现
实现为正的概率最大,同时为负的概率也最大,每个样本都实现最大概率。
LR模型的预测结果为什么很差
LR模型是线性模型,不能得到非线性模型,大部分实际问题不能用线性就能拟合。
L1,L2正则化,降低模型复杂度
模型越复杂,越容易过拟合,这大家都知道,加上L1正则化给了模型的拉普拉斯先验,加上L2正则化给了模型的高斯先验。从参数的角度来看,L1得到稀疏解,去掉一部分特征降低模型复杂度。L2得到较小的参数,如果参数很大,样本稍微变动一点,值就有很大偏差,这当然不是我们想看到的,相当于降低每个特征的权重。
4.补充知识点
基于线性模型的其他“广义模型”
LWLR 局部加权回归 locally weighted linear regression
对于预测值附近的赋予一定的权重W
参数k是用户赋值参数,决定权重赋值的比例
\[\omega=(X^{T}W X)^{-1} X^{T}W y\]
\[W(i,j)=exp(\frac{|| x_{i}-x_{j} ||}{-2 k^{2}})\]岭回归 ridge regression
当数据中特征比数据样本点还多的时候,就不能使用简单的线性回归函数
在计算\((X^{T}X)^{-1}\)会出现错误,\(n>m ,X\)不是满秩矩阵。
通过缩减系数来实现算法
加入一个矩阵,使\((X^{T} X+\lambda I_{mxm})\)可逆,非奇异
\[\omega=(X^{T} X+\lambda I_{m \times m})^{-1} X^{T} y\]lasso,前向逐步回归,PCA回归
极大似然估计
总体 X 属离散型 \(p{X=x}=p(x;\theta)\) 其中\(\theta\)为待估参数,\(X_{1},X_{2},...,X_{N}\)为X的样本
样本的联合分布概率:\[\prod_{i=1}^{n}p(x_{i} | \theta)\]
\(x_{1},x_{2},...,x_{n}\)是相应于样本\(X_{1},X_{2},...,X_{N}\)的一个样本值
事件\({ X_{1}=x_{1},X_{2}=x{2},...,X_{n}=x_{n} }\)发生的概率:
样本的似然函数\(L(\theta)\),是\(\theta\)的函数,会因取值而改变
\[L(\theta)=L(x_{1},x_{2},...,x_{n};\theta)=\prod_{i=1}^{n} p(x_{i};\theta)\]
挑选能够让似然函数达到最大的参数值\(\hat{\theta}\)
\[L(\theta)=L(x_{1},x_{2},...,x_{n};\hat{\theta})=MAX _{\theta} L(x_{1},x_{2},...,x_{n};\theta)\]
在计算时候一般使用对数似然方程方法。
LR模型常见问题的更多相关文章
- cs229 斯坦福机器学习笔记(一)-- 入门与LR模型
版权声明:本文为博主原创文章,转载请注明出处. https://blog.csdn.net/Dinosoft/article/details/34960693 前言 说到机器学习,非常多人推荐的学习资 ...
- 基于Spark的GBDT + LR模型实现
目录 基于Spark的GBDT + LR模型实现 数据预处理部分 GBDT模型部分(省略调参部分) GBDT与LR混合部分 基于Spark的GBDT + LR模型实现 测试数据来源http://arc ...
- skearn自学路径
sklearn学习总结(超全面) 关于sklearn,监督学习几种模型的对比 sklearn之样本生成make_classification,make_circles和make_moons pytho ...
- 逻辑回归模型(Logistic Regression, LR)基础
逻辑回归模型(Logistic Regression, LR)基础 逻辑回归(Logistic Regression, LR)模型其实仅在线性回归的基础上,套用了一个逻辑函数,但也就由于这个逻辑函 ...
- 逻辑回归模型(Logistic Regression, LR)--分类
逻辑回归(Logistic Regression, LR)模型其实仅在线性回归的基础上,套用了一个逻辑函数,但也就由于这个逻辑函数,使得逻辑回归模型成为了机器学习领域一颗耀眼的明星,更是计算广告学的核 ...
- GBDT与LR融合提升广告点击率预估模型
1GBDT和LR融合 LR模型是线性的,处理能力有限,所以要想处理大规模问题,需要大量人力进行特征工程,组合相似的特征,例如user和Ad维度的特征进行组合. GDBT天然适合做特 ...
- 线性模型之逻辑回归(LR)(原理、公式推导、模型对比、常见面试点)
参考资料(要是对于本文的理解不够透彻,必须将以下博客认知阅读,方可全面了解LR): (1).https://zhuanlan.zhihu.com/p/74874291 (2).逻辑回归与交叉熵 (3) ...
- 机器学习(四)—逻辑回归LR
逻辑回归常见问题:https://www.cnblogs.com/ModifyRong/p/7739955.html 推导在笔记上,现在摘取部分要点如下: (0) LR回归是在线性回归模型的基础上,使 ...
- 线性回归、逻辑回归(LR)
线性回归 回归是一种极易理解的模型,就相当于y=f(x),表明自变量 x 和因变量 y 的关系.最常见问题有如 医生治病时的望.闻.问.切之后判定病人是否生了什么病,其中的望闻问切就是获得自变量x,即 ...
随机推荐
- bean的创建(五)第四部分 bean构造器的查找
前面分析了bean的静态工厂查找 bean的构造器查找过程和bean的静态工厂查找类似 protected BeanWrapper createBeanInstance(String beanName ...
- 一文掌握 Spring Boot Profiles
Spring Boot Profiles 简介 Profile 的概念其实很早在 Spring Framework 就有了,在 Spring Framework 3.1 版本引入了注解 @Profil ...
- jdk8与jdk7中hashMap的resize分析
在分析代码之前,我们先抛出下面的问题: hashmap 扩容时每个 entry 需要再计算一次 hash 吗? 我们首先看看jdk7中的hashmap的resize实现 1 void resize(i ...
- kube-scheduler源码分析
kubernetes集群三步安装 kube-scheduler源码分析 关于源码编译 我嫌弃官方提供的编译脚本太麻烦,所以用了更简单粗暴的方式编译k8s代码,当然官方脚本在编译所有项目或者夸平台编译以 ...
- 利用jQuery中的serialize方法大量获取页面中表单的数据,发送的服务器
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- java并发编程(十九)----(JUC集合)总体框架介绍
本节我们将继续学习JUC包中的集合类,我们知道jdk中本身自带了一套非线程安全的集合类,我们先温习一下java集合包里面的集合类,然后系统的看一下JUC包里面的集合类到底有什么不同. java集合类 ...
- 非常实用的select下拉框-Select2.js
在Web开发中,Select下拉框是常用的输入组件.由于原生的Select几乎很难通过CSS样式控制.一些好看的Select下拉框就只能通过模拟来实现.PHP程序员雷雪松给大家推荐一筐款不错的Sele ...
- 『开发技术』GPU训练加速原理(附KerasGPU训练技巧)
0.深入理解GPU训练加速原理 我们都知道用GPU可以加速神经神经网络训练(相较于CPU),具体的速度对比可以参看我之前写的速度对比博文: [深度应用]·主流深度学习硬件速度对比(CPU,GPU,TP ...
- 从源码看Flask框架配置管理
1 引言 Flask作为Python语言web开发的三大顶梁柱框架之一,对于配置的管理当然必不可少.一个应用从开发到测试到最后的产品发布,往往都需要多种不同的配置,例如是否开启调试模式.使用哪个数据库 ...
- (2019版本可用)【idea的安装,激活,设置,卸载】
前言 也差不多也可以使用简单快捷的idea软件了,相对于elicpse而言的话,idea是非常好用的,虽然现在涉及不是很广. 什么是idea? IDEA 全称IntelliJ IDEA,是用于java ...