Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Lematização | Stemming e Lematização
Quizzes & Challenges
Quizzes
Challenges
/
Introdução ao PLN com Python

bookLematização

Compreendendo a Lemmatização

Note
Definição

Lemmatização é uma técnica de normalização de texto utilizada em PLN para reduzir palavras à sua forma de dicionário, conhecida como lema.

Diferente do stemming, que remove afixos de forma bruta, a lematização considera o contexto e converte a palavra para sua forma de dicionário. Por exemplo, 'am', 'are' e 'is' são todos lematizados para 'be'. Essa abordagem pode reduzir significativamente o tamanho do vocabulário (o número de palavras únicas) em grandes corpora de texto, aumentando assim a eficiência durante o treinamento de modelos.

Por outro lado, embora a lematização seja mais precisa, ela também é mais computacionalmente custosa e pode ser demorada em conjuntos de dados grandes. Além disso, para obter ainda mais precisão, recomenda-se realizar análise morfológica e etiquetagem de classe gramatical antes da lematização.

Note
Nota

Não se preocupe com part-of-speech tagging por enquanto, pois este será o próximo tópico que você irá aprender.

Lemmatização com NLTK

O WordNet Lemmatizer, fornecido pela biblioteca NLTK, utiliza o corpus WordNet para realizar a lematização.

Note
Estude Mais

WordNet é um banco de dados lexical semanticamente rico para o inglês que vai muito além de um simples corpus. Ele agrupa palavras em conjuntos de sinônimos, ou synsets, cada um representando um conceito distinto e acompanhado de definições e exemplos de uso. Além disso, o WordNet codifica relações significativas entre esses synsets — como hypernyms (termos mais amplos e gerais) e hyponyms (termos mais restritos e específicos) — oferecendo uma estrutura poderosa para explorar e desambiguar significados de palavras.

Ao utilizar o WordNet Lemmatizer, ele consulta a base de dados WordNet para encontrar o lema mais apropriado da palavra.

Como mencionado acima, como as palavras podem ter significados diferentes em diferentes contextos (por exemplo, "running" como verbo vs. "running" como substantivo), o lematizador pode exigir que você especifique a classe gramatical (por exemplo, verbo, substantivo, adjetivo). Isso o ajuda a selecionar o lema correto com base na função da palavra na frase.

1234567891011
from nltk.stem import WordNetLemmatizer import nltk # Download the WordNet corpus nltk.download('wordnet') # Initialize the WordNet lemmatizer lemmatizer = WordNetLemmatizer() # Parts of speech, 'v' for verb and 'n' for noun parts_of_speech = ['v', 'n'] # Lemmatize words lemmatized_words = [lemmatizer.lemmatize("running", pos) for pos in parts_of_speech] print("Lemmatized words:", lemmatized_words)
copy

Você pode omitir a especificação da classe gramatical ao chamar lemmatizer.lemmatize("running"), mas como pode perceber, diferentes classes gramaticais produzem resultados diferentes. Por isso, o ideal é realizar a marcação de classe gramatical previamente.

question mark

Qual é o principal benefício de usar lematização em comparação com stemming?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 2. Capítulo 3

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Suggested prompts:

Can you explain the difference between stemming and lemmatization in more detail?

How does specifying the part of speech affect the lemmatization result?

Why is lemmatization considered more computationally expensive than stemming?

Awesome!

Completion rate improved to 3.45

bookLematização

Deslize para mostrar o menu

Compreendendo a Lemmatização

Note
Definição

Lemmatização é uma técnica de normalização de texto utilizada em PLN para reduzir palavras à sua forma de dicionário, conhecida como lema.

Diferente do stemming, que remove afixos de forma bruta, a lematização considera o contexto e converte a palavra para sua forma de dicionário. Por exemplo, 'am', 'are' e 'is' são todos lematizados para 'be'. Essa abordagem pode reduzir significativamente o tamanho do vocabulário (o número de palavras únicas) em grandes corpora de texto, aumentando assim a eficiência durante o treinamento de modelos.

Por outro lado, embora a lematização seja mais precisa, ela também é mais computacionalmente custosa e pode ser demorada em conjuntos de dados grandes. Além disso, para obter ainda mais precisão, recomenda-se realizar análise morfológica e etiquetagem de classe gramatical antes da lematização.

Note
Nota

Não se preocupe com part-of-speech tagging por enquanto, pois este será o próximo tópico que você irá aprender.

Lemmatização com NLTK

O WordNet Lemmatizer, fornecido pela biblioteca NLTK, utiliza o corpus WordNet para realizar a lematização.

Note
Estude Mais

WordNet é um banco de dados lexical semanticamente rico para o inglês que vai muito além de um simples corpus. Ele agrupa palavras em conjuntos de sinônimos, ou synsets, cada um representando um conceito distinto e acompanhado de definições e exemplos de uso. Além disso, o WordNet codifica relações significativas entre esses synsets — como hypernyms (termos mais amplos e gerais) e hyponyms (termos mais restritos e específicos) — oferecendo uma estrutura poderosa para explorar e desambiguar significados de palavras.

Ao utilizar o WordNet Lemmatizer, ele consulta a base de dados WordNet para encontrar o lema mais apropriado da palavra.

Como mencionado acima, como as palavras podem ter significados diferentes em diferentes contextos (por exemplo, "running" como verbo vs. "running" como substantivo), o lematizador pode exigir que você especifique a classe gramatical (por exemplo, verbo, substantivo, adjetivo). Isso o ajuda a selecionar o lema correto com base na função da palavra na frase.

1234567891011
from nltk.stem import WordNetLemmatizer import nltk # Download the WordNet corpus nltk.download('wordnet') # Initialize the WordNet lemmatizer lemmatizer = WordNetLemmatizer() # Parts of speech, 'v' for verb and 'n' for noun parts_of_speech = ['v', 'n'] # Lemmatize words lemmatized_words = [lemmatizer.lemmatize("running", pos) for pos in parts_of_speech] print("Lemmatized words:", lemmatized_words)
copy

Você pode omitir a especificação da classe gramatical ao chamar lemmatizer.lemmatize("running"), mas como pode perceber, diferentes classes gramaticais produzem resultados diferentes. Por isso, o ideal é realizar a marcação de classe gramatical previamente.

question mark

Qual é o principal benefício de usar lematização em comparação com stemming?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 2. Capítulo 3
some-alt