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

LLM - 大模型 ScallingLaws 的 CLM 和 MLM 中不同系数(PLM) 教程(2)

欢迎关注我的CSDN:https://spike.blog.csdn.net/
本文地址:https://spike.blog.csdn.net/article/details/145188660

免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。


Scaling Laws (缩放法则) 是大模型领域中,用于描述 模型性能(Loss) 与 模型规模N、数据量D、计算资源C 之间关系的经验规律,揭示在大模型中,随着模型参数数量、数据集大小和计算资源的增加,模型性能的变化模式,指导更高效地分配资源,优化模型训练过程,实现更好的性能。这些规律不仅有助于预测不同规模模型的表现,还能为模型设计和训练提供理论依据,是推动大模型发展和应用的重要理论基础。

论文:ESM3 - Simulating 500 million years of evolution with a language model

在 蛋白质大语言模型(Protein Language Model, PLM) 方向,使用数据集约 200B Tokens (AA氨基酸),基于 C=6ND,以及 Loss 与 模型规模(N) 的 IsoFLOPs 曲线,确定 FLOPs 与 模型规模(N)、FLOPs 与 数据量(D) 之间的关系,构建 ScalingLaws 公式,验证不同目标 CLM(Causal Language Model) 与 MLM(Masked Language Model) 的系数差异,即给定计算量C的情况下,确定最优模型规模N、最优数据量D。其中,计算出的公式:

C C L M = 6.45 × N × D C M L M = 5.98 × N × D \begin{align} C_{CLM} &= 6.45 \times N \times D \\ C_{MLM} &= 5.98 \times N \times D \end{align} CCLMCMLM=6.45×N×D=5.98×N×D

参考:大模型 ScallingLaws 的 C=6ND 公式推导

1. 数据集(D)

数据扩展(Scaling up data),构建蛋白质序列的数据集 200B Tokens ,即 UniMeta200B,其中序列 939M (即9亿),Tokens 是194B (即1940亿),即平均序列长度 215,用于验证 Scaling Laws 以及预训练。

  • UR50/S:Uniref50 默认数据集,以最大相似度 50% 聚类。
  • Uniref90/50:Uniref90 默认数据集,以最大相似度 90% 聚类,去除 Uniref50 数据。
  • ColabFoldDB: 宏基因组数据源,以最大相似度 30% 聚类,c 表示 cluster,聚类中心,m 表示 member,聚类成员。

即:

Data

参考:GitHub - Availability of UR50/S, UR50/D also UR100/S and UR100/D

UR50/S 是从 Uniref 下载的 UR50 数据集。UR50/D 对于 UR50/S 中的每个聚类进行采样,然后在每个训练迭代中,对聚类中的每个序列进行采样,可以从聚类成员文件中,创建。因此,UR50/D 的数据量大于 UR50/S。

通过实验可知,证明数据量对于不同模型参数量的影响:

  • 使用 UR50/S 数据集(即 54M Seq., 5.2B Tokens) 与 3B 模型, 即小数据和大模型,在 MLM 模型导致严重的过拟合。
  • 其余均表现出,模型越大,数据越多,性能(Loss 和 PPL) 越好。

Data

2. Scaling Law (MLM & CLM)

标准的 Scaling Law 公式,其中 C C C 是计算量(FLOPs), N N N 是模型尺寸, D D D 是数据量(Tokens 数量),即:
C = 6 × N × D C=6 \times N \times D C=6×N×D

实验条件:

  • C: FLOPs 计算量从 1 × 1 0 18 ∼ 1 × 1 0 21 1 \times 10^{18} \sim 1 \times 10^{21} 1×10181×1021,累计 7 个计数,间隔大约 3 倍;
  • N: 模型参数量,累计使用 39 个模型 ( 4 M ∼ 10.7 B 4M \sim 10.7B 4M10.7B);
  • D: 数据集,使用之前构建的 200B Tokens 蛋白质序列数据集。

数据量预估 D = C 6 ∗ N D = \frac{C}{6*N} D=6NC,例如,在 计算量是 1 × 1 0 21 1 \times 10^{21} 1×1021 下:

  • 1.2B 的模型 (MLM的最优模型),计算量是 1 × 1 0 21 1 \times 10^{21} 1×1021,数据量是 D = 1 × 1 0 21 6 × 1.2 × 1 0 9 = 1.388 × 1 0 11 = 133.8 B D=\frac{1 \times 10^{21}}{6 \times 1.2 \times 10^{9}}=1.388 \times 10^{11}=133.8B D=6×1.2×1091×1021=1.388×1011=133.8B
  • 1.7B 的模型 (CLM的最优模型),计算量是 1 × 1 0 21 1 \times 10^{21} 1×1021,数据量是 D = 1 × 1 0 21 6 × 1.7 × 1 0 9 = 0.9803 × 1 0 11 = 98.03 B D=\frac{1 \times 10^{21}}{6 \times 1.7 \times 10^{9}}=0.9803 \times 10^{11}=98.03B D=6×1.7×1091×1021=0.9803×1011=98.03B

训练过程,确保模型经过完整的余弦学习率衰减周期,通过 最小二乘法(least_squares) 拟合得到模型参数。

IsoLoss 在探索不同的模型参数和数据规模组合时,发现一些组合下,最终损失的差异非常小,即被定义为 IsoLoss (Isometric Loss) 条件,即等距损失,因为在训练效果上是相近的。参考:Demystify Transformers: A Guide to Scaling Laws

IsoFLOPs(等距计算量) 曲线图中,模型尺寸(Model Size) 最大的点 是 7.2 B = 7.2 × 1 0 9 7.2B=7.2 \times 10^9 7.2B=7.2×109,黄线最低点是 1.2 B = 1.2 × 1 0 9 1.2B=1.2 \times 10^9 1.2B=1.2×109,黄线的计算量是 1 × 1 0 21 1 \times 10^{21} 1×1021,参考:

IsoFLOPs

2.1 Scaling Laws for MLM and CLM

通过 IsoFLOPs,拟合模型参数量 N N N,与数据量 D D D,与计算量 C C C 之间的曲线:

N = a × C α D = b × C β \begin{align} N &= a \times C^{\alpha} \\ D &= b \times C^{\beta} \\ \end{align} ND=a×Cα=b×Cβ

通过 IsoFLOPs,计算 CLM 与 MLM 的 Scaling Laws 参数:

Para

使用 Latex 计算数值,可以使用 SymboLab 工具

例如:

CLM 模型在 1 × 1 0 21 1 \times 10^{21} 1×1021 计算量下的 最优参数量(N)1.73B,与实验近似,参考:

N = ( 1.26 × 1 0 − 3 ) × C 0.578 N = 1.26 × 1 0 − 3 × ( 1 × 1 0 21 ) 0.578 = 1.26 × 1 0 − 3 × 1 0 12.138 = 1.26 × 1 0 9.138 = 1.7313 × 1 0 9 ≈ 1.73 B \begin{align} N &= (1.26 \times 10^{-3}) \times C^{0.578} \\ N &= 1.26 \times 10^{-3} \times (1 \times 10^{21})^{0.578} \\ &= 1.26 \times 10^{-3} \times 10^{12.138} \\ &= 1.26 \times10^{9.138} \\ &= 1.7313 \times 10^{9} \\ &\approx 1.73B \\ \end{align} NN=(1.26×103)×C0.578=1.26×103×(1×1021)0.578=1.26×103×1012.138=1.26×109.138=1.7313×1091.73B

同时,反推 C 的公式:

C = ( N 1.26 ∗ 1 0 − 3 ) 1 0.578 = ( N 1.26 ∗ 1 0 − 3 ) 1.73 C = ( 1.73 ∗ 1 0 9 1.26 ∗ 1 0 − 3 ) 1.73 = ( 1.37 ∗ 1 0 12 ) 1.73 = 1 ∗ 1 0 21 \begin{align} C &= (\frac{N}{1.26*10^{-3}})^\frac{1}{0.578} = (\frac{N}{1.26*10^{-3}})^{1.73} \\ C &= (\frac{1.73 * 10^{9}}{1.26*10^{-3}})^{1.73} \\ &= (1.37*10^{12})^{1.73} \\ &= 1*10^{21} \end{align} CC=(1.26103N)0.5781=(1.26103N)1.73=(1.261031.73109)1.73=(1.371012)1.73=11021

CLM 模型在 1 × 1 0 21 1 \times 10^{21} 1×1021 计算量下的 最优数据量(D)89.5B,与实验近似,参考:

D = ( 1.23 × 1 0 2 ) × C 0.422 D = 1.23 × 1 0 2 × ( 1 × 1 0 21 ) 0.422 = 89.5 × 1 0 9 ≈ 89.5 B \begin{align} D &= (1.23 \times 10^{2}) \times C^{0.422} \\ D &= 1.23 \times 10^{2} \times (1 \times 10^{21})^{0.422} \\ &= 89.5 \times 10^9 \\ &\approx 89.5B \end{align} DD=(1.23×102)×C0.422=1.23×102×(1×1021)0.422=89.5×10989.5B

C = 1 × 1 0 21 C=1 \times 10^{21} C=1×1021 时,在蛋白质生成领域 CLM 的 Scaling Laws,满足:

C = α × N × D α = C N × D = 1 × 1 0 21 1.7313 × 1 0 9 × 89.5 × 1 0 9 = 6.45363 C = 6.45 × N × D \begin{align} C &= \alpha \times N \times D \\ \alpha &= \frac{C}{N \times D} \\ &= \frac{1 \times 10^{21}}{1.7313 \times10^{9} \times 89.5 \times 10^9} \\ &= 6.45363 \\ C &= 6.45 \times N \times D \end{align} CαC=α×N×D=N×DC=1.7313×109×89.5×1091×1021=6.45363=6.45×N×D

同理,推理 MLM 模型,在 1 × 1 0 21 1 \times 10^{21} 1×1021 计算量的 Scaling Laws:

N = ( 6.19 × 1 0 − 8 ) × C 0.776 = ( 6.19 × 1 0 − 8 ) × ( 1 × 1 0 21 ) 0.776 = 1.224 × 1 0 9 D = ( 2.02 × 1 0 6 ) × C 0.230 = ( 2.02 × 1 0 6 ) × ( 1 × 1 0 21 ) 0.230 = 136.57 × 1 0 9 α = C N × D = 1 × 1 0 21 1.224 × 1 0 9 × 136.57 × 1 0 9 = 5.98 C = 5.98 × N × D \begin{align} N &= (6.19 \times 10^{-8}) \times C^{0.776} = (6.19 \times 10^{-8}) \times (1 \times 10^{21})^{0.776} = 1.224 \times 10^9 \\ D &= (2.02 \times 10^{6}) \times C^{0.230} = (2.02 \times 10^{6}) \times (1 \times 10^{21})^{0.230} = 136.57 \times 10^9 \\ \alpha &= \frac{C}{N \times D} = \frac{1 \times 10^{21}}{1.224 \times 10^9 \times 136.57 \times 10^9} = 5.98 \\ C &= 5.98 \times N \times D \end{align} NDαC=(6.19×108)×C0.776=(6.19×108)×(1×1021)0.776=1.224×109=(2.02×106)×C0.230=(2.02×106)×(1×1021)0.230=136.57×109=N×DC=1.224×109×136.57×1091×1021=5.98=5.98×N×D

如果 计算量C 预算增加 10 倍:

  • 对于 CLM 模型的大小增加 4 倍,训练数据增加 3 倍,近似等比例缩放。
  • 对于 MLM 模型的大小增加 6 倍,训练数据增加 1.7 倍。

通过 IsoLoss,构建损失值 Loss,与 C 、 N 、 D C、N、D CND 之间的 Scaling 关系:

L ( x ) = β x × x α x L(x) = \beta_{x} \times x^{\alpha_{x}} L(x)=βx×xαx

进而推导,数据量D 与 参数量N 的关联公式:

D ( N ) = ( β N β D ) 1 α D × N α N α D D(N)=(\frac{\beta_{N}}{\beta_{D}})^{\frac{1}{\alpha_{D}}} \times N^{\frac{\alpha_{N}}{\alpha_{D}}} D(N)=(βDβN)αD1×NαDαN

参数:

Para

例如:1.7B 模型的参数量是 76.19B,注意通过 IsoLoss 与 IsoFLOPs 计算的公式,略有差别,即:

D ( N ) = ( 4.835 7.904 ) 1 − 0.051 × ( 1.7 × 1 0 9 ) − 0.037 − 0.051 = 76.19 B D(N)=(\frac{4.835}{7.904})^{\frac{1}{-0.051}} \times (1.7 \times 10^{9})^{\frac{-0.037}{-0.051}}=76.19B D(N)=(7.9044.835)0.0511×(1.7×109)0.0510.037=76.19B

2.2 Scaling Laws 训练 2 个模型

在相同模型参数下,需要 同时(Simultaneously) 训练 CLM 与 MLM 两个模型,需要总投入的计算资源 C 确定,提高训练效率和效果,避免计算资源的不合理分配或浪费。

N ( C M L M ) = N ( C C L M ) N(C_{MLM})=N(C_{CLM}) N(CMLM)=N(CCLM) 的预估计算量 C M L M C_{MLM} CMLM C C L M C_{CLM} CCLM r ( N ) r(N) r(N) 表示训练令牌的分配比例,即:

C s u m ( N ) = C M L M ( N ) + C C L M ( N ) = ( N 6.19 × 1 0 − 8 ) 1 0.776 + ( N 1.26 × 1 0 − 3 ) 1 0.578 r ( N ) = D M L M ( N ) D C L M ( N ) C_{sum }(N)=C_{MLM}(N)+C_{CLM}(N)=(\frac{N}{6.19 × 10^{-8}})^{\frac{1}{0.776}}+(\frac{N}{1.26 × 10^{-3}})^{\frac{1}{0.578}} \\ r(N) = \frac{D_{MLM}(N)}{D_{CLM}(N)} Csum(N)=CMLM(N)+CCLM(N)=(6.19×108N)0.7761+(1.26×103N)0.5781r(N)=DCLM(N)DMLM(N)

求解公式得到:

N ( C s u m ) = 1.497 × 1 0 − 6 × C s u m 0.703 r ( N ) = 8.449 × 1 0 3 × N − 0.392 N(C_{sum})=1.497 \times 10^{-6} \times C_{sum}^{0.703} \\ r(N) = 8.449 \times 10^{3} \times N^{-0.392} N(Csum)=1.497×106×Csum0.703r(N)=8.449×103×N0.392

在模型 参数量N 是10B 时,数据量的比例是1:1。即

r ( 10 B ) = 8.449 × 1 0 3 × ( 10 × 1 0 9 ) − 0.392 = 1 r(10B)=8.449 \times 10^{3} \times (10 \times 10^9)^{-0.392}=1 r(10B)=8.449×103×(10×109)0.392=1

例如:模型大小 1.7B 需要的计算量,即:

C s u m ( N ) = ( 1.7 × 1 0 9 6.19 × 1 0 − 8 ) 1 0.776 + ( 1.7 × 1 0 9 1.26 × 1 0 − 3 ) 1 0.578 = 2.496 × 1 0 21 C_{sum}(N)=(\frac{1.7 \times 10^9}{6.19 × 10^{-8}})^{\frac{1}{0.776}}+(\frac{1.7 \times 10^9}{1.26 × 10^{-3}})^{\frac{1}{0.578}}=2.496 \times 10^{21} Csum(N)=(6.19×1081.7×109)0.7761+(1.26×1031.7×109)0.5781=2.496×1021

例如:计算量C是 2.5 × 1 0 21 2.5 \times 10^{21} 2.5×1021,最优模型规模是 1.65 B 1.65B 1.65B,最优数据量是 252 B 252B 252B,即:

N = 1.497 × 1 0 − 6 × ( 2.5 × 1 0 21 ) 0.703 = 1.652 × 1 0 9 ≈ 1.652 B r = 8.449 × 1 0 3 × ( 1.652 × 1 0 9 ) − 0.392 = 2.057 D ≈ C 6 × N = 2.5 × 1 0 21 6 × 1.652 × 1 0 9 = 252 × 1 0 9 ≈ 252 B D M L M = 252 × 2 3 × 1 0 9 = 168 B D C L M = 252 × 1 3 × 1 0 9 = 84 B \begin{align} N &= 1.497 \times 10^{-6} \times (2.5 \times 10^{21})^{0.703} = 1.652 \times 10^{9} \approx 1.652B \\ r &= 8.449 \times 10^{3} \times (1.652 \times 10^{9})^{-0.392} = 2.057 \\ D &\approx \frac{C}{6 \times N} = \frac{2.5 \times 10^{21}}{6 \times 1.652 \times 10^{9}} = 252 \times 10^{9} \approx 252B \\ D_{MLM} &= 252 \times \frac{2}{3} \times 10^{9} = 168B \\ D_{CLM} &= 252 \times \frac{1}{3} \times 10^{9} = 84B \end{align} NrDDMLMDCLM=1.497×106×(2.5×1021)0.703=1.652×1091.652B=8.449×103×(1.652×109)0.392=2.0576×NC=6×1.652×1092.5×1021=252×109252B=252×32×109=168B=252×31×109=84B

C 与 N 的相关性,参考:

sum

其他,Decoder 的不同模型参数,用于计算 Scaling Laws,即:

Params

相关文章:

LLM - 大模型 ScallingLaws 的 CLM 和 MLM 中不同系数(PLM) 教程(2)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/145188660 免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。 Scalin…...

游戏引擎学习第80天

Blackboard:增强碰撞循环,循环遍历两种类型的 t 值 计划对现有的碰撞检测循环进行修改,以便实现一些新的功能。具体来说,是希望处理在游戏中定义可行走区域和地面的一些实体。尽管这是一个2D游戏,目标是构建一些更丰富…...

CSS布局与响应式

学习链接 Grid网格布局 前端五大主流网页布局 flex布局看这一篇就够了 grid布局看这一篇就够了 用六个案例学会响应式布局 伸缩盒响应式页面布局实战 实现响应式布局的五种方式 - csdn 如何完成响应式布局,有几种方法?看这个就够了 响应式布局总…...

PyBroker:利用 Python 和机器学习助力算法交易

PyBroker:利用 Python 和机器学习助力算法交易 你是否希望借助 Python 和机器学习的力量来优化你的交易策略?那么你需要了解一下 PyBroker!这个 Python 框架专为开发算法交易策略而设计,尤其关注使用机器学习的策略。借助 PyBrok…...

深入了解卷积神经网络(CNN):图像处理与深度学习的革命性技术

深入了解卷积神经网络(CNN):图像处理与深度学习的革命性技术 导语 卷积神经网络(CNN)是现代深度学习领域中最重要的模型之一,特别在计算机视觉(CV)领域具有革命性的影响。无论是图…...

彩色图像面积计算一般方法及MATLAB实现

一、引言 在数字图像处理中,经常需要获取感兴趣区域的面积属性,下面给出图像处理的一般步骤。 1.读入的彩色图像 2.将彩色图像转化为灰度图像 3.灰度图像转化为二值图像 4.区域标记 5.对每个区域的面积进行计算和显示 二、程序代码 %面积计算 cle…...

[Qt] Box Model | 控件样式 | 实现log_in界面

目录 1、样式属性 (1)盒模型(Box Model) 2、控件样式示例 (1)按钮 (2)复选框 (3)单选框 (4)输入框 (5&#xff09…...

内存与缓存:保姆级图文详解

文章目录 前言1、计算机存储设备1.1、硬盘、内存、缓存1.2、金字塔结构1.3、数据流通过程 2、数据结构内存效率3、数据结构缓存效率 前言 亲爱的家人们,创作很不容易,若对您有帮助的话,请点赞收藏加关注哦,您的关注是我持续创作的…...

IM聊天学习资源

文章目录 参考链接使用前端界面简单效果消息窗口平滑滚动至底部vue使用watch监听vuex中的变量变化 websocket握手认证ChatKeyCheckHandlerNettyChatServerNettyChatInitializer 参考链接 zzhua/netty-chat-web - 包括前后端 vue.js实现带表情评论功能前后端实现(仿…...

Redis 中 TTL 的基本知识与禁用缓存键的实现策略(Java)

目录 前言1. 基本知识2. Java代码 前言 🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF 单纯学习Redis可以看我前言的Java基本知识路线!! 对于Java的基本知识推荐阅读: java框架…...

SpringMvc解决跨域问题的源码汇总。

看本文章前,需了解跨域的缘由。 其次,了解RequestMapping的基础原理 最后我们来解析SpringMvc是如何处理跨域问题的。 跨域信息配置 SpringMvc分为全局级别和局部级别两种,全局级别就是任何跨域请求都起作用。 全局级别 全局级别就是在配…...

25.1.17学习内容

B - 迷宫 Description 给定一个 NM 方格的迷宫,迷宫里有 T 处障碍,障碍处不可通过。 在迷宫中移动有上下左右四种方式,每次只能移动一个方格。数据保证起点上没有障碍。 给定起点坐标和终点坐标,每个方格最多经过一次&#xf…...

【开源免费】基于SpringBoot+Vue.JS欢迪迈手机商城(JAVA毕业设计)

本文项目编号 T 141 ,文末自助获取源码 \color{red}{T141,文末自助获取源码} T141,文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…...

Qt之文件系统操作和读写

Qt creator 6.80 MinGw 64bit 文本文件是指以纯文本格式存储的文件,如cpp和hpp文件。XML文件和JSON文件也是文本文件,只是使用了特定的标记符号定义文本的含义,读取这种文本文件需要先对内容解析再显示。 qt提供了两种读写文本文件的方法。…...

合合信息名片全能王上架原生鸿蒙应用市场,成为首批数字名片类应用

长期以来,名片都是企业商务沟通的重要工具。随着企业数字化转型,相较于传统的纸质名片,数字名片对于企业成员拓展业务、获取商机、提升企业形象等方面发挥着重要作用。近期,合合信息旗下名片全能王正式上线原生鸿蒙应用市场&#…...

万字长文介绍ARINC 653,以及在综合模块化航空电子设备(IMA)中的作用

文章目录 一、引言二、ARINC 653背景三、整体系统架构四、应用/执行(APEX)接口五、ARINC 653 RTOS内部机制六、健康监测功能七、软件应用八、ARINC 653现状九、总结 一、引言 在现代航空领域,综合模块化航空电子设备(IMA&#xf…...

jenkins-node节点配置

一.简述: Jenkins有一个很强大的功能: 即:支持分布式构建(jenkins配置中叫节点(node),也被称为slave)。分布式构建通常是用来吸收额外的负载。通过动态添加额外的机器应对构建作业中的高峰期,或在特定操作系统或环境运行特定的构建…...

【Flink系列】5. DataStream API

5. DataStream API DataStream API是Flink的核心层API。一个Flink程序,其实就是对DataStream的各种转换。具体来说,代码基本上都由以下几部分构成: 5.1 执行环境(Execution Environment) Flink程序可以在各种上下文…...

【tailscale 和 ssh】当服务器建立好节点,但通过客户端无法通过 ssh 连接

背景 当服务器建立好节点,一切显示正常但通过客户端无法通过 vs code 中的 ssh 连接到服务器 问题解决 因为服务器是重装过的,所以忘记在服务器上下载 ssh 了。。。安装完成并启动 SSH 服务后便可正常连接! sudo apt update sudo apt in…...

TDengine 做 Apache SuperSet 数据源

‌Apache Superset‌ 是一个现代的企业级商业智能(BI)Web 应用程序,主要用于数据探索和可视化。它由 Apache 软件基金会支持,是一个开源项目,它拥有活跃的社区和丰富的生态系统。Apache Superset 提供了直观的用户界面…...

PCL 新增自定义点类型【2025最新版】

目录 一、自定义点类型1、前言2、定义方法3、代码示例二、合并现有类型三、点云按时间渲染1、CloudCompare渲染2、PCL渲染博客长期更新,本文最近更新时间为:2025年1月18日。 一、自定义点类型 1、前言 PCL库自身定义了很多点云类型,但是在使用的时候时如果要使用自己定义的…...

【记录52】el-table-column 添加fixed属性 滚动条无法滑动

问题: el-table-column 添加fixed属性 滚动条无法滑动 使用element UI组件,用到el-table的el-table-column的fixed属性时,当滚动条长度小于固定列时,滚动条无法通过鼠标去点击滑动操作 原因 fixed是用来固定列的属性,其…...

华为OD机试E卷 ---最大值

一、题目描述 给定一组整数(非负),重排顺序后输出一个最大的整数。 二、示例1 用例1 输入 10 9输出 910说明:输出结果可能非常大,所以你需要返回一个 字符串只而不是整数。 三、输入描述 数字组合 四、输出描述 最大的整数 五、解题思路 字符…...

服务器迁移MySQL

由于公司原有的服务器不再使用,需要将老的服务器上的MySQL迁移到新的服务器上,因此需要对数据进行备份迁移,前提是两台服务器已安装相同版本的MySQL,这里就不再讲解MySQL的安装步骤了,可以安装包、可以在线下载、可以容…...

.Net Core微服务入门全纪录(二)——Consul-服务注册与发现(上)

系列文章目录 1、.Net Core微服务入门系列(一)——项目搭建 2、.Net Core微服务入门全纪录(二)——Consul-服务注册与发现(上) 3、.Net Core微服务入门全纪录(三)——Consul-服务注…...

【Linux系统】分区挂载

我们能够根据一个 inode 号在指定分区寻找目标文件的 struct inode,也能根据目录文件的内容,通过映射关系,找指定的 inode,可是,现在有个问题: 问题:inode 是不能跨分区使用的!Linu…...

进阶——十六届蓝桥杯嵌入式熟练度练习(按键+LCD)

高亮(一) 声明 char buf[21];unsigned char upled0x04;uint8_t key_val;uint8_t key_down,key_up,key_old;uint32_t key_time;uint8_t key_temp,key_flag;uint8_t line_flag; 按键代码 void key_proc(void) { key_valkey_scan();key_downkey_val&…...

简单介绍JSONStream的使用

地址 作用 这个模块是根据需要筛选出json数据中自己所需要的数据 使用 var JSONStream require("JSONStream"); var parse require("fast-json-parse"); var fs require("fs");fs.createReadStream("./time.json").pipe(JSONSt…...

LTX-Video 高效视频生成模型,一键处理图片文字

LTX-Video 是由 Lightricks 在 2024 年开发的一种视频生成模型,这种模型采用了 transformer 和 Video-VAE 技术,能够高效生成高分辨率视频。此外,LTX-Video 支持多种视频生成方式,包括从文本到视频和从图像到视频。 教程链接&…...

AUTOSAR从入门到精通专栏总目录

AUTOSAR通过分层、模块化和封装的特性,革命性地改变了汽车电子软件开发。它简化了软硬件接口,提高了软件复用性,降低了开发成本和周期。随着 AUTOSAR 在汽车电子系统开发领域的广泛应用,对其深入理解和熟练掌握已成为汽车电子软件…...

Windows环境本地配置pyspark环境详细教程

目录 一、背景简记二、本地单机spark环境配置详细步骤第一步:python环境安装第二步:安装jdk及配置环境变量安装包下载安装环境变量配置 第三步:安装Spark安装包下载安装配置环境变量 第四步:安装hadoop安装包下载安装配置环境变量…...

第8篇:从入门到精通:掌握Python异常处理

第8篇:异常处理 内容简介 本篇文章将深入探讨Python中的异常处理机制。您将学习异常的基本概念与类型,掌握使用try-except块处理异常的方法,了解finally语句的作用,以及如何抛出和定义自定义异常。通过丰富的代码示例&#xff0…...

聚铭网络6款产品入选CCIA《网络安全专用产品指南》

近日,中国网络安全产业联盟CCIA正式发布《网络安全专用产品指南》(第二版)(以下简称《指南》)。聚铭网络凭借突出技术优势、创新能力以及市场积累,旗下安全产品成功入选防火墙、网络安全审计、日志分析、网…...

高等数学学习笔记 ☞ 不定积分的积分方法

1. 第一换元积分法 1. 基础概念:形如的过程,称为第一换元积分法。 2. 核心思想:通过对被积函数的观察(把被积函数的形式与积分表的积分公式进行比较),把外部的部分项拿到的内部(求原函数), 然后进行拼凑,…...

08、如何预防SQL注入

目录 1、分析及其存在哪些危险 2、预防SQL注入 1、分析及其存在哪些危险 原理: SQL 注入是一种常见的网络攻击手段,攻击者通过在用户输入中插入恶意的 SQL 语句,利用程序对用户输入处理不当的漏洞,使恶意 SQL 语句被数据库服务器执行。 通常发生在应用程序将用户输入直接拼…...

如何发布自己的第一个Chrome扩展程序

如何发布自己的Chrome扩展程序 只需要六步即可完成Chrome扩展程序的发布 (1)首先打开google chrome 应用商城注册开发者账号的页面 (2)现在进行一个绑卡支付5美元的一次性注册费用即可。【不知道如何绑卡的支付的,文…...

ubuntu开机自启,其他方式

在 Ubuntu 22.04 中,如果不使用 .service 文件,仍然有其他方法可以让某个 .sh 文件随着系统启动而自动运行。以下是几种替代方法: 方法一:使用 crontab 的 reboot 选项 crontab 是 Linux 中用于设置周期性被执行的任务的工具。通…...

容器渗透横向

本质上要获得 1.获得容器IP段 2.获得主机IP段 3.获得本机IP 4.通过CNI或Docker0等扫描本机端口 Flannel 容器信息 rootubuntu-linux-22-04-desktop:/home/parallels/Desktop# k get po -A -o wide NAMESPACE NAME …...

软件测试—接口测试面试题及jmeter面试题

一,接口面试题 1.接口的作用 实现前后端的交互,实现数据的传输 2.什么是接口测试 接口测试就是对系统或组件之间的接口进行测试,主要是校验数据的交换、传递和控制管理过程,以及相互逻辑关系 3.接口测试必要性 1.可以发现很…...

ansible之playbook剧本

Playbook 1.playbook的组成部分 开头 用 --- 表示,表示是一个yaml文件,但是可以忽略不写 Tasks(任务) 包含了在目标主机上执行的操作,操作还是由模板来执行。每一个任务都是一个ansible的模块,调用系统命…...

基于 Python 的财经数据接口库:AKShare

AKShare 是基于 Python 的财经数据接口库,目的是实现对股票、期货、期权、基金、外汇、债券、指数、加密货币等金融产品的基本面数据、实时和历史行情数据、衍生数据从数据采集、数据清洗到数据落地的一套工具,主要用于学术研究目的。 安装 安装手册见…...

强网杯RS加密签名伪造及PyramidWeb利用栈帧打内存马

RS加密签名伪造及PyramidWeb利用栈帧打内存马 今年强网杯的一个新框架源代码如下 from wsgiref.simple_server import make_server from pyramid.config import Configurator from pyramid.events import NewResponse from pyramid.response import Response import utiluser…...

Java基础——概念和常识(语言特点、JVM、JDK、JRE、AOT/JIT等介绍)

我是一个计算机专业研0的学生卡蒙Camel🐫🐫🐫(刚保研) 记录每天学习过程(主要学习Java、python、人工智能),总结知识点(内容来自:自我总结网上借鉴&#xff0…...

搭建Node.js后端

从头开始搭建一个Node.js后端,并实现查询历史数据的功能,下面是详细的步骤说明,包括环境配置、项目初始化、代码编写、以及服务器启动。 1. 环境配置 1.1 安装 Node.js 和 npm 首先,你需要在你的电脑上安装 Node.js 和 npm&…...

RV1126+FFMPEG推流项目(9)AI和AENC模块绑定,并且开启线程采集

前面两篇已经交代AI和AENC模块的配置,这篇就让这两个模块绑定起来,绑定的原因是,Aenc从Ai模块拿到采集的原始数据进行编码。 使用 RK_MPI_SYS_Bind 把 AI 节点和 AENC 进行绑定,其中 enModId 是模块 ID 号选择的是 RK_ID_AI、s32C…...

vue编写一个可拖动的模块,并可以和任何其他组件组合使用

实现思路&#xff1a; 使用 Vue 的自定义指令&#xff08;directive&#xff09;来处理拖动逻辑。在 mounted 钩子中添加鼠标事件监听器&#xff0c;以实现拖动功能。在 unmounted 钩子中移除鼠标事件监听器&#xff0c;防止内存泄漏。 代码示例&#xff1a; <template&g…...

Spring6.0新特性-HTTP接口:使用@HttpExchange实现更优雅的Http客户端

文章目录 一、概述二、使用1、创建接口HttpExchange方法2、创建一个在调用方法时执行请求的代理3、方法参数4、返回值5、错误处理&#xff08;1&#xff09;为RestClient&#xff08;2&#xff09;为WebClient&#xff08;3&#xff09;为RestTemplate 注意 一、概述 官方文档…...

【蓝桥杯】Python算法——求逆元的两种算法

目录 零、前言一、逆元二、扩展欧几里得算法三、费马小定理四、总结 零、前言 距离25年蓝桥杯还有大概三个月时间&#xff0c;接下来重点应该会放在蓝桥杯备考方向&#xff0c;一起努力&#xff0c;一起加油 一、逆元 什么是逆元&#xff1f;这是数论中的一个基本概念。如果存…...

音频语言模型与多模态体系结构

音频语言模型与多模态体系结构 多模态模型正在创造语言、视觉和语音等以前独立的研究领域的协同效应。这些模型使用通用架构,将每种模式视为不同的“token”,使它们能够以一种与人类认知非常相似的方式联合建模和理解世界。 ​ ​可以将多模态分为两个主要领域:输入空间(…...

Redis的安装和配置、基本命令

一、实验目的 本实验旨在帮助学生熟悉Redis的安装、配置和基本使用&#xff0c;包括启动Redis服务、使用命令行客户端进行操作、配置Redis、进行多数据库操作以及掌握键值相关和服务器相关的命令。 二、实验环境准备 1. JAVA环境准备&#xff1a;确保Java Development Kit …...