生成式模型和判别式模型

news2024/11/30 0:30:50

决策函数 Y = f ( x ) Y = f(x) Y=f(x)或者条件概率分布

P ( Y ∣ X ) P(Y|X) P(YX)

监督学习的任务都是从数据中学习一个模型(也叫做分类器),应用这一模型,对给定的输入 x x x预测相应的输出 Y Y Y,这个模型的一般形式为:决策函数 Y = f ( x ) Y =f(x) Y=f(x),或者条件概率分布 P ( Y ∣ X ) P(Y|X) P(YX)

决策函数 Y = f ( x ) Y = f(x) Y=f(x):你输入一个 x x x,其就输出一个 y , y, y,,这个 Y Y Y与一个阈值比较,根据比较结果判定 x x x属于那个类别,例如两个累 w 1 和 w 2 w1和w2 w1w2的分类问题,如果 Y Y Y大于阈值,则 x x x属于类 w 1 w1 w1,如果小于阈值则属于类 w 2 w2 w2,这样就得到了该x对应的类别啦。

条件概率分布 P ( Y ∣ X ) P(Y|X) P(YX),你输入一个x,其通过比较其属于所有类的概率,然后输出概率最大的作为该 x x x对应的类别。例如:
如果 P ( w 1 ∣ x ) 大 于 p ( w 2 ∣ x ) P(w1|x)大于p(w2|x) P(w1x)p(w2x),那么我们就认为 x x x属于w1类的。

所以上面两个模型,都可以实现对给定输入 X X X预测相应的输出 Y Y Y的功能。实际上通过条件概率的分布 P ( Y ∣ X ) P(Y|X) P(YX),进行预测,也是隐含着表达成决策函数 Y = f ( x ) Y = f(x) Y=f(x)形式的。例如也是两类 w 1 和 w 2 w1和w2 w1w2,那么我们求得 P ( w 1 ∣ x ) , P ( w 2 ∣ x ) P(w1|x),P(w2|x) P(w1x)P(w2x),那么实际上判别函数都可以表示成: Y = P ( w 1 ∣ X ) / P ( w 2 ∣ X ) Y= P(w1|X)/P(w2|X) Y=P(w1X)/P(w2X),如果Y大于1或者某个阈值,那么X就属于类w1,如果小于阈值则属于w2。而同样的,很神奇的一件事请,实际上决策函数 Y = f ( x ) Y = f(x) Y=f(x),也是隐含着使用 P ( Y ∣ X ) P(Y|X) P(YX)的,
因为一般决策函数 Y = f ( X ) Y=f(X) Y=f(X),是通过学习算法,使你的预测和训练数据之间的误差平方最小化。而贝叶斯告诉我们,虽然其没有显示的运用贝叶斯或者以某种形式计算概率,但其实际上也是在隐含的输出极大似然假设,(MAP假设)。也就是说学习器的任务是在所有假设模型都有相等的先验概率条件下。输出极大似然假设。
所以呢,分类器的设计都是给定训练数据的基础上,估计其概率模型 P ( Y ∣ X ) P(Y|X) P(YX),如果可以估计出来,那么就可以进行分类的。但是一般来说,概率模型是比较难估计的,给一堆数给你。特别是数不多的时候,你一般很难找到这些数满足什么规律吧。那能否不依赖概率模型直接设计分类器呢?事实上,分类器就是一个决策函数(决策面)。如果能够从要解决问题和训练样本出发,直接求出判别函数。就不用估计概率模型了。这就是决策函数 Y = f ( x ) Y = f(x) Y=f(x)的伟大使命了。例如:支持向量机,我们已经知道其决策函数(分类面)是线性的了。也就是可以表示成 Y = f ( X ) = W X + b Y=f(X)=WX+b Y=f(X)=WX+b的形式的。 那么我们通过训练样本来学习得到 W 和 b W和b Wb的值,就可以得到 Y = F ( X ) Y = F(X) Y=F(X),
还有一种更直接的分类方法,其不用事先设计分类器,而是只确定分类原则,根据已知样本(训练样本)直接对未知样本进行分类。包括近邻法、其不会在进行具体的预测之前求出概率模型 P ( Y ∣ X ) P(Y|X) P(YX),或者决策函数 Y = f ( x ) Y = f(x) Y=f(x),而是在真正预测的时候,将x与训练数据的各类 x i x_i xi比较,和那些比较相似,就判断其X属于 x i x_i xi对应的类。

生成式和判别式方法

监督学习方法又分为生成式方法和判别式方法。所学到的模型分别分为生成模型和判别模型,简称GM和DM

在这里插入图片描述

生成方法

生成方法:由数据学习联合概率分布 P ( X , Y ) P(X,Y) P(X,Y),然后求出条件概率分布 P ( Y ∣ X ) P(Y|X) P(YX),作为预测模型,即生成模型为
P ( Y ∣ X ) = P ( X , Y ) P ( X ) P(Y|X) = \frac{P(X,Y)}{P(X)} P(YX)=P(X)P(X,Y)

基本思想是首先建立,联合样本的概率密度模型 P ( X , Y ) P(X,Y) P(X,Y),然后再得到后验概率 P ( Y ∣ X ) P(Y|X) P(YX),再利用其进行分类。就像上面所说那样,这里先求出 P ( X , Y ) P(X,Y) P(X,Y)才得到 P ( Y ∣ X ) P(Y|X) P(YX)的,然后这个过程还是先求出 P ( x ) P(x) P(x) P ( x ) P(x) P(x)就是你训练数据的概率分布。需要你的数据样本非常多的时候,你得到的 P ( x ) P(x) P(x)才能很好额描述你数据的真正分布,例如,你投硬币,你尝试了100次,得到正面次数和你实验次数比可能是 3 10 \frac{3}{10} 103, 然后你直觉告诉你,你可能不对,然后你再尝试了500次,哎,这次,你正面次数和你的实验次数的比可能变成了 4 10 \frac{4}{10} 104,这时候,你就半信半疑了,不相信上帝还有一个手,所以你再尝试了200000次,这时候正面次数和你实验次数比,就变成 5 10 \frac{5}{10} 105,这时候,你就觉得很靠谱啦。

在这里插入图片描述
还有一个问题,就是,在机器学习这种还有一个约定俗称的规则,不要去学习那些对机器学习任务没有用的东西。例如:对于一个分类任务,对一个给定输入 x x x中,在将其划分到一个类 y y y中,那么我们用生成模型: p ( x , y ) = p ( y ∣ x ) . p ( x ) p(x,y)=p(y|x).p(x) p(x,y)=p(yx).p(x).

   那么,我们就**需要去对p(x)建模**,但这增加了我们的工作量,(除了上面说的那个**估计得到P(X)可能不太准确外)**。实际上,因为数据的稀疏性,导致我们都**是被强迫地使用弱独立性假设去对p(x)建模**的,所以就产生了局限性。所以我们**更趋向于直观的使用判别模型去分类**。

   这样的方法之所以称为生成方法,是因为模型表示了给定输入X产生输出Y的生成关系。**用于随机生成的观察值建模**,特别是在给定某些隐藏参数情况下**。典型的生成模型有:朴素贝叶斯和隐马尔科夫模型**等。

常见的生成式模型总结如下

  • 生成式模型
    朴素贝叶斯
    贝叶斯网络
    pLSA
    LDA
    隐马尔可夫模型
    高斯判别分析(GDA)
    • 判别式模型
      最大熵模型
      条件随机场
      k近邻算法
      感知机
      决策树
      逻辑回归
      SVM
      AdaBoost

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/49001.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java 每日一练(6)

java 每日一练(6) 文章目录单选不定项选择题编程题单选 1.关于抽象类与最终类,下列说法错误的是?   A 抽象类能被继承,最终类只能被实例化。   B 抽象类和最终类都可以被声明使用   C 抽象类中可以没有抽象方法,最终类中可以没…

Bean 管理(工厂bean)

IOC操作Bean 管理(FactoryBean) 下面是在Bean 管理(工厂bean)之前的学习,基于xml方式注入集合并实现 基于xml方式注入集合并实现 :http://t.csdn.cn/H0ipR Spring 有两种类型bean,一种普通bean…

第五章. 可视化数据分析分析图表—图表的常用设置2

第五章. 可视化数据分析分析图 5.2 图表的常用设置2 本节主要介绍图表的常用设置,设置标题和图例,添加注释文本,调整图表与画布边缘间距以及其他设置。 7.设置标题(title) 1).语法: matplotlib.pyplot.ti…

iOS15适配 UINavigationBar和UITabBar设置无效,变成黑色

今天更新了xcode13,运行项目发现iOS15以上的手机导航栏和状态栏之前设置的颜色等属性都不起作用了,都变成了黑色,滚动的时候才能变成正常的颜色,经确认得用UINavigationBarAppearance和UITabBarAppearance这两个属性对导航栏和状态…

开发SpringBoot+Jwt+Vue的前后端分离后台管理系统VueAdmin - 前端笔记

一个spring security jwt vue的前后端分离项目!综合运用! 关注公众号 MarkerHub,回复【 VueAdmin 】可以加群讨论学习、另外还会不定时安排B站视频直播答疑! 首发公众号:MarkerHub 作者:吕一明 视频讲解&…

半年卖8万吨辣条,卫龙再闯IPO

“辣条大王”卫龙美味全球控股有限公司(下称“卫龙”)于11月23日重新递表,继续冲刺“辣条第一股”。 作为千禧一代撑起的童年“神话”,卫龙的上市之路却波折重重;它曾于2021年5月、2021年11月及此次重启IPO。 卫龙是…

线程池ThreadPoolExecutor

线程池的生命周期 private final AtomicInteger ctl new AtomicInteger(ctlOf(RUNNING, 0)); ThreadPoolExecutor使用一个ctl变量代表两个信息,线程池的运行状态 (runState) 和 线程池内有效线程的数量 (workerCount),高三位表示状态。 workerCount&am…

MySQL 数据库存储引擎

目录 一、存储引擎简介 二、MyISAM存储引擎 1、MylSAM介绍 2、MyISAM表支持3种不同的存储格式 3、MylSAM的特点 4、MyISAM使用的生产场景 三、InnoDB存储引擎 1、InnoDB介绍 2、InnoDB的特点 3、InnoDB适用生产场景 4、MyISAM和InnoDB的区别 四、查看和修改存储引擎…

CloudAlibaba - Nacos服务注册与配置中心

文章目录一.CloudAlibaba简介1. 介绍2. 依赖3. 主要组件4. 资料文档二.Nacos服务注册与发现1. 简介2. Nacos安装3. Nacos服务注册3.1 注册服务生产者3.2 服务消费者注册和负载4. Nacos服务中心对比三.Nacos配置中心1. 基础配置搭建2. Nacos中添加配置信息2.1 Nacos中的匹配规则…

单商户商城系统功能拆解40—分销应用—分销设置

单商户商城系统,也称为B2C自营电商模式单店商城系统。可以快速帮助个人、机构和企业搭建自己的私域交易线上商城。 单商户商城系统完美契合私域流量变现闭环交易使用。通常拥有丰富的营销玩法,例如拼团,秒杀,砍价,包邮…

前端js传入Long类型精度丢失解决办法

目录 问题背景 解决过程 1.对比数据库数据 2.查询资料 解决方法 问题背景 在进行业务开发的 时候发现更新数据库中的一条数据没有成功,查看SQL日志发现SQL正常执行无错误信息,但是受影响行数为0,但是数据是从前端传过来的 ,一…

面试官:MySQL explain你会关注哪些字段

编号字段名称字段说明值重要性1idSELECT查询序号,即为sql语句执行的顺序。数字越大越优先执行1、2、3...★★2select_typeselect类型,用于区分是普通查询、子查询或联合查询simple:简单的查询,不含子查询和联合查询primary&#x…

玩机搞机---卸载内置软件 无root权限卸载不需要的软件 安全卸载

目前的机型出厂都会自带一些内置软件。个别的还无法删除。各种弹窗广告 等等占用系统资源。操作卡顿。而很多卸载软件有需要root权限才可以运行。那么有没有方法可以无需root就可以卸载内置软件呢。答案是有的。而且方法很多。今天的帖子就列举一下常用的操作步骤 操作前了解的…

自己搭建网站【搭建网站】

现在搭建网站也不只是企业公司商家的专利,很多个人用户都想拥有属于自己的一个网站。那么怎么自己搭建网站呢?下面给大家简单说说。 一、申请域名 域名是访问网站的地址,这是必须要有的,可以在域名服务商网站上申请。申请域名需要…

科普-鸟哥私房菜中的“od -t oCc /etc/issue”的意思

文章摘录展示 看到这里是困惑的,毕竟看这里没有写oCc 的格式 既然文章不能找到答案,那么,我们看详细的说明吧(man od) 如图,想必我们应该很清楚了 ,o[size] 对应的参数oC ,就可以很…

2022.11.27Find a way HDU - 2612

Pass a year learning in Hangzhou, yifenfei arrival hometown Ningbo at finally. Leave Ningbo one year, yifenfei have many people to meet. Especially a good friend Merceki. Yifenfei’s home is at the countryside, but Merceki’s home is in the center of city.…

MySql索引详解-各种索引的定义与区别和应用

MySql索引详解-各种索引的定义与区别和应用一、索引基础:增删改查1.新增索引的几种方式2.删除索引的几种方式3.修改索引的几种方式4.查询索引的几种方式二、索引的分类1.主键索引2.唯一索引3.普通索引4.复合索引5.全文索引三、总结什么是索引?索引的作用…

【DL with Pytorch】第 6 章 : 用循环神经网络分析数据序列

🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃 🎁欢迎各位→点赞…

PointRend 原理与代码解析

paper:PointRend: Image Segmentation as Rendering code1:https://github.com/facebookresearch/detectron2/tree/main/projects/PointRend code2:https://github.com/open-mmlab/mmsegmentation/tree/master/configs/point_rend 创新点…

[附源码]Python计算机毕业设计Django的花店售卖系统的设计与实现

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…