Logistic回归第一弹——二项Logistic Regression

2015 年 10 月 22 日 机器学习深度学习实战原创交流 奇峰道眉

当目标变量是连续值时,通常可以用线性回归模型来确定两种或两种以上变量间相互依赖的定量关系,然而当目标变量是离散值的时候,回归分析的方法还好用吗?答案是肯定的,而是威力十足。首先我们先来回顾一下线性回归的模型:
,当目标变量为连续值时,通常可以用线性模型来描述二者之间的关系:


图1

然而当目标变量为离散值时,线性模型的拟合效果就会变得很差。


图2

这个种情形下,直接应用线性模型的确有些勉为其难,Logistic回归模型将完美的解决这一问题。正式开讲Logistic回归模型之前,先隆重介绍一下神奇的logistic函数:

Logisitc函数及其一阶导数



图3

3logistic函数及其一阶导数的图像,将其与图2中的散点对比一下,有没有觉得有一种亲切感?只要将logistic函数稍作拉伸和偏移,二者便可擦出下面的火花:


图4

有了神奇的logistic函数,logistic回归模型呼之欲出。


模型定义

输入向量维度:I

输入向量
权值向量
截距项
训练样本编号
n个样本输入变量
n个样本目标变量
目标变量分类个数2


定义事件A,当Y=1A发生,Y=0A不发生。在给定输入变量X的情况下,

A发生的条件概率


A不发生的条件概率



事件的几率

一个事件的几率(odds)指的该事件发生的概率与不发生的概率的比值。在给定输入变量X的情况下,

A的几率


A的对数几率


进过对数运算后,不难发现事件A(即Y=1)的对数几率是输入X的线性函数,这便是——Logistic回归模型。换一个角度来看,考虑对输入X进行分类的线性函数,其值域为实数域。通过模型定义式(1.1)可以将线性函数转换为概率:


此时,线性函数的值越接近正无穷,概率值越接近与1;线性函数的值越接近负无穷,概率值越接近于0

参数估计

对于给定的训练数据集,可以应用极大似然估计的方法对模型做参数估计。

模型似然值


模型对数似然值


损失函数


可以证明,该损失函数为凸函数,存在极小值。令损失函数取小值的W即为模型的极大似然估计。最易实现的方法是应用梯度下降进行参数训练。


损失函数的一阶偏导数


算法核心程序

小试牛刀

采用经典的分类数据——鸢尾花卉数据集(http://archive.ics.uci.edu/ml/datasets/Iris)进行测试。由于本文介绍的二项logisitc回归模型目前只能处理二元分类问题,而源文件中目标分类个数为3,超出了本文的能力范围,因此选取前2个类别的数据进行建模。采用随机抽样的方法,将鸢尾花卉数据集的前100行分割成训练和测试两个数据集,其中训练数据64条,测试数据36条。测试结果如下:


测试数据下载地址:http://pan.baidu.com/s/1hqm7cuo


小结

本文简单介绍了二项Logistic Regression模型的基本理论与算法实现。通过测试数据可以看到,二项Logistic Regression分类器处理二元分类问题时的确威力十足,然而当遇到多分类问题时应该怎么办呢?敬请期待Logistic回归第二弹——Softmax Regression


登录查看更多
3

相关内容

对数几率回归(Logistic Regression),简称为对率回归,也称逻辑斯蒂回归,或者逻辑回归。虽然它被很多人称为逻辑回归,但是中文的“逻辑”一词与“logistic”和“logit”意思相去甚远。它是广义的线性模型,只是将线性回归方程中的y换成了ln[p/(1-p),p是p(y=1|x),p/(1-p)是“几率”。对数几率回归是用来做分类任务的,所以,需要找一个单调可微函数,将分类任务的真实标记和线性回归模型的预测值联系起来。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
【清华大学】图随机神经网络,Graph Random Neural Networks
专知会员服务
154+阅读 · 2020年5月26日
少标签数据学习,54页ppt
专知会员服务
196+阅读 · 2020年5月22日
专知会员服务
139+阅读 · 2020年5月19日
【Nature论文】深度网络中的梯度下降复杂度控制
专知会员服务
38+阅读 · 2020年3月9日
一文读懂线性回归、岭回归和Lasso回归
CSDN
34+阅读 · 2019年10月13日
sklearn 与分类算法
人工智能头条
7+阅读 · 2019年3月12日
机器学习初探:Logistic选股模型实证
R语言中文社区
4+阅读 · 2018年5月2日
免费|机器学习算法Python实现
全球人工智能
5+阅读 · 2018年1月2日
逻辑回归(Logistic Regression) 模型简介
全球人工智能
5+阅读 · 2017年11月1日
10分钟搞懂Tensorflow 逻辑回归实现手写识别
全球人工智能
5+阅读 · 2017年10月19日
从逻辑回归到最大熵模型
夕小瑶的卖萌屋
4+阅读 · 2017年7月11日
Logistic回归第二弹——Softmax Regression
机器学习深度学习实战原创交流
9+阅读 · 2015年10月29日
Neural Response Generation with Meta-Words
Arxiv
6+阅读 · 2019年6月14日
Embedding Logical Queries on Knowledge Graphs
Arxiv
3+阅读 · 2019年2月19日
A Probe into Understanding GAN and VAE models
Arxiv
9+阅读 · 2018年12月13日
Arxiv
3+阅读 · 2018年10月8日
Implicit Maximum Likelihood Estimation
Arxiv
7+阅读 · 2018年9月24日
Neural Arithmetic Logic Units
Arxiv
5+阅读 · 2018年8月1日
Arxiv
5+阅读 · 2018年4月22日
Arxiv
3+阅读 · 2017年7月6日
VIP会员
相关资讯
一文读懂线性回归、岭回归和Lasso回归
CSDN
34+阅读 · 2019年10月13日
sklearn 与分类算法
人工智能头条
7+阅读 · 2019年3月12日
机器学习初探:Logistic选股模型实证
R语言中文社区
4+阅读 · 2018年5月2日
免费|机器学习算法Python实现
全球人工智能
5+阅读 · 2018年1月2日
逻辑回归(Logistic Regression) 模型简介
全球人工智能
5+阅读 · 2017年11月1日
10分钟搞懂Tensorflow 逻辑回归实现手写识别
全球人工智能
5+阅读 · 2017年10月19日
从逻辑回归到最大熵模型
夕小瑶的卖萌屋
4+阅读 · 2017年7月11日
Logistic回归第二弹——Softmax Regression
机器学习深度学习实战原创交流
9+阅读 · 2015年10月29日
相关论文
Neural Response Generation with Meta-Words
Arxiv
6+阅读 · 2019年6月14日
Embedding Logical Queries on Knowledge Graphs
Arxiv
3+阅读 · 2019年2月19日
A Probe into Understanding GAN and VAE models
Arxiv
9+阅读 · 2018年12月13日
Arxiv
3+阅读 · 2018年10月8日
Implicit Maximum Likelihood Estimation
Arxiv
7+阅读 · 2018年9月24日
Neural Arithmetic Logic Units
Arxiv
5+阅读 · 2018年8月1日
Arxiv
5+阅读 · 2018年4月22日
Arxiv
3+阅读 · 2017年7月6日
Top
微信扫码咨询专知VIP会员