【MLLM】多模态LLM 2025上半年技术发展(Better、Faster、Stronger)

article/2025/6/24 13:58:38

note

文章目录

  • note
  • 一、新模型趋势
    • 任意模态模型
    • 推理模型
    • 小巧但功能强大的模型
    • 专家混合解码器
    • 视觉-语言-行动模型 VLA
  • 二、特殊能力
    • 视觉语言模型中的目标检测、分割和计数
    • 多模态安全模型
    • 多模态RAG:检索器和重排器
  • 三、多模态代理
  • 四、视频语言模型
  • 五、视觉语言模型的新对齐技术
  • 六、新基准测试
    • MMT-Bench
    • MMMU-Pro
  • Reference

一、新模型趋势

任意模态模型

任意模态模型能够接受任何模态的输入,并输出任何模态(图像、文本、音频)。它们通过模态对齐来实现这一点。典型的全模态模型Qwen 2.5 Omni:
在这里插入图片描述
Qwen2.5-Omni采用了一种新颖的“思考者-说话者”架构,其中“思考者”负责文本生成,而“说话者”则以流式方式产生自然语音响应。MiniCPM-o 2.6是一个拥有80亿参数的多模态模型,能够理解并生成视觉、语音和语言模态的内容。DeepSeek AI推出的Janus-Pro-7B是一个统一的多模态模型,在跨模态的理解和生成方面表现出色。它采用了分离的视觉编码架构,将理解过程与生成过程分开。

推理模型

直到2025年5月,唯一一个开源的多模态推理模型是Qwen的QVQ-72B-preview。
在这里插入图片描述

Moonshot AI团队的Kimi-VL-A3B-Thinking。它由MoonViT(SigLIP-so-400M)作为图像编码器,以及一个拥有160亿总参数、仅28亿活跃参数的专家混合(MoE)解码器组成。该模型是Kimi-VL基础视觉语言模型的长链推理微调版本,并进一步通过强化学习进行了对齐。作者还发布了一个指令微调版本,名为Kimi-VL-A3B-Instruct。该模型可以接受长视频、PDF文件、屏幕截图等输入,并且还具备代理能力。

小巧但功能强大的模型

通过增加模型参数数量和高质量合成数据来提升智能水平,但模型越大收益边际效益越小,所以可以通过知识蒸馏等缩小模型规模。小型视觉语言模型,通常指的是参数少于20亿、可以在消费级GPU上运行的模型。

(1)SmolVLM是一个小型视觉语言模型家族的典型代表。它没有通过缩小大型模型来实现,而是直接尝试将模型参数数量控制在极低水平,如2.56亿、5亿和22亿。例如,SmolVLM2试图在这些规模下解决视频理解问题,并发现5亿参数是一个很好的折中方案。在Hugging Face,我们开发了一款名为HuggingSnap的iPhone应用程序,以证明这些规模的模型可以在消费级设备上实现视频理解。

(2)谷歌DeepMind的gemma3-1b-it。它特别令人兴奋,因为它是目前最小的多模态模型之一,拥有32k的上下文窗口,并支持140多种语言。该模型属于Gemma 3模型家族,其中最大的模型在Chatbot Arena上排名第一。随后,该大型模型被蒸馏为一个10亿参数的变体。

(3)虽然不是最小的模型,但Qwen2.5-VL-3B-Instruct也值得关注。该模型可以执行多种任务,包括定位(目标检测和指向)、文档理解以及代理任务,上下文长度可达32k个标记。

# 可以通过MLX和Llama.cpp集成来使用小型模型。对于MLX,假设您已经安装了它,您可以通过以下一行代码开始使用SmolVLM-500M-Instruct:
python3 -m mlx_vlm.generate --model HuggingfaceTB/SmolVLM-500M-Instruct --max-tokens 400 --temp 0.0 --image https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/vlm_example.jpg --prompt "What is in this image?"# 可以通过以下一行代码,使用GGUF格式的gemma-3-4b-it模型,通过CLI和Llama.cpp开始使用:
llama-mtmd-cli -hf ggml-org/gemma-3-4b-it-GGUF# 可以通过以下命令将同一模型作为服务运行:
llama-server -hf ggml-org/gemma-3-4b-it-GGUF

专家混合解码器

专家混合(MoEs)模型通过动态选择并激活与给定输入数据片段最相关的子模型(称为“专家”)来处理数据。

与参数密集的同类模型相比,MoEs在推理时速度更快,因为它们只激活网络中的一小部分。它们在训练时也能快速收敛。然而,MoEs需要更高的内存成本,因为整个模型都存储在GPU上,即使只使用其中的一小部分。

在广泛采用的Transformer架构中,MoE层通常是通过替换每个Transformer块中的标准前馈网络(FFN)层来集成的。密集网络在推理时会使用整个模型,而同样大小的MoE网络则会选择性地激活一些专家。这有助于更好地利用计算资源并加快推理速度。

配备专家混合解码器的视觉语言模型似乎具有增强的性能。例如,Kimi-VL目前是最先进的开源推理模型,它采用了专家混合解码器。专家混合在MoE-LLaVA的效率提升和幻觉减少以及DeepSeek-VL2的广泛多模态能力方面也显示出令人鼓舞的结果。最新版本的Llama(Llama 4)是一个具有视觉能力的MoE。专家混合作为解码器是一个有前景的研究领域,我们预计这类模型的数量将会增加。

视觉-语言-行动模型 VLA

VLAs接受图像和文本指令作为输入,并返回指示机器人直接采取行动的文本。VLAs通过添加行动和状态标记扩展了视觉语言模型,以与物理环境进行交互和控制。这些额外的标记代表了系统的内部状态(它如何感知环境)、行动(根据命令采取的行动)以及与时间相关的信息(例如任务中步骤的顺序)。这些标记被附加到视觉语言输入中,以生成行动或策略。

VLAs通常是在基础VLM之上进行微调的。有些人进一步扩展了这一定义,将VLAs定义为任何与现实或数字世界进行视觉交互的模型。在这个定义下,VLAs可以用于UI导航或代理工作流程。但许多人认为这些应用属于VLM领域。

π0和π0-FAST是Physical Intelligence推出的首批机器人基础模型,已移植到Hugging Face的LeRobot库中。这些模型在7个机器人平台上针对68项独特任务进行了训练。它们在复杂的真实世界活动中表现出强大的零样本和微调性能,例如洗衣折叠、餐桌清理、杂货装袋、盒子组装和物体检索。

GR00T N1是NVIDIA的开源VLA基础模型,用于通用人形机器人。它能够理解图像和语言,并将其转化为行动,例如移动手臂或遵循指令,这得益于一个将智能推理与实时运动控制相结合的系统。GR00T N1也基于LeRobot数据集格式构建,这是一种简化机器人演示共享和训练的开放标准。
在这里插入图片描述

二、特殊能力

视觉语言模型中的目标检测、分割和计数

VLMs能够在传统计算机视觉任务上实现泛化。如今,模型可以接受图像和各种提示(如开放式文本),并输出带有定位标记的结构化文本(用于检测、分割等)。

去年,PaliGemma是首个尝试解决这些任务的模型。该模型接受图像和文本输入,其中文本是对感兴趣对象的描述,以及一个任务前缀。文本提示看起来像“segment striped cat”(分割条纹猫)或“detect bird on the roof”(检测屋顶上的鸟)。

对于检测任务,模型以标记的形式输出边界框坐标。而对于分割任务,模型则输出检测标记和分割标记。这些分割标记并不是所有分割像素的坐标,而是由变分自编码器解码的码本索引,该自编码器被训练用来将这些标记解码为有效的分割掩码(如下图所示)。
在这里插入图片描述
在PaliGemma之后,许多模型被引入用于执行定位任务。去年年底,PaliGemma的一个升级版本PaliGemma 2出现了,它具有相同的能力,但性能更好。另一个后来出现的模型是Allen AI的Molmo,它可以使用点来指向实例并计数对象实例。

Qwen2.5-VL也能够检测、指向和计数对象,这包括将UI元素作为对象进行处理!
在这里插入图片描述

多模态安全模型

2025年初,谷歌推出了首个开源多模态安全模型ShieldGemma 2。它基于文本安全模型ShieldGemma构建。该模型接受图像和内容策略作为输入,并返回图像是否符合给定策略的安全性判断。策略是指图像不适当的标准。ShieldGemma 2还可以用于过滤图像生成模型的输出。
在这里插入图片描述

Meta的Llama Guard 4是一个密集的多模态和多语言安全模型。它是从Llama 4 Scout(一个多模态专家混合模型)密集修剪而来,并进行了安全微调。该模型可用于纯文本和多模态推理。该模型还可以接受视觉语言模型的输出、完整的对话内容,并在将它们发送给用户之前对其进行过滤。

多模态RAG:检索器和重排器

检索增强生成(RAG)在多模态领域是如何发展的。对于复杂的文档(通常以PDF格式呈现),RAG的处理过程通常分为三个步骤:

  • 将文档完全解析为文本将
  • 纯文本和查询传递给检索器和重排器,以获取最相关的文档
  • 将相关上下文和查询传递给LLM

传统的PDF解析器由多个元素组成,以保留文档中的结构和视觉元素,如布局、表格、图像、图表等,所有这些元素都被渲染成Markdown格式。但这种设置很难维护。
在这里插入图片描述
随着视觉语言模型的兴起,这个问题得到了解决:现在有了多模态检索器和重排器。多模态检索器接受一堆PDF文件和一个查询作为输入,并返回最相关的页面编号及其置信度分数。这些分数表示页面包含查询答案的可能性,或者查询与页面的相关性。这绕过了脆弱的解析步骤。然后将最相关的页面与查询一起输入视觉语言模型,VLM生成答案。

主要有两种多模态检索器架构

  • 文档截图嵌入(DSE,MCDSE)
  • ColBERT类模型(ColPali、ColQwen2、ColSmolVLM)

DSE模型由一个文本编码器和一个图像编码器组成,每个查询返回一个向量。返回的分数是嵌入向量点积的softmax。它们为每个段落返回一个向量。
在这里插入图片描述
ColBERT类模型,如ColPali,也是双编码器模型,但有一个特点:ColPali使用视觉语言模型作为图像编码器,使用大型语言模型作为文本编码器。这些模型本质上不是编码器,但它们输出嵌入向量,然后传递给“MaxSim”。与DSE不同,这些模型的输出是每个标记的一个向量,而不是一个单一向量。在MaxSim中,计算每个文本标记嵌入向量与每个图像块嵌入向量之间的相似度,这种方法能够更好地捕捉细微差别。正因为如此,ColBERT类模型的计算成本更高,但性能更好。以下是ColPali的索引延迟情况。由于它只是一个单一模型,因此也更容易维护。
在这里插入图片描述

该任务最受欢迎的基准测试是ViDoRe,它包含英文和法文的文档,文档类型从财务报告、科学图表到行政文件不等。ViDoRe中的每个示例都包含文档图像、查询和可能的答案。文档与查询的匹配有助于对比预训练,因此ViDoRe训练集被用于训练新模型。

三、多模态代理

许多视觉语言模型发布,它们能够理解和操作用户界面(UI)。其中最新的是ByteDance的UI-TARS-1.5,它在浏览器、计算机和手机操作方面取得了出色的结果。它还可以进行推理游戏,并在开放世界游戏中运行。今年的另一个重要发布是MAGMA-8B,它是一个用于UI导航和与现实世界进行物理交互的基础模型。此外,Qwen2.5-VL(尤其是其32B变体,因为它在代理任务上进行了进一步训练)和Kimi-VL推理模型在GUI代理任务上表现出色。

2025年初,我们推出了smolagents,这是一个新的轻量级代理库,实现了ReAct框架。不久之后,我们为该库增加了视觉语言支持。这种集成发生在两个用例中:

  • 在运行开始时一次性提供图像。这对于带有工具使用的文档AI很有用。
  • 动态检索图像。这对于需要VLM代理进行GUI控制的情况很有用,因为代理需要反复截取屏幕截图。

该库为用户提供构建自己的图像理解代理工作流程的构建块。我们提供了不同的脚本和单行CLI命令,以便用户轻松开始。

(1)对于第一种情况,假设我们希望一个代理描述文档(这并不太具有代理性,但对于最小化用例来说还不错)。您可以像下面这样初始化CodeAgent(一个可以自己编写代码的代理):

agent = CodeAgent(tools=[], model=model) # 不需要工具
agent.run("Describe these documents:", images=[document_1, document_2, document_3])

(2)对于第二种情况,我们需要一个代理来获取屏幕截图,我们可以定义一个回调函数,在每个ActionStep结束时执行。对于您自己的需要动态获取图像的用例,您可以根据需要修改回调函数。为了简单起见,这里我们不详细定义它。您可以选择阅读博客文章和博客文章末尾的脚本。现在,让我们看看如何初始化带有回调和浏览器控制步骤的代理。

def save_screenshot(memory_step: ActionStep, agent: CodeAgent) -> None:"""截取屏幕截图并写入观察结果。
"""png_bytes = driver.get_screenshot_as_png()memory_step.observations_images = [image.copy()]  # 将图像持久化到memory_stepurl_info = f"当前网址:{driver.current_url}"memory_step.observations = (url_info if memory_step.observations is None else memory_step.observations + "\n" + url_info)returnagent = CodeAgent(tools=[go_back, close_popups, search_item_ctrl_f], # 传递导航工具model=model,additional_authorized_imports=["helium"],step_callbacks=[save_screenshot], # 传递回调
)
# CLI命令:
webagent "前往 xyz.com/men,进入销售部分,点击您看到的第一件服装。获取产品详情和价格,并返回它们。注意,我正在从法国购物"

可以通过运行以下CLI命令来尝试整个示例。它启动一个代理,该代理通过视觉语言模型控制网络浏览器,以完成网络自动化任务(请替换为您想要导航的网站)。

smolagents提供了不同类型的模型,例如本地Transformer模型、使用推理提供商托管的开源模型,或闭源模型提供商的端点。我们鼓励使用开源模型,因为许多代理工作流程目前需要推理,这从拥有大量参数的模型中受益。截至2025年4月,Qwen 2.5 VL是一个适合代理工作流程的候选模型,因为该模型在代理任务上进行了进一步训练。

四、视频语言模型

大多数视觉语言模型都能够处理视频,因为视频可以表示为一系列帧。然而,视频理解是棘手的,因为帧之间存在时间关系,而且帧的数量通常很多,因此需要使用不同的技术来选择一组具有代表性的视频帧。
在这里插入图片描述
一个很好的例子是Meta的LongVU模型。它通过将视频帧传递给DINOv2来降低采样率,以选择最相似的帧并将其去除,然后模型进一步通过根据文本查询选择最相关的帧来细化帧,其中文本和帧都被投影到同一个空间,并计算相似度。

Qwen2.5VL能够处理长上下文,并适应动态帧率,因为该模型是用不同帧率的视频进行训练的。通过扩展的多模态RoPE,它能够理解帧的绝对时间位置,并且可以处理不同的速率,同时仍然能够理解现实生活中事件的速度。

另一个模型是Gemma 3,它可以接受在文本提示中交错的时间戳和视频帧,例如“Frame 00.00: …”,并且在视频理解任务中表现非常出色。
在这里插入图片描述

五、视觉语言模型的新对齐技术

偏好优化是一种替代的语言模型微调方法,也可以扩展到视觉语言模型。这种方法不依赖于固定的标签,而是专注于根据偏好比较和排名候选响应。trl库提供了对直接偏好优化(DPO)的支持,包括对VLMs的支持。

以下是VLM微调的DPO偏好数据集的结构示例。每个条目由一个图像+问题对以及两个对应的答案组成:一个被选中的答案和一个被拒绝的答案。VLM被微调以生成与首选(被选中)答案一致的响应。
在这里插入图片描述
RLAIF-V是一个用于此过程的示例数据集,它包含超过83000个按照上述结构标注的样本。每个条目包括一个图像列表(通常是一个图像)、一个提示、一个被选中的答案和一个被拒绝的答案,正如DPOTrainer所期望的那样。这里有一个已经按照相应格式格式化的RLAIF-V格式数据集。以下是单个样本的示例:

{'images': [<PIL.JpegImagePlugin.JpegImageFile image mode=L size=980x812 at 0x154505570>],'prompt': [ { "content": [ { "text": null, "type": "image" }, { "text": "What should this catcher be using?", "type": "text" } ], "role": "user" } ],'rejected': [ { "content": [ { "text": "The catcher, identified by the number...", "type": "text" } ], "role": "assistant" } ],'chosen': [ { "content": [ { "text": "The catcher in the image should be using a baseball glove...", "type": "text" } ], "role": "assistant" } ]}

准备好数据集后,您可以使用trl库中的_DPOConfig__DPOTrainer_类来配置并启动微调过程。以下是使用_DPOConfig_的示例配置:

from trl import DPOConfigtraining_args = DPOConfig(output_dir="smolvlm-instruct-trl-dpo-rlaif-v",bf16=True,gradient_checkpointing=True,per_device_train_batch_size=1,per_device_eval_batch_size=1,gradient_accumulation_steps=32,num_train_epochs=5,dataset_num_proc=8,  # tokenization will use 8 processesdataloader_num_workers=8,  # data loading will use 8 workerslogging_steps=10,report_to="tensorboard",push_to_hub=True,save_strategy="steps",save_steps=10,save_total_limit=1,eval_steps=10,  # Steps interval for evaluationeval_strategy="steps",
)

要使用_DPOTrainer_训练您的模型,您可以选择提供一个参考模型来计算奖励差异。如果您使用的是参数高效微调(PEFT),则可以通过设置_ref_model=None_来省略参考模型。

from trl import DPOTrainertrainer = DPOTrainer(model=model,ref_model=None,args=training_args,train_dataset=train_dataset,eval_dataset=test_dataset,peft_config=peft_config,tokenizer=processor
)trainer.train()

六、新基准测试

在之前,MMMU和MMBench作为评估视觉语言模型的两个新兴基准测试,但随着模型发展,现在这些benchmark已经趋于饱和。

MMT-Bench

MMT-Bench旨在评估VLMs在需要专业知识、精确视觉识别、定位、推理和规划的广泛多模态任务上的表现。该基准测试包括来自各种多模态场景的31325个多选视觉问题,涵盖图像、文本、视频和点云等多种模态。它包含32个不同的元任务和162个子任务,涵盖了OCR、视觉识别或视觉-语言检索等多种任务。

MMMU-Pro

MMMU-Pro是原始MMMU基准测试的改进版本。它还评估先进AI模型在多种模态上的真实理解能力。它比MMMU更复杂,例如,它有一个仅视觉输入的设置,并且候选选项的数量从4个增加到了10个。该基准测试还纳入了真实世界模拟,其仅视觉问题来源于在模拟显示屏内截取的屏幕截图或照片,具有不同的背景、字体样式和大小,以模拟真实世界条件。

Reference

[1] Vision Language Models (Better, Faster, Stronger:https://huggingface.co/blog/vlms-2025 20250512发布


http://www.hkcw.cn/article/WJZLfbCkWd.shtml

相关文章

python从零开始实现四极场离子轨迹仿真——框架

本篇将主要讲解程序的框架部分。 该程序主要分为三个部分&#xff0c;首先是初始化部分&#xff0c;主要为设置离子质荷比、初始位置、速度。 其次为求解轨迹部分&#xff0c;通过离子位置获取对应位置的电场&#xff0c;并经由空间电荷效应修改电场后&#xff0c;通过数值求解…

YOLO系列中的C3模块解析2025.5.31

YOLO系列中的 C3模块 是YOLOv5引入的核心组件之一&#xff0c;其设计目标是通过轻量化结构和高效特征提取提升模型性能。以下是C3模块的详细解析&#xff1a; 一、C3模块的网络层级结构 C3模块&#xff08;Cross Stage Partial Network with 3 convolutions&#xff09;结合了…

在Cesium中通过geojson和3d tiles分别加载楼宇白膜

一、geojson渲染楼宇白膜&#xff08;不推荐&#xff09; 如果你没有3dtiles文件来加载白膜&#xff0c;只有geojson加载白膜可以通过GeoJsonDataSource来加载白膜&#xff0c;json格式如下。 实现代码如下 <template><div id"cesium_container"></…

CRISPR-Cas系统的小型化研究进展-文献精读137

Progress in the miniaturization of CRISPR-Cas systems CRISPR-Cas系统的小型化研究进展 摘要 CRISPR-Cas基因编辑技术由于其简便性和高效性&#xff0c;已被广泛应用于生物学、医学、农学等领域的基础与应用研究。目前广泛使用的Cas核酸酶均具有较大的分子量&#xff08;通…

【Web API系列】WebTransportSendStream接口深度解析:构建高性能实时数据传输的基石

前言 随着Web应用复杂度的不断提升&#xff0c;传统的HTTP协议在某些场景下&#xff08;如实时游戏、视频流传输&#xff09;逐渐暴露出性能瓶颈。为解决这一问题&#xff0c;W3C提出了WebTransport API&#xff0c;旨在通过基于QUIC协议的低延迟、多路复用传输机制优化实时通…

MySQL中COUNT(*)、COUNT(1)和COUNT(字段名)的深度剖析与实战应用

MySQL中COUNT语句 三种COUNT函数的解析COUNT(*)COUNT(1)COUNT(字段名) 详细性能比较与实测分析性能差异的理论基础实际性能测试案例 实际案例解析案例1&#xff1a;电商平台订单统计案例2&#xff1a;带条件的计数比较案例3&#xff1a;性能优化实例 COUNT函数与索引的关系详解…

VS Code / Cursor 将默认终端设置为 CMD 完整指南

文章目录 &#x1f9ed; 适用范围&#x1f4cc; 背景与问题分析&#x1f6e0; 配置步骤1. 打开设置&#xff08;settings.json&#xff09;2. 添加或更新配置3. 重启终端与编辑器 &#x1f4a1; 补充&#xff1a;支持多个终端配置&#x1f9ef; 常见问题排查✅ 总结 在 Windows…

数据库高可用架构设计:集群、负载均衡与故障转移实践

关键词:数据库高可用,HA架构,数据库集群,负载均衡,故障转移,SQL Server Always On,MySQL InnoDB Cluster,高可用性组,读写分离,灾难恢复 在当今瞬息万变的数字化时代,数据的价值日益凸显,数据库作为承载核心业务数据的基石,其可用性直接决定了业务的连续性与用户…

【C#】一个简单的http服务器项目开发过程详解

这跟安装NoteJs程序运行脚本文件搭建一个简单Http服务器一样&#xff0c;相比起来&#xff0c;它的优点是可以开发的应用是免安装&#xff0c;跨平台的&#xff0c;放在移动盘上便捷的&#xff0c;这里着重讲http服务器实现的过程&#xff0c;以便自主实现特定的功能和服务。 …

谷歌:贝叶斯框架优化LLM推理反思

&#x1f4d6;标题&#xff1a;Beyond Markovian: Reflective Exploration via Bayes-Adaptive RL for LLM Reasoning &#x1f310;来源&#xff1a;arXiv, 2505.20561 &#x1f31f;摘要 通过强化学习 (RL) 训练的大型语言模型 (LLM) 表现出强大的推理能力和紧急反射行为&a…

C# 文件 I/O 操作详解:从基础到高级应用

在软件开发中&#xff0c;文件操作&#xff08;I/O&#xff09;是一项基本且重要的功能。无论是读取配置文件、存储用户数据&#xff0c;还是处理日志文件&#xff0c;C# 都提供了丰富的 API 来高效地进行文件读写操作。本文将全面介绍 C# 中的文件 I/O 操作&#xff0c;涵盖基…

PCB设计教程【强化篇】——USB拓展坞原理图设计

前言 本教程基于B站Expert电子实验室的PCB设计教学的整理&#xff0c;为个人学习记录&#xff0c;旨在帮助PCB设计新手入门。所有内容仅作学习交流使用&#xff0c;无任何商业目的。若涉及侵权&#xff0c;请随时联系&#xff0c;将会立即处理 目录 前言 一、新建工程与元件…

开源版 PyMOL 如何绘制 Galidesivir 分子结构 ?

参阅&#xff1a;开源版PyMol安装保姆级教程 百度网盘下载 提取码&#xff1a;csub pip show pymol 简介: PyMOL是一个Python增强的分子图形工具。它擅长蛋白质、小分子、密度、表面和轨迹的3D可视化。它还包括分子编辑、射线追踪和动画。 先从 www.python.org 下载 python-…

Leetcode 2819. 购买巧克力后的最小相对损失

1.题目基本信息 1.1.题目描述 现给定一个整数数组 prices&#xff0c;表示巧克力的价格&#xff1b;以及一个二维整数数组 queries&#xff0c;其中 queries[i] [ki, mi]。 Alice 和 Bob 去买巧克力&#xff0c;Alice 提出了一种付款方式&#xff0c;而 Bob 同意了。 对于…

Torch Geometric环境下无线通信网络拓扑推理节点数据缺失实验

节点数据缺失样本生成&#xff1a; gcn_dataset_incomplete.py #作者&#xff1a;zhouzhichao #创建时间&#xff1a;2025/5/30 #内容&#xff1a;生成残缺数据集用于实验import h5py import numpy as np import torch from torch_geometric.data import InMemoryDataset, Da…

【网络与信息安全】实验三 RSA加解密与签名验证

实验三、RSA加解密与签名验证 一、实验基本信息 实验名称&#xff1a;RSA加解密与签名验证实验目的&#xff1a; 理解 RSA 加密解密 与 数字签名验证 的原理。借助 CyberChef 可视化平台&#xff0c;观察和理解加密与签名背后的数据变化。 二、实验环境 操作系统&#xff1a…

HackMyVM-Ephemeral3

信息搜集 主机发现 ┌──(root㉿kali)-[~] └─# arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:39:60:4c, IPv4: 192.168.43.126 Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.43.1 c6:45:66:05:91:88 …

131. 分割回文串-两种回溯思路

我们可以将字符串分割成若干回文子串&#xff0c;返回所有可能的方案。如果将问题分解&#xff0c;可以表示为分割长度为n-1的子字符串&#xff0c;这与原问题性质相同&#xff0c;因此可以采用递归方法解决。 为什么回溯与递归存在联系&#xff1f;在解决这个问题时&#xff0…

Another Redis Desktop Manager 1.3.7 安装教程 - 详细步骤图解 (Windows)

在安装前需要下载安装包&#xff1a;https://pan.quark.cn/s/2dd4432cefaa 下载安装包 先找到那个叫 Another-Redis-Desktop-Manager.1.3.7.exe 的文件&#xff0c;双击它运行 安装向导 接着会出来安装界面&#xff0c;直接点“下一步”&#xff08;Next&#xff09;继续。 …

ShenNiusModularity项目源码学习(32:ShenNius.Admin.Mvc项目分析-17)

栏目管理页面用于新建、维护及删除系统CMS管理模块的栏目信息&#xff0c;栏目信息用于分类管理文章&#xff0c;其后台控制器类ColumnController位于ShenNius.Admin.Mvc项目的Areas\Cms\Controllers内&#xff0c;页面文件位于同项目的Areas\Cms\Views\Column内&#xff0c;其…