【大数据技术能力提升_4】logistic学习
logistic学习
标签(空格分隔): logistic sigmod函数 逻辑回归 分类
前言:
整体逻辑回归比线性回归难理解点,其还需要《概率论与数理统计》中“二项分布”知识点的理解。
二项分布的公式:\(P(X=k)=\left\lgroup\begin{matrix}n\cr p \end{matrix}\right\rgroup p^k (1-p)^{n-k},0<p<1,k=0,1,\cdots,n.\)
表示在n重伯努利A实验中,发生K的概率为多少。跟n次硬币实验一致。
简介:
logistic回归又称logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。例如,探讨引发疾病的危险因素,并根据危险因素预测疾病发生的概率等。以胃癌病情分析为例,选择两组人群,一组是胃癌组,一组是非胃癌组,两组人群必定具有不同的体征与生活方式等。因此因变量就为是否胃癌,值为“是”或“否”,自变量就可以包括很多了,如年龄、性别、饮食习惯、幽门螺杆菌感染等。自变量既可以是连续的,也可以是分类的。然后通过logistic回归分析,可以得到自变量的权重,从而可以大致了解到底哪些因素是胃癌的危险因素。同时根据该权值可以根据危险因素预测一个人患癌症的可能性。
Regression 常规步骤
- 寻找h函数(即预测函数)
- 构造J函数(损失函数)
- 想办法使得J函数最小并求得回归参数(θ)
公式:
- Logistic函数(或称为Sigmoid函数),函数形式为:\(g(z)=\frac{1}{1+e^x}\)
- 线性边界函数:z=\(\theta^Tx=\theta_0x_0+\theta_1x_1+\cdots+\theta_nx_n=\sum_{i=0}^{n}{\theta_ix_i}\)
- 构造预测函数:\(h_\theta(x)=g(\theta^Tx)=\frac{1}{1+e^{\theta^Tx}}\)
注:函数h(x)的值有特殊的含义,它表示结果取1的概率,因此对于输入x分类结果为类别1和类别0的概率分别为:
P(y=1│x;θ)=h_θ (x)
P(y=0│x;θ)=1-h_θ (x) - 构造损失函数:\(J(\theta)=-\frac{1}{m}\left[\begin{matrix}\sum_{i=1}^{m}{(y_ilogh_{\theta}(x_i)+(1-y_i)log(1-h_{\theta}(x_i)))}\end{matrix}\right]\)
如果 y = 0, 则最小似然函数为:\(-log(1-h_{\theta}(x))\)
如果 y = 1, 则最大似然函数为:\(-logh_{\theta}(x)\)
- 求解逻辑归回的方法有很多种,比如常用的“梯度下降法”和“牛顿法”
5.1 梯度下降法,是通过对\(J(\theta)\)进行一阶求导来寻找下降方法,并且用迭代的方法来更新参数,更新公式:
\(\theta_j:=\theta_j-\alpha\frac{\delta}{\delta_{\theta_j}}J(\theta)=\theta_j-\frac{1}{m}\sum_{i=1}^{m}({h_{\theta}(x_i)-y_i)x^j_i}\)
5.2 牛顿法,是在现有极小点估计值的附近对 f(x) 做二阶泰勒展开,进而找到极小点的下一个估计值。
PS:本篇只讲梯度下降法,牛顿法后面再加,另外具体函数推导方式会在后面以图片的形式加上来


参考文档:
机器学习算法--逻辑回归原理介绍:https://blog.csdn.net/chibangyuxun/article/details/53148005
【机器学习】逻辑回归(非常详细):https://zhuanlan.zhihu.com/p/74874291
【大数据技术能力提升_4】logistic学习的更多相关文章
- 【大数据技术能力提升_2】numpy学习
numpy学习 标签(空格分隔): numpy python 数据类型 5种类型:布尔值(bool),整数(int),无符号整数(uint).浮点(float).复数(complex) 支持的原始类型 ...
- 【大数据技术能力提升_1】python基础
.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...
- TOP100summit:【分享实录-WalmartLabs】利用开源大数据技术构建WMX广告效益分析平台
本篇文章内容来自2016年TOP100summitWalmartLabs实验室广告平台首席工程师.架构师粟迪夫的案例分享. 编辑:Cynthia 粟迪夫:WalmartLabs实验室广告平台首席工程师 ...
- 【学习笔记】大数据技术原理与应用(MOOC视频、厦门大学林子雨)
1 大数据概述 大数据特性:4v volume velocity variety value 即大量化.快速化.多样化.价值密度低 数据量大:大数据摩尔定律 快速化:从数据的生成到消耗,时间窗口小,可 ...
- 大数据技术 - 为什么是SQL
在大数据处理以及分析中 SQL 的普及率非常高,几乎是每一个大数据工程师必须掌握的语言,甚至非数据处理岗位的人也在学习使用 SQL.今天这篇文章就聊聊 SQL 在数据分析中作用以及掌握 SQL 的必要 ...
- 大数据技术 - MapReduce的Combiner介绍
本章来简单介绍下 Hadoop MapReduce 中的 Combiner.Combiner 是为了聚合数据而出现的,那为什么要聚合数据呢?因为我们知道 Shuffle 过程是消耗网络IO 和 磁盘I ...
- Java开发想尝试大数据和数据挖掘,如何规划学习?
大数据火了几年了,但是今年好像进入了全民大数据时代,本着对科学的钻(zhun)研(bei)精(tiao)神(cao),我在17年年初开始自学大数据,后经过系统全面学习,于这个月跳槽到现任公司. 现在已 ...
- Google大数据技术架构探秘
原文地址:https://blog.csdn.net/bingdata123/article/details/79927507 Google是大数据时代的奠基者,其大数据技术架构一直是互联网公司争相学 ...
- 开源大数据技术专场(下午):Databircks、Intel、阿里、梨视频的技术实践
摘要: 本论坛第一次聚集阿里Hadoop.Spark.Hbase.Jtorm各领域的技术专家,讲述Hadoop生态的过去现在未来及阿里在Hadoop大生态领域的实践与探索. 开源大数据技术专场下午场在 ...
随机推荐
- @MatrixVariable的使用
@MatrixVariable的使用 博客分类: J2EE 在Spring3.2 后,一个@MatrixVariable出现了,这个注解的出现拓展了URL请求地址的功能. Matrix Varia ...
- Python - Django - form 组件校验功能
app01/models.py: from django.db import models class UserInfo(models.Model): username = models.CharFi ...
- [LeetCode] 119. Pascal's Triangle II 杨辉三角 II
Given an index k, return the kth row of the Pascal's triangle. For example, given k = 3,Return [1,3, ...
- javadoc 抽出代码中的注释
背景: 在已经有的项目里面利用javadoc来抽出代码中每个类,每个方法的注释部分,形成一个文档. 方法1 利用eslipse来实现 之后会在指定的目录下生成html文档 方法2 利用命令来执行 先把 ...
- linux U盘 硬盘 unable to mount
转自aaa小菜鸡 出现原因: 上次文件没拷完就拔了U盘 参考: 解决Ubuntu挂载U盘失败的解决方法 Linux下无法挂载U盘 解决: 1.sudo fdisk -l列出当前系统下的文件设备 2.s ...
- [转帖]DCEP究竟是什么?
DCEP究竟是什么? https://www.cnblogs.com/kaixin2018/p/11795534.html DCEP (Digital Currency Electronic Paym ...
- MySql 、Oracle 获取表结构和字段信息
1.MySql获取表结构信息 SELECT TABLE_NAME, TABLE_COMMENT FROM information_schema.`TABLES` WHERE TABLE_SCHEMA ...
- Linux07 查找文件(find、locate)
一.一般查找:find find PATH -name FILENAME 我们也可是使用 ‘*’ 通配符来模糊匹配要查找的文件名 二.数据库查找:locate locate FILENAME ...
- SQL——IN操作符
一.IN操作符基本用法 IN操作符用于在WHERE字句中规定多个值. 语法格式如下: SELECT 列名1,列名2... FROM 表名 WHERE 列名 IN(值1,值2...); 示例studen ...
- PAT(B) 1035 插入与归并(Java)
题目链接:1035 插入与归并 (25 point(s)) 参考博客:PAT乙级--1035(插入排序和归并)java实现熊仙森 题目描述 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据, ...