【李宏毅-2024】第六讲 大语言模型的训练过程1——预训练(Pre-training)

目录

  • 概述
    • 1. 预训练(Pre-training)
    • 2. 微调(Fine-tuning,又称 SFT,Supervised Fine-Tuning)
    • 3. 对齐(Alignment,又称 RLHF 或 DPO 等)
    • 4 三阶段对比
  • 6 第一阶段——自我学习,积累实力
    • 6.1 大模型本质上是文字接龙
      • 1. 从字符到 token 的拆分过程
      • 2. 为什么要用 token 而非字符或单词?
      • 3. 关键指标:token 与成本
    • 6.2 机器怎么学会做文字接龙
      • 1. 语言模型的核心任务
      • 2. 数学形式
      • 3. 训练目标
      • 4. 训练与测试过程
      • 5. 三阶段的本质任务
    • 6.3 寻找参数面临的挑战
      • 1. **参数优化与超参数选择**
      • 2. **训练失败与应对**
      • 3. **过拟合(Overfitting)**
      • 4. 训练过程的核心原则
    • 6.4 如何让机器找到比较合理的参数
      • 1 增加训练数据的多样性
      • 2 设置更合理的初始参数
      • 3 引入先验知识
    • 6.5 需要多少文字才能学会“文字接龙”?
      • 1语言知识(Linguistic Knowledge)的学习
      • 2 世界知识(World Knowledge)
      • 3 世界知识的多层次性
    • 6.6 任何文本皆可用来学“文字接龙”
      • 1. **从互联网抓取海量文本**
      • 2. **自监督学习(Self-supervised Learning)**
      • 3. **大规模数据获取与训练优势**
    • 6.7 数据的精炼与完善:数据清理的必要性与操作细节
      • 1. 数据清理的必要性
      • 2. 六大清理步骤
    • 6.8 所有文本资料都能拿来训练“文字接龙”吗?
      • 1 是否任何资料都能用于训练?
      • 2 版权纠纷与法律风险
      • 3 开发团队的常见做法
      • 4 授权与合规建议
    • 6.9 再训更大的模型也没用:为什么语言模型仍无法好好回答问题?
      • 1. 学习方式决定了“只会接龙”
      • 2. 缺乏明确的目标引导
      • 3. 无效的自问自答模式
      • 4. 大模型预训练的困境与解决思路

课程地址 B站 本文参考笔记

概述

大模型的训练通常被概括为 “预训练 → 微调 → 对齐” 三个递进的阶段,每个阶段的目标、数据、算法和产出都有明显差异。下面按时间顺序逐一说明:


1. 预训练(Pre-training)

目标:让模型学会“通用的语言和世界知识”,具备强大的表征与生成能力。
数据:大规模、多领域、多语言的原始文本(如网页、书籍、论文、代码等),数据量通常从几 TB 到数百 TB。
算法:自监督学习(最常见的是下一个 token 预测或 masked token 预测)。
算力:千卡级 GPU/TPU,持续数周到数月。
产出:基座模型(Base model),如 GPT-3、Llama-2、Baichuan-Base。
特点

  • 无人工标注,仅依靠海量文本的自监督信号。
  • 模型规模大(数十亿到上万亿参数),训练成本高。
  • 具备广泛的知识和语言能力,但没有指令遵循能力,也不保证输出安全、有用。

2. 微调(Fine-tuning,又称 SFT,Supervised Fine-Tuning)

目标:让基座模型学会遵循指令、完成具体任务(问答、摘要、翻译、代码补全等)。
数据:数十万到上百万条 (指令, 输入, 期望输出) 的高质量人工标注数据。
算法:继续用监督学习训练,通常只训练 1–3 个 epoch,学习率较小。
算力:相比预训练下降 2–3 个数量级(几十张卡、几天到一周)。
产出:指令微调模型(Instruct model),如 GPT-3.5-Turbo、Llama-2-Chat、ChatGLM-6B-SFT。
特点

  • 输出风格更贴近人类对话,能执行“请翻译成英文”“写一段 Python 代码”等指令。
  • 仍可能输出有害、偏见或事实错误的内容,需要进一步约束。

3. 对齐(Alignment,又称 RLHF 或 DPO 等)

目标:让模型的价值观、安全性、有用性与人类期望“对齐”。
数据

  • 偏好数据(Preference data):人工对同一 prompt 的多个回答进行排序。
  • 有时再辅以红队对抗样本、安全准则、宪法原则等。
    算法
  • 经典路线:RLHF(Reinforcement Learning from Human Feedback,用 PPO 强化学习)。
  • 新路线:直接偏好优化(DPO、KTO、RRHF 等),无需显式强化学习。
    算力:与微调同一量级,但流程更复杂(需训练奖励模型、做 RL 或偏好优化)。
    产出:对话/助手模型(Chat/Assistant model),如 GPT-4、Claude-3、Kimi-Chat。
    特点
  • 显著降低有害、歧视、幻觉输出,提升帮助性与可操控性。
  • 使模型学会说“我不知道”“我无法协助此类请求”等安全表达。

4 三阶段对比

阶段训练信号数据规模主要能力获得典型代表
预训练自监督TB 级原始文本通用语言、世界知识Llama-2-Base
微调监督学习105–106 条指令遵循指令、任务完成Llama-2-Chat-SFT
对齐人类反馈/偏好104–105 条排序安全、有用、符合价值观GPT-4, Claude-3

这三个阶段并非绝对割裂:

  • 一些模型把“微调+对齐”合并为单阶段(如指令微调中直接混入安全数据)。
  • 社区出现“继续预训练 → 轻量微调 → 在线对齐”的迭代式开发管线,以持续改进模型。

上面的三个阶段对应到课程中分别是第六节(自我学习,积累实力)第七节(名师指点,发挥潜力)第八节(参与实战,打磨技巧)

在这里插入图片描述

6 第一阶段——自我学习,积累实力

6.1 大模型本质上是文字接龙

大模型本质上是文字接龙:当生成答案时,模型通过逐步预测和生成单个符号(称为Token),依序构建完整的输出。
在这里插入图片描述

在大模型的语境里,Token 是“文本”被离散化后的最小处理单元;模型既不认识字母,也不直接操作汉字,而是先把所有字符序列拆成一串 token,再进行训练和推理。 可以简单理解为,Token 是模型眼里“语言的字母表”中的单个符号。

可以把文本想象成乐高积木:

  • 字符是小颗粒,拼起来太碎;
  • 单词是大模块,种类太多;
  • token 是官方设计的“标准砖块”,既通用又高效,大模型只认这种砖块。

1. 从字符到 token 的拆分过程

以 OpenAI 的 GPT 系列为例,使用 BPE(Byte Pair Encoding) 子词分词器:

  • 英文字母:
    "ChatGPT"["Chat", "G", "PT"](3 个 token)
  • 中文:
    "大模型"["大", "模型"](2 个 token)
  • 带标点:
    "你好,世界!"["你好", ",", "世界", "!"](4 个 token)
  • 极端情况:
    一个罕见 emoji 🤯 可能被拆成多个 byte-level token,也可能独占一个 token,取决于词表是否收录。

2. 为什么要用 token 而非字符或单词?

  • 压缩文本长度:高频子词(如 “ing”、“的”、“模型”)用一个 token 表示,减少序列长度。
  • 跨语言兼容:同一套词表可同时覆盖 100+ 语言,无需为每种语言单独设计分词器。
  • 平衡粒度:比“字符”粗,比“整词”细,避免词表爆炸,又能处理未登录词。

3. 关键指标:token 与成本

  • 上下文长度以 token 计数:GPT-4 Turbo 支持 128k tokens ≈ 10 万英文单词。
  • 计费单位:OpenAI、Anthropic 等按 “每 1k tokens” 收费,输入与输出分别计价。
  • 经验换算
    • 1 个英文单词 ≈ 1.3 tokens
    • 1 个汉字 ≈ 1.8–2.2 tokens(取决于文本密度)

6.2 机器怎么学会做文字接龙

在这里插入图片描述

1. 语言模型的核心任务

文字接龙:输入一个未完成的句子 → 输出最可能的下一个 token。

2. 数学形式

模型是一个含 数十亿参数 的 Transformer 函数 f:next_token = f(unfinished_sentence)

3. 训练目标

用海量「句子-下一 token」样本,通过优化算法确定所有参数,使预测误差最小。

4. 训练与测试过程

训练(Training)
• 数据来源:大规模文本,形式为「未完成的句子 → 下一个正确 token」。
• 目标:通过优化算法(如 Adam、SGD)迭代更新数十亿参数,最小化预测误差。

测试 / 推断(Testing / Inference)
• 使用已训练完成的固定参数模型。
• 输入任意文本前缀,模型即时输出最可能的后续 token,参数不再更新。

5. 三阶段的本质任务

无论预训练、微调还是对齐,模型始终在学习「文字接龙」。
阶段差异仅体现在训练数据:
• 阶段 1:通用语料 → 建立广泛语言知识与常识。
• 阶段 2:高质量指令-回答对 → 获得任务理解与指令遵循能力。
• 阶段 3:人类偏好或安全准则数据 → 实现价值观对齐与输出可控。
在这里插入图片描述

6.3 寻找参数面临的挑战

在这里插入图片描述

1. 参数优化与超参数选择

  • 优化(Optimization):利用机器学习方法自动调整数十亿个模型参数,使模型输出尽可能贴合训练数据。
  • 超参数(Hyperparameters):决定“如何优化”的人工设定值,如学习率、优化器类型、批大小等。它们不在训练中被更新,却对结果影响巨大。
  • 难点:超参数空间庞大且效果难以预估;训练失败时只能通过反复试错重新设定,耗费大量算力。

2. 训练失败与应对

  • 表现:模型在训练集上无法收敛或误差居高不下。
  • 根因:超参数设置不当、数据质量差或模型结构设计缺陷。
  • 解决:系统性地调整超参数(俗称“调参”),并重启训练。

3. 过拟合(Overfitting)

  • 定义:模型在训练集表现优异,但在未见过的新数据(测试集)上表现显著下降。
  • 成因:模型过度记忆训练数据中的噪声或局部特征,缺乏泛化能力。
  • 示例:猫狗分类器仅依据“黄色=狗,黑色=猫”的颜色特征进行判断,遇到黄色猫时即误判为狗。

过拟合相关课程: 為什麼類神經網路可以正確分辨寶可夢和數碼寶貝呢?

在这里插入图片描述

4. 训练过程的核心原则

  • 机器只认训练数据:算法唯一目标是最小化训练集上的误差,不会主动评估参数是否合理或能否泛化至其他场景。
  • 勿以人智度机心:模型不具备人类的因果推理与常识判断,其“知识”边界完全由给定数据决定。

6.4 如何让机器找到比较合理的参数

在这里插入图片描述

1 增加训练数据的多样性

问题:如果数据分布过于单一,模型易学到虚假或片面特征(如仅凭颜色区分猫狗)。
解决:在猫狗分类任务中补充黄猫、黑狗等反例,迫使模型学习形状、纹理等更本质的特征。
作用:多样化数据削弱虚假关联,提升模型泛化能力,使优化得到的参数更具鲁棒性。
在这里插入图片描述

2 设置更合理的初始参数

定义:优化算法的起点。最终解通常与初始点在同一“盆地”,因此起点决定搜索效率与结果质量。
常见做法
随机初始化(Train from Scratch):按特定分布随机生成参数,简单但可能陷入局部最优或训练不稳定。
优化初始化:利用预训练、迁移学习或元学习获得接近目标解的初始参数,显著加快收敛并提升性能。
在这里插入图片描述

3 引入先验知识

概念:通过精心设计的初始参数或约束,将人类知识或经验“植入”模型,指导优化方向。
意义
– 初始参数即“先天知识”,可减少盲目搜索。
– 在数据有限或任务复杂的场景下,先验知识能有效提升最终参数质量。
【精炼与完善后的文本】

挑战:如何构造高质量的初始参数仍是机器学习研究的核心难题之一,涉及预训练策略、跨任务迁移、元学习等技术。

6.5 需要多少文字才能学会“文字接龙”?

在这里插入图片描述

1语言知识(Linguistic Knowledge)的学习

  • 任务:要学会“文字接龙”,语言模型需要掌握语言的文法规则,才能理解句子的结构,并作出符合文法的词汇选择。
  • 所需数据量:相对有限。研究指出,几千万~几亿词即可让模型掌握基础的语法、词法与句法规则,从而生成符合语言习惯的序列。

2 世界知识(World Knowledge)

  • 任务:除了语言知识,语言模型还需要学习世界知识,以理解事实、常识与语境,例如“水的沸点是 100 °C(1 atm)”。
  • 数据需求:远超语言知识。
    • 量级:即使训练语料达到 300 亿词,仍难以覆盖全部世界知识。
    • 原因
      • 事实本身浩如烟海;
      • 同一事实在不同上下文(海拔、气压、文化背景)中答案可变;
      • 知识呈层次化——从简单事实到深层因果、跨领域关联,均需大量多样化文本才能逐步捕捉。

3 世界知识的多层次性

  • 复杂性示例
    • 表层:水的沸点为 100 °C(标准大气压)。
    • 深层:在高海拔地区气压降低,沸点下降;在高压锅中,沸点升高。
  • 数据要求
    • 必须包含大规模、多场景、多语言的描述,才能让模型逐渐习得这些条件依赖与因果层次
    • 因此,世界知识的获取是“数据饥饿型”任务:语料越大、越多元,模型掌握得越全面,但仍无法穷尽。

【精炼与完善后的文本】

6.6 任何文本皆可用来学“文字接龙”

在这里插入图片描述

1. 从互联网抓取海量文本

• 网络本身即是一座取之不尽的“语料矿山”。
• 技术路径:网络爬虫 → 清洗去噪 → 按句子或滑动窗口切分 → 构造“上文 → 下一 token”配对。
• 示例:将句子“人工智慧真神奇”拆为

     人工 → 智  人工智 → 慧  人工智慧 → 真  ……

即可直接用于自监督训练。

2. 自监督学习(Self-supervised Learning)

• 定义:无需人工标注,模型利用文本自身的顺序结构作为监督信号。
• 流程:
① 自动把连续文本拆成“上文”与“待预测 token”;
② 通过最大化似然,让模型学会在给定前文时输出概率最高的下一词。
• 特点:人力成本低,可扩展至万亿级 token,适合大模型预训练。

3. 大规模数据获取与训练优势

• 数据规模:只要存储与算力允许,爬虫可源源不断提供多语言、多领域文本。
• 训练优势:
– 零人工标注,降低数据准备成本;
– 语料多样性与规模直接决定模型语言能力与泛化上限;
– 同一套流程可复制到任何新语料,持续更新模型知识。

6.7 数据的精炼与完善:数据清理的必要性与操作细节

1. 数据清理的必要性

网络爬取的原始语料虽然规模庞大,但直接用于训练会引入噪声、偏见甚至有害信息。DeepMind 的研究指出:
“未经清洗的数据会显著降低模型质量、安全性和泛化能力。”
因此,自监督学习仍需系统的人工干预与自动化清理流程。

2. 六大清理步骤

① 有害内容过滤

  • 使用关键词、分类器或人工审核剔除色情、暴力、仇恨、违法等不当文本。
  • 建立动态黑名单,定期更新敏感词库与规则。

② 去除无用符号

  • 剥离 HTML 标签、脚本、导航栏、页眉页脚、LaTeX 残留等格式标记。
  • 正则 + DOM 解析器组合,保证正文完整性。

③ 保留有效符号

  • 保留表情符号(😊、👍)、数学符号(π、∑)、特殊标点(“”、《》),因其可能携带语义或情感信息。
  • 建立白名单,避免误删。

④ 数据质量分级

  • 高质量来源:维基百科、教科书、政府/学术网站、权威新闻 → 上采样(重复多次)。
  • 低质量来源:论坛灌水、自动生成、事实错误 → 下采样或直接剔除。
  • 指标:准确性、权威性、有用性、可读性(可由人工+模型联合打分)。

⑤ 去重

  • 全局 MinHash / SimHash 检测段落级重复;阈值通常设为 90% 相似度。
  • 案例:某婚庆公司广告段落出现 6 万余次,去重后将其权重降至零,防止模型“背广告”。

⑥ 测试集过滤

  • 与训练集做反向去重,确保测试样本未在训练阶段曝光。
  • 再次执行步骤①–④,保证评估的严谨性与可复现性。
  1. 效果评估
    • 清理后语料规模通常下降 20%–40%,但困惑度(PPL)下降、BLEU/人工评分提升。
    • 引入“数据健康报告”:统计每类被过滤内容比例,作为后续迭代依据。

通过上述六步,既保留互联网文本的广度,又最大程度抑制噪声与风险,为大模型提供“干净且富营养”的训练口粮。

【精炼并完善后的文本】

6.8 所有文本资料都能拿来训练“文字接龙”吗?

“海量公开数据≠合法可用”。开发者必须将版权合规纳入数据工程的核心环节,否则模型规模越大,潜在法律风险也越大。

1 是否任何资料都能用于训练?

网络文本虽取之不尽,却并非“拿来即可用”。未经授权的受版权保护内容一旦用于训练,即可能触发侵权诉讼。

2 版权纠纷与法律风险

• 典型案例:2023 年《纽约时报》起诉 OpenAI 与微软,指控其未经授权使用付费新闻训练 GPT 系列。
• 风险点:
– 付费墙后的新闻、学术论文、专利文本、图书、剧本、代码仓库等,均可能受版权或合同条款保护;
– 即使网页公开可见,也不等于放弃版权。

3 开发团队的常见做法

做法描述风险等级
大规模爬取公开网页默认“公开即可用”,不筛选版权状态
谨慎过滤使用 robots.txt、版权声明、付费墙检测等手段剔除受限内容
全授权链路只使用:① 已获直接授权;② 明确 CC-0、CC-BY 等开放许可;③ 自采/自建数据

头部科技公司(Google、Microsoft 等)通常采用第 3 种模式,或与出版机构签署商业许可协议,或自建合法语料库。

4 授权与合规建议

  1. 建立版权审查流水线
    • 元数据识别:抓取时记录域名、版权声明、许可证标签;
    • 指纹去重:剔除已知付费内容指纹(如新闻出版商提供的黑名单)。
  2. 优先使用低风险语料
    • 公有领域作品(古腾堡计划、政府公文);
    • 开放许可资源(维基百科、CC-BY-SA 新闻、开源代码)。
  3. 合同与保险
    • 与内容方签订“文本挖掘许可”或“AI 训练许可”;
    • 购买版权责任保险,降低潜在诉讼成本。

6.9 再训更大的模型也没用:为什么语言模型仍无法好好回答问题?

在这里插入图片描述

1. 学习方式决定了“只会接龙”

• 训练方法:GPT、PaLM 等模型以无监督“文字接龙”为目标,对互联网、书籍等大规模文本进行下一个 token 的预测。
• 结果:模型学到的是
语言形式的统计规律
,而非“理解问题—检索知识—组织答案”的显式流程。

2. 缺乏明确的目标引导

无答题目标函数:训练语料没有“这是问题—这是标准答案”的成对信号,模型不知道何时该“简洁回答”、何时该“详细解释”。
上下文缺失:原始文本不提供“提问者意图、场景约束、答案格式”等关键信息,导致输出往往“答非所问”或冗长发散。

3. 无效的自问自答模式

现象示例:问“3×7 等于几?”,模型可能继续生成“那么 7×3 呢?”、“再考虑 3×8…”等衍生问题,而非直接给出“21”。
根因:训练时从未被要求“先给出答案”,而是最大化“生成与 prompt 最连贯的后续文本”,于是倾向于扩展话题而非解决问题。

4. 大模型预训练的困境与解决思路

• 虽然语言模型通过大量的无监督学习,积累了大量的文本数据和潜在的语言能力,但纯粹扩大参数量与数据量,只能让模型更熟练地“背台词”,模型并不清楚如何有效地使用这些能力来回答实际问题。
• 解决思路:通过人为设计任务目标、对齐机制与评估标准,使得模型的“内功”转化为可靠的“解题能力”。

在这里插入图片描述

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

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

相关文章

基于LLVM的memcpy静态分析工具:设计思路与原理解析(C/C++代码实现)

在程序开发中,内存复制操作(如memcpy)往往是性能瓶颈的关键来源——尤其是大型内存块的复制,可能导致缓存失效、带宽占用过高等问题。为了精准定位这些潜在的性能热点,开发者需要一种能自动识别程序中memcpy调用&#…

使用 Conda 安装 xinference[all](详细版)

1. 安装 Miniconda(若未安装) Miniconda 是 Anaconda 的轻量版,仅包含 Conda 和 Python,适合服务器环境。 下载并安装 Miniconda 下载地址:Index of /miniconda ,可以自行选择适合的版本 # 下载最新版 …

服务器登上去,显示 failed to send WATCHDOG 重启有效吗?

文章目录 概要整体架构流程技术名词解释技术细节小结 概要 当你登录服务器时,看到类似以下提示: failed to send WATCHDOG: Resource temporarily unavailable这通常和系统的 systemd 服务有关,尤其是那些启用了 watchdog(看门…

重学React(五):脱围机制一

背景: 之前将React的基础知识以及状态管理相关的知识都过了一遍,查漏补缺的同时对React也有了一些新鲜的认知,接下来这个模块的名字很有意思:脱围机制,内容也比之前的部分难理解一些。但整体看下来,理解之后…

去除Edge微软浏览器与Chrome谷歌浏览器顶部出现“此版本的Windows不再支持升级Windows 10”的烦人提示

前言 在 Windows 7 中,安装 Microsoft Edge 109 版本后,启动浏览器时会弹出提示: 此版本的 Windows 不再支持 Microsoft Edge。升级到 Windows 10 或更高版本,以获取常规功能和安全更新。 同样地,安装 Google Chrome 1…

PWM、脉冲

要求:一、PWM输出PWM波生成原理在此处使用TIM2生成PWM,PA1输出PWM波。CNT小于CCR时,输出高电平;CNT大于CCR时,输出低电平。 输入捕获测量频率的原理输入捕获的捕获意思是它在PWM波上升沿或者下降沿的时候,会…

文件IO(1)

.文件IO1.概念标准IO是有缓存的IO,文件IO没有缓存,适合于通信、硬件设备操作标准IO是库函数,文件IO是系统调用2.系统调用与库函数系统调用:是Linux内核中的代码,只能在Linux系统中使用库函数:是对系统调用的…

【AI】Pycharm中要注意Python程序文件的位置

博主试着在本地电脑用Pycharm环境运行随便一个机器学习然后做图像识别的模型,Python的程序一直报博主学习图片的路径不正确,博主查了好几遍,也没找出问题,后来借助Deepseek才知道,Python主程序的位置一定要在Project下…

TDengine 可观测性最佳实践

TDengine 介绍 TDengine 是一款开源、高性能、云原生的时序数据库,专为物联网、车联网、工业互联网、金融、IT 运维等场景优化设计。它不仅提供了高效的数据存储和查询功能,还带有内建的缓存、流式计算、数据订阅等系统功能,能大幅减少系统设…

Jenkins 搭建鸿蒙打包

1、创建流水线工程 选择 Freestyle project 2、配置模板仓库、凭证 配置仓库地址 创建凭证,凭证选择账号-密码(能够访问该仓库的个人或管理员 Gitlab 账密) 到这里执行构建,便可以克隆仓库到工作目录 3、安装插件 3.1 Rebuild…

【SpringBoot】02 基础入门-什么是Spring Boot?:Spring与SpringBoot

文章目录1、Spring能做什么1.1、Spring的能力1.2、Spring的生态1.3、Spring5重大升级1.3.1、响应式编程1.3.2、内部源码设计2、为什么用SpringBoot2.1、SpringBoot优点2.2、SpringBoot缺点3、时代背景3.2、分布式分布式的困难分布式的解决3.3、云原生上云的困难4、如何学习Spri…

FFmpeg 编译安装和静态安装

FFmpeg 编译安装和静态安装 简介 FFmpeg 是一个领先的多媒体框架,能够解码、编码、转码、复用、解复用、流化、过滤和播放几乎所有人类和机器创建的格式。本指南将详细介绍如何在 CentOS 8.5.2111 系统上从源代码编译并安装 FFmpeg 6.1.1 版本。从源代码编译安装可…

人大BABEC地平线高效率具身导航!Aux-Think:探索视觉语言导航中数据高效的推理策略

作者: Shuo Wang1,3^{1,3}1,3, Yongcai Wang1^{1}1, Wanting Li1^{1}1 , Xudong Cai1^{1}1, Yucheng Wang3^{3}3, Maiyue Chen3^{3}3, Kaihui Wang3^{3}3, Zhizhong Su3^{3}3, Deying Li1^{1}1, Zhaoxin Fan2^{2}2单位:1^{1}1中国人民大学,2^…

01. maven的下载与配置

1.maven的下载与初步配置a.下载并配置仓库地址下载maven压缩包,并解压,解压后应有如下几个文件点击conf,打开settings.xml(我用的VScode打开的),我们需要声明一下内部仓库的地址,以及私服的一些…

1701. 请输出所有的3位对称数

问题描述请输出所有的 33 位对称数,对称数指的是一个整数 nn 正过来和倒过来是一样的,比如:101、121、282…101、121、282…请从小到大输出符合条件的3位对称数,每行 11 个。输入无。输出从小到大按题意输出符合条件的数&#xff…

C++算法·排序

排序的定义 这个不用说吧 就是根据某个条件对一个数列进行有序的操作 例如要求从小到大排序、从大到小排序等等 排序的分类 比较排序(Comparison(Comparison(Comparison Sorts)Sorts)Sorts) 特点:通过元素间的比较决定顺序 时间复杂度下限:O(nO(nO(n…

微服务项目中的注册中心——Nacos配置

从零开始:Nacos服务注册与配置中心实战教程 Nacos(Dynamic Naming and Configuration Service)是阿里巴巴开源的服务发现、配置管理工具,集注册中心与配置中心于一体,广泛应用于微服务架构。本文将从环境搭建到实战配…

日期格式化成英文月,必須指定語言環境

如果不指定Locale.ENGLISH 在有些JDK下 輸出6月 INV USD 314,791.77,DUE 25-07 [PAID USD 503,389.56 ON 2025-07-16]Mar INV USD 52,042.00,DUE 25-07 [PAID USD 52,042.00 ON 2025-08-11]所以必…

【6】Transformers快速入门:Transformer 的注意力层 是啥?

一句话看懂注意力层作用:让 AI 像人一样 “抓重点” (比如读“猫追老鼠”,自动聚焦 “追” 这个动作,忽略无关词)1. 为什么需要注意力? 问题场景(翻译例子): 英文&#x…

集合,完整扩展

目录 前言: 一、List接口 1.1 ArrayList 1.2 LinkedList 1.3 Vector 二、Set接口 2.1 HashSet 2.2 TreeSet 2.3 LinkedHashSet 三、应用选择 前言: 本篇文章重点梳理 List 接口和 Set 接口的核心内容,结合代码案例帮大家吃透它们的…