智码工坊

高效开发,智能赋能

← 返回 入门指南

Hugging Face Transformers快速入门:用预训练模型做文本分类

Hugging Face Transformers是当前最流行的自然语言处理工具库,它封装了数百个预训练模型,让开发者无需从零训练即可完成文本分类、情感分析、命名实体识别等任务。
第一步,安装transformers和datasets:pip install transformers datasets。然后选择模型,例如distilbert-base-uncased,它比BERT轻量且速度更快。
第二步,使用pipeline快速测试。pipeline("text-classification")会自动下载模型并返回预测结果,几行代码即可运行。例如输入“I love this product”,模型会输出“POSITIVE”标签和置信度。
第三步,处理真实数据集。使用datasets库加载IMDb影评数据集:load_dataset("imdb")。然后通过tokenizer将文本转为模型可接受的input_ids和attention_mask。
第四步,微调模型。定义TrainingArguments和Trainer,指定学习率、批次大小、日志路径等参数。调用trainer.train()开始训练,通常1-2个epoch即可达到不错的效果。
第五步,评估与保存。使用trainer.evaluate()计算准确率,用model.save_pretrained()保存微调后的模型。后续可直接加载使用。
常见问题包括:模型下载慢,可设置HF_ENDPOINT环境变量为国内镜像;内存不足可减小batch_size或使用梯度累积;类别不平衡时需设置weight参数。
通过这个实战,读者可以掌握Transformers库的基本工作流,并能迁移到其他NLP任务如问答、摘要生成等。