论文笔记-arXiv2025-A survey about Cold Start Recommendation

news2025/1/17 12:23:13

论文笔记-arXiv2025-Cold-Start Recommendation towards the Era of Large Language Models: A Comprehensive Survey and Roadmap

  • 面向大语言模型(LLMs)时代的冷启动推荐:全面调研与路线图
  • 1.引言
  • 2.前言
  • 3.内容特征
    • 3.1数据不完整学习
      • 3.1.1鲁棒协同训练
      • 3.1.2知识对齐
      • 3.1.3冷启动探索
      • 3.1.4特征相似性度量
    • 3.2数据高效学习
      • 3.2.1元学习优化
      • 3.2.2元任务利用
      • 3.2.3元嵌入初始化
      • 3.2.4序列元学习
  • 4.图关系
    • 4.1交互图增强
      • 4.1.1补充图关系
      • 4.1.2同质网络关系
    • 4.2图关系扩展
      • 4.2.1异构图关系
      • 4.2.2属性图关系
      • 4.2.3知识图关系
    • 4.3图聚合器改进
      • 4.3.1聚合范围扩展
      • 4.3.2信息聚合增强
  • 5.领域信息
    • 5.1领域知识迁移
      • 5.1.1嵌入映射
      • 5.1.2异构连接
      • 5.1.3学习过程
    • 5.2领域分布对齐
      • 5.2.1协同过滤对齐
      • 5.2.2辅助特征对齐
    • 5.3领域不变表示学习
      • 5.3.1解耦表示
      • 5.3.2融合表示
  • 6.世界知识
    • 6.1LLM作为推荐系统
      • 6.1.1提示策略
      • 6.1.2调整模型
    • 6.2LLM作为知识增强器
    • 6.2.1LLM作为表示增强
    • 6.2.2LLM作为关系增强
  • 7.挑战和机遇
    • 7.1多模态冷启动推荐
    • 7.2推荐基础模型
    • 7.3冷启动推荐的效率
    • 7.4冷启动推荐中的数据隐私
    • 7.5基准与统一评价
  • 8.总结

面向大语言模型(LLMs)时代的冷启动推荐:全面调研与路线图

论文下载: Cold-Start Recommendation towards the Era of Large Language Models (LLMs): A Comprehensive Survey and Roadmap

1.引言

本文旨在对冷启动推荐中最先进的技术和框架进行广泛的回顾,并对知识范围不断扩大的大模型时代进行特殊展望,如图1所示。根据收集的数据,考虑到外部知识源的规模,本文将现有工作分为四类:内容特征、图关系、领域信息和来自大语言模型的世界知识。
在这里插入图片描述

2.前言

冷启动推荐的主要挑战在于新用户和新商品几乎没有或没有可用的信息。在这种情况下,系统很难基于非常稀疏的信息建模用户与商品之间的相似性。因此,冷启动推荐成为推荐系统中长期存在的问题。

本文明确定义了九个具体的冷启动推荐任务。这些任务根据RecSys观察用户或项目的条件而有所不同,分为四个主要类别:长尾、正常冷启动、严格冷启动和系统冷启动,以突出其独特性特征。图4说明了这些类别和相应的子任务,并阐明了训练、调整和测试集在不同场景中的差异。
在这里插入图片描述

3.内容特征

根据内容特征的利用,可以将该方法分为两种类型:数据不完整学习,用于解决严格冷启动场景,即没有先前交互的情况;以及数据高效学习,旨在优化普通冷启动场景中的性能,即可用的交互数据有限。

3.1数据不完整学习

基于不同的学习方式可以分为四类:鲁棒协同训练、知识对齐、冷启动探索和特征相似性度量。

3.1.1鲁棒协同训练

在冷启动推荐中,鲁棒协同训练采用鲁棒策略来联合利用基于行为的热用户/物品表示和基于内容的冷用户/物品表示进行协同训练。可以分为两类:鲁棒泛化和自动编码器。

鲁棒泛化:通过强大的泛化策略同时优化基于行为的表示和基于内容的表示。代表性方法包括:DropoutNet、Heater、MTPR、Cold-Transformer和TDRO。

自动编码器:采用编码-解码架构,编码器通过变分或去噪策略获取信息,解码器负责信息重构,两者共同训练以表示冷启动和热启动的实例。代表性方法包括:LLAE、MAIL、CVAR、GoRec和CFLS。

3.1.2知识对齐

由于从行为数据中获得的暖表示与从内容数据中获得的冷表示之间存在语义差异,因此战略对齐是必不可少的。现有的知识对齐可以分为三类:对比学习、知识蒸馏和生成对抗网络。

对比学习:用于将冷实例的基于内容的表示与热实例的基于行为的表示联系起来。代表性方法包括:CLCRec和CCFCRec。

知识蒸馏:将知识从基于行为的热表示提炼为基于内容的冷表示,目标是确保两者的表示传达更一致的信息。代表性方法包括:ALDI、DTKD和Cold & Warm Net。

生成对抗网络:用于使从内容映射器生成的冷表示更类似于输入推荐系统的暖表示。代表性方法包括:GAR、GF2、GAZRec。

3.1.3冷启动探索

基于冷探索的方法允许探索冷用户或项目之间的兴趣,利用推荐系统的反馈信号来快速调整冷实体的表示和建模。

强化学习:强化学习算法通常用于冷实例的兴趣探索,以快速进行冷启动表示。代表性方法包括:MetaCRS、WSCB、RL-LTV和ColdNAS。

3.1.4特征相似性度量

从内容特征相似度的角度来学习和评估用户/项目兴趣。通过这种方式,模型可以避免热表示(来自行为数据)和冷表示(来自内容数据)之间的信息差异。

多特征融合:同时利用多个特征来提供更多信息,以便由于数据不完整问题而更好地进行冷实例测量。代表性方法包括:CIRec、SMINet和AutoFuse。

哈希:哈希用于将热用户/项目和冷用户/项目的表示映射到统一的二进制哈希码空间,以进行相似性测量。代表性方法包括:NeuHash-CF和MFDCF。

3.2数据高效学习

基于梯度的元学习,通过在训练期间模拟少样本测试场景并利用二阶梯度,实现了在最小数据下的快速适应。许多研究将元学习应用于冷启动问题,并将其分为四种方法:元学习优化、元任务利用、元嵌入初始化和序列元学习。

3.2.1元学习优化

元学习的本质在于通过多样化用户的历史交互进行模型预训练,然后利用有限的额外交互数据快速适应新的冷启动用户或项目。因此,优化预训练和适应阶段对于提高冷启动推荐性能至关重要。

预训练:MeLU、PNMTA和FORM。

适应:MAMO、PNMTA和CMML。

3.2.2元任务利用

除了优化之外,一些研究强调了任务相似性和差异性在元学习中的重要性。传统方法将每个用户视为一个独立的任务,训练时不考虑任务之间的关联。这限制了模型识别个别用户贡献及其对应任务关系的能力。该领域的研究主要集中在两个关键方面:任务差异和任务相关性。

任务差异:WDoF、TDAS等。

任务相关性:该领域的方法利用聚类或相似性度量。代表性方法包括:TaNP等。

3.2.3元嵌入初始化

元嵌入初始化旨在生成预先训练的嵌入,以加速冷启动用户和项目的拟合过程。这些方法利用元学习算法来生成预热嵌入,从而提高表示质量和适应速度。

3.2.4序列元学习

与序列推荐框架相一致,序列元学习结合了用户交互的时间顺序,利用有限的历史行为序列捕捉动态偏好。代表性方法包括:MetaTL等。

4.图关系

图关系提供了高阶信息,而不仅仅是用户或项目本身的内容特征。使用图关系知识能够将来自邻居的信息引入特定用户或项目。在这方面的主要挑战在于如何为冷启动用户或项目提供图信息,因为缺乏历史交互信息。
在这里插入图片描述

4.1交互图增强

交互图增强专注于增加冷节点在交互图上的交互数量,以便为它们提供更多的图信息。交互图增强相关的工作可以分为两大类:补充图关系和同质网络关系。

4.1.1补充图关系

这种模型旨在通过为冷实例包含图关系信息来补充原始的用户-项目交互图。基于高质量的构建边,冷实例将从其他节点聚合外部信息。代表性方法包括:CGRC、MI-GCN和UCC。

4.1.2同质网络关系

表明中心节点及其邻近节点应具有相似的行为或标签信息。为了纳入同质性网络关系,算法通常需要探索用户和项目之间的显性/隐性额外关联,例如社交关系。代表性方法包括:Shams、GME和SDCRec。

4.2图关系扩展

图关系扩展旨在扩展具有更复杂关系的原始交互图,以传递冷实例的相关图信息。可以分为三类:异构图关系、属性图关系和知识图关系。

4.2.1异构图关系

异构图通过扩展图中节点和边的类型来获得更复杂、信息更丰富的关系。该扩展通常基于其他可用关系或来自其他信息源的隐式关系挖掘。代表性方法包括:GIFT、HGNR、MvDGAE、PGD和IHGNN。

4.2.2属性图关系

属性通常揭示实例的固有信息,相似的属性可以表示两者具有相似的特征。代表性方法包括:ColdGPT和EmerG。

4.2.3知识图关系

知识图谱中的辅助信息可用于增强冷实例学习。代表性的方法包括:KGPL、MetaKG和CRKM。

4.3图聚合器改进

图聚合方法会设计一个增强模型,从有限的结构数据中提取更多可用信息以进行冷启动推荐。相关的工作可以分为两大类:聚合范围扩展和增强信息聚合器。

4.3.1聚合范围扩展

将模型的范围扩展到局部邻域之外,鼓励关注全局或者长距离上下文。通过这种方法,冷实例可以感知远距离相关节点,从而缓解直接邻域的稀疏性。代表性方法包括:MeGNN、MPT。

4.3.2信息聚合增强

细化了聚合器的功能,使其能够在冷实例的有限交互数据内捕获冷节点的更多关键信息。代表性方法包括:A-GAR。

5.领域信息

跨不同领域的迁移学习通过利用来自具有丰富数据的源领域的知识来增强具有有限信息的目标领域的推荐性能。现有工作可以分为三类:领域知识迁移、领域分布对齐和领域不变表示学习。
在这里插入图片描述

5.1领域知识迁移

通常依赖于嵌入映射、图连接或学习过程来促进知识从热源域到冷目标域的迁移。

5.1.1嵌入映射

通过非线性变换对齐两个域的嵌入空间,确保平稳有效的知识迁移。

大部分工作采用单个多层感知器进行两个域表示空间的通用映射,比如MAFT。最近的研究提出了为每个用户定制的个性化映射方法,比如PTUPCDR。

5.1.2异构连接

利用辅助图网络结构来显式建模和跨领域转移知识。辅助图可以分为知识图谱和混合图,混合图的方法包括CBMF和DisCo。

5.1.3学习过程

研究人员采用不同的训练过程和调整技术来隐式地将信息从源域转移到目标域。训练技术的方法包括WITF,调整方法包括基于元学习的方法和基于对比学习的自适应微调方法。

5.2领域分布对齐

侧重于减少源域和目标域之间的分布差异,以实现有效的知识共享。包括协同过滤对齐和辅助特征对齐。

5.2.1协同过滤对齐

利用共享的交互模式和用户行为来促进领域之间更好的知识迁移,可以分为对比对齐和潜在维度对齐。对比对齐的方法包括HGCCDR,潜在维度对齐利用编码器-解码器架构来对齐潜在表示空间中的域,比如DAUC和LACDR。

5.2.2辅助特征对齐

直接对齐源域和目标域之间的潜在嵌入分布本质上是具有挑战性的,在公共辅助特征空间上强制两个域的对齐使得该过程更容易实现。代表性方法包括DisAlign、CPKSPA和CCDR。

5.3领域不变表示学习

假设存在一个可以跨域转移的共享特征空间,捕获常见的用户便好或项目特征。

5.3.1解耦表示

该方法的优化目标是分离域共享特征和域特定特征,可分为对抗学习和注意力机制。基于对抗学习的解耦方法训练判别器来区分源域和目标域的表示,代表性方法包括Diff-MSR和UniCDR。基于注意力机制的方法采用多通道注意力机制。

5.3.2融合表示

通过多视角学习和交换学习在不同域之间融合特征,使模型在不同上下文中学习域不变的表示。多视角学习利用互补的视角创造跨域推荐的共享表示,比如通过结合内容语义和结构连接性实现域不变的表示。交换学习通过交换域特定信息来精炼域不变特征,比如CDRIB和CATN。语义学习通过融合来自用户和项目的不同辅助信息来桥接不同域,比如RCDFM。

6.世界知识

现有工作可以分为两类:LLM作为推荐系统和LLM作为知识增强器。
在这里插入图片描述

6.1LLM作为推荐系统

6.1.1提示策略

通过将推荐任务转换为自然语言处理问题来指导LLM做出准确的冷启动推荐,涉及到设计特定于任务的提示等技术,包括直接提示、集成外部信息的多步骤提示以及检索增强推荐。

直接提示提出了一种简单的直接提示方法,比如PromptRec。多步骤提示将冷启动推荐任务转化为更易于管理、模态信息丰富的多步骤任务,比如使用三步提示法:捕获用户偏好、选择代表性电影和基于以上输入进行推荐。

检索增强推荐主要用于检索相关的确切项目实体或重要信息,以便对用户/项目进行编码,从而增强基于LLM的推荐模型的建模精度。通过利用检索获得的额外和细致信息,可以显著增强对冷启动和零样本实例的建模。

6.1.2调整模型

调整LLM的动机源于需要弥合RecSys的偏好捕获过程与冷启动推荐中LLM的丰富语义理解之间的差距,分为指令调整和微调。

冷启动指令调优的总体框架是将推荐任务转换为文本到文本的生成过程,其中模型通过下一个令牌预测训练学习以自然语言解释用户历史和项目元数据。构建的基于指令的数据集使大模型推荐能够获得协同过滤知识,并无缝适应新的项目和领域,而无需额外耗时的预训练。代表性方法包括:TALLRec、P5、CoLLM、BinLLM、TransRec、RecSysLLM、IDGenRec和A-LLMRec等。

为了超越基于指令的推荐,基于微调的方法通过专门设计的损失(例如对比损失)或额外的可训练参数(例如软提示和适配器)使模型能够学习丰富的、特定于推荐领域的模式。主要目标是更明确地编码协作和语义信息,使它们能够捕获复杂的用户-项目交互,并为新项目和用户提供准确的推荐。代表性方法包括:NoteLLM、NoteLLM-2、URLLM、POD和XRec。

6.2LLM作为知识增强器

特定场景下的冷启动推荐任务的目标是利用附加信息尽可能准确地表示冷实例的偏好,而大语言模型通过海量语料信息预训练获得的世界知识可以服务于冷实例的偏好。

6.2.1LLM作为表示增强

采用LLMs作为表示增强器,具体表现为:(i) 利用其他模态感知的表示(如文本特征和多模态信息)扩展原始ID嵌入,以及 (ii) 通过统一的基于LLM的架构建模多领域知识。多模态方法包括EasyRec和SAID,多领域方法包括LLM-REC和KAR等。

6.2.2LLM作为关系增强

由于现有的推荐模型主要依赖行为特征进行建模,关系增强可以显著提升当前推荐模型对冷启动实例的建模能力。关系增强可以分为行为模拟和外部关系补充。

行为模拟方法中,LLMs可以作为行为信号生成器,通过分析用户和商品之间的语义相似性来生成有效的行为。这些有效生成的行为可以帮助解决冷启动实例的数据稀疏问题,比如ColdLLM。

外部关系补充中,LLMs可以作为区分性的中间增强器,利用世界知识和学习到的常识信息,将用户-商品交互图与额外提供的文本驱动关系信息关联起来,例如外部文本丰富的知识图,以避免冷启动实例的知识稀疏问题。代表性方法包括:CSRec和CoLaKG。

7.挑战和机遇

如图8,本文从算法开发、模型部署以及基准测试展开讨论。
在这里插入图片描述

7.1多模态冷启动推荐

多模态冷启动推荐的挑战包括:

(1)如何有效融合和利用多模态信息,因为不当的利用方法可能会引入噪声并降低性能。

(2)缺失模态信息,大多数现有推荐数据集提供的模态有限,这也限制了最先进的多模态方法在推荐系统中的应用。

(3)用户兴趣建模与多模态嵌入提取之间存在显著差距,预训练编码器通常直接用于或优化于内容导向的任务,而非用户偏好,导致内容理解与个性化之间的差异。

(4)现有方法通常未能考虑用户对不同模态的敏感性差异,因为个体可能对某些模态方面表现出更强的偏好,而对其他模态则持无差别态度。

为了解决这些挑战,本文提出以下潜在的研究方向:

(1)发展有效且高效的模态融合方法,捕捉互补信息,同时对噪声和缺失数据保持鲁棒性。

(2)构建丰富的多模态推荐数据集,整合超出文本和视觉信息的多样化模态。

(3)通过个性化的多模态嵌入技术和端到端架构,弥合多模态内容与用户兴趣建模之间的差距,实现内容理解与用户偏好的联合优化

(4)设计自适应个性化框架,根据个体用户的偏好和上下文动态调整不同模态的重要性。

7.2推荐基础模型

自然语言处理领域中,基础模型可以轻松适应各种下游任务。这些模型在从文本分类到对话生成等任务中展现了卓越的能力,显著减少了从零开始进行任务特定训练的需求。推荐领域面临着类似的机会:利用类似的“基础模型”来处理广泛的冷启动任务,从而增强适应性、效率和可扩展性。

未来的研究方向包括这些推荐基础模型的设计和实现,以及快速将基础模型适应于不同冷启动子任务的算法。这些模型不仅能够实现多任务推荐能力,还能够在不同领域之间动态调整。

7.3冷启动推荐的效率

目前基于LLM的冷启动推荐方法在训练和推理过程中需要显著的计算开销,这为实时部署带来了挑战。因此,迫切需要能够处理工业规模推荐系统并满足实时应用每秒查询要求的解决方案。

未来的研究可以优先考虑开发轻量级和可扩展的模型,并探索结合基于内容和协同过滤技术的混合策略,以提供更稳健的解决方案。实时学习机制尤为关键,因为它们能够迅速将冷启动商品或用户的早期信号纳入反馈循环,从而允许快速适应动态环境。

7.4冷启动推荐中的数据隐私

数据隐私长期以来一直是推荐系统面临的挑战,而依赖于用户信息使得冷启动推荐的挑战更加明显。因此,还存在以下问题:

(1)对附加信息的依赖。 构建用户档案是推荐系统的核心,但这可能涉及使用敏感信息。在利用有效的用户档案和保护用户隐私之间取得平衡是冷启动模型设计中的一大挑战。

(2)领域信息隐私。 在跨领域推荐系统中,隐私保护更具挑战性,特别是在冷启动场景中,数据稀疏是一个重大问题。鼓励不同领域之间的数据协作可能会导致隐私泄露。

为了解决这些问题,一些有前景的技术如下:

(1)隐私计算。 差分隐私计算可以通过向数据添加噪声来保护用户隐私信息,使得平台和攻击者无法通过分析结果推断特定个体的信息。此外,同态加密允许对加密数据直接进行计算,而无需解密,从而保护数据隐私。

(2)联邦学习。 联邦学习在冷启动问题的隐私保护方面提供了若干优势。FL允许像附加信息这样的数据保持本地,不上传到中央服务器,从而保护用户隐私。FL支持去中心化模型训练,多方可以在不共享原始数据的情况下协同训练模型,这对跨领域冷启动推荐非常有帮助。

7.5基准与统一评价

现有冷启动推荐系统的评估目前多样且不一致。因此,开发一个统一和公平的评估基准对社区来说是有前景且有意义的。

具体而言,冷启动推荐存在多种问题设置,例如严格冷启动、非严格冷启动和长尾冷启动,每种设置都需要进行公平评估。这引发了以下三个主要问题:

  1. 不同的基准数据集。 不同论文使用的数据集很少重叠,这使得研究人员难以在多个相关数据集之间进行统一比较。未来的一个有前景的方法是鼓励社区专注于选择一组高质量的数据集进行比较实验。

  2. 不同的评估设置。 这一部分的关键问题是冷用户/商品的设置。具体而言,在实验中如何定义和合成冷用户/商品?在许多冷启动研究的实验中,冷用户/商品往往通过不同的方法(时间范围、交互次数和随机选择)获得,且对冷启动设置的定义模糊,仍然缺乏统一的规则。

  3. 开源评估框架。 一个统一的开源评估代码库,用于冷启动推荐,并具有公平的评估设置和指标,将对研究社区非常有帮助。

8.总结

本文对冷启动推荐进行了全面的回顾,并提供了从内容特征、图关系、领域信息到大语言模型的世界知识的路线图。具体来说,首先正式定义冷启动推荐领域的不同研究问题。然后,系统地审查冷启动方法,在每个部分中提供背后的整体见解,并列出了一些代表性作品。此外,本文重新思考了冷启动推荐的一些挑战,并总结了一些有意义的未来方向。

相关资源整理在 Github (https://github.com/YuanchenBei/Awesome-Cold-Start-Recommendation) 中。

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

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

相关文章

设计模式03:行为型设计模式之策略模式的使用情景及其基础Demo

1.策略模式 好处:动态切换算法或行为场景:实现同一功能用到不同的算法时和简单工厂对比:简单工厂是通过参数创建对象,调用同一个方法(实现细节不同);策略模式是上下文切换对象,调用…

飞机电气系统技术分析:数字样机技术引领创新

现代飞机正向着更安全、环保和经济的方向发展,飞机系统的设计日益复杂,对各子系统的性能和可靠性也提出了更高要求。作为飞机的重要组成部分,电气系统(Electrical System,ES)不仅负责为各类机载设备提供稳定…

(01)FreeRTOS移植到STM32

一、以STM32的裸机工程模板 任意模板即可 二、去官网上下载FreeRTOS V9.0.0 源码 在移植之前,我们首先要获取到 FreeRTOS 的官方的源码包。这里我们提供两个下载 链 接 , 一 个 是 官 网 : http://www.freertos.org/ , 另…

【Unity-Game4Automation PRO 插件】

Game4Automation PRO 插件 是一个用于 Unity 引擎 的工业自动化仿真工具,它提供了对工业自动化领域的仿真和虚拟调试支持,特别是在与工业机器人、生产线、PLC 系统的集成方面。该插件旨在将工业自动化的实时仿真与游戏开发的高质量 3D 可视化能力结合起来…

element select 绑定一个对象{}

背景&#xff1a; select组件的使用&#xff0c;适用广泛的基础单选 v-model 的值为当前被选中的 el-option 的 value 属性值。但是我们这里想绑定一个对象&#xff0c;一个el-option对应的对象。 <el-select v-model"state.form.modelA" …

mybatis延迟加载、缓存

目录 一、所需表 二、延迟加载 1.延迟加载概念 2.立即加载和延迟加载的应用场景 3.多对一延迟加载查询演示 (1)实体类 User Account (2)AccountMapper接口 (3)AccountMapper.xml (4)UserMapper接口 (5)UserMapper.xml (6)在总配置文件(mybatis-config.xml)中开启延…

VIVADO FIFO (同步和异步) IP 核详细使用配置步骤

VIVADO FIFO (同步和异步) IP 核详细使用配置步骤 目录 前言 一、同步FIFO的使用 1、配置 2、仿真 二、异步FIFO的使用 1、配置 2、仿真 前言 在系统设计中&#xff0c;利用FIFO&#xff08;first in first out&#xff09;进行数据处理是再普遍不过的应用了&#xff0c…

一、1-2 5G-A通感融合基站产品及开通

1、通感融合定义和场景&#xff08;阅读&#xff09; 1.1通感融合定义 1.2通感融合应用场景 2、通感融合架构和原理&#xff08;较难&#xff0c;理解即可&#xff09; 2.1 感知方式 2.2 通感融合架构 SF&#xff08;Sensing Function&#xff09;&#xff1a;核心网感知控制…

某政务行业基于 SeaTunnel 探索数据集成平台的架构实践

分享嘉宾&#xff1a;某政务公司大数据技术经理 孟小鹏 编辑整理&#xff1a;白鲸开源 曾辉 导读&#xff1a;本篇文章将从数据集成的基础概念入手&#xff0c;解析数据割裂给企业带来的挑战&#xff0c;阐述数据集成的重要性&#xff0c;并对常见的集成场景与工具进行阐述&…

【MySQL】使用C语言链接

&#x1f308; 个人主页&#xff1a;Zfox_ &#x1f525; 系列专栏&#xff1a;MySQL 目录 一&#xff1a;&#x1f525; MySQL connect &#x1f98b; Connector / C 使用&#x1f98b; mysql 接口介绍&#x1f98b; 完整代码样例 二&#xff1a;&#x1f525; 共勉 一&#…

《Java核心技术II》并行流

并行流 从集合中获取并行流&#xff1a;Stream paralleWords words.parallelStream(); parallel方法将任意顺序流转换为并行流&#xff1a;Stream paralleWords Stream.of(wordArray).parallel(); 以下是不好的示范&#xff0c;假设对字符串的所有短单词计数&#xff1a; …

【Rust自学】13.2. 闭包 Pt.2:闭包的类型推断和标注

13.2.0. 写在正文之前 Rust语言在设计过程中收到了很多语言的启发&#xff0c;而函数式编程对Rust产生了非常显著的影响。函数式编程通常包括通过将函数作为值传递给参数、从其他函数返回它们、将它们分配给变量以供以后执行等等。 在本章中&#xff0c;我们会讨论 Rust 的一…

ETW HOOK[InfinityHook]技术解析

文章目录 概述分析过程参考资料 概述 ETW是操作系统为了对系统调用、异常等信息做了一个日志操作&#xff0c;本质就是在进行调用这些中断、异常、系统调用时会走向这个代码函数区域日志保存的功能。而ETW HOOK就是在驱动层微软的PatchGuard并未对其做到很好的检测&#xff0c…

码编译安装httpd 2.4,测试

下载链接&#xff1a;https://dlcdn.apache.org/httpd/httpd-2.4.62.tar.gz [rootopenEuler-1 ~]# yum install gcc gcc-c make -y [rootopenEuler-1 ~]# ll /root total 9648 -rw-------. 1 root root 920 Jan 10 17:15 anaconda-ks.cfg -rw-r--r-- 1 root root 9872432…

步入响应式编程篇(一)

响应式编程 为什么要有响应式编程&#xff1f;响应式编程的用法Flow api的用法处理器 为什么要有响应式编程&#xff1f; 传统编码&#xff0c;操作流程常见的是命令式编程范式&#xff0c;如对于一个请求或操作来说&#xff0c;都是串行执行&#xff0c;直到异常或执行结束&a…

C++—18、C++ 中如何写类

一、类的功能阐述 今天我们将用目前学到的类的基础知识从头开始编写一个类。只编写一个基本的Log类&#xff0c;来演示到目前为止我们学过的一些基本特性。随着接下来的学习你会看到从一个类的基本版本到一个更高级版本的过程和区别。高级版本可以做同样的事情&#xff0c;但可…

SW - 查看装配图中的零件的全路径名称

文章目录 SW - 查看装配图中的零件的全路径名称概述笔记END SW - 查看装配图中的零件的全路径名称 概述 装配图中&#xff0c;如果本机有多个不同版本的同名零件(e.g. v1/p1零件, v2/p1零件)&#xff0c;在装配图中想确认是哪个版本的零件。 如果编辑错了文件&#xff0c;或者…

【开源分享】nlohmann C++ JSON解析库

文章目录 1. Nlohmann JSON 库介绍2. 编译和使用2.1 获取库2.2 包含头文件2.3 使用示例2.4 编译 3. 优势4. 缺点5. 总结参考 1. Nlohmann JSON 库介绍 Nlohmann JSON 是一个用于 C 的现代 JSON 库&#xff0c;由 Niels Lohmann 开发。它以易用性和高性能著称&#xff0c;支持 …

神经网络基础-正则化方法

文章目录 1. 什么是正则化2. 正则化方法2.1 Dropout正则化2.2 批量归一化(BN层) 学习目标&#xff1a; 知道正则化的作用掌握随机失活 DropOut 策略知道 BN 层的作用 1. 什么是正则化 在设计机器学习算法时希望在新样本上的泛化能力强。许多机器学习算法都采用相关的策略来减小…

【C++】面试题整理(未完待续)

【C】面试题整理 文章目录 一、概述二、C基础2.1 - 指针在 32 位和 64 位系统中的长度2.2 - 数组和指针2.3 - 结构体对齐补齐2.4 - 头文件包含2.5 - 堆和栈的区别2.6 - 宏函数比较两个数值的大小2.7 - 冒泡排序2.8 - 菱形继承的内存布局2.9 - 继承重写2.10 - 如何禁止类在栈上分…