人工智能数学基础(五):概率论

   概率论是人工智能中处理不确定性的核心工具,它为机器学习、数据科学和统计分析提供了理论基础。本文将深入浅出地介绍概率论的重要概念,并结合 Python 实例,帮助读者更好地理解和应用这些知识。资源绑定附上完整资源供读者参考学习!

5.1 概述

5.1.1 概率论的发展简史

    概率论起源于 17 世纪对赌博问题的研究,帕斯卡和费马的通信奠定了其基础。随后,贝叶斯、高斯等科学家的贡献推动了概率论的发展,使其在现代科学中广泛应用。

5.1.2 概率论的主要内容

    概率论主要研究随机现象的规律性,包括随机事件、随机变量、概率分布、期望、方差以及大数定理和中心极限定理等。

5.2 随机事件及其概率

5.2.1 随机事件的运算

   随机事件的运算包括事件的并、交、差和补集等。这些运算遵循集合运算的规则,用于构建复杂的事件。

5.2.2 随机事件的概率

    概率是衡量随机事件发生可能性大小的数值。它满足非负性、规范性和可加性三个基本性质。

5.2.3 条件概率

    条件概率是指在事件 B 发生的条件下,事件 A 发生的概率,记为 P(A|B)。其计算公式为 P(A|B) = P(AB)/P(B),其中 P(B) ≠ 0。

综合案例及应用:抛掷骰子事件

案例描述 :计算抛掷两个骰子时,点数之和大于 8 的概率。

import itertools# 生成所有可能的骰子点数组合
dice_rolls = list(itertools.product(range(1, 7), repeat=2))# 计算有利事件数目
favorable_outcomes = [roll for roll in dice_rolls if sum(roll) > 8]# 计算概率
probability = len(favorable_outcomes) / len(dice_rolls)
print("抛掷两个骰子点数之和大于 8 的概率为:", probability)

5.3 随机变量

5.3.1 随机变量的概率分布

    随机变量的概率分布描述了随机变量取各个可能值的概率规律。常见的分布包括离散型(如二项分布、泊松分布)和连续型(如正态分布、指数分布)。

5.3.2 随机变量的数字特征

    数字特征包括期望(均值)、方差和标准差,用于描述随机变量的集中趋势和离散程度。

5.3.3 常见的概率分布

  • 二项分布 :描述 n 次独立伯努利试验中成功的次数。

  • 泊松分布 :描述单位时间(或空间)内随机事件发生的次数。

  • 正态分布 :自然界中最常见的分布之一,具有钟形曲线。

  • 指数分布 :描述泊松过程中的事件发生间隔时间。

综合案例及应用:正态分布的概率计算

案例描述 :计算某地成年人身高服从均值为 170cm,标准差为 10cm 的正态分布,求身高在 160cm 到 180cm 之间的概率。

import numpy as np
import scipy.stats as stats# 正态分布参数
mu = 170  # 均值
sigma = 10  # 标准差# 计算概率
prob = stats.norm(mu, sigma).cdf(180) - stats.norm(mu, sigma).cdf(160)
print("身高在 160cm 到 180cm 之间的概率为:", prob)

5.4 贝叶斯理论

5.4.1 贝叶斯公式的推导

   贝叶斯公式是基于条件概率的逆概率计算公式,用于更新事件发生的概率。公式为 P(A|B) = P(B|A)P(A) / P(B)。

5.4.2 贝叶斯公式的应用举例

    在医学诊断、垃圾邮件过滤等领域,贝叶斯公式可用于更新事件发生的概率。例如,计算患者患病的概率。

5.4.3 贝叶斯理论的前景

    贝叶斯理论在机器学习中具有重要地位,如贝叶斯分类器、贝叶斯网络等。它为模型的不确定性和概率推理提供了有力工具。

综合案例及应用:疾病诊断

案例描述 :某疾病的发病率为 0.1%,检测该疾病的实验准确率为 99%(即患者检测为阳性的概率为 99%,非患者检测为阴性的概率为 99%)。求某人检测为阳性时患病的概率。

# 疾病发病率
p_disease = 0.001# 检测准确率
p_positive_given_disease = 0.99  # 患者检测为阳性的概率
p_negative_given_healthy = 0.99  # 非患者检测为阴性的概率# 计算贝叶斯公式中的各项
p_positive = p_disease * p_positive_given_disease + (1 - p_disease) * (1 - p_negative_given_healthy)# 计算患病概率
p_disease_given_positive = (p_positive_given_disease * p_disease) / p_positive
print("检测为阳性时患病的概率为:", p_disease_given_positive)

5.5 极限理论

5.5.1 收敛

    收敛是指随机变量序列逐渐趋近于某个值或分布的过程。包括几乎必然收敛、依概率收敛和依分布收敛等。

5.5.2 大数定理

     大数定理说明,随着试验次数增加,事件发生的频率逐渐稳定于其概率。例如,伯努利大数定理表明,事件发生的频率依概率收敛于其概率。

5.5.3 中心极限定理

    中心极限定理指出,大量独立同分布的随机变量之和近似服从正态分布。这解释了正态分布在自然现象中的普遍性

综合案例及应用:中心极限定理仿真实验

案例描述 :从均匀分布中抽取大量样本,计算样本均值,并验证中心极限定理。

import numpy as np
import matplotlib.pyplot as pltplt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
# 抽取样本并计算均值
sample_means = []
for _ in range(10000):sample = np.random.uniform(0, 1, 100)sample_means.append(np.mean(sample))# 绘制直方图
plt.figure(figsize=(8, 6))
plt.hist(sample_means, bins=30, density=True, alpha=0.6, color='g')
plt.xlabel('样本均值')
plt.ylabel('频率')
plt.title('中心极限定理仿真实验')
plt.grid(True)
plt.show()

5.6 实验:基于 Python 的泊松分布仿真实验

5.6.1 实验目的

   理解泊松分布的特点,并掌握使用 Python 进行泊松分布模拟的方法。

5.6.2 实验要求

   生成泊松分布的随机样本,绘制其概率质量函数,并计算其期望和方差。

5.6.3 实验原理

   泊松分布用于描述单位时间(或空间)内随机事件发生的次数,其概率质量函数为 P(X=k) = λ^k e^{-λ} / k!,其中 λ 是平均发生率。

5.6.4 实验步骤

  1. 导入必要的 Python 库(NumPy 和 Matplotlib)。

  2. 设置泊松分布的参数 λ。

  3. 生成泊松分布的随机样本。

  4. 计算样本的均值和方差。

  5. 绘制泊松分布的概率质量函数。

5.6.5 实验结果

import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as statsplt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
# 设置参数
lam = 2  # 泊松分布的平均发生率
num_samples = 10000  # 生成的样本数量# 生成泊松分布的随机样本
samples = np.random.poisson(lam, num_samples)# 计算样本均值和方差
sample_mean = np.mean(samples)
sample_variance = np.var(samples)print("样本均值:", sample_mean)
print("样本方差:", sample_variance)# 绘制概率质量函数
k = np.arange(0, 10)
pmf = stats.poisson.pmf(k, lam)plt.figure(figsize=(8, 6))
plt.bar(k, pmf, align='center', alpha=0.6)
plt.xlabel('随机变量取值')
plt.ylabel('概率')
plt.title('泊松分布概率质量函数')
plt.grid(True)
plt.show()

5.7 概率论知识点表格总结

概念定义与说明常见应用
随机事件在随机试验中可能出现的结果事件的并、交、差、补集
随机变量将随机事件映射为数值的变量离散型和连续型随机变量,概率分布,期望,方差
贝叶斯公式基于条件概率的逆概率计算公式垃圾邮件过滤,疾病诊断
极限理论研究随机变量序列的收敛性和大样本性质大数定理,中心极限定理

   通过本文的学习,希望大家对概率论在人工智能中的应用有了更深入的理解。在实际操作中,多进行代码练习,可以更好地掌握这些数学工具,为人工智能的学习和实践打下坚实的基础。资源绑定附上完整资源供读者参考学习!

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

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

相关文章

MCP协议:自然语言与结构化数据的双向桥梁 ——基于JSON-RPC 2.0的标准化实践

MCP协议:自然语言与结构化数据的双向桥梁 ——基于JSON-RPC 2.0的标准化实践 一、MCP的本质:标准化共识的协议框架 MCP(Model Context Protocol)是Anthropic于2024年提出的开放通信协议,其核心价值在于建立自然语言…

vue+django农产品价格预测和推荐可视化系统[带知识图谱]

文章结尾部分有CSDN官方提供的学长 联系方式名片 文章结尾部分有CSDN官方提供的学长 联系方式名片 关注B站,有好处! ✅编号:D010 vue django 前后端分离架构搭建的系统带有推荐算法、价格预测、可视化、知识图谱数据从爬虫获取可以更新到最…

verilog_testbench技巧

forever语句 forever begin state; end 一直执行state repeat(n) begin state; end 执行state,n次 force语句对双向端口进行输入赋值。 与wait 是边沿触发,wait是电平触发 仿真控制语句与系统任务描述 $stop停止仿真…

实时时钟(RTC)从原理到实战

1. RTC技术深度解析 1.1 RTC核心概念 实时时钟(Real-Time Clock,RTC)是嵌入式系统中独立于主处理器的特殊计时电路,其核心功能在于提供持续可靠的时间基准。与CPU时钟不同,RTC具有以下关键特性: 独立供电…

pyspark将hive数据写入Excel文件中

不多解释直接上代码,少python包的自己直接下载 #!/usr/bin/env python # -*- encoding: utf-8 -*- from pyspark.sql import SparkSession import pandas as pd import os# 初始化 SparkSession 并启用 Hive 支持 spark SparkSession.builder \.appName("sel…

Stack--Queue 栈和队列

一、Stack--栈 1.1 什么是栈? 堆栈是一种容器适配器,专门设计用于在 LIFO 上下文(后进先出)中运行,其中元素仅从容器的一端插入和提取。 第一个模版参数T:元素的类型;第二个模版参数Container…

用Python做有趣的AI项目1:用 TensorFlow 实现图像分类(识别猫、狗、汽车等)

项目目标 通过构建卷积神经网络(CNN),让模型学会识别图片中是什么物体。我们将使用 CIFAR-10 数据集,它包含 10 类:飞机、汽车、鸟、猫、鹿、狗、青蛙、马、船和卡车。 🛠️ 开发环境与依赖 安装依赖&…

3D可视化编辑器模版

体验地址:http://mute.turntip.cn 整个搭建平台核心模块包含如下几个部分: 3D场景渲染 组件拖拽系统 元素编辑功能 状态管理 历史记录与撤销/重做 技术栈 前端框架与库 React 18 用于构建用户界面的JavaScript库 Next.js 14 React框架,提供服…

“连接世界的桥梁:深入理解计算机网络应用层”

一、引言 当你浏览网页、发送邮件、聊天或观看视频时,这一切都离不开计算机网络中的应用层(Application Layer)。 应用层是网络协议栈的最顶层,直接为用户的各种应用程序提供服务。它为用户进程之间建立通信桥梁,屏蔽了…

JavaScript 代码搜索框

1. 概述与需求分析 功能&#xff1a;在网页中实时搜索用户代码、关键字&#xff1b;展示匹配行、文件名&#xff1b;支持高亮、正则、模糊匹配。非功能&#xff1a;大文件集&#xff08;几十万行&#xff09;、高并发、响应 <100ms&#xff1b;支持增量索引和热更新。 2. …

【运维】Ubuntu apt 更新失败?Temporary failure resolving ‘cn.archive.ubuntu.com‘ 问题

Ubuntu apt 更新失败&#xff1f;Temporary failure resolving ‘cn.archive.ubuntu.com’ 问题 在使用 Ubuntu 时&#xff0c;你是否遇到过这样一个烦人的错误&#xff1a; Temporary failure resolving ‘cn.archive.ubuntu.com’ 如果你也踩坑了&#xff0c;别慌&#xff0…

Uniapp:showLoading(等待加载)

目录 一、出现场景二、效果展示三、具体使用一、出现场景 在项目的开发中,我们经常会请求后台接口返回数据,但是每一个接口返回数据的时间不一致,有的快,有的慢,这个时候如果不加一个遮罩层,接口返回慢的时候,非常影响用户体验 二、效果展示 三、具体使用 显示加载框…

【11408学习记录】英语书信通知写作模板大全:5个高分句式+使用场景解析,速存每日一句拆解练习!

书信/通知写作锦囊妙句 英语写作——19个锦囊妙句妙句9妙句10妙句11妙句12妙句13 每日一句词汇第一步&#xff1a;找谓语第二步&#xff1a;断句第三步&#xff1a;简化让步状语从句限定性同位语从句主句 英语 写作——19个锦囊妙句 妙句9 故宫在中国人民中很受欢迎/评价很高…

Unity 粒子同步,FishNet

Github的工程 同步画面 使用FishNet插件同步&#xff0c;可使用这个选项来克隆第二个项目进行测试

【hadoop】案例:MapReduce批量写入HBase

1.需求分析 我们仍然以美国各个气象站每年的气温数据集为例&#xff0c;现在要求使用MapReduce读取该数据集&#xff0c;然后批量写入HBase数据库&#xff0c;最后利用HBase shell根据行键即席查询气温数据。 2.数据集准备 数据集的文件名为temperature.log&#xff0c;里面包含…

【linux网络】网络基础概念

1. 初始协议 1.1 OSI 七层模型 OSI&#xff08;Open System Interconnection&#xff0c;开放系统互连&#xff09;七层网络模型称为开放式系统互联参考模型&#xff0c;是一个逻辑上的定义和规范&#xff1b; 把网络从逻辑上分为了 7 层. 每一层都有相关、相对应的物理设备&a…

【Android】谈谈DexClassLoader

一,Dex和Jar DEX 文件(Dalvik Executable)相较于普通的 JAR(Java 字节码 .class 文件)进行了多方面的优化,主要是为了适应 Android 设备的性能和资源限制(例如内存、存储空间和处理能力)。以下是 DEX 文件的一些具体优化点: 1. 内存占用优化 合并类文件: DEX 文件将…

【Flutter】Unity 三端封装方案:Android / iOS / Web

关联文档&#xff1a;【方案分享】Flutter Unity 跨平台三维渲染架构设计全解&#xff1a;插件封装、通信机制与热更新机制—— 支持 Android/iOS/Web 的 3D 内容嵌入与远程资源管理&#xff0c;助力 XR 项目落地 —— 支持 Android/iOS/Web 的 3D 内容嵌入与远程资源管理&…

Html1

一&#xff0c;HTML概述 网页开发需要学习的知识&#xff1a; html css javaScript 两个框架 VUE.js ElementUI UI user interface 用户界面 HTML xml 可扩展标记语言-->存储数据 Markup Language标签语言都会提供各种标…

一、I/O的相关概念

I/O的相关概念 1、I/O I/O即Input和Output&#xff0c;用户进程执行I/O操作&#xff0c;归结起来&#xff0c;也就是向操作系统发出请求&#xff0c;读请求就把数据填到缓冲区里&#xff0c;写数据就把缓冲区里数据排干&#xff0c;目的地可以是磁盘也可以是其他通道。进程通…