Análise da sintaxe
O bloco de sintaxe do Watson Natural Language Processing encapsula a funcionalidade de análise de sintaxe.
Nomes de blocos
syntax_izumo_<language>_stocksyntax_izumo_<language>_stock-dp
Idiomas suportados
O bloco de análise de sintaxe está disponível para os idiomas a seguir. Para obter uma lista dos códigos de idioma e dos idiomas correspondentes, consulte Códigos de idiomas.
Códigos de idioma a serem usados para o modelo syntax_izumo_<language>_stock: af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw
Códigos de idioma a serem usados para o modelo syntax_izumo_<language>_stock-dp: af, ar, bs, ca, cs, da, de, de, el, en, es, fi, fr, he, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh
| Tarefa | Códigos de Idioma Suportados |
|---|---|
| Tokenização | af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, ele, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw, zh |
| Identificação de parte da fala | af, ar, bs, ca, cs, da, de, nl, nn, el, en, es, fi, fr, ele, hi, hr, it, ja, ko, nb, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw, zh |
| Lematização | af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, ele, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw, zh |
| Detecção de sentença | af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, ele, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw, zh |
| Detecção de parágrafo | af, ar, bs, ca, cs, da, de, el, en, es, fi, fr, ele, hi, hr, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sr, sv, tr, zh_cn, zh_tw, zh |
| Análise de dependência | af, ar, bs, cs, da, de, en, es, fi, fr, hi, hr, it, ja, nb, nl, nn, pt, ro, ru, sk, sr, sv |
Recursos
Use este bloco para executar tarefas como detecção de sentença, tokenização, marcação de parte da fala, lematização e análise de dependência em diferentes idiomas. Para a maioria das tarefas, você provavelmente precisará apenas de detecção de sentença, tokenização e identificação de parte do discurso. Para esses casos de uso use o modelo syntax_model_xx_stock . Se desejar executar análise de dependência, use o modelo syntax_model_xx_stock-dp .
A análise para marcação e dependências do Part-of-Speech (POS) segue o conjunto de tags do Universal Parts of Speech (tags do Universal POS) e o conjunto de tags do Universal Dependencies v2 (Relacionamentos do Universal Dependency).
A tabela a seguir mostra os recursos de cada tarefa com base no mesmo exemplo e no resultado da análise.
| Recursos | Exemplos | Atributos do analisador |
|---|---|---|
| Tokenização | "I don't like Mondays" --> "I" , "do", "n't", "like", "Mondays" | token |
| Detecção do Part-of-Speech | "I don't like Mondays" --> "I"\POS_PRON, "do"\POS_AUX, "n't"\POS_PART, "like"\POS_VERB, "Mondays"\POS_PROPN | part_of_speech |
| Lematização | "I don't like Mondays" --> "I", "do", "not", "like", "Monday" | lema |
| Análise de dependência | "I don't like Mondays" --> "I"-SUBJECT->"like"<-OBJECT-"Mondays" | dependência |
| Detecção de sentença | "I don't like Mondays" --> retorna esta sentença | sentença |
| Detecção de parágrafo (atualmente, a detecção de parágrafo ainda é experimental e retorna resultados semelhantes à detecção de sentença). | "I don't like Mondays" --> retorna esta sentença como sendo um parágrafo | sentença |
Dependências de outros blocos
Nenhum
Código de amostra
import watson_nlp
# Load Syntax for English
syntax_model = watson_nlp.load('syntax_izumo_en_stock')
# Detect tokens, lemma and part-of-speech
text = 'I don\'t like Mondays'
syntax_prediction = syntax_model.run(text, parsers=('token', 'lemma', 'part_of_speech'))
# Print the syntax result
print(syntax_prediction)
Saída da amostra de código:
{
"text": "I don't like Mondays",
"producer_id": {
"name": "Izumo Text Processing",
"version": "0.0.1"
},
"tokens": [
{
"span": {
"begin": 0,
"end": 1,
"text": "I"
},
"lemma": "I",
"part_of_speech": "POS_PRON"
},
{
"span": {
"begin": 2,
"end": 4,
"text": "do"
},
"lemma": "do",
"part_of_speech": "POS_AUX"
},
{
"span": {
"begin": 4,
"end": 7,
"text": "n't"
},
"lemma": "not",
"part_of_speech": "POS_PART"
},
{
"span": {
"begin": 8,
"end": 12,
"text": "like"
},
"lemma": "like",
"part_of_speech": "POS_VERB"
},
{
"span": {
"begin": 13,
"end": 20,
"text": "Mondays"
},
"lemma": "Monday",
"part_of_speech": "POS_PROPN"
}
],
"sentences": [
{
"span": {
"begin": 0,
"end": 20,
"text": "I don't like Mondays"
}
}
],
"paragraphs": [
{
"span": {
"begin": 0,
"end": 20,
"text": "I don't like Mondays"
}
}
]
}