DeepSORT(目标跟踪算法)中自由度决定卡方分布的形状

2024-06-11 09:12

本文主要是介绍DeepSORT(目标跟踪算法)中自由度决定卡方分布的形状,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

DeepSORT(目标跟踪算法)中自由度决定卡方分布的形状

flyfish

重要的两个点

自由度决定卡方分布的形状(本文)
马氏距离的平方在多维正态分布下服从自由度为 k 的卡方分布

独立的信息

在统计学中,独立的信息是指数据中的独立变量或值的数量。当我们计算样本统计量(如平均值或方差)时,某些数据点的值可以从其他数据点和统计量中推导出来,因此这些点不再提供独立的信息。

卡方分布是一种统计学上的概率分布,通常用于假设检验,比如检验数据的独立性或适合度。卡方分布描述的是一个变量的值如何分布,特别是当这些变量表示方差或者是两个变量之间的独立性时。它的形状取决于自由度(degree of freedom, df),自由度越高,分布越接近正态分布。

绘制几个不同自由度下的卡方分布

import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as stats# 定义自由度
dfs = [1, 2, 3, 5, 10]# 设置x轴范围
x = np.linspace(0, 20, 1000)# 创建图形
plt.figure(figsize=(10, 6))# 绘制不同自由度的卡方分布曲线
for df in dfs:plt.plot(x, stats.chi2.pdf(x, df), label=f'df={df}')# 添加图例和标签
plt.legend()
plt.xlabel('Value')
plt.ylabel('Probability Density')
plt.title('Chi-Square Distribution')
plt.grid(True)# 显示图形
plt.show()

在这里插入图片描述
卡方分布图:

  1. df=1:分布最偏,右侧有长尾。
  2. df=2:开始向左侧移动,但仍有右侧长尾。
  3. df=3:分布更集中,右侧长尾减弱。
  4. df=5:分布更靠近正态分布,右侧尾巴更短。
  5. df=10:非常接近正态分布,右侧尾巴很短。
    这种图形有助于理解自由度对卡方分布形状的影响。随着自由度增加,卡方分布逐渐向正态分布靠拢。

卡方分布的公式

可以用以下数学表达式来表示:

f ( x ; k ) = 1 2 k / 2 Γ ( k / 2 ) x k / 2 − 1 e − x / 2 f(x; k) = \frac{1}{2^{k/2} \Gamma(k/2)} x^{k/2-1} e^{-x/2} f(x;k)=2k/2Γ(k/2)1xk/21ex/2

其中:

  • x x x 是卡方变量(取非负值)。
  • k k k 是自由度(degrees of freedom)。
  • Γ \Gamma Γ 是伽玛函数(Gamma function),它是阶乘函数的一种扩展,满足 Γ ( n ) = ( n − 1 ) ! \Gamma(n) = (n-1)! Γ(n)=(n1)! 对于正整数 n n n

伽玛函数 (Gamma function)

伽玛函数是一种特殊函数,它是阶乘函数在非整数值上的扩展。对于一个正整数 n n n,伽玛函数 Γ ( n ) \Gamma(n) Γ(n) 等于 ( n − 1 ) ! (n-1)! (n1)!。伽玛函数的定义是:

Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t \Gamma(z) = \int_0^\infty t^{z-1} e^{-t} \, dt Γ(z)=0tz1etdt

z z z 是正整数时,伽玛函数满足 Γ ( n ) = ( n − 1 ) ! \Gamma(n) = (n-1)! Γ(n)=(n1)!

通常自由度等于数据点的数量减去你计算中所涉及的参数数量。

例如:

  1. 样本的平均值计算
  • 你有 n n n 个数据点。
  • 计算平均值需要一个参数(就是这个平均值)。
  • 因此,自由度是 n − 1 n-1 n1
  1. 线性回归
  • 假设你有 n n n 个数据点和两个参数(斜率和截距)。
  • 自由度是 n − 2 n-2 n2

假设我们有5个数据点 x 1 , x 2 , x 3 , x 4 , x 5 x_1, x_2, x_3, x_4, x_5 x1,x2,x3,x4,x5

  1. 计算平均值
    x ˉ = x 1 + x 2 + x 3 + x 4 + x 5 5 \bar{x} = \frac{x_1 + x_2 + x_3 + x_4 + x_5}{5} xˉ=5x1+x2+x3+x4+x5
  2. 计算每个数据点的偏差(数据点与平均值的差):
    d 1 = x 1 − x ˉ d_1 = x_1 - \bar{x} d1=x1xˉ
    d 2 = x 2 − x ˉ d_2 = x_2 - \bar{x} d2=x2xˉ
    d 3 = x 3 − x ˉ d_3 = x_3 - \bar{x} d3=x3xˉ
    d 4 = x 4 − x ˉ d_4 = x_4 - \bar{x} d4=x4xˉ
    d 5 = x 5 − x ˉ d_5 = x_5 - \bar{x} d5=x5xˉ
    偏差的和为零:
    d 1 + d 2 + d 3 + d 4 + d 5 = 0 d_1 + d_2 + d_3 + d_4 + d_5 = 0 d1+d2+d3+d4+d5=0

这表明,知道了前4个偏差 d 1 , d 2 , d 3 , d 4 d_1, d_2, d_3, d_4 d1,d2,d3,d4 后,第5个偏差 d 5 d_5 d5 是可以通过前4个偏差计算出来的,因为偏差的总和必须为零:
d 5 = − ( d 1 + d 2 + d 3 + d 4 ) d_5 = - (d_1 + d_2 + d_3 + d_4) d5=(d1+d2+d3+d4)

这说明第5个偏差并不是独立的,它依赖于前4个偏差。

自由度的减少

当我们计算平均值时,我们使用了所有数据点的信息,这个平均值本身是由这些数据点计算出来的,因此在计算方差时,有一个数据点的信息量不再是独立的(因为它可以从其他数据点和平均值推导出来)。这就是为什么在计算方差时,自由度是 n − 1 n-1 n1

无论最后一个数据点是大是小,这个推理过程都成立。因为平均值 x ˉ \bar{x} xˉ 是所有数据点的一个函数,在计算方差时,所有数据点与平均值的偏差和为零:

∑ i = 1 n ( x i − x ˉ ) = 0 \sum_{i=1}^{n} (x_i - \bar{x}) = 0 i=1n(xixˉ)=0

这表明,如果你知道 n − 1 n-1 n1 个偏差,那么最后一个偏差是可以通过前面 n − 1 n-1 n1 个偏差计算出来的。因此,总共有 n − 1 n-1 n1 个独立的信息,这就是我们在计算样本方差时为什么使用 n − 1 n-1 n1 作为分母。

自由度的作用

  1. 调整估计偏差
    使用自由度调整计算可以消除估计过程中的偏差,使得估计结果更加准确。例如,样本方差的计算使用 n − 1 n-1 n1 作为分母,使其成为总体方差的无偏估计。

  2. 反映数据独立性
    自由度表示数据集中独立信息的数量。在统计计算中,自由度反映了可以自由变动的数据点数量,而不受其他数据点或估计参数的约束。

  3. 决定分布形状
    在假设检验中,自由度决定了统计量的分布形状,如卡方分布。不同的自由度会导致分布形状不同,从而影响显著性水平和置信区间的计算。

要深入理解样本方差、总体方差以及无偏估计的概念,首先需要了解一些基础定义和背景知识。让我们逐一解释这些概念。

样本方差、总体方差、无偏估计

总体方差(Population Variance)
总体方差是描述总体数据的离散程度的度量,表示总体数据点与总体均值之间的平均平方偏差。假设总体中有 N N N 个数据点 X 1 , X 2 , … , X N X_1, X_2, \ldots, X_N X1,X2,,XN,总体方差的计算公式为:
σ 2 = 1 N ∑ i = 1 N ( X i − μ ) 2 \sigma^2 = \frac{1}{N} \sum_{i=1}^{N} (X_i - \mu)^2 σ2=N1i=1N(Xiμ)2
其中, μ \mu μ 是总体的平均值。

样本方差(Sample Variance)
样本方差是从样本数据中估计总体方差的度量,表示样本数据点与样本均值之间的平均平方偏差。假设样本中有 n n n 个数据点 x 1 , x 2 , … , x n x_1, x_2, \ldots, x_n x1,x2,,xn,样本方差的计算公式为:
s 2 = 1 n − 1 ∑ i = 1 n ( x i − x ˉ ) 2 s^2 = \frac{1}{n-1} \sum_{i=1}^{n} (x_i - \bar{x})^2 s2=n11i=1n(xixˉ)2
其中, x ˉ \bar{x} xˉ 是样本的平均值。

无偏估计(Unbiased Estimator)

一个估计量是无偏的,如果其期望值等于所要估计的总体参数。即,对于样本方差 s 2 s^2 s2 来说,当它作为总体方差 σ 2 \sigma^2 σ2 的估计时,满足以下条件:
E [ s 2 ] = σ 2 \mathbb{E}[s^2] = \sigma^2 E[s2]=σ2
其中, E \mathbb{E} E 表示期望值。

举例子

使用总体数据 2 , 4 , 6 , 8 , 10 2, 4, 6, 8, 10 2,4,6,8,10 来计算总体方差和样本方差。

总体方差
  1. 计算总体平均值
    μ = 2 + 4 + 6 + 8 + 10 5 = 6 \mu = \frac{2 + 4 + 6 + 8 + 10}{5} = 6 μ=52+4+6+8+10=6
  2. 计算每个数据点的平方偏差
    ( 2 − 6 ) 2 = 16 (2 - 6)^2 = 16 (26)2=16
    ( 4 − 6 ) 2 = 4 (4 - 6)^2 = 4 (46)2=4
    ( 6 − 6 ) 2 = 0 (6 - 6)^2 = 0 (66)2=0
    ( 8 − 6 ) 2 = 4 (8 - 6)^2 = 4 (86)2=4
    ( 10 − 6 ) 2 = 16 (10 - 6)^2 = 16 (106)2=16
  3. 计算总体方差
    σ 2 = 1 5 ( 16 + 4 + 0 + 4 + 16 ) = 40 5 = 8 \sigma^2 = \frac{1}{5} (16 + 4 + 0 + 4 + 16) = \frac{40}{5} = 8 σ2=51(16+4+0+4+16)=540=8
样本方差的无偏估计

假设我们抽取多个样本,每个样本包含3个数据点:

样本 1 2 , 4 , 6 2, 4, 6 2,4,6

  1. 样本平均值
    x ˉ 1 = 2 + 4 + 6 3 = 4 \bar{x}_1 = \frac{2 + 4 + 6}{3} = 4 xˉ1=32+4+6=4

  2. 平方偏差
    ( 2 − 4 ) 2 = 4 (2 - 4)^2 = 4 (24)2=4
    ( 4 − 4 ) 2 = 0 (4 - 4)^2 = 0 (44)2=0
    ( 6 − 4 ) 2 = 4 (6 - 4)^2 = 4 (64)2=4

  3. 样本方差(无偏估计)
    s 1 2 = 1 3 − 1 ( 4 + 0 + 4 ) = 8 2 = 4 s^2_1 = \frac{1}{3-1} (4 + 0 + 4) = \frac{8}{2} = 4 s12=311(4+0+4)=28=4
    样本 2 4 , 6 , 8 4, 6, 8 4,6,8

  4. 样本平均值
    x ˉ 2 = 4 + 6 + 8 3 = 6 \bar{x}_2 = \frac{4 + 6 + 8}{3} = 6 xˉ2=34+6+8=6

  5. 平方偏差
    ( 4 − 6 ) 2 = 4 (4 - 6)^2 = 4 (46)2=4
    ( 6 − 6 ) 2 = 0 (6 - 6)^2 = 0 (66)2=0
    ( 8 − 6 ) 2 = 4 (8 - 6)^2 = 4 (86)2=4

  6. 样本方差(无偏估计)
    s 2 2 = 1 3 − 1 ( 4 + 0 + 4 ) = 8 2 = 4 s^2_2 = \frac{1}{3-1} (4 + 0 + 4) = \frac{8}{2} = 4 s22=311(4+0+4)=28=4
    样本 3 6 , 8 , 10 6, 8, 10 6,8,10

  7. 样本平均值
    x ˉ 3 = 6 + 8 + 10 3 = 8 \bar{x}_3 = \frac{6 + 8 + 10}{3} = 8 xˉ3=36+8+10=8

  8. 平方偏差
    ( 6 − 8 ) 2 = 4 (6 - 8)^2 = 4 (68)2=4
    ( 8 − 8 ) 2 = 0 (8 - 8)^2 = 0 (88)2=0
    ( 10 − 8 ) 2 = 4 (10 - 8)^2 = 4 (108)2=4

  9. 样本方差(无偏估计)
    s 3 2 = 1 3 − 1 ( 4 + 0 + 4 ) = 8 2 = 4 s^2_3 = \frac{1}{3-1} (4 + 0 + 4) = \frac{8}{2} = 4 s32=311(4+0+4)=28=4
    我们看到,不同的样本有不同的方差,但这些样本方差的平均值趋向于总体方差。这是无偏估计的意义:期望值(平均值)等于总体方差。

结论
10. 总体方差:总体所有数据点的平均平方偏差。在例子中,计算得到总体方差为 8。
11. 样本方差(无偏估计):为了估计总体方差,样本方差用 n − 1 n-1 n1 作为分母,使其期望值等于总体方差。对于样本方差来说,使用 n − 1 n-1 n1 作为分母确保其期望值等于总体方差。这并不意味着每一个具体的样本方差都等于总体方差,而是多个样本方差的平均值会接近于总体方差。
12. 无偏估计的意义:单个样本方差不一定等于总体方差,但多个样本方差的平均值会接近于总体方差,从而实现无偏估计的目标。无偏估计的概念是基于期望值的。当我们从总体中抽取一个样本并计算样本方差时,我们使用 n − 1 n-1 n1 作为分母而不是 n n n。这是因为样本均值 x ˉ \bar{x} xˉ 是用所有 n n n 个数据点计算出来的,这使得样本中的偏差和为零,消耗了一个自由度。使用 n − 1 n-1 n1 可以使样本方差成为总体方差的无偏估计。

通过无偏估计,确保在长远来看,估计值不会系统性地偏离真实值。

这篇关于DeepSORT(目标跟踪算法)中自由度决定卡方分布的形状的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1050751

相关文章

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

康拓展开(hash算法中会用到)

康拓展开是一个全排列到一个自然数的双射(也就是某个全排列与某个自然数一一对应) 公式: X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0! 其中,a[i]为整数,并且0<=a[i]<i,1<=i<=n。(a[i]在不同应用中的含义不同); 典型应用: 计算当前排列在所有由小到大全排列中的顺序,也就是说求当前排列是第

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

【数据结构】——原来排序算法搞懂这些就行,轻松拿捏

前言:快速排序的实现最重要的是找基准值,下面让我们来了解如何实现找基准值 基准值的注释:在快排的过程中,每一次我们要取一个元素作为枢纽值,以这个数字来将序列划分为两部分。 在此我们采用三数取中法,也就是取左端、中间、右端三个数,然后进行排序,将中间数作为枢纽值。 快速排序实现主框架: //快速排序 void QuickSort(int* arr, int left, int rig

poj 3974 and hdu 3068 最长回文串的O(n)解法(Manacher算法)

求一段字符串中的最长回文串。 因为数据量比较大,用原来的O(n^2)会爆。 小白上的O(n^2)解法代码:TLE啦~ #include<stdio.h>#include<string.h>const int Maxn = 1000000;char s[Maxn];int main(){char e[] = {"END"};while(scanf("%s", s) != EO

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

dp算法练习题【8】

不同二叉搜索树 96. 不同的二叉搜索树 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: 输入:n = 3输出:5 示例 2: 输入:n = 1输出:1 class Solution {public int numTrees(int n) {int[] dp = new int

Codeforces Round #240 (Div. 2) E分治算法探究1

Codeforces Round #240 (Div. 2) E  http://codeforces.com/contest/415/problem/E 2^n个数,每次操作将其分成2^q份,对于每一份内部的数进行翻转(逆序),每次操作完后输出操作后新序列的逆序对数。 图一:  划分子问题。 图二: 分而治之,=>  合并 。 图三: 回溯: