如何用 Megatron-LM 训练语言模型
Hugging Face 发布教程,讲解如何在 NVIDIA GPU 上用 Megatron-LM 训练 GPT2 语言模型并接入 Transformers。Megatron-LM 通过高效 DataLoader、Fused CUDA Kernels 和 Apex 的 Fused AdamW 优化器提升训练速度,但上手难度高于 Accelerate 和 Trainer。
Hugging Face 发布教程,讲解如何在 NVIDIA GPU 上用 Megatron-LM 训练 GPT2 语言模型并接入 Transformers。Megatron-LM 通过高效 DataLoader、Fused CUDA Kernels 和 Apex 的 Fused AdamW 优化器提升训练速度,但上手难度高于 Accelerate 和 Trainer。
Hugging Face 博客介绍如何用 3Dmol.js 和 Gradio 的 HTML block 在 Hugging Face Spaces 中可视化蛋白质结构,应用可接受 4 位 PDB 代码或上传 PDB 文件,并从 RCSB 蛋白数据库获取结构。
Hugging Face 发布教程,介绍如何用 Diffusers 库运行 Stable Diffusion 文生图模型,并解释其 Latent Diffusion 的工作原理。
推荐理由:原文给出 Stable Diffusion 在 Diffusers 中的完整调用方式与自定义推理管线写法,可迁移到其他扩散模型。
Hugging Face 发布教程,演示如何在 AWS DL1 实例上借助 Habana Gaudi 从零预训练 BERT-base,并使用 Transformers、Optimum Habana 和 Datasets 库完成 masked-language modeling 任务。
Hugging Face 展示了如何将 🤗 Transformers 中的 ViT B/16 模型部署到 Google Cloud 的 Vertex AI 平台,用比 Kubernetes 方案更少的代码实现同等扩展能力。
Hugging Face 与 Graphcore 联合发布 Optimum Graphcore 库,支持在 IPU 上微调 ViT 等 Transformer 模型。
Hugging Face 将 LLM.int8() 8-bit 量化集成进 transformers 与 accelerate,可在不损失性能的前提下把大模型显存占用降到约四分之一。
推荐理由:Hugging Face 官方详解 LLM.int8() 量化原理与 transformers 集成细节,并给出实测数据与代码示例。
Hugging Face 阐述了其 transformers 库在 TensorFlow 上的设计哲学:所有 TensorFlow 模型都是 Keras Model 对象,所有层都是 Keras Layer 对象,用户可直接调用 fit()、compile()、predict() 等方法。
Hugging Face 发布教程,讲解如何用 Docker 和 Kubernetes 将上一篇文章中的 Vision Transformer(ViT)本地部署扩展为可服务多用户的部署。
Hugging Face 发布教程,介绍如何从零构建或微调 Sentence Transformers 模型,涵盖数据准备、损失函数选择、训练与上传 Hugging Face Hub 的完整流程。
Hugging Face 深度强化学习课程第 8 单元讲解 Proximal Policy Optimization (PPO),通过裁剪当前与旧策略的概率比至 [1−ϵ, 1+ϵ] 区间来限制每轮策略更新幅度,避免更新过大导致训练不稳定。课程随后用 PyTorch 从零实现 PPO,并在 CartPole-v1 和 LunarLander-v2 上验证。
Hugging Face 官方博客介绍,在 transformers 中用 TensorFlow 做文本生成现在可以通过 jit_compile=True 启用 XLA 编译,速度最高提升 100 倍,部分场景比 PyTorch 快 9 倍。
推荐理由:Hugging Face 官方给出 TensorFlow 文本生成接入 XLA 的一行改法与 padding 技巧,可迁移到实际推理加速。
Hugging Face 与外部贡献者为 Transformers 加入了 Vision Transformer、Masked Autoencoders、RegNet、ConvNeXt 等 TensorFlow 视觉模型。
Hugging Face 深度强化学习课程发布 Unit 7,讲解 Advantage Actor Critic(A2C)这一结合基于策略与基于价值方法的混合架构,通过 Actor 控制智能体行为、Critic 评估动作优劣来降低 Reinforce 中蒙特卡洛采样带来的高方差。课程使用 Stable-Baselines3 在 PyBullet 机器人环境中训练双足步行者和蜘蛛两个智能体行走。
Hugging Face 博客介绍动态对抗数据收集(DADC):让用户在与模型交互中刻意"骗过"模型,再把对抗样本用于训练,多轮重复以提升鲁棒性。教程以 MNIST 手写数字识别为例,模型训练 20 个 epoch 后在测试集上达到 89% 准确率,并用 🤗 Spaces 搭建交互与标记(flagging)演示。
Hugging Face 详解 176B 参数多语言模型 BLOOM 的训练技术,该项目由 Thomas Wolf 发起,使用 384 张 80GB A100 GPU、Megatron-DeepSpeed 框架和 350B token 的 59 语言数据集,耗时约 3.5 个月完成。
作者用 Sentence Transformers 的语义搜索功能构建了一个歌单生成器,将歌词按段落切分并嵌入,再根据文本提示检索最相关的歌曲,最终用 Gradio Blocks API 搭建多步交互演示并托管在 Hugging Face Spaces 上。
Hugging Face 发布 Twitter 情感分析入门指南,面向开发者和非开发者分别给出实现路径。开发者可用 Tweepy 抓取推文、通过 Inference API 几行代码完成情感分类,并用 Matplotlib 和 WordCloud 可视化结果;无代码用户则可借助 Zapier 采集推文、调用 Inference API 分析并将结果发送至 Google Sheets。
Hugging Face 深度强化学习课程第 5 单元讲解基于策略的强化学习方法,用 PyTorch 从零实现首个 Policy-Gradient 算法 Reinforce,并在 CartPole-v1、PixelCopter 和 Pong 上测试其鲁棒性。
Hugging Face 发布入门指南,以 Sentence Transformers(ST)为例讲解如何从零启动第一个机器学习项目。ST 可将句子、段落和图像转为嵌入向量,并用 util.cos_sim 计算余弦相似度,支持语义搜索、聚类和模型蒸馏等应用。该库在 GitHub 已获近 8,000 stars,超过 3,000 个项目依赖它。
Hugging Face 展示了用 Accelerate 库调用 DeepSpeed ZeRO 加速大模型训练的方法,无需改动代码即可启用 ZeRO Stage-2。
Hugging Face 发布 Embeddings 入门教程,演示用开源库 Sentence Transformers 的 all-MiniLM-L6-v2 模型和 Inference API 构建 FAQ 语义搜索。
Hugging Face 博客介绍了将 Transformers 模型转为 ONNX 的三种方式:底层 torch.onnx、中层 transformers.onnx 和 Optimum 高层 API。
大型神经网络是近期许多 AI 进展的核心,但其训练是一项困难的工程与研究挑战,需要协调一整个 GPU 集群来完成单次同步计算。
Hugging Face 博客发布《The Annotated Diffusion Model》,基于 Ho 等人 2020 年的 DDPM 论文,用 PyTorch 逐步实现去噪扩散概率模型。
推荐理由:以 PyTorch 逐步实现 DDPM 并附完整代码,适合想从原理到代码理解扩散模型的读者。
Hugging Face 深度强化学习课程第三单元讲解 Deep Q-Learning,用神经网络替代 Q-table 来近似 Q 值,解决 Space Invaders 等 Atari 环境状态空间过大的问题。输入为 4 帧堆叠、缩放至 84x84 的灰度画面,经三层卷积和全连接层输出各动作 Q 值,并借助 RL-Zoo 与 Stable-Baselines 训练智能体。
Hugging Face 深度强化学习课程第二单元第二部分讲解 Q-Learning,并从头实现首个 RL 智能体。Q-Learning 是一种 off-policy、基于价值的方法,用 TD 方式训练动作价值函数,其内部维护一张 Q-table 记录每个状态-动作对的价值。
Hugging Face 深度强化学习课程更新第二单元第一部分,讲解基于价值的方法,对比蒙特卡洛与时序差分学习,并区分状态价值函数与动作价值函数。该部分为后续学习 Q-Learning 及深度 Q-Learning(unit 3)打基础,第二部分将实现首个 Q-Learning 智能体,在 Frozen-Lake-v1 和自动驾驶出租车环境中训练。
Hugging Face 推出免费深度强化学习课程,第一单元讲解深度强化学习基础,涵盖强化学习框架、马尔可夫性质、动作空间、奖励折扣与探索/利用权衡等概念。课程使用 Stable Baselines3、RL Baselines3 Zoo 和 RLlib 等库,并让学员训练首个登月着陆器智能体并上传至 Hugging Face Hub。
Hugging Face 展示了如何用 Accelerate 库无需改代码即可调用 PyTorch 的 FullyShardedDataParallel(FSDP)训练大模型。
HuggingFace AutoTrain 与数据标注平台 Kili 可组合成一套主动学习流水线,用于文本分类。
Hugging Face 与 Habana Labs 合作,将 Gaudi 加速器的性价比优势带入 Transformers,其训练机器学习模型的性价比相比最新 GPU 版 Amazon EC2 实例最高提升 40%。
Hugging Face 发布博客,演示如何用其生态工具搭建客户服务场景的文本分类系统,将客户消息按满意度分为 very unsatisfied 到 very satisfied 五类,以优先回复最不满意的客户。文章以 Amazon reviews multi 数据集为例,说明如何按任务类型筛选数据集并评估质量与规模,并建议用内部数据训练模型。
Hugging Face Hub 新增 emissions_threshold 参数,可按训练碳排放量筛选模型,例如上限 100 克可筛出 191 个模型,下限 500 克则筛出 10 个。transformers 集成 codecarbon,训练时自动记录排放数据并生成 emissions.csv,方便写入模型卡。
Hugging Face 的 Transformers 库有意不遵循 DRY 原则,转而采用"单一模型文件策略",即模型前向传播所需的全部代码只放在一个模型文件中,注意力机制代码因此在不同模型文件里被复制了 50 多次。官方给出的理由包括:该库由开源社区共建、建模代码本身就是产品、机器学习领域演进极快,以及模型发布后很少被改动。
Hugging Face 发布教程,演示如何用自定义数据集微调 SegFormer 语义分割模型,并以披萨配送机器人识别 sidewalk 为例。
Hugging Face 发布端到端教程,演示如何用 Hugging Face Transformers、Amazon SageMaker 和 AWS Inferentia 加速 BERT 文本分类推理。
Hugging Face 的 🤗 datasets 库新增图像特征类型,可结合 faiss 索引实现图像相似度搜索。文章以英国图书馆数字化书籍插图数据集为例,演示用 ImageFolder 加载器直接读取图像数据集,并配合 sentence_transformers 与 faiss 搭建图像搜索应用。
Hugging Face 为 🤗 Transformers 的 model.generate() 新增约束束搜索(constrained beam search)功能,通过 force_words_ids 参数强制生成结果包含指定词。
BERT 是 Google AI Language 研究人员于 2018 年开发的 NLP 模型,全称 Bidirectional Encoder Representations from Transformers,可解决 11 种以上常见语言任务。