Hugging Face 用 10 亿句对训练句嵌入模型
Hugging Face 在社区周期间用 10 亿句对训练出 SOTA 句嵌入模型,硬件为 7 块 TPU v3-8,并获得 Google Flax、JAX 与 Cloud 团队指导。训练采用批内负样本的对比学习目标(InfoNCE/NTXentLoss),通过增大 batch size、引入 hard negatives 和跨数据集组批提升效果。模型与数据集已在模型卡中公开。
Hugging Face 在社区周期间用 10 亿句对训练出 SOTA 句嵌入模型,硬件为 7 块 TPU v3-8,并获得 Google Flax、JAX 与 Cloud 团队指导。训练采用批内负样本的对比学习目标(InfoNCE/NTXentLoss),通过增大 batch size、引入 hard negatives 和跨数据集组批提升效果。模型与数据集已在模型卡中公开。
Hugging Face 发文指出,机器学习正像十年前的 DevOps 一样走向"机器学习即代码",软件工程的最佳实践应被数据科学与机器学习采纳。Kaggle 调查显示 75% 受访者使用云服务、超 45% 使用企业 ML 平台,前三为 Amazon SageMaker、Databricks 和 Azure ML Studio。
一个跨 12 个时区的团队用 RSICD、UCM 和 Sydney 三个遥感数据集微调了 OpenAI 的 CLIP,使其能按文本描述检索卫星图像。训练采用对比学习,并用 Torchvision 图像增强与 Marian MT 回译文本增强抑制过拟合。模型、项目页与 demo 均已公开,可用于以文本查询大规模卫星图像库。
Gradio 与 Hugging Face Hub 集成,只需定义 Interface 并调用 .launch() 即可演示模型,底层调用 Inference API,支持 Transformers、spaCy、SpeechBrain、Asteroid 及 image-to-text、speech-to-text、text-to-speech 等模型类型。
Hugging Face 发布博客,介绍如何用 Streamlit 在 Hugging Face Spaces 上托管模型和数据集并部署 Streamlit 应用。
Hugging Face 回顾夏季进展:Hub 上的公开模型仓库从 1 万个增至超过 1.6 万个,并推出可直接托管 ML 演示应用的 Spaces Beta,支持 Gradio 和 Streamlit。7 月举办的 JAX/Flax Sprint 吸引近 800 名参与者,产出 170 多个模型、22 个数据集和 38 个 Spaces 演示。
Hugging Face 在 2021 AI Hardware Summit 上宣布启动 Hardware Partner Program,Graphcore 作为创始成员参与,双方将让开发者通过 Optimum 开源库在 IPU 上部署经认证的硬件优化 Transformer 模型,首批 IPU 优化模型将于今年晚些时候上线。
Hugging Face 团队提出 DeDLOC 协作式分布式训练方法,可自适应参与者的网络与硬件条件,并用 40 名志愿者在互联网上预训练出孟加拉语模型 sahajBERT。
推荐理由:Hugging Face 团队用 40 名志愿者在互联网上预训练出孟加拉语模型,给出了分布式协作训练在真实场景中的完整方法与评测结果。
Hugging Face Hub 现已支持 spaCy,用户可通过一条命令上传任意 spaCy pipeline 包,并自动生成模型卡和元数据。Hub 的 spaCy 组织已收录 60 多个来自 3.1 版本的官方模型,Inference API 开箱支持 NER,并配有 NER 可视化组件。
Hugging Face 发文介绍如何用 EleutherAI 的 GPT-Neo 配合 🤗 Accelerated Inference API 实现少样本学习预测。
Gradio 2.0 发布,只需 1 行代码即可为几乎任意 Hugging Face 模型加载 GUI,默认调用 Hugging Face 托管的 Inference API,也可本地运行 transformers。该版本支持并行加载多个模型进行对比,或将模型串联组合,例如用 3 行代码搭建翻译并摘要芬兰语新闻的应用。
OpenAI 宣布 2021 届 OpenAI Scholars 已完成为期六个月的导师计划,并在 OpenAI 提供的津贴与支持下完成了开源研究项目。
Hugging Face 发布开源库 Accelerate,让 PyTorch 用户在不改写训练循环的前提下使用分布式训练和混合精度。只需在标准训练脚本中加入约五行代码,Accelerate 就会自动完成设备放置、模型与优化器包装、数据加载器分片以及反向传播处理,并配套 accelerate config 与 accelerate launch 命令行工具。
推荐理由:原文给出五处代码改动即可让原生 PyTorch 脚本支持分布式与混合精度,可据此评估迁移成本。
Hugging Face 发文详解 BigBird 的块稀疏注意力机制,该模型已集成进 🤗Transformers。BigBird 用块稀疏注意力近似 BERT 的全局注意力,可处理长达 4096 的序列,计算成本远低于 BERT,并在长文档摘要、长上下文问答等任务上取得 SOTA。其注意力由滑动注意力、全局 token 和随机 token 三部分组成。
Hugging Face 宣布与 Amazon 建立战略合作,并以 AWS 作为其首选云服务商,双方推出 Hugging Face Deep Learning Containers(DLCs),让用户在 Amazon SageMaker 中训练 Transformers 模型。
Hugging Face 发布教程,讲解如何用 🤗 Transformers 将 Wav2Vec2 预训练检查点微调到任意英语 ASR 数据集。Wav2Vec2 于 2020 年 9 月发布,基于 50,000 小时以上无标注语音预训练,仅用 10 分钟标注数据即可在 LibriSpeech 干净测试集上取得低于 5% 的 WER。
Hugging Face Transformers 的 RAG 模型集成 Ray 实现分布式文档检索,每次检索调用相比 torch.distributed 提速 2 倍,并改善了 RAG 分布式微调的可扩展性。
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 发布教程,介绍如何用 BERT、GPT2 等预训练检查点热启动编码器-解码器模型,跳过昂贵的预训练阶段。基于 Rothe 等人 2020 年的论文,该方法在多个序列到序列任务上以极低训练成本达到与 T5、Pegasus 等大型预训练模型相当的效果,并附有 🤗Transformers 的完整代码示例。
Hugging Face 发布博客,详解基于 Transformer 的编码器-解码器架构如何建模序列到序列问题,重点拆解编码器与解码器两部分及其推理用法。文章指出该架构由 Vaswani 等人提出,如今已是 NLP 领域事实上的标准,T5、Bart、Pegasus、ProphetNet、Marge 等预训练目标各异但架构基本未变。
Hugging Face 博客详解 Reformer 如何用不到 8GB 内存训练长度达 50 万 token 的序列,而 bert-base-uncased 的输入长度上限只有 512 token。
OpenAI 宣布与 AIcrowd、卡内基梅隆大学和 DeepMind 联合举办两场 NeurIPS 2020 竞赛,分别基于 Procgen Benchmark 和 MineRL。
OpenAI 推出 Jukebox,一个能生成音乐的神经网络,可输出多种流派和艺术家风格的原始音频,并包含初步的歌唱。OpenAI 同时公开了模型权重和代码,以及一个用于试听生成样本的工具。
推荐理由:OpenAI 公开 Jukebox 的模型权重与代码,读者可了解这套生成原始音频的神经网络能产出哪些风格的音乐。
Hugging Face 发布博客,介绍用 transformers 库进行自回归语言生成的多种解码方法,包括贪心搜索、beam search 和采样。
推荐理由:系统梳理贪心、beam search 与采样等解码策略的差异,并给出 transformers 中可直接运行的参数配置。
Hugging Face 发布教程,演示如何用 transformers 和 tokenizers 库从零训练一个语言模型,并以世界语为例训练了 84M 参数(6 层、768 隐藏维度、12 注意力头)的 EsperBERTo。
推荐理由:以世界语为例完整演示从语料、分词器到预训练与下游微调的全流程,可迁移到其他低资源语言。
OpenAI 发布 774M 参数的 GPT-2 语言模型,此前已先后发布 124M 小模型和 355M 中模型。OpenAI 同时发布一份开源法律协议,方便机构之间建立模型共享合作,并发布一份技术报告,介绍与更广泛 AI 研究社区协调发布规范的经验。
推荐理由:OpenAI 公布 GPT-2 分阶段发布的时间线与参数规模,并给出模型共享的法律协议与技术报告。
OpenAI 开放第二届 OpenAI Scholars 申请,面向弱势群体提供 6–10 个津贴与导师指导名额,全职学习深度学习 3 个月并开源一个项目。
OpenAI 发布强化学习游戏平台 Gym Retro 完整版,公开游戏数量从约 70 款 Atari 游戏和 30 款 Sega 游戏增加到 1000 多款,覆盖多种模拟器。OpenAI 同时发布了用于向该平台添加新游戏的工具。
OpenAI 推出 Scholars 项目,为来自 underrepresented 群体的个人提供 6–10 份津贴与导师指导,支持其全职学习深度学习 3 个月并开源一个项目。
OpenAI 发布一类新的强化学习算法 Proximal Policy Optimization(PPO),其表现与当时最先进方法相当或更好,同时实现和调参都简单得多。PPO 因易用且性能良好,已成为 OpenAI 的默认强化学习算法。
推荐理由:OpenAI 公开 PPO 算法并说明其比当时主流方法更易实现和调参,可了解该算法成为其默认强化学习方案的原因。
OpenAI 开源内部项目 OpenAI Baselines,目标是以与已发表结果相当的性能复现强化学习算法。算法将在未来数月陆续发布,首批包含 DQN 及其三个变体。
推荐理由:OpenAI 开源内部强化学习复现项目 Baselines,首批放出 DQN 及三个变体,可了解其复现思路与后续计划。
OpenAI 发布 OpenAI Gym 公测版,这是一个用于开发和比较强化学习(RL)算法的工具包。它包含一套持续扩充的环境(从模拟机器人到 Atari 游戏),以及一个用于比较和复现结果的站点。
推荐理由:OpenAI 公开了强化学习环境套件与结果对比站点的公测入口,可据此了解早期 RL 研究基础设施的形态。