Comparto el codigo del reto:
# Instalamos conllu para leer el corpus
!pip install conllu
from conllu import parse_incr
data_file = open("UD_Spanish-AnCora/es_ancora-ud-dev.conllu", "r", encoding="utf-8")
# Bajamos el corpus de AnCora
!git clone https://github.com/UniversalDependencies/UD_Spanish-AnCora.git
# Hacemos la transformacion del corpus al formato requerido
wordList = []
for tokenlist in parse_incr(data_file):
wordList2 = []
for token in tokenlist:
tag = token['upos']
valor = token['form']
wordList2.append((valor,tag))
wordList.append(wordList2)
import nltk
from nltk.tag import hmm
from sklearn.model_selection import train_test_split
# Separamos el corpus
wordList_train, wordList_test= train_test_split(wordList, test_size=0.20, random_state=42)
# Entrenamos el modelo
tagger = hmm.HiddenMarkovModelTrainer().train_supervised(wordList_train)
tagger
print(tagger.evaluate(wordList_test))
print(tagger.evaluate(wordList_train))```
Resultados:
0.31126978000771904 - Conjunto de pruebas
0.9839608987591051 - Conjunto de entrenamiento
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.