Trabalhando com modelos pré-treinados
O Watson Natural Language Processing fornece modelos pré-treinados em mais de 20 idiomas. Eles são curados por uma equipe dedicada de especialistas e avaliados para qualidade em cada idioma específico. Esses modelos pré-treinados podem ser usados em ambientes de produção sem que você tenha que se preocupar com infrações de licença ou de propriedade intelectual.
Carregando e executando um modelo
Para carregar um modelo, primeiro é necessário saber seu nome. Os nomes de modelo seguem uma convenção padrão que codifica o tipo de modelo (como classificação ou extração de entidade), tipo de algoritmo (como SVM ou transformadores), código de idioma e detalhes do sistema de tipos.
Para localizar o modelo que corresponde às suas necessidades, use o catálogos de tarefas Consulte Watson catálogo de tarefas NLP.
É possível localizar a entrada esperada para uma determinada classe de bloco (por exemplo, para o modelo de menções de entidade) usando help() no método run() da classe de bloco:
import watson_nlp
help(watson_nlp.blocks.keywords.TextRank.run)
O Watson Natural Language Processing encapsula a funcionalidade de linguagem natural por blocos e fluxos de trabalho. Cada bloco ou fluxo de trabalho suporta funções para:
load(): carregar um modelorun(): executar o modelo em argumentos de entradatrain(): treinar o modelo em seus próprios dados (nem todos os blocos e fluxos de trabalho suportam treinamento)save(): salve o modelo que foi treinado em seus dados
Blocos e fluxos de trabalho
Os blocos operam diretamente no documento de entrada. Um exemplo de um bloco que opera diretamente no documento de entrada é o bloco Sintaxe, que executa operações de processamento de linguagem natural, como tokenização, lemmatização, identificação de parte do discurso ou análise de dependências.
Exemplo: executando análise de sintaxe em um 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)
Os fluxos de trabalho são pipelines de ponta a ponta predefinidos de um documento bruto para um bloco final, em que todos os blocos necessários são encadeados como parte do pipeline do fluxo de trabalho
Para obter um exemplo de como chamar o fluxo de trabalho Menções de entidades, consulte este exemplo:
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")