参数学习——糖果问题(人工智能期末复习)
之前看了好久都不知道这题咋写,后来看了这篇机器智能-高频问题:糖果问题,大概看明白了,其实主要围绕着这两个公式

光看公式也看不懂,还是要结合题目来
己知有草莓味和酸橙味两种类型的糖果,分别放入5种不同的包装之中,
h1包装中100%是草莓味
h2包装中75%是草莓味25%是酸橙味
h3包装中50%是草莓味50%是酸橙味
h4包装中25%是草莓味75%是酸橙味
h5包装中100%是酸橙味
假定h1,h2… h5的先验分布概率为<0.1,0.2,0.4,0.2,0.1>,每次拿出糖果是相互独立的且不影响袋子里面糖果的比例,试回答下列问题:
(1)假定拿出的2个糖果都是草莓味,请分别计算每拿出一个糖果后h1到h5的概率值;
(2)在(1)的基础上计算下个糖果为草莓味,酸橙味的概率。
解:
(1)
- 拿出的第一个是草莓味
分别计算拿出的第一个是草莓味(d)的前提下从hi包装拿出的概率
P(h1|d) = 0.1×1×a=0.1a
P(h2|d) = 0.2×0.75×a=0.15a
P(h3|d) = 0.4×0.5×a=0.2a
P(h4|d) = 0.2×0.25×a=0.05a
P(h5|d) = 0.1×0×a=0
进行归一化:0.1a+0.15a+0.2a+0.05a+0=1 → a=2
因此
P(h1|d) = 0.1×1×a=0.2
P(h2|d) = 0.2×0.75×a=0.3
P(h3|d) = 0.4×0.5×a=0.4
P(h4|d) = 0.2×0.25×a=0.1
P(h5|d) = 0.1×0×a=0 - 拿出的第二个还是草莓味
P(h1|d) = 0.1×1×1×a=0.1a
P(h2|d) = 0.2×0.75×0.75×a=0.1125a
P(h3|d) = 0.4×0.5×0.5×a=0.1a
P(h4|d) = 0.2×0.25×0.25×a=0.0125a
P(h5|d) = 0.1×0×0×a=0
进行归一化:0.1a+0.1125a+0.1a+0.0125a+0=1 → a=40/13
所以
P(h1|d) = 0.1×1×1×a=0.3
P(h2|d) = 0.2×0.75×0.75×a=0.346
P(h3|d) = 0.4×0.5×0.5×a=0.3
P(h4|d) = 0.2×0.25×0.25×a=0.038
P(h5|d) = 0.1×0×0×a=0
(2)在第一题的基础上我们已经计算出了拿的包装是hi的概率,这一问就利用P(hi|d)来预测下一个糖的概率
在已知拿出了前两个都是草莓味(d)的前提下,预测下一个糖是草莓味(X)的概率
P(X|d) = ∑P(X|hi)P(hi|d) = 1×0.3+0.75×0.346+0.5×0.3+0.25×0.038+0 = 0.719
在已知拿出了前两个都是草莓味(d)的前提下,预测下一个糖是酸橙味(Y)的概率
P(Y|d) = ∑P(Y|hi)P(hi|d) = 0+0.25×0.346+0.5×0.3+0.75×0.038+0 = 0.265
再换一题试试看
已知有5种包含的糖果:
h1:草莓味100%
h2:草莓味80%、酸橙味20%
h3:草莓味50%、酸橙味50%
h4:草莓味20%、酸橙80%
h5:酸橙味100%
5种包装的先验概率分别是10%、20%、30%、10%、30%
假定依次从袋子里拿出3个糖果分别是草莓味、酸橙味、酸橙味包装内的糖果数量是无穷多的,回答下列问题
1)分别计算该袋子为h1到h5的概率;
2)下一个糖果是草莓味和酸橙味的概率
(1)
- 拿出的第一个是草莓味
P(h1|d) = 0.1×1×a=0.1a
P(h2|d) = 0.2×0.8×a=0.16a
P(h3|d) = 0.3×0.5×a=0.15a
P(h4|d) = 0.1×0.2×a=0.02a
P(h5|d) = 0.3×0×a=0
进行归一化:0.1a+0.16a+0.15a+0.02a+0=1 → a=100/43
因此
P(h1|d) = 0.1×1×a=0.23
P(h2|d) = 0.2×0.8×a=0.37
P(h3|d) = 0.3×0.5×a=0.35
P(h4|d) = 0.1×0.2×a=0.05
P(h5|d) = 0.3×0×a=0 - 拿出的第二个是酸橙味
P(h1|d) = 0.1×1×0×a=0
P(h2|d) = 0.2×0.8×0.2×a=0.032a
P(h3|d) = 0.3×0.5×0.5×a=0.075a
P(h4|d) = 0.1×0.2×0.8×a=0.016a
P(h5|d) = 0.3×0×1×a=0
进行归一化:0+0.032a+0.075a+0.016a+0=1 → a=1000/123
所以
P(h1|d) = 0.1×1×0×a=0
P(h2|d) = 0.2×0.8×0.2×a=0.26
P(h3|d) = 0.3×0.5×0.5×a=0.61
P(h4|d) = 0.1×0.2×0.8×a=0.13
P(h5|d) = 0.3×0×1×a=0 - 拿出的第三个还是酸橙味
P(h1|d) = 0.1×1×0×0×a=0
P(h2|d) = 0.2×0.8×0.2×0.2×a=0.0064a
P(h3|d) = 0.3×0.5×0.5×0.5×a=0.0375a
P(h4|d) = 0.1×0.2×0.8×0.8×a=0.0128a
P(h5|d) = 0.3×0×1×1×a=0
进行归一化:0+0.0064a+0.0375a+0.0128a+0=1 → a=10000/567
所以
P(h1|d) = 0.1×1×0×0×a=0
P(h2|d) = 0.2×0.8×0.2×0.2×a=0.11
P(h3|d) = 0.3×0.5×0.5×0.5×a=0.66
P(h4|d) = 0.1×0.2×0.8×0.8×a=0.23
P(h5|d) = 0.3×0×1×1×a=0
(2)
下一个糖是草莓味(X)的概率
P(X|d) = ∑P(X|hi)P(hi|d) = 0.8×0.11+0.5×0.66+0.2×0.23 = 0.464
下一个糖是酸橙味(Y)的概率
P(Y|d) = ∑P(Y|hi)P(hi|d) = 0.2×0.11+0.5×0.66+0.8×0.23 = 0.536
相关文章:
参数学习——糖果问题(人工智能期末复习)
之前看了好久都不知道这题咋写,后来看了这篇机器智能-高频问题:糖果问题,大概看明白了,其实主要围绕着这两个公式 光看公式也看不懂,还是要结合题目来 己知有草莓味和酸橙味两种类型的糖果,分别放入5种不同…...
【深度学习】注意力机制(六)
本文介绍一些注意力机制的实现,包括MobileVITv1/MobileVITv2/DAT/CrossFormer/MOA。 【深度学习】注意力机制(一) 【深度学习】注意力机制(二) 【深度学习】注意力机制(三) 【深度学习】注意…...
螺旋矩阵算法(leetcode第59题)
题目描述: 给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。示例 1:输入:n 3 输出:[[1,2,3],[8,9,4],[7,6,5]] 示例 2:输入&#…...
SQL Server 服务启动报错:错误1069:由于登录失败而无法启动服务
现象 服务器异常关机以后,SQL Server服务无法启动了。 启动服务时报错: 错误1069:由于登录失败而无法启动服务 解决办法 我的电脑–控制面板–管理工具–服务–右键MSSQLSERVER–属性–登录–登陆身份–选择"本地系统帐户" 设置完成后&am…...
“ABCD“[(int)qrand() % 4]作用
ABCD[(int)qrand() % 4] 作用 具体来说: qrand() 是一个函数,通常在C中用于生成一个随机整数。% 4 会取 qrand() 生成的随机数除以4的余数。因为4只有四个不同的余数(0, 1, 2, 3),所以这实际上会生成一个0到3之间的随…...
Vue2面试题:说一下组件通信有哪些方式?
父传子 1、自定义属性 props:在父组件中,给子组件绑定一个自定义属性,在子组件中,通过props进行接收 2、$parent:直接访问父组件实例的属性和方法 3、$attrs:在父组件中,给子组件绑定一个自定义…...
C# 两个日期比较大小
文章目录 C# 两个日期比较大小直接比较大小工具类DateTime.Compare C# 两个日期比较大小 直接比较大小 string ed "2023-12-13 09:27:59.000";//过去式DateTime nowDateTime DateTime.Now;DateTime expirationDate Convert.ToDateTime(ed);//质保期 长日期DateT…...
路由基本原理
目录 一、路由器概述 二、路由器的工作原理 三、路由表的形成 四、路由配置 1.连接设备 2.进入系统模式 3.进入接口模式 4.配置网络 5.下一跳的设置 6.设置浮动路由 7.设置默认路由 一、路由器概述 路由器(Router)是一种用于连接不同网络或子…...
配置本地端口镜像示例
镜像概念 定义 镜像是指将指定源的报文复制一份到目的端口。指定源被称为镜像源,目的端口被称为观察端口,复制的报文被称为镜像报文。 镜像可以在不影响设备对原始报文正常处理的情况下,将其复制一份,并通过观察端口发送给监控…...
使用FluentAvalonia组件库快速完成Avalonia前端开发
前言 工欲善其事必先利其器,前面我们花了几篇文章介绍了Avalonia框架以及如何在Avalonia框架下面使用PrismAvalonia完成MVV模式的开发。今天我们将介绍一款重磅级的Avalonia前端组件库,里面封装了我们开发中常用的组件,这样就不用我们自己再写组件了。专注业务功能开发,提…...
JAVA实体类集合该如何去重?
JAVA实体类集合该如何去重? 最近在工作中经常遇到需要去重的需求,所以特意系统的来梳理一下 有目录,不迷路 JAVA实体类集合该如何去重?单元素去重方法一:利用Set去重方法二:利用java 8的stream写法…...
修改Element UI可清空Input的样式
如图所示,修改Input右侧的清空按钮位置: <el-input class"create-catalog-ipt"placeholder"请输入相关章节标题"v-model"currentCatalogTitle"clearable /> // SCSS环境 ::v-deep {.create-catalog-ipt {input {he…...
Java常用注解
文章目录 第一章、Java注解与元数据1.1)元数据与注解概念介绍1.2)Java注解的作用和使用1.3)注解的分类 第二章、Mybatis框架常用注解2.1)Mybatis注解概览2.2)常用注解MapperScanMapperSelectInsertUpdateDeleteParam结…...
golang实现同步阻塞、同步非阻塞、异步非阻塞IO模型
一、同步阻塞IO模型TCP和HTTP示例 同步阻塞IO符合我们的直觉认知,应用程序从TCP连接接收数据缓冲区接受数据,如果没有数据就等待——此处就是阻塞,如果有数据需要把数据从内核空间读取到用户空间——此处就是同步。 在Go语言中进行同步阻塞IO编程TCP交互,可以使用标准库中…...
java SSM教师工作量管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计
一、源码特点 java SSM 教师工作量管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要…...
大数据技术之Hive(超级详细)
第1章 Hive入门 1.1 什么是Hive Hive:由Facebook开源用于解决海量结构化日志的数据统计。 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。 本质是:将HQL转化成MapReduce程序 …...
NVMe over Fabrics with SPDK with iRDMA总结 - 1
1.0 Introduction简介 NVM Express* (NVMe*) drives are high-speed, low-latency, solid-state drives (SSDs), that connect over the server Peripheral Component Interconnect Express* (PCIe*) bus. NVM Express* (NVMe*) 硬盘是高速、低延迟的固态硬盘 (SSD),通过服…...
【PTA刷题】求链式线性表的倒数第K项(代码+详解)
文章目录 题目代码详解 题目 给定一系列正整数,请设计一个尽可能高效的算法,查找倒数第K个位置上的数字。 输入格式: 输入首先给出一个正整数K,随后是若干非负整数,最后以一个负整数表示结尾(该负数不算在序列内&#…...
VSCode 创建工作区,多文件夹终端切换
VSCode 创建工作区的好处有以下几点: 项目结构清晰:每个工作区都有自己的文件夹结构,可以更好地组织和管理项目文件。版本控制:VSCode 支持多种版本控制系统,如Git,可以在工作区内进行代码的版本管理。插件…...
高阶函数(js的问题)
(1)函数可以作为参数被传递 (2)函数可以作为返回值输出 4-1.函数作为参数传递 Array.prototype.sort方法: var array [10,5,12,3];array.sort();//array:[10,12,3,5]//如代码那样,排序的结果并不是我们想要…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...
VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP
编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...
【Kafka】Kafka从入门到实战:构建高吞吐量分布式消息系统
Kafka从入门到实战:构建高吞吐量分布式消息系统 一、Kafka概述 Apache Kafka是一个分布式流处理平台,最初由LinkedIn开发,后成为Apache顶级项目。它被设计用于高吞吐量、低延迟的消息处理,能够处理来自多个生产者的海量数据,并将这些数据实时传递给消费者。 Kafka核心特…...
【技巧】dify前端源代码修改第一弹-增加tab页
回到目录 【技巧】dify前端源代码修改第一弹-增加tab页 尝试修改dify的前端源代码,在知识库增加一个tab页"HELLO WORLD",完成后的效果如下 [gif01] 1. 前端代码进入调试模式 参考 【部署】win10的wsl环境下启动dify的web前端服务 启动调试…...
【Redis】Redis从入门到实战:全面指南
Redis从入门到实战:全面指南 一、Redis简介 Redis(Remote Dictionary Server)是一个开源的、基于内存的键值存储系统,它可以用作数据库、缓存和消息代理。由Salvatore Sanfilippo于2009年开发,因其高性能、丰富的数据结构和广泛的语言支持而广受欢迎。 Redis核心特点:…...
