huggingface.transformers哲学

这篇博文详细介绍了transformers库的开发理念,强调了它如何通过3个核心类——配置、模型和分词器——实现预训练模型的简便加载和使用。from_pretrained()函数用于初始化和缓存模型,而pipeline()和Trainer/Keras.fit提供快速的任务应用和模型训练。此外,transformers支持模型的可复现性,提供内部信息,并允许在微调时轻松扩展词汇和修剪 Transformer 头部。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

诸神缄默不语-个人优快云博文目录

本文属于huggingface.transformers全部文档学习笔记博文的一部分。
全文链接:huggingface transformers包 文档学习笔记(持续更新ing…)

本部分网址:https://huggingface.co/docs/transformers/master/en/philosophy
本部分介绍transformers包的开发哲学。
由于我学艺不精,对本部分一些介绍并不理解其涵义,因此在此处只能仅作翻译,对其诠释不足。等以后学会了再来写。

  1. transformers对每个预训练模型,只需使用3个标准类:confirguation, modelstokenizer
  2. 3个类都可以用通用的from_pretrained()函数来用预训练模型进行初始化,该函数会自动下载(如果需要)、缓存、加载相关类实例和数据(如configuration的超参、tokenizer的vocabulary、模型权重等)。这个预训练模型(checkpoint)可以用来自Hugging Face Hub的,也可以是用户自定义的。
  3. 在上述3个类的基础上,transformers包还提供了2个API:pipeline(),在特定任务上迅速使用特定模型;Trainer /Keras.fit 来迅速训练或微调一个给定模型。
  4. 本包不是构建神经网络的模块化工具箱。如果要在本包基础上做开发,需要用其他Python/PyTorch/TensorFlow/Keras模块,继承本包的3个基础类,以复用模型加载、储存等功能。
  5. transformers包为每个预训练模型架构提供至少一个可复现原文结果的示例。
  6. transformers包也提供了模型内部信息,可获取全部hidden-states、attention weights等信息。
  7. 在微调时可以简单、快速地往vocabulary和embeddings里加新tokens。
  8. 很容易mask and prune transformer heads。
  9. 3个基本类
    1. Model classes:如BertModel,本包提供30多个预训练模型架构的模型类,为PyTorch models (torch.nn.Module) or Keras models (tf.keras.Model)实例。
    2. Configuration classes:如BertConfiguration,如果不经任何调整直接使用某一预训练模型,创造model时就会自动实例化configuration。
    3. Tokenizer classes:如BertTokenizer,储存每个模型的vocabulary,提供编码/解码字符串的方法,在字符串与传入模型的token embeddings indices之间进行转换。
  10. 三个基本类通用,从预训练实例初始化参数和将参数储存在本地的函数:
    1. from_pretrained()
    2. save_pretrained()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诸神缄默不语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值