Hugging Face 发布 Optimum 模型优化库
Hugging Face 发布开源库 Optimum,旨在降低 Transformer 模型在生产环境中的部署难度。该库联合硬件合作伙伴(如 Intel)提供模型量化与加速工具,通过 Neural Compressor 等方案实现高效推理。
推荐理由:Hugging Face 联合 Intel 发布 Optimum 库,提供开箱即用的模型量化与加速方案,降低生产环境部署门槛。
Hugging Face 发布开源库 Optimum,旨在降低 Transformer 模型在生产环境中的部署难度。该库联合硬件合作伙伴(如 Intel)提供模型量化与加速工具,通过 Neural Compressor 等方案实现高效推理。
推荐理由:Hugging Face 联合 Intel 发布 Optimum 库,提供开箱即用的模型量化与加速方案,降低生产环境部署门槛。
Hugging Face 提出 DeDLOC 算法,通过互联网协作训练语言模型。该方法利用 40 名志愿者设备预训练孟加拉语模型 sahajBERT,在下游任务中达到接近 SOTA 的质量。
spaCy 正式接入 Hugging Face Hub,用户可通过一条命令上传模型包并自动生成模型卡片与元数据。Hub 上已收录 60 余个来自 spaCy 3.1 版本的官方模型,支持开箱即用的 NER 推理 API 及浏览器内交互式测试。集成库 huggingface-hub 扩展了 CLI 命令,方便开发者将模型一键发布至 Hub 供社区共享。
Hugging Face 发布 Amazon SageMaker 推理 DLC 与推理工具包,支持通过一行代码或直接从 Model Hub 部署 10,000+ 公开 Transformer 模型。该工具包利用 transformers 库的 pipelines 实现零代码部署,并支持自定义代码覆盖。部署后可获得具备内置监控和企业级功能的 AWS 生产就绪端点。
Hugging Face Hub 正式集成 Sentence Transformers 框架,提供超过 90 个预训练模型及 Inference API。平台新增特征提取与句子相似度计算两个交互组件,支持通过 model card 元数据一键启用。用户可使用 save_to_hub 快速分享模型,并自动获得模型卡片与 API 调用能力。
Gradio 2.0 发布,支持一行代码加载 Hugging Face 模型并生成 GUI 演示。该版本允许并行加载多个模型进行对比,或将模型串联组合以构建复杂应用。用户可通过 pip install gradio 安装使用。
Hugging Face 发布系列文章第一部分,探讨在 CPU 上扩展 BERT 模型推理的硬件优化。文章基于 AWS c5.metal 实例,对比了 PyTorch 1.8.1 与 TensorFlow 2.4.0 的默认推理性能,并介绍了使用 Hydra 框架的基准测试方法。
Hugging Face 发布 Accelerate 库,通过极简 API 封装分布式训练脚本添加少量代码即可适配多 GPU、TPU 及混合精度训练。该库自动处理设备放置、数据采样同步及梯度聚合,并提供 CLI 启动器简化配置流程。
推荐理由:通过极简 API 封装分布式训练样板代码,使 PyTorch 原生脚本无缝适配多卡与混合精度。
Hugging Face 与 Amazon SageMaker 合作推出优化的 Deep Learning Containers,通过 SageMaker Python SDK 中的 HuggingFace estimator 实现一行代码启动训练。
BigBird 采用块稀疏注意力机制替代 BERT 的全注意力,将序列处理长度提升至 4096 并大幅降低计算成本。该模型通过局部滑动窗口、全局 token 和随机 token 三种策略实现高效长序列处理,在长文档摘要和长上下文问答任务中达到 SOTA 水平。目前 BigBird RoBERTa-like 模型已集成至 Hugging Face Transformers 库。
Hugging Face 与 Amazon 宣布战略合作,将 Amazon Web Services 作为首选云提供商,并推出新的 Hugging Face Deep Learning Containers (DLCs) 以简化 Amazon SageMaker 上的 Transformer 模型训练。
作者 Maxence Dominici 分享了在 Google Cloud 上部署基于 Hugging Face Transformers 库的情感分析微服务的完整过程。
本文详细演示了如何使用 🤗 Transformers 微调 Wav2Vec2 模型进行英语自动语音识别。教程以仅含 5 小时数据的 Timit 数据集为例,展示如何配置 Wav2Vec2CTCTokenizer 和 Wav2Vec2FeatureExtractor,并通过连接时序分类(CTC)算法完成端到端训练。
文章指出,尽管 GPT-3 等模型备受追捧,但构建神经网络仍充满挑战。作者建议先深入分析数据,再运行逻辑回归等简单基线模型以评估任务难度。最后,通过在小批量数据上进行过拟合测试,可验证模型实现是否正确。
Hugging Face Transformers 集成 Ray 实现 RAG 分布式文档检索,将每次检索调用速度提升 2 倍。该方案利用 Ray 的有状态 Actor 抽象分离检索进程,解决了原 torch.distributed 实现的同步瓶颈,并解除对 PyTorch 的依赖。
Hugging Face 与 PyTorch / XLA 团队合作,在 Hugging Face 库中新增对 Cloud TPUs 的训练支持。该集成允许 PyTorch 用户通过 Trainer 模块使用相同的接口在 Cloud TPUs 上运行和扩展模型。文章介绍了 XLA:TPU 设备类型、训练步骤计算、输入管道优化以及检查点写入加载等关键实现细节。
Hugging Face Transformers v4.2.0 显著提升 BERT 等 TensorFlow 模型的推理速度,比 Google 官方实现快约 10%,比 v4.1.1 版本快两倍。该版本优化了图模式、TF Serving 及 CPU/GPU/TPU 设备的计算性能,并支持通过 SavedModel 格式部署。
Hugging Face Transformers v4.2.0 实验性支持 DeepSpeed 和 FairScale 的 ZeRO 内存优化功能。实测显示,在双卡环境下 DeepSpeed 可将最大 Batch Size 提升至 40 并显著缩短训练时间;在单卡环境下,ZeRO-Offload 成功让 24GB 显存的 RTX-3090 训练了原本无法加载的 t5-3b 模型。
Hugging Face 通过底层优化将 Transformer 推理速度提升 100 倍,以支持 🤗 API 客户。首先利用 🤗 Transformers 和 🤗 Tokenizers 库的高效方法实现 10 倍加速,随后针对特定硬件进行图优化、层融合和量化,再获 10 倍提升。该加速方案帮助机器学习工程师在实时应用中降低延迟。
本文介绍了如何利用预训练的 BERT 或 GPT2 检查点来初始化 Transformer 编码器解码器模型,以降低训练成本。文章分析了不同组合在句子融合、机器翻译和摘要任务上的表现,并提供了基于 Hugging Face Transformers 的完整代码示例。
Stas Bekman 将 Facebook FAIR 的 fairseq wmt19 翻译系统成功移植到 Hugging Face transformers 库。该工作包含创建配置类、模型架构实现、分词器代码及权重转换脚本,并支持 en-ru/ru-en 和 de-en/en-de 语言对。
Hugging Face Transformers 3.1 版本与 Ray Tune 集成,提供简单的超参数调优方案。实验显示,在 RTE 数据集上,基于种群训练(PBT)的优化方法将最佳验证准确率提升至 78%,测试准确率达 70.5%。该集成支持通过 `trainer.hyperparameter_search` 调用多种算法,并默认利用 CPU 或 GPU 资源。
Hugging Face 发布博文详解 Transformer 编码器-解码器架构,涵盖 T5、Bart、MarianMT 和 Pegasus 等模型在推理阶段的应用。文章从序列到序列任务背景出发,深入解析编码器与解码器的数学原理及实现细节,旨在建立理论与 🤗Transformers 库实践之间的联系。
Hugging Face 发布 pytorch_block_sparse 扩展库,提供基于 CUTLASS 的 BlockSparseLinear 模块,作为 torch.nn.Linear 的即插即用替代方案。该库利用块稀疏矩阵技术,在 75% 稀疏度下可使内存消耗降低 4 倍,速度提升约 2 倍。
Reformer 模型可将内存占用控制在 8GB 以下,支持单次处理长达 50 万 token 的序列。该模型通过局部自注意力、分块前馈层、可逆残差层和轴向位置编码四大特性优化 Transformer 架构,显著降低长序列建模的显存需求。
本文介绍了如何使用 Hugging Face 的 transformers 库实现 Greedy search、Beam search 和 Sampling 等主流解码策略。文章以 GPT2 模型为例,展示了在 PyTorch 环境下通过设置 `max_new_tokens`、`num_beams` 等参数进行自回归文本生成的具体代码。
Hugging Face 展示了使用 Transformers 和 Tokenizers 库从头训练 EsperBERTo 模型的方法。该模型包含 84 M 参数,在 Esperanto 语料上训练,并采用 52,000 词表的 Byte-level BPE 分词器。随后模型在词性标注任务上进行了微调。