1. 分类Classification分为正类和负类

(规定谁是正谁是负无所谓)

吴恩达老师举例几个例子:判断邮箱是否是垃圾邮箱 一个在线交易是否是诈骗 一个肿瘤是良性的还是恶性

如果我们用之前学习的linear regression(线性回归(PS:linear是直线的意思))去做分类其实不太适合 为什么呢?

1)因为我们要分类 得到的数想要的是0或1 或者多分类问题的0 1 2 3,所以我们想将分类器的输出值压缩到[0,1]上(如果是0,1分类问题)但是linear regression他生成出来的值是连续的值 可以大于1也可以小于1 也可以在0~1之间 生成后我们还需要人为去规定一个阈值去判断哪种的值归为1哪种的归为0 所以很难做到自动化去判断这个临界值在哪儿

2)

根据训练集我们可以用一条直线hθ(x)=θ^TX去拟合数据 这条粉色的线就是hθ(x)=θ^TX 直线看上去不错  我们以y=0.5来区分肿瘤

这样得到的分类结果非常理想

但是如果多一个样本 这些样本通过线性回归就会拟合出来蓝色的线

现在如果仍然将阈值设为0.5  那y对过去x轴就在绿点 此时绿点右侧被预测为正,左侧预测为负

那这毫无疑问是一个差的回归了 因为上面5个是恶性的样本有2个被分为良性了 而我们要想得到正确结果需要的是蓝色的那条竖线去分

2.Logistic Regression逻辑回归是一种专门的分类算法 和线性回归一样生成的也是连续的值 但这个值是0~1里的值 为什么能压缩到0~1呢?

是因为我们使用的假设函数Hypothesis的名字叫Sigmoid function/Logistic Function他长这样:

hθ(x)=g(θ^tX) 其中 实际上就是给Linear regression套了一个sigmoid函数

假设函数Hypothesis也可以写为

Logistic Regression的假设函数代表的实际上是一个条件概率:在参数θ和x给定的条件下,y分成哪一类的概率

hθ(x)=P(y=1|x;θ)hθ(x)=P(y=1|x;θ) 
P(y=1|x;θ)+P(y=0|x;θ)=1

指的是我来了一个病人把他肿瘤特征x喂给我们的Hypothesis ,这里的两个特征x0=1是我们初始化规定的,x1是肿瘤大小 然后通过这某个Hypothesis运算得到一个h(x)=0.7 那我们就说y=1即很遗憾他得恶性肿瘤的概率是0.7

3.决策边界(分类线) Decision Boundary:

还是先根据来划分类别 y=0 y=1的类别

然后再将hθ(x)对应回溯到Linear Regression的函数值上 再从θ^Tx回溯到对所有的x值对应多维空间的一个划分

举个例子:如:先将hθ(x)小于0.5的划分为0  大于0.5的划分为1

那么 z=Θ^tx当z大于0时g(z)=g(Θ^tx)=hΘ(x)≥0.5 那么y=1;分类为y=0同理

决策边界各式各样,只有得到Θ值就能得到决策边界,举两个例子:

先是一个线性的例子:

假设参数Θ0=-3  Θ1=1  Θ2=1  我们把x1+x2=3这条直线画入图像:

即得到:

当y=1时-3+x1+x2≥0

当y=0时-3+x1+x2≤0

也可以是这种非线性的情况:

假设函数 hθ(x)=g(θ0+θ1x1+θ2x2+θ3*x1^2+θ4*x2^2)

假设我们的参数θ=[-1,0,0,1,1]^t(向量形式)

所以我们的决策边界(Decesion Boundary)是各式各样的,函数越复杂,决策边界的造型就越奇葩 比如可以是如下的样子:

  

需要注意的是 上述两条(直线、圆线)决策边界(Decesion Boundary)只跟我们的参数Θ有关 而与样本数据无关

4.逻辑回归的代价函数:

和之前一样 要想找到我们的参数Θ,需要使用梯度下降法

对于线性回归他画出的代价函数是凸函数,通过梯度下降就可以找到我们的全局最优解;但是对于逻辑回归还使用这个代价函数的话,就会因为逻辑回归中的hθ(x)是非线性的sigmoid函数最后会导致我们的损失函数变成参数θ的非凸函数虽然有最小值但是有很多局部最小值,所以对他用梯度下降法很可能只是达局部最小值而不能保证能收敛到全局最小值

为了让他变成凸函数 我们选择换一个专用的代价函数称之为Logistic regression  cost function

将上述代价函数的分段函数形式改写成一个非分段形式

是个分类函数 分类结果不同 他的损失函数也不同

别忘了Costfunction的本质要求:对于我们函数生成出来的概率值 如果概率值指向了正确的方向是靠近的 比如我们面对的y=1的分类 那么我们的预测值也是靠近1这个值 那我们的损失函数要奖励你 就意味着损失值很低 但是如果预测出来是y=1但实际结果是y=0那你预测就做的不好 我们的损失函数就要惩罚你 给你一个很大的惩罚值

其中导数等于:

惊奇的发现和之前线性回归梯度下降的式子一样 但显然线性回归和逻辑回归不是同一个算法 因为h(x)不同:

5.其他算法

还有3种类似梯度下降的算法

这三种算法的缺点就是比梯度下降法复杂多了 优点是无需选学习率α 比梯度下降效率高

6.多元分类:一对多

即不是只有0 1了 而是比如email分类y=1代表同事 y=2代表朋友 y=3代表家人 y=4代表兴趣

从以前的两个数据集变成了三个数据集

我们拟合出三个分类器

吴恩达机器学习学习笔记第五章:多变量线性回归

先将叉叉和框框看作一类 判断他是三角还是不是三角

同理对方形和叉叉都做一次 这3个模型

当来了一组新的x1x2后分别代入这三个模型中 分别生成3个概率 看哪个概率最高 最高的就是那一类

吴恩达机器学习学习笔记第七章:逻辑回归相关推荐

  1. 吴恩达机器学习学习笔记第四章:python的配置

    python有两个版本分python2和python3这两个可以说是截然不同了 市面上python语言基础的书籍大多停留在python2 本人紧跟时代潮流 使用的是python3.6 如果你也想学对p ...

  2. 吴恩达机器学习学习笔记第三章:机器学习中的线性代数

    线性代数在python中的实现已经在第六章谈到,这里关于线性代数的理论基础 给大家分享几个知乎上解释线性代数讲的很生动形象的回答和文章 矩阵乘法的本质是什么? - 张一苇的回答 - 知乎 矩阵乘法的本 ...

  3. 吴恩达机器学习学习笔记第六章:机器学习中的线性代数操作python3版(含numpy、panda库的使用)

    pracitice1:是针对矩阵元素的基本运算 #practice1是针对矩阵元素的基本运算 import numpy as np A=np.array([[1,2,3],[3,4,5]])#列表转换 ...

  4. 【CV】吴恩达机器学习课程笔记第18章

    本系列文章如果没有特殊说明,正文内容均解释的是文字上方的图片 机器学习 | Coursera 吴恩达机器学习系列课程_bilibili 目录 18 应用案例:照片OCR 18-1 问题描述与流程(pi ...

  5. 【CV】吴恩达机器学习课程笔记第17章

    本系列文章如果没有特殊说明,正文内容均解释的是文字上方的图片 机器学习 | Coursera 吴恩达机器学习系列课程_bilibili 目录 17 大规模机器学习 17-1 学习大数据集 17-2 随 ...

  6. 【CV】吴恩达机器学习课程笔记第16章

    本系列文章如果没有特殊说明,正文内容均解释的是文字上方的图片 机器学习 | Coursera 吴恩达机器学习系列课程_bilibili 目录 16 推荐系统 16-1 问题规划 16-2 基于内容的推 ...

  7. 【CV】吴恩达机器学习课程笔记 | 第1-2章

    本系列文章如果没有特殊说明,正文内容均解释的是文字上方的图片 机器学习 | Coursera 吴恩达机器学习系列课程_bilibili 目录 1 介绍 1-3 监督学习 1-4 无监督学习 2 单变量 ...

  8. 【CV】吴恩达机器学习课程笔记第10章

    本系列文章如果没有特殊说明,正文内容均解释的是文字上方的图片 机器学习 | Coursera 吴恩达机器学习系列课程_bilibili 目录 10 应用机器学习的建议 10-1 决定下一步做什么 10 ...

  9. 【CV】吴恩达机器学习课程笔记第11章

    本系列文章如果没有特殊说明,正文内容均解释的是文字上方的图片 机器学习 | Coursera 吴恩达机器学习系列课程_bilibili 目录 11 机器学习系统设计 11-1 确定执行的优先级:以垃圾 ...

最新文章

  1. 前端学习笔记系列一:14 vue3.X中alias的配置
  2. python连接数据库示例(东西写得很详细,剽过来了)
  3. Pod详解-生命周期-创建和终止
  4. python基础编码规范_Python语言的基本语法和编码规范.doc
  5. 详解Java中static关键字和final关键字的功能
  6. span 文本内容超过宽度自动换行
  7. 链表简介(三)——在单向链表中删除节点
  8. 14.2.4 InnoDB Undo Logs
  9. GIS离线地图的下载与发布
  10. 关于Mpush 消息推送 出现的问题
  11. [转]读《简约至上》有感 - 及我的支语片言
  12. 2020美团笔试题目:送餐小区数量
  13. 用递归及非递归方式实现树状结构的遍历函数
  14. ms-sql数据类型和access数据类型大全
  15. MATLAB画哆啦A梦
  16. SuperMap GIS管线数据处理QA
  17. bzoj5314: [Jsoi2018]潜入行动【树形dp】
  18. 公交智能调度系统车载终端应用设计与实现
  19. 私有ip地址是怎么分配的?
  20. android百度多渠道打包,Android Stuido 实现多渠道打包

热门文章

  1. 释放 HTML5 audio 的力量
  2. 剑指offer:斐波那契数列
  3. [XJOI]noip44 T3还有这种操作
  4. 小白学Java Web 3 Web前端之CSS基本知识2
  5. EasyUI系列学习(一)-入门
  6. ubuntu sun-java-jdk(zhuan)
  7. 【原创】StreamInsight查询系列(十)——基本查询操作之联接
  8. jQuery UI 应用不同Theme的办法
  9. [必看]首先要求做到的事情![sumtec]
  10. jQuery插件uploadly报security Error:error #2049解决方案