揭秘《庆余年算法番外篇》:范闲通过贝叶斯定理找到太子火烧史家镇的证据

news2024/9/23 21:28:50

剧情背景

在《庆余年2》中史家镇是李云睿和二皇子向北齐走私的重要通道,太子派人把史家镇烧成灰烬,最后嫁祸于二皇子,加大范闲对二皇子的恨意,坐收渔翁之利,意图销毁所有证据。范闲痛心疾首,但是马上调整,拿出高考备考的心态,在被毁的镇子里找到蛛丝马迹,通过贝叶斯推理分析这些线索,找出太子犯罪的确凿证据。

场景描述

范闲到达被火烧过的镇子,开始寻找可能的线索。他知道凶手非常狡猾,留下的线索非常隐蔽。范闲决定利用贝叶斯推理来整理和分析这些线索,以找到关键证据。

数据收集与预处理

范闲在镇上收集了一系列线索,包括:

  • 目击者的证词:一些幸存者描述了火灾发生的情况。

  • 物理证据:镇上残留的烧焦物、脚印等。

  • 时间线索:火灾发生的具体时间。

范闲将这些线索整理成一个大表格,每一行代表一个线索。

使用贝叶斯推理分析线索

贝叶斯推理是一种统计方法,通过已知的证据来更新对某个事件的概率估计。范闲可以利用贝叶斯推理来分析所有线索,找出最可能的证据。

在这里插入图片描述

确定线索的似然概率和总体概率

数据来源

为了确定这些线索的似然概率,范闲参考类似情况下的历史数据。例如,在100起火灾案件中,如果80起案件中都发现了相关人员的存在,那么这个线索的似然概率就是0.8。具体步骤如下:

线索1:在镇上发现太子的手下的似然概率

假设在过去的100起类似案件中,90起案件中都有罪犯的手下出现在现场,那么线索1的似然概率 ( P(B1|A) ) 可以被估计为0.9。这表示如果太子确实是罪犯,那么镇上发现他的手下的可能性很高。

线索2:目击者看到可疑火光的似然概率

假设在过去的100起火灾案件中,70起案件中目击者报告看到可疑的火光,那么线索2的似然概率 ( P(B2|A) ) 可以被估计为0.7。如果太子是罪犯,那么目击者看到可疑火光的可能性也较高。

线索3:发现密信与太子府有关联的似然概率

假设在过去的100起类似案件中,80起案件中发现了类似的密信与罪犯来往,那么线索3的似然概率 ( P(B3|A) ) 可以被估计为0.8。如果太子是罪犯,那么发现密信的可能性也较高。

确定线索的总体概率

这些概率基于通常在事故现场找到这些线索的概率假设:

  • 线索1的总体概率 ( P(B1) ) 是 0.2。通常在事故现场发现相关人员的概率。
  • 线索2的总体概率 ( P(B2) ) 是 0.3。通常在事故现场目击者看到可疑火光的概率。
  • 线索3的总体概率 ( P(B3) ) 是 0.1。通常在事故现场发现密信的概率。

贝叶斯推理计算

# 先验概率:太子和二皇子有罪的初始概率
P_A = 0.5
P_B = 0.5

# 线索的似然概率
P_B1_given_A = 0.9  # 线索1:太子的手下在场
P_B2_given_A = 0.7  # 线索2:目击者看到火光
P_B3_given_A = 0.8  # 线索3:发现密信

# 线索的总体概率
P_B1 = 0.2
P_B2 = 0.3
P_B3 = 0.1

# 使用贝叶斯定理更新后验概率
def bayesian_inference(P_prior, P_likelihood, P_evidence):
    return (P_likelihood * P_prior) / P_evidence

# 计算每个线索对太子有罪的支持
P_A_given_B1 = bayesian_inference(P_A, P_B1_given_A, P_B1)
P_A_given_B2 = bayesian_inference(P_A, P_B2_given_A, P_B2)
P_A_given_B3 = bayesian_inference(P_A, P_B3_given_A, P_B3)

# 综合所有线索
P_A_combined = P_A_given_B1 * P_A_given_B2 * P_A_given_B3
P_A_final_normalized = P_A_combined / (P_A_combined + (1 - P_A_combined))

# 计算二皇子有罪的概率(假设没有发现线索)
P_B_given_B1 = bayesian_inference(P_B, 1 - P_B1_given_A, P_B1)
P_B_given_B2 = bayesian_inference(P_B, 1 - P_B2_given_A, P_B2)
P_B_given_B3 = bayesian_inference(P_B, 1 - P_B3_given_A, P_B3)

P_B_combined = P_B_given_B1 * P_B_given_B2 * P_B_given_B3
P_B_final_normalized = P_B_combined / (P_B_combined + (1 - P_B_combined))

print(f"综合所有线索后,太子有罪的概率: {P_A_final_normalized:.2f}")
print(f"综合所有线索后,二皇子有罪的概率: {P_B_final_normalized:.2f}")

在这里插入图片描述
在这里插入图片描述

场景细节

  • 范闲到达镇上:范闲仔细查看火灾现场,收集所有可能的线索。
  • 数据分析:范闲将线索整理成数据,使用贝叶斯推理进行分析。
  • 证据确认:通过贝叶斯推理,范闲找到了支持太子有罪的关键证据,同时分析二皇子的无罪概率。
  • 揭露真相:范闲将证据带回,揭露了太子的罪行,避免了一场冤案。

总结

通过这个具体场景,能更清晰的掌握贝叶斯概念和应用场景,关注作者,一起学习算法,穿越到古代也能用到哦。

在这里插入图片描述

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

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

相关文章

文章一:华为晟腾310b的Atlas 200 AI加速模块进行视频的AI分析,硬件使用的是Oringepi alpro(推荐环境安装)

1,首先本次我们使用MindxSDK进行视频分析 2,环境安装 主要还是参考官方的安装步骤,安装步骤链接 2.1,安装NPU,检查NPU安装情况 默认的官方的ubuntu是自带安装NPU的driver的,只需要检查一下版本就可以了。 mxVisio…

两种现货白银资金的管理方法 你喜欢哪一种?

做现货黄金交易,除了投资者的盘感、市场分析技巧等因素以外,其实对于现货白银资金的管理也是很重要的。下面我们就来介绍两个现货白银资金的管理方法,主要是开仓和加仓方面的。 按照投资者的操作风格,我们可以将现货白银资金管理的…

防火墙基础基础篇:NAT转发功能之——Easy IP方式详解

防火墙基础基础篇:NAT转发功能之——Easy IP方式详解 1. 概念 Easy IP 是一种简化版的动态NAPT(Network Address and Port Translation)技术。在Easy IP中,我们只使用一个公网IP地址,无需建立公有IP地址池。这个公网…

拼多多买家关注店铺 id 导出商品收藏导出查看全店spu_id

拼多多买家账号导出关注列表店铺 id、商品 id 登录网页端拼多多界面,清缓存后 F12加载数据,下滑界面自动加载缓存; 查看商品收藏 登录网页端拼多多界面,清缓存后 F12加载数据,下滑界面自动加载缓存; 一…

现在股票交易佣金标准最低是万0.854,低佣金炒股开户方式和流程!

股票交易佣金的最低标准是万分之0.854; 证券公司股票交易佣金默认是万分之3; 无门槛的股票交易佣金是万分之1; 万分之0.854的佣金要求投资者资产达到一定规模,不同的证券公司规定不一样。 如果没有经过证券公司客户经理协商开…

Java时间类--JDK8

为什么JDK8会又新增时间相关类呢? ① JDK7的时间对象如果需要比较大小的话,必须都先转换成毫秒值;JDK8则不需要,可以直接比较。 ② JDK7的时间对象可以修改,在多线程环境下就会导致数据不安全;JDK8不能修改…

Linux 进程相关概念

用以下指令查找正在运行的进程,并使用 grep 过滤出包含 "int" 的行。 "ps -aux" 显示当前系统上所有用户的进程列表,而 grep 命令则筛选出包含 "int" 的行。 ps -aux|grep int p代表process进程 1.什么是程序&#xff…

JavaScript(ES6)入门

ES6 1、介绍 ECMAScript 6(简称ES6)是于2015年6月正式发布的JavaScript 语言的标准,正式名为ECMAScript 2015(ES2015)。它的目标是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。…

unity回到低版本报错解决

用高版本2022打开过后的再回到2020就报了一个错。 报错如下: Library\PackageCache\com.unity.ai.navigation1.1.5\Runtime\NavMeshSurface.cs 看了一下是Library,然后我删除了整个Library文件夹,重启启动生成Library,然后还是…

【全开源】在线题库微信小程序系统源码(ThinkPHP+FastAdmin+UniApp)

打造个性化学习平台 一、引言:在线学习的未来趋势 在数字化时代,线上学习已逐渐成为主流。随着移动互联网的普及,小程序以其轻便、快捷、无需安装的特点,成为用户日常学习的新选择。为了满足广大用户对于在线学习的需求&#xf…

分治法(棋盘覆盖问题)

目录 前言 一、棋盘覆盖 二、图示解析 三、代码实现 四、具体分析 总结 前言 有一个 x (k>0)的棋盘,恰好有一个方格与其他方格不同,称之为特殊方格。现在要用L形骨牌覆盖除了特殊方格以外的其他全部方格,骨牌可以…

2.8万字总结:金融核心系统数据库升级路径与场景实践

OceanBase CEO 杨冰 谈及数字化转型,如果说过去还只是头部金融机构带动效应下的“选择题”。那么现在,我相信数字化转型已经成为不论大、中、小型金融机构的“必答题”。 本文为OceanBase最新发布的《万字总结:金融核心系统数据库升级路径…

【ARM+Codesys案例】基于全志T3+Codesys的快递物流单件分离器控制系统

物流涉及国计民生,是在社会发展中不可或缺的一环。随着社会的改革开放,工业发展迅猛,此时也伴随着物流业的快速发展。电商、快递等行业业务量爆发以及人工成本的不断上涨,自动化输送分拣设备市场呈现井喷式发展。物流行业从传统方…

Linux——Docker容器虚拟化平台

安装docker 安装 Docker | Docker 从入门到实践https://vuepress.mirror.docker-practice.com/install/ 不需要设置防火墙 docker命令说明 docker images #查看所有本地主机的镜像 docker search 镜像名 #搜索镜像 docker pull 镜像名 [标签] #下载镜像&…

navicat连接过的库忘记密码

1、点击文件->导出连接 2、勾选想要知道密码的库 3、打开导出的文件搜索Password 4、复制Password解密 把下面的php代码复制到在线运行php的网站,替换最下面的decrypt(‘B7246A6E64D4F50A563FA20427A47991’)括号里的内容,然后执行php代码&#xff0…

Thinkphp5响应式进销存仓库管理系统

随着企业规模的不断扩大和市场竞争的日益激烈,进销存管理在企业的运营中扮演着越来越重要的角色。为了提高企业的运营效率,降低库存成本,提升客户满意度,越来越多的企业开始引入进销存仓库管理系统。 进销存仓库管理系统是一种集…

洛谷 CF1209D Cow and Snacks

题目来源于:洛谷 题目本质:并查集 解题思路: 我们以每种化为一个点,以每个客人喜欢的两朵花给两朵花连一条无向边。则会出现一定数目的连通块,连通块总个数为 ans。 对每个连通块进行分析:第一个客人买走…

大模型部署推理应用技术浅析

大模型完成预训练后不是就万事大吉了,离推理应用还有很大距离,需要经过微调、部署等一系列工程化工作。尤其是在2B的行业大模型应用中,为解决大模型的幻觉、时效性和推理成本问题,需要建立单一模型之上的体系。模型部署中的技术大…

基于物联网技术的智能家居实训教学解决方案

引言 随着信息技术的飞速发展,,物联网(IoT)已深入至我们生活的每一个角落,从智能家居、智能健康、智能交通到智慧城市,无所不在。物联网技术已成为推动社会进步和产业升级的重要力量。智能家居作为物联网技…

【最新更新】上市公司-全要素生产率(1999-2023年)(数据+5种方法测算)

上市公司的全要素生产率是指在一定时期内,上市公司通过使用各种生产要素(包括资本、劳动力、技术等)所创造的价值。它是衡量上市公司经营绩效的重要指标之一,可以反映出公司的生产效率和创新能力。全要素生产率的计算方法有很多种,其中最常见…