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

目录

一、说明

二、均匀分布:

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

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.mzph.cn/pingmian/28052.shtml

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

相关文章

如何清除anaconda3缓存?

如果长期使用anaconda不清理缓存,会导致anaconda占用磁盘空间越来越多,甚至系统磁盘撑爆。 清除包缓存: 打开 Anaconda Prompt 或者命令行窗口。运行以下命令清除包缓存:conda clean --all这会清除所有的包缓存,释放磁…

docker下载ridis

1、执行 docker pull redis:4.0.1 命令,下载 redis 镜像 (需确保装有并启动bocker) 通过docker启动redis 分配端口和端口映射 密码等 rootiZf8z985hmyc9bkejcfmqrZ:~# docker run --rm -d --name redis6379 -p 6379:6379 redis:4.0.1 --req…

1.个人博客系统项目

一、项目介绍 个人博客系统 相关技术: SpringBootSpringMvcMybatisMysqlRedis项目简介:本项目为一个功能完善的个人博客系统,支持文章的编辑、修改、删除和发布,以及作者个人信息的展示等功能。项目描述: 采用前后端…

利用钉钉机器人和PHP开发一款免费的网站可用性检测工具,单节点版

前言 手里有几套系统正在运维&#xff0c;需要保障正常运行&#xff0c;所以可用性检测就必不可少啦&#xff0c; 以前本来是用的阿里官方的云监控&#xff0c;但现在价格感觉太贵了&#xff0c;不划算 那就自己手搓一个简易版的监控吧。 成品效果展示 代码展示 <?php …

微信小程序毕业设计-实验室管理系统项目开发实战(附源码+论文)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;微信小程序毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计…

centos环境上:k8s 简单安装教程

本次演示安装3节点k8s环境&#xff0c;无需多言&#xff0c;直接上操作步骤&#xff1a; 1、环境准备 k8s部署前&#xff0c;首先需要准备好环境&#xff0c;除了1.4 步骤&#xff0c;其他步骤在所有&#xff08;3个&#xff09;节点上都要执行&#xff1a; 1.1 关闭防火墙 s…

【工具】新手如何正确使用Pycharm?

1. 什么是JetBrains Toolbox JetBrains Toolbox是一个管理工具&#xff0c;用于安装、更新和管理JetBrains开发工具的所有版本。它可以简化多个IDE的管理&#xff0c;并确保你总是使用最新版本的软件。 2. 安装JetBrains Toolbox 步骤1&#xff1a;下载Toolbox 访问JetBrai…

非关系型数据库NoSQL数据层解决方案 之 redis springboot整合与读写操作 2024详解以及window版redis5.0.14下载百度网盘

redis下载安装以及基本使用 下载地址 链接&#xff1a;百度网盘 请输入提取码 提取码&#xff1a;0410 一个名对应一个数值 内存级 在内存里进行操作 准备启动 我们现在就有一个redis客户端的服务器了 我们再启动一个cmd 操作redis数据库 redis里面的基本数据类型有五种 …

HTML5的未来:掌握最新技术,打造炫酷网页体验

引言 随着互联网技术的飞速发展&#xff0c;HTML5已经成为构建现代网页和应用的核心技术之一。HTML5不仅提供了丰富的语义化标签&#xff0c;还引入了多项前沿技术&#xff0c;使得网页体验更加丰富多彩。本文将探讨HTML5的最新技术&#xff0c;并结合行业实践&#xff0c;提供…

Linux操作系统学习:day02

内容来自&#xff1a;Linux介绍 视频推荐&#xff1a;[Linux基础入门教程-linux命令-vim-gcc/g -动态库/静态库 -makefile-gdb调试]( 目录 day025、Linux目录结构6、相对路径7、绝对路径8、命令提示行9、命令解析器10、命令行快捷键11、cd 命令—目录切换12、ls 命令13、文件…

Agilent 安捷伦 N9342C 手持式频谱分析仪

Agilent 安捷伦 N9342C 手持式频谱分析仪 N9342C 手持式7GHz频谱分析仪专为现场测试而设计&#xff0c;无论是安装和维护射频系统&#xff0c;现场进行故障诊断&#xff0c;监测射频环境还是分析干扰&#xff0c;都可以为您提供快速、精确的测量。它具有同类最佳的显示平均噪声…

Vscode中使用make命令

前言 需要注意&#xff0c;如下操作需要进行网络代理&#xff0c;否则会出现安装失败的情况 安装 第一步 — 安装MingGW &#xff08;1&#xff09;进入官网下载 &#xff08;2&#xff09;下载完成之后&#xff0c;双击exe文件 &#xff08;3&#xff09;点击Install &#x…

iOS18新增通话录音和应用锁!附升级教程及内置壁纸

一觉睡醒&#xff0c;iOS18终于是揭开面纱了&#xff0c;而且已经有测试版给开发者使用了。 不过还是建议咱们普通用户不要轻易尝试&#xff0c;而且在升级之前一定要用iMazing做个备份&#xff0c;以免测试系统出现问题&#xff0c;丢失数据。 这次WWDC2024与之前爆料完全一样…

【云岚到家】-day04-2-索引同步-搜索接口

【云岚到家】-day04-2-索引同步-搜索接口 1 索引同步1.1 编写同步程序1.1.1 创建索引结构1.1.2 编写同步程序1.1.2.1 添加依赖1.1.2.2 配置连接ES1.1.2.3 编写同步程序 1.1.3 测试1.1.4 小结1.1.4.1 如何保证CanalMQ同步消息的顺序性&#xff1f;1.1.4.2 如何保证只有一个消费者…

java课设

项目简介:射击生存类小游戏 项目采用技术: 游戏引擎: Unity编程语言: Java图形处理: NVIDIA PhysX (物理引擎), HDRP (High Definition Render Pipeline)音效与音乐: FMOD, Wwise版本控制: Git 功能需求分析: 角色控制&#xff1a;玩家能够使用键盘和鼠标控制角色移动、瞄准…

基于RandLA-Net深度学习模型的激光点云语义分割

一、场景要素语义分割部分的文献阅读笔记 RandLA-Net是一种高效、轻量级的神经网络&#xff0c;其可直接逐点推理大规模点云的语义标签。RandLA-Net基于随机点采样获得了显著的计算和内存效率&#xff0c;并采用新的局部特征聚合模块有效地保留了几何细节&#xff0c;弥补了随机…

最新下载:Folx【软件附加安装教程】

​Folx Pro是一款适合Mac的专业下载工具也是一款BT下载器&#xff0c;Folx中文版有一个支持Retina显示的现代界面&#xff0c;提供独特的系统排序、存储下载内容与预览下载文件&#xff0c;Folx中文官网提供Folx教程、激活码、下载。 Folx友好兼容浏览器&#xff1a;如果你在网…

浅谈网络通信(3)

文章目录 一、TCP[!]1.1、TCP协议报文格式1.2、TCP十大机制1.2.1、确认应答机制1.2.2、超时重传机制1.2.3、连接管理机制1.2.3.1、三次握手[其流程至关重要&#xff0c;面试必考]1.2.3.2.1、那为啥要建立连接&#xff1f;&#xff1f;建立连接的意义是啥&#xff1f;&#xff1…

Jetson Linux 上安装ZMQ

1. 安装ZMQ 框架 apt-get install libzmq3-dev 2. 或者自己build ZMQ https://github.com/zeromq/libzmq.git 参考官网教程 3. 安装CPPZMQ CPPZMQ 是ZMQ 的友好的C封装&#xff0c;只需要一个zmq.hpp 头文件即可 git clone https://github.com/zeromq/cppzmq.git cd cppz…