了解统计学中不同类型的分布

目录

一、说明

二、均匀分布:

三、机器学习和数据科学中的均匀分布示例:

3.1 对数正态分布:

3.2 机器学习和数据科学中的对数正态分布示例:

四、 帕累托分布

4.1 什么是幂律?

4.2 机器学习和数据科学中的帕累托分布示例:

4.3 伯努利分布:

4.4 机器学习和数据科学中的伯努利分布示例:

4.5. 二项分布:

4.6 机器学习和数据科学中的二项分布示例:

五、概率分布变换:

5.1. 统计假设

5.2. 提高算法性能

5.3. 稳定方差

5.4. 减少偏斜

5.5 实现常态的常见转换


一、说明

        统计学是理解数据的有力工具,其核心在于分布的概念。统计学中的分布有助于我们理解数据的分布方式,为各种数据集的概率和行为提供重要的见解。从熟悉的钟形曲线的正态分布到其他偏斜和重尾模式,本博客旨在解开不同类型的分布,清楚地了解它们在统计分析中的特征、应用和意义。

二、均匀分布:

        均匀分布是一种概率分布,其中所有结果在给定范围内的可能性相同。这意味着,如果要从此范围中选择一个随机值,则任何值都与任何其他值一样可能。例如,从一篮子苹果中随机选择的苹果的重量在 100 到 200 克之间,将遵循连续的均匀分布。

骰子结果的离散均匀分布

连续均匀分布的概率密度函数为:

均匀分布的CDF由下式给出:

                                                        均匀分布图中不存在偏度。

三、机器学习和数据科学中的均匀分布示例:

  1. 随机初始化:在许多机器学习算法中,例如神经网络和 k 均值聚类,参数的初始值可能会对最终结果产生重大影响。均匀分布通常用于随机初始化参数,因为它可以确保范围内的所有值都具有相等的选择
    概率。
  2. 采样:均匀分布也可用于采样。例如,如果数据集中每个类的样本数相等,则可以使用均匀分布随机选择代表所有类的数据子集。
  3. 数据增强:在某些情况下,您可能希望通过生成与原始数据相似的新示例来人为地增加数据集的大小。均匀分布可用于生成原始数据指定范围内的新数据点。
  4. 超参数优化:均匀分布也可用于超参数优化,在超参数优化中,您需要为机器学习模型搜索超参数的最佳组合。通过为每个超参数定义均匀的先验分布,可以从分布中采样以探索超参数空间。

3.1 对数正态分布:

        在概率论和统计学中,对数正态分布是对数呈正态分布的随机变量的重尾连续概率分布,即,如果取每个值的自然对数并绘制此分布,则得到正态分布。 对数正态的PDF方程由下式给出:

        这种分布是右偏的,因为它倾向于在右侧产生更长的尾部,这意味着大多数数据点集中在左侧,少数较大的值延伸到右侧。

        对数正态的概率分布

对数正态的累积分布

3.2 机器学习和数据科学中的对数正态分布示例:

  • 在 Internet 论坛中发布的评论长度遵循对数正态分布。
  • 用户在在线文章(笑话、新闻等)上的停留时间遵循对数正态分布。
  • 国际象棋比赛的长度往往遵循对数正态分布。
    在经济学中,有证据表明 97%-99% 的人口的收入是按对数正态分布的。

四、 帕累托分布

        帕累托分布是一种概率分布,通常用于模拟财富、收入和其他表现出类似幂律行为的量的分布。

4.1 什么是幂律?

        在数学中,幂律是两个变量之间的函数关系,其中一个变量与另一个变量的幂成正比。具体来说,如果 y 和 x 是幂律相关的两个变量,则关系可以写为:
y = k * x^a

帕累托分布的概率分布

        维尔弗雷多·帕累托(Vilfredo Pareto)最初使用这种分布来描述个人之间的财富分配,因为它似乎很好地表明了任何社会财富的很大一部分由该社会中较小比例的人拥有的方式。他还用它来描述收入分配。这个想法有时更简单地表达为帕累托原则或“80-20规则”,即20%的人口控制着80%的财富。

4.2 机器学习和数据科学中的帕累托分布示例:

  • 人类住区的规模(少数城市,/村庄)。
  • 使用 TCP 协议的 Internet 流量的文件大小分布(许多较小的文件,少数较大的文件)

4.3 伯努利分布:

        伯努利分布是一种对二元结果进行建模的概率分布,其中结果可以是成功(由值 1 表示)或失败(由值 0 表示)。伯努利分布的特征是单个参数,即成功概率,用 p 表示。

4.4 机器学习和数据科学中的伯努利分布示例:

        伯努利分布通常用于机器学习中,用于对二元结果进行建模,例如客户是否会购买,电子邮件是否为垃圾邮件,或者患者是否患有某种疾病。

4.5. 二项分布:

        二项分布是一种概率分布,它描述了在固定数量的独立伯努利试验中的成功次数,该试验具有两种可能的结果(通常称为“成功”和“失败”),其中每个试验的成功概率是恒定的。二项分布由两个参数表征:试验次数 n 和成功概率 p。

4.6 机器学习和数据科学中的二项分布示例:

  1. 模型精度:在测试预测电子邮件是否为垃圾邮件的机器学习模型时,可能会运行它 100 次。每次,您都会检查它是否正确(成功)或不正确(失败)。二项分布可帮助您了解在给定一定准确率的情况下,模型可能正确预测的次数为 100 次。
  2. A/B 测试:在 A/B 测试中,您可以比较某些内容的两个版本(例如网站或广告),看看哪个版本效果更好。通过二项分布,您可以根据一定的成功概率来估计一个版本更成功的频率,例如获得更多点击或转化。

五、概率分布变换:

        在分布方面,变换是指将数学函数应用于数据以改变其底层分布的过程。分布描述了数据如何分布在一系列值中,转换用于实现各种目标,包括修改分布的形状、比例或分布。

        当您需要使用假定正态分布的算法时,变换在统计学和机器学习中可能至关重要。许多统计方法和机器学习算法在数据遵循正态分布时表现最佳,这要归功于对称性、定义的均值和标准差以及一致的分布等特性。

        以下是应用转换使数据更正态分布的一些原因:

5.1. 统计假设

        统计检验(如 t 检验、方差分析和许多回归模型)假定基础数据或残差(误差)呈正态分布。当数据不符合此假设时,结果可能会有偏见或具有误导性。转换有助于确保数据符合这些假设。

5.2. 提高算法性能

        机器学习算法,特别是线性回归和逻辑回归,在数据或残差呈正态分布时可能表现更好。这是因为这些算法所依据的假设与正态性密切相关。通过转换使数据分布更均匀,可以提高算法的预测准确性并减少偏差。

5.3. 稳定方差

        当数据具有不稳定的方差(异方差)时,可能会导致建模错误,并降低期望一致方差的算法的有效性。转换有助于稳定方差,使其在不同范围的数据中更加恒定。

5.4. 减少偏斜

        有偏差的数据可能导致不准确的结论,并使结果的解释复杂化。期望对称数据的算法在偏斜输入时可能表现不佳。对数转换等转换可以减少偏度,使数据更接近正态分布。

5.5 实现常态的常见转换

        以下是一些用于使数据更正态分布的常见转换:

  • 日志转换:通过采用自然对数来转换数据,从而减少正偏度。对于具有指数增长或长右尾的数据很有用。

我在泰坦尼克号数据集上详细应用了日志转换。你可以从这里学习代码和概念!

  • 平方根变换:通过取平方根来转换数据以减少偏度,通常用于计数数据或方差随均值增加的数据。
  • Box-Cox 变换:一种灵活的电源转换,可以将一系列非正态数据转换为更正态分布。它需要非负数据,并确定最佳功率变换参数 (λ) 以实现正态性。它可以在数学上表示为:

学习代码,你可以从这里学习代码和概念!

  • 相互转化:涉及采用倒数 (1/x) 来转换数据,从而减少正偏度。

         希望这篇博客能加深你对统计学中不同概率分布的理解。如果您发现此内容的价值,请考虑关注我以获取更有见地的帖子。谢谢!感谢您花时间阅读本文。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C#】图形图像编程

实验目标和要求: 掌握C#图形绘制基本概念;掌握C#字体处理;能进行C#图形图像综合设计。 运行效果如下所示: 1.功能说明与核心代码 使用panel为画板,完成以下设计内容: 使用pen绘制基础图形;使…

Django初学者指南

文章目录 Django初学者指南1 Django简介1.1 Django的历史1.2 使用Django的知名网站1.4 Django的主要特点1.5 Django的工作原理 2 Django 使用2.1 Django 支持的 Python 版本2.2 Django 版本 3 Django 开发 Web 程序3.1 安装Django3.2 创建Django项目3.3 运行开发服务器3.4 创建…

【纯干货级教程】深度学习根据loss曲线进行分析调参

相信很多刚刚接触目标检测系列算法小伙伴跑深度学习算法时会有许多困惑,比如训练得出的loss曲线有什么意义?训练的一些参数要如何设置选择?选择哪个算法模型作为baseline、选择哪个参数量/复杂度/深度的模型进行训练最为合适? 本…

在VS Code中快速生成Vue模板的技巧

配置vue.json: { "Print to console": {"prefix": "vue","body": ["<template>"," <div class\"\">\n"," </div>","</template>\n","<scri…

如何在WIndows虚拟机安装 macOS 黑苹果系统?

在本教程中&#xff0c;我们将介绍如何在虚拟机上安装 macOS 黑苹果系统。黑苹果系统是非苹果公司官方支持的 macOS 系统的非官方版本&#xff0c;可以在普通 PC 上运行。请注意&#xff0c;安装黑苹果系统可能违反苹果的许可协议&#xff0c;请自行承担风险。参考视频教程&…

Linux之BCC 性能工具的移植和使用

一、bcc 工具 bcc 的全称&#xff1a;BPF Compiler Collection BCC&#xff08;BPF Compiler Collection&#xff09;是一个用于创建高效的内核跟踪和操作程序的工具包&#xff0c;包含了几个有用的工具和示例。它利用了扩展的BPF&#xff08;Berkeley Packet Filters&#x…

欧洲杯赛况@20240615

点击标题下「蓝色微信名」可快速关注 欧洲杯首战&#xff0c;德国5:1狂胜苏格兰&#xff0c;大比分、红点套餐、超新星登场进球&#xff0c;好像这些能想到的元素都发挥了作用&#xff0c;作为东道主&#xff0c;聚集了天时地利人和&#xff0c;可以说是完美&#xff0c;这就是…

记录:利用 Agora 在 Unity3D MRTK场景中创建实时视频聊天应用

目录 准备1. 安装Agora_Unity_RTC_SDK2. 创建UI3. script具体内容4. 使用测试 本质是两部带摄像机的设备同时进入Agora聊天室内视频。 去年实现过一次这个功能&#xff0c;用的是Agora_Unity_RTC_SDK 4.2.2版本的&#xff0c;今年使用失败&#xff0c;遂重新安装最新版本Agora…

docker安装消息队列mq中的rabbit服务

在现代化的分布式系统中&#xff0c;消息队列&#xff08;Message Queue, MQ&#xff09;已经成为了一种不可或缺的组件。RabbitMQ作为一款高性能、开源的消息队列软件&#xff0c;因其高可用性、可扩展性和易用性而广受欢迎。本文将详细介绍如何在Docker环境中安装RabbitMQ服务…

中文版svn怎么忽略文件

个人需求&#xff1a; 不上传dist&#xff0c;dist.7z&#xff0c;node_modules等文件夹 实际操作&#xff1a; 前言&#xff1a;在上传svn为避免操作失败导致丢失文件的情况&#xff0c;保险起见&#xff0c;先备份代码 1&#xff1a;右键点击 2&#xff1a;点击新建 – 其…

【C++】图1

并查集 template <class T> class UnionFindSet { public:UnionFindSet(size_t n):_ufs(n, -1){}void Union(int x1, int x2){int root1 FindRoot(x1);int root2 FindRoot(x2);if (root1 root2)return;if (root1 > root2)swap(root1, root2);_ufs[root1] _ufs[ro…

uniapp开发微信小程序问题汇总

1. 自定义校验规则validateFunction失效 2. 微信小程序不支持<Br>换行 在 <text></text> 标签中使用\n(必须 text 标签&#xff0c;view 标签无效 ) 3. 微信小程序无法使用本地静态资源图片的解决方法 (1) 将图片上传到服务器&#xff0c;小程序访问该图片…

非对称加密系统解析

目录 1. 概述 2. 非对称加密标准 2.1 RSA 2.2 SM2 2.2.1 SM2私钥 2.2.2 SM2公钥 2.2.3 加密数据格式 2.2.4 签名数据格式 1. 概述 非对称加密中&#xff0c;密钥分为加密密钥和解密密钥两种。发送者用加密密钥对消息进行加密&#xff0c;接收者用解密密钥对密文进行解密…

Leetcode - 132双周赛

目录 一、3174. 清除数字 二、3175. 找到连续赢 K 场比赛的第一位玩家 三、3176. 求出最长好子序列 I 四、3177. 求出最长好子序列 II 一、3174. 清除数字 本题可以使用栈来模拟&#xff0c;遇到数字弹出栈顶元素&#xff0c;遇到字母入栈。 代码如下&#xff1a; //使用字…

网络编程(二)TCP

一、TCP网络编程 网络编程模型&#xff1a; C/S模型&#xff1a;客户端服务器模型 优点&#xff1a; 客户端可以缓存一些数据&#xff0c;使用时直接在本地读取&#xff0c;无需每次重新下载&#xff1b; 由于客户端和服务器都是自己开发的&#xff0c;可以自定义协议 缺点&a…

基于carsim的线控转向仿真(1)--carsim车辆模型目标角度跟踪

一、Rwa转向执行总成建模 Rwa包括齿轮齿条机构、转向组件以及转向执行电机&#xff1b;如下图&#xff0c;电机输出轴通过齿轮减速增扭后&#xff0c;再经过一个半径为rp的小齿轮&#xff0c;直接带动齿条左右移动。齿条的移动通过转向摇臂&#xff0c;带动车轮转动&#xff0c…

Excel/WPS《超级处理器》功能介绍与安装下载

超级处理器是基于Excel或WPS开发的一款插件&#xff0c;拥有近300个功能&#xff0c;非常简单高效的处理表格数据&#xff0c;安装即可使用。 点击此处&#xff1a;超i处理器安装下载 Excel菜单&#xff0c;显示如下图所示&#xff1a; WPS菜单显示&#xff0c;如下图所示&am…

15. 第十五章 类和对象

15. 类和对象 到现在你已经知道如何使用函数组织代码, 以及如何使用内置类型来组织数据. 下一步将学习面向对象编程, 面向对象编程使用自定义的类型同时组织代码和数据. 面向对象编程是一个很大的话题, 需要好几章来讨论.本章的代码示例可以从↓下载, https://github.com/Alle…

嵌入式实训day3

1、 # 82261773 # y6ufuT9yGQxddpSzSe3zZpbP # BJsEfKFNGOwHtLuKoHsfVIWrGWjXVKut"""1、PC需要联网2、不能使用MicroPython解释器 """ from aip import AipFace import base64# 查看REST-API-SDK if __name__ "__main__":# 设置APP_I…

数字电路中二进制的数据表达

文章目录 1. 二进制数据表达 1.1 二进制简介 1.2 用二进制表达文字 1.2.1 最开始的表达方式 1.2.2 通讯系统的编码和解码 1.2.3 集成电路 1.2.4 ASCII编码 1.2.5 GBK编码 1.2.6 Unicode编码 2. 用二进制表达图像 2.1 图片像素化 2.2 像素数字化 2.3 二值图像 2.4…
最新文章