论文解读 | NeurIPS'24 Spotlight ChronoMagic-Bench 评估文本到视频生成的质变幅度评估基准...
点击蓝字
关注我们
AI TIME欢迎每一位AI爱好者的加入!
点击 阅读原文 观看作者讲解回放!
作者简介
袁盛海,北京大学硕士一年级学生
内容简介
本文提出了一种新颖的文本到视频(T2V)生成基准ChronoMagic-Bench,用于评估T2V模型(例如Sora和CogVideoX)生成质变延时视频的能力。与现有基准相比,这些基准侧重于生成视频的视觉质量和文本相关性,ChronoMagic-Bench专注于让模型生成具有显著质变幅度和时间连贯性的延时视频的能力,侧面衡量视频模型的物理含量。为此,ChronoMagic-Bench引入了1,649个提示和现实世界视频作为参考,分为四大类延时视频:生物类、人类创造类、气象类和物理现象类,这些进一步细分为75个子类别。为了准确对齐人类偏好和大规模衡量模型能力,引入了两个新的自动指标,MTScore衡量质变幅度,反映视频随时间变化的程度,而CHScore评估时间连贯性,确保生成的视频保持逻辑进展和连续性。基于ChronoMagic-Bench,本文对18个代表性T2V模型进行了全面的评估,揭示了它们在不同类别提示中的优势和劣势,提供了一个全面的评估框架,解决了视频生成研究中的当前空白。此外,本文还创建了一个大规模的ChronoMagic-Pro数据集,包含460k对高质量720p延时视频和详细字幕。每个字幕确保包含较高的物理内容和较大的质变幅度,弥补了该类数据集在社区的空缺。
论文地址:
https://arxiv.org/pdf/2406.18522
代码链接:
https://pku-yuangroup.github.io/ChronoMagic-Bench
Motivation
高质量的文本到视频生成技术,在内容创作和世界模拟中具有重要意义。这些技术不仅能够帮助人们以全新的方式表达创造力,还能用于建模和理解现实世界。最近,SORA等模型在生成高分辨率、更自然的动作视频方面取得了显著进展。这些改进得益于模型架构的演进,从传统的UNet逐步转向新兴的DiT,同时结合了更大规模的数据和更好的训练策略。然而,尽管基于DiT的闭源或开源模型层出不穷,对于其能力与局限性的研究仍然缺乏。然后,我们发现延时视频记录了世间万物的变化规律的相比于普通视频包含了更多的物理规律,因此本文基于此为切入点,评估视频模型的物理含量。
如图中所示,大多数 T2V 模型(例如 OpenSora 和 CogVideoX)生成的视频运动有限且变化较弱。只有像 MagicTime 这样的少数模型可以生成完整的延时视频过程。换句话讲,就是现有的模型没能有效地编码现实世界的物理知识。
评估文本到视频生成模型的好坏,最简单的就是评估生成视频的美学质量还有文本的相关程度。所以,目前已经有很多关于视频生成的评估基准,但同质化严重,多数基准主要关注美学质量和文本一致性,研究者们都围绕着这两方面寻找和人类感知对齐度更高的指标。但是,他们都缺乏可靠的指标来评估模型生成复杂物理现象的能力,这使得评估模型对现实世界的理解变得困难。
Benchmark Construction
为了解决前面陈述的问题,本文构建了首个用于文本到视频生成模型的延时视频评估基准,主要步骤包含以下两个方面:第一,根据延时视频的特性构建提示词;第二,构建评估指标。
Prompt Categorization
在构建评估基准过程中,本文对提示词类别进行了精细的划分,以保证覆盖足够广泛的场景和内容,满足多样化延时视频生成的评估需求。具体而言,作者将提示词类别分为四个主要类别:生物类、人类创造类、气象类和物理现象类。然后进一步将这四个类别扩展成75个子类别。其中,生物类包括自然界中与生物体相关的内容,例如种子发芽;气象类则涵盖了各种气象现象,例如日出日落;人造类包含了人类活动创造或影响的所有对象,例如3D打印;物理类则聚焦于非生物的物理现象,例如冰的融化。接着,作者根据这些精挑后的类别,到互联网上收集对应的真实世界视频,然后使用GPT-4o获取视频对应的描述,最终获得评估文本到视频生成模型的输入,即延时视频对应的文本提示词。
Chronomagic-Bench: Data Analysis
本文的评估基准涵盖了多样化的内容,并针对提示词长度和内容范围进行了合理的设定。如右下角的环形图所示,大多数提示词的长度集中在 30 到 50 个字之间,占比约 47%。因为CLIP编码器只能接收77个token,而T5能够接收上百个。这种设计考虑了主流文本编码器的输入需求,既确保了提示词的完整性,又避免了过长文本对模型性能的影响。此外,作者也保留了少量较短或较长的提示词,以提升数据集的多样性。
Assessing Metamorphic:
MTScore & GPT4o-MTScore
如何构建输出,即设计评估指标?具体而言,本文设计了两个互补的指标来评估延时视频中的变化幅度。
首先是 MTScore。这一指标通过设计多个检索句子,利用视频检索模型对给定视频进行对比分析。也就是计算延时视频(metamorphic)和普通视频(general)各自的概率分布,然后基于公式中的加权投票机制,生成整体的评分。这种方法偏向从粗粒度层面判断视频的变化幅度。
其次是 GPT4o-MTScore。这一指标是对 MTScore 的补充,侧重于更细粒度的主观评估。作者制定了一个基于 5 分制的详细评分标准(如表6所示),覆盖从“几乎无变化”到“显著动态变化”的多个层级。然后,作者利用GPT-4o 结合详细的评分标准,为每个视频打分并且提供明确的评价理由。这种方法能够捕捉更加细腻的变化特征。
Assessing Temporal Coherence:
Coherence Score
除了变化幅度外,时间一致性是延时视频中非常重要的一个评价指标,反映了视频帧之间运动和结构变化的平滑程度,因此本文提出CHScore。简单来说,作者借用追踪模型获取视频的跟踪点网格。然后,逐帧计算缺失的跟踪点数量(即帧中无法继续跟踪的点),并记录这些跟踪点的变化情况。对于相邻帧之间的跟踪点变化量,如果变化超过设定的阈值T,会将这些帧标记为异常帧。随后,作者计算多项统计指标,例如异常帧数量、每帧平均缺失点的数量、缺失点的标准差、最大缺失点数等。这些指标最后会被组合成一个加权公式,得到最终的CHScore。
Reasonableness of Automatic
Evaluation Metrics
下图展示了评估指标与人类感知在质变幅度和时间连贯性方面的一致性评估结果。顶端的两个小符号分别表示肯德尔系数 (Kendall↑) 和斯皮尔曼系数 (Spearman↑),↑ 表示数值越高越好。如图所示,所提出的自动指标与人类感知之间具有较强的相关性,验证了本文所提评估指标的可靠性。
Visual Reference for Varying Scores
下图提供了MTScore和CHScore在量表上不同分数的直观示例,有助于说明不同分数表示视频的具体情况。比如MTScore达到0.5分以上,CHScore达到50分以上,视频的变化幅度和连贯度则可以称得上是不错的效果。
Main Results of ChronoMagic-Bench-150
借助新提出的指标和提示词,本文总共选取了18个T2V模型进行评估——其中4个为闭源模型,14个为开源模型。最近比较火的可灵和CogVideoX都包含在内。结果揭示了不同T2V模型之间在能力上的显著差异。针对于本文关注的变化幅度评估,即MTScore和GPT4o-MTScore,可见几乎所有开源模型分数都较低,很少超过0.5分的,即没法生成诸如种子发芽、花开、建筑构建等完整延时过程。作者希望这些结果能够为用户在选择适合其特定需求的T2V模型时提供宝贵的见解。
Qualitative Analysis of Our Benchmark
下图比较了几个代表性模型的输出结果,包括闭源的KeLing、LUMA等,也包括开源的MagicTime和CogVideoX等,可以清晰地看到不管是开源还是闭源模型都没法生成记录了世间万物变化规律的延时视频内容。
ChronoMagic-Pro
除了评估基准外,本文构建了首个大规模的延时视频数据集ChronoMagic-Pro。虽然视频数量相较于Panda要小,但信息含量可能更高,因为延时视频比普通视频包含更多的物理现象。作者也希望这个数据集对于训练和改进T2V模型能够产生一些价值。
Pipeline of Constructing ChronoMagic-Pro
下图展示了数据集数的据处理流程。简单来说就是先把视频的跳切移除,然后使用开源的视觉大模型给视频打上标注。在这里,作者发现直接将整个视频输入给视觉大模型,输出的视频描述通常是不准确的。因此,文章中选择使用帧级别的标注,最后再让LLM汇总出最终的caption。
ChronoMagic-Pro: Dataset Statistic
下图展示了数据集的统计数据,包含了46万对高质量的视频-文本对。视频时长从15秒到60秒不等,分辨率集中在720P,只有少量的480P数据。并且,每段视频以详细的标注为主,美学指标集中在5分以上。
Dataset Verification
(with ChronoMagic-Pro 10K)
本文也采用不同训练方法验证数据集的有效性,第一行是微调前的,第二第三行是微调后,可以看到微调后视频质量都有在提高。
Conclusion
总结而言,该篇工作一共有四个贡献点:分别是新的 T2V评估 基准、新的自动指标、新的模型选择见解以及一个大规模延时数据集。
本期文章由陈研整理
往期精彩文章推荐
ICLR 2025预讲会一作讲者招募|个人和团队报名通道开启
关于AI TIME
AI TIME源起于2019年,旨在发扬科学思辨精神,邀请各界人士对人工智能理论、算法和场景应用的本质问题进行探索,加强思想碰撞,链接全球AI学者、行业专家和爱好者,希望以辩论的形式,探讨人工智能和人类未来之间的矛盾,探索人工智能领域的未来。
迄今为止,AI TIME已经邀请了2000多位海内外讲者,举办了逾700场活动,超800万人次观看。
我知道你
在看
提出观点,表达想法,欢迎
留言
点击 阅读原文 观看作者讲解回放!
相关文章:
论文解读 | NeurIPS'24 Spotlight ChronoMagic-Bench 评估文本到视频生成的质变幅度评估基准...
点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 点击 阅读原文 观看作者讲解回放! 作者简介 袁盛海,北京大学硕士一年级学生 内容简介 本文提出了一种新颖的文本到视频(T2V)生成基准ChronoMagic-Bench࿰…...
12.1 LangChain数据处理流Data Connection深度解析:构建高效数据管道的五大核心组件
LangChain数据处理流Data Connection深度解析:构建高效数据管道的五大核心组件 一、Data Connection模块的战略定位 LangChain的Data Connection模块是大模型应用的数据中枢,其核心价值在于将非结构化数据转化为大模型可理解的语义知识。传统数据处理的三大痛点在此得到完美…...
文件基础IO
理解"文件" 1-1 狭义理解 文件在磁盘里磁盘是永久性存储介质,因此文件在磁盘上的存储是永久性的磁盘是外设(即是输出设备也是输入设备)磁盘上的文件 本质是对文件的所有操作,都是对外设的输入和输出简称IO 1-2 广义理…...
ASP.NET Core筛选器Filter
目录 什么是Filter? Exception Filter 实现 注意 ActionFilter 注意 案例:自动启用事务的筛选器 事务的使用 TransactionScopeFilter的使用 什么是Filter? 切面编程机制,在ASP.NET Core特定的位置执行我们自定义的代码。…...
Java 中的 Spring 框架,以及 Spring Boot 和 Spring Cloud 的区别?
Spring框架是一个开源的Java平台,主要用于简化企业级应用程序的开发。 它通过提供一系列的功能模块,帮助开发者解决常见的编程难题,从而提高开发效率和代码质量。 Spring框架的核心思想是“控制反转”(IoC)和“面向切…...
Rplayer:手机上的本地音乐播放智能之选
在众多本地音乐播放器中,Rplayer凭借其卓越的功能脱颖而出。它不仅能够精准识别本地下载的音乐文件,更以其智能化的设计为用户带来极致的便捷体验。 Rplayer的真正亮点在于其强大的自动扫描功能。与市面上其他播放器不同,Rplayer无需用户手动…...
vue2-插槽slot
文章目录 vue2-插槽slot1. 什么是slot2. slot分类2.1 默认插槽2.2 具名插槽2.3 作用域插槽 vue2-插槽slot 1. 什么是slot 在vue中,slot翻译为插槽,简单点说,就是在子组件内放置一个插槽,等待父组件在使用子组件的时候决定放什么…...
二级C语言题解:整数序列奇偶个数、拼接数字字符、数组取偶数并加小数点
目录 一、程序填空📝 --- 整数序列奇偶个数 题目📃 分析🧐 二、程序修改🛠️ --- 拼接数字字符 题目📃 分析🧐 三、程序设计 💻 --- 数组取偶数并加小数点 题目📃 分析&…...
VUE之组件通信(三)
1、$refs与$parent 1)概述: $refs用于:父——>子。$parent用于:子——>父。 2)原理如下: 属性说明$refs值为对象,包含所有被ref属性标识的DOM元素或组件实例。$parent值为对象&#x…...
Airflow:深入理解Apache Airflow Task
Apache Airflow是一个开源工作流管理平台,支持以编程方式编写、调度和监控工作流。由于其灵活性、可扩展性和强大的社区支持,它已迅速成为编排复杂数据管道的首选工具。在这篇博文中,我们将深入研究Apache Airflow 中的任务概念,探…...
【号码分离】从Excel表格、文本、word文档混乱文字中提取分离11位手机号出来,基于WPF的实现方案
应用场景 在市场调研过程中,可能会收集到大量的 Excel 表格、文本报告或 Word 文档,其中包含客户的联系方式。通过提取手机号,可以方便后续的市场推广和客户跟进。 当从不同渠道收集到的数据中包含混乱的文字信息时,需要从中提取…...
【分布式架构理论2】分布式架构要处理的问题及解决方案
文章目录 1. 应用服务拆分2. 分布式调用3. 分布式协同4. 分布式计算5. 分布式存储6. 分布式资源管理与调度7. 高性能与可用性优化8. 指标与监控 将分布式架构需要解决的问题按照顺序列举为如下几步 问题分类具体内容应用服务拆分分布式是用分散的服务和资源代替集中的服务和资…...
WPS计算机二级•幻灯片的输出、打印与分享
听说这是目录哦 打印界面讲解⭐所有页面 一键添加公司LOGO🌟将多张幻灯片 打印在一张纸🌠将PPT内容 以讲义形式打印出来☄️打印 黑白色的幻灯片🪐协作编辑模式🌈将PPT输出为图片💖能量站😚 打印界面讲解⭐…...
Java数据结构与算法之“树”
目录 一、什么是树 编辑 二、树的相关组成 1. 常用名词 2.需要了解的名词 三、树的分类 (一)初级树 1.普通树 2.二叉树 (二)中级树 1.哈夫曼树HuffmanTree 2.二叉搜索树BST 3.平衡二叉树AVL (三&#x…...
嵌入式八股文面试题(一)C语言部分
1. 变量/函数的声明和定义的区别? (1)变量 定义不仅告知编译器变量的类型和名字,还会分配内存空间。 int x 10; // 定义并初始化x int x; //同样是定义 声明只是告诉编译器变量的名字和类型,但并不为它分配内存空间…...
FPGA的IP核接口引脚含义-快解
疑问 手册繁琐,怎样快速了解IP核各输入输出接口引脚的含义。 答疑 不慌不慌,手册确实比较详细但繁琐,如何快速知晓该部分信息,涛tao道长给你们说,简单得很,一般新入门的道友有所不知,往往后面…...
Web3技术详解
Web3技术代表着互联网技术的最新进展,它致力于打造一个去中心化的互联网生态系统。以下是对Web3技术的详细解析: 一、Web3技术的核心概念 Web3是第三代互联网技术的代名词,代表着去中心化、区块链驱动和用户自有控制的理念。在Web3的世界中…...
计算机网络之物理层通信基础(电路交换、报文交换与分组交换)
一、电路交换 工作原理: 电路交换是在数据传输期间,源结点与目的结点之间建立一条由中间结点构成的专用物理连接线路,并在数据传输结束之前保持这条线路。整个报文的比特流连续地从源点直达终点,好像在一个管道中传送。 特点&am…...
Linux firewalld开启日志审计功能(2)
在Firewalld防火墙中启用和配置logdenied选项,记录被拒绝的数据包(等同于开启日志功能) 效果展示: 1.开启日志记录功能 firewall-cmd --set-log-deniedunicast #重新加载生效配置 firewall-cmd --reload 2.配置rsyslog捕获日志…...
线程池如何知道一个线程的任务已经执行完成
一、线程池内部任务执行状态监控 在线程池内部,当我们提交一个任务后,线程池会调度一个工作线程来执行该任务的run方法。确实,当run方法正常结束时,意味着任务已经完成。线程池中的工作线程是同步调用任务的run方法,并…...
09网络深入连贯篇(D1_彻底理解长连接 短连接(一))
目录 讲解一:长连接 & 短连接 一、初次见证长连接和短连接 1. 长连接 2. 短连接 二、如何区分当前连接是长连接还是短连接? 三、如何查询长连接和短连接? 四、那么长连接与短连接操作过程又是如何呢? 五、各自优缺点 …...
ElasticSearch学习笔记-解析JSON格式的内容
如果需要屏蔽其他项目对Elasticsearch的直接访问操作,统一由一个入口访问操作Elasticsearch,可以考虑直接传入JSON格式语句解析执行。 相关依赖包 <properties><elasticsearch.version>7.9.3</elasticsearch.version><elasticsea…...
网络计算机的五个组成部分
单个计算机是无法进行通信的。所以需要借助网络。 下面介绍一些在网络里常见的设备。 一、服务器 服务器是在网络环境中提供计算能力并运行软件应用程序的特定IT设备 它在网络中为其他客户机(如个人计算机、智能手机、ATM机等终端设备)提供计算或者应用…...
责任链模式(Chain Responsibility)
一、定义:属于行为型设计模式,包含传递的数据、创建处理的抽象和实现、创建链条、将数据传递给顶端节点; 二、UML图 三、实现 1、需要传递处理的数据类 import java.util.Date;/*** 需要处理的数据信息*/ public class RequestData {priva…...
在游戏本(6G显存)上本地部署Deepseek,运行一个14B大语言模型,并使用API访问
在游戏本6G显存上本地部署Deepseek,运行一个14B大语言模型,并使用API访问 环境说明环境准备下载lmstudio运行lmstudio 下载模型从huggingface.co下载模型 配置模型加载模型测试模型API启动API服务代码测试 deepseek在大语言模型上的进步确实不错…...
web-JSON Web Token-CTFHub
前言 在众多的CTF平台当中,作者认为CTFHub对于初学者来说,是入门平台的不二之选。CTFHub通过自己独特的技能树模块,可以帮助初学者来快速入门。具体请看官方介绍:CTFHub。 作者更新了CTFHub系列,希望小伙伴们多多支持…...
CTF-web: fs.readFileSync特殊利用
URL类 URL 类是 JavaScript 的内置类(或对象),它用于处理和解析 URL(统一资源定位符)。URL 是 Web API 的一部分,广泛应用于浏览器环境和 Node.js 中。 特性 构造函数: URL 类的构造函数可以接受一个 URL…...
深入探索 C++17 特征变量模板 (xxx_v)
文章目录 一、C++类型特征的前世今生二、C++17特征变量模板闪亮登场三、常见特征变量模板的实际应用(一)基本类型判断(二)指针与引用判断四、在模板元编程中的关键作用五、总结与展望在C++的持续演进中,C++17带来了许多令人眼前一亮的特性,其中特征变量模板(xxx_v)以其…...
时间序列分析(一)——基础概念篇
一、时间序列的相关概念 定义:时间序列是按时间顺序排列的一系列观测值,通常以固定间隔(如秒、天、年)记录。而时间序列分析是一种研究按时间顺序排列的数据点的统计方法,发现趋势、季节性波动、周期性和异常等模式&a…...
贪心与单调栈的艺术:从三道 LeetCode 题看最小字典序问题(316/402/1081)
前言 欢迎来到我的算法探索博客,在这里,我将通过解析精选的LeetCode题目,与您分享深刻的解题思路、多元化的解决方案以及宝贵的实战经验,旨在帮助每一位读者提升编程技能,领略算法之美。 👉更多高频有趣Lee…...
rabbitMQ消息转换器
消息转换器 Spring的消息发送代码接收的消息体是一个Object: 而在数据传输时,它会把你发送的消息序列化为字节发送给MQ,接收消息的时候,还会把字节反序列化为Java对象。 只不过,默认情况下Spring采用的序列化方式是J…...
力扣-字符串-541 反转字符串Ⅱ
思路 和《反转字符串》的代码类似,只是每次处理2k个 代码 class Solution { public:string reverseStr(string s, int k) {int length s.length();int reverse 0;while(reverse < length){int left, right;if(reverse k < length){left reverse, right…...
CSS(三)less一篇搞定
目录 一、less 1.1什么是less 1.2Less编译 1.3变量 1.4混合 1.5嵌套 1.6运算 1.7函数 1.8作用域 1.9注释与导入 一、less 1.1什么是less 我们写了这么久的CSS,里面有很多重复代码,包括通配颜色值、容器大小。那我们能否通过js声明变量来解决这些问题&…...
GT 接口时钟
每个 GT 接口需要几个时钟,包括一些共享时钟,这些时钟在位于一个或多个 GT quad 中的绑定 GT*_CHANNEL 单元之间共享。 UltraScale 器件提供高达 128 个 GT*_CHANNEL site 位置,这可能导致在设计中使用几百个时钟。大多数 GT 时钟具…...
算法日记13:SC41树状数组(区间修改)
一、题目: 二、题解: 在单点修改中,我们用t[i]来维护原数组2.1:在区间修改中,我们将维护原数组的差分数组 接下来,让我们来回顾一些差分的性质 此时,假设我们需要求 a 1 a 2 a 3 a 4 a1a2a3a4 a1a2a3a…...
【STM32】串口原理
单片机有自己的RX(接收端),TX(发送端),有的需要再共同接一个底线,为了保证有相同的参考电势,数据如果是高电平的话,发送过去也是高电平 1.轮询方式 CPU需要时刻注意发送…...
libdrm移植到arm设备
一、环境资源要求 下载libdrm Index of /libdrm 这边使用的是2.4.114版本,版本太高对meson版本要求也很高,为了省事用apt安装meson就不用太高版本了,1.x版本虽然使用makefile编译方便但是太老,对应用支持不太好。 https://dri…...
【PyTorch】解决Boolean value of Tensor with more than one value is ambiguous报错
理解并避免 PyTorch 中的 “Boolean value of Tensor with more than one value is ambiguous” 错误 在深度学习和数据科学领域,PyTorch 是一个强大的工具,它允许我们以直观和灵活的方式处理张量(Tensor)。然而,即使…...
CS 与 BS 架构的差异
在数字化的今天,选择软件架构模式对系统的性能、维护、安全和成本都有很大影响。BS架构和CS架构是最常见的两种模式,了解它们的区别和特点对开发人员和企业决策者都很重要。 CS架构最早出现,当时用户直接从主机获取数据。随着客户端和服务端…...
一款由 .NET 官方团队开源的电子商务系统 - eShop
项目介绍 eShop是一款由.NET官方开源的,基于.NET Aspire构建的用于参考学习的服务架构电子商务系统,旨在展示如何利用.NET框架及其相关技术栈构建一个现代化的电子商务网站。该项目采用服务架构,将应用程序分解为多个独立的服务,…...
项目顺利交付,几个关键阶段
年前离放假还有10天的时候,来了一个应急项目, 需要在放假前一天完成一个演示版本的项目,过年期间给甲方领导看。 本想的最后几天摸摸鱼,这么一来,非但摸鱼不了,还得加班。 还在虽然累,但也是…...
springboot简单应用
快速开发Springboot项目实现简单的增删改查,前期需要准备:idea与postman安装 Maven,MySQL(8),JDK(21) 目录 前言 springboot 使用3.0版本,JDK使用21,MySQL使用8版本 开发环境IDEA使用2024版本 …...
lock 和 synchronized 区别
一、功能 Lock和Synchronized都是Java中用来解决线程安全问题的工具,它们能够确保多个线程在访问共享资源时的正确性和一致性。 二、特性 基本定义与实现: Synchronized是Java中的一个同步关键字,由JVM实现。Lock是Java中的一个接口&#x…...
inquirer介绍及配合lerna在Vue中使用示例
目录 安装基本用法使用多个提示框动态选择(动态选项)表单式输入配合lerna在Vue中使用示例 Inquirer 是一个用于创建交互式命令行工具的 Node.js 库,常用于收集用户输入。它提供了多种类型的提示框,可以用于创建交互式应用程序&…...
System类
作用:有标准输入、标准输出和错误输出流,对外部定义的属性和环境变量的访问,加载文件和库的方法,还有快速复制数组的一部分的实用方法 java.lang.Object继承者 java.lang.System字段摘要 主要常用的是方法 构造方法摘要 Syste…...
MySQL时间类型相关总结(DATETIME, TIMESTAMP, DATE, TIME, YEAR)
MySQL时间类型相关总结(DATETIME, TIMESTAMP, DATE, TIME, YEAR) MySQL官方文档: https://dev.mysql.com/doc/refman/8.0/en/date-and-time-types.html 一. 对比: 在 MySQL 中,处理时间相关的数据类型主要有以下几种:DATE、TIME、…...
为什么会有函数调用参数带标签的写法?Swift函数调用的参数传递需要加前缀是否是冗余?函数调用?函数参数?
为什么会有函数调用参数带标签的写法? ObjC函数参数形式与众不同,实参前会加前缀,尤其参数很多的情况,可读性很强。例如: [person setAge: 29 setSex:1 setClass: 35]; 这种参数前面加前缀描述也被叫标签(Label). 注意࿰…...
Macos安装APOC拓展库
文章目录 说明错误提示原因分析解决方法 说明 Macos安装APOC核心库 错误提示 There is no procedure with the name apoc.generate.ba registered for this database instance. Please ensure youve spelled the procedure name correctly and that the procedure is prope…...
用NeuralProphet预测股价:AI金融新利器(附源码)
作者:老余捞鱼 原创不易,转载请标明出处及原作者。 写在前面的话:我用NeuralProphet模型预测了股票价格,发现其通过结合时间序列分析和神经网络算法,确实能提供比传统Last Value方法更精准的预测。经过一系列超参数调优…...
go-zero学习笔记(三)
利用goctl生成rpc服务 编写proto文件 // 声明 proto 使用的语法版本 syntax "proto3";// proto 包名 package demoRpc;// golang 包名(可选) option go_package "./demo";// 如需为 .proto 文件添加注释,请使用 C/C 样式的 // 和 /* ... */…...