这就是logistic regression的原理

logistic regression相比于linear regression而言,外面套了一个sigmoid函数

 

y_hat是110而不是101

y_hat是110而不是101

交叉熵(cross entropy):cross entropy代表的含义是这两个分布有多接近,两个分布越接近cross entropy算出来就会越小

step 2里面的两个L函数指的是损失函数,对于logistic regression而言,损失函数是交叉熵的求和,指的是真实值,f()值的是预测值,要让loss function越小,两者的分布就要越接近

Logistic regression和Linear regression利用梯度下降的方法更新参数的函数式子是一样的没有差别

这边还要重点强调一下,对于参数update逻辑回归有两种方法

(1)一种是通过最小化损失函数的方法,logistic regression的损失函数是交叉熵的求和,最小化损失函数,让损失函数分别对w和b求导最终结果就是:

(2)另一种是用最大似然估计推导(最大化似然函数),似然函数是:

有没有惊奇的发现,这个式子不就是上面的损失函数么。于是最终,两种方法,殊途同归。接下来用梯度下降进行求解,剩下的步骤就和上述一致了。

两种方法做到最后是一模一样的

如果Logistic regression的loss function是square error的话会是怎样一种情况呢?

结果显示,无论离目标很近,还是离目标很远,微分算出来都是0。

cross entropy和square error相互对比。结果显示,使用cross entropy的时候离目标越远,参数update越快、update参数的步伐越大,距离目标近的时候,参数update越慢、update参数的步伐越小。然而如果使用square error,参数会卡住,参数update得很慢。

左边和右边使用了不同的方法计算w和b的值,左边的loss function是交叉熵,利用最小化损失函数求解w和b,右边利用最大化似然函数,求出mu和sigma,然后简单的带入公式即可求出w和b。

但是找出来的结果是不一样的,左边对分布没有假设,右边假设了分布情况

discriminative model的准确率会比generative model要更好

为什么会这样呢?

从直观上而言,Testing Data理所应当是属于class 1的

最后的结果跑出来,属于class 1的概率小于0.5,因此通过朴素贝叶斯的方法算出来Testing Data应该是数据class 2的

generative对于分布进行了脑补

generative model会适当脑补分布,因此不需要太多的数据。因此在数据量比较小的时候generative model可能会胜过discriminative model

generative model会适当脑补、会适当做一些假设,这反而会把data里面有问题的部分忽视掉,因此提高了对于噪音的鲁棒性

接下来我们要考虑多分类问题

softmax指最大值做强化(因为取了指数),0.88指input的x属于class 1的几率是0.88,属于class 2的几率是0.12,属于class 3的几率是0

不能假设为0,1,2。因为0离1近,离2远

多分类问题,最小化交叉熵和最大化似然函数这两个也是殊途同归的,一模一样的

这种情况下,做logistic regression用来分类是办不到的,因为logistic regression的boundary就是一条直线

不论怎么画,都不能使得红色的放到一边,蓝色的放到另一边

那我们该怎么办呢?

可以做一些特征的变换,比如说通过上面这种方式,将x1转化成该点和(0,0)之间的距离,x2转换成该点和(1,1)之间的距离。但是这种方法是人想出来的,而不是机器自己产生的,我们要让机器自己产生

通过把很多个逻辑回归接起来,我们就可以解决这样一个问题

通过调整参数,上面这些都是可以实现的

 类神经网络

李宏毅深度学习——逻辑回归相关推荐

  1. 李宏毅深度学习作业二

    任务说明 Binary classification is one of the most fundamental problem in machine learning. In this tutor ...

  2. 李宏毅深度学习视频摘要

    视频地址 李宏毅深度学习(nlp)2017 视频摘要 P1 讲了RNN,LSTM ,GRU网络构造 P2 讲了卷积的原理,pooling的原理,已经不太常规的poolling方法.另外提到一种特殊的R ...

  3. 李宏毅深度学习笔记——呕心整理版

    李宏毅深度学习笔记--呕心整理版 闲谈叨叨叨: 之前看过吴恩达的一部分课程,所以有一定理论基础,再看李宏毅的课程会有新的理解.我先以有基础的情况写完学习过程,后续再以零基础的角度补充细节概念(估计不会 ...

  4. [2022]李宏毅深度学习与机器学习第十二讲(必修)-Reinforcement Learning RL

    [2022]李宏毅深度学习与机器学习第十二讲(必修)-Reinforcement Learning RL 做笔记的目的 What is RL Policy Gradient Version 1 Ver ...

  5. [2022]李宏毅深度学习与机器学习课程内容总结

    [2022]李宏毅深度学习与机器学习课程内容总结 课程感受 第一讲必修 ML的三个步骤 第一讲选修 深度学习发展趋势 反向传播 从线性模型到神经网络 为什么要用正则化技术 为什么分类是用交叉熵损失函数 ...

  6. 2020李宏毅深度学习hw1

    2020李宏毅深度学习hw1 1.导入包 import sys import pandas as pd import numpy as np 2.加载数据 data = pd.read_csv('tr ...

  7. 【李宏毅深度学习CP10】Self-attention(part1)

    学习心得 (1)传统的Attention是基于source端和target端的隐变量(hidden state)计算Attention的,得到的结果是源端的每个词与目标端每个词之间的依赖关系.但Sel ...

  8. [2022]李宏毅深度学习与机器学习第四讲(选修)-GNN

    [2022]李宏毅深度学习与机器学习第四讲(选修)-GNN 做笔记的目的 GNN NN4G DCNN MoNET GTA GIN 做笔记的目的 1.监督自己把50多个小时的视频看下去,所以每看一部分内 ...

  9. [2022]李宏毅深度学习与机器学习第六讲(必修)-GAN

    [2022]李宏毅深度学习与机器学习第六讲(必修)-GAN 做笔记的目的 GAN generator Unconditional generator Theory Behind Tips for GA ...

最新文章

  1. python 之 append extend
  2. NYOJ -804 Gift (二分)
  3. Android开发中常见的设计模式
  4. Android应用安装apk版本升级,适配Android 8.0和Android 10.0下载安装,shell命令安装APK
  5. Qt文件编码转换工具(二) C++判断文件编码
  6. linux学习之lvm-逻辑卷管理器
  7. android 驱动(6)---DTS 分析
  8. (Origin)如何复制文件到另一个项目
  9. mysql金钱默认字段格式化_在SQL数据库中,设置了一个字段的类型为money,但是money类型数据保留的是四位小数,如何设置为两位小数?...
  10. 扒一扒9.3阅兵直播如何采用虚拟现实技术
  11. Adobe Flash CS4 从入门到精通
  12. 【科研小技巧|知网】如何下载 PDF 格式的学位论文
  13. MATLAB随机数的应用ppt,Matlab生成随机数.ppt
  14. 微信小程序开发——最新网络流行语(前言)
  15. 有哪些支持 HomeKit 的智能家居生态值得推荐?
  16. 获取设备唯一编号替代IMEI新方案
  17. oracle职工工资数据表四表联动,oracle 学习之基础篇(四):多表查询
  18. Spring Boot 使用 QQ邮箱发邮件
  19. 偷偷学Python,怎么高空建楼(Python自动化办公实现批量替换Word)
  20. Linux鸟哥的私房菜(硬件)

热门文章

  1. pyqt5能否用于鸿蒙系统,PyQt显示来自opencv的视频流
  2. iphone电池怎么保养_苹果iPhone手机怎么开启【优化电池充电】
  3. 职称计算机初级应知应会书,2017专业技术职称申报应知应会.ppt
  4. php程序网站整站301,织梦dede怎么实现整站301
  5. oracle11g知乎,【AAAI】AAAI2020录用论文汇总(二)
  6. java src 文件路径_java中获得src路径下文件的常用方法
  7. ubuntu opencv c++ 读取摄像头
  8. keras 多个显卡
  9. 二叉树的按层打印和ZigZag打印
  10. NLP 笔记: 序列标注与BIO标注