使用 Hugging Face Transformers 和 Amazon SageMaker 部署 GPT-J 6B 推理
Hugging Face 发布教程,介绍如何用 Amazon SageMaker 和 Hugging Face Inference Toolkit 部署 EleutherAI 的 GPT-J 6B 模型,在 NVIDIA T4 GPU 实例(约 500 美元/月)上实现可扩展的实时推理。
Hugging Face 发布教程,介绍如何用 Amazon SageMaker 和 Hugging Face Inference Toolkit 部署 EleutherAI 的 GPT-J 6B 模型,在 NVIDIA T4 GPU 实例(约 500 美元/月)上实现可扩展的实时推理。
Hugging Face 的 AutoNLP 与 Explosion 的标注工具 Prodigy 可组合成主动学习流水线:在 BBC News 分类数据集上,AutoNLP 训练 15 个多分类模型,约 15 分钟完成,最佳模型准确率达 98.67%,单模型价格低至 $10。
Hugging Face 发布教程,介绍如何从零训练名为 CodeParrot 的 GPT-2 代码生成模型,用于自动补全 Python 代码。作者从 Google BigQuery 的 GitHub dump 中筛选出 180GB、2000 万个 Python 文件,去重并按 Codex 论文的清洗规则处理后得到 50GB 数据集 codeparrot-clean。
推荐理由:完整拆解了从数据清洗、tokenizer 训练到多卡训练循环的每一步,可迁移到自建代码生成模型的流程。
Hugging Face 与 Graphcore 合作推出开源库 Optimum,让 Transformer 模型更易在多种硬件上降低预测延迟,首个 IPU 优化模型为 BERT。
在 Intel Xeon Scalable CPU(Ice Lake 架构)集群上,借助 Intel extension for PyTorch 和 oneCCL 通信库,可将 PyTorch 分布式微调任务加速。
Hugging Face 发布教程,演示如何用 🤗 Transformers 将预训练模型 Wav2Vec2-XLS-R-300M 微调用于低资源语音识别。教程以 Common Voice 土耳其语数据集为例,仅用约 4 小时验证训练数据,采用 CTC 算法微调,并用 WER 指标评估。
Hugging Face 博客第二部分聚焦用 Intel 软件栈优化 CPU 上的 BERT 类模型推理,并给出 Ice Lake 代 Xeon 的性能实测。Ice Lake Xeon 在多种 NLP 任务上推理最高比上代 Cascade Lake 快 75%,依托 AVX512、VNNI 等指令及 oneAPI 下的 oneMKL、oneDNN、oneCCL 等库。
Hugging Face 课程第二部分将于 11 月 15 日发布,聚焦 token 分类、语言建模、翻译、摘要和问答等常见 NLP 任务,并深入讲解 Datasets 与 Tokenizers。配套社区活动包含两天讲座和团队项目,AWS 通过 Amazon SageMaker 提供免费算力,完成项目者可获结业证书。
Hugging Face 在社区周期间用 10 亿句对训练出 SOTA 句嵌入模型,硬件为 7 块 TPU v3-8,并获 Google Flax、JAX 与 Cloud 团队指导。训练采用对比学习与 in-batch negatives(InfoNCE/NTXentLoss),通过增大 batch、引入 hard negatives 和跨数据集批次提升质量。所有模型与数据集已在模型卡中公开。
Hugging Face 发布博客,介绍如何用 Streamlit 在 Hugging Face Spaces 上托管模型与数据集并搭建演示应用。
Hugging Face 博客介绍如何用 Gradio 在 Spaces 中托管 ML 演示应用:通过 gr.Interface.load 调用 Hub 模型并借助 Inference API 推理,只需定义模型仓库 ID、描述和示例输入,调用 .launch() 即可运行。
Hugging Face 发文介绍如何用 EleutherAI 的 GPT-Neo 配合 🤗 Accelerated Inference API 实现 Few-Shot Learning 预测。
Hugging Face 发布博客,介绍在 CPU 上扩展 BERT 推理的硬件优化方法,基于 AWS c5.metal 实例(Intel Xeon Platinum 8275,48 核/96 线程)测试 PyTorch 1.8.1 与 TensorFlow 2.4.0 的推理表现,开箱即用下 PyTorch 在所有测试配置中均优于 TensorFlow。
Hugging Face 与 Amazon SageMaker 合作推出经优化的 🤗 Transformers 深度学习容器,并在 SageMaker Python SDK 中新增 HuggingFace estimator,一行代码即可启动训练。
Hugging Face 发文详解 BigBird 的块稀疏注意力机制,该模型通过滑动注意力、全局 token 和随机 token 三种方式近似 BERT 的完整注意力,可处理长达 4096 的序列,计算成本远低于 BERT,并已在长文档摘要、长上下文问答等任务上取得 SOTA。BigBird 的 RoBERTa 类模型现已集成到 Transformers 中。
社区成员 Maxence Dominici 在 Google Cloud 上部署了基于 DistilBERT base uncased finetuned SST-2 的情感分析 pipeline,用于自动判断 Discord 中客户评论的正负向。
Hugging Face 发布教程,演示如何用 🤗 Transformers 微调 Wav2Vec2 预训练模型完成英语 ASR。Wav2Vec2 于 2020 年 9 月发布,基于超 5 万小时无标注语音预训练,仅用 10 分钟标注数据即可在 LibriSpeech 干净测试集上取得低于 5% 的 WER。
Hugging Face 工程师分享构建和调试神经网络的思考流程,强调第一步应放下机器学习、专注理解数据,包括标签是否平衡、噪声来源和预处理方式。第二步从最简基线做起,如文本分类用 word2vec 或 fastText 嵌入上的逻辑回归,以判断任务难度并建立合理对比。实现后应尝试过拟合 16 个样本的小批量,若无法达到 0 损失则很可能存在实现错误。
Hugging Face Transformers 的 RAG 模型集成 Ray 实现分布式文档检索,每次检索调用相比 torch.distributed 提速 2 倍,并改善了 RAG 分布式微调的可扩展性。
Hugging Face 在 Transformers v4.2.0 中优化了 TensorFlow 版 BERT、RoBERTa、ELECTRA 和 MPNet,在 GPU V100、序列长度 128 下推理速度比 Google 官方实现快约 10%,比 v4.1.1 快一倍。
OpenAI 将 Kubernetes 集群扩展至 7,500 节点,为 GPT-3、CLIP、DALL·E 等大模型提供可扩展基础设施,同时支持小规模快速迭代研究。
Hugging Face 的 transformers v4.2.0 为 Trainer 加入 DeepSpeed 和 FairScale 的 ZeRO 实验性支持,新增 --sharded_ddp 和 --deepspeed 命令行参数。
推荐理由:作者用 t5-large 与 t5-3b 实测对比 FairScale 和 DeepSpeed 的显存与耗时,可据此判断两种方案的取舍。
Hugging Face 通过优化模型管线、Rust 版 Tokenizers 缓存以及针对硬件的编译优化,为 Accelerated Inference API 客户实现了 100 倍推理提速。前 10 倍来自 Hugging Face 库内置的高效方法,后 10 倍则依赖静态图优化、层融合与量化等 CPU/GPU 特定技术。
Hugging Face 发布教程,介绍如何用 BERT、GPT2 等预训练检查点热启动编码器-解码器模型,跳过昂贵的预训练阶段。基于 Rothe et al. (2020) 的方法,这类热启动模型在多个序列到序列任务上可达到 T5、Pegasus 等大型预训练编码器-解码器模型的竞争性效果,训练成本仅为后者一小部分。
Hugging Face 博客记录了将 fairseq 的 WMT19 新闻翻译系统移植到 transformers 的过程,作者 Stas Bekman 在 Sam Shleifer 建议下完成移植。
Hugging Face Transformers 在 3.1 版本中与 Ray Tune 集成,提供开箱即用的超参数调优能力。在 RTE 数据集上微调 BERT 的实验中,Population-based Training 取得 70.5% 最佳测试准确率,优于网格搜索的 65.4% 和贝叶斯优化的 66.9%。
Hugging Face 发布博客,详解基于 Transformer 的编码器-解码器架构如何建模序列到序列问题,聚焦其数学定义与推理用法。文章将架构拆解为编码器和解码器两部分,并关联 🤗Transformers 中的 T5、Bart、MarianMT、Pegasus 等模型的实际推理。该文不涉及模型训练,仅提供背景与图示说明。
Hugging Face 博客详解 Reformer 模型,它能在不到 8GB 内存下处理长达 50 万 token 的序列,而 bert-base-uncased 仅支持 512 token。Reformer 通过局部自注意力、LSH 自注意力、分块前馈层、可逆残差层和轴向位置编码四项改造降低内存占用,并已集成进 Transformers 库。
Hugging Face 发布教程,介绍用 transformers 库进行自回归语言生成的多种解码方法,包括贪心搜索、beam search 和采样。
推荐理由:Hugging Face 官方梳理贪心、beam search 与采样等解码策略,并给出 transformers 可直接运行的代码示例。
Hugging Face 发布教程,演示如何用 transformers 和 tokenizers 库从零训练一个 84M 参数的小型语言模型 EsperBERTo,并在世界语上完成词性标注微调。
OpenAI 发布深度强化学习教育资源 Spinning Up in Deep RL,旨在让任何人都能学习成为深度强化学习的熟练实践者。该资源包含清晰的 RL 代码示例、教学练习、文档和教程。
对抗样本是攻击者刻意设计、能让机器学习模型出错的输入,相当于给机器看的视错觉。OpenAI 展示了对抗样本如何跨不同媒介生效,并讨论了为何防御这类攻击十分困难。
OpenAI 发文探讨强化学习算法的一种失效模式:奖励函数设定不当。文章指出,强化学习算法可能以出人意料、反直觉的方式崩溃,而奖励函数设定错误正是其中一种失败情形。
OpenAI 指出深度学习是一门经验科学,团队基础设施的质量是进展的倍增器。当前开源生态已让任何人都能搭建出色的深度学习基础设施。
OpenAI 发布文章介绍四个围绕生成模型的项目,生成模型是机器学习中无监督学习技术的一个分支。文章同时解释了生成模型是什么、为何重要,以及未来可能的发展方向。