论文笔记(七十八)Do generative video models understand physical principles?
Do generative video models understand physical principles?
- 文章概括
- Physics-IQ基准
- 数据集
- 评估协议
- 为什么要创建一个真实世界的Physics-IQ数据集
- 模型
- 物理理解的评估指标
- 动作发生在哪里?空间IoU(Spatial IoU)
- 动作在哪里、何时发生?时空IoU(Spatiotemporal IoU)
- 动作发生在哪里,以及发生了多少?加权空间IoU(Weighted spatial IoU)
- 动作是如何发生的?均方误差(MSE)
- 视觉真实感的评估指标:MLLM评估。
- 结果
- 物理理解
- 视觉真实感:多模态大型语言模型评估
- 讨论
- 视频模型是否理解物理原理?
- 视觉真实感并不意味着物理理解。
- 数据集偏差在模型生成中有所体现
- 评估指标及其局限性
- 展望:在没有交互的情况下能否实现理解?
- 致谢
- 补充材料
- 所有Physics-IQ场景的概览
- 不同MSE值的可视化
- 调整视频帧率
- 生成二值掩码视频
- MLLM评估提示语
- 生成二值掩码视频
- MLLM评估提示语
文章概括
引用:
@article{motamed2025generative,title={Do generative video models learn physical principles from watching videos?},author={Motamed, Saman and Culp, Laura and Swersky, Kevin and Jaini, Priyank and Geirhos, Robert},journal={arXiv preprint arXiv:2501.09038},year={2025}
}
Motamed, S., Culp, L., Swersky, K., Jaini, P. and Geirhos, R., 2025. Do generative video models learn physical principles from watching videos?. arXiv preprint arXiv:2501.09038.
主页: https://physics-iq.github.io/
原文: https://arxiv.org/abs/2501.09038
代码、数据和视频: https://github.com/google-deepmind/physics-IQ-benchmark
系列文章:
请在 《 《 《文章 》 》 》 专栏中查找
宇宙声明!
引用解析部分属于自我理解补充,如有错误可以评论讨论然后改正!
AI视频生成正经历一场革命,其质量和真实感正在迅速提升。这些进展引发了一场激烈的科学辩论:视频模型是否在学习“世界模型”,从而发现物理定律——或者说,它们只是一些精巧的像素预测器,在没有理解现实物理原理的情况下实现视觉真实感?我们通过开发Physics-IQ来回应这一问题,这是一个全面的基准数据集,只有通过对各种物理原理的深入理解才能解决,例如流体动力学、光学、固体力学、磁学和热力学。我们发现,在一系列现有模型中(包括Sora、Runway、Pika、Lumiere、Stable Video Diffusion和VideoPoet),其物理理解能力严重受限,且与视觉真实感无关。与此同时,一些测试案例已经能够被成功解决。这表明,仅通过观察就习得某些物理原理是可能的,但仍然存在重大挑战。尽管我们预计未来将出现快速的进展,但我们的工作表明,视觉真实并不等同于物理理解。我们的网址是Physics-IQ-website;代码在Physics-IQ-benchmark。
机器能否在没有与世界互动的情况下真正理解世界?这个问题正处于有关AI视频生成模型能力的持续辩论核心。尽管生成逼真的视频长期以来一直被认为是深度学习中尚未解决的重大挑战之一,但这种情况最近发生了改变。在相对较短的时间内,这一领域已经出现了一些令人印象深刻的视频生成模型(1–3),激发了公众和研究人员的想象力。迈向通用人工智能的一个重要里程碑,是构建能够理解世界的机器。如果不能理解,就不能创造(用费曼的话说),那么这些模型能够创造视觉上真实的场景,就是实现这一能力的关键一步。然而,成功生成是否等于成功理解,仍是一个激烈争论的话题。换句话说,只通过“观看”视频,生成式视频模型是否能学会支撑现实的物理原理?
支持者认为,模型的训练方式——即预测视频的延续(也称为“下一帧预测”)——是一种迫使模型理解物理原理的任务。按照这种观点,如果模型不理解物体的运动方式(轨迹)、物体是向下而不是向上掉落(重力)、以及将果汁倒入一杯水中会如何改变颜色(流体动力学),它就不可能预测序列的下一帧。以类比的方式来看,大型语言模型也是通过类似方式训练的,即预测文本中的下一个token(字符或单词);这种任务设置虽简单,却已被证明足以赋予模型令人惊叹的能力和文本理解。此外,预测未来也是生物感知的核心原则之一:大脑不断生成关于即将到来的感官输入的预测,从而实现对信息的高效处理(4),并建立一个如冯·赫尔姆霍茨(5)及后来的预测编码理论(6)所提出的“心理模型”。简而言之,成功的预测意味着成功的理解。
另一方面,也存在反对通过观察实现理解的重要论点。按照因果性原理,“观看”视频(更准确地说,是训练模型预测视频的延续)是一种被动过程,模型无法与世界互动。这种缺乏互动的状态意味着模型无法观察干预行为带来的因果效应(比如孩子在玩玩具时所能做到的那样)。因此,模型面临着一项几乎不可能完成的任务——如果它想要理解物理原理,就必须区分相关性与因果性。
此外,被称为“通往物理世界通用模拟器的有希望路径”(1)的视频模型,或许感知的并非现实世界,而是数字世界——这与机器人或几乎所有生物所感知的真实世界不同。因此,持怀疑态度的人认为,视觉真实并不等于真正的理解:生成逼真视频所需要的,只是从模型那庞大的训练数据海洋中复现常见模式——也就是所谓“没有理解的捷径”(7,8)。
面对这两种截然相反的观点,我们该如何判断生成式视频模型是否真正学习了物理原理?为了以可量化、可处理的方式应对这个问题,我们创建了一个具有挑战性的视频模型物理理解测试平台:“Physics-IQ”基准。其核心理念是让视频模型做它们最擅长的事情:预测视频的延续。为了测试其理解能力,我们设计了一系列多样化场景,在这些场景中,想要做出正确的预测,必须对物理原理有深入的理解,超越模式复现,并测试其分布外泛化能力。
例如,模型需要预测一串多米诺骨牌如何倒下——在正常情况下与在中间放了一只橡胶鸭子的情况下;又或者,枕头在被哑铃砸下与被纸片砸下时的不同反应。这组多样化的场景涵盖了固体力学、流体动力学、光学、热力学和磁学,共包含396段高质量视频,拍摄角度来自三个不同视角,并在受控环境下录制。样例如图1所示。我们随后将模型的预测结果与真实的后续视频进行比较,并使用一系列反映不同目标的评估指标,分析了多个现有模型:Sora(1)、Runway Gen 3(9)、Pika 1.0(10)、Lumiere(11)、Stable Video Diffusion(12)和VideoPoet(13)。
图1. Physics-IQ数据集中用于测试生成式视频模型物理理解的示例场景。模型被展示视频的开头部分(对于image2video模型为单帧图像;对于video2video模型为3秒的视频),并需要预测接下来5秒视频的变化,这一任务要求对不同物理属性的理解:固体力学、流体动力学、光学、热力学和磁学。动态图版本请参见此处。
Physics-IQ基准
数据集
我们的目标是开发一个数据集,用于测试视频生成模型在不同物理定律上的物理理解能力,如固体力学、流体动力学、光学、热力学和磁学。为此,我们创建了Physics-IQ数据集,该数据集包含396段视频,每段视频时长8秒,涵盖66种不同的物理场景。我们数据集中的每一个场景都聚焦于某一特定的物理定律,旨在测试视频生成模型对物理事件的理解能力。这些事件包括诸如碰撞、物体连续性、遮挡、物体恒存性、流体动力学、链式反应、在力(例如重力)作用下的轨迹、材料属性与反应,以及光线、阴影、反射和磁性等示例。
每个场景均以每秒30帧(FPS)进行拍摄,分辨率为3840×2160(16:9宽高比),从三个不同角度——左侧、中心和右侧——使用高质量的Sony Alpha a6400相机配备16-50mm镜头进行拍摄。每个场景在相同条件下拍摄两次(第一次和第二次),以捕捉现实物理交互中固有的变异性。这些变异在现实世界中是可以预期的,例如由混乱运动、微小摩擦变化和力的轨迹差异所引起的因素。在本文中,我们将同一场景两次录制之间所观察到的差异称为物理变异(physical variance)。这最终构成总共396段视频(66个场景×3个视角×2次拍摄)。我们所有的视频均由静态相机拍摄,无相机运动。视频的拍摄设置如图8所示。完整的数据集及用于评估模型预测的代码在此开源发布:
https://github.com/google-deepmind/physics-IQ-benchmark
图8. 拍摄设置示意图(上)与拍摄视角示意图(下)
评估协议
物理理解可以通过不同方式进行测量。其中最严格的测试之一是:一个模型能否预测一个具有挑战性且不寻常的视频如何继续——例如,一串多米诺骨牌中间放置了一只橡胶鸭子,从而中断了骨牌链。像这样的分布外场景(out-of-distribution scenarios)测试的是模型的真实理解,因为这些情况无法通过复现训练数据中见过或记住的模式来解决(例如参考文献7, 14–16)。因此,我们通过使用完整的8秒视频(其中包含有趣的物理事件),将其分割为3秒的条件视频(conditioning video)和5秒的测试视频(test video,作为真实标签),来测试视频生成模型的物理理解能力。然后将条件信号提供给模型:对于video2video模型(在图中称为多帧模型(multiframe models)),输入的是3秒的视频;而对于image2video模型(在图中称为i2v模型),则输入的是这段视频的最后一帧,我们称之为切换帧(switch frame)。
由于视频模型的训练方式本身就是在给定前一帧(或多帧)作为条件信号的情况下生成接下来的帧,我们的评估协议与这些模型的训练范式完全匹配。切换帧是针对每个场景手动精心挑选的,以便提供足够的信息描述该物理事件及其中的物体,同时又确保想要成功预测视频的延续需要一定程度的物理理解(例如,在涉及多米诺骨牌链式反应的场景中,切换帧对应的是第一块骨牌刚刚被推倒、但尚未接触到第二块骨牌的那个瞬间)。我们为支持多帧条件输入的视频模型提供尽可能多的条件帧(最多3秒)。一些视频模型(例如Runway Gen 3、Pika 1.0 和 Sora)是基于单张图像生成后续帧的。对于这些模型,我们仅提供切换帧作为条件信号。图9展示了Physics-IQ数据集中所有场景的切换帧。
无论是多帧条件输入模型还是单帧条件输入模型,均可额外接受由人类撰写的文本描述,作为场景的条件输入,该文本描述的是条件视频的内容,但不会透露未来事件的结果。对于image2video(i2v)和多帧视频模型的评估,我们同时提供文本描述和条件帧作为输入信号。在我们研究的模型中,只有Stable Video Diffusion不接受文本作为条件输入。
图2. Physics-IQ评估协议概览。一个视频生成模型基于条件帧生成一个5秒的视频延续,对于支持文本输入的模型,还可以选择性地加入条件帧的文本描述。生成的视频将与真实测试帧进行比较,使用四个度量指标来量化物理理解的不同属性。这些度量标准在方法部分中定义并解释。用于运行评估的代码可在Physics-IQ-benchmark中获取。
为什么要创建一个真实世界的Physics-IQ数据集
关于视频生成模型是否能够理解物理原理的问题,已经通过一系列旨在评估物理推理能力的基准进行过探索。Physion(17)及其后续版本Physion++(18)利用物体碰撞和稳定性来评估模型预测物理结果以及在动态交互过程中推断物体相关属性(例如质量、摩擦力)的能力。类似地,CRAFT(19)和IntPhys(20)评估因果推理和直觉物理,测试模型是否能够推断出力的存在或理解物体恒存性。
直觉物理在认知科学中有着丰富的研究历史,其核心在于理解人类如何建立对物理原理的常识性直觉(例如参考文献21–31)。近期的研究将物理推理评估扩展到了生成式视频模型上。VideoPhy(32)和PhyGenBench(33)专注于通过基于文本的描述而非视觉数据来评估物理常识。这些工作强调对物理原理的逻辑推理,但没有包含真实世界的视频或动态视觉语境。PhysGame(34)聚焦于游戏玩法,而Cosmos项目(35)旨在促进更优秀的具身AI,包括机器人系统。LLMPhy(36)将大型语言模型与不可微分的物理模拟器结合起来,迭代地估算物理超参数(例如摩擦、阻尼、布局)并预测场景动态。
其他基准,如CoPhy(37)和CLEVERER(38),强调视频场景中的反事实推理和因果推理。ESPRIT(39)将物理推理任务与自然语言解释相结合以增强可解释性,而PhyWorld(40)评估生成式视频模型编码物理规律的能力,重点在于物理真实感。最近模型与方法的综述详见文献(41)。
然而,许多基准存在一个主要缺点,即它们所使用的数据是合成的(见图3中的样例)。这会引入一个“真实 vs 合成”的分布偏移,当用于测试在自然视频上训练的视频模型时可能会干扰评估结果。Physics-IQ数据集通过提供真实世界的视频,捕捉多样且复杂的物理现象(见图1),克服了这一局限性。每个场景有三个视角,控制且可测量的物理变异性(通过每段视频拍摄两次实现),并设计具有挑战性的分布外场景,为评估视频生成模型提供了一个严谨的框架。
图3. 与物理理解相关的近期合成数据集的定性概览(参考文献17–20, 37–40)。
这些数据集在其设计目的上表现出色,但由于存在分布偏移,因此并不适合用于评估在真实世界视频上训练的模型。
模型
我们在基准测试中评估了八个不同的视频生成模型:VideoPoet(包括i2v和多帧版本)(13)、Lumiere(i2v和多帧版本)(11)、Runway Gen 3(i2v)(9)、Pika 1.0(i2v)(10)、Stable Video Diffusion(i2v)(12)和Sora(i2v)(1)。我们注意到Luma(42)和Veo2(2)是另外两个流行的视频生成模型,但未包含在我们的基准中,因为Luma Labs的使用政策禁止基准测试,而Veo2在撰写本文时尚未公开发布。
不同模型对输入条件的要求不同(单帧、多帧或文本条件)、帧率(8–30FPS)和分辨率(从256×256到1280×768)也各不相同。表2展示了一个概览。在我们的研究中,我们通过对Physics-IQ视频进行预处理,精确匹配每个模型所偏好的输入条件、帧率和分辨率(见算法1中的伪代码)。
表2. 被评估视频模型的技术规格,包括输入条件方式、帧率(FPS)和分辨率。
VideoPoet和Lumiere是我们研究中唯一能够接受多帧作为条件输入的两个模型。这些模型还包括一个超分辨率阶段,即它们首先生成低分辨率视频,然后再将其上采样为高分辨率。由于我们观察到低分辨率输出已经足以测试物理真实感,因此我们在测试中跳过了这一步。该基准所包含的物理交互具有明显的时间信息,因此通常可以预期多帧模型在理论上应当优于i2v模型。
物理理解的评估指标
视频生成模型通常使用一些评估生成视频视觉质量和真实感的指标(参考文献43–46)和基准(参考文献47–49)。这些指标包括峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)(43)、结构相似性指数(Structural Similarity Index Measure,SSIM)(44)、弗雷歇视频距离(Fréchet Video Distance,FVD)(45, 50)以及感知图像块相似性(Learned Perceptual Image Patch Similarity,LPIPS)(46)。这些指标适用于将生成视频的外观、时间平滑性和统计特征与真实视频进行比较。
然而,不幸的是,这些指标并不适合用于评估视频模型是否理解物理规律。例如,PSNR和SSIM都是评估像素级相似性的指标,但无法对视频中的运动与交互是否正确做出响应;FVD衡量整体特征分布,但不会因物理上不合理的动作惩罚模型;LPIPS则关注的是与人类感知相符的相似性,而非物理合理性。虽然这些指标在各自设计目标上非常有效,但它们并不能判断一个模型是否真正理解了现实世界的物理。
在我们的基准测试中,我们使用以下四个指标来追踪物理理解的不同方面:
- 动作发生在哪里?——空间IoU(Spatial IoU)
- 动作在哪里、何时发生?——时空IoU(Spatiotemporal IoU)
- 动作在哪里发生、发生了多少?——加权空间IoU(Weighted Spatial IoU)
- 动作是如何发生的?——均方误差(MSE)
这四个指标将在下文中详细解释,随后它们被组合为一个单一的得分,即Physics-IQ得分,通过将每个单项分数相加(其中MSE使用负号,因为越小越好)来获得。这个Physics-IQ得分经过归一化处理,使得物理变异性(physical variance)——即我们可以合理预期模型能够捕捉到的上限——对应为100%。
动作发生在哪里?空间IoU(Spatial IoU)
动作发生的位置是衡量物理“正确性”的一个重要指标。例如,在图1所示的“橡胶鸭打断多米诺骨牌链条”这一场景中,只有橡胶鸭右侧的骨牌应该倒下,而左侧的骨牌应保持不动。同样地,一个运动球体的空间轨迹也能反映该运动是否真实可信。我们的空间IoU指标将生成视频与真实视频进行比较,以判断动作/运动的位置是否与真实情况相符。
由于基准视频是从静态视角拍摄的,没有相机运动,因此可以通过在帧之间对像素强度变化设置一个简单的阈值(伪代码见算法2),轻松识别动作发生的位置。由此产生一个二值的 h × w × t h×w×t h×w×t“运动掩码视频(motion mask video)”,用于突出显示场景中任何时间点的运动区域。空间IoU随后通过对时间维度执行最大值操作,将这些掩码压缩为一个二值的 h × w h×w h×w空间“运动图(motion map)”——其原理类似于显著性图(saliency map)。因此,运动图在某个特定位置在任意时间点发生过动作时,该位置的值为1;否则为0。
该运动图随后与来自真实视频的运动图进行比较,采用交并比(Intersection over Union,IoU)这一常用于目标检测任务的指标,用于衡量两个区域的重叠程度,并对不一致区域进行惩罚:
Spatial-IoU = ∣ M real binary, spatial ∩ M gen binary, spatial ∣ ∣ M real binary, spatial ∪ M gen binary, spatial ∣ \text{Spatial-IoU} = \frac{|M_{\text{real}}^{\text{binary, spatial}} ∩ M_{\text{gen}}^{\text{binary, spatial}}|}{|M_{\text{real}}^{\text{binary, spatial}} ∪ M_{\text{gen}}^{\text{binary, spatial}}|} Spatial-IoU=∣Mrealbinary, spatial∪Mgenbinary, spatial∣∣Mrealbinary, spatial∩Mgenbinary, spatial∣
其中, M real binary, spatial M_{\text{real}}^{\text{binary, spatial}} Mrealbinary, spatial和 M gen binary, spatial M_{\text{gen}}^{\text{binary, spatial}} Mgenbinary, spatial分别是基于真实视频与生成视频所计算的运动图。空间IoU用于衡量动作发生的位置是否正确。
动作在哪里、何时发生?时空IoU(Spatiotemporal IoU)
时空IoU比空间IoU更进一步,它还考虑了动作发生的时间。与空间IoU对时间维度进行压缩不同,时空IoU是逐帧比较两个运动掩码视频(分别基于真实视频和生成视频),并在时间维度 t t t上进行平均计算:
Spatiotemporal-IoU ( M real , M gen ) = ∣ M real ∩ M gen ∣ ∣ M real ∪ M gen ∣ \text{Spatiotemporal-IoU}(M_{\text{real}}, M_{\text{gen}}) = \frac{|M_{\text{real}} ∩ M_{\text{gen}}|}{|M_{\text{real}} ∪ M_{\text{gen}}|} Spatiotemporal-IoU(Mreal,Mgen)=∣Mreal∪Mgen∣∣Mreal∩Mgen∣
其中, M real M_{\text{real}} Mreal和 M gen M_{\text{gen}} Mgen分别是真实视频和生成视频对应的 h × w × t h×w×t h×w×t的二值运动掩码。因此,时空IoU不仅跟踪动作在视频中发生在哪里,还跟踪它是否发生在正确的时间点。如果一个模型在空间IoU上表现良好但在时空IoU上表现较差,这就意味着模型虽然预测了动作发生的位置是正确的,但时间点是错误的。
动作发生在哪里,以及发生了多少?加权空间IoU(Weighted spatial IoU)
加权空间IoU在形式上与空间IoU类似,都是比较两个 h × w h×w h×w的“运动图”。然而,它不是比较二值运动图(即某个位置是否发生过动作),而是进一步评估在给定位置发生了多少动作。这使得它能够区分不同类型的运动,例如由钟摆引起的运动(在一个区域内重复运动)与滚动的球(只经过某个位置一次)所造成的运动。
加权空间IoU的计算方式是,首先使用前文空间IoU部分所述的 h × w × t h×w×t h×w×t二值运动掩码视频,然后对时间维度 t t t进行加权压缩(而非取最大值)。这种加权的方式就是对每一帧的动作进行平均。由此得到一个加权的 h × w h×w h×w空间“运动图”。
随后,通过对两个加权运动图中每个像素位置的最小值求和,并除以每个像素位置的最大值,计算该指标:
Weighted-spatial-IoU = ∑ i = 1 n min ( M real , i weighted, spatial , M gen , i weighted, spatial ) ∑ i = 1 n max ( M real , i weighted, spatial , M gen , i weighted, spatial ) \text{Weighted-spatial-IoU} = \frac{\sum_{i=1}^{n} \min(M_{\text{real},i}^{\text{weighted, spatial}}, M_{\text{gen},i}^{\text{weighted, spatial}})}{\sum_{i=1}^{n} \max(M_{\text{real},i}^{\text{weighted, spatial}}, M_{\text{gen},i}^{\text{weighted, spatial}})} Weighted-spatial-IoU=∑i=1nmax(Mreal,iweighted, spatial,Mgen,iweighted, spatial)∑i=1nmin(Mreal,iweighted, spatial,Mgen,iweighted, spatial)
其中, M real weighted, spatial M_{\text{real}}^{\text{weighted, spatial}} Mrealweighted, spatial和 M gen weighted, spatial M_{\text{gen}}^{\text{weighted, spatial}} Mgenweighted, spatial分别表示真实视频和生成视频在各位置上动作发生的强度的加权运动图。因此,加权空间IoU不仅衡量动作发生在哪里,也衡量动作发生的量级(多少)。
动作是如何发生的?均方误差(MSE)
最后,**均方误差(MSE)**计算的是两个帧(例如一帧真实帧 f real f_{\text{real}} freal与一帧生成帧 f gen f_{\text{gen}} fgen)中对应像素值之间的平方差的平均值。给定两个帧 f real f_{\text{real}} freal和 f gen f_{\text{gen}} fgen,其MSE计算公式如下:
MSE ( f real , f gen ) = 1 n ∑ i = 1 n ( f real , i − f gen , i ) 2 \text{MSE}(f_{\text{real}}, f_{\text{gen}}) = \frac{1}{n} \sum_{i=1}^{n} (f_{\text{real},i} - f_{\text{gen},i})^2 MSE(freal,fgen)=n1i=1∑n(freal,i−fgen,i)2
其中 n n n表示该帧中的像素总数。MSE关注的是像素级的保真度;这是一种非常严格的要求,对物体的外观和交互方式都非常敏感。例如,如果一个生成模型在生成过程中有改变物体颜色的倾向,那么这种在物理上不真实的事件将会被MSE严重惩罚。因此,MSE能够捕捉到前面三个指标未能覆盖的维度。没有任何一个指标是完美的,也不应单独使用它们,但这四个指标结合在一起,能够全面评估视频生成模型在物理真实感方面的不同属性。由于原始的MSE值有时难以直观理解,我们在图10中提供了相关直观解释。
视觉真实感的评估指标:MLLM评估。
除了衡量物理真实感之外,我们还希望追踪一个模型在生成逼真视频方面的说服力,这一能力由一个多模态大型语言模型(MLLM,在本研究中为:Gemini 1.5 Pro(51))进行评估。为了避免模型偏差对评分结果的影响,我们并未直接让模型评分视频,而是采用心理物理学中被广泛认可的实验方法,即2AFC范式。2AFC指的是双选强迫选择(two-alternative-forced-choice)。在我们的实验中,MLLM会接收到一对真实与生成的视频,这些视频属于同一个场景,但顺序随机打乱。然后,要求MLLM指出哪一个是生成的视频。MLLM评估得分以百分比形式表示,表示其在所有视频对中识别正确的准确率,随机猜测的基准为50%。任何高于50%的准确率表明,MLLM至少在某些情况下能够正确识别出生成视频;而接近50%的准确率则说明视频生成模型成功地欺骗了MLLM,使其将生成视频误判为真实视频,这表明模型具有较高的视觉真实感。关于该实验的详细信息可见附录。
结果
物理理解
我们的Physics-IQ基准的目标是理解并量化生成式视频模型是否学会了物理原理。因此,我们在基准数据集中对每一个场景以及每一个摄像机角度(左侧、中心、右侧)对研究中的八个模型进行测试。这些样本可在图1中看到。
我们首先在图4中报告了所有与物理理解相关指标(Spatial-IoU、Spatiotemporal-IoU、Weighted-spatial-IoU、MSE)的聚合Physics-IQ结果。该图左半部分的主要结论是:所有模型与物理变异性基准线之间都存在巨大差距,得分最高的模型也仅达到100.0%中的29.5%。如我们在前文所述,每个场景都录制了两次(take 1和take 2),以估计现实世界物理现象中自然变异的范围。这个估计值被称为物理变异性(physical variance);图中的分数已被归一化,使得仅因物理随机性不同的真实视频对得分为100.0%。
图4. 当前的视频生成模型在多大程度上理解物理原理?左图。 Physics-IQ得分是对四个单项指标的聚合衡量,并进行了归一化处理,使得仅因物理随机性而有所不同的真实视频对的得分为100%。所有被评估的模型都表现出显著差距,得分最高的模型也仅为29.5%,这表明其物理理解能力仍然严重受限。右图。 此外,图中还展示了模型在四个指标上的平均排名;左图中的聚合结果与右图的平均排名之间的斯皮尔曼相关系数(Spearman correlation)为-0.92,p < 0.005,这说明将多个指标聚合为一个Physics-IQ得分在很大程度上保留了模型的相对排序。
模型性能与真实视频之间的这一差距表明,当前强大的视频生成模型在物理理解方面严重不足。在不同模型中,VideoPoet(multiframe)(13)排名最高;有趣的是,VideoPoet是一个因果模型(causal model)。对于那两个既有image2video(i2v)版本又有多帧条件(multiframe)版本的模型,其多帧版本的表现都优于i2v版本。这是可以预期的,因为在我们具有挑战性的Physics-IQ基准上要求模型预测未来,访问时间信息(多帧模型具有)应当会有所帮助。
进一步细化总体结果,图6将模型性能按照不同物理类别进行了细分,包括固体力学、流体动力学、光学、热力学和磁学。虽然没有任何一个类别可以被认为已经“解决”,但在不同类别之间模型的表现是有差异的,某些类别显示出有希望的趋势,不同模型之间也存在性能差异。
图6. 各视频生成模型在不同物理类别(列)和评估指标(行)上的性能比较。
前三个指标中得分越高越好;最后一个指标中数值越低越好。图中用虚线表示物理变异性(即:真实视频之间仅因物理随机性差异所能达到的性能)。在所有指标和物理类别中,模型整体表现出明显的物理理解缺失。像**Spatial-IoU(第一行)**这类要求较宽松、仅评估动作发生“位置”的指标往往会得到较高得分,而那些同时考虑动作发生的“时间”或“强度”的更严格指标则得分较低。
值得注意的是,所有模型在空间IoU(Spatial-IoU) 上的表现明显更好——这是一个要求最低的指标,因为它仅关注动作发生的“位置”,而不考虑动作是否发生在正确时间点(如Spatiotemporal-IoU所衡量),或是否具有正确的动作强度(如Weighted-spatial-IoU所衡量)。
此外,即便是像MSE这样相对简单的指标,也表现出真实物理视频与模型生成预测之间的巨大差距。
各模型在每一个单独指标上的表现详见表1。如聚合结果所预示的那样,VideoPoet(multiframe) 在四个指标中有三个表现最好。
表1. 不同模型在各评估指标上的得分比较。 每个指标中表现最好的模型已用加粗字体标出。请注意,**物理变异性(Physical Variance)**作为每个指标的性能上限,用于表示两个真实视频之间的差异,并反映现实世界场景中固有的变异性。
在定性方面,Sora生成的视频通常在视觉和艺术表现上更具优势,但它们经常出现切换镜头(transition cuts)——尽管我们明确要求不得更换摄像角度——这一行为在多个指标中会被惩罚。我们预计,如果该模型未来版本能更严格遵循提示(如使用静态摄像机视角、无摄像机移动),其Physics-IQ得分将会有显著提升。
在图7中,我们展示了模型生成视频的成功与失败案例的定性分析结果。
图7. 展示VideoPoet与Runway Gen 3这两个最佳模型在流体动力学与固体力学类别下的成功与失败案例。 根据我们的评估指标,这两个模型都能够在某些场景中生成物理合理的帧,例如:VideoPoet成功模拟了“在玻璃上涂抹颜料”的场景,Runway Gen 3成功模拟了“将红色液体倒在橡胶鸭身上”的场景。与此同时,它们在模拟“球掉入箱子中”或“用刀切橘子”这类情境时都失败了。该图的动态图版本请参见在线链接。
视觉真实感:多模态大型语言模型评估
图5. 视觉真实感与物理理解之间的关系。
左图。 多模态大型语言模型(Gemini 1.5 Pro)在双选强迫选择(2AFC)范式下被要求从每一个场景中真实视频与生成视频的配对中识别出生成视频(即MLLM得分)。随机猜测的基准为50%;得分越低,说明该模型越难区分生成视频与真实视频(=视觉真实感越好)。在所有模型中,Sora生成的视频最难被模型区分出与真实视频的差异,而Lumiere(multiframe)生成的视频最容易识别为“生成”。
右图。 那些生成“外观看起来真实”的视频的模型(由MLLM得分评估)是否也能在物理理解方面得分更高(由Physics-IQ得分评估)?这个散点图展示了一个包含线性拟合的关系图,阴影区域为95%的置信区间。结果表明:视觉真实感与物理理解之间没有相关性(皮尔逊相关系数 r = − 0.46 r=-0.46 r=−0.46, p = 0.249 p=0.249 p=0.249,不显著)。请注意,为便于解读,该图中纵轴方向为反转(图中向右上表示更好)。
我们的结果表明,当前的生成式视频模型在物理理解方面严重不足。那么,为什么这些模型在网上传播的样本看起来却如此逼真?为此,我们决定通过让一个强大的多模态大型语言模型——Gemini 1.5 Pro(51)——识别Physics-IQ基准中每个场景下两段视频中哪一段是模型生成的,从而量化生成视频的视觉真实感。该实验的结果展示在图5(左)中。
MLLM得分用于评估一个视频生成模型欺骗多模态大型语言模型,使其将生成视频误判为真实视频的能力。当准确率接近随机猜测水平(50%)时,表明MLLM难以分辨真实视频与生成视频,从而反映出生成视频的视觉真实感较高。
总体来看,MLLM在识别模型生成的视频方面通常表现良好(例如Lumiere multiframe的识别准确率高达86.9%);尽管如此,模型给出的判断理由往往与视频的视觉内容无关,类似于人类实验中已知的事后推理(post-hoc rationalizations)(52)。
有一个模型表现尤为突出:Sora的MLLM得分为55.6%,显著优于所有其他模型。Runway Gen 3和**VideoPoet(multiframe)**分别以74.8%和77.3%的得分位居第二和第三,但与Sora仍有显著差距。
因此,像Sora这样的高能力模型确实能够生成视觉上非常真实的视频——尽管如前文所示,其在理解物理原理方面的能力非常有限。这个发现与一系列有趣研究的结论一致,这些研究指出许多深度学习模型同样缺乏对直觉物理和因果推理的理解(参考文献53–58),有时甚至被称为“盲目”的(59)。
对于视频模型,我们没有发现视觉真实感与物理理解之间存在显著相关性:图5(右)表明,生成逼真视频与理解现实世界中的物理原理是两种不同的能力。
讨论
我们引入了Physics-IQ,这是一个具有挑战性且全面的真实世界基准,用于评估视频生成模型的物理理解能力。我们在Physics-IQ上分析了八个模型,并提出了一系列用于量化物理理解的评估指标。该基准数据和指标覆盖了广泛的设置,并揭示出一个显著的差异:视觉真实感(在当前模型中有时表现良好)与物理理解(在当前模型中普遍缺乏)之间并不一致。
视频模型是否理解物理原理?
我们探讨了这样一个问题:视频生成模型生成逼真视频的能力是否也意味着它们已经掌握了支配现实世界的物理原理?我们的基准结果表明:并非如此。所有被评估的模型当前都缺乏对物理的深入理解。即便是得分最高的模型——VideoPoet(multiframe)——也仅获得了29.5分,远低于作为性能上限的100.0分(该得分由“物理变异性”基准确定,表示在真实视频之间观察到的自然变异程度)。
尽管如此,我们的结果并不意味着未来的模型无法通过“下一帧预测”学习到更好的物理理解。一个尚未解决的问题是:是否仅通过扩大当前范式的规模就可以解决这一问题,或是否需要引入替代的(甚至是更具交互性的)训练机制。考虑到深度学习在规模扩展方面的成功,我们对“未来帧预测”这一范式本身仍持乐观态度:虽然成功的预测不一定意味着成功的理解,但更好的理解显然会有助于实现更成功的预测。
通过预测像素来学习物理规律听起来可能非常具有挑战性,但我们已经知道语言模型能够仅通过预测文本学会句法和语法(60)。
值得指出的是,尽管我们研究中的模型在很多情况下未能生成物理合理的视频延续,但当前的大多数模型在某些场景中已经取得了成功。例如,得分最高的模型VideoPoet(multiframe)在某些场景中展现了显著的物理理解能力——例如准确模拟了颜料在玻璃上涂抹的过程。相较之下,许多低排名的模型则表现出基本错误,比如物理上不可能的交互(例如,物体穿过另一个物体)。
一项基于合成数据集的研究(40)已经表明:只要数据集足够大,视频模型就能够学习特定的物理规律。我们认为,随着模型在更大规模、更具多样性的视频语料上进行训练,其对现实世界物理的理解将会不断提升。我们希望,通过像Physics-IQ基准这样量化物理理解的方式,并将其开源,可以有助于推动该领域的发展,并便于追踪进展。
视觉真实感并不意味着物理理解。
我们观察到视觉真实感与物理理解之间存在显著的不一致性:这两个属性之间没有统计学显著相关性(见图5),因此,生成最逼真视频的模型并不一定能够生成最符合物理规律的延续内容。
例如,在一个场景中,一根燃烧的火柴被缓慢放入一杯水中(火焰因此熄灭),而Runway Gen 3生成的延续中却是:当火焰刚接触到水面时,一根蜡烛突然出现,并被火柴点燃。该视频的每一帧在分辨率和视觉真实感方面都非常高质量,但整个时间序列在物理上是不可能的。
这种将物体“幻想”出来的倾向,是许多生成模型的一个缺陷,也是深度学习中的一个活跃研究方向(61)。在我们的实验中,我们在所有模型中都观察到了幻觉现象,但更强大的模型,如Runway Gen 3和Sora,通常产生的幻觉信息至少在语境上是合理的(例如:火柴与蜡烛的搭配),这至少表明它们具有一定程度的理解能力。
数据集偏差在模型生成中有所体现
我们观察到,大多数模型在生成视频时都能与所提供的场景和视角保持一致。像Sora和Runway Gen 3这样的模型在理解所给场景方面表现尤为出色,生成的后续帧在物体位置及其属性(形状、颜色、动态)方面也高度一致。
有趣的是,许多模型还会根据其训练数据的特性展现出偏倚生成行为。例如,在原型测试中我们发现:当输入一段“红色台球桌上一颗球撞击另一颗球”的条件视频时,Lumiere在生成的过程中立即将红色台球桌变成了绿色,表现出对常见绿色台球桌的偏好。类似地,Sora生成的视频中常常出现切换镜头(transition cuts),这可能表明它的训练范式是为生成更具艺术性的视觉视频所优化的。
评估指标及其局限性
当前用于测试生成视频质量和真实感的常用指标包括PSNR(43)、FVD(45)、LPIPS(46)和SSIM(44)。然而,设计能够量化生成视频中物理理解能力的指标仍是一项挑战。我们提出了一整套评估指标,用于衡量视频模型在空间一致性、时间一致性和感知一致性方面的表现。
虽然这些指标单独来看都不是完美的,但它们的综合表现,以及对这些指标进行归一化后所得出的Physics-IQ得分,能够从整体上评估视频模型的优劣之处。需要指出的是,这些指标并不能直接量化任何物理现象,而只是作为一种代理(proxy)。例如,MLLM指标提供了一种方式,用于衡量生成视频欺骗多模态模型的程度。但该指标的有效性受到所使用多模态大型语言模型(MLLM)本身能力的限制。
我们的分析发现:尽管MLLM通常能识别出生成视频(除了由Sora生成的视频外),但其判断理由往往是错误的。
再比如,我们观察到Stable Video Diffusion常常生成包含大量幻觉内容和不合理物体运动的视频;然而,它的Spatial-IoU得分却与Lumiere、Sora、Pika和VideoPoet(i2v)在同一水平。这表明任何一个指标都不应被单独使用。另一个例子是:Runway Gen 3在动作发生的空间位置(Spatial-IoU)方面表现非常出色,但在时间一致性(Spatiotemporal-IoU)方面得分很低。
我们有意将Physics-IQ设计为一个具有挑战性的基准,以便为未来模型开发提供更具价值的信号。在这个背景下,有必要指出:我们的评估指标在某种程度上是保守的,它们对物体幻觉、相机运动(尽管我们提示模型不要移动相机)或镜头切换进行较强惩罚。
例如,Sora相较于其他模型更频繁地表现出这些行为,导致它在某些指标上得分较低。这种现象并不理想,但我们认为,在像深度学习这样时常伴随炒作的领域中,科学基准应当更倾向于谨慎保守,以确保结果的可靠性与稳健性。
展望:在没有交互的情况下能否实现理解?
我们的发现与一个更广泛的、跨学科的核心智能议题密切相关:对世界的理解是否源于对下一步会发生什么的预测(在人工智能中体现为“下一帧视频预测”,在神经科学中体现为“预测编码”)——或者说,理解世界是否必须依赖于与世界的交互(正如具身认知与机器人学派所主张的那样)?
在认知科学中,与世界交互的能力被视为发展“直觉物理”能力的重要组成部分(参考文献62–65),这通常与预测个体行为结果的能力相结合(参考文献66–68)。
相比之下,当前深度学习所采用的核心方法是在缺乏交互的情况下对模型与数据集进行扩展。那么问题是:这些模型能否最终解决物理理解的问题——**抑或是会达到某种上限,在那之后,只有通过与世界互动才能进一步提高对世界的理解?**这个问题目前尚无定论,但本文提出的基准和分析方法可能有助于对该问题进行量化评估,无论答案倾向于哪一方。
除了未来模型本身的改进之外,提升也可能来自推理阶段的扩展(inference-time scaling)(参考文献69–71),例如增加采样次数。如果这类方法确实能带来显著提升,那么将引出一个哲学层面的问题:从模型的角度来看,现实是否只是无穷可能性中的一种?
致谢
作者衷心感谢David Fleet、Been Kim、Pieter-Jan Kindermans、Kelsey Allen、Jasmine Karimi、Katherine Hermann、Mike Mozer、Phoebe Kirk、Saurabh Saxena、Daniel Watson、Meera Hahn、Sara Mahdavi、Tim Brooks、Charles Herrmann、Isabelle Simpson、Jon Shlens和Chris Jones在各方面对本项目的支持与宝贵讨论。
补充材料
所有Physics-IQ场景的概览
图9展示了Physics-IQ数据集中全部66个场景的切换帧(switch frames)(中心视角)。这些帧代表条件信号的最后一帧,之后模型将被要求对未来帧进行预测。
图9. Physics-IQ基准中所有场景的切换帧(此处仅展示中心视角)。切换帧是模型被要求预测接下来5秒未来帧之前的最后一帧条件输入。
不同MSE值的可视化
图10展示了将一种失真作用于视频场景后与MSE(均方误差)之间的关系。请注意,基准中的任何视频都未被施加失真;这只是为了直观展示某一特定MSE值会对图像产生多大程度的扭曲。
图10. 由于均方误差(MSE)的数值有时难以直观理解,本图展示了将不同程度的失真应用于场景后产生的效果,作为对在不同噪声水平下MSE影响的粗略直观理解。
调整视频帧率
以下伪代码概述了一种使用线性插值的方法来更改视频的帧率(FPS)。它在原始帧之间生成平滑过渡,同时可选地调整输出分辨率。该技术能够确保时间一致性,使其非常适合于为具有不同FPS需求的模型生成所需帧率的视频,从而适配Physics-IQ。
生成二值掩码视频
以下伪代码描述了一种生成二值掩码视频的方法,用于突出显示运动物体。该算法结合了背景减除、自适应更新与形态学操作,以检测并清晰地分割视频帧中的运动部分。该方法对于在Physics-IQ评估中创建空间与时间掩码非常有用。
MLLM评估提示语
在双选强迫选择(2AFC)范式中使用的提示语如下:
“你的任务是帮我整理我的视频。我把我用相机拍摄的真实视频和用计算机生成的类似视频混在了一起。我只知道下面两段视频中有一段是真实的,有一段是生成的。请你观看这两个视频,并告诉我哪一个是生成的视频。如果你做得很好,帮我找出生成的视频,我会奖励你100美元。请你先解释你的推理过程,然后以以下其中一句结尾:‘因此,第一个视频是生成的视频’,或者‘因此,第二个视频是生成的视频’。”
生成二值掩码视频
以下伪代码描述了一种生成二值掩码视频的方法,用于突出显示运动物体。该算法结合了背景减除、自适应更新与形态学操作,以检测并清晰地分割视频帧中的运动部分。该方法对于在Physics-IQ评估中创建空间与时间掩码非常有用。
MLLM评估提示语
在双选强迫选择(2AFC)范式中使用的提示语如下:
“你的任务是帮我整理我的视频。我把我用相机拍摄的真实视频和用计算机生成的类似视频混在了一起。我只知道下面两段视频中有一段是真实的,有一段是生成的。请你观看这两个视频,并告诉我哪一个是生成的视频。如果你做得很好,帮我找出生成的视频,我会奖励你100美元。请你先解释你的推理过程,然后以以下其中一句结尾:‘因此,第一个视频是生成的视频’,或者‘因此,第二个视频是生成的视频’。”
“Your task is to help me sort my videos. I mixed up real videos that I shot with my camera and similar videos that I generated with a computer. I only know that exactly one of the two videos is the real one, and exactly one of the following two videos is the generated one. Please take a look at the two videos and let me know which of them is the generated one. I’ll tip you $100 if you do a great job and help me identify the generated one. First explain your reasoning, then end with the following statement: ‘For this reason, the first video is the generated one’ or ‘For this reason, the second video is the generated one’.”
相关文章:
论文笔记(七十八)Do generative video models understand physical principles?
Do generative video models understand physical principles? 文章概括Physics-IQ基准数据集评估协议为什么要创建一个真实世界的Physics-IQ数据集模型物理理解的评估指标动作发生在哪里?空间IoU(Spatial IoU)动作在哪里、何时发生…...
Viper配置管理笔记
一、什么是 Viper? Viper 是 Go 语言的一个强大工具,就像一个超级管家,专门负责帮你打理程序的各种配置。它能把配置文件(比如 JSON、YAML、TOML 等格式)里的内容读出来,还能监控配置文件的变化࿰…...
visual studio无法跳转到函数定义、变量定义、跳转函数位置不准问题解决
参考:https://blog.csdn.net/snakehacker/article/details/135438353 程序有时会出现大部分函数都不能准确的从头文件中正确定位到函数定位,这是因为数据库错乱造成的,可以通过重构数据库来解决,操作方法如下: 菜单栏:工具——选项 文本编辑…...
【Rust 精进之路之第15篇-枚举 Enum】定义、变体与数据关联:表达多种可能性
系列: Rust 精进之路:构建可靠、高效软件的底层逻辑 作者: 码觉客 发布日期: 2025年4月20日 引言:当值拥有“选项”——超越结构体的表达力 在上一篇【结构体 Struct】中,我们学习了如何使用结构体将多个相关的数据字段组合成一个有意义的整体。结构体非常适合表示那些…...
C++ 相关系统软件简介与学习方法【最水的一期】
C 作为一种强大的C 相关系统软件简介编程语言,广泛应用于系统软件开发领域。以下为你介绍几款基于 C 开发的典型系统软件及其特点: 操作系统内核 部分操作系统内核采用 C 开发,例如某些嵌入式操作系统。C 的高性能、底层硬件访问能力和强大的…...
【Linux我做主】GDB调试工具完全指南
Linux下GDB调试工具完全指南:25个核心命令详解与实战示例 github地址 有梦想的电信狗 前言 GDB(GNU Debugger)是Linux开发中不可或缺的调试工具,尤其在定位代码逻辑错误和内存问题时表现卓越。本文基于实际开发经验࿰…...
基于SpringBoot3实现MyBatis-Plus(SSMP)整合快速入门CURD(增删改查)
目录 一、快速搭建SpringBoot-Web工程脚手架。 1.1 Spring Initializr 初始化工程。(官方提供) 1.2 工程脚手架初始化详细步骤。(IDEA2024.1.1) 二、MyBatis-Plus的特性与快速上手。 2.1 官网地址与基本特性。 2.2 快速上手技术栈基础。 2.3 Spring Boot2 的 MyBatis-Plus Star…...
短视频电商新纪元:TikTok Shop全球蓝海争夺战进入关键窗口期
一、流量重构:TikTok Shop改写全球电商版图 2024年,全球跨境电商市场迎来新一轮洗牌。当Temu、Shein等平台深陷“低价内卷”泥潭时,TikTok Shop凭借日均30亿次的短视频流量,正在开辟一条“内容即货架”的颠覆性赛道。最新数据显示…...
uniapp-商城-29-vuex 关于系统状态的管理
按照我们前面讲的,vuex,的使用方式: 步骤如下: 1 先创建store 文件夹 2 在 store 中 创建一个 index.js 3、 在 store 中,创建一个modules文件夹 4、在store中,创建一个getters.js 5、在modules文件…...
Qt中修改了UI设计文件后编译不生效问题的解决办法
复制工程过来后: 1、删除build文件 2、删除.user文件,恢复为文件最初的那样 3、执行make distclean,删除所有由先前构建过程生成的文件 4、再次打开工程,修改ui文件编译生效!...
Python 项目环境配置与 Vanna 安装避坑指南 (PyCharm + venv)
在进行 Python 项目开发时,一个干净、隔离且配置正确的开发环境至关重要。尤其是在使用像 PyCharm 这样的集成开发环境 (IDE) 时,正确理解和配置虚拟环境 (Virtual Environment) 是避免许多常见问题的关键。本文结合之前安装 Vanna 库时遇到的问题&#…...
Matlab FCM模糊聚类
1、内容简介 Matlab 211-FCM模糊聚类 可以交流、咨询、答疑 2、内容说明 略 3、仿真分析 略 4、参考论文 略...
标准的JNI (Java Native Interface) 加载函数 JNI_OnLoad
1.JNI_OnLoad 在 Android Native 开发中,JNI_OnLoad 是动态注册本地方法的标准入口点。以下是一个标准实现示例及其说明: JNI_OnLoad 标准实现 #include <jni.h> #include <string>// 声明本地方法对应的 C/C 函数 jint native_add(JNIEnv…...
微信小程序中使用h5页面预览图片、视频、pdf文件
遇到了这么一个需求,需要在微信小程序中点击文件,进行文件预览。 要求: 图片:长图需要宽度100%高度自适应;横图的话宽度100%,高度居中显示视频:视频不管横向还是竖向都居中显示,有…...
A2A协议详解:打造统一的AI代理通信标准,实现多Agent系统协同
A2A 协议中文说明 文章目录 A2A 解决现有 Agent 问题 Agent 生态系统现状当前面临的主要问题为什么需要统一协议,有个标准采用复用 A2A 解决方案 统一通信标准代理能力发现机制安全协作框架灵活的交互模式 A2A 与 MCP 的关系 MCP 简介两者的区别与联系集成场景协同…...
博客系统案例练习2-用户注册-redis
前言 用户注册 [请求]/user/register[参数]contentType: application/json{"userName":"wangwu","password":"456789","githubUrl": "https://gitee.com/bubble-fish666/spring-cloud","email": &quo…...
【人工智能】推荐开源企业级OCR大模型InternVL3
推荐开源企业级OCR大模型InternVL3 文章参考来源: https://huggingface.co/OpenGVLab/InternVL3-14B-Instruct https://www.aivi.fyi/llms/deploy-InternVL3 InternVL3,这是一个高级多模态大型语言模型 (MLLM) 系列,展示了卓越的整…...
聊天室项目
一.完善注册页面 1.完善注册页面图标,添加检测注册页面各个登录信息是否完善,并且通过信号和槽与自定义一个计时器,当注册完毕后跳转到显示注册完毕的页面。 2.各个坚持注册页面是否按要求的函数 3.完善主页面,设置信号和槽&…...
并发设计模式实战系列(4):线程池
🌟 大家好,我是摘星! 🌟 今天为大家带来的是并发设计模式实战系列,第四章线程池(Thread Pool),废话不多说直接开始~ 目录 一、核心原理深度拆解 1. 线程池核心组件 2. 核心…...
大模型应用案例:主动提问式的 AI 面试官(接入 DeepSeek)
目录 核心逻辑 效果演示 技术选型 大模型应用开发框架:langchain-deepseek UI 展示框架—streamlit 代码获取 后续改进想法 本文附带详细的视频讲解,欢迎小伙伴们来支持—— 【代码宇宙017】大模型:主动提问式的 AI 面试官࿰…...
算法笔记—动态规划
1137. 第 N 个泰波那契数 - 力扣(LeetCode) class Solution { public:int tribonacci(int n) {if(n0) return 0;if(n1||n2) return 1;vector<int> dp(4);//初始化dp[0]0; dp[1]1; dp[2]1;for(int i3;i<n1;i){//滚动数组优化需要循环dp[i%4]dp[…...
Vue3集成Element Plus完整指南:从安装到主题定制上
一、Element Plus简介 Element Plus是一套基于Vue 3.0的桌面端组件库,由饿了么前端团队开源维护。它提供了丰富的UI组件,能够帮助开发者快速构建企业级中后台产品。 1. 安装与卸载 bash 复制 下载 # 安装最新版本 npm install element-plus -S# 卸…...
初识javascript
1. JavaScript 基础语法 (1) 变量声明 JavaScript支持三种声明变量的方式: var:传统的变量声明方式,存在作用域问题(函数作用域)。 let:块级作用域变量声明方式,避免了var的作用域问题。 co…...
C++项目 —— 基于多设计模式下的同步异步日志系统(5)(单例模式)
C项目 —— 基于多设计模式下的同步&异步日志系统(5)(单例模式) 一个问题单例模式实现1. 单例模式:全局唯一实例功能:实现细节:作用: 2. 日志器的注册与查找功能:实现…...
rag搭建,是如何进行向量匹配检索的?
RAG 里为什么要“向量检索”? 在 Retrieval-Augmented Generation (RAG) 中,我们的目标是让 LLM 能够“回答它本身不知道的内容”。做法是: 将知识(文本)进行向量化,存入向量数据库;用户提问后,也将问题向量化;去数据库里 找出与这个问题最相似的一批知识,返回喂给 …...
k8s 基础入门篇之开启 firewalld
前面在部署k8s时,都是直接关闭的防火墙。由于生产环境需要开启防火墙,只能放行一些特定的端口, 简单记录一下过程。 1. firewall 与 iptables 的关系 1.1 防火墙(Firewall) 定义: 防火墙是网络安全系统&…...
C++在VR/AR图形处理开发中的实战应用
🧑 博主简介:CSDN博客专家、CSDN平台优质创作者,高级开发工程师,数学专业,10年以上C/C, C#, Java等多种编程语言开发经验,拥有高级工程师证书;擅长C/C、C#等开发语言,熟悉Java常用开…...
Matlab 基于模型参考自适应法和SVPWM的异步电机控制
1、内容简介 Matlab 212-基于模型参考自适应法和SVPWM的异步电机控制 可以交流、咨询、答疑 2、内容说明 略 3、仿真分析 略 4、参考论文 略...
深入浅出讲解UDP检验中如何计算检验和
一、计算机中的进制:二进制与十六进制 1. 十进制(Decimal) 特点:用0-9表示,逢10进1。 例子:数字 123 表示 110221013100110221013100。 2. 二进制(Binary) 特点:用0和…...
Python类和对象一(十)
封装: 在创建对象之前,通过类将相关的属性和方法打包到一起,然后通过类来生成响应的对象 定义类: 创建对象: 方法里面有个参数self:new的对象 当我们调用类里面方法的时候,py是怎么知道是哪…...
jupyter切换存储路径
一、问题描述 当我采用官网提供的安装方式pip install jupyterlab,在Windows下的powershell里安装jupyterlab成功,并启动:jupyter lab 打开网页:http://localhost:8888/lab 显示如下:成功了,可是我发现这…...
PH热榜 | 2025-04-20
1. Checklist GG 标语:基于人工智能的清单管理工具 介绍:checklist.gg 是一款基于人工智能的检查清单管理工具,旨在帮助组织确保每次都能准确完成任务。 产品网站: 立即访问 Product Hunt: View on Product Hunt 关…...
YOLOv11改进——基于注意力机制和密集小目标增强型EVA模块的设计与实现
随着计算机视觉技术的快速发展,目标检测算法在实时性与检测精度间的平衡成为研究重点。YOLO(You Only Look Once)系列算法以其高效性和准确性,长期占据实时目标检测领域的前沿位置。然而,尽管最新版本在通用场景表现优…...
n8n 中文系列教程_04.半开放节点深度解析:Code与HTTP Request高阶用法指南
在低代码开发领域,n8n凭借其独特的半开放架构打破了传统自动化工具的边界。本文深度剖析两大核心节点——Code与HTTP Request,从底层原理到企业级实战,揭秘如何通过代码自由扩展与API无缝集成,突破平台限制。无论是对接国产生态&a…...
Linux学习——了解和熟悉Linux系统的远程终端登录
Linux学习——了解和熟悉Linux系统的远程终端登录 一.配置Ubuntu系统的网络和用户 1、设置虚拟机网络为桥接模式 打开VMWare,选择编辑虚拟机设置,在网络适配器设置中,选择“桥接模式”,保存设置并启动Ubuntu。 2、配置Ubuntu的…...
PFLM: Privacy-preserving federated learning with membership proof证明阅读
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目…...
十倍开发效率 - IDEA插件之 Maven Helper
0X00 先看效果 第一个选项表示存在冲突的依赖,可以看到图片中 mysql 的连接依赖发生了冲突,在低版本的上面直接右键选择 Exclude,冲突的依赖就被解决掉了。 0X01 安装 在 Plugins 中直接搜索 Maven Helper,选择第一个进行安装&am…...
线程安全总结
1.线程安全 1.1什么是线程安全 线程安全问题指的是当多个线程同时访问和操作共享资源(如变量、数据结构等)时,由于缺乏有效的同步控制,导致程序出现不可预期的错误或数据不一致的现象。其核心在于并发操作破坏了程序的正确性。 …...
计算机视觉cv入门之答题卡自动批阅
前边我们已经讲解了使用cv2进行图像预处理与边缘检测等方面的知识,这里我们以答题卡自动批阅这一案例来实操一下。 大致思路 答题卡自动批阅的大致流程可以分为这五步:图像预处理-寻找考试信息区域与涂卡区域-考生信息区域OCR识别-涂卡区域填涂答案判断…...
10.QT-显示类控件|LCD Number|ProgressBar|Calendar Widget(C++)
LCD Number QLCDNumer 是⼀个专⻔⽤来显⽰数字的控件.类似于"⽼式计算器"的效果 属性说明intValueQLCDNumber 显⽰的数字值(int).valueQLCDNumber 显⽰的数字值(double).和intValue是联动的.例如给value设为1.5,intValue的值就是2.另外,设置value和intValue的⽅法名…...
深入探索 Unix 与 Linux:历史、内核及发行版
引言 在当今的计算世界中,Unix 和 Linux 操作系统的影响力无处不在。从驱动互联网的服务器到我们口袋里的智能手机,再到无数嵌入式设备,它们的身影随处可见 1。这两个操作系统家族共享着丰富的历史和相似的设计哲学,但又各自走过…...
HCIP第三次作业
一、实验要求 1,R5为ISP,其上只能配置IP地址;R4作为企业边界路由器, 出口公网地址需要通过PPP协议获取,并进行chap认证 2整个0SPF环境IP基于172.16.0.0/16划分; 3所有设备均可访问R5的环回; 4减少LSA的更新量,加快收敛…...
Linux 入门:基础开发工具(下)git,cgdb操作指南
目录 一.进度条 一).补充:回车与换行 二).行缓冲区 三).进度条代码 二.版本控制器Git 一).Git 安装与配置 二).创建仓库 三).开始操作 1.简单流程 2.配置公钥 1).身份…...
【上位机——MFC】消息映射机制
消息映射机制 Window消息分类消息映射机制的使用代码示例 MFC框架利用消息映射机制把消息、命令与它们的处理函数映射起来。具体实现方法是在每个能接收和处理消息的类中,定义一个消息和消息函数指针对照表,即消息映射表。 在不重写WindowProc虚函数的大…...
提交bug单时,应该说明哪些信息?
在提交 Bug 单时,为了让开发人员能够快速定位和解决问题,需要详细说明以下几方面信息: Bug 的基本信息 标题:简洁明了地概括 Bug 的主要问题,例如 “登录页面输入错误密码后提示信息不准确”。Bug 类型:明确…...
max31865典型电路
PT100读取有很多种方案,常用的惠斯通电桥,和专用IC max31865 。 电阻温度检测器(RTD)是一种阻值随温度变化的电阻。铂是最常见、精度最高的测温金属丝材料。铂RTD称为PT-RTD,镍、铜和其它金属亦可用来制造RTD。RTD具有较宽的测温范围&#x…...
【网工第6版】第4章 无线通信网
目录 ■ 移动通信与4G 5G技术 ▲ 移动通信发展 ▲ 移动通信制式 ▲ 移动通信技术标准 ▲ 4G标准 ▲ 4G关键技术 ◎ OFDMA ◎ 4G关键技术-MIMO ◎ 4G关键技术-SDR ◎ 4G关键技术-VolP ▲ 5G应用场景 ▲ 5G两种组网模式 ▲ 5G关键技术 ■ CDMA计算 ■ WLAN通信技术…...
辅助函数构造题目(缓慢更新,遇到更道)
题1...
图论基础:图存+记忆化搜索
图的储存 储存图有很多种方式,在此介绍两种:邻接数组,邻接表 第一种虽然简单,但访问的时间和空间花销过大,因此第二种最为常见。 让我们分别看看它们是什么 在介绍之前,我们先解释一下此处说的“图”是什…...
使用docker任意系统编译opengauss
使用docker任意系统编译opengauss 本人使用开发机器为ubuntu系统,不在官方推荐的编译系统内。但是不想为了开发opengauss重装系统。所以采用docker进行编译。 代码拉取 本人是在/home/yuyang/Documents/opengauss目录下进行操作。 先获取源代码:git clone https:/…...