Я ищу способ повлиять на поведение IoB-тегов питонов NLTK. Рассмотрим следующий фрагмент кода:
from nltk import word_tokenize, pos_tag, ne_chunk
from nltk.stem import PorterStemmer
from nltk.tag import untag, str2tuple, tuple2str
from nltk.chunk import tree2conllstr, conllstr2tree, conlltags2tree, tree2conlltags
import nltk
text = "Drive me from Seattle to Brussels"
# Morphology - tagging the words
tokens = word_tokenize(text)
# Part of speech tagging
tagged_tokens = pos_tag(tokens)
# Create named entity tree of tagged tokens
ner_tree = ne_chunk(tagged_tokens)
# Get tag structure
iob_tagged = tree2conlltags(ner_tree)
print(iob_tagged)
Это выводит следующие значения:
[('Drive', 'VB', 'O'), ('me', 'PRP',' O '), (' from ',' IN ',' O '), (' Seattle ',' NNP ',' B-GPE '), (' to ',' TO ',' O '), ('Brussels', 'VB', 'O')]
Есть ли способ, которым я могу влиять или настраивать алгоритм / модель NLTK таким образом, чтобы последнее слово (Брюссель) было помечено как геополитическое? Сущность (GPE) вместо глагола? Я понимаю, что глагол есть, потому что он следует за словом To, которое часто используется перед глаголами.