【博士每天一篇文献-算法】Memory aware synapses_ Learning what (not) to forget

阅读时间:2023-12-13

1 介绍

年份:2018
作者:Rahaf Aljundi,丰田汽车欧洲公司研究员;阿卜杜拉国王科技大学(KAUST)助理教授;Marcus Rohrbach德国达姆施塔特工业大学多模式可靠人工智能教授
会议: Proceedings of the European conference on computer vision (ECCV)
引用量:1416
代码:https://github.com/wannabeOG/MAS-PyTorch
https://github.com/rahafaljundi/MAS-Memory-Aware-Synapses
Aljundi R, Babiloni F, Elhoseiny M, et al. Memory aware synapses: Learning what (not) to forget[C]//Proceedings of the European conference on computer vision (ECCV). 2018: 139-154.

image.png
鉴于模型容量有限而新信息无限,知识需要被选择性地保留或抹去。提出了一种新的方法,称为“记忆感知突触”(Memory Aware Synapses, MAS),该算法不仅以在线方式计算网络参数的重要性,而且以无监督的方式适应网络测试的数据。当学习新任务时,对重要参数的更改可以受到惩罚,有效防止与以前任务相关的知识被覆盖。构建了一个能够适应权重重要性的持续系统,以系统需要记住的内容。我们的方法需要恒定的内存量,并具有我们上面列出的主要期望的终身学习特性,同时实现了最先进的性能。

2 创新点

  1. 记忆感知突触(MAS)方法:提出了一种新的终身学习方法,能够选择性地保留或抹去知识,以适应不断变化的学习任务和有限的模型容量。
  2. 无监督在线参数重要性评估:MAS能够在没有标签数据的情况下,在线地评估神经网络参数的重要性,这一点与传统的依赖于损失函数的方法不同。
  3. 基于输出函数敏感性的权重调整:MAS通过评估输出函数对参数变化的敏感性来计算参数的重要性,而不是依赖于损失函数的梯度,这避免了在损失函数局部最小值处梯度接近零的问题。
  4. 与Hebb学习规则的联系:展示了MAS方法与Hebb学习规则之间的联系,这是一种解释突触可塑性的生物学理论,表明MAS具有生物学上的合理性。
  5. 适应性权重更新:MAS能够根据未标记的测试数据更新参数的重要性权重,使得模型能够适应特定的测试条件和上下文。
  6. 实验验证:在多个任务和数据集上进行了实验验证,包括对象识别任务和学习预测<主体,谓语,对象>三元组的任务,证明了MAS方法的有效性。
  7. 性能提升:在标准终身学习设置和特定测试条件下,MAS都展现出了优于现有技术的性能,尤其是在减少灾难性遗忘方面。
  8. 内存效率:MAS方法在保持性能的同时,具有较低的内存消耗,这对于资源受限的应用场景尤为重要。
  9. 灵活性和通用性:MAS不仅限于特定的任务或数据类型,能够广泛应用于各种终身学习的场景。

3 相关研究

3.1 基于数据的方法

  1. Aljundi R, Chakravarty P, Tuytelaars T. Expert gate: Lifelong learning with a network of experts[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2017: 3366-3375.
  2. Li Z, Hoiem D. Learning without forgetting[J]. IEEE transactions on pattern analysis and machine intelligence, 2017, 40(12): 2935-2947.
  3. Rannen A, Aljundi R, Blaschko M B, et al. Encoder based lifelong learning[C]//Proceedings of the IEEE international conference on computer vision. 2017: 1320-1328.
  4. Shmelkov K, Schmid C, Alahari K. Incremental learning of object detectors without catastrophic forgetting[C]//Proceedings of the IEEE international conference on computer vision. 2017: 3400-3409.

3.2 基于模型的方法

  1. Fernando C, Banarse D, Blundell C, et al. Pathnet: Evolution channels gradient descent in super neural networks[J]. arXiv preprint arXiv:1701.08734, 2017.
  2. Lee S W, Kim J H, Jun J, et al. Overcoming catastrophic forgetting by incremental moment matching[J]. Advances in neural information processing systems, 2017, 30.
  3. Zenke F, Poole B, Ganguli S. Continual learning through synaptic intelligence[C]//International conference on machine learning. PMLR, 2017: 3987-3995.(和本文相似)
  4. Kirkpatrick J, Pascanu R, Rabinowitz N, et al. Overcoming catastrophic forgetting in neural networks[J]. Proceedings of the national academy of sciences, 2017, 114(13): 3521-3526.(和本文相似)

但是这些方法有缺点:
(1)EWC基于Fisher信息矩阵对角线的近似来估计参数的重要性,这可能不完全准确反映参数的真实重要性。
(2)EWC为每个先前任务使用单独的惩罚项,这在实际应用中可能计算量大且不可行,因此需要对惩罚项进行简化。
(3)SI在新任务训练期间以在线方式估计重要性权重,依赖于批量梯度下降中的权重变化,这可能会高估权重的重要性。
(4)SI算法当从预训练网络开始学习时,一些权重可能在使用中没有大的变化,导致它们的重要性被低估。
(5)SI在训练过程中计算重要性权重,并在训练结束后固定这些权重,这限制了模型对测试数据的适应性。

4 算法

(1)MAS全局版本

  1. 参数重要性估计
  • 对于数据点 x k x_k xk,计算网络输出函数 F ( x k ; θ ) F(x_k; \theta) F(xk;θ) 对参数 θ i j \theta_{ij} θij 的梯度 g i j ( x k ) = ∂ F ( x k ; θ ) ∂ θ i j g_{ij}(x_k) = \frac{\partial F(x_k; \theta)}{\partial \theta_{ij}} gij(xk)=θijF(xk;θ)
  • 为了简化计算,使用平方 ℓ2 范数的梯度:
    g i j ( x k ) = ∂ [ ∣ ∣ F ( x k ; θ ) ∣ ∣ 2 2 ] ∂ θ i j g_{ij}(x_k) = \frac{\partial [|| F(x_k; \theta) ||_2^2]}{\partial \theta_{ij}} gij(xk)=θij[∣∣F(xk;θ)22]
  1. 累积梯度以计算重要性权重
  • 使用公式计算参数 θ i j \theta_{ij} θij 的重要性权重:

Ω i j = 1 N ∑ k = 1 N ∣ ∣ g i j ( x k ) ∣ ∣ \Omega_{ij} = \frac{1}{N} \sum_{k=1}^{N} || g_{ij}(x_k) || Ωij=N1k=1N∣∣gij(xk)∣∣
4. 学习新任务时的正则化

  • 新任务损失函数 L ( θ ) L(\theta) L(θ) 包括正则化项,正则化项事是惩罚了对之前任务重要参数 θ i j ∗ \theta_{ij}^* θij的改变。
    L ( θ ) = L n ( θ ) + λ ∑ i , j Ω i j ( θ i j − θ i j ∗ ) 2 L(\theta) = L_n(\theta) + \lambda \sum_{i,j} \Omega_{ij} (\theta_{ij} - \theta_{ij}^*)2 L(θ)=Ln(θ)+λi,jΩij(θijθij)2
    其中 λ \lambda λ 是正则化系数, θ i j ∗ \theta_{ij}^* θij 是先前任务中确定的“旧”网络参数。
  1. 更新重要性权重
  • 训练新任务后,根据之前计算的 Ω \Omega Ω 更新重要性矩阵 Ω \Omega Ω

(2)MAS局部版本
局部版本的MAS方法不是考虑整个网络学习到的函数F,而是将其分解为一系列对应于网络每层的函数Fl。通过局部地保留每层给定其输入的输出,可以保留全局函数F。
其中参数重要性可以通过神经元激活的相关性来衡量:
Ω i j = 1 N ∑ k = 1 N y i k ⋅ y j k \Omega{ij} = \frac{1}{N} \sum_{k=1}^{N} y_{i}^k \cdot y_{j}^k Ωij=N1k=1Nyikyjk
对于 ReLU 激活函数,简化为:
g i j ( x k ) = 2 ⋅ y i k ⋅ y j k g_{ij}(x_k) = 2 \cdot y_{i}^k \cdot y_{j}^k gij(xk)=2yikyjk
其中 y i k y_{i}^k yik y j k y_{j}^k yjk分别是输入 x k x_k xk对应的第i个和第j个神经元的激活值。
(3优缺点:
全局MAS方法
优点:

  1. 全面性:全局MAS考虑整个网络学习到的函数,从而评估参数对整体性能的影响,这有助于捕捉不同层级之间的相互作用。
  2. 精确性:通过计算整个网络输出的梯度,全局MAS可以更精确地评估参数的重要性。
  3. 适应性:能够适应不同的数据分布,因为它是基于网络最终输出的敏感度来评估参数的重要性。
  4. 通用性:适用于任何类型的数据和任务,因为它不依赖于特定层级的激活模式。

缺点:

  1. 计算成本:可能需要更多的计算资源,因为它需要对整个网络的输出函数进行梯度计算。
  2. 复杂性:实现起来可能比局部MAS更复杂,因为它涉及到整个网络的梯度传播。

局部MAS方法(基于Hebb理论)
优点:

  1. 计算效率:局部MAS通过仅考虑单层的激活来计算参数的重要性,这减少了计算量。
  2. 实现简单:由于其简单性,局部MAS更容易实现和集成到现有的神经网络架构中。
  3. 快速适应:可以快速适应新任务或数据,因为它只需要局部的激活信息。
  4. 与生物学习机制的联系:局部MAS与Hebb学习规则有直接联系,这为理解人工神经网络中的学习过程提供了生物学上的见解。

缺点:

  1. 可能的不准确性:由于它只考虑局部信息,可能会忽略不同层级间参数的相互作用,导致对参数重要性的估计不够准确。
  2. 过度依赖局部激活:如果局部激活不能很好地代表整个网络的行为,那么局部MAS可能无法正确评估参数的重要性。
  3. 特定任务的局限性:可能在某些任务或数据分布上表现不如全局MAS,特别是当任务需要跨层级的信息整合时。

5 实验分析

(1)对比的模型
本文中提到的对比模型包括以下几种:

  1. Finetuning (FineTune): 这是一种基线方法,当学习新任务时,对网络的参数进行微调,以适应新任务的数据。
  2. Learning without Forgetting (LwF): 该方法在面对新任务时,通过记录先前任务的输出概率,并在新的损失函数中使用这些概率作为目标,以减少对旧知识的遗忘。
  3. Encoder Based Lifelong Learning (EBLL): EBLL在LwF的基础上,为每个任务学习一个浅层编码器,并应用变化惩罚和知识蒸馏损失来减少对先前任务的遗忘。
  4. Incremental Moment Matching (IMM): IMM通过对共享参数的变化施加L2惩罚来学习新任务,并在序列结束时通过第一或第二矩匹配合并模型。
  5. Elastic Weight Consolidation (EWC): EWC是首个提出在新任务学习时使用正则化网络参数的方法,它使用Fisher信息矩阵的对角线作为重要性度量。
  6. Synaptic Intelligence (SI): SI在训练新任务时,以在线方式估计重要性权重,并在训练后期任务时对先前任务的重要参数变化进行惩罚。
  7. Memory Aware Synapses (MAS): 本文提出的新方法,它通过无监督和在线的方式计算神经网络参数的重要性,基于预测输出函数对参数变化的敏感度。

(2)分类任务分析
实验使用基于三个数据集的两任务序列:MIT Scenes(室内场景分类)、Caltech-UCSD Birds(细粒度鸟类分类)和Oxford Flowers(细粒度花卉分类)。将MAS方法与其他几种终身学习(LLL)方法进行了比较,包括Finetune(微调)、Learning without Forgetting (LwF)、Encoder Based Lifelong Learning (EBLL)、Incremental Moment Matching (IMM)、Elastic Weight Consolidation (EWC)和Synaptic Intelligence (SI)。
image.png
每个任务的分类准确率。从图中可以看出,Finetune基线方法在新任务上性能较好,但在旧任务上性能下降显著,这表明了灾难性遗忘的问题。相比之下,MAS方法在所有任务上都显示出较高的准确率,并且与其他终身学习方法相比,其性能下降非常小。
image.png
为性能下降情况。FineTune方法在旧任务上的性能下降非常严重,这再次证实了其在连续学习中的不足。其他方法如LwF、EBLL、IMM、EWC和SI都显示出一定程度的遗忘,但遗忘程度较Finetune有所减轻。MAS方法在所有任务上的遗忘率最低,显示出最小的性能下降,这表明其在终身学习环境中对旧知识的保留效果最好。
(3)内存容量要求
image.png

  • MAS (Memory Aware Synapses):本文提出的方法,它在每个学习步骤中的内存需求是所有方法中最低的,这表明MAS在处理遗忘问题时非常内存高效。
  • SIEWC、**LwF **、EBLLIMM的内存需求随着任务序列的进行而逐渐增加。特别是IMM方法,其内存需求随任务数量线性增长,因为它需要存储所有任务的模型。

(4)敏感度分析
image.png
在一系列经过排列的MNIST任务中,平均性能和平均遗忘率随超参数λ的变化情况。

  1. 超参数λ的影响:λ是全局MAS方法中用于权衡新任务学习和旧任务遗忘的正则化项的权重。通过改变λ的值,可以观察到模型在新任务学习性能和旧任务遗忘之间的权衡。
  2. 性能与遗忘的平衡:从图中可以看出,当λ的值增加时,模型倾向于更多地保留旧任务的知识,从而减少遗忘。然而,如果λ过大,可能会对新任务的学习造成负面影响,因为模型过于保守,不愿意对参数进行足够的更新。

(5)检索任务性能分析
在6DS数据集的体育子集上,经过4个任务序列学习后,每种方法的平均精度均值(Mean Average Precision, MAP)的变化情况。MAP是信息检索和计算机视觉领域常用的性能指标,用于衡量模型对于检索任务的准确性。6DS数据集,全称为"Six Domains Dataset",是一个用于事实学习(Fact Learning)的中等规模数据集。它专门设计用于支持图像中事实的学习和检索任务,例如理解图像中的对象、属性和它们之间的关系。6DS数据集通常包含多种类别的图像,并且每个图像都与一个或多个事实相关联,这些事实以三元组的形式表示,包括主体(Subject)、谓语(Predicate)和对象(Object)。
image.png
与其他方法相比,MAS在体育子集上的MAP值下降较少,表明其在面对新任务时,能够更有效地保留先前任务的知识,减少灾难性遗忘。

6 思考

(1)MAS算法缺点

  1. 超参数调整:MAS算法引入了一个新的超参数λ,用于平衡新任务学习和旧任务遗忘之间的权衡。确定合适的λ值可能需要额外的调整工作,这可能在实际应用中增加复杂性。
  2. 计算资源:尽管MAS算法在内存效率方面有所优化,但在计算参数重要性时,尤其是在使用全局版本时,可能需要较多的计算资源,尤其是当数据集很大时。
  3. 适应性:MAS算法能够根据未标记的测试数据自适应地调整参数重要性,但在某些情况下,这种自适应性可能不如预期,特别是如果测试条件与训练条件差异很大时。
  4. 局部与全局方法的权衡:论文中提到了MAS的局部版本(基于Hebb理论)和全局版本。局部版本计算更快,但可能在准确性上有所折衷。选择使用哪种版本可能取决于具体应用的需求。
  5. 特定任务的泛化能力:MAS算法在论文中的任务上表现良好,但其泛化能力到其他类型的问题或任务上可能会有所不同,这需要在更广泛的任务和数据集上进行验证。
  6. 灾难性遗忘问题:尽管MAS算法旨在减少灾难性遗忘,但在学习大量新任务或非常不同的任务时,仍然可能面临知识遗忘的挑战。
  7. 实际应用的复杂性:在实际应用中,可能需要进一步的调整和优化,以适应特定的数据分布、任务特性或计算约束。
  8. 理论基础与实际效果的验证:MAS算法虽然在理论上受到Hebb学习规则的启发,但其在真实世界数据和任务上的有效性需要通过更多的实验来验证。
  9. 长期维护和更新:在长期学习和连续任务中,MAS算法可能需要持续的维护和更新,以适应不断变化的数据和任务需求。
  10. 对特定数据类型的依赖:MAS算法可能对某些类型的数据更加敏感,例如,如果数据具有特定的分布特性或噪声模式,算法的效果可能会受到影响。

(2)如何计算使用平方 ℓ2 范数的梯度,为什么要这么计算来表示参数的重要性?

  1. 简化计算:如果直接使用多维输出的每个维度来计算梯度,就需要对每个输出维度执行一次反向传播,这将需要与输出维度数量相同次数的计算。而使用平方 ℓ 2 \ell_2 2范数,可以得到一个标量值,这意味着只需要一次反向传播,从而简化了计算过程。
  2. 避免梯度接近零的问题:在某些情况下,如果模型已经收敛到局部最小值,那么基于损失函数的梯度可能会非常小,这会导致参数重要性的估计不准确。使用输出函数的敏感度而不是损失函数的梯度可以避免这个问题,因为输出函数不太可能处于局部最小值。
  3. 与Hebb学习规则的联系:在文中提到的局部MAS方法中,使用平方 ℓ 2 \ell_2 2 范数的梯度与Hebb学习理论相联系。Hebb理论指出,如果两个神经元的激活同时发生,它们之间的突触连接应该被加强。在人工神经网络中,这可以被解释为如果两个神经元的激活值高度相关,那么它们之间的连接权重就更重要。平方 ℓ 2 \ell_2 2范数的梯度可以反映这种相关性。
  4. 参数重要性的准确估计:通过平方 ℓ 2 \ell_2 2范数的梯度,可以更准确地衡量参数对输出的影响。如果一个参数的小变化导致输出的平方 ℓ 2 \ell_2 2范数有较大变化,那么这个参数对模型的预测就非常重要。
  5. 无监督和在线适应性:使用平方 ℓ 2 \ell_2 2范数的梯度允许模型在无监督的情况下在线地适应新数据。这意味着模型可以在没有标签数据的情况下,根据输入数据动态调整参数的重要性权重。
  6. 提高效率:相比于基于损失的权重变化,使用平方 ℓ 2 \ell_2 2范数的梯度可以更高效地估计参数的重要性,因为它只需要一次反向传播,并且可以利用所有可用的数据点来更新权重的重要性,而不需要额外的存储或处理。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

系统学习PLC

1.OB组织块 程序循环 PC ob1执行一次 ob123也执行一次 是 statup是程序启动的是第一个周期先执行starup&#xff08;0b100&#xff09;然后在执行ob1和0b123.这二个循环&#xff0c;周期执行这二个循环。1000是1s 2.DB块 建立指定数据块可以直接建立自己喜欢的类型 3.FB与…

【八股系列】介绍React高阶组件,适用于什么场景?

文章目录 1. HOC的工作原理2. 返回的新组件3. 适用场景4. 注意事项5. 示例代码 React高阶组件&#xff08; Higher-Order Components&#xff0c;简称HOC&#xff09;是 React中一种高级的 复用组件逻辑的技术。 HOC自身不是 React API的一部分&#xff0c;而是基于 Reac…

为何云原生是未来?企业IT架构的颠覆与重构(上)

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《未来已来&#xff1a;云原生之旅》&#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、引言 1、什么是云原生 2、云原生的背景和起源 背景 起源 关…

Android 查询及获取应用程序 Package 及 Acticity 名称的方法

一、通过命令查询和获取应用的Package及Acticity &#xff08;一&#xff09;通过命令查询应用包名及安装信息 以下是常用命令&#xff1a; 命令形式作用adb shell pm list packages查询系统中所有应用的包名adb shell pm list packages -s查询系统应用包名adb shell pm lis…

MySQL 函数

1、CURDATE()&#xff1a;返回当前的日期。 2、查询当前年月 SELECT DATE_FORMAT(CURDATE(),%Y-%m) AS year_month 3、当前日期添加 1 个月 INTERVAL 1 MONTH 4、查询近6个月的月份 SELECT DATE_FORMAT(CURDATE(),%Y-%m)AS year_month UNION SELECT DATE_FORMAT((CURDAT…

【网络安全学习】使用Kali做信息收集 -03- <综合侦察>

综合侦察涉及从多个来源收集和分析目标的信息&#xff0c;以了解其背景、特征、潜在漏洞和风险。 下面介绍一些在Kali中常用的综合侦察工具。 1.Dmitry 它是一个命令行工具&#xff0c;可以使用不同的选项来收集目标的各种信息。 Dmitry可以与whois服务和Netcraft服务结合使…

【启明智显产品介绍】Model4 工业级HMI芯片详解系列专题(一):芯片性能

Model4 工业级HMI芯片详解系列专题&#xff08;一&#xff09;【芯片性能】 Model4系列工业级MPU是国产自主面向工业应用的RISC-V架构的应用级芯片&#xff0c;内置玄铁64bit RISC-V CPU C906&#xff0c;主频高达600MHz&#xff0c;算力约1380DMIPS。 Model4系列工业级MPU具…

BizDevOps全局建设思路:横向串联,纵向深化

本文来自腾讯蓝鲸智云社区用户&#xff1a;CanWay BizDevOps概述 IT技术交付实践方法在不断迭代中持续优化。在工业化时代&#xff0c;Biz&#xff08;业务&#xff09;、Dev&#xff08;开发&#xff09;、Ops&#xff08;运维&#xff09;三者往往相对分离&#xff0c;甚至有…

Transformer预测 | 基于Transformer+LSTM股票价格预测时间序列预测(Pytorch)

效果一览 基本介绍 股票行情是引导交易市场变化的一大重要因素,若能够掌握股票行情的走势,则对于个人和企业的投资都有巨大的帮助。然而,股票走势会受到多方因素的影响,因此难以从影响因素入手定量地进行衡量。但如今,借助于机器学习,可以通过搭建网络,学习一定规模的股…

API-操作元素内容

学习目标&#xff1a; 掌握操作元素内容 学习内容&#xff1a; 操作元素内容元素innerText属性元素innerHTML属性案例 操作元素内容&#xff1a; DOM对象都是根据标签生成的&#xff0c;所以操作标签&#xff0c;本质上就是操作DOM对象。就是操作对象使用的点语法。如果想要修…

Table 宽度超出页面宽度时,出现滚动条,单元格内容不换行实

修改前 方法 <div styleoverflow:auto><table stylewhite-space: nowrap></table> </div>修改后

@pytest.fixture与@pytest.mark.parametrize结合实现参数化

背景&#xff1a;测试数据既要在fixture方法中使用&#xff0c;同时也在测试用例中使用 使用方法&#xff1a;在使用parametrize的时候添加"indirectTrue"参数。pytest可以实现将参数传到fixture方法中&#xff0c;也可以在当前测试用例中使用。 原理&#xff1a;参…

Harbor本地仓库搭建003_Harbor常见错误解决_以及各功能使用介绍_镜像推送和拉取---分布式云原生部署架构搭建003

首先我们去登录一下harbor,但是可以看到,用户名密码没有错,但是登录不上去 是因为,我们用了负债均衡,nginx会把,负载均衡进行,随机分配,访问的 是harbora,还是harborb机器. loadbalancer中 解决方案,去loadbalance那个机器中,然后 这里就是25机器,我们登录25机器 然后去配置…

8.12 矢量图层面要素单一符号使用二(仅渲染中心点)

文章目录 前言仅渲染中心点&#xff08;Centroid fill&#xff09;QGis设置面符号为仅渲染中心点&#xff08;Centroid fill&#xff09;二次开发代码实现仅渲染中心点&#xff08;Centroid fill&#xff09; 总结 前言 本章介绍矢量图层线要素单一符号中仅渲染中心点&#xf…

DSP——从入门到放弃系列2——PLL锁相环(持续更新)

1、概述 锁相环&#xff08;Phase Locked Loop,PLL&#xff09;是处理器的时钟源&#xff0c;控制着C6678处理器中C66x内核、各外围设备的时钟的时钟比、对准和选通功能。 2、功能描述 上图显示了PLL和PLL控制器的逻辑实现。PLL控制器提供通过软件可配置的分频器&#xff0…

MT8766安卓4G核心板_MTK联发科PCBA方案开发

MT8766是联发科四核4G模块方案&#xff0c;安卓一体板。 采用台积电 12 nm FinFET 制程工艺&#xff0c;4*A53架构&#xff0c;Android 9.0操作系统&#xff0c;搭载2.0GHz 的 Arm NEON 引擎。提供了支持最新 OpenOS 及其要求苛刻的应用程序所需的处理能力&#xff0c;专为具有…

自然语言处理(NLP)—— 神经网络自然语言处理(Neural NLP)基础知识

1. 文章概览 本文是关于神经网络自然语言处理&#xff08;Neural NLP&#xff09;的概览&#xff0c;涵盖了基础原则、历史概览、处理流程、神经网络架构以及最近的训练范式。 1.1 基本原则 这部分会讲述自然语言处理&#xff08;NLP&#xff09;与神经网络在处理语言任务时遵…

关于UnityWebgl缓存机制

最近在做UnityWebgl热更的时候&#xff0c;我的热更程序集更新&#xff0c;而我所有运行过项目的设备都没有更新成功。而没运行过的设备则运行的是最新的程序集。那么说明必然是和缓存有关系了。 特意查了一下问题&#xff0c;发现Edge浏览器会把一些比较小的图片、脚本等资源进…

Android framework配置默认屏幕亮度值源码分析

1、概述 在Android中&#xff0c;config.xml文件用于配置各种系统设置和资源。对于屏幕亮度的配置&#xff0c;config.xml并不是直接用于设置屏幕亮度的地方&#xff0c;但它可以包含默认的系统设置和一些相关的参数。以下是如何在config.xml中配置一些与屏幕亮度相关的设置的…

yolov9-pytorch 深度学习目标检测算法模型

YOLOv9 论文 https://arxiv.org/abs/2402.13616 模型结构 YOLOv9将可编程梯度信息 (PGI) 概念与通用 ELAN (GELAN)架构相结合而开发&#xff0c;代表了准确性、速度和效率方面的重大飞跃。 算法原理 Yolov9将可编程梯度信息&#xff08;PGI&#xff09;和GLEAN&#xff08…