当前位置:   article > 正文

5分钟 NLP :Hugging Face 主要类和函数介绍_huggingface 发生概率模型

huggingface 发生概率模型

主要包括Pipeline, Datasets, Metrics, and AutoClasses

HuggingFace是一个非常流行的 NLP 库。本文包含其主要类和函数的概述以及一些代码示例。可以作为该库的一个入门教程 。

Hugging Face 是一个开源库,用于构建、训练和部署最先进的 NLP 模型。Hugging Face 提供了两个主要的库,用于模型的transformers 和用于数据集的datasets 。 可以直接使用 pip 安装它们。

pip install transformers datasets
  • 1

Pipeline

使用transformers库中的Pipeline是开始试验的最快和最简单的方法:通过向Pipeline对象提供任务名称,然后从 Hugging Face 模型存储库中自动下载合适的模型,然后就可以使用了!

transformers库中已经提供了以下的几个任务,例如:

  • 文本分类
  • 问答
  • 翻译
  • 文本摘要
  • 文本生成

除此以外还有计算机视觉和音频任务(主要也是基于transformer的)

下面是一个情绪分析任务的例子。 为了预测句子的情绪,只需将句子传递给模型。

from transformers import pipeline

classifier = pipeline("sentiment-analysis")

results = classifier("I'm so happy today!")
print(f"{results[0]['label']} with score {results[0]['score']}")
# POSITIVE with score 0.9998742341995239
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

模型的输出是一个字典列表,其中每个字典都有一个标签(对于这个特定示例,值为“POSITIVE”或“NEGATIVE”)和一个分数(即预测标签的分数)。

可以为分类器提供多个句子,并在一个函数调用中获得所有结果。

results = classifier(["I'm so happy today!", "I hope you don't hate him..."])
for result in results:
    print(f"{result['label']} with score {result['score']}")
# POSITIVE with score 0.9998742341995239
# NEGATIVE with score 0.6760789155960083
  • 1
  • 2
  • 3
  • 4
  • 5

也可以通过设置模型名称的参数指定要使用的模型,所有的模型和关于模型的信息都在官方文档中提供了,例如下面代码使用的是twitter-roberta-base-sentiment

classifier = pipeline("sentiment-analysis",
                      model="cardiffnlp/twitter-roberta-base-sentiment",
                      tokenizer="cardiffnlp/twitter-roberta-base-sentiment")
# three possible outputs:
# LABEL_0 -> negative
# LABEL_1 -> neutral
# LABEL_2 -> positive

results = classifier(["We are very happy to show you the 
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/794580
推荐阅读