用 Intel Sapphire Rapids 加速 PyTorch Transformers(上篇)
Hugging Face 展示了如何在 AWS 的 Intel Sapphire Rapids(第四代 Xeon)CPU 集群上加速 PyTorch 训练,借助 Intel oneAPI CCL 做分布式通信、Intel Extension for PyTorch(IPEX)自动启用 AMX 指令,无需改动任何 transformers 代码。
Hugging Face 展示了如何在 AWS 的 Intel Sapphire Rapids(第四代 Xeon)CPU 集群上加速 PyTorch 训练,借助 Intel oneAPI CCL 做分布式通信、Intel Extension for PyTorch(IPEX)自动启用 AMX 指令,无需改动任何 transformers 代码。
OpenAI 利用 GPT-3 创建新一代 AI 驱动的角色。
OpenAI 应用 AI 研究团队的 Lilian Weng 探讨持续学习。原文未披露具体模型、参数或评测数据。
Hugging Face 发布指南,介绍如何通过 transformers 使用零样本图像分割模型 CLIPSeg。CLIPSeg 在冻结的 CLIP 之上训练 Transformer 解码器,可生成粗略分割掩码,用于机器人感知、图像修复等任务,并支持以文本或示例图像作为提示词的"视觉提示"。
Hugging Face 推出 Model Card Creator Tool 和 Model Card Guide Book,前者提供图形界面,无需编程或写 markdown 即可创建模型卡。同步更新了 huggingface_hub 库中的模型卡模板,并发布注释版模板、用户研究和文献综述。
OpenAI 发布 Point-E,一个可根据复杂提示词生成 3D 点云的系统。
OpenAI 宣布推出新的嵌入模型,官方称其在能力、成本和使用简便性上均有明显改进。
推荐理由:OpenAI 发布新版嵌入模型,官方称能力更强、成本更低且更易使用,可据此评估替换现有嵌入方案。
Hugging Face 的 Ethics and Society Newsletter 第二期聚焦机器学习中的偏见问题,指出偏见普遍且复杂,单一技术手段难以有效解决。文章梳理了偏见如何从 ML 系统演变为个人与社会风险,并介绍了 Hugging Face 团队在数据集与模型等环节开发的偏见分析工具。
Hugging Face 发布音频数据集使用指南,介绍如何用 🤗 Datasets 的 load_dataset 函数一行代码下载并准备音频数据。文中以 GigaSpeech 为例,其 xs 配置含 10 小时数据,加载后自动划分 train、validation、test 三个 split。Hub 上现有 77 个语音识别数据集和 28 个音频分类数据集,并支持在线试听样本预览。
Hugging Face 用 Optimum Habana 在 BERT 预训练、Stable Diffusion 推理和 T5-3B 微调上对比了 Habana Gaudi2、初代 Gaudi 与 Nvidia A100 80GB,Gaudi2 训练和推理速度约为 A100 80GB 的两倍。
Elixir 社区推出 Bumblebee 库,用纯 Elixir 实现了 Hugging Face Transformers,让 GPT2 到 Stable Diffusion 等模型可在 Elixir 中运行。
Hugging Face 博客图解 RLHF 的完整训练流程,将其拆为预训练语言模型、收集人类偏好数据训练奖励模型、用 PPO 微调语言模型三个核心步骤。文中说明奖励模型输出标量奖励,训练时用 KL 散度惩罚策略偏离初始模型,并给出 OpenAI、Anthropic、DeepMind 在模型与奖励模型规模上的不同选择。
推荐理由:把 RLHF 拆成预训练、奖励模型、PPO 微调三步,并列出 TRL、TRLX、RL4LMs 等开源工具与数据成本。
OpenAI 超算团队工程师 Christian Gibson 分享了发现后端系统细节的工作。原文未披露具体系统、模型或技术细节。
Hugging Face 发布《Deep Learning with Proteins》教程,面向想入门机器学习的生物学家和想入门生物学的机器学习者,并附上蛋白质语言模型微调(PyTorch、TensorFlow)与 ESMFold 蛋白质折叠(仅 PyTorch)的示例 notebook。
借助 Apple 工程师提供的转换脚本和推理代码,Stable Diffusion 现在可以通过 Core ML 在 Apple Silicon 上运行,Hugging Face 已将 v1.4、v1.5、v2 base 和 v2.1 base 的官方权重转换并上传到 Hub。
推荐理由:Hugging Face 与 Apple 合作把 Stable Diffusion 转成 Core ML 权重,读者可据此在 Apple Silicon 上本地跑图并了解不同变体的取舍。
Hugging Face 博客介绍如何用 🤗 Transformers 库中的 Time Series Transformer 完成单变量概率时间序列预测。该模型基于 Encoder-Decoder 的 vanilla Transformer,通过 Ancestral Sampling 自回归生成预测,并借助掩码处理缺失值,无需插补即可训练。
OpenAI 训练并发布名为 ChatGPT 的模型,以对话方式交互。官方称对话格式让 ChatGPT 能够回答追问、承认自身错误、质疑错误前提并拒绝不当请求。
推荐理由:OpenAI 官方给出 ChatGPT 的对话式交互定位,读者可据此了解其与以往模型在交互方式上的差异。
中国科学技术大学与微软提出的 VQ-Diffusion 是一种在量化隐空间上做加噪与去噪的条件隐扩散模型,其隐空间由离散向量集合构成。Hugging Face 现已支持通过 Diffusers 用几行代码运行该模型,加载 microsoft/vq-diffusion-ithq,并可选 FP16 权重。
Hugging Face 宣布启动 2023 年实习生项目,开放 8 个岗位,涵盖 Accelerate、Text to Speech、Embodied AI、大语言模型分布式训练框架、LLM 数据集、生成式 ML 社会影响评估和 AI 艺术工具等方向。实习生将与 Hugging Face 导师及对应开源库维护者合作,申请需通过官方招聘门户并注册 Hugging Face 账号。
Hugging Face 与 Jonathan Whitaker 合作的扩散模型课程将于 11 月 28 日发布,免费讲解扩散模型理论与应用。配合课程上线,11 月 30 日将举办社区直播活动,Stable Diffusion 创作者及 Stability AI、Meta 等机构的研究者将带来演讲,聚焦扩散模型概览及构建应用的工具。
Hugging Face 发布《机器学习总监洞察》系列第四期,邀请 Javier Mansilla、Shaun Gittens、Samuel Franklin 和 Evan Castle 四位机器学习总监分享 ML 对各自行业的影响。
Hugging Face 发文梳理 Document AI 的六大用例及对应开源模型,涵盖 OCR、文档图像分类、版面分析、文档解析等任务。
Hugging Face 梳理了其推理方案:模型页上的免费 Inference Widget 与免费 Inference API 可零代码或单次 HTTP 请求调用 Hub 模型,但受速率限制,不建议用于生产。
Hugging Face 与 arXiv 合作,通过 arXivLabs 将 Spaces 集成进论文页面,新增 Demo 标签页,可直接打开社区或作者创建的开源演示。
Hugging Face 博客发布教程,演示如何借助 Concrete-ML 库在全同态加密(FHE)环境下对加密数据做情感分析,数据科学家无需密码学背景即可上手。方案用 BERT 提取文本隐藏表示(hidden size 768),再交给 XGBoost 分类,并通过客户端/服务器协议部署到云端,最后在 Hugging Face Spaces 提供完整 demo。
Hugging Face 在 transformers 4.24.0 中集成了 Contrastive Search 解码方法,PyTorch 和 TensorFlow 均可用。
推荐理由:Hugging Face 把对比搜索集成进 transformers,读者可据此替换现有解码方式并对比生成质量。
Hugging Face 更新定价体系,下线 Inference API 的付费层,该 API 仍对所有人免费开放。面向企业级高速推理需求,平台推出新服务 Inference Endpoints,并为 Spaces 提供硬件升级,可自选硬件运行 ML demo。这些服务无需订阅,只需在账单设置中绑定信用卡,用量按月计费并生成合并发票。
Hugging Face 发布用 Diffusers 的 Dreambooth 脚本微调 Stable Diffusion 的实验总结,给出推荐设置:低学习率配合逐步增加训练步数,人脸需要 800-1200 步、batch size 2、LR 1e-6,并建议使用 prior preservation 避免过拟合。
推荐理由:基于大量实验给出 Dreambooth 微调 Stable Diffusion 的超参数建议,可直接用于复现和调参。
OpenAI 宣布 DALL·E API 进入公开测试,开发者从即日起可以基于该 API 构建应用。
推荐理由:OpenAI 官方开放 DALL·E API 公测,开发者可据此判断图像生成能力接入自家应用的门槛变化。
Hugging Face 发布教程,介绍如何用 🤗 Transformers 在任意多语种 ASR 数据集上微调 Whisper。教程以 Common Voice 11.0 的印地语为例,用约 8 小时训练数据微调 Whisper small,在测试集上把 WER 从预训练模型的 63.5% 降到 32.0%。
推荐理由:以印地语为例给出 Whisper 多语种 ASR 微调全流程,8 小时数据即可把 WER 从 63.5% 降到 32.0%。
Hugging Face 将 Intel OpenVINO 集成进 Optimum Intel,用户可在多种 Intel 处理器上用 OpenVINO Runtime 对 Transformers 模型执行推理,并借助 NNCF 在数分钟内完成量化以压缩模型体积、降低预测延迟。
Hugging Face 为 🤗 Evaluate 库新增偏见指标与测量方法,用于评估 GPT-2、BLOOM 等因果语言模型的偏见。该工作流先用 🤗 Datasets 中的预设提示词引导模型生成文本,再用 🤗 Evaluate 的指标打分,示例覆盖 Toxicity、Polarity 和 Hurtfulness 三类任务,其中 toxicity 指标基于 R4 Target 仇恨检测模型。
Hugging Face 发布教程,演示如何通过三个递进抽象层级实现多 GPU 分布式训练:原生 PyTorch DDP(torch.distributed)、🤗 Accelerate 轻量封装,以及 🤗 Transformer 的 Trainer API。Accelerate 无需修改代码即可在单 GPU 和 TPU 上运行,Trainer 则抽象掉所有样板代码并支持多种设备和分布式场景。
Hugging Face 发布 MTEB(Massive Text Embedding Benchmark),用于在多种嵌入任务上衡量文本嵌入模型性能,包含 56 个数据集、8 类任务,覆盖最多 112 种语言,榜单已汇总超过 2000 条结果。
推荐理由:MTEB 把 56 个数据集、8 类任务和 112 种语言汇总成统一榜单,读者可据此理解文本嵌入模型的评测口径与选型依据。
Hugging Face 推出 Inference Endpoints,可将 Hub 上的模型一键部署到云端托管基础设施。该服务支持 Public、Protected、Private 三种访问级别,Private 模式通过 AWS PrivateLink 的 VPC Endpoint 接入,仅限指定 AWS 账户访问。
Hugging Face Diffusers 自 0.5.1 版本起支持 Flax,可在 Colab、Kaggle 或 Google Cloud Platform 的 TPU 上实现快速推理。
推荐理由:Hugging Face 官方给出在 TPU 上用 JAX/Flax 跑 Stable Diffusion 的完整流程,含并行与编译耗时数据。
Hugging Face 团队复盘了为 BLOOM(176B 参数,bf16 下 352GB)构建推理服务器的优化过程,最终实现延迟降低 5 倍、吞吐提升 50 倍。
推荐理由:Hugging Face 团队复盘 BLOOM 推理优化全过程,从 PP 到 TP、自定义 kernel 的取舍细节对部署大模型有参考价值。
Hugging Face 宣布用户可直接在 Hub 上为模型或数据集生成 DOI,其他人在模型或数据集页面点击“Cite this model/dataset”即可引用。该功能通过与 DataCite 合作实现,注册用户填写元数据后即可获得 DOI,新版本发布时 DOI 可更新、旧版本随之失效。带 DOI 的数据集和模型将永久保存,仅能通过向官方支持提交请求删除。
rinna 通过对 Stable Diffusion 进行微调,开发出日文文生图模型 Japanese Stable Diffusion,可理解日语特有词汇、拟声词与专有名词并生成日式风格图像。
Hugging Face 在 Hub 上线由 AutoTrain 驱动的 Evaluation on the Hub,无需写代码即可对任意因果语言模型做零样本评估,目前支持最大 66B 参数模型,更大模型的支持即将推出。