Hugging Face 推出 Data Measurements Tool:用于查看数据集的交互式工具
Hugging Face 发布开源 Python 库与无代码界面 Data Measurements Tool,基于 Dataset 和 Spaces Hub 及 Streamlit 构建,可在线构建、测量和比较数据集。该工具能自动计算词汇量、标签分布、实例长度、重复项及 Zipf 定律拟合度等指标,帮助数据集创建者和用户进行负责任的数据开发。
Hugging Face 发布开源 Python 库与无代码界面 Data Measurements Tool,基于 Dataset 和 Spaces Hub 及 Streamlit 构建,可在线构建、测量和比较数据集。该工具能自动计算词汇量、标签分布、实例长度、重复项及 Zipf 定律拟合度等指标,帮助数据集创建者和用户进行负责任的数据开发。
Hugging Face 发布教程,演示如何用 🤗 Transformers 将预训练检查点 Wav2Vec2-XLS-R-300M 微调用于低资源语音识别。
Hugging Face 博客第二部分聚焦用 Intel 软件栈优化 CPU 上的类 BERT 模型推理,实测新一代 Ice Lake Xeon 在多种 NLP 任务上推理速度较上代 Cascade Lake 最高提升 75%。
微软和 NVIDIA 发布 Megatron-Turing NLG 530B,号称全球最大最强的生成式语言模型,但复现该实验的基础设施成本接近 1 亿美元。作者质疑这类超大模型趋势:单台 DGX A100 服务器售价 19.9 万美元、功耗最高 6.5 千瓦,而 2019 年马萨诸塞大学研究显示在 GPU 上训练 BERT 的碳排放约等于一次横跨美国的飞行。
Hugging Face 课程第二部分将于 11 月 15 日发布,聚焦 token 分类、语言建模、翻译、摘要和问答等常见 NLP 任务,并深入讲解 Datasets 与 Tokenizers。配套社区活动包含两天讲座和团队项目,AWS 通过 Amazon SageMaker 提供免费算力,完成项目者可获结业证书。
Hugging Face 在社区周期间用 10 亿句对训练出 SOTA 句嵌入模型,硬件为 7 块 TPU v3-8。方法采用批内负样本的对比学习(InfoNCE/NTXentLoss),并指出更大 batch size、难负样本与跨数据集批次能提升效果。模型与数据集已在模型卡中公开。
Hugging Face 发文指出,Transformer 正从 NLP 扩展为通用 ML 架构,在语音、计算机视觉、点云乃至蛋白质结构预测上表现优异,Kaggle 调查显示其使用率逐年上升而 RNN、CNN 和梯度提升算法持续下滑。
一个分布式团队用 RSICD、UCM 和 Sydney 三个遥感数据集对 OpenAI 的 CLIP 进行微调,使其能按文本描述检索卫星图像。训练采用对比学习,并配合图像增强与基于 Marian MT 回译的文本增强来抑制过拟合。微调后的模型已开放下载,并提供在线 demo 供试用。
Hugging Face 博客介绍如何用 Gradio 在 Spaces 中托管 ML 演示应用。Gradio 已集成 Hugging Face Hub,只需几行代码调用 gr.Interface.load() 即可通过 Inference API 演示 Hub 上的模型,支持 image-to-text、speech-to-text、text-to-speech 等类型。
Hugging Face 发布教程,介绍如何用 Streamlit 在 Hugging Face Spaces 上托管模型和数据集并搭建演示应用。
Hugging Face 发布夏季回顾,Hub 公开模型仓库从 1 万增至超 1.6 万,并推出免费托管 ML 演示应用的 Spaces Beta,支持 Gradio 和 Streamlit。
Hugging Face 发布开源库 Optimum,目标是简化 Transformer 模型在特定硬件上的训练与推理优化,首个合作方为 Intel。Optimum 与 Intel Neural Compressor 配合,可对 BERT 等模型做训练后量化、量化感知训练和动态量化,用于 Intel Xeon CPU 部署。
推荐理由:Hugging Face 官方发布 Optimum 开源库,读者可了解其与 Intel Neural Compressor 配合量化 Transformer 的路径。
Hugging Face 在 2021 AI Hardware Summit 上宣布启动 Hardware Partner Program,Graphcore 作为创始成员参与,双方将通过新开源库 Optimum 提供经 Hugging Face 认证的 IPU 优化模型,首批模型预计今年晚些时候上线。
Hugging Face 等机构提出 DeDLOC 协作分布式训练方法,可自适应参与者的网络与硬件条件,并用 40 名志愿者预训练出孟加拉语模型 sahajBERT。
推荐理由:DeDLOC 用 40 名志愿者和家用 GPU 预训练出孟加拉语模型,读者可了解分布式协作训练如何绕开算力门槛。
Hugging Face Hub 现已集成 spaCy,用户可通过一条命令上传任意 spaCy pipeline 包,并自动生成模型卡和元数据。spaCy 官方组织已上线 60 多个来自 3.1 版本的最新模型,Inference API 开箱支持 NER,浏览器内即可交互试用。模型可直接通过 pip install 安装,并支持 HTTP 请求调用。
Hugging Face 发布面向 Amazon SageMaker 的 Inference DLC 与 SageMaker Hugging Face Inference Toolkit,只需在 HuggingFaceModel 后加一行 .deploy() 即可部署模型,也可直接从 Model Hub 选取 10,000+ 公开模型部署。
Hugging Face Hub 与 Sentence Transformers 达成集成,随 Sentence Transformers v2 发布,Hub 上已有超 90 个预训练模型、覆盖 100 多种语言。
Hugging Face 发文介绍如何用 EleutherAI 的 GPT-Neo 配合 🤗 Accelerated Inference API 实现 Few-Shot Learning 预测。
Gradio 2.0 发布,可用一行代码为几乎任意 Hugging Face 模型生成 GUI,默认调用 Hugging Face 托管的 Inference API,也可本地运行 transformers 计算。该版本支持并行加载多个模型做对比、串联多个模型构建复杂应用,例如用 3 行代码搭建翻译并摘要芬兰语新闻的应用。安装方式为 pip install gradio。
推荐理由:Gradio 2.0 把 Hugging Face 模型加载与界面搭建压缩到一行代码,读者可据此判断模型演示与组合应用的门槛变化。
Hugging Face 发布系列博客第一部分,讲解如何通过硬件优化在 CPU 上扩展 BERT 类模型推理。
Hugging Face 发布开源库 Accelerate,让原始 PyTorch 训练脚本无需重写即可在任意设备上运行。只需在标准训练脚本中加入约五行代码,即可支持单机或多机多 GPU、TPU 以及混合精度训练,并自动处理设备放置。
推荐理由:官方给出五处代码改动即可跑分布式与混合精度的对比,便于判断迁移成本。
Hugging Face 与 Amazon SageMaker 合作推出优化版 🤗 Transformers 深度学习容器,并在 SageMaker Python SDK 中新增 HuggingFace estimator,一行代码即可启动训练。
Hugging Face 博客解析 BigBird 的块稀疏注意力机制,该模型已随 🤗Transformers 提供 RoBERTa 风格版本,可处理最长 4096 的序列,计算成本远低于 BERT。BigBird 用滑动注意力、全局 token 和随机 token 三种方式近似 BERT 的全注意力,目标不是超越 BERT,而是在长序列上更高效。
Hugging Face 与 Amazon 宣布战略合作,Hugging Face 将 AWS 作为首选云服务商,并推出 Hugging Face Deep Learning Containers(DLCs),让用户可在 Amazon SageMaker 中训练 Transformer 模型。
社区成员 Maxence Dominici 分享了在 Google Cloud 上部署 transformers 情感分析 pipeline 的过程,最终方案基于 Cloud Run 与 Docker 镜像,使用 DistilBERT base uncased finetuned SST-2 模型和 PyTorch 推理。
Hugging Face 发布教程,演示如何用 🤗 Transformers 微调 Wav2Vec2 预训练模型做英语 ASR。Wav2Vec2 由 Alexei Baevski 等人于 2020 年 9 月发布,仅用 10 分钟标注数据即可在 LibriSpeech 干净测试集上取得低于 5% 的 WER。
Hugging Face 的月度阅读小组 2021 年 2 月聚焦长程注意力,围绕 Longformer、Compressive Transformer、Linformer、Performer 四篇论文梳理了降低 Transformer 序列长度二次开销的四条路线:自定义注意力模式、循环、低秩近似与核近似。
Hugging Face 工程师分享构建和调试神经网络的思考流程,建议先放下机器学习、专注分析数据标签与噪声,再从逻辑回归、word2vec、fastText 等简单基线起步,并对照随机预测器评估指标。作者还建议不要迷信五行代码模板,实现后可用 16 条样本做小批量过拟合测试,若无法达到 0 loss 则很可能存在实现错误。
Hugging Face Transformers 新增的 RAG 模型通过集成 Ray 实现分布式文档检索,每次检索调用相比 torch.distributed 提速 2 倍,并改善了 RAG 分布式微调的可扩展性。
Hugging Face 与 Facebook PyTorch、Google TPU 团队合作,让 PyTorch 用户能在 Cloud TPU 上训练模型并保持原有 Trainer 接口不变。PyTorch / XLA 新增 xla 设备类型,通过 xm.optimizer_step 完成梯度聚合与优化器更新,并用 MpDeviceLoader 让输入流水线与图追踪重叠执行。
Hugging Face 在 Transformers v4.2.0 中优化了 TensorFlow 版 BERT、RoBERTa、ELECTRA 和 MPNet 的计算性能,在 GPU V100、序列长度 128 下,BERT 推理速度比 Google 官方实现快约 10%,比 4.1.1 版本快一倍。
Hugging Face 的 transformers v4.2.0 为 Trainer 加入 DeepSpeed 和 FairScale 的 ZeRO 实验性支持,新增 --deepspeed 和 --sharded_ddp 命令行参数。
推荐理由:作者用 t5-large 与 t5-3b 的实测数据对比 FairScale 与 DeepSpeed 的显存与速度收益,可据此判断自己该先试哪种方案。
Hugging Face 通过模型管线优化、Rust 版 Tokenizers 与智能缓存,为 Accelerated Inference API 客户实现约 10 倍推理提速,再借助 ONNX Runtime 的图优化、算子融合与量化等硬件相关编译手段拿到另外 10 倍,合计 100 倍。
Hugging Face 发布教程,介绍如何用 BERT、GPT2 等预训练检查点热启动 encoder-decoder 模型,从而跳过昂贵的预训练阶段。该方法基于 Rothe 等人 2020 年的论文,在多个序列到序列任务上以极低训练成本达到与 T5、Pegasus 等大型预训练 encoder-decoder 模型相当的效果。
Hugging Face 发布客座博客,记录将 Facebook FAIR 的 fairseq wmt19 新闻翻译系统移植到 transformers 的完整过程。
Hugging Face Transformers 在 3.1 版本中与 Ray Tune 集成,用户只需在 Trainer 的 hyperparameter_search 中指定 backend="ray" 即可调用 HyperBand、Bayesian Optimization、Population-Based Training 等调参算法。
Hugging Face 发布博客详解基于 Transformer 的编码器-解码器架构如何建模序列到序列问题,聚焦其数学模型与推理用法,并拆解编码器、解码器两部分。
Hugging Face 发布 PyTorch 扩展 pytorch_block_sparse,其 BlockSparseLinear 可直接替换 torch.nn.Linear,让模型更小更快。
Hugging Face 博客详解 Reformer 模型,它能在不到 8GB 内存下训练长度达 50 万 token 的序列,而 bert-base-uncased 仅支持 512 token。Reformer 通过局部与 LSH 自注意力、分块前馈层、可逆残差层和轴向位置编码四项改造降低内存占用,并已集成进 Transformers 库。
Hugging Face 发布教程,介绍如何用 transformers 库实现自回归语言生成的多种解码方法,包括贪心搜索、beam search 和采样。文中以 GPT2 为例给出可运行代码,演示 num_beams、no_repeat_ngram_size、temperature、top_k、top_p 等参数的效果。
推荐理由:系统梳理贪心、beam search 与采样等解码策略的差异,并给出 transformers 中可直接运行的参数配置。