!!! SENTIMENTANALYSIS Förmåganattgöraanalyseromettvisstsubjekt/objektsessompositivt ellernegativtblandbefolkningenirealtidmedhjälpavtwitter
1.#INLEDNING#...#1 1.1SYFTE...1 1.2AVGRÄNSNING...1 2.#SENTIMENT#ANALYSIS#...#2 2.1DEFINITIONAVSENTIMENTANALYSIS...2 2.2HISTORIA...2 2.3ANVÄNDNINGSOMRÅDEN...3 3.#TWITTER# #VAD#ÄR#DET?#...#3 3.1FÖLJAANVÄNDARE...4 3.2INNEHÅLL...4 3.3FORMAT...4 3.4TWITTERAPI...5 4.#NATURAL#LANGUAGE#PROCESSING(NLP)#...#5 4.1TEXTKLASSIFIKATION...5 4.1.1$Exempel$på$ham$och$spam$tweets$...$6 4.1.2$Språkmodellen$...$7 4.1.3$Maskininlärning$...$7 4.1.4$Bag$of$Words$i$Python$...$8 4.1.5$Informationsinsamling$...$9 4.2INFORMATIONSUTVINNING...11 5.#SVÅRIGHETER#MED#SENTIMENT#ANALYSIS#...#13 6.#DISKUSSION#...#13 6.1AVSLUTANDEORD...14 REFERENSER#...#15
1.!Inledning! DettaärettarbetesominriktarsigpåSentimentAnalysis(SA)ochhurmanmed hjälpavattanalyseratwitterflödenkanutvinnainformationomvadmänniskor tyckerochtänkeromalltifrånpolitiker,företag,fotbollslagellerolikatyperav produkter.medhjälpavsakanmanalltsåirealtidsehurtwitterflödetspolaritet förenvissentitetärgenomattanvändasigutavolikanyckelordförattsökaefter tweetssominnehållerdetnyckelordet.detharvisatsigattommananalyserar tweetssominnehållernyckelordomtexenfotbollsmatch,sägmanchester United Arsenalochsökertwitterflödeninnehållandedenyckelordenochsedan analyserarifalldetärpositiva/negativatweets.skulledetvaramerpositiva tweetsommanchesterunitedänarsenalinnanochundermatchenharmansett attdetlagetsomharendethögstpositivasentimentoftastvinnermatchen. Dettaförattdentotaladatansomanalyserasirealtidärsåenormtstoroch fansenochexperternasomtwittrarpositivt/negativtommatchenellerettlag harsällanfel.dettakansåklartappliceraspåvilketobjektellersubjektsomhelst ochdetfinnsföretagsomanvändersigutavsaförattförutspåaktiemarknader. SApåTwitterochandrasocialaverktygkangedig,tillskillnadfrånförut,en fokusgrupppåöverenmiljonmänniskorvilketmansåklartförstårärnågothelt otroligt (Taplin, 2012). 1.1!Syfte! Syftetmeddettafördjupningsarbeteärattförsökageengrundläggandeinsikt omvadsaär,hurdetfungerar,vaddetfinnsförolikamodellerochsystemsom behövsförattkunnautförasaochhurmanipythonkanbyggasittegna SentimentAnalysisverktygmedhjälpavolikascriptjagskapat. 1.2!Avgränsning! TrotsattSAärrelativtnyttfinnsdetotroligtmycketmaterialomdet.InomSA användsävenenradolikatekniker.förattgöradettaarbetehanterbartinom tidsramenochutrymmetfördettafördjupningsarbeteharjagvaltattinriktamig påattförklaranaturallanguageprocessingochtaruppendelavdemolika algoritmerochmodellersomfinnsförattskapaensåbraspråkdmodellsom 1
möjligt.jagkommerattförklarahurdeäruppbyggdaochgeettexempelpåett egetsadverktygjagskapatipython.förattsamlaindataattanalyseraharjag valtattanvändatwittersapisomgördetmöjligtattstreamatweetsirealtid.jag hardåvaltatthaettavsnittiarbetetsomförklararhurtwitterfungerarochvad detärförnågot. 2.!Sentiment!Analysis! 2.1!Definition!av!Sentiment!Analysis! SentimentAnalysis(SA)kanbeskrivassomettsättatttaredapåmänniskors åsikteromalltifrånpolitikochekonomitillfilmerellerandraproduktersom personerköper (Feldman, 2013).SentimentAnalysis(SA)äralltsåenhopslagning avfleraolikaelementinomartificiellintelligenssomlingvistik,programmering ochspråkvetenskapligdatabehandling.översättermansentimenttillsvenska betyderdetungefärkänsla,alltsåkänslanispråketellerkänslansomuppstårnär manläserenvisstext.detgårigrundenutpåattmananvändernatural$ Language$Processing(NLP)sominnehållerTextklassificerare,Maskininlärning,$ Informationsinsamling$ochInformationsutvinning$föratttillslutbestämma polariteten(positivt,neutraltellernegativt)hosettspecifiktsubjekt/objekt.man kanalltsåmedhjälpavsaavgöraattitydenietttextstyckeochpåsåsättse trenderfrånallmänhetenifråndetsocialanätverkettwitter(ellerandrasociala medier). 2.2!Historia! SentimentAnalysis(SA)ärenrelativtnyteknikochdenförstariktiga forskningenkringsentimentanalysisgjordesavminqinghuochbingliuår 2004.DeförsökermedhjälpavOpinionmining,sombetyderattmansamlarin datafrånexempelvis1000dtalsolikarecensioner.allteftersomedhandelökar ochhemsidorsomamazon.com,cdon.comochedbay.comlåteranvändaresjälva recenseraolikaproduktersåsamlade(hu & Liu, 2004)inenmassaolika recensionerföranalys.dessaedhandelssidorlåterävenanvändarebetygsätta recensionersådekundeenkeltsägaomenrecensionvarpositivellernegativ.de användesigutavnaturallanguageprocessing(nlp)förgåigenomalla 2
recensionerdärnlpidentifierarordklassernaefterhurdefungerarisatserna (Hu & Liu, 2004).DettavarstartskottenförSAochidagfinnsdetflerastora företagsomanvändersigutavsaförattirealtidkunnafåfeedbackpåtill exempelennyproduktellerreklamkampanj. 2.3!Användningsområden! Dagenssamhällekretsaroerhörtmycketkringolikatyperavsocialmediasom Twitter,Facebook,bloggarochandraforumdärfolkuttryckeråsikteroch synpunkter.dettaärenguldgruvaförföretag/organisationersomsnabbtvillha redapåhurfolkettyckeromtillexempelenprodukt,enreklamkampanjeller valkampanjer,detärheltenkeltsomatthaenfokusgrupppåfleramiljoner människor (Feldman, 2013).Detharävenbörjatdykauppföretagsomenbart sysslarmedsaförattanalyseraaktiemarknaderochpåsåsättkunnaförutspå aktiekurser (Smailovic, Grcar, Lavrac, & Znidarsic, 2013). 3.!Twitter!!vad!är!det?! Twitterärenonlinetjänstsomlåtermänniskorinterageramedvarandragenom attskickasåkallade tweets somärtextmeddelandensomärbegränsadetill 140tecken.Manmåstevaraenregistreradanvändareförattkunnaläsaoch postatweetsmedanickeregistreradeanvändareendastkanläsatweets.man kankommaåttwitterviaderashemsidatwitter.com,smsellergenomderas mobildapp (Twitter Inc., 2014). År2012varTwitterpopulärtöverhelavärldenochhadedå500miljoner registreradeanvändaresomtillsammanspostade340miljonertweetsperdag. Twitterhadedåävenhandom1.6miljardersökningarperdag.Detnuvarande rekordetförantaltweetssattesden1januari2013idenjapanskatidzonendå antalettweetsvar33388tweetspersekund.detsenastuppmättadatanvisaratt 200miljoneranvändareskickadeöver400miljonertweetsdagligendärnästan 60%avtweetsenvarskickadefrånmobilaenheter (Lunden, 2012). 3
3.1!Följa!användare! NärmanvälärregistreradpåTwitterkanmanföljaandraanvändaresom användertwitter,dettakallasförattmanföljernågon.kontraattenanvändare kanhaföljare.$ 3.2!Innehåll! NärenanvändarepåTwitterpostarenTweetärdenautomatisktinställdpåatt visasföralla,dockkananvändaresjälvaväljaattvissatweetsendastskasynas föranvändaresomföljerdettwitterdkontot.underentvådveckorsperiodi augusti2009utfördepearanalyticsenundersökningdärmanförsöktetareda påvadanvändareskriverpåtwitter.mandeladeindeolikatypernaavtweetsi 6olikakategorierochresultatetblevföljande: Meningslöstbabbel 40% Konversationer 38% Retweets 9% Självupplyftandetweets 6% Spam 4% Nyheter 4% 3.3!Format! (Kelly, 2009) Användarekangrupperaposter(Tweets)beroendepåvadTweetenhandlarom genomattanvändasigutavhashtags(#),tillexempelomnågothänderpåliu kanmandåskriva#liuisintweetochandraanvändarekandåsökaefter hashtaggen#liuochfåframallatweetssomhandlaromliu(innehåller#liu). Påsammasättkanmananvända @ följtavettanvändarnamnförattnämna ellersvarapåenannananvändarestweet.mankan omposta ettmeddelade frånenannananvändareochdådelaenannanstweetpåsinegensida,denna funktionenkallasförretweetochsymboliserasgenomattdetstår RT itweeten. EftersomattTwitterharsattenmaxgränspå140teckenpertweetanvänds mycketförkortningarochslangitweets.manharävenbörjatanvända förkortningarförurldadressersomtexbit.ly,goo.glochtwittersegnat.co.detta 4
görattmankanpostaurldadresserisinatweetsutanattdetaruppförmycket plats (http://en.wikipedia.org/wiki/twitter). 3.4!Twitter!API! TwitterharensåkalladAPIsomstårför ApplicationProgrammingInterface ochviaderasapiochmedhjälpavoauth,somärenidentifikationsnyckel,kan manstreamatweetsgenomattskrivaolikatyperavprogramellerscriptsi Python.DessascriptserungefärutsomScript$1.1. 4.!Natural!Language!Processing(NLP)! Somnämntovanskickasdetöver400miljonertweetspåTwittervarjedag. Dettablirotroligtmycketdataochnästanallavdendatanärskrivitinaturligt språk,medundantagförendeltweetssominnehållermycketförkortningaroch bilddlänkar,menändåotroligtmycketvanligtinnehåll.enagentsomvill införskaffasigkunskapmåsteförstå(iallafalldelvis)dettvetydligaochoklara språksommänniskorfaktisktanvändersigutav.förattlösadettaproblemfrån perspektivetattinförskaffasigdataomvadallmänhetenharföråsikteromen vissperson,företag,stad,politikellerenheltvanligdigitalkamera(ellernågon annanprodukt)måstemananvändasigutavföljande:textklassifikation, informationsinsamling(informationretrieval)ochinformationsutvinning (Russel & Norvig, 2010, ss. 860-865). 4.1!Textklassifikation! Närmanutförtextklassifiering,ävenkallatkategoriseringbehövermannågon typavtextförattsedanbestämmatillvilkenavdefördefinieradeklassernaden textengårunder (Russel & Norvig, 2010).Manbrukarklassificerameningartill tvåprincipiellaklassermedhänsyntillsubjektivitet:objektivameningarsom innehållerfaktisktinformationochsubjektivameningarsominnehållerexplicita åsikter,synpunkterochtroomspecifikaenheter(saker) (Feldman, 2013). Språkidentifieringochgenreklassificeringärtvåexempelpåtextklassifikation. ÄvenSAärentypavtextklassifieringmendåhandlardetomattavgöraomen textärpositivellernegativ(vaddenharförpolaritet).tillskillnadfrån (Russel & Norvig, 2010) som tar upp exempel på hur man kan skilja spam-mail mot vanlig mail 5
beskrivs här istället hur man kan skilja spam-tweets(meningslöst babbel och spam, se Twitter - Innehåll) mot värdefulla tweets(ham-tweets) som har någon form av innebörd. I detta fördjupningsarbete är värdefulla tweets sådana tweets som innehåller objektiv information och till viss del subjektiv information (Feldman, 2013). 4.1.1!Exempel!på!ham!och!spam!tweets! Ham-tweets: Former NFL player found dead in Florida hotel room after complaining of stomach illness: http:\/\/t.co\/q0koofkjmt - (@ABC) Ham-tweets: Florida State quarterback Jameis Winston has won the Manning Award, given to the nations top quarterback. Ham-tweets: Florida State redshirt freshman Jameis Winston wins Manning Award, honoring nations top QB (ESPN) Ham-tweets: Im not even a Florida State fan, but the fact is that team is going to be better next year. SpamGtweets:Cantwaittogoflorida!!!!!!! SpamGtweets:@TescoBabyClub:FollowusandRTifyouwouldliketo#winatripto @DisneylandFloridaforyouandyourfamily SpamGtweets:@ginnyyiam:CanitjustbeFebruary14thplease#florida\u201dIWANNAGO HURRYUPCALENDARHURRYPLZPLZIWANNAGETMYTANON$ Dessa$tweets$är$hämtade$2014S01S08$23:00$genom$att$köra$ett$Script$1.1. Script$1.1$ $Ett$script$som$ lyssnar $på$alla$tweets$som$skickas$och$tar$ett$nyckelord$för$att$scanna$ av$tweets$och$sparar$de$tweets$som$innehåller$nyckelordet.$ 6
FråndessatweetskanmanbörjafåenidéomvadsomjustnupågåriFlorida. Dessatweetsärhämtadeirealtidochnärdettaskrivs(2014D01D0823:00)verkar mångatwittraomenquarterbacksomvunnitettprisochävenmångasom twittraromattenföredettanflspelarehittatsdöd.medanendelandraspamd tweetssominteharnågotriktigtinnehållkanfiltrerasbort.förattgöradetta behövermanensamlingavvadsomkandefinierassomvärdefullatweets(hamd tweets)ochspamdtweetsförattkunnaanalyseratweetseniensupervised$ learning$model.sommankanseverkarspamdtweetsinnehållamycketversaler ochutropstecken.manskullekunnaskapaett teckenndgram Dmodellöver spamdtweetsochhamdtweetsellersåkanmanförhandskapaolikaegenskaper somtillexempel antaletutropsteckensomavslutarenmening (Russel & Norvig, 2010). 4.1.2!Språkmodellen! Detfinnstvåvägarattgånärmanprataromklassifikation,deärbåda komplementtillvarandra.medspråkdmodellenssynsättsådefinierarmanen språkmodellmedettndgramförp(tweet spamstweet)somtränarpåspamd tweets,ochenmodellförp(tweet hamstweet)somtränarpå bra tweets.när detärgjortkanmanklassificeraennytweetmedhjälpavbaye sregel:!"#$!%! {!"#$, h!"}!!!!"##! =!"#$!%!!!! {!"#$, h!"}!!"##!!!!! därp(c)äruppskattatendastgenomattmanadderarantaletspamdtweetsoch hamdtweets.dennateknikfungerarbraförattupptäckaspam (Russel & Norvig, 2010). 4.1.3!Maskininlärning! Detandrasättetärgenommaskininlärningdärmanrepresenterar meddelandet(tweeten)iengruppmedolikakänneteckenoch/ellervärddparför attsedananvändaklassifikationsalgoritmenh$tillkänntecksvektornx.mankan göraspråkmodellenochmaskininlärningssättetkompatiblagenomatttänkaatt ndgrammenärkännetecken.deolikakännetecknenärordivokabuläret: a, aardvark,,ochvärdetärantaletgångersomettspecifiktordförefalleri 7
meddelandet/tweeten.omdetfinns100000ordispråkmodellensåhar känneteckensvektornenlängdpå100000meneftersomtweetsoftaärkorta ochettordkanskebarafinnsmedengånghardekänneteckensvärdepå0. Dennaunigramrepresentationenharkommitattkallasförbag#of#wordsD modellen.mankantänkapåmodellensomattmanläggerenmassaordfrån träningskorpusenienpåseförattsedanväljaettorditaget.ivilkenordning ordenliggerhardärmedingenbetydelse.enunigramdmodellgeralltsåsamma sannolikhetförentextoavsettvilkenordningordenliggeri.ndgrammodeller somärmersofistikeradekandockgeolikasannolikheterberoendepåvilken ordningordenliggeri (Russel & Norvig, 2010, s. 866).Meddemersofistikerade NDgrammodellernasombigramochtrigramsåärkännetecknenikvadrateller attmantarkubikrotenurkännetecknenochpåsåsättkanmanläggainandra ickedndgramskänneteckensomtillexempeltidendåtweetenärskickad,omdet ärenurlellerbilditweeten,idnummer(användarnamn)fördensomskicka tweetenelleromdenanvändarentidigareharskickatspamdtweetsellerhamd tweetsochmycketannat.närmanharvaltutettantalkänneteckensåkanman appliceradessapåenradolika supervisedlearning tekniker,depopuläraste förtextkategoriseringärkdnearestneighbors,supportvectormachines,decision trees,naivebayesochlogisticregression.alladessahartidigareappliceratspå spamdigenkänningochharoftastensäkerhetpå98%d99%ochharmanen riktigtbradesignöverkänneteckenkanmanuppnå99.9%säkerhet (Russel & Norvig, 2010). 4.1.4!Bag!of!Words!i!Python! Förattsamlaihopen BagofWords användstvåstyckentextfilermedpositiva ochnegativaengelskaorddärdetärtotalt2006positivaordoch4783negativa ord (Hu & Liu, 2004).EfteratthalagtindessaordienSQLDdatabasmedvärdena 1förpositivaochD1förnegativakördesdessaordmothttp://thesaurus.com, somärenhemsidadärmankansesynonymertillord,förattbyggapådatabasen medflerpositiva/negativaord.dettagavendatabasmedtotalt9857ordmed positiva/negativaord,övrigaordsominteärmedklassasdåperautomatiksom neutralamedvärdet0. 8
4.1.5!Informationsinsamling! Medinformationsinsamling(IR)menasattmanletarefterdokumentelleridetta falltweetssomärrelevantafördetnyckelordetvisökerefter.demestvälkända exempelpådettaärsökmotorerpåinternetsomgoogle.därkanenanvändare skrivainettsökordsom[aibook] 2! isökmotornochfåframenlistamed relevantasidor.härförklarashurensådansökmotorfungerarochhurden iställetharanväntsförattsökaupprelevantatweets.mankankarakteriseraen IRDmodellpåföljandesätt: 1. En#korpus#av#dokument.Varjesystemmåstebestämmavaddetärman skabehandlasomettdokument:enparagraf,ensida,brödtextelleri dettafallentweet. 2. Frågor(queries)#i#det#format#eller#språk#som#krävs.#Enfrågaeller nyckelordkanvaraenlistamedolikaordellersåkandetvaraenspecifik fras.detkaninnehållabooleanoperatorersom[obamaandeconomy] ellerickedbooleanoperatorersom[obamaneareconomy]. 3. En#samling#med#resultat.#Dettaärensamlingavdokumentsom#IRD systemetanservararelevanttillfrågan/nyckelordet.idettasadprojekt bestårdetavensqlddatabasfullmedinsamladetweets. 4. En#presentation#av#resultaten.Dettakanvarasåenkeltsomenlista meddokumentellerdatabasmedallatweets. DetidigareIRDsystemenanvändesigutavenBoolean#keyword#model.#Varje ordiettdokument/tweetsessomettbooleanskkänneteckensomärsantom tweeteninnehållerdetordetochfalskomdetintegördet.sådet kännetecknandeordet Florida blirdåsantfördeovanståendehamochspam tweetsenmenfalskförmångaandratweetssominteinnehållerordet Florida (Russel & Norvig, 2010).# FörattsamlaininformationomettvaltnyckelordkörsScript$1.1.$Scriptetärett pythondscriptsomanvändersigutavmodulentweepy (Roesslein, 2009)föratt sökaeftertweetsirealtidochsedanochsedan#sqlite3förattsparanerdemi ensqlddatabas.totaltantaltweetssomsamladesinuppgicktill2430stunder loppetav15min(mellan2014d01d0802:30d02:45)med obama somnyckelord. FrånatthasamlatindessaTweetsgårdetattgöraensimplareSAsomgeren 9
överblicköverdetvaldanyckelordetsomidettafalldåva obama.vidare kördesnedanståendescriptföratträknautdetsentimentavärdetförvarje enskildtweetsominnehöllordet obama. Script$1.2.$Detta$script$analyserar$varje$enskild$tweet$mot$bagSofSwords,$finner$den$ ett$positivt$ord$i$en$tweet$adderas$.42$till$analyzedscore$och$subtraherar$.575$för$ negativa$ord$i$tweeten.$därefter$lagras$de$i$en$databas.$ $ Efteratthasamlatinallatweetsochanalyseratdemföljtavattlagrademien SQLDdatabaskörsScript$1.3. $ 10
Script$1.3.$räknar$ut$vad$det$sentimentala$värdet$i$genomsnitt$blev$för$alla$tweets$ och$under$scriptet$syns$resultatet$från$körningen.$ Mankandåsägaattdetsentimentalavärdetitweetsinnehållande obama underdengivnatidenvarigenomsnittpositivtmedettvärdepå 1.16där0är neutralt. 4.2!Informationsutvinning! Detfinnsendelolikametodermankananvändasigavnärmanskautvinna informationfrånentext.detenklastesättetkallasförattributegbase#extractio somantaratthelatextenrefererartillettendaobjektochattuppgiftenäratt extraheraattribututifråndetobjektet.förattgöradettasåmåstemandefiniera enmallförvarjeattributmanvillextrahera.mallenärdefinierademedhjälp utavreguljärauttryck (Russel & Norvig, 2010).Mankanskrivareguljärauttryck direktiniettpythondscript.iscript$1.1$kanmansenågrareguljärauttrycksom byterut(tarbort)användarnamnochlänkarientweetförattfåenrenareoch enklaretext. Ettlitemeravanceratsystemärrelation#extractionsystemetsomkanhantera fleraobjektochrelationenmellandem.etttypisktrelationsbaserat extraktionssystemärfastussomärspecialiseratpånyhetstextersomhandlar omföretagssammanslagningarochuppköpavandrabolag (Russel & Norvig, 2010).DetverktygsomanväntsidettaprojektheterNatural$Language$ Toolkit(NLTK).$Ettexempeltagetfrån(Bird, Klein, & Loper, Natural Language Processing with Python, 2009)användermeningen thelittleyellowdogbarkedat thecat ochgenomattanvändanltkmodulenipythonochscript$1.4$fårmanut följanderesultat: 11
Dennameningskickadejagviaentweetsommedhjälputavvissanyckelord snappadesuppiallttwitterflödeochsparadessedanidatabasenoch analyseradesgenomatttweetenförstdeladesuppi Tokens.Detandrasteget taggarordentillrespektiveordklassmednltk sinbyggdapos_tag (Bird, Klein, & Loper, Natural Language Processing with Python, 2009)somsynsiScript$1.4.Det tredjestegetharhandom basicgroups vilketbetydernominalfraser, verbfraserosv.vilketresulteradeiträdetovan (Russel & Norvig, 2010).Målet meddettredjestegetäralltsåattmanskakunnaanvändaenformellgrammatik förattbeskrivastrukturerienoändligmassaolikameningarellertweetsoch hurmanskarepresenteradessamedhjälpavsyntaxträdsomexempletovan (Bird, Klein, & Loper, Natural Language Processing with Python, 2009).Dettagörs ävendetiscript$1.4pådessarader: cp=nltk.regexpparser(grammar) result=cp.parse(tagged) Script$1.4.$Detta$script$tokeniserar$en$text,$taggar$orden$till$respektive$ordklass$för$ att$sedan$jämföras$med$ grammarslistan.$den$grammar$som$visas$i$scriptet$måste$ såklart$byggas$ut$för$att$kunna$hantera$flera$olika$typer$av$meningsuppbyggnader.$ 12
5.!Svårigheter!med!Sentiment!Analysis! EftersomattSAärenväldigtsubjektivmetodavklassifikationerochdetär mängdermedmänniskorstweetssomanalyserasärdetmedhögstasannolikhet såattdetkommerhaolikaåsikteromsaker.liu menar även på att olika människor, som har samma åsikt om något, kan uttrycka sig väldigt olikt och att det är svårt att avgöra hur en person känner för något/någon när man har max 140 tecken på sig för att beskriva det (Liu, 2010). Ofta när man recenserar till exempel en produkt och endast har 140 tecken är det vanligt att man jämför två stycken produkter med varandra och för att då veta om det är en positiv eller negativ recension måste man veta om den ena produkten är bra eller dålig. Det kan till exempel stå This Nikon D5100 is just the same as the Canon Eos7. och för att då veta om det betyder att Nikon D5100 är en bra eller dålig kamera måste man veta om Canon Eos7 är en bra eller dålig kamera (Liu, 2010). EttannatproblemsomuppstårmedSAnärmangranskartwitterflödenär sarkasm,detärväldigtsvårtförendatorattförståomettinläggpåtwitterär sarkastiskt.detkrävsväldigtsofistikeradespråkmodellerförattkunnase sarkasmientweetochävendemestsofistikeradespråkmodellernaklarar knapptavdet (Taplin, 2012). 6.!Diskussion! SentimentAnalysiserbjuderföretag/organisationerattgöra opinionsundersökningarelleranalyseravderasprodukter,talespersoner, reklamkampanjerosv.dettagörattdekanförbättravad företaget/organisationengörförnågotochpåsåsättökatexintäkter.många företagharspecialiseratsigpåattgörasentimentaanalyserpåaktiemarknader därdesamlarindatafrånolikasocialamedieromdiverseföretagförattfåfram polariteten,detvillsägaomdetskrivspositivaellernegativatexteromen specifikaktieochpåsåsättkunnaförutspåomenaktiekurskommergåuppeller ner.dettaharvisatsiggeväldigtbrautdelningochharenväldigthögsäkerhet (Smailovic, Grcar, Lavrac, & Znidarsic, 2013).Detfinnsfleraolika tillvägagångssättförattutvinnarelevantinformationfrånolikatextermeni dettafördjupningsarbetebeskrivsendastettfåtalavdempågrundav 13
avgränsningen.härharnaturallanguageprocessingbeskrivitsochinomnlp finnsfleraolikatyperavalgoritmersomkanappliceraspåsa.imodellensom jagbyggttilldettaarbeteharjaganväntbagdofdwordmodellenmedpositivaoch negativaord,dettaärintedetmestoptimalaellersofistikeradesystemetmen återigenpågrundavavgränsningenochminrelativtbegränsadekunskapom Pythonvardetmestlogiskasystemetatttesta. 6.1!Avslutande!ord! IdettafördjupningsarbeteomSentimentAnalysisharjagfåttsamlainochläsa enmängdolikaartiklarförattskaffamigenöverblickomvaddetärförnågot. JagvissteintemycketomSAnärjagförstbörjademenundertidensomjaghållit påmedprojektetfåttenbättrebildöverhuraiochframföralltsafungeraroch ävenvaddetfinnsförotroligamöjlighetermeddetta.medhjälpavdetidigare kursernaprogrammering,lingvistikochspråkvetenskapligdatabehandling kunnatbyggadeolikascriptensomjaghartagitmedidettaprojekt.jagharäven fåttläsapåväldigtmycketomsqlddatabaserochhurnltkdmodulenfungerari python.detharvaritettväldigtgivandefördjupningsarbeteochdetskabli spännandeattsehurframtidenserutinomsa.jagharunderarbetethittaten radolikasaverktygsomfinnstillgängligtpåolikainternetsidor.dessaverktyg kangöraalltifrånattbestämmapolaritetenienfilmrecensiontillaktierdärde verktygensomanalyseraraktierävenjämförpolaritetenisocialamediermot huraktiekursengårochmankandärseattpolariteten,omdenärpositiv,ide socialamediernaliggeroftaststegetföreenkursuppgång. 14
Referenser! Bird,S.,Klein,E.,&Loper,E.(2009).Natural$Language$Processing$with$Python. OReillyMedia. Feldman,R.(2013).TechniquesandApplicationsforSentimentAnalysis. Communications$of$the$ACM,$56(4),82D89. Hu,M.,&Liu,B.(2004).MiningandSummarizingCustomerReviews. Proceedings$of$National$Conference$on$Artificial$Intelligience.Chicago:University ofillinois. http://en.wikipedia.org/wiki/twitter.(u.d.).hämtatfrånwikipedia: http://en.wikipedia.org/wiki/twitter#formatden07012014 Kelly,R.(2009).Twitter$Study$Reveals$Interesting$Results$About$Usage.San Antonio:PearAnalytics. Lunden,I.(den30072012).Analyst:$Twitter$Passed$500M$Users$In$June$2012,$ 140M$Of$Them$In$US;$Jakarta$ Biggest$Tweeting $City.HämtatfrånTechCrunch: http://techcrunch.com/2012/07/30/analystdtwitterdpassedd500mdusersdind juned2012d140mdofdthemdindusdjakartadbiggestdtweetingdcity/den07012014 Liu,B.(2010).SentimentAnalysis:AMultiDFacetedProblem.IEEE$Intelligent$ Systems. Smailovic,J.,Grcar,M.,Lavrac,N.,&Znidarsic,M.(2013).PredictiveSentiment AnalysisofTweets:AStockMarketApplication.iJ.Smailovic,M.Grcar,N.Lavrac, &M.Znidarsic,HumanSComputer$Interaction$and$Knowledge$Discovery$In$ Complex,$Unstructured,$Big$Data(ss.77D88).Maribor:SpringerBerlinHeidelberg. Russel,S.J.,&Norvig,P.(2010).Artificial$Intelligence:$A$Modern$Approach(Vol. 3).NewJersey:Pearson. Roesslein,J.(2009).tweepy.Hämtatfråntweepydocumentation: http://pythonhosted.org/tweepy/html/den03012014 TwitterInc.(2014).Discover$Twitter.HämtatfrånTwitter: https://discover.twitter.comden07012014 Taplin,J.(den28082012).SentimentAnalysis:AreyouListening?Jonathan$ Taplin;$Director,$Annenberg$Innovation$Lab$University$of$Southern$California. HämtatfrånYoutube:http://www.youtube.com/watch?v=YGlhCCwYVh4. 15