笔记+R︱Logistics建模简述(logit值、sigmoid函数)
本笔记源于CDA-DSC课程,由常国珍老师主讲。该训练营第一期为风控主题,培训内容十分紧凑,非常好,推荐:CDA数据科学家训练营
——————————————————————————————————
一、logit值的来源
逻辑回归一般将因变量二分类变量的0-1转变为频率[0,1],变成odds(优势比,[0,+∞]),然后log一下成为Logit值([-∞,+∞])
优势比就是:odds=P(y=1)/P(y=0)
logit值:logit=log(odds)
什么是sigmoid函数?
先定义了一个直觉的概念优势比
p/(1-p),p是true时的概率,1-p是false时的概率,对优势比取log,即t=log(p/(1-p))进行值域转换,转到所有实数域。然后反过来求p,最终即可得到sigmoid函数。
sigmoid函数的有趣特点是,自变量是负无穷到正无穷,应变量是0到1。越接近0变化越大。导函数是p(1-p),导函数很有趣。(参考:大话逻辑回归)
——————————————————————————————————
二、logit建模
利用logit=Y进行建模,得到Logit之后就可以根据其进行计算概率。Logit=经济学上的效用,效用是一个连续变量,logit模型相当于是效用建模。
所以一般来说,逻辑回归出来的系数都是logit值的系数,需要转化为概率值。
简单的理解可以认为是:
输入是x,输出是y,中间有个临时变量是t。w和b是模型参数。h(t)是属于某个类别的概率,大于0.5认为属于这个类别,即y=1。
简便起见,我们可以认为b始终和一个值为1的w相乘。于是我们把b放入w。模型简化为
这就是逻辑回归的公式,非常简单。
(参考:大话逻辑回归)
——————————————————————————————————
三、logit函数建模阀值设定
在风控模型汇总,logistics阀值的设置根据业务主来判断。一般高信用自动通过,中风险需要审查;风险较大的拒绝借贷。
——————————————————————————————————
四、R语言实现
1、逻辑回归
逻辑回归一般用glm函数中的binomial(link='logit')来建模。
lg<-glm(y ~x1,family=binomial(link='logit')) summary(lg)
此时的回归系数的用途只有两个:正负号、显著性.回归系数代表每增加1个单位x,会增加logit值增加0.1个单位,并且正向影响。如果需要知道概率值需要重新计算。
2、逐步回归筛选变量——step
在逻辑回归之上,我们可以用逐步回归方法,对变量进行剔除。
lg_ms<-step(lg,direction = "both") summary(lg_ms)
3、验证集预测——predict
train$lg_p<-predict(lg_ms, train) summary(train$lg_p)
predict的预测结果也同样是logit值,并不是概率,需要进行再计算
4、计算概率值
1/(1+exp(-1*train$lg_p))
5、模型验证的方法
作为排序类模型,可以用ROC曲线/AUC值、累积提升曲线、K-S曲线、洛伦兹曲线gini来验证(笔记︱风控分类模型种类(决策、排序)比较与模型评估体系(ROC/gini/KS/lift))。
笔记+R︱Logistics建模简述(logit值、sigmoid函数)的更多相关文章
- 笔记+R︱信用风险建模中神经网络激活函数与感知器简述
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 本笔记源于CDA-DSC课程,由常国珍老师主讲 ...
- 【转】Pandas学习笔记(四)处理丢失值
Pandas学习笔记系列: Pandas学习笔记(一)基本介绍 Pandas学习笔记(二)选择数据 Pandas学习笔记(三)修改&添加值 Pandas学习笔记(四)处理丢失值 Pandas学 ...
- 【转】Pandas学习笔记(三)修改&添加值
Pandas学习笔记系列: Pandas学习笔记(一)基本介绍 Pandas学习笔记(二)选择数据 Pandas学习笔记(三)修改&添加值 Pandas学习笔记(四)处理丢失值 Pandas学 ...
- R语言中的特殊值 NA NULL NaN Inf
这几个都是R语言中的特殊值,都是R的保留字, NA:Not available 表示缺失值 用 is.na() 来判断是否为缺失值 NULL:表示空值,即没有内容 用 is.null() 来判 ...
- c指针 --笔记2返回指针值的函数
返回指针值的函数 一般带回指针值的函数,定义形式为: int *a (int x, int y); 看这个经典案例: #include <stdio.h> int main(int arg ...
- Softmax与Sigmoid函数的联系
译自:http://willwolf.io/2017/04/19/deriving-the-softmax-from-first-principles/ 本文的原始目标是探索softmax函数与sig ...
- Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率
(手机的颜色,大小,用户体验来加权统计总体的值)极大似然估计MLE 1.Logistic回归 Logistic regression (逻辑回归),是一种分类方法,用于二分类问题(即输出只有两种).如 ...
- 小猪猪C++笔记基础篇(六)参数传递、函数重载、函数指针、调试帮助
小猪猪C++笔记基础篇(六) ————参数传递.函数重载.函数指针.调试帮助 关键词:参数传递.函数重载.函数指针.调试帮助 因为一些事情以及自己的懒惰,大概有一个星期没有继续读书了,已经不行了,赶紧 ...
- 逻辑回归为什么用sigmoid函数
Logistic回归目的是从特征学习出一个0/1分类模型,而这个模型是将特性的线性组合作为自变量,由于自变量的取值范围是负无穷到正无穷. 因此,使用logistic函数(或称作sigmoid函数)将自 ...
随机推荐
- openstack一键安装脚本(转载)
#!/bin/sh # openstack pike 单机 一键安装 # 环境 centos 7.4.1708 x86_64 # 更多内容 http://dwz.cn/openstack # Myde ...
- 知识点干货—多线程同步【6】之synchronized
"明日复明日,明日何其多. 我生待明日,万事成蹉跎. 世人若被明日累,春去秋来老将至. 朝看水东流,暮看日西坠. 百年明日能几何?请君听我明日歌. 明日复明日,明日何其多! 日日待明日,万世 ...
- 布隆过滤器(Bloom Filter)详解
直观的说,bloom算法类似一个hash set,用来判断某个元素(key)是否在某个集合中.和一般的hash set不同的是,这个算法无需存储key的值,对于每个key,只需要k个比特位,每个存储一 ...
- MongoDB Driver 简单的CURD
c#中我们可以使用MongoDB.Driver驱动进行对MongoDB数据库的增删改查. 首先需要在NuGet中安装驱动 安装完毕后会发现会有三个引用 其中 MongoDB.Driver和MongoD ...
- CORS跨域请求之简单请求与非简单请求
先来看一个例子 定义server01的项目,在路由表中添加一条路由记录 url(r'^getData.html$',views.get_data) 对应的视图函数 from django.shortc ...
- NemaStudio船舶模拟软件下载及破解
不啰嗦,上链接: https://files.cnblogs.com/files/lizhijian/NameStudio%E7%A0%B4%E8%A7%A3.zip 感谢阅读,希望可以帮到你.
- ansible playbook实践(二)-基础相关命令
ansible相关的命令: ansible 用来执行ansible管理命令 ansible-doc 用来获取模块的帮助文档 ansible-playbook 当有众多任务时,可编写成playbook ...
- 12、SEO工程师指南 - 软件项目角色指南系列文章
第11章 SEO工程师 SEO工程师是一个比较新兴的职位,在实际的项目管理过程中,SEO工程师的地位相对靠后,只有在项目试运行以及运营期间才能体现出SEO工程师的作用.在项目完成之后, ...
- HDU [P2819] swap
二分图行列匹配+输出路径 经典题,当且仅当一行匹配一列的时候,符合题意. 本题的难点在于如何输出路径,我们发现这个移动的过程就是将所有匹配选择排序,在选择排序时输出路径即可 #include < ...
- 洛谷 [P1314] 聪明的质检员(NOIP2011 D2T2)
###一道二分答案加前缀和### 题目中已经暗示的很明显了 "尽可能靠近" " 最小值" 本题的主要坑点在于 long long 的使用 ##abs函数不支持l ...