当前位置: 首页 > news >正文

Cramér-Rao界:参数估计精度的“理论底线”

Cramér-Rao界:参数估计精度的“理论底线”

在统计学中,当我们用数据估计一个模型的参数时,总希望估计结果尽可能精确。但精度有没有一个理论上的“底线”呢?答案是有的,这就是Cramér-Rao界(Cramér-Rao Lower Bound, CRLB)。它通过Fisher信息矩阵的正定性,给出了无偏估计协方差的最低下限。简单来说,它告诉我们:再怎么努力,你的估计精度也超不过这个界限。今天我们就来聊聊Cramér-Rao界的由来、意义和应用。


什么是Cramér-Rao界?

Cramér-Rao界是一个统计定理,用来衡量无偏估计器(unbiased estimator)的精度。假设我们有一个参数 ( θ \theta θ )(可以是向量),用数据 ( x x x ) 估计它,得到估计量 ( θ ^ \hat{\theta} θ^ )。如果 ( θ ^ \hat{\theta} θ^ ) 是无偏的(即 ( E [ θ ^ ] = θ E[\hat{\theta}] = \theta E[θ^]=θ )),它的协方差矩阵满足:

Cov ( θ ^ ) ≥ I ( θ ) − 1 \text{Cov}(\hat{\theta}) \geq I(\theta)^{-1} Cov(θ^)I(θ)1

  • ( Cov ( θ ^ ) \text{Cov}(\hat{\theta}) Cov(θ^) ):估计量 ( θ ^ \hat{\theta} θ^ ) 的协方差矩阵,反映估计的分散程度。
  • ( I ( θ ) I(\theta) I(θ) ):Fisher信息矩阵,衡量数据提供的参数信息。
  • ( ≥ \geq ):表示矩阵意义上的不等式(即 ( Cov ( θ ^ ) − I ( θ ) − 1 \text{Cov}(\hat{\theta}) - I(\theta)^{-1} Cov(θ^)I(θ)1 ) 是半正定的)。

如果 ( θ \theta θ ) 是标量,方差形式更简单:

Var ( θ ^ ) ≥ 1 I ( θ ) \text{Var}(\hat{\theta}) \geq \frac{1}{I(\theta)} Var(θ^)I(θ)1

通俗比喻

想象你在射箭,想尽可能靠近靶心(真实参数 ( θ \theta θ ))。Cramér-Rao界就像一个“靶环”,告诉你箭的散布范围(方差或协方差)不可能小于这个环。Fisher信息矩阵 ( I ( θ ) I(\theta) I(θ) ) 则像弓箭的质量,信息越多(( I ( θ ) I(\theta) I(θ) ) 越大),靶环越小,精度越高。


Fisher信息矩阵与正定性

Fisher信息矩阵定义为:

I ( θ ) i j = E [ ∂ log ⁡ p ( x ∣ θ ) ∂ θ i ∂ log ⁡ p ( x ∣ θ ) ∂ θ j ∣ θ ] I(\theta)_{ij} = E\left[ \frac{\partial \log p(x|\theta)}{\partial \theta_i} \frac{\partial \log p(x|\theta)}{\partial \theta_j} \bigg| \theta \right] I(θ)ij=E[θilogp(xθ)θjlogp(xθ) θ]

或等价地:

I ( θ ) i j = − E [ ∂ 2 log ⁡ p ( x ∣ θ ) ∂ θ i ∂ θ j ∣ θ ] I(\theta)_{ij} = -E\left[ \frac{\partial^2 \log p(x|\theta)}{\partial \theta_i \partial \theta_j} \bigg| \theta \right] I(θ)ij=E[θiθj2logp(xθ) θ]

如果模型是可识别的(不同 ( θ \theta θ ) 对应不同分布),( I ( θ ) I(\theta) I(θ) ) 通常是正定的,即对任意非零向量 ( v v v ):

v T I ( θ ) v > 0 v^T I(\theta) v > 0 vTI(θ)v>0

正定性的作用

  • 逆矩阵存在:正定保证 ( I ( θ ) I(\theta) I(θ) ) 可逆,( I ( θ ) − 1 I(\theta)^{-1} I(θ)1 ) 存在。
  • 正定逆矩阵:( I ( θ ) − 1 I(\theta)^{-1} I(θ)1 ) 也是正定的,意味着它是一个有效的协方差矩阵(对角元素非负)。
  • 精度量化:( I ( θ ) − 1 I(\theta)^{-1} I(θ)1 ) 提供了估计精度的理论下界。

Cramér-Rao界的推导(简要版)

为什么协方差有这个下界?我们用一个直观的推导来说明(以标量为例,多参数类似)。

假设

  • ( θ ^ \hat{\theta} θ^ ) 是 ( θ \theta θ ) 的无偏估计:( E [ θ ^ ] = θ E[\hat{\theta}] = \theta E[θ^]=θ )。
  • 得分函数 ( s ( θ ) = ∂ log ⁡ p ( x ∣ θ ) ∂ θ s(\theta) = \frac{\partial \log p(x|\theta)}{\partial \theta} s(θ)=θlogp(xθ) ),( E [ s ( θ ) ] = 0 E[s(\theta)] = 0 E[s(θ)]=0 )。

关键步骤

由于 ( E [ θ ^ ] = θ E[\hat{\theta}] = \theta E[θ^]=θ ),对 ( θ \theta θ ) 求导:

∂ ∂ θ E [ θ ^ ] = ∫ θ ^ ( x ) ∂ p ( x ∣ θ ) ∂ θ d x = 1 \frac{\partial}{\partial \theta} E[\hat{\theta}] = \int \hat{\theta}(x) \frac{\partial p(x|\theta)}{\partial \theta} \, dx = 1 θE[θ^]=θ^(x)θp(xθ)dx=1 (分别左右两边求导,左边求导是积分这一项,右边 θ \theta θ对自己求导是1, 具体请看后文推导)

因为 ( ∂ p ∂ θ = p ⋅ ∂ log ⁡ p ∂ θ = p ⋅ s \frac{\partial p}{\partial \theta} = p \cdot \frac{\partial \log p}{\partial \theta} = p \cdot s θp=pθlogp=ps ),所以:

∫ θ ^ ( x ) p ( x ∣ θ ) s ( x ∣ θ ) d x = 1 \int \hat{\theta}(x) p(x|\theta) s(x|\theta) \, dx = 1 θ^(x)p(xθ)s(xθ)dx=1

改写:

E [ θ ^ s ] = 1 E[\hat{\theta} s] = 1 E[θ^s]=1

考虑 ( θ ^ − θ \hat{\theta} - \theta θ^θ )(估计误差),因为 ( E [ θ ^ ] = θ E[\hat{\theta}] = \theta E[θ^]=θ ):

E [ ( θ ^ − θ ) s ] = E [ θ ^ s ] − E [ θ s ] = 1 − 0 = 1 E[(\hat{\theta} - \theta) s] = E[\hat{\theta} s] - E[\theta s] = 1 - 0 = 1 E[(θ^θ)s]=E[θ^s]E[θs]=10=1

这是因为:
E [ θ s ] = θ E [ s ] = θ ⋅ 0 = 0 E[\theta s] = \theta E[s] = \theta \cdot 0 = 0 E[θs]=θE[s]=θ0=0

其中 ( θ \theta θ ) 是常数(真实参数),可以提出来,而 ( E [ s ] = 0 E[s] = 0 E[s]=0 ),所以 ( E [ θ s ] = 0 E[\theta s] = 0 E[θs]=0 )。

应用柯西-施瓦茨不等式

对于随机变量 ( X = θ ^ − θ X = \hat{\theta} - \theta X=θ^θ ) 和 ( Y = s Y = s Y=s ):

( E [ X Y ] ) 2 ≤ E [ X 2 ] E [ Y 2 ] (E[XY])^2 \leq E[X^2] E[Y^2] (E[XY])2E[X2]E[Y2]

代入:

1 2 ≤ E [ ( θ ^ − θ ) 2 ] E [ s 2 ] 1^2 \leq E[(\hat{\theta} - \theta)^2] E[s^2] 12E[(θ^θ)2]E[s2]

  • ( E [ ( θ ^ − θ ) 2 ] = Var ( θ ^ ) E[(\hat{\theta} - \theta)^2] = \text{Var}(\hat{\theta}) E[(θ^θ)2]=Var(θ^) )(无偏估计的方差)。
  • ( E [ s 2 ] = I ( θ ) E[s^2] = I(\theta) E[s2]=I(θ) )(Fisher信息)。

于是:

1 ≤ Var ( θ ^ ) ⋅ I ( θ ) 1 \leq \text{Var}(\hat{\theta}) \cdot I(\theta) 1Var(θ^)I(θ)

Var ( θ ^ ) ≥ 1 I ( θ ) \text{Var}(\hat{\theta}) \geq \frac{1}{I(\theta)} Var(θ^)I(θ)1

多参数情况下,协方差矩阵的不等式通过类似方法(矩阵形式的柯西-施瓦茨)得出:

Cov ( θ ^ ) ≥ I ( θ ) − 1 \text{Cov}(\hat{\theta}) \geq I(\theta)^{-1} Cov(θ^)I(θ)1


Cramér-Rao界的意义

1. 精度下限

CRLB告诉我们,无论用什么方法,只要估计是无偏的,其协方差(或方差)都不可能低于 ( I ( θ ) − 1 I(\theta)^{-1} I(θ)1 )。这为估计器的性能设定了“理论底线”。

2. 有效估计(Efficient Estimator)

如果某个估计 ( θ ^ \hat{\theta} θ^ ) 的协方差恰好等于 ( I ( θ ) − 1 I(\theta)^{-1} I(θ)1 )(达到CRLB),它被称为“有效估计”。例如,最大似然估计(MLE)在大样本下常达到此界。

3. Fisher信息的角色

( I ( θ ) I(\theta) I(θ) ) 越大(信息越多),( I ( θ ) − 1 I(\theta)^{-1} I(θ)1 ) 越小,估计精度越高。反之,信息少时,精度受限。

例子:正态分布

对于 ( x ∼ N ( μ , σ 2 ) x \sim N(\mu, \sigma^2) xN(μ,σ2) ),已知 ( σ 2 \sigma^2 σ2 ):

  • ( I ( μ ) = 1 σ 2 I(\mu) = \frac{1}{\sigma^2} I(μ)=σ21 )
  • ( Var ( μ ^ ) ≥ σ 2 n \text{Var}(\hat{\mu}) \geq \frac{\sigma^2}{n} Var(μ^)nσ2 )(( n n n ) 是样本量)。
  • 样本均值 ( μ ^ = 1 n ∑ x i \hat{\mu} = \frac{1}{n} \sum x_i μ^=n1xi ) 的方差正好是 ( σ 2 n \frac{\sigma^2}{n} nσ2 ),达到CRLB,是有效估计。

实际应用

1. 评估估计器性能

设计一个估计器后,拿它的协方差与CRLB对比:

  • 如果接近,说明很优秀。
  • 如果远超,可能是偏倚或效率低。

2. 实验设计

CRLB帮助优化数据采集。例如,增大样本量 ( n n n ) 或减少噪声 ( σ 2 \sigma^2 σ2 ),使 ( I ( θ ) I(\theta) I(θ) ) 变大,提升精度。

3. 机器学习

在深度学习中,Fisher信息矩阵用于优化(如自然梯度下降)。CRLB启发我们通过信息最大化改进模型。


总结

Cramér-Rao界是参数估计的“金标准”,通过Fisher信息矩阵的正定性,设定了一个协方差下界。正定保证 ( I ( θ ) − 1 I(\theta)^{-1} I(θ)1 ) 有效,量化了估计精度的极限。它不仅告诉我们“能有多准”,还指导我们如何设计更好的估计器。下次做估计时,不妨算算CRLB,看看你的方法离“完美”有多远!


补充:为什么 ( ∂ ∂ θ E [ θ ^ ] = 1 \frac{\partial}{\partial \theta} E[\hat{\theta}] = 1 θE[θ^]=1 )?

在Cramér-Rao界的推导中,我们假设 ( θ ^ \hat{\theta} θ^ ) 是 ( θ \theta θ ) 的无偏估计,即:

E [ θ ^ ] = θ E[\hat{\theta}] = \theta E[θ^]=θ

这意味着对于任意真实的参数值 ( θ \theta θ ),估计量 ( θ ^ \hat{\theta} θ^ ) 的期望始终等于 ( θ \theta θ )。现在,我们对这个等式两边对 ( θ \theta θ ) 求导,看看会发生什么。

推导步骤
  1. 左侧求导
    ∂ ∂ θ E [ θ ^ ] = ∂ ∂ θ θ \frac{\partial}{\partial \theta} E[\hat{\theta}] = \frac{\partial}{\partial \theta} \theta θE[θ^]=θθ
    因为 ( E [ θ ^ ] = θ E[\hat{\theta}] = \theta E[θ^]=θ ) 是一个恒等式,( θ \theta θ ) 对 ( θ \theta θ ) 的导数显然是:
    ∂ θ ∂ θ = 1 \frac{\partial \theta}{\partial \theta} = 1 θθ=1
    所以左侧等于1。

  2. 右侧求导
    ( E [ θ ^ ] E[\hat{\theta}] E[θ^] ) 是期望,表示为积分形式:
    E [ θ ^ ] = ∫ θ ^ ( x ) p ( x ∣ θ ) d x E[\hat{\theta}] = \int \hat{\theta}(x) p(x|\theta) \, dx E[θ^]=θ^(x)p(xθ)dx
    现在对 ( θ \theta θ ) 求导:
    ∂ ∂ θ E [ θ ^ ] = ∂ ∂ θ ∫ θ ^ ( x ) p ( x ∣ θ ) d x \frac{\partial}{\partial \theta} E[\hat{\theta}] = \frac{\partial}{\partial \theta} \int \hat{\theta}(x) p(x|\theta) \, dx θE[θ^]=θθ^(x)p(xθ)dx
    在正则条件下(积分和导数可以交换顺序),导数可以移到积分内部:
    = ∫ θ ^ ( x ) ∂ p ( x ∣ θ ) ∂ θ d x = \int \hat{\theta}(x) \frac{\partial p(x|\theta)}{\partial \theta} \, dx =θ^(x)θp(xθ)dx
    (注意 ( θ ^ ( x ) \hat{\theta}(x) θ^(x)) 是 ( x x x ) 的函数,不依赖 ( θ \theta θ ),所以导数只作用于 ( p ( x ∣ θ ) p(x|\theta) p(xθ) ))。

  3. 得分函数的引入
    我们知道:
    ∂ p ( x ∣ θ ) ∂ θ = p ( x ∣ θ ) ∂ log ⁡ p ( x ∣ θ ) ∂ θ = p ( x ∣ θ ) s ( x ∣ θ ) \frac{\partial p(x|\theta)}{\partial \theta} = p(x|\theta) \frac{\partial \log p(x|\theta)}{\partial \theta} = p(x|\theta) s(x|\theta) θp(xθ)=p(xθ)θlogp(xθ)=p(xθ)s(xθ)
    其中 ( s ( x ∣ θ ) = ∂ log ⁡ p ( x ∣ θ ) ∂ θ s(x|\theta) = \frac{\partial \log p(x|\theta)}{\partial \theta} s(xθ)=θlogp(xθ) ) 是得分函数。所以:
    ∂ ∂ θ E [ θ ^ ] = ∫ θ ^ ( x ) p ( x ∣ θ ) s ( x ∣ θ ) d x = E [ θ ^ s ] \frac{\partial}{\partial \theta} E[\hat{\theta}] = \int \hat{\theta}(x) p(x|\theta) s(x|\theta) \, dx = E[\hat{\theta} s] θE[θ^]=θ^(x)p(xθ)s(xθ)dx=E[θ^s]

  4. 等于1的原因
    从步骤1我们知道左侧是1,因此:
    E [ θ ^ s ] = 1 E[\hat{\theta} s] = 1 E[θ^s]=1
    这表明无偏估计 ( θ ^ \hat{\theta} θ^ ) 和得分函数 ( s s s ) 的乘积期望恒等于1。这是一个关键性质,反映了 ( θ ^ \hat{\theta} θ^ ) 的无偏性如何与似然函数的梯度关联起来。

为什么是1?

直观上,( E [ θ ^ ] = θ E[\hat{\theta}] = \theta E[θ^]=θ ) 是一个关于 ( θ \theta θ ) 的恒等式,它的“变化率”是1。而右侧积分 ( E [ θ ^ s ] E[\hat{\theta} s] E[θ^s] ) 是这种变化率的统计表达,等于1是因为得分函数 ( s ) 捕捉了似然对 ( θ \theta θ ) 的敏感度,而 ( θ ^ \hat{\theta} θ^ ) 的无偏性保证了这种敏感度的期望恰好平衡为1。


后记

2025年2月25日13点24分于上海,在Grok3大模型辅助下完成。

相关文章:

Cramér-Rao界:参数估计精度的“理论底线”

Cramr-Rao界:参数估计精度的“理论底线” 在统计学中,当我们用数据估计一个模型的参数时,总希望估计结果尽可能精确。但精度有没有一个理论上的“底线”呢?答案是有的,这就是Cramr-Rao界(Cramr-Rao Lower …...

nv docker image 下载与使用命令备忘

1,系统需求 Requirements for GPU Simulation GPU Architectures Volta, Turing, Ampere, Ada, Hopper NVIDIA GPU with Compute Capability 7.0 CUDA 11.x (Driver 470.57.02), 12.x (Driver 525.60.13) Supported Systems CPU architectures x86_64, ARM…...

C#连接sql server

连接时,出现如下提示: ERROR [IM014] [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配 原因是odbc的驱动和应用程序的架构不一致。我的odbc如下所示: 显示为64位,而c#程序显…...

汽车智能制造企业数字化转型SAP解决方案总结

一、项目实施概述 项目阶段划分: 蓝图设计阶段主数据管理方案各模块蓝图设计方案下一阶段工作计划 关键里程碑: 2022年6月6日:项目启动会2022年12月1日:系统上线 二、总体目标 通过SAP实施,构建研产供销协同、业财一…...

vue2项目打包后js文件过大, 首次加载缓慢

vue2项目打包后js文件过大, 首次加载缓慢 安装插件 npm i compression-webpack-plugin6.1.1 -D配置vue.config.js const CompressionWebpackPlugin require(compression-webpack-plugin)module.exports {configureWebpack: {plugins:[new CompressionWebpackPlugin({filen…...

数据安全_笔记系列06:数据生命周期管理(存储、传输、使用、销毁)深度解析

数据安全_笔记系列06:数据生命周期管理(存储、传输、使用、销毁)深度解析 数据生命周期管理(存储、传输、使用、销毁)详解 数据生命周期管理(Data Lifecycle Management, DLM)是围绕数据从创建…...

机器学习数学基础:32.斯皮尔曼等级相关

斯皮尔曼等级相关教程 一、定义与原理 斯皮尔曼等级相关系数(Spearman’s rank - correlation coefficient),常用 ρ \rho ρ表示,是一种非参数统计量,用于衡量两个变量的等级之间的关联程度。它基于变量的秩次&…...

【AI-39】深度学习框架包含哪些内容

深度学习框架(如 PyTorch、TensorFlow)是用于构建和训练神经网络的工具,它们提供了底层的计算库、优化算法、张量操作等功能。而transformers库是基于这些深度学习框架构建的高级库,它封装了许多预训练模型和相关的工具&#xff0…...

uniapp h5支付宝支付

第1种&#xff0c;创建个div插入到body中 const div document.createElement(div); div.innerHTML 后端返回的form表单字符串; document.body.appendChild(div); document.forms[0].submit(); div.remove(); 第2种 <template> <view v-html"formAliPay"…...

探索YOLO技术:目标检测的高效解决方案

第一章&#xff1a;计算机视觉中图像的基础认知 第二章&#xff1a;计算机视觉&#xff1a;卷积神经网络(CNN)基本概念(一) 第三章&#xff1a;计算机视觉&#xff1a;卷积神经网络(CNN)基本概念(二) 第四章&#xff1a;搭建一个经典的LeNet5神经网络(附代码) 第五章&#xff1…...

vmware虚拟机安装使用教程【视频】

vmware虚拟机安装使用教程【视频】 VMware是一款强大的桌面级虚拟化软件&#xff0c;它允许用户在单个计算机上同时运行多个操作系统&#xff0c;每个操作系统都被称为一个虚拟机&#xff08;VM&#xff09;。这种技术不仅方便了软件测试、系统开发&#xff0c;还便于资源管理&…...

2025系统架构师(一考就过):案例之三:架构风格总结

软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式&#xff0c;按照软件架构风格&#xff0c;物联网系统属于&#xff08; &#xff09;软件架构风格。 A:层次型 B:事件系统 C:数据线 D:C2 答案&#xff1a;A 解析&#xff1a; 物联网分为多个层次&#xff0…...

渗透测试实验

1、seacmsv9注入管理员密码 获取管理员账号&#xff08;name&#xff09; http://www.test2.com/comment/api/index.php?gid1&page2&rlist[]%27,%20extractvalue(1,%20concat_ws(0x20,%200x5c,(select%20(name)from%20sea_admin))),%27 2、获取管理员密码 http://www…...

CCA社群共識聯盟正式上線

2025年2月25日——BAF區塊鏈產業聯盟基金會旗下的CCA社群共識聯盟業務於今日正式全網啟動。作為區塊鏈行業的創新平台,CCA社群共識聯盟秉承誠信、公平、共贏的核心原則,致力於為全球社群夥伴打造一個更加開放、透明與高效的合作生態,推動區塊鏈產業的健康發展。 創新平台,助力…...

京东-零售-数据研发面经【附答案】

近期&#xff0c;有参加春招的同学和我交流了他的面试历程&#xff0c;我针对这些内容进行了细致的总结与梳理&#xff0c;并在此分享出来&#xff0c;希望能助力大家学习与借鉴。 1.八股文 1&#xff09;HashMap的底层原理是什么【见V6.0面试笔记 Java基础部分第19题】 2&am…...

python中的JSON数据格式

文章目录 什么是json主要功能Python数据和Json数据的相互转化 什么是json JSON是一种轻量级的数据交互格式。可以按照JSON指定的格式去组织和封装数据。JSON本质上是一个带有特定格式的字符串。 主要功能 json就是一种在各个编程语言中流通的数据格式&#xff0c;负责不同编…...

ubuntu+aarch64+dbeaver安装【亲测,避坑】

一&#xff1a;访问 Oracle JDK&#xff0c;下载jdk-11.0.26_linux-aarch64_bin.tar.gz 二&#xff1a;解压 tar -xvzf jdk-11.0.20_linux-x64_bin.tar.gz三&#xff1a;将解压后的 JDK 文件夹移动到 /usr/lib/jvm 目录 sudo mv jdk-11.0.26 /usr/lib/jvm/四&#xff1a;进入…...

Java 大视界 -- 基于 Java 的大数据机器学习模型压缩与部署优化(99)

&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎来到 青云交的博客&#xff01;能与诸位在此相逢&#xff0c;我倍感荣幸。在这飞速更迭的时代&#xff0c;我们都渴望一方心灵净土&#xff0c;而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识&#xff0c;也…...

vscode中使用PlatformIO创建工程加载慢

最近使用vscodeplatformIO开发esp32s3&#xff0c;第一次创建工程时加载速度很慢&#xff0c;查询资料解决问题&#xff0c;特此记录。 1.新建环境变量pyhton 此电脑-属性-高级系统设置中&#xff08;直接搜索高级系统设置也行&#xff09;&#xff0c;添加系统变量&#xff…...

微信小程序数据绑定与事件处理:打造动态交互体验

在上一篇中&#xff0c;我们学习了如何搭建微信小程序的开发环境并创建了一个简单的“Hello World”页面。然而&#xff0c;一个真正的小程序不仅仅是静态内容的展示&#xff0c;它需要与用户进行动态交互。本文将深入探讨微信小程序中的数据绑定和事件处理机制&#xff0c;通过…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性&#xff0c;不同版本的Docker对内核版本有不同要求。例如&#xff0c;Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本&#xff0c;Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

在rocky linux 9.5上在线安装 docker

前面是指南&#xff0c;后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作

一、上下文切换 即使单核CPU也可以进行多线程执行代码&#xff0c;CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短&#xff0c;所以CPU会不断地切换线程执行&#xff0c;从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式&#xff1a;dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一&#xff0c;腐蚀跟膨胀属于反向操作&#xff0c;膨胀是把图像图像变大&#xff0c;而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分&#xff1a;体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分&#xff1a;体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

Go语言多线程问题

打印零与奇偶数&#xff08;leetcode 1116&#xff09; 方法1&#xff1a;使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...

逻辑回归暴力训练预测金融欺诈

简述 「使用逻辑回归暴力预测金融欺诈&#xff0c;并不断增加特征维度持续测试」的做法&#xff0c;体现了一种逐步建模与迭代验证的实验思路&#xff0c;在金融欺诈检测中非常有价值&#xff0c;本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...

NPOI操作EXCEL文件 ——CAD C# 二次开发

缺点:dll.版本容易加载错误。CAD加载插件时&#xff0c;没有加载所有类库。插件运行过程中用到某个类库&#xff0c;会从CAD的安装目录找&#xff0c;找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库&#xff0c;就用插件程序加载进…...

BLEU评分:机器翻译质量评估的黄金标准

BLEU评分&#xff1a;机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域&#xff0c;衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标&#xff0c;自2002年由IBM的Kishore Papineni等人提出以来&#xff0c;…...