Cómo trabajar con modelos entrenados previamente

Watson Natural Language Processing proporciona modelos entrenados previamente en más de 20 idiomas. Un equipo dedicado de expertos los ha ordenado y evaluado para la calidad en cada idioma específico. Estos modelos entrenados previamente se pueden utilizar en entornos de producción sin que tenga que preocuparse por las infracciones de la licencia o propiedad intelectual.

Carga y ejecución de un modelo

Para cargar un modelo, primero debe conocer su nombre. Los nombres de modelo siguen un convenio estándar que codifica el tipo de modelo (como la clasificación o la extracción de entidades), el tipo de algoritmo (como SVM o transformadores), el código de idioma y los detalles del sistema de tipos.

Para buscar el modelo que se ajuste a sus necesidades, utilice el catálogo de tareas. Consulte Catálogo de tareas de NLP deWatson.

Puede encontrar la entrada esperada para una clase de bloque determinada (por ejemplo, para el modelo de Menciones de entidad) utilizando help() en el método run() de clase de bloque:

import watson_nlp

help(watson_nlp.blocks.keywords.TextRank.run)

Watson Natural Language Processing encapsula la funcionalidad del lenguaje natural a través de bloques y flujos de trabajo. Cada bloque o flujo de trabajo admite funciones para:

  • load(): cargar un modelo
  • run(): ejecutar el modelo en argumentos de entrada
  • train(): entrene el modelo en sus propios datos (no todos los bloques y flujos de trabajo dan soporte al entrenamiento)
  • save(): guardar el modelo que se ha entrenado en sus propios datos

Bloques y flujos de trabajo

Los bloques operan directamente sobre el documento de entrada. Un ejemplo de un bloque que opera directamente en el documento de entrada es el bloque Sintaxis, que realiza operaciones de proceso de lenguaje natural como la tokenización, la lematización, la codificación de categoría léxica o el análisis de dependencias.

Ejemplo: ejecutar análisis de sintaxis en un fragmento de texto:

import watson_nlp

# Load the syntax model for English
syntax_model = watson_nlp.load('syntax_izumo_en_stock')

# Run the syntax model and print the result
syntax_prediction = syntax_model.run('Welcome to IBM!')
print(syntax_prediction)

Los flujos de trabajo son interconexiones de extremo a extremo predefinidas desde un documento en bruto a un bloque final, donde todos los bloques necesarios se encadenan como parte del conducto de flujo de trabajo.

Para ver un ejemplo de cómo llamar al flujo de trabajo de menciones de entidades, consulte este ejemplo:

import watson_nlp

# Load the workflow model
mentions_workflow = watson_nlp.load('entity-mentions_transformer-workflow_multilingual_slate.153m.distilled')

# Run the entity extraction workflow on the input text
mentions_workflow.run('IBM announced new advances in quantum computing', language_code="en")