【返璞归真】score检验:似然比的得分检验(Likelihood Ratio Score Test)
Score检验(Score Test)是一种用于假设检验的方法,特别是在统计建模中,常用于估计模型参数时检验某个假设是否成立。它的全名是“似然比的得分检验”(Likelihood Ratio Score Test),通常用于大样本条件下对参数进行检验。
Score检验的基本思路是基于得分函数(score function),即似然函数对参数的偏导数。得分函数反映了在某个参数值下,似然函数的变化率,表示了该点附近模型拟合优度的敏感性。
主要步骤:
-
选择假设:
- 原假设(H0):某些参数等于特定值,通常是零。
- 备择假设(H1):参数不等于这个特定值。
-
得分函数(Score Function):
得分函数是似然函数对参数的导数。假设我们有似然函数 L ( θ ) L(\theta) L(θ),得分函数就是它的导数:
U ( θ ) = ∂ ∂ θ log L ( θ ) U(\theta) = \frac{\partial}{\partial \theta} \log L(\theta) U(θ)=∂θ∂logL(θ) -
计算Score检验统计量:
得分检验的检验统计量通常为:
S = U ( θ ^ 0 ) T I ( θ ^ 0 ) − 1 U ( θ ^ 0 ) n S = \frac{U(\hat{\theta}_0)^T I(\hat{\theta}_0)^{-1} U(\hat{\theta}_0)}{n} S=nU(θ^0)TI(θ^0)−1U(θ^0)
其中, U ( θ ^ 0 ) U(\hat{\theta}_0) U(θ^0) 是在原假设下估计的得分函数, I ( θ ^ 0 ) I(\hat{\theta}_0) I(θ^0) 是Fisher信息矩阵(即得分函数的二阶导数的期望), n n n 是样本大小。 -
比较临界值:
该统计量的分布在原假设成立的条件下通常近似于卡方分布。因此,可以将统计量与卡方分布的临界值进行比较,从而决定是否拒绝原假设。
优点:
- 大样本性质:Score检验在大样本下非常有效,尤其适用于似然函数没有显式解的情况。
- 无需完整拟合模型:与其他检验方法(如似然比检验)不同,score检验只需要估计原假设下的得分函数,而不需要拟合完全模型。
应用:
- 参数检验:用于检验某些参数是否等于零或者其他特定值。
- 模型拟合:常用于检验复杂模型中某些参数的显著性,尤其是在无法直接计算似然比时。
例子:
假设我们想检验某个回归模型中的某个参数是否为零。我们可以计算这个参数的得分函数,构造Score检验统计量,并与卡方分布的临界值进行比较,从而决定是否拒绝原假设(即该参数为零)。
下面我会通过详细的公式推导来解释Score检验的过程,直接进入数学推导。
1. 假设模型与似然函数
假设我们有一个包含参数 θ \theta θ 的统计模型,样本 X 1 , X 2 , … , X n X_1, X_2, \dots, X_n X1,X2,…,Xn 来自这个模型的概率分布,似然函数为 L ( θ ) = P ( X 1 , X 2 , … , X n ∣ θ ) L(\theta) = P(X_1, X_2, \dots, X_n \mid \theta) L(θ)=P(X1,X2,…,Xn∣θ)。
通常我们取似然函数的对数,称之为对数似然函数:
ℓ ( θ ) = log L ( θ ) \ell(\theta) = \log L(\theta) ℓ(θ)=logL(θ)
2. 得分函数
得分函数是对数似然函数对参数 θ \theta θ 的一阶导数:
U ( θ ) = ∂ ∂ θ ℓ ( θ ) U(\theta) = \frac{\partial}{\partial \theta} \ell(\theta) U(θ)=∂θ∂ℓ(θ)
即:
U ( θ ) = ∂ ∂ θ log L ( θ ) U(\theta) = \frac{\partial}{\partial \theta} \log L(\theta) U(θ)=∂θ∂logL(θ)
3. Fisher 信息矩阵
Fisher信息矩阵是得分函数的二阶导数的期望:
I ( θ ) = − E [ ∂ 2 ∂ θ 2 ℓ ( θ ) ] I(\theta) = - \mathbb{E} \left[ \frac{\partial^2}{\partial \theta^2} \ell(\theta) \right] I(θ)=−E[∂θ2∂2ℓ(θ)]
这描述了参数估计的不确定性。它是一个关于参数 θ \theta θ 的矩阵(如果参数有多个)。
4. 在原假设下的得分
在进行Score检验时,我们通常有一个原假设 H 0 : θ = θ 0 H_0: \theta = \theta_0 H0:θ=θ0,我们需要检验原假设下的得分统计量。
设 θ ^ \hat{\theta} θ^ 是最大似然估计(MLE),我们构造原假设下的得分为:
U ( θ 0 ) = ∂ ∂ θ ℓ ( θ ) ∣ θ = θ 0 U(\theta_0) = \frac{\partial}{\partial \theta} \ell(\theta) \Big|_{\theta = \theta_0} U(θ0)=∂θ∂ℓ(θ) θ=θ0
5. Score检验统计量
Score检验的统计量 S S S 通过以下公式定义:
S = U ( θ ^ 0 ) T [ I ( θ ^ 0 ) ] − 1 U ( θ ^ 0 ) S = U(\hat{\theta}_0)^T \left[ I(\hat{\theta}_0) \right]^{-1} U(\hat{\theta}_0) S=U(θ^0)T[I(θ^0)]−1U(θ^0)
其中:
- θ ^ 0 \hat{\theta}_0 θ^0 是在原假设下的估计值;
- I ( θ ^ 0 ) I(\hat{\theta}_0) I(θ^0) 是Fisher信息矩阵在 θ 0 \theta_0 θ0 下的值。
6. 统计量的分布
在原假设 H 0 H_0 H0 成立时,Score检验的统计量 S S S 近似服从卡方分布:
S ∼ χ k 2 S \sim \chi^2_k S∼χk2
其中 k k k 是参数空间的维度,即 θ \theta θ 的维度。
7. 决策规则
我们根据检验统计量与卡方分布的临界值 χ k 2 ( α ) \chi^2_k(\alpha) χk2(α) 进行比较:
- 如果 S > χ k 2 ( α ) S > \chi^2_k(\alpha) S>χk2(α),拒绝原假设 H 0 H_0 H0。
- 如果 S ≤ χ k 2 ( α ) S \leq \chi^2_k(\alpha) S≤χk2(α),不拒绝原假设。
8. 结论
通过这些步骤,Score检验给出了一个基于得分函数的检验统计量,该统计量的分布特性(卡方分布)使得它在大样本条件下非常有效,且不需要完全估计整个模型的参数。
通过一个具体的案例来详细展示Score检验的使用过程。
案例:检验正态分布的均值
假设我们有一组样本数据,来自于一个正态分布 N ( μ , σ 2 ) N(\mu, \sigma^2) N(μ,σ2),其中 μ \mu μ 是均值, σ 2 \sigma^2 σ2 是方差。我们想要检验正态分布的均值 μ \mu μ 是否等于某个特定值 μ 0 \mu_0 μ0。
步骤 1:设定假设
我们设定原假设和备择假设:
- 原假设 H 0 : μ = μ 0 H_0: \mu = \mu_0 H0:μ=μ0
- 备择假设 H 1 : μ ≠ μ 0 H_1: \mu \neq \mu_0 H1:μ=μ0
步骤 2:似然函数和对数似然函数
正态分布的概率密度函数为:
f ( x i ∣ μ , σ 2 ) = 1 2 π σ 2 exp ( − ( x i − μ ) 2 2 σ 2 ) f(x_i \mid \mu, \sigma^2) = \frac{1}{\sqrt{2\pi \sigma^2}} \exp\left( - \frac{(x_i - \mu)^2}{2\sigma^2} \right) f(xi∣μ,σ2)=2πσ21exp(−2σ2(xi−μ)2)
对于一个样本 X 1 , X 2 , … , X n X_1, X_2, \dots, X_n X1,X2,…,Xn,似然函数为:
L ( μ , σ 2 ) = ∏ i = 1 n f ( x i ∣ μ , σ 2 ) L(\mu, \sigma^2) = \prod_{i=1}^n f(x_i \mid \mu, \sigma^2) L(μ,σ2)=i=1∏nf(xi∣μ,σ2)
对数似然函数是:
ℓ ( μ , σ 2 ) = log L ( μ , σ 2 ) = − n 2 log ( 2 π σ 2 ) − 1 2 σ 2 ∑ i = 1 n ( x i − μ ) 2 \ell(\mu, \sigma^2) = \log L(\mu, \sigma^2) = - \frac{n}{2} \log(2\pi \sigma^2) - \frac{1}{2\sigma^2} \sum_{i=1}^n (x_i - \mu)^2 ℓ(μ,σ2)=logL(μ,σ2)=−2nlog(2πσ2)−2σ21i=1∑n(xi−μ)2
步骤 3:得分函数
得分函数是对数似然函数对 μ \mu μ 的一阶导数:
U ( μ ) = ∂ ∂ μ ℓ ( μ , σ 2 ) U(\mu) = \frac{\partial}{\partial \mu} \ell(\mu, \sigma^2) U(μ)=∂μ∂ℓ(μ,σ2)
我们计算该导数:
U ( μ ) = 1 σ 2 ∑ i = 1 n ( x i − μ ) U(\mu) = \frac{1}{\sigma^2} \sum_{i=1}^n (x_i - \mu) U(μ)=σ21i=1∑n(xi−μ)
步骤 4:Fisher信息矩阵
Fisher信息矩阵是得分函数的二阶导数的期望。我们首先对得分函数进行二阶导数:
I ( μ ) = − E [ ∂ 2 ∂ μ 2 ℓ ( μ , σ 2 ) ] I(\mu) = - \mathbb{E} \left[ \frac{\partial^2}{\partial \mu^2} \ell(\mu, \sigma^2) \right] I(μ)=−E[∂μ2∂2ℓ(μ,σ2)]
计算该二阶导数:
I ( μ ) = n σ 2 I(\mu) = \frac{n}{\sigma^2} I(μ)=σ2n
步骤 5:Score检验统计量
我们现在来计算Score检验的统计量。首先,我们在原假设下(即 μ = μ 0 \mu = \mu_0 μ=μ0)计算得分函数:
U ( μ 0 ) = 1 σ 2 ∑ i = 1 n ( x i − μ 0 ) U(\mu_0) = \frac{1}{\sigma^2} \sum_{i=1}^n (x_i - \mu_0) U(μ0)=σ21i=1∑n(xi−μ0)
然后计算Score检验的统计量:
S = U ( μ 0 ) 2 ⋅ 1 I ( μ 0 ) = ( 1 σ 2 ∑ i = 1 n ( x i − μ 0 ) ) 2 ⋅ σ 2 n S = U(\mu_0)^2 \cdot \frac{1}{I(\mu_0)} = \left( \frac{1}{\sigma^2} \sum_{i=1}^n (x_i - \mu_0) \right)^2 \cdot \frac{\sigma^2}{n} S=U(μ0)2⋅I(μ0)1=(σ21i=1∑n(xi−μ0))2⋅nσ2
S = 1 n ( ∑ i = 1 n ( x i − μ 0 ) ) 2 S = \frac{1}{n} \left( \sum_{i=1}^n (x_i - \mu_0) \right)^2 S=n1(i=1∑n(xi−μ0))2
步骤 6:检验统计量的分布
在原假设 H 0 : μ = μ 0 H_0: \mu = \mu_0 H0:μ=μ0 下,Score检验的统计量 S S S 服从卡方分布 χ 1 2 \chi^2_1 χ12,因为 μ \mu μ 只有一个参数。
步骤 7:进行假设检验
- 计算样本数据 X 1 , X 2 , … , X n X_1, X_2, \dots, X_n X1,X2,…,Xn 中的 S S S 值。
- 比较该统计量 S S S 与卡方分布的临界值 χ 1 2 ( α ) \chi^2_1(\alpha) χ12(α),通常 α = 0.05 \alpha = 0.05 α=0.05。
- 如果 S > χ 1 2 ( α ) S > \chi^2_1(\alpha) S>χ12(α),我们拒绝原假设,认为 μ ≠ μ 0 \mu \neq \mu_0 μ=μ0。
- 如果 S ≤ χ 1 2 ( α ) S \leq \chi^2_1(\alpha) S≤χ12(α),我们不拒绝原假设,认为没有足够证据表明 μ ≠ μ 0 \mu \neq \mu_0 μ=μ0。
例子:具体计算
假设我们有以下样本数据:
x 1 = 2.3 , x 2 = 2.5 , x 3 = 2.7 , x 4 = 2.9 , x 5 = 3.1 x_1 = 2.3, \, x_2 = 2.5, \, x_3 = 2.7, \, x_4 = 2.9, \, x_5 = 3.1 x1=2.3,x2=2.5,x3=2.7,x4=2.9,x5=3.1
并且我们想要检验均值是否为 μ 0 = 2.5 \mu_0 = 2.5 μ0=2.5,且已知样本方差 σ 2 = 0.1 \sigma^2 = 0.1 σ2=0.1。
-
计算得分函数:
U ( 2.5 ) = 1 0.1 ( ( 2.3 − 2.5 ) + ( 2.5 − 2.5 ) + ( 2.7 − 2.5 ) + ( 2.9 − 2.5 ) + ( 3.1 − 2.5 ) ) = 1 0.1 ( − 0.2 + 0 + 0.2 + 0.4 + 0.6 ) = 1 0.1 × 1 = 10 U(2.5) = \frac{1}{0.1} \left( (2.3 - 2.5) + (2.5 - 2.5) + (2.7 - 2.5) + (2.9 - 2.5) + (3.1 - 2.5) \right) = \frac{1}{0.1} \left( -0.2 + 0 + 0.2 + 0.4 + 0.6 \right) = \frac{1}{0.1} \times 1 = 10 U(2.5)=0.11((2.3−2.5)+(2.5−2.5)+(2.7−2.5)+(2.9−2.5)+(3.1−2.5))=0.11(−0.2+0+0.2+0.4+0.6)=0.11×1=10 -
计算Fisher信息矩阵:
I ( 2.5 ) = 5 0.1 = 50 I(2.5) = \frac{5}{0.1} = 50 I(2.5)=0.15=50 -
计算Score检验统计量:
S = U ( 2.5 ) 2 I ( 2.5 ) = 1 0 2 50 = 100 50 = 2 S = \frac{U(2.5)^2}{I(2.5)} = \frac{10^2}{50} = \frac{100}{50} = 2 S=I(2.5)U(2.5)2=50102=50100=2 -
查找卡方分布的临界值:
- 对于 α = 0.05 \alpha = 0.05 α=0.05 和自由度 k = 1 k = 1 k=1,卡方分布的临界值 χ 1 2 ( 0.05 ) = 3.841 \chi^2_1(0.05) = 3.841 χ12(0.05)=3.841。
-
比较统计量与临界值:
S = 2 < 3.841 S = 2 < 3.841 S=2<3.841
因此,我们不能拒绝原假设,认为均值 μ = 2.5 \mu = 2.5 μ=2.5 是合理的。
总结
通过这个案例,我们展示了如何应用Score检验来检验正态分布的均值。我们通过计算得分函数、Fisher信息矩阵,得到检验统计量,并根据卡方分布进行假设检验。
Score检验的依据
Score检验的依据主要来源于大样本统计理论中的得分函数和渐近分布的性质。要理解为什么Score得分能够用来进行假设检验,我们需要从以下几个核心的概念和推导来详细解释:
1. 得分函数与似然函数
假设我们有一个模型,包含未知的参数 θ \theta θ,而我们从该模型中获取了样本数据 X 1 , X 2 , … , X n X_1, X_2, \dots, X_n X1,X2,…,Xn。似然函数 L ( θ ) L(\theta) L(θ) 描述了参数 θ \theta θ 给定数据的可能性,具体是:
L ( θ ) = P ( X 1 , X 2 , … , X n ∣ θ ) L(\theta) = P(X_1, X_2, \dots, X_n \mid \theta) L(θ)=P(X1,X2,…,Xn∣θ)
而我们对似然函数取对数,得到对数似然函数:
ℓ ( θ ) = log L ( θ ) \ell(\theta) = \log L(\theta) ℓ(θ)=logL(θ)
得分函数是对数似然函数关于参数 θ \theta θ 的一阶导数:
U ( θ ) = ∂ ∂ θ ℓ ( θ ) U(\theta) = \frac{\partial}{\partial \theta} \ell(\theta) U(θ)=∂θ∂ℓ(θ)
得分函数的直观意义是:它反映了似然函数相对于参数变化的灵敏度,即数据给定时,参数的变化方向和大小。得分函数为零的点通常是最大似然估计(MLE)的候选点。
2. 大样本渐近理论
在大样本条件下,似然估计 θ ^ \hat{\theta} θ^ 具有一致性和渐近正态性,也就是说,随着样本量 n → ∞ n \to \infty n→∞, θ ^ \hat{\theta} θ^ 会收敛到真实值 θ 0 \theta_0 θ0,并且其分布趋向于正态分布。
- 似然函数在 θ 0 \theta_0 θ0 处取得最大值(即最大似然估计 θ ^ \hat{\theta} θ^),得分函数在 θ 0 \theta_0 θ0 处趋于零。
- 得分函数的期望 E [ U ( θ 0 ) ] = 0 \mathbb{E}[U(\theta_0)] = 0 E[U(θ0)]=0,并且在 θ 0 \theta_0 θ0 处的方差由Fisher信息矩阵表示,即:
I ( θ 0 ) = − E [ ∂ 2 ℓ ( θ 0 ) ∂ θ 2 ] I(\theta_0) = - \mathbb{E}\left[\frac{\partial^2 \ell(\theta_0)}{\partial \theta^2}\right] I(θ0)=−E[∂θ2∂2ℓ(θ0)]
Fisher信息矩阵刻画了估计量的精度。
3. 渐近正态性与得分检验
在大样本条件下,得分函数 U ( θ ) U(\theta) U(θ) 和最大似然估计 θ ^ \hat{\theta} θ^ 之间有一种近似关系。具体地,得分函数可以用来检验原假设 H 0 : θ = θ 0 H_0: \theta = \theta_0 H0:θ=θ0 是否成立。
通过大样本的渐近理论,如果我们假设参数 θ \theta θ 在原假设 H 0 H_0 H0 下等于某个特定值 θ 0 \theta_0 θ0,则得分函数 U ( θ 0 ) U(\theta_0) U(θ0) 的分布近似为:
U ( θ 0 ) ∼ N ( 0 , I ( θ 0 ) ) U(\theta_0) \sim \mathcal{N}(0, I(\theta_0)) U(θ0)∼N(0,I(θ0))
换句话说,在原假设 H 0 H_0 H0 下,得分函数趋近于正态分布,均值为零,方差为Fisher信息矩阵的逆。
4. Score检验的构造与依据
Score检验的核心思想就是利用得分函数的这一渐近性质来进行假设检验。具体地,我们检验某个参数是否为特定值(如 θ 0 \theta_0 θ0)。在原假设 H 0 : θ = θ 0 H_0: \theta = \theta_0 H0:θ=θ0 下,得分函数的期望为零,且其方差由Fisher信息矩阵给出。因此,我们可以构造如下的检验统计量:
S = U ( θ ^ 0 ) T I ( θ ^ 0 ) − 1 U ( θ ^ 0 ) S = U(\hat{\theta}_0)^T I(\hat{\theta}_0)^{-1} U(\hat{\theta}_0) S=U(θ^0)TI(θ^0)−1U(θ^0)
在原假设 H 0 H_0 H0 下,统计量 S S S 服从卡方分布 χ k 2 \chi^2_k χk2(其中 k k k 是参数的维度),因此可以根据卡方分布进行假设检验。
为什么得分函数能用来判断?
-
得分函数的渐近零性:在原假设 H 0 H_0 H0 下,得分函数趋于零。通过计算得分函数的值,我们实际上在测试是否存在显著的偏离原假设。如果得分函数不接近零,那么原假设就可能被拒绝。
-
大样本近似正态性:得分函数在大样本下服从正态分布,均值为零,方差由Fisher信息矩阵控制。因此,得分函数的平方和标准化后(通过 Fisher信息矩阵)可以构成检验统计量,这个统计量在大样本下呈现卡方分布,从而可以用来做假设检验。
5. 总结
Score检验的依据是基于得分函数在大样本下的渐近分布特性:
- 得分函数反映了似然函数对参数变化的灵敏度。
- 在原假设下,得分函数的期望为零,并且其分布近似正态,标准化后服从卡方分布。
- 因此,Score检验通过得分函数与Fisher信息矩阵的组合,构造检验统计量,利用卡方分布来进行假设检验。
通过这一过程,Score检验能够有效地判断原假设是否成立,尤其适用于大样本的情形。
相关文章:
【返璞归真】score检验:似然比的得分检验(Likelihood Ratio Score Test)
Score检验(Score Test)是一种用于假设检验的方法,特别是在统计建模中,常用于估计模型参数时检验某个假设是否成立。它的全名是“似然比的得分检验”(Likelihood Ratio Score Test),通常用于大样…...
三维重建(六)——3D Representation Methods: A Survey(北大总结三维表征--2024.10出版)
文章目录 一、摘要二、引言2.1 研究焦点和发展历程三、3D表征3.1 体素网格3.2 点云3.3 网格3.4 符号距离函数(SDF)3.5 神经辐射场(NeRF)3.6 三维高斯溅射(3D Gaussian Splatting, 3DGS)3.7 混合方法3.7.1 深度步进四面体(Deep Marching Tetrahedra, DMTet)3.7.2 三平面…...

html基础-认识html
1.什么是html html是浏览器可以识别的的标记语言,我们在浏览器浏览的网页就是一个个的html文档 <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>认识html</title> </head> <body><h1…...

UE5 跟踪能力的简单小怪
A、思路 1、用素材的骨骼网格体创建小怪BP,绑定新的小怪控制器。 2、控制器的事件开始时,获取玩家状态,指定AI小怪自动向玩家移动。 复杂的AI需要用强大功能如黑板、行为树。 而简单的AI则可以用简单方法实现,杀鸡不用牛刀。视…...

Ubantu22系统安装Miniconda3
1、Anaconda和Miniconda异同 清华源镜像的Miniconda3和Anaconda都是用于管理Python环境和软件包的工具,但它们之间存在一些关键的不同之处。下面将分别介绍它们的特点以及使用清华源镜像的差异。 相同点: (1)功能相似:…...
130、java中在使用new ArrayList<>(),在参数中传入一个集合的作用
在Java中,当你使用new ArrayList<>()时,你正在创建一个新的ArrayList实例。如果你在其后跟一对尖括号,并在内部传入一个集合,那么这实际上是一个"初始容量"的概念。 例如,如果你有一个集合otherList&…...
Mybatis-plus-Join--分页查询
数据表四张: user: id,username,create_time,update_time product: id,name,price,number(库存),create_time,update_times order: id,quantity,order_time(下单时间),update_time order_detail:id,product_id,order_id,quant…...
对BG兼并点的理解-不断刷新版
常想常新,每次接触都有新理解,不确定想的是否正确,拿出来讨论,以最新结论为准 2024-9-19 1、仿真简并点时需要断开启动电路:启动电路会干扰DC结果的计算,可能看到加启动电路后简并点减少,但在…...

python的游标是什么
CURSOR(私有SQL 区)就是一个句柄,即指针或引用,指向sql私有区(一个用户的能打开的cursor数由参数open_cursors决定)【确切说,指向sql私有区里的固定部分(The persistentarea…...

硬件---14---PCB学习:PCB封装库及布局操作
一PCB封装元素的组成与介绍 二实例-贴片0603封装的创建 1封装命名 找不到封装库创建页面,可以配合右下角的Panels去找。 找到0603电阻或者电容的PCB封装,根据提供尺寸去设计PCB的封装。 <1>双击PCB器件封装 <2>命名 2放置焊盘ÿ…...
什么是MyBatis
MyBatis 简介 MyBatis 是一个流行的 Java 持久层框架(Persistence Framework),它主要用于简化数据库操作,提供了对数据库的映射支持,使得开发人员能够通过简单的配置和映射文件来执行数据库操作(如增、删、…...

开发技术-Java改变图片格式
图片上传页未做控制,导致上传的是GIF格式,导致图片识别失败。需要将GIF格式转为JPEG格式。 代码,是找AI写的,记录一下: import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; im…...

基于DockerCompose搭建Redis主从哨兵模式
linux目录结构 内网配置 哨兵配置文件如下,创建3个哨兵配置文件 # sentinel26379.conf sentinel26380.conf sentinel26381.conf 内容如下 protected-mode no sentinel monitor mymaster redis-master 6379 2 sentinel down-after-milliseconds mymaster 60000 s…...

aioice里面candidate固定UDP端口测试
环境: aioice0.9.0 问题描述: aioice里面candidate固定UDP端口测试 解决方案: /miniconda3/envs/nerfstream/lib/python3.10/site-packages/aioice import hashlib import ipaddress import random from typing import Optional import…...
Git使用教程-分支使用/合并分支提交
Git使用教程-分支使用 文章目录 Git使用教程-分支使用一、分支(branch)的基本操作:二、查看分支:参考 一、分支(branch)的基本操作: git clone https://.git git status …...
单元测试使用记录
什么是单元测试 简单来说就是对一个类中的方法进行测试,对输出的结果检查判断是否符合预期结果 但是在多年的工作中,从来没有哪个项目中真正系统的用到了单元测试,因此对它还是很陌生的,也就造成更加不会在项目中区使用它。 如何…...

LabVIEW实时信号采集与频谱分析
系统通过LabVIEW与PXIe硬件结合,实现高精度模拟信号的实时采集、频谱分析与可视化显示。核心功能包括采样率配置、快速傅里叶变换(FFT)、功率谱图生成及动态缩放调整,同时支持信号平均与噪声抑制。系统设计灵活,适用于…...

OpenCV(python)从入门到精通——运算操作
加法减法操作 import cv2 as cv import numpy as npx np.uint8([250]) y np.uint8([10])x_1 np.uint8([10]) y_1 np.uint8([20])# 加法,相加最大只能为255 print(cv.add(x,y))# 减法,相互减最小值只能为0 print(cv.subtract(x_1,y_1))图像加法 import cv2 as…...
基础2:值类型与右值引用
1.函数返回 在讲解右值之前,要知道下面这个函数要进行几次拷贝以及为什么? int get_x() {int x 20;return x; }int aget_x(); 答案:两次 # 第一次 int tmpa; # 第二次 int xtmp;2.左值与右值 🍏2.1 能取地址操作的就是左值 …...

GitHub年度报告发布!Python首次超越JavaScript
全球开发者数量激增,GenAI 项目呈爆炸式增长趋势,推动编程语言的应用格局也发生了巨大变化,最新的 GitHub Octoverse 报告来了! 1、Python 首次超越 JavaScript,成为 GitHub 平台最顶级编程语言 不同于流传“AI 即将取…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...

云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...

[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

网站指纹识别
网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...