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

12.30-1-5学习周报

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 文章链接
  • 摘要
  • Abstract
  • 一、方法介绍
    • 1.HAT-CIR
    • 2.Horde
    • 3.DWGRNet
  • 二、实验
  • 总结


文章链接

https://arxiv.org/pdf/2405.04101

摘要

本博客介绍了论文《Continual learning in the presence of repetition》关于CVPR 2023 上的 CLVision 挑战赛的总结。该挑战赛的主要目标是探索重复在持续学习中的作用。博客首先介绍了决赛团队所提出的三种方案:HAT-CIR、Horde、DWGRNet,这三种方案的设计思路都是从数据流中的重复的类来进行持续学习。在比赛中,实验采用数据集CIFAR100 和 Tiny-ImageNet 来生成带有重复类的数据流,采用上述三种方法在生成数据流中的任务精确度作为评估指标。实验结果表明,三个决赛方案相对于用于生成数据流的数据集的性能具有一致性。HAT-CIR 在实验中展现了对于重复数据流进行持续学习的适用性,相较于其他两个方法,HAT-CIR 在重复的数据流中得到了更高的精确度,表明了数据流中的重复以不同的方式影响不同持续学习策略的行为。但是,怎么准确地找出重复的数量和类型如何影响每种方法的有效性还有待研究。

Abstract

This blog presents the summary of the paper “Continual learning in the presence of repetition” about the CLVision challenge at CVPR 2023. The main goal of the challenge is to explore the role of repetition in continuous learning. The blog first introduces the three solutions proposed by the finalist teams: HAT-CIR, Horde, and DWGRNet, all of which are designed to continuously learn from duplicate classes in the data stream. In the competition, the experiment uses dataset CIFAR100 and Tiny-ImageNet to generate a data stream with duplicate classes, and the task accuracy of the above three methods in generating the data stream is used as an evaluation metric. Experimental results show that the performance of the three finalists is consistent with the dataset used to generate the data stream. Compared with the other two methods, HAT-CIR achieves higher accuracy in repeated data streams, indicating that repetition in data streams affects the behavior of different continuous learning strategies in different ways. However, how exactly to find out how the number and type of replicates affect the effectiveness of each method remains to be studied.

一、方法介绍

在论文中,持续学习用CL来表示。研究者采用重复类增量学习(CIR),CIR 包含具有两个关键特征的各种数据流:1.随着时间的推移,新的类别可能会出现。 2. 以前遇到的类可能会以不同的重复模式重新出现。

在论文中,研究者开发的基于采样的生成器用于生成该挑战的数据流,使用具有明确解释的四个控制参数:
流长度(Stream length,简写为Stream):数据流中的经验数。
经验大小(Experience Size,简写为ESTA):每次经验中的样本数量。
首次出现分布(First occurrence distribution,缩写为RST):数据流中经验的离散概率分布,它决定了每个类的首次出现。
重复概率(𝑃𝑟):每个类的重复概率,控制每个类在第一次出现后在流中的未来经验中重新出现的可能性。

1.HAT-CIR

xduan7团队提出的策略称为HAT-CIR。 该策略结合了网络副本和测试时决策的优势,以及其他元素,例如对任务的硬注意力 (HAT)和监督对比学习 (SupCon) 。

所提出的方法包括三个核心部分:1.结构设计,具有基于HAT的分区和网络副本; 2.两阶段训练策略,包括监督对比学习和分类; 3.用于测试时决策的基于动量的推理机制。 该方法的示意图如下图所示:
在这里插入图片描述
在训练新任务时,一个由多个“集合”组成的新“片段”被添加到模型中,并分两个阶段对新体验的训练数据进行训练。 第一阶段,使用投影头并优化监督对比损失; 在第二阶段,使用softmax输出层并优化交叉熵损失。 在测试期间,每个可能类别的分数被计算为根据该类别出现的经验进行训练的最新片段的 logits 的加权平均值。

基于 HAT 的分区。 为了减轻灾难性遗忘,HAT 根据经验 ID 隔离网络参数。 原始的 HAT 方法在处理大量经验时存在训练速度慢和超参数敏感性的问题。 为了克服这个问题,使用了 HAT-CL,它将掩码初始化为 1,并使用余弦掩码缩放曲线来促进与网络权重更好的对齐。 通过使用余弦掩模缩放曲线,每个训练时期分为三个阶段:
1.训练权重,掩码大多是1
2.一起训练掩码和权重,使掩码更稀疏
3.当掩码主要为1时微调权重

这些变化显著提高了HAT的训练速度和稳定性,以及性能。此外,掩模的正则化项的影响逐渐减小。该步骤确保了网络容量的充分利用,并通过可变的正则化项提供了对每个经验中的类的数量的说明。基于HAT的分区仅用于预选阶段;对于最后阶段,仅使用网络副本,这导致了更高的性能。

为了学习更好的特征表示,在每个经验中,网络首先使用监督对比学习进行训练。目标是最大化相同类别的特征向量之间的相似性,并使用以下损失函数最小化不同类别的特征向量:
在这里插入图片描述
𝑓(𝑥) 生成输入 𝑥 的嵌入特征向量,𝐷(𝑥, 𝑦) 表示距离函数,𝑥𝑎 𝑖 、𝑥𝑝 𝑖 和 𝑥𝑛 𝑖 分别表示锚点、正样本和负样本,𝛼 是边距 范围。 批次中的样本数量用 𝑁 表示。 由于硬注意力掩模对学习率和历元数的敏感性,硬注意力掩模的训练仅发生在监督对比学习阶段。
在每次训练的第二个训练阶段,使用标准交叉熵分类损失进一步训练网络参数

HAT-CIR的局限性:在初始体验中,当类的数量较小时,该方法的一个显著缺点出现。在这种情况下,由于有限的多样性,网络无法学习有效的类表示。这对基于动量的测试时间决策策略的性能产生了负面影响。另一个固有的局限性与HAT的使用有关。网络结构的刚性要求仔细地调整超参数以匹配预期的体验总数,这在CIR设置中并不总是预先知道的。结果,可能会实现次优的参数分配,导致性能受损。

2.Horde

mmasana团队提出的策略称为Horde。该策略根据选定的经验学习特征提取器(FE)的集合,这应该提供强大的特征,有助于区分可见和不可见的下游类。
为了进一步促进伪特征投影,使用通常的交叉熵损失和额外的度量学习损失来训练FE,这促进了每个特征空间内的学习类之间的对齐。

Horde将各个FE的特征表示结合到一个能够预测到目前为止所看到的所有类的统一头部中。这是通过两步训练过程实现的:第一,FE的学习(仅在选定的经验上),第二,用于适应统一头部的伪特征对齐(在每个经验上)。每个个体FE都是一个在单一经验上训练的专家模型,之后它被冻结并添加到集合中。在第二个训练步骤中,数据通过所有的集成模型,并对统一的头部进行微调。训练统一头部涉及直接使用来自熟悉某个类的FE的表示,以及来自未在该类上训练的FE的表示的伪特征投影。Horde提高了每个任务特定的特征提取器(FE)的稳定性,同时通过学习对齐的统一表示来利用类重复来平衡可塑性

在论文中研究者设计了两个约束来确定何时将FE添加到集合中。首先,为了限制过度拟合FE的存在并限制系综的大小,不考虑少于五个类的经验。第二,在已经看到85%的类之后停止向集合添加FE,因为一旦已经学习了大多数类的鲁棒特征,则期望在剩余类上有良好的性能。此外,FE总是在第一次体验时接受培训的。在这些约束条件下,所提出的方法基于下图所示的突出显示的经验来学习特征提取器:
在这里插入图片描述
当FE在当前经验上进行训练时,学习发生在具有与类一样多的输出的完全连接的头部上的通常的交叉熵损失。为了促进在更相似分布的空间中的特征的学习,强调硬否定对的对比损失也被包括在单独的头部上,如下图所示。这两种损失都使用自适应alpha来平衡,该自适应alpha是基于每个损失的能量自动计算的。
在这里插入图片描述
当在新体验上进行训练时,在第一阶段中,可以使用交叉熵和对比损失来训练新的特征提取器。是否在新经验上训练新特征提取器由启发式决定。在对每个新体验执行的第二训练阶段中,执行伪特征投影,并且训练统一的头部以基于来自集合的特征来区分所有看到的类。(在测试时,一个测试样本被简单地转发到模型的所有组件,预测的类从统一头中读出

伪特征投影使用相应的类标准差扩展了特征转换,以允许更好的维度采样。它将表示从类转换为不同类别的预计代表。 令 𝑎𝑖 为属于类别 𝑖 的当前经验样本的所有 FE 输出的串联表示。 投影定义为:在这里插入图片描述
其中 ̂𝑎𝑗 ,𝑖 是从类 𝑖 到类 𝑗 的估计投影。 该投影在学习统一头时应用于训练批次中的每个样本,并且在评估期间不使用
目标类𝑗是从先前学习的类中随机选择的,原始表示和预测的表示都被添加到损失上。类原型(即平均𝜇𝑖和标准差𝜎𝑖)总是在通过计算可用类数据的统计量来训练统一头部之前进行更新。

3.DWGRNet

pddbend团队提出的策略称为动态加权门控表示网络(DWGRNet)。该策略为每个Experience创建独立的分支并使用门控单元来控制哪些分支处于活动状态。 在训练期间,与当前经验相对应的分支被其门控单元激活,以促进学习,而来自先前经验的分支保持不活动状态。
DWGRNet 根据熵、特征范数和每个分支经历的类别数量来分配权重。 具体来说,评估每个分支的预测概率分布的熵。 高熵表示样本成为该分支的开集项的可能性。 类似地,计算特征范数。 较高的特征范数表明该样本很可能是开放集样本。 最后,假设大量类别的经验将使模型的预测更加可靠。 因此,权重还可以根据每次体验中的课程数量进行调整。

DWGRNet 使用门控单元来控制每个分支的激活。 每次新Experience都会添加一个新分支,然后激活,而旧分支中的模型参数保持冻结。 如图所示:在这里插入图片描述
在训练阶段,没有使用特殊的损失函数或重播缓冲区。 相反,使用标准交叉熵损失来训练模型,同时使用 AugMix 来增强模型的泛化性和鲁棒性。 AugMix 结合了不同的数据增强技术。 在测试阶段,门控单元可以一一激活每个分支,以避免需要大量 GPU 内存。 他们的输出被收集起来,然后用于做出最终的预测

二、实验

CVPR 2023 的 CLVision 挑战,主要目标是探索重复在 CL 中的作用,这是目前较少研究者所关注的方向。 为此,参与者被要求设计一些策略,可以利用数据流中固有的重复来促进知识转移并减少遗忘,而无需存储原始样本。上述所介绍的三种主要方法以及团队是该比赛的部分参赛者。

十强队伍预选阶段结果。 显示的是在预选阶段对三个流中的每一个进行训练后,CIFAR-100 测试集的准确度
在这里插入图片描述
为了测试数据流中的重复是否对决赛解决方案的有效性发挥重要作用,在对没有重复的数据流进行训练后,也会对它们进行评估。 为此,使用“标准”Split CIFAR-100 类增量学习基准。
在这里插入图片描述
上图中的结果表明,当数据流中没有重复时,解决方案的性能显着降低。 虽然缓冲区大小为 2000 的 ER 在有重复的数据流上明显优于每个决赛解决方案,但当没有重复时,该版本的 ER 比所有决赛解决方案表现更好。 这表明数据流中的重复可以改变不同 CL 策略的相对有效性。

为了探讨结果的普遍性,研究者对使用 Tiny ImageNet 数据集生成的三个 CIR 数据流对决赛解决方案进行了评估。生成数据流的配置与挑战最后阶段的数据流𝑆4、𝑆5 和𝑆6 使用的配置相同。 评估结果如下图所示。这些结果表明三个决赛解决方案相对于用于生成数据流的数据集的性能具有一致性
在这里插入图片描述

总结

在随机重复的数据流中,HAT-CIR基于集成的持续学习策略能够很好地利用数据流中固有的重复来促进知识转移并减少遗忘。Horde训练了一组特征提取器,其中仅在需要时基于启发式添加新的特征提取器。它还使用了一个统一的头来区分在当前训练步骤中观察到的类。DWGRNet为每个体验使用独立的分支,在训练期间通过门控单元激活,并结合数据增强技术以提高鲁棒性。该解决方案进一步从开集问题的角度来处理该问题,并且为了解决开集识别问题,它采用了基于熵,特征范数和每个经验中的类数等因素的加权策略。

相关文章:

12.30-1-5学习周报

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 文章链接摘要Abstract一、方法介绍1.HAT-CIR2.Horde3.DWGRNet 二、实验总结 文章链接 https://arxiv.org/pdf/2405.04101 摘要 本博客介绍了论文《Continual lea…...

H3C Tftp 备份与恢复配置文件

pc 运行 tftp 软件与路由器相连。打开 tftp。 在交换机用户试图下&#xff0c;dir /all 命令查看设备的配置文件。 备份命令&#xff1a;将配置文件备份到地址为 10.10.10.2 的 tftp 服务器 <H3C>backup startup-configuration to 10.10.10.2 恢复命令&#xff1a;恢复配…...

【Matlab算法】基于改进人工势场法的移动机器人路径规划研究(附MATLAB完整代码)

基于改进人工势场法的移动机器人路径规划研究 结果图摘要1. 引言2. 方法说明2.1 基本原理2.2 改进策略3. 核心函数解释3.1 改进的斥力计算函数3.2 路径规划主函数4. 实验设计4.1 实验环境设置4.2 关键参数选择5. 结果分析5.1 实验结果5.2 性能分析附录:完整代码参考文献结果图…...

基于Springboot校园失物招领系统【附源码】

基于Springboot校园失物招领系统 效果如下&#xff1a; 系统登陆页面 物品页面 系统首页面 失物招领管理页面 失物认领页面 宣传视频页面 物品挂失留言管理页面 宣传视频类型管理页面 研究背景 在校园环境中&#xff0c;失物招领是一个常见的问题。传统的失物招领方式主要依…...

Vue 自定义指令

首先&#xff0c;我们知道vue中有很多自带指令&#xff0c;v-bind、v-on、v-model等。但在业务开发中&#xff0c;我们常见一些自定义指令如&#xff1a;v-copy、v-longpress等。那么如何定义自己所需的指令呢&#xff1f; 接下来我们分别从指令注册、指令的钩子函数、指令的参…...

JAVA-制作小游戏期末实训

源码 import game.frame.Frame;public class App {public static void main(String[] args) {System.out.println("starting......");new Frame();} } package game.controller;import game.model.Enemy;public class EnemyController implements Runnable{private…...

【Vue教程】使用Vite快速搭建前端工程化项目 | Vue3 | Vite | Node.js

&#x1f64b;大家好&#xff01;我是毛毛张! &#x1f308;个人首页&#xff1a; 神马都会亿点点的毛毛张 &#x1f6a9;今天毛毛张分享的是关于如何快速&#x1f3c3;‍♂️搭建一个前端工程化的项目的环境搭建以及流程&#x1f320; 文章目录 1.前端工程化环境搭建&#…...

4.CSS文本属性

4.1文本颜色 div { color:red; } 属性值预定义的颜色值red、green、blue、pink十六进制#FF0000,#FF6600,#29D794RGB代码rgb(255,0,0)或rgb(100%,0%,0%) 4.2对齐文本 text-align 属性用于设置元素内文本内容的水平对齐方式。 div{ text-align:center; } 属性值解释left左对齐ri…...

【工具整理】WIN换MAC机器使用工具整理

最近公司电脑升级&#xff0c;研发同学统一更换了 Mac Book Pro 笔记版电脑&#xff0c;整理一下安装了那些软件以及出处&#xff0c;分享记录下&#xff5e; 知识库工具 1、语雀 网址&#xff1a;语雀&#xff0c;为每一个人提供优秀的文档和知识库工具 语雀 个人花园&…...

Elasticsearch向量检索需要的数据集以及768维向量生成

Elasticsearch8.17.0在mac上的安装 Kibana8.17.0在mac上的安装 Elasticsearch检索方案之一&#xff1a;使用fromsize实现分页 快速掌握Elasticsearch检索之二&#xff1a;滚动查询(scrool)获取全量数据(golang) Elasticsearch检索之三&#xff1a;官方推荐方案search_after…...

《小型支付商城系统》项目(一)DDD架构入门

目录 1.DDD架构 1.1充血模型 1.2领域模型 1.2.1实体 1.2.2值对象 1.2.3聚合 1.2.4领域服务 1.2.5工厂 1.2.6仓储&#xff08;Repository&#xff09; 2.DDD建模 3.DDD工程模型 项目介绍&#xff1a;知识星球 | 深度连接铁杆粉丝&#xff0c;运营高品质社群&#xff…...

web课程设计--酷鲨商城-springboot和vue

文章目录 页面截图技术分析数据库代码地址 页面截图 登陆页面: 分类列表 添加分类 轮播图列表 添加轮播图 商品列表 添加商品信息 技术分析 前端使用 html页面的 vue.js&#xff08;vue2&#xff09;和element-ui绘制前端界面 后台使用Springbootmybatis来实现crud。还有一…...

解决virtualbox克隆ubuntu虚拟机之后IP重复的问题

找遍了国内论坛&#xff0c;没一个能解决该问题的&#xff0c;所以我自己写个文章吧&#xff0c;真讨厌那些只会搬运的&#xff0c;污染国内论坛环境&#xff0c;搜一个问题&#xff0c;千篇一律。 问题 操作系统版本为"Ubuntu 24.04 LTS" lennytest1:~$ cat /etc…...

活动预告 |【Part1】Microsoft Azure 在线技术公开课:使用 Azure DevOps 和 GitHub 加速开发

课程介绍 通过 Microsoft Learn 免费参加 Microsoft Azure 在线技术公开课&#xff0c;掌握创造新机遇所需的技能&#xff0c;加快对 Microsoft Cloud 技术的了解。参加我们举办的“使用 Azure DevOps 和 GitHub 加速开发”活动&#xff0c;了解迁移到 DevOps 所需的合适工具和…...

SpiderFlow平台v0.5.0之数据库连接

一、寻找lib目录安装方式 在 SpiderFlow 平台中&#xff0c;连接数据库时需要指定数据库的 DriverClassName&#xff0c;并确保正确配置数据库驱动。通常&#xff0c;驱动文件&#xff08;JAR 文件&#xff09;需要放置在指定的文件夹中&#xff0c;以便 SpiderFlow 可以找到并…...

springboot集成阿里云短信服务

springboot集成阿里云短信服务 一.阿里云账号准备 流程:注册阿里云账号>短信服务>新增资质>新建签名>新建模版>申请秘钥>用代码测试 1.注册阿里云账号 2、登录成功后&#xff0c; ① 在首页搜索短信服务 ② 打开第一个搜索结果 ③ 免费开通 ④ 可以根据…...

Redis 实战篇 ——《黑马点评》(上)

《引言》 在进行了前面关于 Redis 基础篇及其客户端的学习之后&#xff0c;开始着手进行实战篇的学习。因内容很多&#xff0c;所以将会分为【 上 中 下 】三篇记录学习的内容与在学习的过程中解决问题的方法。Redis 实战篇的内容我写的很详细&#xff0c;为了能写的更好也付出…...

Redis的生态系统和社区支持

Redis的生态系统和社区支持 1. Redis 生态系统 1.1 Redis核心 Redis 是一个高性能的内存存储系统,支持丰富的数据结构(如字符串、列表、集合、哈希和有序集合)。它的核心提供了: 高性能数据存储:单线程模型支持每秒数百万级别的操作。多种数据结构:适用于多样化场景,如…...

基于C语言从0开始手撸MQTT协议代码连接标准的MQTT服务器,完成数据上传和命令下发响应(华为云IOT服务器)

文章目录 一、前言二、搭建开发环境三、网络编程基础概念科普3.1 什么是网络编程3.2 TCP 和 UDP协议介绍3.3 TCP通信的实现过程 四、Windows下的网络编程相关API介绍4.1 常用的函数介绍4.2 函数参数介绍4.3 编写代码体验网络编程 五、访问华为云IOT服务器创建一个产品和设备5.2…...

什么是 GPT?Transformer 工作原理的动画展示

大家读完觉得有意义记得关注和点赞&#xff01;&#xff01;&#xff01; 目录 1 图解 “Generative Pre-trained Transformer”&#xff08;GPT&#xff09; 1.1 Generative&#xff1a;生成式 1.1.1 可视化 1.1.2 生成式 vs. 判别式&#xff08;译注&#xff09; 1.2 Pr…...

IDEA 编辑器自动识别 Dockerfile 类型高亮和语法提示

在 IDEA 中&#xff0c;如果项目里面的只有一个 Dockerfile文件时&#xff0c;那么此时使用打开这个文件都是 ok 的&#xff0c;支持语法高亮和关键词提示。 如果我们有多个 Dockerfile 时&#xff0c; 比如 A_Dockerfile , B_Dockerfile , C_Dockerfile, 这个时候你会发现 IDE…...

AI知识库与用户行为分析:优化用户体验的深度洞察

在当今数字化时代&#xff0c;用户体验&#xff08;UX&#xff09;已成为衡量产品成功与否的关键指标之一。AI知识库作为智能客服系统的重要组成部分&#xff0c;不仅为用户提供快速、准确的信息检索服务&#xff0c;还通过用户行为分析&#xff0c;为产品优化提供了深度洞察。…...

什么是Redis哨兵机制?

大家好&#xff0c;我是锋哥。今天分享关于【什么是Redis哨兵机制&#xff1f;】面试题。希望对大家有帮助&#xff1b; 什么是Redis哨兵机制&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Redis 哨兵&#xff08;Sentinel&#xff09;机制是 Redis 提…...

JavaScript中如何创建对象

在JavaScript中&#xff0c;创建对象有多种方法。以下是几种常见的方式&#xff1a; 1. 对象字面量 这是最直接和常用的创建对象的方法。使用花括号 {} 包围一组键值对来定义一个对象。 let person {name: "John",age: 30,greet: function() {console.log("…...

2025:OpenAI的“七十二变”?

朋友们&#xff0c;准备好迎接AI的狂欢了吗&#xff1f;&#x1f680; 是不是跟我一样&#xff0c;每天醒来的第一件事就是看看AI领域又有什么新动向&#xff1f; 尤其是那个名字如雷贯耳的 OpenAI&#xff0c;简直就是AI界的弄潮儿&#xff0c;一举一动都牵动着我们这些“AI发…...

Mysql(MGR)和ProxySQL搭建部署-Kubernetes版本

一、Mysql(MGR) 1.1 statefulSet.yaml apiVersion: apps/v1 kind: StatefulSet metadata:labels:app: mysqlname: mysqlnamespace: yihuazt spec:replicas: 3serviceName: mysql-headlessselector:matchLabels:app: mysqltemplate:metadata:labels:app: mysqlspec:affinity:p…...

uni-app 多平台分享实现指南

uni-app 多平台分享实现指南 在移动应用开发中&#xff0c;分享功能是一个非常常见的需求&#xff0c;尤其是在社交媒体、营销活动等场景中。使用 uni-app 进行多平台开发时&#xff0c;可以通过一套代码实现跨平台的分享功能&#xff0c;涵盖微信小程序、H5、App 等多个平台。…...

Windows系统下载、部署Node.js与npm环境的方法

本文介绍在Windows电脑中&#xff0c;下载、安装并配置Node.js环境与npm包管理工具的方法。 Node.js是一个基于Chrome V8引擎的JavaScript运行时环境&#xff0c;其允许开发者使用JavaScript编写命令行工具和服务器端脚本。而npm&#xff08;Node Package Manager&#xff09;则…...

Typora 最新版本下载安装教程(附详细图文)

文章简介 在当今快节奏的信息化时代&#xff0c;简洁高效的写作工具成为了每位内容创作者的必需品。而Typora&#xff0c;这款备受推崇的 Markdown 编辑器&#xff0c;正是为此而生。它采用无缝设计&#xff0c;去除了模式切换、预览窗口等干扰&#xff0c;带来真正的实时预览…...

将一个变量声明为全局变量比如:flag1=false;然后通过jQuery使用js一个方法,将它设置为不可修改

方法 1&#xff1a;使用 Object.defineProperty 通过 Object.defineProperty 将全局变量设置为只读属性。 // 声明全局变量 var flag1 false;// 使用 Object.defineProperty 将其设置为不可修改 Object.defineProperty(window, flag1, {configurable: false, // 不允许删除属…...

找不到qt5core.dll无法运用软件的解决办法

在运行某些软件或游戏时&#xff0c;部分用户会遇到电脑显示由于找不到qt5core.dll&#xff0c;无法继续执行代码的问题&#xff0c;下面就给大家分享几种简单的解决方法&#xff0c;轻松恢复软件正常运行。 导致qt5core.dll缺失的原因 qt5core.dll是 Qt 应用程序框架的一部分…...

集线器,交换机,路由器,mac地址和ip地址知识记录总结

一篇很不错的视频简介 基本功能 从使用方面来说&#xff0c;都是为了网络传输的标识&#xff0c;和机器确定访问对象 集线器、交换机和路由器 常听到路由器和集线器&#xff0c;下面是区别&#xff1a; 集线器 集线器&#xff1a;一个简单的物理扩展接口数量的物理硬件。…...

Javascript算法——回溯算法(组合问题)

相关资料来自《代码随想录》&#xff0c;版权归原作者所有&#xff0c;只是学习记录 回溯 回溯模板 void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择&#xff1a;本层集合中元素&#xff08;树中节点孩子的数量就是集合的大小&#xff09;) {处理节点…...

【人工智能机器学习基础篇】——深入详解无监督学习之聚类,理解K-Means、层次聚类、数据分组和分类

深入详解无监督学习之聚类&#xff1a;如K-Means、层次聚类&#xff0c;理解数据分组和分类 无监督学习是机器学习中的一个重要分支&#xff0c;旨在从未标注的数据中发现潜在的结构和模式。聚类&#xff08;Clustering&#xff09;作为无监督学习的核心任务之一&#xff0c;广…...

从0到机器视觉工程师(二):封装调用静态库和动态库

目录 静态库 编写静态库 使用静态库 方案一 方案二 动态库 编写动态库 使用动态库 方案一 方案二 方案三 总结 静态库 静态库是在编译时将库的代码合并到最终可执行程序中的库。静态库的优势是在编译时将所有代码包含在程序中&#xff0c;可以使程序独立运行&…...

Mybatis的set标签,动态SQL

set标签常用于update语句中&#xff0c;搭配if标签使用 set标签的作用 1、会动态加上前置set关键字 2、可以删除无关的逗号 示例代码&#xff1a; <update id"update">update employee<set><if test"name ! null">name #{name},<…...

机器学习-感知机-神经网络-激活函数-正反向传播-梯度消失-dropout

文章目录 感知机工作流程 神经网络区别各种各样的神经网络 激活函数激活函数类型Sigmoid 函数ReLU函数Leaky ReLU 函数Tanh 函数 正向传播反向传播梯度消失(gradient vanish)如何解决 Dropout使用 PyTorch实战神经网络算法(手写MNIST数字识别)viewsoftmax和log-softmaxcross-en…...

HTML5 时间选择器详解

HTML5 的时间选择器&#xff08;Time Picker&#xff09;允许用户通过图形界面选择时间。它通过设置 <input> 元素的 type 属性为 time 来实现。以下是关于 HTML5 时间选择器的详细讲解。 HTML5 时间选择器详解 1. 基本用法 要创建一个时间选择器&#xff0c;只需使用…...

SSM-Spring-AOP

目录 1 AOP实现步骤&#xff08;以前打印当前系统的时间为例&#xff09; 2 AOP工作流程 3 AOP核心概念 4 AOP配置管理 4-1 AOP切入点表达式 4-1-1 语法格式 4-1-2 通配符 4-2 AOP通知类型 五种通知类型 AOP通知获取数据 获取参数 获取返回值 获取异常 总结 5 …...

小红书笔记详情API分析及读取深度探讨

一、引言 随着社交电商的蓬勃发展&#xff0c;小红书凭借其独特的社区氛围和强大的内容生产能力&#xff0c;吸引了大量用户和开发者。对于开发者而言&#xff0c;小红书提供的API接口是获取其丰富内容的重要途径。本文将对小红书笔记详情API进行深入分析&#xff0c;并详细阐…...

【Yarn】通过JMX采集yarn相关指标的Flink任务核心逻辑

通过JMX采集yarn相关指标的Flink任务核心逻辑 文章目录 通过JMX采集yarn相关指标的Flink任务核心逻辑通过jmx接口查询Yarn队列指标请求JMX配置项核心处理流程输出到kafka格式通过jmx接口查询ResourceManager核心指标请求JMX读取配置yaml配置文件核心处理逻辑输出Kafka格式彩蛋 …...

【网络安全】PostMessage:分析JS实现XSS

前言 PostMessage是一个用于在网页间安全地发送消息的浏览器 API。它允许不同的窗口&#xff08;例如&#xff0c;来自同一域名下的不同页面或者不同域名下的跨域页面&#xff09;进行通信&#xff0c;而无需通过服务器。通常情况下&#xff0c;它用于实现跨文档消息传递&…...

基于springboot的码头船只货柜管理系统 P10078

项目说明 本号所发布的项目均由我部署运行验证&#xff0c;可保证项目系统正常运行&#xff0c;以及提供完整源码。 如需要远程部署/定制/讲解系统&#xff0c;可以联系我。定制项目未经同意不会上传&#xff01; 项目源码获取方式放在文章末尾处 注&#xff1a;项目仅供学…...

SpringMVC(二)原理

目录 一、配置Maven&#xff08;为了提升速度&#xff09; 二、流程&&原理 SpringMVC中心控制器 完整流程&#xff1a; 一、配置Maven&#xff08;为了提升速度&#xff09; 在SpringMVC&#xff08;一&#xff09;配置-CSDN博客的配置中&#xff0c;导入Maven会非…...

计算机网络:网络层知识点及习题(一)

网课资源&#xff1a; 湖科大教书匠 1、概述 网络层实现主机到主机的传输&#xff0c;主要有分组转发和路由选择两大功能 路由选择处理机得出路由表&#xff0c;路由表再生成转发表&#xff0c;从而实现分组从不同的端口转发 网络层向上层提供的两种服务&#xff1a;面向连接…...

题解:A. Noldbach Problem

问题描述 Nick 对素数非常感兴趣。他阅读了有关 Goldbach Problem 的内容&#xff0c;了解到每个大于 2 的偶数都可以表示为两个素数的和。于是他决定创造一个新问题&#xff0c;称为 Noldbach Problem。 Noldbach 问题的定义如下&#xff1a; 如果一个素数 $p$ 满足&#x…...

ESP32S3 + IDF 5.2.2 扫描WiFi

ESP32S3 IDF 5.2.2 扫描WiFi 目录 1 资料 2 通过Wi-Fi库扫描附近的网络 2.1 通过idf命令创建工程 2.2 编写测试用例 2.3 优化测试用例 3 小结 1 资料 在ESP平台基于IDF开发WiFi相关功能&#xff0c;主要就是基于IDF的Wi-Fi库进行二次开发。可供参考的官方资料&#xff…...

鸿蒙开发汇总

写在前面 汇总贴&#xff0c;整理在开发过程中遇到的有趣的、不太好解决的问题&#xff0c;记录一下思考的过程及自己的解决方案。 只做为技术分享&#xff0c;转载请标明出处。 ArkTs-this指向问题 ArkTs-Text组件长度计算不对的问题...

PDF阅读和编辑工具——xodo

本文给大家推荐一款好用的PDF阅读和编辑工具——xodo,一款免费的跨平台PDF阅读、编辑、批注工具。 注意xodo PDF Reader是免费的&#xff0c;xodo PDF Studio是收费的&#xff0c;但是xodo PDF Studio功能多很多。...

QT-------------自定义插件和库

以下是一个使用 Qt 实现图表交互操作的示例&#xff0c;涵盖了自定义图表视图类、不同类型的柱状图和饼图等内容。 实现思路 自定义图表视图类&#xff1a;创建一个从 QChartView 派生的自定义类&#xff0c;用于处理图表的交互操作。主窗口设计初始化&#xff1a;在主窗口中…...