当前位置: 首页 > news >正文

通往 AI 之路:Python 机器学习入门-概率与统计

2.2 概率与统计(机器学习的基础)

概率与统计是机器学习的重要数学基础,很多算法依赖于数据的统计特性和概率分布。本章介绍:

  • 均值、中位数、方差、标准差
  • 常见概率分布(正态分布、泊松分布、指数分布)
  • 贝叶斯定理及其应用

2.2.1 均值、中位数、方差、标准差

1. 均值(Mean)

均值(Mean)表示数据的平均值,计算公式:

均值 = (所有数据之和) / (数据个数)

Python 计算:

import numpy as np

data = [10, 20, 30, 40, 50]
mean_value = np.mean(data)
print("均值:", mean_value)

2. 中位数(Median)

中位数(Median)是排序后位于中间的值:

  • 奇数个数据:取中间的那个数
  • 偶数个数据:取中间两个数的平均值

Python 计算:

median_value = np.median(data)
print("中位数:", median_value)

3. 方差(Variance)

方差(Variance)衡量数据的离散程度,计算公式:

方差 = (所有数据与均值的差的平方和) / (数据个数)

Python 计算:

variance_value = np.var(data)
print("方差:", variance_value)

4. 标准差(Standard Deviation)

标准差(Standard Deviation)是方差的平方根:

标准差 = √(方差)

Python 计算:

std_value = np.std(data)
print("标准差:", std_value)

2.2.2 常见概率分布

1. 正态分布(Normal Distribution)

正态分布(也叫高斯分布)是一种常见的概率分布,符合“钟形曲线”。它由两个参数控制:

  • 均值(Mean):决定曲线的中心
  • 标准差(Standard Deviation):决定曲线的宽度

Python 生成正态分布数据:

import matplotlib.pyplot as plt
import scipy.stats as stats

mu, sigma = 0, 1  # 均值和标准差
x = np.linspace(-5, 5, 100)
y = stats.norm.pdf(x, mu, sigma)

plt.plot(x, y, label="正态分布")
plt.legend()
plt.show()

2. 泊松分布(Poisson Distribution)

泊松分布描述单位时间或单位空间内某事件发生的次数,例如:

  • 每小时顾客的到达数量
  • 每天网站的访问次数

计算公式:

P(k) = (λ^k * e^(-λ)) / k!

  • λ(Lambda):期望值(某时间单位内的平均发生次数)
  • k:发生次数

Python 计算:

from scipy.stats import poisson

lam = 3  # 期望值
x = np.arange(0, 10)
y = poisson.pmf(x, lam)

plt.bar(x, y, label="泊松分布")
plt.legend()
plt.show()

3. 指数分布(Exponential Distribution)

指数分布用于描述事件发生的时间间隔,比如:

  • 客户等待服务的时间
  • 设备故障的时间间隔

计算公式:

f(x) = λ * e^(-λx) (x >= 0)

  • λ(Lambda):事件发生的平均频率

Python 计算:

from scipy.stats import expon

lam = 1.0
x = np.linspace(0, 5, 100)
y = expon.pdf(x, scale=1/lam)

plt.plot(x, y, label="指数分布")
plt.legend()
plt.show()

2.2.3 贝叶斯定理

贝叶斯定理用于计算事件发生的条件概率,公式如下:

P(A | B) = (P(B | A) * P(A)) / P(B)

其中:

  • P(A | B):在事件B发生的情况下,事件A发生的概率
  • P(B | A):在事件A发生的情况下,事件B发生的概率
  • P(A)P(B):A 和 B 各自的概率

贝叶斯推断示例

假设:

  • 某疾病的患病率为 1%
  • 测试准确率为 99%
  • 某人测试结果为 阳性,求他实际患病的概率

Python 计算:

# 先验概率
P_A = 0.01  # 患病率
P_not_A = 1 - P_A  # 未患病率
P_B_given_A = 0.99  # 测试阳性给定患病
P_B_given_not_A = 0.01  # 测试阳性给定未患病

# 全概率公式计算 P(B)
P_B = P_B_given_A * P_A + P_B_given_not_A * P_not_A

# 贝叶斯公式计算 P(A|B)
P_A_given_B = (P_B_given_A * P_A) / P_B
print("患病概率:", P_A_given_B)

总结

本章介绍了概率统计在机器学习中的应用,包括:

  • 均值、中位数、方差、标准差
  • 常见概率分布(正态、泊松、指数分布)
  • 贝叶斯定理及其计算

掌握这些内容,有助于理解机器学习中的数据分析和概率推理。

相关文章:

  • 计算机毕业设计SpringBoot+Vue.js乐享田园系统(源码+文档+PPT+讲解)
  • 大模型时代下的数据标注革命:工具、挑战与未来趋势
  • Pywinauto Recorder: 将Windows操作转化为Python脚本,高效简易地实现操作自动化
  • 测试人员如何更好的跟踪BUG
  • 【C++】2.2.2 变量声明和定义的关系
  • devDependencies和dependencies的区别
  • 12、算法
  • 实时语义分割之FarSeeNet(2020)模型解析代码复现及滑坡检测实战
  • Linux----网络通信
  • WPS AI+office-ai的安装、使用
  • Linux查看TP6 command定时任务并重启
  • 一、Prometheus架构
  • table 拖拽移动
  • 广域互联网关键技术详解(GRE/LSTP/IPsec/NAT/SAC/SPR)
  • 文件上传复现
  • Office 2021 Mac Office办公
  • 【银河麒麟高级服务器操作系统实际案例分享】数据库资源重启现象分析及处理全过程
  • HTML5+CSS3+JS小实例:带缩略图的焦点图
  • vue组合式API中prop
  • 深入 Vue.js 组件开发:从基础到实践
  • 扬州市住房建设局网站/搜索引擎营销的模式有哪些
  • 企业网站建设服务热线/网络营销策划书范文
  • h5手机模板网站/公司网站设计报价
  • 怎么创建网页的快捷方式/天津seo网站推广
  • 16岁做分期网站/百度还原
  • 中国会展公司排名前十的公司/58同城关键词怎么优化