Estoy creando una aplicación de PNL usando python. Escuché que Spacy es adecuado para PNL y lo instalé. ¿Cómo debo usar el motor japonés de Spacy?
pip install -u spacy
o
python -m pip -u Spacy
¿Qué debo instalar más?
Debe descargar e instalar el paquete de idioma.
pip spacy download ja_core_news_lg
o
python -m spacy download ja_core_news_lg
Si tiene algún problema, intente esto.
python -m spacy download ja_core_news_sm
¡Gran pregunta!
Luego de instalar Spacy, deberás descargar e instalar correctamente el motor de lenguaje que tengas en mente o el que mejor se adapte a tu problema.
En tu caso yo probaría:
python -m spacy download ja_core_news_sm
Después de eso, puede intentar cargarlo desde su código con las siguientes líneas:
import spacy nlp = spacy.load("ja_core_news_sm")
Aquí tienes un ejemplo más complejo de análisis de oraciones del documento oficial:
import spacy from spacy.lang.ja.examples import sentences nlp = spacy.load("ja_core_news_sm") doc = nlp(sentences[0]) print(doc.text) for token in doc: print(token.text, token.pos_, token.dep_)
Spacy tiene un amplio soporte para múltiples idiomas (incluido el japonés) y para la mayoría de ellos también tiene alternativas de modelo/tubería para diferentes tipos de problemas. Le recomiendo encarecidamente que lea aquí más sobre modelos de lenguaje espacial, diferentes formas de instalar y manejar dependencias de modelos, entre otros datos importantes.
Por último, pero no menos importante, Spacy tiene varios modelos para el idioma japonés (ver aquí ):
ja_core_news_sm
: tubería japonesa optimizada para CPU. Componentes: tok2vec, morphologizer, parser, senter, ner, atributo_ruler.ja_core_news_md
: la misma canalización pero usando incrustaciones de palabras para mejorar la calidad (480k claves, 20k vectores únicos (300 dimensiones))ja_core_news_lg
: Igual que ja_core_news_md
con un vocabulario más amplio (480k claves, 480k vectores únicos (300 dimensiones))ja_core_news_trf
: tubería de transformador japonesa (cl-tohoku/bert-base-japanese-char-v2). Componentes: transformador, morfologizador, analizador, ner, atributo_ruler. El modelo adecuado para ti dependerá de las necesidades y restricciones que tengas en tu problema. Para un modelo de vanguardia si no tiene restricciones de memoria, recomendaría comenzar con ja_core_news_lg
o ja_core_news_trf
.
¡Espero que esta información complementaria sea útil!
Las otras respuestas sobre la instalación de modelos también funcionarán, pero puede usar japonés en spaCy sin un modelo usando pip install spacy[ja]
, que extraerá las dependencias requeridas.