NLP Academy · Oppitunti

Stemmäys: katkaise sanan vartaloon

Yhdistä running ja runs muotoon run

Oppitunti 3/413 vaihetta

Stemmäys: katkaise sanan vartaloon on ilmainen NLP Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu NLP Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. NLP Academy-kurssilla on yhteensä 4 oppituntia.

Yksi sana, monta muotoa

Verbi run esiintyy muodoissa running, runs ja ran. Teille niiden merkitys on sama, mutta raakateksti laskee jokaisen erikseen ja hajottaa signaalin. 🌱

Stemmaus käyttöön

Stemmaus leikkaa sanan loput pois löytääkseen karkean sanavartalon eli stemin. Tavoitteena on yhdistää toisiinsa liittyvät muodot yhdeksi yhteiseksi tokeniksi.

Sääntöjä, ei sanakirjaa

Stemmeri noudattaa yksinkertaisia päätesääntöjä sen sijaan, että etsisi sanat sanakirjasta. Se poistaa päätteitä, kuten ing, ed ja s, joten se on nopea mutta hieman karkea.

PorterStemmer

NLTK sisältää klassisen PorterStemmer-stemmerin. Luotte yhden instanssin ja kutsutte sen stem-metodia jokaiselle pelkistettävälle sanalle.

from nltk.stem import PorterStemmer
ps = PorterStemmer()
print(ps.stem('running'))

Muodot yhdistyvät

Antakaa sille saman verbin useita muotoja, niin kaikki pelkistyvät samaksi sanavartaloksi. Nyt lukumääränne voivat viimein yhdistyä.

for w in ['running', 'runs', 'ran']:
    print(ps.stem(w))

Stemit eivät ole oikeita sanoja

Stemmaus on karkea menetelmä. Sana studies muuttuu muotoon studi, joka ei ole oikea sana, mutta se täsmää silti sanojen study ja studied kanssa yhtenä sanavartalona.

print(ps.stem('studies'))

Varokaa ylistemmausta

Joskus stemmeri leikkaa liikaa ja yhdistää toisiinsa liittymättömiä sanoja. Tämä ylistemmaus voi hämärtää merkityksiä, joten tarkistakaa aina tulos järkevyyden kannalta omalla tekstillänne.

print(ps.stem('universal'))
print(ps.stem('university'))

Stematkaa tokeniluettelo

Käytännössä stemmaatte jokaisen dokumentin tokenin. Listakooste käyttää stemmeriä koko luetteloon yhdellä siistillä rivillä.

words = ['cats', 'caring', 'cared']
print([ps.stem(w) for w in words])

Muitakin stemmereitä on

Porter on oletusvaihtoehto, mutta NLTK tarjoaa myös ketterämmän SnowballStemmer-stemmerin, joka tukee monia kieliä ja korjaa joitakin Porterin karkeuksia.

from nltk.stem import SnowballStemmer
sb = SnowballStemmer('english')
print(sb.stem('happily'))

Muunna ensin pieniksi kirjaimiksi

Stemmerit odottavat syötteen olevan pienillä kirjaimilla. Yhtenäistä kirjainkoko ennen stemmausta, muuten Running ja running voivat jälleen päätyä kahdeksi eri tokeniksi.

print(ps.stem('Running'.lower()))

Milloin sitä kannattaa käyttää

Stemmaus vaihtaa tarkkuutta nopeuteen. Se sopii erinomaisesti hakuun ja suuriin käsittelyketjuihin, joissa karkea mutta nopea täsmäys on parempi kuin hidas ja tarkka analyysi. ⚡

Pikakertaus

Varmistetaan, miten stemmaus toimii.

Kertaus

Opitte, että stemmaus poistaa päätteitä yksinkertaisilla säännöillä ja yhdistää sanamuodot yhdeksi stemiksi. Se on nopea ja karkea menetelmä, joka tuottaa joskus epäsanoja. Hienoa työtä! 🎉

Aloita maksutta

Opi Python tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Stemmäys: katkaise sanan vartaloon” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa NLP Academy-oppimispolun 3 oppituntia, myös oppitunnin “Stemmäys: katkaise sanan vartaloon”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. NLP Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Stemmäys: katkaise sanan vartaloon”?

Yhdistä running ja runs muotoon run Harjoittelet NLP Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni NLP Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin NLP Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.

Kuinka kauan ”Stemmäys: katkaise sanan vartaloon”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä NLP Academy-oppitunnilla?

Kyllä. Jokainen NLP Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Miksi kirjainkoolla ja välilyönneillä on väliä
  2. Muunna pieniksi kirjaimiksi ja poista välilyönnit
  3. Stemmäys: katkaise sanan vartaloon
  4. Lemmatisaatio: älykkäämmät perusmuodot
← Takaisin: NLP Academy