IID 与 Non-IID

article/2025/10/14 2:57:31

数据独立同分布(Independent Identically Distribution,IID)

数据与数据之间都是独立的,但满足同一个分布。(独立:一个数据的出现不会影响另一个数据)

数据分布描述的是数据的统计情况:横坐标表示所有可能的分类情况,纵坐标表示的是对应分类数据量。

在现实生活中,很多时候,数据可能是围绕着一个中心分布,不偏左、不偏右、也不或高或低,呈现一种中间高、两边低的趋势,我们称之为“正态分布”(也叫“高斯分布”):

正态分布的简单性质。第一,平均数=中位数=众数;第二,关于中心对称;第三,50%的数据比平均数小,50%的数据比平均数大。


 

为什么要假设数据是独立和相同分布(i.i.d)

这个假设让maximization在数学上非常容易计算。

观察数学的独立和相同分布(independent and identical distribution)的假设,简化了优化问题中likelihood函数的计算。因为独立性的假设,likelihood函数可以这样写

 

简而言之,likelihood函数可以简化为

 

简化后的函数对参数估计很有用。 为了最大化观察到的事件的可能性,取log函数,最大化参数θ。

 

并且从log函数的“乘法变加法”的属性,参数评估θ的方程式简化成

 

计算机计算多次加法是很高效的,计算乘法并不高效。这一个简化是计算效率提高了核心原因。而这个Log变换也在最大化的过程中,把很多exponential的函数变成线性函数。

并且要完成最大化的倒数第二步,扩展概率函数。 以高斯分布为例。 为何选择高斯? 我将在下面解释。

 

最后一步是采用log likelihood的导数并找到能最大化log likelihood的μ和sigma.

可用,易用

在这个假设在实际应用中好用

  • 中心极限定理(central limit theorem)+ big data
  • 简单模型+高质量数据=优质的模型

即使样本来自更复杂的非高斯分布,它也能很好地approximate。 因为它可以从中心极限定理简化为高斯分布。 对于大量可观测的样本,“许多随机变量的总和将具有近似正态的分布”。

model的accuracy取决于model unit的简单性和representative power,以及数据质量。 因为unit的简单性使其易于interpret和scale,并且unit的representative power + scale out使得model accuracy提高。 像在一个深度神经网络,每个neuron都很简单但有strong representative power,一层一层的来表示更复杂的features,提高model accuracy。

==================================================================================

独立同分布数据,说明我们用来训练的样本点具有较好的总体代表性。

我们要从已有的数据(经验) 中总结出规律来对未知数据做决策,如果获取训练数据是不具有总体代表性的,就是特例的情况,那规律就会总结得不好或是错误,因为这些规律是由个例推算的,不具有推广的效果。

通过独立同分布的假设,就可以大大减小训练样本中个例的情形。

==================================================================================

非数据独立同分布(Non - Independent Identically Distribution,Non-IID)

Non-IID的意思即数据之间非独立,或者非同分布。但现实数据一般都是独立的。

数据与数据之间都是独立的,但不满足同一个分布。

实场景中不同设备的数据的质和量都不尽相同,数据很难满足 IID 的前提假设。

 


http://chatgpt.dhexx.cn/article/TIVJvRZf.shtml

相关文章

dy设备deviceid iid注册分析

清楚缓存,重新打开app, 点击同意按钮,会触发设备注册; 很明显是一个post包,device_register 可以看到请求体加密了 那么 请求体是什么呢? 很老版本思路:都是直接明文注册 较老版本思路:在反编译…

Redis 设计与实现: redisObject 数据结构,以及 Redis 的数据类型

redisObject 数据结构,以及 Redis 的数据类型 redisObject 是 Redis 类型系统的核心, 数据库中的每个键、值,以及 Redis 本身处理的参数, 都表示为这种数据类型。 redisObject 的定义位于 redis.h : /** Redis 对象…

(五)、Redis的RDB持久化---Redis设计与实现读书笔记

两个用于生成RDB文件的命令 save:会阻塞Redis服务器进程,直到RDB文件创建完毕,在阻塞期间,服务器不能处理任何命令请求bgsave:会派生出一个子进程,然后由子进程负责创建RDB文件,服务器经常(父进…

《redis设计与实现》 读书笔记

《redis设计与实现》 作者:黄健宏 读书笔记 一、前言 什么是redis: Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。简而言之redis就是放在远程网络上的一个key-va…

《Redis设计与实现》阅读:Redis底层研究之简单动态字符串SDS

除仅用于字符串字面量的情况外,对于可以被修改值的字符串的表示,Redis底层并没有采用C语言传统的字符串表示,即以空字符结尾的字符数组,而是采用专门为其设计的简单动态字符串作为其默认字符串表示,其英文全称为Simple…

Redis秒杀功能设计与实现

前言 抢购问题不仅是电商类项目中一个重要的业务,也是许多开发人员在进阶过程中绕不开的问题,关于抢购,如果理清了前后的逻辑和里面涉及到的几个关键性的问题,问题就迎刃而解了 抢购中的几个常见问题 如何设计抢购功能?(表结构,以及整体的抢购思路)不借助中间件如何实…

Redis设计与实现阅读总结(一)数据结构和对象

Redis设计与实现阅读总结(一)数据结构和对象 最近团队几个人和我聊了下,加上我自己平时的反思,我发现自己问题确实很多 其中一个问题就是,自己学习东西没有系统性,没有总结 这次的博客算是一个总结的开始。…

(六)、Redis的AOF持久化---Redis设计与实现读书笔记

redisServer关于AOF的数据结构 /***Redis 服务器类*/ struct redisServer{...//AOF缓存区sds aof_buf;... }当服务器执行完一个写命令后,会一协议格式将被执行的写命令追加到服务器类的aof_buf缓存区的末尾。 AOF文件的写入、同步 写入、同步概念 写入&#xff…

Redis | 第8章 发布订阅与事务《Redis设计与实现》

第8章 发布订阅与事务 前言1. 发布订阅1.1 频道的订阅与退订1.2 模式的订阅与退订1.3 发送消息1.4 查看订阅消息 2. 事务2.1 事务的实现2.2 WATCH 命令的实现2.3 事务的 ACID 性质 最后 前言 参考资料:《Redis设计与实现 第二版》; 第三部分为独立功能…

AOF -- Redis 设计与实现

Redis 分别提供了 RDB 和 AOF 两种持久化机制: RDB 将数据库的快照(snapshot)以二进制的方式保存到磁盘中。AOF 则以协议文本的方式,将所有对数据库进行过写入的命令(及其参数)记录到 AOF 文件&#xff0c…

Redis设计与实现学习总结

Redis设计与实现学习总结 本文主要对Redis的设计和实现原理做了一个介绍很总结,有些东西我也介绍的不是很详细准确,尽量在自己的理解范围内把一些知识点和关键性技术做一个描述。如有错误,还望见谅,欢迎指出。 这篇文章主要还是参…

Redis的设计与实现(1):5种基本数据结构的底层实现

一、简单的动态字符串(SDS) Redis没有直接使用C语言传统的字符串表示,而是自己构建了一种名为简单动态字符串(simple dynamic string,SDS)的抽象类型,并将SDS作为Redis默认的字符串表示。 在Redis里,C字符…

Redis设计与实现总结

本文总结自《Redis设计与实现》一书,只打算总结Redis底层数据结构的实现。Redis的使用参考我的另一篇笔记Redis操作指南。 1 Redis概览 Redis是一个C语言编写的开源、非关系型内存数据库。它底层属于单线程、全内存操作,提供对象共享、引用计数和对象回…

Redis设计与实现

文章目录 第一部分:内部数据结构简单动态字符串(simple dynamic string)双端链表字典跳跃表 第二部分:内存映射数据结构整数集合intset压缩列表 redis数据类型对象处理机制(redisObject)字符串string哈希表hash列表list集合set有续集zset 第四部分&#…

redis的设计与实现

redis的设计和实现 第一部分、数据结构与对象 一、简单动态字符串: 在大多数情况下redis只会使用c字符串作为字面量,在大多情况下,redis使用SDS作为字符串表示。 比起C字符串,SDS具有五种优点: SDS结构里面会有一…

虚拟IP注册Nacos的问题

虚拟IP注册Nacos的问题 问题: A服务器有两个网卡,网卡 lo 绑定了 127.0.0.1 和一个虚拟IP,网卡 eth0 绑定了本地公网IP和一个虚拟IP。同样B服务器的网卡也是相同的配置,A、B服务器拥有的虚拟IP都是同一个地址。 当将A、B服务器部…

天翼云高可用虚拟IP(HAVIP)实践

产品概述 天翼云高可用虚拟IP(High-Availability Virtual IP Address,简称HAVIP)是一种可用独立创建和删除的私有网络IP地址资源。通过在VIP CIDR中申请一个私有网络IP地址,然后与高可用软件(如高可用软件Keepalived&…

云服务器虚拟ip绑定主机,如何在云平台上给云主机中的Keepalived的虚拟IP绑定弹性IP?...

1、 查看Keepalived和网卡配置文件中虚拟IP地址 查看虚拟机keepalived.config配置文件可以看到本地IP地址为172.16.100.109,虚拟IP地址为172.16.100.104。 (图1 Keepalived配置文件) 查看虚拟机网卡的IP地址情况,可以看到本地IP和虚拟IP。 (图2 查看虚拟…

EasyConnect虚拟IP地址未分配

工作中遇到EasyConnect虚拟IP地址未分配,导致无法正常连接服务器进行调测工作。 检查是否安装成功

蒲公英联机平台的服务器虚拟IP,蒲公英客户端如何使用固定虚拟IP管理虚拟局域网的步骤是什么?...

蒲公英异地组网分为路由器成员与客户端成员两种。其中路由器成员下的电脑,可通过本地连接获取的局域网IP进行组网通信访问;而安装并登录了蒲公英客户端成员,则是通过系统随机分配的临时虚拟IP,来进行组网成员的通讯。当成员移除原…