自回归模型(AR )

最近看到一些模型使用了自回归方法,这里就学习一下整理一下相关内容方便以后查阅。

自回归模型(AR )

  • 自回归模型(AR )
    • AR 模型的引入
    • AR 模型的定义
    • 参数的估计方法
    • 模型阶数选择
    • 平稳性与因果性条件
    • 自相关与偏自相关函数
    • 优缺点总结
  • 自相关(Autocorrelation)与偏自相关(Partial Autocorrelation)
    • 基本概念与定义
      • 自相关函数(ACF)
        • 样本自相关系数
      • 偏自相关函数(PACF)
    • ACF与PACF图在模型识别中的作用
    • 工具与代码实现
  • 自回归移动平均模型(Autoregressive Moving Average Model,ARMA)
    • 基本概念与定义
      • 自回归(AR)模型
      • 移动平均(MA)模型
      • ARMA模型的定义
    • ARMA(p, q)模型的数学公式
  • 参考资料

自回归(Autoregression,简称AR)是一类广泛应用于时间序列分析和建模的统计模型。它的核心思想是将当前时刻的数据值表示为过去若干时刻数据值的线性组合,以及一个随机误差项。通过这种方式,自回归模型能够捕捉时间序列内部的自相关结构,从而实现对未来值的预测、对数据生成机制的理解,或对信号特征的建模。

自回归模型(AR )

AR 模型的引入

考虑如图所示的单摆系统。设 x t x_t xt 为第 t t t 次摆动过程中的摆幅。根据物理原理,第 t t t 次的摆幅 x t x_t xt 由前一次的摆幅 x t − 1 x_{t-1} xt1 决定,即有 x t = a 1 x t − 1 x_t=a_1x_{t-1} xt=a1xt1。考虑到空气振动的影响,我们往往假设
x t = a 1 x t − 1 + ε t , t ≥ 1 x_t=a_1x_{t-1}+\varepsilon_t,t\geq1 xt=a1xt1+εt,t1

其中,随机干扰 ε t ∼ N ( 0 , σ 2 ) ε_t \sim N(0, σ^2) εtN(0,σ2)

在这里插入图片描述

设初始时刻 x 0 = 1 x_0=1 x0=1,现在取不同的 a 1 a_1 a1 σ σ σ 值进行实验。实验结果如下图。

在这里插入图片描述
可以看出,参数 a 1 a_1 a1 对序列的稳定性起到决定性的作用,而噪声强度 σ 2 σ^2 σ2 决定了序列的波动程度。

在这里,我们称第一个公式为一阶自回归模型。更一般地,可以考虑序列值 x t x_t xt 可由前 p p p 个时刻的序列值及当前的噪声表出,即
x t = a 1 x t − 1 + a 2 x t − 2 + ⋯ + a p x t − p + ε t x_t=a_1x_{t-1}+a_2x_{t-2}+\cdots+a_px_{t-p}+\varepsilon_t xt=a1xt1+a2xt2++apxtp+εt

其中, a j a_j aj 为参数, ε t {ε_t} εt 为白噪声。

AR 模型的定义

如果 ε t \varepsilon_\mathrm{t} εt为白噪声,服从 N ( 0 , σ 2 ) N(0,\sigma^2) N(0,σ2) a 0 , a 1 , . . . , a p ( a p ≠ o ) \mathrm{a_0,a_1,...,a_p(a_p\neq o)} a0,a1,...,ap(ap=o)为实数,就称 p p p 阶差分方程
X t = a 0 + a 1 X t − 1 + a 2 X t − 2 + ⋯ + a p X t − p + ε t , t ∈ Z X_t=a_0+a_1X_{t-1}+a_2X_{t-2}+\cdots+a_pX_{t-p}+\varepsilon_t,t\in\mathbb{Z} Xt=a0+a1Xt1+a2Xt2++apXtp+εt,tZ

是一个 p p p 阶自回归模型,简称 A R ( p ) AR(p) AR(p) 模型,称 a = ( a 0 , a 1 , . . . , a p ) T \mathbf{a=(a_{0},a_{1},...,a_{p})^{T}} a=(a0,a1,...,ap)T A R ( p ) AR(p) AR(p) 模型中的自回归系数。满足上述 模型的时间序列 X t {X_t} Xt 称为 A R ( p ) AR(p) AR(p) 序列。

a 0 = 0 a_0=0 a0=0 时,称为零均值 A R ( p ) AR(p) AR(p) 序列,即
X t = a 1 X t − 1 + a 2 X t − 2 + ⋯ + a p X t − p + ε t , t ∈ Z X_t=a_1X_{t-1}+a_2X_{t-2}+\cdots+a_pX_{t-p}+\varepsilon_t,t\in\mathbb{Z} Xt=a1Xt1+a2Xt2++apXtp+εt,tZ

需要指出的是,对于 a 0 ≠ 0 a_0≠0 a0=0 的情况,我们可以通过零均值化的手段把一般的 A R ( p ) AR(p) AR(p) 序列变为零均值 A R ( p ) AR(p) AR(p) 序列。

参数的估计方法

要使用AR模型进行预测或分析,我们需要根据实际数据估计参数 ϕ 1 , ϕ 2 , … , ϕ p \phi_1, \phi_2, \dots, \phi_p ϕ1,ϕ2,,ϕp 和噪声项的方差 σ 2 \sigma^2 σ2。参数估计方法包括:

  • 最小二乘法(OLS):将 AR 模型视为线性回归模型,用 OLS 来估计参数。对于 AR§ 模型,可将 ( x t − 1 , x t − 2 , … , x t − p ) (x_{t-1}, x_{t-2}, \dots, x_{t-p}) (xt1,xt2,,xtp) 作为自变量, x t x_t xt 为因变量,构建线性方程组,求解参数。

  • 极大似然估计(MLE):在高斯噪声假设下,可采用MLE方法,通过最大化似然函数来得到参数估计。

  • Yule-Walker方程:Yule-Walker方程是基于自相关函数推导出的方程组,可以直接求解AR模型参数。这在理论研究和快速估计中非常有用。

模型阶数选择

确定 AR 模型的阶数 p p p 是实际应用中的一个关键步骤。过低的阶数可能无法充分捕捉序列的特征,过高的阶数又会导致过拟合和模型复杂度增加。常用的阶数选择标准包括:

  • 赤池信息准则(AIC) AIC = 2 k − 2 ln ⁡ ( L ) \text{AIC} = 2k - 2\ln(L) AIC=2k2ln(L),其中 k k k 是参数个数, L L L 为似然函数值。AIC倾向较复杂模型,但不宜过于简单。

  • 贝叶斯信息准则(BIC) BIC = ln ⁡ ( N ) k − 2 ln ⁡ ( L ) \text{BIC} = \ln(N)k - 2\ln(L) BIC=ln(N)k2ln(L),其中 N N N 为样本量。BIC惩罚项更大,倾向更简单的模型。

  • HQ准则(Hannan-Quinn):介于 AIC 和 BIC 之间的准则。

一般来说,通过对不同阶数的模型拟合并计算AIC、BIC、HQ等指标,选择使这些准则达到最低值的阶数作为最终模型的阶数。

平稳性与因果性条件

AR模型适用于平稳时间序列,因此研究 AR 模型时需要确保模型的平稳性。一个 A R ( p ) AR(p) AR(p) 模型的平稳性条件可以通过其特征方程来判断:
1 − ϕ 1 z − ϕ 2 z 2 − ⋯ − ϕ p z p = 0. 1 - \phi_1 z - \phi_2 z^2 - \cdots - \phi_p z^p = 0. 1ϕ1zϕ2z2ϕpzp=0.

如果该特征方程的根都落在单位圆之外(即绝对值大于1),那么该 A R ( p ) AR(p) AR(p) 模型是平稳的。平稳性保证了模型参数的统计性质和预测稳定性。如果时间序列不平稳,可对数据进行差分、去趋势或其他平稳化处理后再建模(这类模型可扩展为ARIMA模型)。

自相关与偏自相关函数

AR模型参数与时间序列的自相关特性密切相关。通过自相关函数(ACF)和偏自相关函数(PACF),我们可以获得有助于选择AR阶数的信息。

对于 A R ( p ) AR(p) AR(p) 模型,偏自相关函数在滞后阶数 p p p 处通常会出现截断,这为阶数选择提供了直观的参考。

优缺点总结

优点

  • 模型简单易懂,参数有明确的统计学含义。
  • 算法成熟,估计方法(OLS、MLE、Yule-Walker)简单且高效。
  • 对短期预测十分有效,在数据平稳且线性特征显著时表现良好。

缺点

  • 不适用于非线性序列,需要扩展方法或非线性模型来处理。
  • 对非平稳序列需预处理,否则无法保证参数估计的有效性。
  • 长期预测不如短期预测准确,对突发性、非线性、复杂行为的序列无能为力。

自相关(Autocorrelation)与偏自相关(Partial Autocorrelation)

自相关(Autocorrelation)与偏自相关(Partial Autocorrelation)是时间序列分析中的两个重要统计工具,用于刻画序列中不同时间点之间的相关关系结构。通过自相关和偏自相关函数(分别记为ACF与PACF),我们可以更清晰地了解序列的动态特性,并为模型阶数选择(如AR模型中的阶数 p p p)提供依据。

基本概念与定义

自相关函数(ACF)

自相关描述同一时间序列在不同时间滞后(lag)下的相关程度。对于一个离散时间序列 { x t } \{x_t\} {xt},其均值为 μ \mu μ,自相关可以定义为同一序列在时间间隔为 k k k (又称滞后数)的两个值之间的线性相关程度。

形式化定义:
γ ( k ) \gamma(k) γ(k) 为时间序列在滞后数为 k k k 时的协方差, γ ( 0 ) \gamma(0) γ(0) 为序列的方差,则自相关函数(Autocorrelation Function, ACF)为:
ρ ( k ) = γ ( k ) γ ( 0 ) = E [ ( x t − μ ) ( x t − k − μ ) ] E [ ( x t − μ ) 2 ] . \rho(k) = \frac{\gamma(k)}{\gamma(0)} = \frac{E[(x_t - \mu)(x_{t-k} - \mu)]}{E[(x_t-\mu)^2]}. ρ(k)=γ(0)γ(k)=E[(xtμ)2]E[(xtμ)(xtkμ)].

其中:

  • ρ ( k ) \rho(k) ρ(k) 为滞后 k k k 的自相关系数,取值范围为[-1, 1]。
  • ρ ( k ) \rho(k) ρ(k) 接近1或-1时,表示序列在滞后 k k k 处具有较强的正相关或负相关。
  • ρ ( k ) \rho(k) ρ(k) 接近0时,表示在滞后 k k k 处序列的值与过去的值几乎没有线性关系。

通过计算序列在不同滞后下的自相关,可以构建一组自相关系数,并将其作为自相关函数ACF对滞后数k绘制得到ACF图。

样本自相关系数

在实际应用中,由于未知总体参数,我们通常使用样本自相关系数来估计ACF:
ρ ^ ( k ) = ∑ t = k + 1 N ( x t − x ˉ ) ( x t − k − x ˉ ) ∑ t = 1 N ( x t − x ˉ ) 2 \hat{\rho}(k)=\frac{\sum_{t=k+1}^N(x_t-\bar{x})(x_{t-k}-\bar{x})}{\sum_{t=1}^N(x_t-\bar{x})^2} ρ^(k)=t=1N(xtxˉ)2t=k+1N(xtxˉ)(xtkxˉ)

x ‾ \overline{x} x是样本均值, N N N 是样本大小。

偏自相关函数(PACF)

偏自相关(Partial Autocorrelation)描述的是在考虑中间滞后项的影响后,两个时间点之间的“净”相关度。

偏自相关函数衡量的是在控制了中间所有滞后项的影响后,时间序列在滞后k处的直接相关性。也就是说,PACF α ( k ) α(k) α(k) 是在考虑了滞后1到滞后 k − 1 k−1 k1的影响后, x t x_t xt x t − k x_{t−k} xtk 之间的净相关性。
x t = β 0 + β 1 x t − 1 + β 2 x t − 2 + ⋯ + β k x t − k + ϵ t x_t=\beta_0+\beta_1x_{t-1}+\beta_2x_{t-2}+\cdots+\beta_kx_{t-k}+\epsilon_t xt=β0+β1xt1+β2xt2++βkxtk+ϵt

偏自相关函数 α ( k ) \alpha(k) α(k) 就是回归系数 β k \beta_{k} βk

ACF与PACF图在模型识别中的作用

在AR模型中,ACF与PACF图是选择模型阶数的重要视觉和理论依据。

  • 纯AR模型中的特征
    对于一个 A R ( p ) AR(p) AR(p) 模型:
    x t = ϕ 1 x t − 1 + ϕ 2 x t − 2 + ⋯ + ϕ p x t − p + ϵ t , x_t = \phi_1 x_{t-1} + \phi_2 x_{t-2} + \cdots + \phi_p x_{t-p} + \epsilon_t, xt=ϕ1xt1+ϕ2xt2++ϕpxtp+ϵt,

    • ACF图通常会表现为在前几个滞后可能较大(可能逐渐衰减)的自相关,然后在高阶滞后趋近于0。
    • PACF图对于 A R ( p ) AR(p) AR(p)模型有一个明显特征:从滞后p之后,偏自相关系数会快速趋近于0,而且在p阶截断。也就是说,偏自相关函数在滞后数超过p时通常不显著。
  • 纯MA模型中的特征
    若是一个 M A ( q ) MA(q) MA(q) 模型(非AR结构),则ACF在q阶后截断(即ACF在滞后q后接近0),而PACF表现为渐进衰减,不会像AR模型那样干净地截断。

  • ARMA模型中的特征
    对于混合模型 A R M A ( p , q ) ARMA(p,q) ARMA(p,q),ACF和PACF都不会出现干净的截断,而是呈现混合的渐进衰减特性。透过ACF和PACF的形态,可以尝试区分AR、MA及ARMA等模型结构。

通过观察ACF和PACF的截断与衰减模式,我们能够初步推断合适的模型类别与阶数。例如:

  • 如果PACF在p阶截断,而ACF渐进衰减,那么这可能是AR§模型。
  • 如果ACF在q阶截断,而PACF渐进衰减,那么这可能是MA(q)模型。
  • 如果两者都渐进衰减,那么可能是ARMA模型,需要更进一步检验。

工具与代码实现

  • 导入库并加载数据
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from statsmodels.graphics.tsaplots import plot_acf, plot_pacf
from statsmodels.tsa.arima_process import ArmaProcess

# 生成AR(1)模型的数据
np.random.seed(42)
phi = 0.6
ar = np.array([1, -phi])  # 注意符号
ma = np.array([1])        # MA部分
arma_process = ArmaProcess(ar, ma)
simulated_data = arma_process.generate_sample(nsample=100)
  • 绘制ACF和PACF图
fig, ax = plt.subplots(2, 1, figsize=(12,8))

# 绘制ACF图
plot_acf(simulated_data, lags=20, ax=ax[0])
ax[0].set_title('Autocorrelation Function (ACF)')

# 绘制PACF图
plot_pacf(simulated_data, lags=20, ax=ax[1], method='ywm')
ax[1].set_title('Partial Autocorrelation Function (PACF)')

plt.tight_layout()
plt.show()

在这里插入图片描述

自回归移动平均模型(Autoregressive Moving Average Model,ARMA)

自回归移动平均模型(Autoregressive Moving Average Model,简称ARMA) 是时间序列分析中一种经典且广泛应用的统计模型。它结合了**自回归(Autoregressive, AR)移动平均(Moving Average, MA)**两种模型的特点,用于描述和预测平稳时间序列数据。ARMA模型在经济学、金融学、气象学、工程学等多个领域都有着重要的应用。

基本概念与定义

自回归(AR)模型

自回归(Autoregressive, AR)模型 假设当前时间点的值是其前若干时间点值的线性组合,加上一个白噪声误差项。AR模型用于捕捉时间序列中的自相关性。

AR§模型 的数学表达式为:
x t = ϕ 1 x t − 1 + ϕ 2 x t − 2 + ⋯ + ϕ p x t − p + ϵ t x_t = \phi_1 x_{t-1} + \phi_2 x_{t-2} + \cdots + \phi_p x_{t-p} + \epsilon_t xt=ϕ1xt1+ϕ2xt2++ϕpxtp+ϵt

其中:

  • x t x_t xt 是时间序列在时刻 t t t 的值。
  • ϕ 1 , ϕ 2 , … , ϕ p \phi_1, \phi_2, \dots, \phi_p ϕ1,ϕ2,,ϕp 是自回归系数。
  • ϵ t \epsilon_t ϵt 是白噪声误差项,满足 E [ ϵ t ] = 0 E[\epsilon_t] = 0 E[ϵt]=0 Var ( ϵ t ) = σ 2 \text{Var}(\epsilon_t) = \sigma^2 Var(ϵt)=σ2

移动平均(MA)模型

移动平均(Moving Average, MA)模型 假设当前时间点的值是前若干时间点误差项的线性组合,加上一个当前的白噪声误差项。MA模型用于捕捉时间序列中的随机波动。

MA(q)模型 的数学表达式为:
x t = ϵ t + θ 1 ϵ t − 1 + θ 2 ϵ t − 2 + ⋯ + θ q ϵ t − q x_t = \epsilon_t + \theta_1 \epsilon_{t-1} + \theta_2 \epsilon_{t-2} + \cdots + \theta_q \epsilon_{t-q} xt=ϵt+θ1ϵt1+θ2ϵt2++θqϵtq

其中:

  • x t x_t xt 是时间序列在时刻 t t t 的值。
  • θ 1 , θ 2 , … , θ q \theta_1, \theta_2, \dots, \theta_q θ1,θ2,,θq 是移动平均系数。
  • ϵ t \epsilon_t ϵt 是白噪声误差项,满足 E [ ϵ t ] = 0 E[\epsilon_t] = 0 E[ϵt]=0 Var ( ϵ t ) = σ 2 \text{Var}(\epsilon_t) = \sigma^2 Var(ϵt)=σ2

ARMA模型的定义

自回归移动平均(Autoregressive Moving Average, ARMA)模型 结合了AR和MA模型的特点,用于描述具有自回归和移动平均特征的时间序列数据。

ARMA(p, q)模型 的数学表达式为:
x t = ϕ 1 x t − 1 + ϕ 2 x t − 2 + ⋯ + ϕ p x t − p + ϵ t + θ 1 ϵ t − 1 + θ 2 ϵ t − 2 + ⋯ + θ q ϵ t − q x_t = \phi_1 x_{t-1} + \phi_2 x_{t-2} + \cdots + \phi_p x_{t-p} + \epsilon_t + \theta_1 \epsilon_{t-1} + \theta_2 \epsilon_{t-2} + \cdots + \theta_q \epsilon_{t-q} xt=ϕ1xt1+ϕ2xt2++ϕpxtp+ϵt+θ1ϵt1+θ2ϵt2++θqϵtq

其中:

  • p p p 是自回归部分的阶数。
  • q q q 是移动平均部分的阶数。
  • ϕ i \phi_i ϕi θ j \theta_j θj 分别是AR和MA部分的系数。
  • ϵ t \epsilon_t ϵt 是白噪声误差项。

ARMA模型 适用于平稳时间序列数据,能够捕捉序列中的长期依赖性(通过AR部分)和短期波动性(通过MA部分)。

ARMA(p, q)模型的数学公式

综合AR和MA模型,ARMA(p, q) 模型的数学公式如下:
x t = ϕ 1 x t − 1 + ϕ 2 x t − 2 + ⋯ + ϕ p x t − p + ϵ t + θ 1 ϵ t − 1 + θ 2 ϵ t − 2 + ⋯ + θ q ϵ t − q x_t = \phi_1 x_{t-1} + \phi_2 x_{t-2} + \cdots + \phi_p x_{t-p} + \epsilon_t + \theta_1 \epsilon_{t-1} + \theta_2 \epsilon_{t-2} + \cdots + \theta_q \epsilon_{t-q} xt=ϕ1xt1+ϕ2xt2++ϕpxtp+ϵt+θ1ϵt1+θ2ϵt2++θqϵtq

可以将其表示为:
ϕ ( B ) x t = θ ( B ) ϵ t \phi(B) x_t = \theta(B) \epsilon_t ϕ(B)xt=θ(B)ϵt

其中:

  • ϕ ( B ) = 1 − ϕ 1 B − ϕ 2 B 2 − ⋯ − ϕ p B p \phi(B) = 1 - \phi_1 B - \phi_2 B^2 - \cdots - \phi_p B^p ϕ(B)=1ϕ1Bϕ2B2ϕpBp 是AR多项式。
  • θ ( B ) = 1 + θ 1 B + θ 2 B 2 + ⋯ + θ q B q \theta(B) = 1 + \theta_1 B + \theta_2 B^2 + \cdots + \theta_q B^q θ(B)=1+θ1B+θ2B2++θqBq 是MA多项式。
  • B B B 是滞后算子, B x t = x t − 1 B x_t = x_{t-1} Bxt=xt1

参考资料

自回归模型(AR )

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/930774.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

学习Python的笔记--面向对象-继承

1、概念 多个类之间的所属关系,即子类默认继承父类的所有属性和方法。 注:所有类默认继承object类,object类是顶级类或基类; 其他子类叫做派生类。 #父类A class A(object):def __init__(self):self.num1def info_print(self)…

2024数字科技生态大会 | 紫光展锐携手中国电信助力数字科技高质量发展

2024年12月3日至5日,中国电信2024数字科技生态大会在广州举行,通过主题峰会、多场分论坛、重要签约及合作发布等环节,与合作伙伴共绘数字科技发展新愿景。紫光展锐作为中国电信的战略合作伙伴受邀参会,全面呈现了技术、产品创新进…

基于STM32的智慧宿舍系统(DAY5)_光照传感器、MQ2、电流传感器、紫外线传感器

注意上述右图的配置需要根据我们实际所使用的通道来,239.5这个是采样时间,根据需要调整,然后我们打到DMA配置项,如下图 这个地方只有DMA模式需要调整,完成上述配置后我们就可以生成代码了,然后我们按照如下…

NDK编译(使用Android.mk)C/C++程序和库

1、编译可执行目标文件 1.1、编写源代码 源代码可以是c或cpp文件&#xff0c;但一定要包含main函数&#xff0c;否则会报错。例如&#xff1a; //test.c #include <stdio.h> int main() {printf("Hello,NDK!"); } 1.2 编写Android.mk文件 编写Android.mk文…

使用Excel 对S型曲线加减速算法进行仿真

项目场景&#xff1a; 项目场景&#xff1a;代码中写了S型加减速算法&#xff0c;相查看生成的加减速数组&#xff0c;直观的展示出来&#xff0c;USB通信一次64字节&#xff0c;对于我几个个32位的频率值不太方便&#xff0c;于是采用Excel进行仿真。 代码中如何生成S加减速曲…

SwiftUI 列表(或 Form)子项中的 Picker 引起导航无法跳转的原因及解决

概述 在 SwiftUI 的界面布局中&#xff0c;列表&#xff08;List&#xff09;和 Form 是我们秃头码农们司空见惯的选择。不过大家是否知道&#xff1a;如果将 Picker 之类的视图嵌入到列表或 Form 的子项中会导致导航操作无法被触发。 从上图可以看到&#xff1a;当在 List 的…

【Elasticsearch入门到落地】3、es与mysql的概念对比

接上篇《2、正向索引和倒排索引》 上一篇我们学习了什么是正向索引和倒排索引。本篇我们来学习Elasticsearch与Mysql的概念与区别。 一、文档 Elasticsearch是面向文档存储的&#xff0c;可以是数据库中的一条商品数据&#xff0c;一个订单信息。文档数据会被序列化为json格式…

云服务器部署upload-labs-docker(文件上传靶场)环境 以及相关报错问题

环境的搭建 准备&#xff1a;云服务器&#xff08;本地的linux服务器&#xff08;版本最好不要是老的不然不兼容docker&#xff09;&#xff09; f8x配置docker环境&#xff1a; https://github.com/ffffffff0x/f8x 一键配置 docker拉取file-labs靶场 https://github.com…

HAMR技术进入云存储市场!

2024年12月3日&#xff0c;Seagate宣布其Mozaic 3系列HAMR&#xff08;热辅助磁记录&#xff09;硬盘获得了来自一家领先云服务提供商&#xff08;可能AWS、Azure或Google Cloud其中之一&#xff09;以及其他高容量硬盘客户的资格认证。 Seagate的Mozaic 3技术通过引入热辅助磁…

【错误记录】Android Studio 开发环境内存占用过多 ( 记录内存使用情况 )

文章目录 一、报错信息二、AS 内存记录分析 一、报错信息 使用 Android Studio 一段时间后 , 内存爆了 , 占用了 10G 的内存 ; 二、AS 内存记录分析 AS 刚启动时 , 只占 2014M 内存 ; 编译运行程序后 , 内存变为 2800M 左右 ; 设置显示的运行程序对应的日志 , 占用内存 就会稳定…

BERT模型的实现

本文用 pytorch 实现一个BERT模型。 食用方法&#xff1a; 直接下载完整实现&#xff0c; 在自己本地跑一遍&#xff0c;保证不报错。先完成数据预处理阶段&#xff08;1-4&#xff09;的代码阅读&#xff0c;然后按照如下关键点的描述完成代码的实现。自己看着代码手写后续部…

VSCode GDB远程嵌入开发板调试

VSCode GDB远程嵌入式开发板调试 一、原理 嵌入式系统中一般在 PC端运行 gdb工具&#xff0c;源码也是在 PC端&#xff0c;源码对应的可执行文件放到开发板中运行。为此我们需要在开发板中运行 gdbserver&#xff0c;通过网络与 PC端的 gdb进行通信。因此要想在 PC上通过 gdb…

Hadoop3集群实战:从零开始的搭建之旅

目录 一、概念 1.1 Hadoop是什么 1.2 历史 1.3 三大发行版本&#xff08;了解&#xff09; 1.4 优势 1.5 组成&#x1f497; 1.6 HDFS架构 1.7 YARN架构 1.8 MapReduce概述 1.9 HDFS\YARN\MapReduce关系 二、环境准备 2.1 准备模版虚拟机 2.2 安装必要软件 2.3 安…

RK3568笔记0:环境搭建

第1章 安装NFS服务器 NFS可以让不同的机器、不同的操作系统之间彼此共享文件 服务器安装NFS sudo apt-get install nfs-kernel-server服务器创建一个共享目录 sudo mkdir -p /home/lmz/workspaces/shared_directory配置共享目录到服务器中的配置文件中 sudo vim /etc/export…

Linux socket编程

目录 基础概念端口和端口号Socket&#xff08;套接字&#xff09;UDP和TCP的概念 Socket编程实战socket的类型struct sockaddrstruct sockaddr_in网络字节序socket APITCP网络编程流程分析UDP Demo样例 other概念补充setsockopt函数心跳机制面向字节流与面向报文的理解 参考 基…

OBS学习

OBS简介 OBS是Open Broadcaster Software的简称&#xff0c;是一款开源&#xff0c;用于视频录制以及直播串流的软件&#xff0c;它支持Windows、Mac以及Linux操作系统。 OBS使用场景 使用OBS软件&#xff0c;可以借助单反、摄像机、无人机等摄影设备在电脑上直播。OBS可以把…

SQL Server:调用的目标发生了异常。(mscorlib)

我之前安装的SQL Server是2014版本&#xff0c;SSMS运行也很流畅&#xff0c;有一次有个同事让我链接云服务器SQL地址&#xff0c;直接报上图的错误&#xff0c;把我弄的一愣一愣的。 后面才发现&#xff0c;这是版本太低导致的&#xff0c;但是你如果使用Navicat是没有问题的…

dolphinScheduler 任务调度

#Using docker-compose to Start Server #下载&#xff1a;https://dlcdn.apache.org/dolphinscheduler/3.1.9/apache-dolphinscheduler-3.1.9-src.tar.gz $ DOLPHINSCHEDULER_VERSION3.1.9 $ tar -zxf apache-dolphinscheduler-"${DOLPHINSCHEDULER_VERSION}"-src.t…

“为您的家电穿上防震铠甲:优质电器缓冲器

在地震频发地区或日常生活中&#xff0c;确保家电的安全和稳定至关重要。为了防止地震、意外碰撞或其他外力对家电造成损害&#xff0c;采用优质的电器缓冲器就像是为家电穿上了一层坚固的“防震铠甲”。这不仅能够有效减少因震动导致的损坏风险&#xff0c;还能显著延长家电的…

Qlib上手学习记录

Qlib 是一个面向人工智能的量化投资平台&#xff0c;其目标是通过在量化投资中运用AI技术来发掘潜力、赋能研究并创造价值&#xff0c;从探索投资策略到实现产品化部署。该平台支持多种机器学习建模范式&#xff0c;包括有监督学习、市场动态建模以及强化学习等。 真的是走了很…