目录
目前预训练语言模型优点缺点:
语言理解和推理
BERT (Bidirectional Encoder Representations from Transformers)
- 场景: 问答系统、情感分析、文本分类、命名实体识别等。
- 优势: 在多项语言理解任务上表现优异,尤其是对于上下文依赖性强的任务。
RoBERTa
- 场景: 与BERT相似,但通常在某些任务上性能更优。
- 优势: 使用更大的批处理大小和更长的训练时间来优化模型。
DistilBERT
- 场景: 资源受限的设备上运行的轻量级模型。
- 优势: 模型尺寸较小,适合部署在移动设备或其他资源有限的环境中。
ERNIE (Enhanced Language Representation with Informative Entities)
- 场景: 中文语言理解任务。
- 优势: 特别针对中文文本进行了优化,适用于中文相关任务。
语言生成
GPT-3 (Generative Pre-trained Transformer 3)
- 场景: 文本生成、对话系统、故事创作等。
- 优势: 拥有庞大的参数量,能够生成高质量且连贯的文本。
T5 (Text-to-Text Transfer Transformer)
- 场景: 机器翻译、文本摘要、问题回答等。
- 优势: 将所有任务统一为文本到文本的形式,便于模型的训练和微调。
序列到序列任务
- BART (Bidirectional and Autoregressive Transformers)
- 场景: 文本摘要、文档翻译、文本修复等。
- 优势: 在文本生成任务中表现出色,尤其是处理长文本。
零样本学习
- CLIP (Contrastive Language-Image Pre-training)
- 场景: 文本到图像检索、图像到文本生成等跨模态任务。
- 优势: 可以用于零样本学习,即在没有训练特定任务的情况下也能执行任务。
低资源语言
- mBERT (Multilingual BERT)
- 场景: 多语言文本分类、翻译辅助等。
- 优势: 支持100多种语言,对于低资源语言的支持较好。
大规模多模态模型
- M6 (Multimodal Pre-trained Model)
- 场景: 跨模态检索、视频理解等。
- 优势: 模型参数量巨大,能够处理复杂的多模态任务。
- 对于语言理解任务,BERT 和 RoBERTa 通常是最好的选择。
- 对于语言生成任务,GPT-3 和 T5 表现突出。
- 对于多语言支持和低资源语言任务,mBERT 是一个很好的选项。
- 对于语音识别任务,Wav2Vec 2.0 是当前的领先模型之一。
1 了解
1 依赖安装
!pip install transformers -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
2 了解transformers 能做什么
from transformers.pipelines import SUPPORTED_TASKS
SUPPORTED_TASKS.items()
2 文本分类
我没外网所以需要自己下载模型。
2.1 下载模型
https://huggingface.co/docs/transformers/installation#offline-mode
下载之后一起放在一个文件(dianping)下:
from transformers import pipeline
pipe = pipeline("text-classification",model='./dianping')# ,from_pt=True
pipe("我并不是太喜欢杨柳依依的样子!")
[{'label': 'negative (stars 1, 2 and 3)', 'score': 0.8996551632881165}]
情感分析的二分类文本任务就结束了。自己安装环境试试吧!
【手把手带你实战HuggingFace Transformers-入门篇】基础组件之Datasets_哔哩哔哩_bilibili
GitHub - zyds/transformers-code: 手把手带你实战 Huggingface Transformers 课程视频同步更新在B站与YouTube