【读论文】Learning perturbations to explain time series predictions

文章目录

  • Abstract
  • 1. Introduction
  • 2. Background Work
  • 3. Method
  • 4. Experiments
    • 4.1 Hidden Markov model experiment
    • 4.2 MIMIC-III experiment
  • 5. Conclusion
  • References

  • 论文地址:Learning Perturbations to Explain Time Series Predictions
  • 代码地址:https://github.com/josephenguehard/time_interpret
  • 收录于:PMLR 2023
  • 引用格式【GB/T 7714】:Enguehard J. Learning perturbations to explain time series predictions[C]//International Conference on Machine Learning. PMLR, 2023: 9329-9342.

Abstract

解释“基于多变量时间序列数据的预测”的困难在于:不仅要处理多个特征,还要处理时间依赖性。而且根据时间信息的不同,相同的特征可能会对预测产生截然不同的影响。(在多变量时间序列预测上进行解释的难点)

以前的工作使用了基于扰动的显著性方法来解决这个问题,使用可训练的掩码来对输入进行扰动,以发现哪些特征在哪些时间驱动了模型的预测结果。然而,这类方法从静态数据的类似方法中得到启发,引入了固定的扰动,而在时间序列数据上似乎没有什么动机这样做。(原有方法存在的问题)

在这项工作中,我们的目标是通过不仅学习掩码,而且通过学习相关的扰动来解释预测。(本文的做法)

我们的经验表明,学习这些扰动显著提高了在时间序列数据上解释结果的质量。(效果)

1. Introduction

尽管目前已经提出了许多解释神经网络的方法,但在多元时间序列数据上的解释方法的研究还相对不足。然而,这种类型的数据在医疗领域尤其重要,其中的数据可以是带有时间戳的医疗事件列表或生命体征测量值。因此,对于这种时间因素的处理是至关重要的。

目前,针对多元时间序列数据的解释方法研究主要包括:

  • RETAIN1,这是一种基于注意力的模型,可以通过特征和时间来学习这种注意力;
  • FIT2,它通过量化预测分布的变化来估计特征随时间的重要性;
  • DynaMask3,将基于扰动的方法应用于多元时间序列。

在这项工作中,我们的目标是进一步改进基于扰动的解释方法,以使其适应于多变量时间序列数据。

在 Fong & Vedaldi (2017)4 和 Crabbé & Van Der Schaar (2021)3 等人的研究中,虽然掩码(mask)是可学习的,但这个掩码引起的扰动是固定的。例如,Fong & Vedaldi (2017)4 根据特征的掩码值用高斯模糊(特征周围数据的加权平均值)替换特征,掩码值越低,模糊量越高。Crabbé & Van Der Schaar (2021)3 也采用了这种方法,在时间上对数据进行高斯模糊。这种方法对于图像似乎是合理的,其中的信息可以被认为是局部的,这就解释了为什么卷积神经网络(cnn)具有有限的过滤器大小,但在这类数据上仍然表现得很好。然而,多变量时间序列可能具有长期依赖性,这使得使用时间高斯模糊作为扰动不那么明显。

我们可能不想用局部平均值替换被掩盖的特征,而是想用时间更远的数据来替换它。这就需要用可学习的扰动来代替固定的扰动

2. Background Work

在这一节中,作者介绍了 Fong & Vedaldi (2017)4 和 Crabbé & Van Der Schaar (2021)3 等人的研究。

3. Method

虽然 Crabbé & Van Der Schaar (2021) 提出的时间扰动是 Fong & Vedaldi (2017) 在计算机视觉环境中定义的扰动的适应,但这些扰动是固定的和局部的。它们实际上要么被定义为移动平均扰动,要么被定义为时间高斯模糊。然而,时间数据通常具有长期依赖性,因此局部信息可能不足以确定特定时间特征的重要性。

例如,时间数据可以包括重复的模式(周期性)。比如下面这个例子:
在这里插入图片描述
在上图中,第1张图为原始数据图像。假设我们的目标是评估第三个尖峰的重要性,这个尖峰很可能不重要,可能只有最后一个尖峰才重要。然而,使用高斯模糊(第2张图)或移动平均(第3张图)会显著改变输入,这可能导致解释方法错误地声明该峰值很重要。另一方面,我们学习到的扰动(第4张图)应该用另一个峰值替换解释的数据,导致输出的差异很小,因此正确地说明该数据不重要。

这种见解需要一个广义的扰动,它可以调整到我们要解释的数据。

第一个想法是通过优化类似于 a r g min ⁡ m ∈ [ 0 , 1 ] n λ ∣ ∣ m ∣ ∣ 1 + L ( f ( x ) , f ( Φ ( x , m ) ) ) arg\min_{m\in [0,1]^n} \lambda ||m||_1 + \mathcal{L}(f(x),f(\Phi(x,m))) argminm[0,1]nλ∣∣m1+L(f(x),f(Φ(x,m))) 的函数,直接学习这个扰动 Φ ( x ) \Phi(x) Φ(x) ,而不需要掩码。然而,这种方法存在的问题在于,它给了扰动模型太多的自由,会鼓励输出稀疏的解释。

因此我们需要约束扰动算子来解释输入数据的每一部分。我们从 Crabbé & Van Der Schaar (2021) 设计的扰动算子中获得灵感,这些扰动算子通常定义为 m × x + ( 1 − m ) × μ ( x ) m\times x + (1-m)\times \mu(x) m×x+(1m)×μ(x) ,其中, μ ( x ) \mu(x) μ(x) 定义了扰动的方式。

Crabbé & Van Der Schaar (2021) 设计的扰动算子:
Φ ( x , m ) t , i = { m t , i × x t , i + ( 1 − m t , i ) × μ t , i m t , i × x t , i + ( 1 − m t , i ) × μ t , i p ( 1 ) ∑ t ′ = 1 T x t ′ , i × g σ ( m t , i ) ( t − t ′ ) ∑ t ′ = 1 T g σ ( m t , i ) ( t − t ′ ) \Phi(x,m)_{t,i}=\begin{cases}m_{t,i} \times x_{t,i} + (1-m_{t,i})\times \mu_{t,i}\\m_{t,i} \times x_{t,i} + (1-m_{t,i})\times \mu^p_{t,i} \quad\quad\quad\quad\quad (1)\\\frac{\sum^T_{t'=1} x_{t',i} \times g_{\sigma(m_{t,i})}(t-t')}{\sum^T_{t'=1}g_{\sigma(m_{t,i})}(t-t')}\end{cases} Φ(x,m)t,i= mt,i×xt,i+(1mt,i)×μt,imt,i×xt,i+(1mt,i)×μt,ip(1)t=1Tgσ(mt,i)(tt)t=1Txt,i×gσ(mt,i)(tt)
其中,

μ t , i \mu_{t,i} μt,i x : , i x_{:,i} x:,i 在时间 t t t 前后 W W W 时间窗口上的平均值。即:
μ t , i = 1 2 W + 1 ∑ t − W t + W x t ′ , i ( 2 ) \mu_{t,i}=\frac{1}{2W+1}\sum^{t+W}_{t-W}x_{t',i} \quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad (2) μt,i=2W+11tWt+Wxt,i(2)
μ t , i p \mu^p_{t,i} μt,ip x : , i x_{:,i} x:,i 在时间 t t t W W W 时间窗口上的平均值。即:
μ t , i p = 1 W + 1 ∑ t − W t x t ′ , i ( 3 ) \mu^p_{t,i}=\frac{1}{W+1}\sum^{t}_{t-W}x_{t',i} \quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad (3) μt,ip=W+11tWtxt,i(3)
g σ ( m t , i ) ( t ) g_{\sigma(m_{t,i})}(t) gσ(mt,i)(t) 是时间高斯模糊,其计算方式为:
g σ ( m t , i ) ( t ) = e x p ( − t 2 2 σ 2 ) ; σ ( m ) = σ m a x ( 1 − m ) ( 4 ) g_{\sigma(m_{t,i})}(t)=exp(-\frac{t^2}{2\sigma ^2}); \sigma(m)=\sigma_{max}(1-m) \quad\quad\quad\quad\quad (4) gσ(mt,i)(t)=exp(2σ2t2);σ(m)=σmax(1m)(4)

在这项工作中,我们提出用神经网络 (NN) 来代替上述这些固定的扰动函数 (1)(2)(3),并结合掩码来进行训练。因此,我们的扰动定义为:
Φ ( x , m ) = m × x + ( 1 − m ) × N N ( x ) ( 5 ) \Phi(x,m)=m\times x + (1-m)\times NN(x) \quad\quad\quad\quad\quad\quad\quad\quad\quad (5) Φ(x,m)=m×x+(1m)×NN(x)(5)
其中, 0 ⩽ m ⩽ 1 0\leqslant m \leqslant 1 0m1

在实践中,我们将模型 N N ( x ) NN(x) NN(x) 定义为 x t , i , t ∈ { 1 , . . . , T } x_{t,i},t\in \{1,...,T\} xt,i,t{1,...,T} 的加权和,因此我们选择双向GRU模型5来定义这个神经网络。

在实验中,我们还将双向GRU模型和单向GRU模型进行了对比,单向GRU模型的效果更接近于 Crabbé & Van Der Schaar (2021) 中的 μ t , i p \mu^p_{t,i} μt,ip

和 Crabbé & Van Der Schaar (2021) 类似,我们旨在掩盖尽可能多的数据,同时保持与原始数据尽可能接近的预测。因此,我们的优化目标为:
a r g min ⁡ m , Θ ∈ N N λ ∣ ∣ m ∣ ∣ 1 + L ( f ( x ) , f ( Φ ( x , m ) ) ( 6 ) arg\min_{m,\Theta\in NN}\lambda ||m||_1 + \mathcal{L}(f(x),f(\Phi(x,m)) \quad\quad\quad\quad\quad\quad\quad\quad\quad (6) argm,ΘNNminλ∣∣m1+L(f(x),f(Φ(x,m))(6)
其中, Θ \Theta Θ 表示神经网络的参数, L \mathcal{L} L 表示原始预测与扰动预测之间的损失(在分类任务中可以是交叉熵,回归任务中可以是均方误差)。

这个目标函数存在的一个问题是,神经网络可能会倾向于生成更接近于 x x x 的扰动结果 N N ( x ) NN(x) NN(x) 。如果 m = 0 m=0 m=0 ,则 Φ ( x , m ) ≈ x \Phi(x,m) \approx x Φ(x,m)x (几乎没有进行扰动),此时目标函数(6)的取值趋近于0。为了防止这种行为,我们将公式(6)修改为:
a r g min ⁡ m , Θ ∈ N N λ 1 ∣ ∣ m ∣ ∣ 1 + λ 2 ∣ ∣ N N ( x ) ∣ ∣ 1 + L ( f ( x ) , f ( Φ ( x , m ) ) ( 7 ) arg\min_{m,\Theta\in NN}\lambda_1 ||m||_1 + \lambda_2 ||NN(x)||_1 + \mathcal{L}(f(x),f(\Phi(x,m)) \quad\quad (7) argm,ΘNNminλ1∣∣m1+λ2∣∣NN(x)1+L(f(x),f(Φ(x,m))(7)
在公式(7)中,我们设置了两个正则化项: ∣ ∣ m ∣ ∣ 1 ||m||_1 ∣∣m1 ∣ ∣ N N ( x ) ∣ ∣ 1 ||NN(x)||_1 ∣∣NN(x)1 。结合扰动公式 Φ ( x , m ) = m × x + ( 1 − m ) × N N ( x ) \Phi(x,m)=m\times x + (1-m)\times NN(x) Φ(x,m)=m×x+(1m)×NN(x) 可以看出:

  • m m m 越小, Φ ( x , m ) \Phi(x,m) Φ(x,m) 生成的扰动样本越接近于 N N ( x ) NN(x) NN(x) ,即正则化项 ∣ ∣ m ∣ ∣ 1 ||m||_1 ∣∣m1 诱导 Φ ( x , m ) \Phi(x,m) Φ(x,m) 生成的扰动样本接近于 N N ( x ) NN(x) NN(x)
  • N N ( x ) NN(x) NN(x) 越小, Φ ( x , m ) \Phi(x,m) Φ(x,m) 生成的扰动样本越接近于0(无信息),即正则化项 ∣ ∣ N N ( x ) ∣ ∣ 1 ||NN(x)||_1 ∣∣NN(x)1 诱导 Φ ( x , m ) \Phi(x,m) Φ(x,m) 生成的扰动样本接近于0(无信息);
  • 而公式(7)中的损失函数 L \mathcal{L} L 则诱导 f ( Φ ( x , m ) f(\Phi(x,m) f(Φ(x,m) f ( x ) f(x) f(x) 尽可能接近。

三者相互制约。

4. Experiments

作者在两个数据集上进行了实验:使用隐马尔可夫模型生成的合成数据集3 和 真实数据集MIMIC-III6

4.1 Hidden Markov model experiment

作者按照 Crabbé & Van Der Schaar (2021) 的做法,使用2状态隐马尔可夫模型生成1000个时间序列(具体做法可参考 Crabbé & Van Der Schaar (2021) 论文细节3),并训练一个单层GRU模型来根据 x t x_t xt 预测对应的 y t y_t yt

当知道该数据集的真实显著特征时,可以通过比较每种方法产生的显著特征与基础事实之间的相似性来评估我们的解释方法。和 Crabbé & Van Der Schaar (2021) 的做法相同,作者也使用了精确率曲线下面积 (AUP)、召回率曲线下面积 (AUR)、信息量 ( I M ( A ) I_M(A) IM(A)) 和 掩码熵 ( S M ( A ) S_M(A) SM(A)) 来作为评估指标。表1是实验结果。
在这里插入图片描述
实验结果表明,尽管我们的方法在AUP方面的表现略低于一些基线,但在其他指标上,它的表现明显优于所有其他方法。特别是,虽然它在AUP方面略优于DynaMask,但它在AUR、信息量和掩码熵方面明显产生了更好的结果。

此外,作者还对比了 λ 1 \lambda_1 λ1 λ 2 \lambda_2 λ2 的不同取值对实验结果的影响:
在这里插入图片描述
从实验结果中可以看出,

  • λ 1 \lambda_1 λ1 接近于1时才能产生较好的实验效果。事实上, λ 1 \lambda_1 λ1 较小时意味着较低的正则化,因此会保留很多不重要的特征;而当 λ 1 \lambda_1 λ1 较大时则会迫使 m m m 接近于0,从而导致大多数的特征被认为不重要。
  • 此外, λ 2 \lambda_2 λ2 需要至少为1才能迫使 N N ( x ) NN(x) NN(x) 学习到无信息的扰动。

4.2 MIMIC-III experiment

和 Crabbé & Van Der Schaar (2021) 的实验类似,作者在真实数据集 MIMIC-III 上对本文提出的解释方法进行了评估。

MIMIC-III 由重症监护病房(ICU)的患者组成,定期测量一些生命体征和实验室检查结果。这里的任务是根据48小时的数据预测每个病人的住院死亡率,每小时离散。缺失的值是使用以前可用的值来输入的。如果没有先前的特征,则输入标准值。

我们训练了一个隐藏层大小为200的单层GRU模型来预测这个住院死亡率(分类任务),我们的目标是解释这个模型。在这个数据集中,真正的显著特征是未知的,我们需要提供不同的指标来评估我们的方法。

评估方式为:将原始预测 与 特定比例的显著特征被掩盖之后的预测 进行了比较,这里用数据样本 对应特征时间维度上的平均值 来 替换被掩盖的特征,即 x ‾ t , i = 1 T ∑ t x t , i \overline{x}_{t,i} = \frac{1}{T}\sum_t x_{t,i} xt,i=T1txt,i ,其中, T = 48 T=48 T=48(小时)。在这里用到的评估指标有:

  • Accuracy (Acc) 准确率:我们屏蔽最显著的特征,并使用这些被屏蔽的数据计算结果的准确性。较低的准确率意味着做出准确预测的重要特征被删除了。因此,这个度量越低越好。
  • Cross-Entropy (CE) 交叉熵损失:我们掩盖最显著的特征,并计算用这些被掩盖的数据与原始数据做出的预测之间的交叉熵。数值越高,表明预测变化越显著,重要特征被删除。因此,这个度量越高越好。
  • Comprehensiveness (Comp) 综合性:我们掩盖最显著的特征,并计算预测类概率与原始类概率相比的平均变化。这个度量越高越好。
  • Sufficiency (Suff) 充分性:我们只保留最显著的特征,计算预测类概率相对于原始类概率的平均变化。这个指标越低越好。

作者在 表4(屏蔽了前20%最显著的数据,并将数据替换为对应特征时间维度上的平均值 x ‾ t , i = 1 T ∑ t x t , i \overline{x}_{t,i} = \frac{1}{T}\sum_t x_{t,i} xt,i=T1txt,i)和 表5(屏蔽了前20%最显著的数据,并将数据替换为对应特征时间维度上的平均值 x ‾ t , i = 0 \overline{x}_{t,i} = 0 xt,i=0)中报告了实验结果:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
实验结果表明,我们的方法在每个指标上都明显优于其他方法,无论是使用随时间的平均值还是使用零作为屏蔽数据。这也表明,在解释多元时间序列数据的预测时,使用学习扰动比使用固定扰动更可取。

作者还对比了不同扰动模型的实验效果:

(1)用每个特征随时间的总体平均值替换20%的数据:
在这里插入图片描述
(2)用零替换20%的数据:
在这里插入图片描述

5. Conclusion

我们的研究结果表明,与现有的方法(包括具有固定扰动的DynaMask方法)相比,使用学习扰动可以产生更好的解释。我们还研究了神经网络对扰动建模的选择,发现在MIMIC-III的住院死亡率任务上,单向GRU比双向GRU效果更好,更稳定。

References


  1. Choi, E., Bahadori, M. T., Sun, J., Kulas, J., Schuetz, A., and Stewart, W. Retain: An interpretable predictive model for healthcare using reverse time attention mechanism. Advances in neural information processing systems, 29, 2016. ↩︎

  2. Tonekaboni, S., Joshi, S., Campbell, K., Duvenaud, D. K., and Goldenberg, A. What went wrong and when?instance-wise feature importance for time-series black box models. Advances in Neural Information Processing Systems, 33:799–809, 2020. ↩︎

  3. Crabbé J, Van Der Schaar M. Explaining time series predictions with dynamic masks[C]//International Conference on Machine Learning. PMLR, 2021: 2166-2177. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  4. Fong, R. C. and Vedaldi, A. Interpretable explanations of black boxes by meaningful perturbation. In Proceedings of the IEEE international conference on computer vision, pp. 3429–3437, 2017. ↩︎ ↩︎ ↩︎

  5. Cho K, van Merriënboer B, Bahdanau D, et al. On the Properties of Neural Machine Translation: Encoder–Decoder Approaches[J]. Syntax, Semantics and Structure in Statistical Translation, 2014: 103. ↩︎

  6. Johnson, A. E., Pollard, T. J., Shen, L., Lehman, L.-w. H., Feng, M., Ghassemi, M., Moody, B., Szolovits, P., Anthony Celi, L., and Mark, R. G. Mimic-iii, a freely accessible critical care database. Scientific data, 3(1):1–9, 2016. ↩︎

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

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

相关文章

网络编程(TCP协议,UDP协议)

目录 网络编程三要素 IP IPv4 InetAddress类 端口号 协议 UDP协议 UDP协议发送数据 UDP协议接收数据 UDP的三种通信方式(代码实现) TCP协议 TCP通信程序 三次握手和四次挥手 练习 1、客户端:多次发送数据服务器:接收多次接收数据,并打印 2、客户端…

linux分区

挂载只改变数据存储的分区位置,不改变文件系统的目录结构,无论怎么挂载linux系统的分区仍然是/根分区和其子目录/opt、/etc、/home等等 临时挂载 添加新磁盘模拟新设备接入,无论使用什么虚拟机都可以 重启电脑reboot,执行lsblk&a…

Vitis Accelerated Libraries 学习笔记--Vision 库介绍

目录 1. 简介 2. 分类介绍 2.1 图像容器 2.2 图像处理基础 2.3 图像滤波和平滑 2.4 图像变换和增强 2.5 图像分析和特征检测 2.6 数学和算术操作 2.7 图像校正和优化 2.8 颜色和阈值处理 2.9 高级图像处理 2.10 光流和运动估计 2.11 图像转换和映射 2.12 其他特殊…

Docker容器基础知识,即linux日常运维命令

Docker 是一个流行的用 Go 语言开发的开源项目,基于Linux内核的cgroup、namespace及 AUFS 等技术,对进程进行封装隔离,由 Dotcloud 公司开发。Docker已成为容器行业的事实标准。 小陈发现一个有趣的事情,容器的英文是Container&am…

Python 修炼|人人编程手册|001 计算思维

在微信中阅读,关注公众号:CodeFit。 > 创作不易,如果你觉得这篇文章对您有帮助,请不要忘了 点赞、分享 和 关注,为我的 持续创作 提供 动力! 1. 计算思维 在我们正式开启 Python 修炼之旅前,先来了解一个关键的概念 —— 计算思维。 计算思维,其核心本质在于 抽象 …

【MATLAB源码-第229期】基于matlab的有源功率因数校正仿真,采用PI调节改善功率因数;改善后达到99%.

操作环境: MATLAB 2022a 1、算法描述 一、整体结构概述 有源功率因数校正(APFC)是一种用于提高电力系统功率因数的技术,通过控制电流的波形,使其与电压的波形保持一致,从而减少无功功率的产生&#xff…

[【机器学习】深度概率模型(DPM)原理和文本分类实践

1.引言 1.1.DPM模型简介 深度概率模型(Deep Probabilistic Models) 是结合了深度学习和概率论的一类模型。这类模型通过使用深度学习架构(如神经网络)来构建复杂的概率分布,从而能够处理不确定性并进行预测。深度概率…

【C++进阶学习】第三弹——菱形继承和虚拟继承——菱形继承的二义性和数据冗余问题

继承(上):【C进阶学习】第一弹——继承(上)——探索代码复用的乐趣-CSDN博客 继承(下):【C进阶学习】第二弹——继承(下)——挖掘继承深处的奥秘-CSDN博客 …

大数据经典sql

一、连续登录问题 问题:1)、每个用户连续登录最大天数 2)、连续登录大于三天的用户数 分析:本质都是计算用户连续登录天数 方案一:利用排序窗口 select a.user_id,a.date_rslt,count(1) as cnt from (select t.…

艺术创作加速器:三款AI绘画软件,让你的工作效率倍增!

在数字化浪潮的推动下,艺术创作正迎来革命性的变化。AI绘画软件的出现,不仅为艺术家提供了全新的创作工具,也为艺术爱好者开辟了一片创意的新天地。这些软件利用人工智能技术,根据用户的简单描述或草图,快速生成独特的…

旋转式滚珠花键在自动装载机中的作用!

自动装载机是一种广泛用于公路、铁路、建筑、水电、港口、矿山等建设工程的土石方施工机械,是工程建设中土石方施工的主要机种之一。而旋转式滚珠花键作为自动装载机中重要的传动元件,在自动装载机的运用起着重要的作用。 自动装载机主要用于铲装土壤、砂…

常见的结构型设计模式

设计模式(二) 常见的结构型模式 1.代理模式: 提供一种代理方法 ,来控制对其他对象的访问。在有些情况下,一个对象不能或者不适合直接访问另一个对象,而代理对象可以在这两个类之间起一个中介的作用。 举例&#xf…

Solana链,什么是sol跟单机器人、pump跟单机器人、sol狙击机器人、sol夹子机器人、sol聪明钱筛选

Solana Sol跟单机器人🤖 SOL跟单机器人(Copy Trading Bot)是一种自动化交易工具,允许用户复制其他成功交易者的交易行为。这种机器人通常用于加密货币市场、外汇市场等金融市场。以下是SOL跟单机器人的一些关键特性和功能&#xf…

yolov10--C#接口

一、前言 本章主要讲解yolov10的C#接口,主要是使用微软开发的openvinocsharp工具加载yolov10模型,并做推理。 二、yolov10模型转换 这里为了演示,使用官方yolov10m模型(其他大小的模型同理)做演示,可从下方…

iptables(5)常用扩展模块

简介 之前我们已经介绍过扩展模块的简单使用,比如使用-m tcp/udp ,-m multiport参数通过--dports,--sports可以设置连续和非连续的端口范围。那么我们如何匹配其他的一些参数呢,比如源地址范围,目的地址范围,时间范围等,这就是我们这篇文章介绍的内容。 iprange扩展模块…

Ubuntu系统下修改网卡IP地址

Ubuntu系统下修改网卡IP地址 一、Ubuntu系统介绍1.1 Ubuntu简介1.2 Ubuntu网络配置方式 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、检查本地环境3.1 检查本地操作系统版本3.2 检查系统内核版本 四、配置网卡IP地址4.1 备份网卡配置文件4.2 查看当前IP地址4.3 修改…

0.15元1.5Mhz-1.3A同步整流BUCK降压DCDC芯片MT3410(MT3410LB)

前言 国产同步整流DCDC,参考价格约0.15元。 特征 高效率:高达 96% 1.5MHz恒定频率操作 1.3A 输出电流 无需肖特基二极管 2.3V至7V输入电压范围 输出电压低至 0.6V PFM 模式可在轻负载下实现高效率 压差操作中的100%占空比 低静态电流:35μ…

刘亦菲新剧玫瑰的故事

刘亦菲新剧《玫瑰的故事》:开放结局,无限遐想 当刘亦菲再次踏入荧屏,与导演汪俊携手打造的《玫瑰的故事》便引发了无数观众的期待与关注。这部剧不仅汇聚了众多实力派演员,更以其独特的剧情和精致的制作成为了近期热门的话题。《…

(项目实战)RocketMQ5.0延迟消息在聚合支付系统中的应用

1 基于业务场景掌握RocketMQ5.0 本篇文章主要结合聚合支付系统中的业务场景来落地RocketMQ中间件的应用,聚合支付系统主要在支付系统超时订单和商户支付结果异步通知场景中会使用到RocketMQ消息中间件。本文使用到了RocketMQ中的延迟消息知识点,RocketM…

JavaScript知识点大总结来了-------这一篇就足够啦!!!

JavaScript基础知识 一、对象的使用 1、创建对象 这里创建对象的方法我们采用最常用的一种&#xff1a; //第一种 <script>var Person {name: "zhangsan",age: "19",weight: "140",hight: "170",print:function(){console.…