Stemming dan lemmatisasi

Analisis Sentimen dengan Python

Violeta Misheva

Data Scientist

Apa itu stemming?

Stemming adalah proses mengubah kata ke bentuk akarnya, meski stem itu sendiri bisa jadi bukan kata valid dalam bahasa.

staying, stays, stayed ----> stay
house, houses, housing ----> hous

Analisis Sentimen dengan Python

Apa itu lemmatisasi?

Lemmatisasi mirip dengan stemming, tetapi mengembalikan kata ke bentuk dasar yang merupakan kata valid dalam bahasa.

stay, stays, staying, stayed ----> stay
house, houses, housing ----> house
Analisis Sentimen dengan Python

Stemming vs. lemmatisasi

Stemming

  • Menghasilkan akar kata
  • Cepat dan efisien dihitung

Lemmatisasi

  • Menghasilkan kata yang valid
  • Lebih lambat dari stemming dan bisa bergantung pada part-of-speech
Analisis Sentimen dengan Python

Stemming string

from nltk.stem import PorterStemmer

porter = PorterStemmer()
porter.stem('wonderful')
'wonder'
Analisis Sentimen dengan Python

Stemmer non‑Inggris

Snowball Stemmer: Denmark, Belanda, Inggris, Finlandia, Prancis, Jerman, Hungaria, Italia, Norwegia, Portugis, Rumania, Rusia, Spanyol, Swedia

from nltk.stem.snowball import SnowballStemmer

DutchStemmer = SnowballStemmer("dutch")
DutchStemmer.stem("beginnen")
'begin'
Analisis Sentimen dengan Python

Bagaimana men-stem kalimat?

porter.stem('Today is a wonderful day!')
'today is a wonderful day!'
tokens = word_tokenize('Today is a wonderful day!')
stemmed_tokens = [porter.stem(token) for token in tokens]
stemmed_tokens
['today', 'is', 'a', 'wonder', 'day', '!']
Analisis Sentimen dengan Python

Lemmatisasi string

from nltk.stem import WordNetLemmatizer

WNlemmatizer = WordNetLemmatizer()
WNlemmatizer.lemmatize('wonderful', pos='a')
'wonderful'
Analisis Sentimen dengan Python

Ayo berlatih!

Analisis Sentimen dengan Python

Preparing Video For Download...