mašinska analiza sentimenta rečenica na srpskom jeziku
DESCRIPTION
Master rad, Nikola Milošević. 25.1.2012.TRANSCRIPT
Kandidat: Mentor:Nikola Milošević 11/3138 Prof. Dr Boško Nikolić
Mašinska analiza sentimenta rečenica na srpskom jeziku
Master rad
• 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.
Procesuiranje prirodnog jezika
• 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.)
Klasifikacija teksta – problem
• 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
Predprocesuiranje teksta
• 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
Stemming
• 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
Stemming 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
Realizovani stemmer za srpski jezik
• 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
Evaluacija i problemi stemmer-a
• Š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...
Analiza sentimenta - uvod
• Metoda podržavajućih vektora
• Metoda maksimalne entropije
• Naive Bayes
Analiza sentimenta - algoritmi
• Delilac ne zavisi od klase pa se zanemaruje
• Uvodi se predpostavka uslovne nezavisnosti, tekst se posmatra kao vreća reči
Bayesovo pravilo i Naive Bayes
• 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
Laplace-ovo poravnanje, stop termini, obrada negacija
• 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
Realizovana aplikacija
• 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
Zaključak
Pitanja i diskusija