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 常规步骤

  1. 寻找h函数(即预测函数)
  2. 构造J函数(损失函数)
  3. 想办法使得J函数最小并求得回归参数(θ)

公式:

  1. Logistic函数(或称为Sigmoid函数),函数形式为:\(g(z)=\frac{1}{1+e^x}\)
  2. 线性边界函数:z=\(\theta^Tx=\theta_0x_0+\theta_1x_1+\cdots+\theta_nx_n=\sum_{i=0}^{n}{\theta_ix_i}\)
  3. 构造预测函数:\(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)
  4. 构造损失函数:\(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)\)

  1. 求解逻辑归回的方法有很多种,比如常用的“梯度下降法”和“牛顿法”
    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学习的更多相关文章

  1. 【大数据技术能力提升_2】numpy学习

    numpy学习 标签(空格分隔): numpy python 数据类型 5种类型:布尔值(bool),整数(int),无符号整数(uint).浮点(float).复数(complex) 支持的原始类型 ...

  2. 【大数据技术能力提升_1】python基础

    .caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...

  3. TOP100summit:【分享实录-WalmartLabs】利用开源大数据技术构建WMX广告效益分析平台

    本篇文章内容来自2016年TOP100summitWalmartLabs实验室广告平台首席工程师.架构师粟迪夫的案例分享. 编辑:Cynthia 粟迪夫:WalmartLabs实验室广告平台首席工程师 ...

  4. 【学习笔记】大数据技术原理与应用(MOOC视频、厦门大学林子雨)

    1 大数据概述 大数据特性:4v volume velocity variety value 即大量化.快速化.多样化.价值密度低 数据量大:大数据摩尔定律 快速化:从数据的生成到消耗,时间窗口小,可 ...

  5. 大数据技术 - 为什么是SQL

    在大数据处理以及分析中 SQL 的普及率非常高,几乎是每一个大数据工程师必须掌握的语言,甚至非数据处理岗位的人也在学习使用 SQL.今天这篇文章就聊聊 SQL 在数据分析中作用以及掌握 SQL 的必要 ...

  6. 大数据技术 - MapReduce的Combiner介绍

    本章来简单介绍下 Hadoop MapReduce 中的 Combiner.Combiner 是为了聚合数据而出现的,那为什么要聚合数据呢?因为我们知道 Shuffle 过程是消耗网络IO 和 磁盘I ...

  7. Java开发想尝试大数据和数据挖掘,如何规划学习?

    大数据火了几年了,但是今年好像进入了全民大数据时代,本着对科学的钻(zhun)研(bei)精(tiao)神(cao),我在17年年初开始自学大数据,后经过系统全面学习,于这个月跳槽到现任公司. 现在已 ...

  8. Google大数据技术架构探秘

    原文地址:https://blog.csdn.net/bingdata123/article/details/79927507 Google是大数据时代的奠基者,其大数据技术架构一直是互联网公司争相学 ...

  9. 开源大数据技术专场(下午):Databircks、Intel、阿里、梨视频的技术实践

    摘要: 本论坛第一次聚集阿里Hadoop.Spark.Hbase.Jtorm各领域的技术专家,讲述Hadoop生态的过去现在未来及阿里在Hadoop大生态领域的实践与探索. 开源大数据技术专场下午场在 ...

随机推荐

  1. auto-sklearn

    python机器学习-乳腺癌细胞挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003&u ...

  2. 一个非常好的开源项目FFmpeg命令处理器FFCH4J

    项目地址:https://github.com/eguid/FFCH4J FFCH4J(原用名:FFmpegCommandHandler4java) FFCH4J项目全称:FFmpeg命令处理器,鉴于 ...

  3. join方法

    用join拼接两个字符串 a='hehe' b='wawa' print(''.join((a,b))) #'hehewawa' 用join拼接列表中的字符串 l=['a''b','c','d'] p ...

  4. (转)scipy详解

    原文:https://www.cnblogs.com/ws0751/p/8361353.html#top 登月图片消噪   scipy.fftpack模块用来计算快速傅里叶变换速度比传统傅里叶变换更快 ...

  5. sqlserver表被锁了,解锁方法,删除锁的方法

    -- 查询死锁select        request_session_id spid,       OBJECT_NAME(resource_associated_entity_id) table ...

  6. php composer 报错 requires php ^7.1.8 || ^8.0 -> your php version

    php 环境变量版本低于7.1.8,更新php环境变量版本

  7. 全基因组关联分析(GWAS)的计算原理

    前言 关于全基因组关联分析(GWAS)原理的资料,网上有很多. 这也是我写了这么多GWAS的软件教程,却从来没有写过GWAS计算原理的原因. 恰巧之前微博上某位小可爱提问能否写一下GWAS的计算原理. ...

  8. 谷歌浏览器调试swoole长连接方法

    谷歌浏览器调试swoole长连接方法network标签里面的ws 看frames  

  9. 《TCP/IP - OSI和TCP/IP分层模型》

    一:分层模型 -  - OSI 更强调:通信协议必要的功能是什么 - TCP/IP 更强调:在计算机上实现协议应该开发哪种程序  二:为什么会产生协议标准化 (分层模型的产生)? - 由于各个厂商生产 ...

  10. 使用无图形界面启动Centos

    Centos有些时候我们是不需要图形界面的 centos默认安装成功后是有图形界面的,为了减少系统开销,有时候我们需要无图形界面启动linux(centos7) systemctl set-defau ...