- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Hugging Face Transformers 库对法语进行 POS_TAG。在英语中,我能够给出一个句子,例如:
The weather is really great. So let us go for a walk.
结果是:
token feature
0 The DET
1 weather NOUN
2 is AUX
3 really ADV
4 great ADJ
5 . PUNCT
6 So ADV
7 let VERB
8 us PRON
9 go VERB
10 for ADP
11 a DET
12 walk NOUN
13 . PUNCT
有没有人知道如何为法语实现类似的事情?
这是我在 Jupyter notebook 中用于英文版的代码:
!git clone https://github.com/bhoov/spacyface.git
!python -m spacy download en_core_web_sm
from transformers import pipeline
import numpy as np
import pandas as pd
nlp = pipeline('feature-extraction')
sequence = "The weather is really great. So let us go for a walk."
result = nlp(sequence)
# Just displays the size of the embeddings. The sequence
# In this case there are 16 tokens and the embedding size is 768
np.array(result).shape
import sys
sys.path.append('spacyface')
from spacyface.aligner import BertAligner
alnr = BertAligner.from_pretrained("bert-base-cased")
tokens = alnr.meta_tokenize(sequence)
token_data = [{'token': tok.token, 'feature': tok.pos} for tok in tokens]
pd.DataFrame(token_data)
这个笔记本的输出如上。
最佳答案
我们最终用 Hugging Face Transformers 训练了词性标注(词性标注)模型图书馆。生成的模型可在此处获得:
你基本上可以在上面提到的网页上看到它是如何分配POS标签的。如果您安装了 Hugging Face Transformers 库,您可以使用以下代码在 Jupyter 笔记本中试用它:
from transformers import AutoTokenizer, AutoModelForTokenClassification
from transformers import pipeline
tokenizer = AutoTokenizer.from_pretrained("gilf/french-postag-model")
model = AutoModelForTokenClassification.from_pretrained("gilf/french-postag-model")
nlp_token_class = pipeline('ner', model=model, tokenizer=tokenizer, grouped_entities=True)
nlp_token_class('En Turquie, Recep Tayyip Erdogan ordonne la reconversion de Sainte-Sophie en mosquée')
这是控制台上的结果:
[{'entity_group': 'PONCT', 'score': 0.11994100362062454, 'word': '[CLS]'},
{'entity_group': 'P', 'score': 0.9999570250511169, 'word': 'En'},
{'entity_group': 'NPP', 'score': 0.9998692870140076, 'word': 'Turquie'},
{'entity_group': 'PONCT', 'score': 0.9999769330024719, 'word': ','},
{'entity_group': 'NPP', 'score': 0.9996993020176888, 'word': 'Recep Tayyip Erdogan'},
{'entity_group': 'V', 'score': 0.9997997283935547, 'word': 'ordonne'},
{'entity_group': 'DET', 'score': 0.9999586343765259, 'word': 'la'},
{'entity_group': 'NC', 'score': 0.9999251365661621, 'word': 'reconversion'},
{'entity_group': 'P', 'score': 0.9999709129333496, 'word': 'de'},
{'entity_group': 'NPP', 'score': 0.9985082149505615, 'word': 'Sainte'},
{'entity_group': 'PONCT', 'score': 0.9999614357948303, 'word': '-'},
{'entity_group': 'NPP', 'score': 0.9461128115653992, 'word': 'Sophie'},
{'entity_group': 'P', 'score': 0.9999079704284668, 'word': 'en'},
{'entity_group': 'NC', 'score': 0.8998225331306458, 'word': 'mosquée [SEP]'}]
关于python - 使用 Hugging Face Transformers 库你怎么能 POS_TAG 法语文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62782001/
我正在尝试在 NLTK 中使用语音标记并使用了以下命令: >>> text = nltk.word_tokenize("And now for something completely differe
使用 pos_tag 后我必须遵循以下结果: list = [('a',` '1'), ('b', '2'), ('c', '3'), ('d', '4')] 现在,我必须像下面这样重建: a b c
这个问题在这里已经有了答案: wordnet lemmatization and pos tagging in python (8 个答案) 关闭 7 年前。 我构建了一个纯文本语料库,下一步是对我
这个问题在这里已经有了答案: How to extract nouns using NLTK pos_tag()? (4 个答案) 关闭 4 年前。 我正在尝试使用 nltk.pos_tag() 从
我希望能够以这种方式一个接一个地获取句子的 POS-Tags: def __remove_stop_words(self, tokenized_text, stop_words): sente
nltk.pos_tag() 是如何工作的?它是否涉及任何语料库的使用?我找到了一个源代码(nltk.tag - NLTK 3.0 文档),上面写着 _POS_TAGGER = 'taggers/ma
有这个: text = word_tokenize("The quick brown fox jumps over the lazy dog") 并运行: nltk.pos_tag(text) 我明白
我用过这个代码: # Step 1 : TOKENIZE from nltk.tokenize import * words = word_tokenize(text) # Step 2 : POS
我正在为任何将创建的输入文本创建一个Python模板 每个单词的 XML 条目及其所属的 POS(词性)。 我使用 nltk 中的 pos_tag,但是当我获取单词并尝试对其进行标记时,它会标记每个字
我一直在试图弄清楚如何使用词性标记的“标记”结果。目前我有这个测试代码: 当我运行它时,它会返回以下内容: 这一切都很好。但我希望能够使用这个结果,但我不知道如何使用。如何检查“test”变量是否包含
我正在尝试对以下文本进行 pos_tag: text = """5.1 Basic Wage: £350.00 per week payable by monthly instalments in a
我有这段代码可以在句子中查找名词和动词。 # -*- coding: utf-8 -*- from nltk.corpus import wordnet as wn from nltk import
我是 python 的新手。我无法找出错误。我想使用 NLTK 提取名词。 我写了下面的代码: import nltk sentence = "At eight o'clock on Thursday
所以我试图在列表中标记一堆单词(确切地说是词性标记),如下所示: pos = [nltk.pos_tag(i,tagset='universal') for i in lw] 其中 lw 是单词列表(
这里我有一个 Pandas Dataframe,其中包含包含文本的“body”列。 body 0 David Beckham's dreams of kick starting
我正在尝试使用 nltk 中的 ne_chunk 和 pos_tag 对句子进行分块。 from nltk import tag from nltk.tag import pos_tag from n
我需要对多种语言的文本进行名称实体提取:西类牙语、葡萄牙语、希腊语、捷克语、中文。 是否有这两个功能的所有支持语言的列表?是否有使用其他语料库的方法,以便可以包含这些语言? 最佳答案 默认情况下,这两
我有一个使用 NLTK 查找名词和动词的代码。 from nltk.corpus import wordnet as wn from nltk import pos_tag import nltk s
我有一个句子列表列表,用单词标记,然后进行 pos 标记,所以结果显然是一个包含元素的列表: [(w1,pos_tag1)(w2,pos_tag2)] [(w3,pos_tag3),(w4,pos_t
嗨文本挖掘冠军, 我在 Windows 10 上使用带有 NLTK v3.2 的 Anaconda。(客户端环境) 当我尝试使用 POS 标记时,我不断收到 URLLIB2 错误: URLError:
我是一名优秀的程序员,十分优秀!