Day42:概率论与统计学基础知识

alt

我们前面讲过了,机器学习是基于统计学的诞生的,因此当涉及到机器学习时,概率论和统计学是非常重要的基础知识。下面我们就简要介绍一些必要的概率统计学知识。

1. 概率论

1.1事件与概率

  • 事件是指样本空间中的一个子集,概率是事件发生的可能性的度量,比如说我们投掷一枚均匀的硬币,出现的正面的可能性是1/2。

    我们也可以用代码来表示,生成一个随机数,判断该随机数小于0.5的情况:

    import random
    
    # 生成一个随机数
    num = random.random()
    print("随机数:", num)
    
    # 通过比较判断事件发生与否
    if num < 0.5:
        print("事件发生")
    else:
        print("事件不发生")
    

1.2 随机变量与概率分布

  • 随机变量是对样本空间中的每个样本赋予的一个数值,概率分布描述了随机变量取值的概率情况。

    上面的例子中,“事件”我们只生成了一个随机数,现假设我们生成了1000个随机数,这就是随机变量,我们想看一下它的分布,当然我们这个随机数并非完全随机,我们让它服从正态分布:

    import numpy as np
    import matplotlib.pyplot as plt
    
    # 生成1000个服从正态分布的随机数
    mu = 0
    sigma = 1
    data = np.random.normal(mu, sigma, 1000)
    
    # 绘制直方图
    plt.hist(data, bins=30)
    plt.xlabel('Value')
    plt.ylabel('Frequency')
    plt.title('Histogram of Random Variable')
    plt.show()
    

1alt

1.3 累积分布函数

  • 累积分布函数描述了随机变量小于等于某个值的概率,比如刚才的正态分布,它小于0的分布概率是多少,可以堪称概率分布函数的积分,即上图中每个柱子累加:

    import numpy as np
    import matplotlib.pyplot as plt
    
    # 生成1000个服从均匀分布的随机数
    low = 0
    high = 1
    data = np.random.uniform(low, high, 1000)
    
    # 计算累积分布函数
    sorted_data = np.sort(data)
    cdf = np.arange(1, len(sorted_data) + 1) / float(len(sorted_data))
    
    # 绘制累积分布函数图
    plt.plot(sorted_data, cdf)
    plt.xlabel('Value')
    plt.ylabel('Cumulative Probability')
    plt.title('CDF of Random Variable')
    plt.show()
    

2alt

2. 数理统计

2.1 平均值、标准差、方差、分位数

  • 平均值是随机变量取值的加权平均,标准差衡量数据的离散程度,方差是标准差的平方,中位数将数据分成两部分,50%的数据小于等于中位数,50%的数据大于等于中位数,当然还有其他百分位数,只是分界线的差异。

    我们可以使用的库函数很

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

大模型-AI小册 文章被收录于专栏

1. AI爱好者,爱搞事的 2. 想要掌握第二门语言的Javaer或者golanger 3. 决定考计算机领域研究生,给实验室搬砖的uu,强烈建议你花时间学完这个,后续搬砖比较猛 4. 任何对编程感兴趣的,且愿意掌握一门技能的人

全部评论
概统🤐
点赞
送花
回复
分享
发布于 2023-07-14 15:01 上海

相关推荐

1 2 评论
分享
牛客网
牛客企业服务