深度学习--概率

ops/2025/4/2 6:23:23/

1 基本概率论

1.1 假设我们掷骰子,想知道1而不是看到另一个数字的概率,如果骰子是公司,那么所有6个结果(1..6),都有相同的可能发生,因此,我们可以说1发生的概率为1/6.

然而现实生活中,对于我们从工厂收到的真实骰子,我们需要检查它是否有瑕疵,唯一办法就是多投掷骰子对于每个骰子观察到[1.2...6]概率随着投掷次数增加越来越接近1/6.

导入必要的

%matplotlib inline

import torch

from torch.distributions import multinomial

from d2l import torch as d2l

统计学中我们把概率分布中抽取样本过程称为抽样笼统地说可以吧分布看作是概率分配稍后我们给出更加正式定义概率分配给一些离散选择分布称为多项分布

为了抽样一个样本掷骰子我们只需要输入一个概率向量输出是另一个相同长度的向量索引i采样结果i出现次数

fair_probs = torch.ones([6])/8;

multinomial.Multinomial(), fair_probs).sample()

tensor(0,1,0,0,0,0);

估计一个骰子公平性我们希望同一分布中生成多个样本如果pythonfor循环完成这个任务速度慢得惊人因此我们使用深度学习框架函数同时抽取多个样本得到我们想要任何形状独立样本数组

multinomial.Multinomial(10,fair_probs).sample()

tensor([1,1,2,1,3,2]);

现在我们知道如何骰子进行抽样我们可以模拟1000投掷然后我们可以统计1000投掷每个数组投中多少次具体来说我们计算相对频率作为真实概率估计。

将结果存储32浮点进行除法

counts=multinomial.Multinomial(1000, fair_probs).sample();

counts / 1000;

tensor([0.1500,0.1770,0.1540,0.1000,0.1790,0.1600]);

因为我们从一个公平骰子生成数据我们知道每个结果都有真实概率1/6约为0.167所以上面输出估计值看起来不错

我们也可以看到这些概率如何随着时间推移收敛真实概率我们进行500实验抽取10样本

每条实线对应骰子6一个并给出骰子实验出现估计概率当我们更多实验获得更多数据6实体曲线真实概率收敛

概率论公理

处理骰子掷出结果我们集合S=(1,2,3,4,5,6)称为样本空间 结果空间其中每个元素都是结果事件一组样本空间随机结果例如看到5看到奇数都是掷骰子有效事件注意如果一个随机试验结果A事件A已经发生也就是说如果掷出3因为3 < {1,3,5} 我们可以说看到奇数事件发生了

概率 可以认为集合映射到真实函数给定样本空间S事件A概率表示P(A),具有一下属性

1 对于任意事件A概率不会负数P(A) >= 0

2 整个样本空间概率1P(S) = 1

3 序列任意一个事件发生概率等于他们各自发生概率

随机变量

在我们掷骰子随机试验中我们引入随机变量random variable概率随机变量几乎可以任何数值并且可以随机试验一组可能性一个考虑一个随机变量X掷骰子样本空间S={1,2,3,4,5,6} 我们可以事件看到一个5

表示{X=5}X=5概率表示P{X=5}或者P(X=5) 通过P(X=a) 我们可以区分随机变量XX可以然而这可能导致繁琐表示为了简化符号一方面我们可以P(X) 表示随机变量X分布(distribution) 分布告诉我们X取得某一概率另一方面我们可以简单P(a) 表示随机变量取值a概率由于概率论事件来自样本空间一组结果因此我们可以随机变量指定取值范围例如P(1<<X<<3)表示事件(1<<X<<3) (X=1,2,3)概率等价P(1<<X<<3)表示随机变量X{1,2,3}概率

离散随机变量连续(continnuous) 随机变量之间微妙区别现实生活中测量两个人是否具有相同身高没有太大意义如果我们进行足够精确测量最终会被发现这个星球没有两个人具有完全相同身高在这种情况下询问某人身高是否落入给定区间比如是否1.79-1.81更有意义我们这个看到某个数值可能性量化密度(density)身高恰好1.8概率为0 但是密度不是0在任何两个不同身高之间区间我们都有非零概率其余部分我们考虑离散空间概率连续随机变量概率可以参考本书英文附录

2.6.2 处理多个随机变量

很多时候我们会考虑多个随机变量比如我们可能需要疾病症状之间关系建模给定一个疾病一个症状比如流感咳嗽某个概率存在或者不存在某个患者身上我们需要估计这些概率以及概率之间关系以便我们可以运用我们推断实现更好医疗服务

再举一个例子图像包含数百万像素因此数百万随机变量在许多情况下图像附带一个标签label标识图像中对象我们也可以标签视为一个随机变量我们甚至可以所有数据视为随机变量例如位置时间光圈焦距ISO距离相机类型所有这些都是联合发生随机变量当我们处理多个随机变量会有若干变量是我们感兴趣


http://www.ppmy.cn/ops/169911.html

相关文章

【HarmonyOS Next】三天撸一个BLE调试精灵

【HarmonyOS Next】三天撸一个BLE调试精灵 一、功能介绍 BLE调试精灵APP属于工具类APP&#xff0c;在用户使用的过程中&#xff0c;负责调试BLE设备从机端&#xff0c;比如蓝牙耳机、低功耗设备、带有BLE的空调等设备&#xff0c;可以在页面中清晰看到设备的厂商&#xff0c;…

如何在VB6 中发送电子邮件

大家好&#xff0c;我是 程序员码递夫。 VB6 发送电子邮件有多种方法&#xff0c;在这里讲的是 用CDO发送&#xff0c;直接上干货。 1、在项目–>引用中, 添加"Microsoft CDO for Windows 2000 Library" 2、编写发送代码 *************************** 功能&…

Docker入门篇4:查看容器资源、查看容器详细信息、查看容器日志、查看容器内运行的进程

大家好我是木木&#xff0c;在当今快速发展的云计算与云原生时代&#xff0c;容器化技术蓬勃兴起&#xff0c;Docker 作为实现容器化的主流工具之一&#xff0c;为开发者和运维人员带来了极大的便捷 。下面我们一起开始入门第四篇&#xff1a;查看容器资源、查看容器详细信息、…

基础场景-------------------(5)重载和重写的区别

重写(Override) 从字面上看&#xff0c;重写就是 重新写一遍的意思。其实就是在子类中把父类本身有的方法重新写一遍。子类继 承了父类原有的方法&#xff0c;但有时子类并不想原封不动的继承父类中的某个方法&#xff0c;所以在方法名&#xff0c;参数列 表&#xff0c;返回…

Spring MVC:关于@PostMapping和@GetMapping的使用场景、区别及核心要点的总结

关于 PostMapping 和 GetMapping 的使用场景、区别及核心要点的总结&#xff1a; 一、核心区别 特性GetMappingPostMappingHTTP 方法处理 GET 请求处理 POST 请求数据传输方式数据通过 URL 参数&#xff08;如查询参数&#xff09;传递数据通过 请求体&#xff08;Body&#…

Python+Requests+Pytest+YAML+Allure接口自动化框架

GitHub源码地址&#xff08;详细注释&#xff09;&#xff1a;源码 调试项目python自主搭建&#xff1a;附项目源码 一、项目介绍 本项目是基于 PythonRequestsPytestYAMLAllure 搭建的 接口自动化测试框架&#xff0c;用于对 REST API 进行测试。 框架的主要特点包括&#…

借壹起航东风,中国工厂出海开启新征程

在经济全球化不断深入的当下&#xff0c;中国工厂正以积极的姿态投身海外市场&#xff0c;渴望在全球商业版图中占据一席之地&#xff0c;绽放独特的光彩。然而&#xff0c;出海之路充满了挑战与艰辛&#xff0c;品牌塑造困难重重、询盘量不稳定、营销成本居高不下等问题&#…

Elasticsearch 分词器

一、简介 在 Elasticsearch 中&#xff0c;分词器&#xff08;Analyzer&#xff09; 是文本处理的核心组件&#xff0c;用于将文本拆分为词项&#xff08;Terms&#xff09;&#xff0c;并对词项进行标准化处理。分词器在索引和搜索过程中起着至关重要的作用&#xff0c;直接影…