Your SlideShare is downloading. ×
Mašinska analiza sentimenta rečenica na srpskom jeziku
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Mašinska analiza sentimenta rečenica na srpskom jeziku

526
views

Published on

Master rad, Nikola Milošević. 25.1.2012.

Master rad, Nikola Milošević. 25.1.2012.

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
526
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Mašinska analiza sentimenta rečenica na srpskom jeziku Master radKandidat: Mentor:Nikola Milošević 11/3138 Prof. Dr Boško Nikolić
  • 2. Procesuiranje prirodnog jezika• Oblast koja spaja računarstvo, veštačku inteligenciju i lingvistiku• Povezana oblast interakcije čoveka i računara. Poboljšava korisničko iskustvo• Počeci oblasti su u 1950’ (Turing), ali veliku ekspanziju i upotrebu doživljava u poslednjih 20 godina• Zadaci procesiranja prirodnog jezika: mašinsko prevođenje, klasifikacija teksta, analiza sentimenta, nalaženje informacija, odgovaranje na pitanja, ekstrakcija zavisnosti, prepoznavanje govora itd.
  • 3. Klasifikacija teksta – problem• Tekst je potrebno svrstati u određenu klasu• Skup klasa je konačan i definisan od strane korisnika• Supervizovano učenje• Trening podaci labelisanih dokumenata• Analiza sentimenta je binarna klasifikacija teksta (poz. ili neg.)
  • 4. Predprocesuiranje teksta• Kako bi algoritmi bili efikasniji koristi se preprocesuiranje teksta• Smanjuje fleksiju jezika• Stemming – heuristički proces odklanjanja sufiksa• Lemmatizacija – svođenje reči na koren uz pomoć rečnika• Efikasnost Stemmer-a i Lemmatizatora se gotovo ne razlikuju• Lemmatizator je po pravilu kompleksniji za implementaciju• Koristi se za gotovo sve probleme procesuiranja prirodnog jezika
  • 5. Stemming• Istorija – Julie Beth Lovins 1968. za engleski jezik – Martin Porter 1980. najkorišćeniji stemmer za engleski jezik, 2000. snowball framework za pravljenje stemmer-a – Nakon 2000. pojavljuj se stemmer-i za druge jezike• Dva pristupa implementaciji stemera – Zamena sufiks pravila – Kreiranje stem-a u više koraka
  • 6. Stemming za srpski jezik• Stemming pravila za srpski nisu definisana• Vlado Kešelj i Danko Šipka – stemmer uz pomoć nesupervizovanog mašinskog učenja – Veliku broj pravila – Prilično neprecizan – Dobra polazna osnova• Stemmer skraćen sa 1000 na 300 pravila i povećana efikasnost• 2 pristupa – Konsultovanje gramatike – Ispitivanje reči
  • 7. Realizovani stemmer za srpski jezik• Web aplikacija u programskom jeziku PHP• Komunikacija pomoću JSON objekata u POST HTTP zahtevima• Kodira srpske specijalne karaktere č,ć,š,đ,ž u cx,cy,sx,dx,zx• Kreira stemove veće od 2 karaktera• Ima rečnik nepravilnih glagola i njihovih fleksija• Ostale reči se stemuju generalizovanim pravilima
  • 8. Evaluacija i problemi stemmer-a• Realizovani stemmer ima prilično veliku efikasnost (oko 90%)• Ostaju problemi: – Nepravilne fleskije – Glasovne promene – Kratke reči (teško prepoznatljivo poreklo)• Predlog za budući rad: Implementacija stemmera u više koraka za srpski jezik
  • 9. Analiza sentimenta - uvod• Šta ljudi misle? Kako osećanja gaje prema nečemu?• Bazira se na klasifikaciji polarnosti teksta• Specijalan slučaj klacifikacije teksta na 2 klase – pozitivnu i negativnu• Koriste ga sistemi za analizu mišljenja korisnika, business inteligence sistemi, detekcija plamenova u elektronskim komunikacijama, marketing aplikacije, eZakonodavstvo...
  • 10. Analiza sentimenta - algoritmi• Metoda podržavajućih vektora• Metoda maksimalne entropije• Naive Bayes
  • 11. Bayesovo pravilo i Naive Bayes• Delilac ne zavisi od klase pa se zanemaruje• Uvodi se predpostavka uslovne nezavisnosti, tekst se posmatra kao vreća reči
  • 12. Laplace-ovo poravnanje, stoptermini, obrada negacija• Reči koje se nisu pojavile u trening skupu – Laplaceovo pravilo• Zbog malih vrednosti može doći do float underflow-a, koristi se logaritam• Stop termini• Obrada negacija
  • 13. Realizovana aplikacija• Web servis koji prihvata POST HTTP zahteve i JSON objekte• Odgovor HTTP POST odgovor sa JSON objektom• Strana za učenje (zaštićena)• Strana za analizu sentimenta• Stemmer za srpski jezik• Realizovana web aplikacija (komunikacija preko AJAX-a) i Android mobilna aplikacija• Mogućnost upotrebe i na drugim platformama
  • 14. Zaključak• Realizovan sistem klasifikuje tekst u pozitivnu i negativnu klasu• Realizovana web i Android aplikacija• Izazovi i teme za dalje unapređenje: – Obrada negacija – Obrada stilskih figura poput ironije i sarkazma – Kontekst rečenica• Izazovi stemmer-a – Glasovne promene – Nepravilne fleksije
  • 15. Pitanja i diskusija