10 bedste steder at besøge i Wales\nWales deler stor historie med resten af Storbritannien, men landets hårde skønhed og dets indbyggers åbne natur gør det til et særligt unikt rejsemål. For første gangs besøgende er den mest oplagte forskel mellem Wales og de andre lande i Det Forenede Kongerige det tungeformede walesiske sprog. Mens alle taler engelsk, er en del af det sjovt at besøge Wales, at lære nogle få sætninger af et af de ældste sprog i Europa. Udover sin keltiske kultur er landet også berømt for det store antal imponerende slotte. Wales naturskønne bjerge, dale og kystlinjer er lige så fortryllende, og ingen besøg i Wales er komplet uden en lang tramp gennem en af sine fantastiske nationalparker. Et overblik over de bedste steder at besøge i Wales :\nAberystwyth er kendt af lokalbefolkningen som "Aber", og er en historisk universitetsby beliggende på Wales vestkyst. Med 7.000 studerende, der går i skole i Aberystwyth hvert år, er det ikke overraskende, at byen også er et populært feriemål for unge som det fremgår af byens mere end 50 pubber. Strandpromenaden har charmerende victoriansk arkitektur med en bred promenade, hvor gæsterne kan sidde og nyde solen. På toppen af en af de omkringliggende bakker er resterne af en massiv jernalderborg. Resterne af det første normandiske slot bygget i Wales kan også findes i Aberystwyth.\nBeliggende i det nordlige Wales, er byen Caernarfon mest kendt for sit slott fra det 13. århundrede, som betragtes som en af de bedst bevarede fæstninger i hele Wales. Selvom slottet blev bygget som et kongeligt palads samt et militært højborg for Edward I, har de indre bygninger og lejligheder alle forsvundet. De defensive mordhuller, porte, portcullises, tårne og vægge overlever imidlertid, at de giver besøgende en klar forståelse af, hvilke længder engelen måtte tage for at holde off waliserne. King Edward's søn blev født i Caernarfon og hedder Prinsen af Wales, og det nordøstlige tårn viser nu Prins of Wales-udstillingen.\nHay-on-Wye er en lille by på floden Wye, meget tæt på den engelske grænse og inden for grænserne af Brecon Beacons National Park. National Book Town, med mindst to dusin boghandlere, er Hay-on-Wye nok mest kendt som placeringen af en prestigefyldt årlig Hay Festival, sponsoreret af Guardian avisen. Festivalen udtalte i 1988 og trækker i dag 80.000 mennesker årligt for at diskutere for at diskutere kunsten med kendte forfattere, filosoffer og andre kunstnere.\nBeliggende i byen St. David's i Pembrokeshire amt, er St. David's Cathedral et smukt eksempel på religiøs arkitektur i middelalderen. Skueshelgen i Wales, St. David var en walisisk biskop af den katolske kirke i det 6. århundrede og blev begravet i områdets oprindelige struktur. Byggeri til den eksisterende katedral blev påbegyndt i 1180'erne ved brug af lilla farvet sandsten. Nu er en del af kirken Wales, den normandiske katedral huser mange skatte, herunder 800-årige biskop stabsforgyldte med guld, 13. århundrede sølvkalker og en 1620-udgave af den walisiske bibel.\nBrecon Beacons er opkaldt efter paret af næsten 900 meter høje bakker beliggende i hjertet af parken. Det har et landskab af bølgende bakker, klippefyldte dale, græsarealer og vandmarker. Parken er præget af arkæologiske rester af Wales 'lange historie også, herunder neolithic cairns, Bronze Age stående sten, Iron Age forter og smuldrende Norman slotte. Parken indeholder også mange underjordiske huler og smukke vandfald, herunder Sgwd yr Eira vandfald, hvor besøgende kan gå bag et vandtæppe. Nationalparkcentret, der ligger nær byen Brecon, er et godt sted at starte udforskninger af parken.\n5. Cardiff hvor man skal bo\nBeliggende i det sydøstlige hjørne af Wales blev Cardiff landets hovedstad i 1955 og lancerede en række projekter for at forbedre den gamle havneby kort tid efter. Millenniums sportsstadion og det futuristiske Wales Millennium Center for scenekunst har nu gået til Cardiff Castle som byens stjernede attraktioner. Slottet fra det 11. århundrede giver gæsterne en god introduktion til den walisiske historie, og en klatring til toppen af ?? keepen byder på en fantastisk udsigt over byen og det omkringliggende landskab. Med sine udstillinger af romersk keramik og guldsmykker, der daterer sig tilbage til bronzealderen, er National Museum Cardiff også en must-see attraktion.\n4. Conwy hvor man skal bo\nConwy er en gammel by med en rig historie, og ligger i North Wales på Conwy Estuary nær Snowdonia Skovene. Den mørke-stenede fæstning Conwy Castle dominerer bybilledet. Bygget i 1280'erne af Edward I forbliver slottets mammote gardinvægge og otte runde tårne intakte og imponerende. Udsigt fra slottet giver besøgende en fugleperspektiv over slottets store sal og af mure og tårne, der omgiver middelalderbyen. Med sine byzantinske processionskors og 15. århundredes skærmbilleder er kirken St. Marys også et besøg værd.\nHjem til den eneste kystnationale nationalpark i Wales, omfatter Pembrokeshire Amt landets sydvestlige halvø og offshore øer. Besøgt af mere end fire millioner mennesker hvert år, er nationalparken bedst kendt for Pembrokeshire Coast Path, som vinder 300 km (186 miles) langs klippetoppene med udsigt over den skurvebredde. Området er berømt for dets dyreliv også. Tætninger bask på klipperne nedenfor og hundredvis af fuglearter svæve overhead. For adrenalinske junkier er muligheder for vind, kite og konventionel surfing vældig langs regionens mange strande, og der er hyggelige fiskerbyer og gamle slotte at udforske.\n2. Llandudno hvor man skal bo\nLlandudno ligger mellem kalkstenhovedlandene Great Orme og Little Orme i det nordlige Wales, og er landets største badeby og er nok den mest charmerende. Llandudno blev bygget i 1950'erne af den velhavende Mostyn-familie og har alle de attributter, som velhavende victorianer søgte efter i en sommerferie, herunder en promenade strækket langs byens nordlige strand med en 700 meter lang båd, der går ind i bugten ved slutningen. Bygget i 1902 klatrer Great Orme Tramway til 200 meter (680 fod) topmødet af hovedlandet, hvor besøgende kan sætte på deres hårde hatte til en selvstyret tur på en gammel kobbermine.\nBjergene i Snowdonia National Park i Nord Wales er et af de mest populære steder at besøge i Wales. Få af Snowdonia er toppe øverst 900 meter, men deres stejle skovklædte skråninger giver dem en øget følelse af drama. De giver også en fantastisk kulisse til parkens flodmundinger, søer, floder, skifer miner og landsbyer. Vandreture er en populær aktivitet i Snowdonia, og der er neolithiske gravkæder og romerske ruiner at udforske i parken også. En cog jernbane tager besøgende til toppen af Snowdon, parkens navnebror og højeste top.


Amazon hæver prisen på Amazon Prime i USA Dette betyder, at Amazon Prime-abonnenter, som betaler årligt, vil se prisstigningen fra $ 99 / år til $ 119 / år.\nAmazon hæver prisen på Amazon Prime i USA Dette betyder, at Amazon Prime-abonnenter, som betaler årligt, vil se prisstigningen fra $ 99 / år til $ 119 / år. Det er nok at sige, at denne nyhed ikke er gået for godt sammen med Amazon Prime-abonnenterne.\nAmazon Prime er Amazons ess i hullet. Prime klumper en masse fordele i sammen til en pris. Og antallet af Amazon Prime-fordele 7 Nye Amazon Prime-fordele, du ikke vidste om 7 nye Amazon Prime-fordele, du ikke vidste om Du behøver ikke Prime til at drage fordel af Amazon. Men Amazon Prime kommer med et par mindre kendte fordele, du måske ikke har prøvet endnu. Læs mere vokser hele tiden. Problemet er som Amazon tilføjer flere fordele til Prime sine fortjenstmargener falder.\nMo 'Fordele, Mo' Money\nUnder Amazons seneste indtjeningsopkald, der så selskabet annoncerer en stigning i nettoresultatet i de første tre måneder af 2018, meddelte CFO Brian Olsavsky, at prisen på et årligt Amazon Prime-abonnement steg fra $ 99 til $ 119.\nIfølge Amazon vil nye Prime-abonnenter begynde at betale mere den 11. maj 2018. Eksisterende abonnenter betaler den nye pris, når de fornyer deres Prime-abonnement efter 16. juni. Abonnenter, der betaler månedligt, begyndte at betale mere i januar 2018.\nAmazon indtjening mere end dobbelt og prisen på Prime går op. pic.twitter.com/olvCeuRmXQ\n- Andrew Reiner (@Andrew_Reiner) 26. april 2018\nFor at være retfærdig har det været fire år siden Amazon sidste gang hævede prisen på et årligt Prime-abonnement. Det var da, i 2014, sprang prisen fra $ 79 / år til $ 99 / år. Og i de fire år siden har Amazon tilføjet en række nye fordele til Prime.\nMens dette forklarer prisstigningen, er det usandsynligt, at de vil tilfredsstille de Amazon Prime-abonnenter, der ikke gør brug af alle de fordele, der følger med et Prime-abonnement. Hvis du kun har Prime til den gratis forsendelse, så vil denne prisstigning skade.\nEr det tid til Prime pakker?\nAmazon bør overveje at indføre forskellige niveauer af Prime abonnementer. Den grundlæggende pakke vil kun indeholde gratis forsendelse, standardpakken vil tilføje Prime Video og Prime Music, mens guldpakken vil tilføje Twitch Prime og lignende.\nMedmindre og indtil det sker, har du et binært valg mellem at acceptere prisstigningen eller annullere dit abonnement. Fordi mens Amazon Prime er fantastisk, er det ikke det allerførste og det sidste. Især hvis du bruger de tip, der er inkluderet i vores Amazon shopping guide. Amazon Shopping Guide Amazon Shopping Guide Denne gratis Amazon shopping guide beskriver alt, hvad du behøver at vide for at få det bedste ud af Amazon og sikre de bedste tilbud. Læs mere .


Ekspeditionsmedarbejder til Herning hos Sparekassen Thy\nEkspeditionsmedarbejder til Sparekassen Thy i Herning\nEr du garant for den gode kundeoplevelse, struktureret, engageret og effektiv?\nHar du lyst til et job i et pengeinstitut med stort fokus på trivsel og arbejdsglæde.\nVi søger lige nu en ekspeditionsmedarbejder på 37 timer til Sparekassen Thy i Herning.\nDu bliver en del af en afdeling på 11 medarbejdere, der hver dag ønsker at levere den bedste kundeoplevelse. Afdelingen består udover afdelingsdirektøren af 5 privatrådgivere, 2 erhvervsrådgivere, 1 finanstrainee, 2 ekspeditionsmedarbejdere inkl. dig.\nJobbet som producent omfatter bl.a. etablering af låne- og kreditaftaler samt etablering af sikkerheder. Derudover oprettelse af nye kunder, beregninger for rådgiverne samt lettere kontrolopgaver. Servicering af kundehenvendelser pr. telefon og i afdelingen er ligeledes en af dine opgaver, herunder også rådgivning og hjælp til kunder vedr. selvbetjeningsløsninger, fx kort, netbank m.m.\nDu er struktureret, engageret og effektiv\nDu kan slet ikke lade være med at give den gode kundeoplevelse\nDu er venlig, smilende og imødekommende\nDu har et godt humør og bidrager til godt kollegaskab\nDu er kompetent til dit arbejde og ønsker løbende at udvikle dig\nHar du erfaring fra et pengeinstitut er det klart en fordel, men dog ikke et krav\nHar du tidligere erfaring fra et pengeinstitut vil det være en fordel, men det er ikke et krav.\nDeadline for ansøgning: 31. juli 2022.\nVi vil løbende holde ansættelsessamtaler, så skynd dig endelig til tasterne.\nØnsker du at høre mere om stillingen, er du velkommen til at kontakte afdelingsdirektør Peter Bækkelund Rasmussen på tlf.: 40141217.\nØnsker du at høre mere om Sparekassen Thy som arbejdsplads, er du velkommen til at kontakte HR-chef Hanne Bro Odde på tlf.: 99195063.\nSusanne Vigsø Møller


Elias Fund; Oversigt; Mission statement; Historie\nJanuar 4, 2017 Svend Huneke E 0 45\nDen Elias Fonden er en nonprofit organisation finansiering samfundsudvikling og uddannelse for zimbabwiske ungdom.\nDen Elias Fonden begyndte med en simpel formål - at hjælpe én mand hæve sine børn. I dag EF bemyndiger zimbabwiske samfund til at bygge en lovende fremtid for deres børn gennem fattigdomsbekæmpelse. Som en græsrods organisation, Elias Fonden fokuserer på indfødte empowerment at afhjælpe fattigdommen fra bottom-up.\nDen Elias Fondens mission er: "Spredning håb og muligheder i Zimbabwe gennem indfødte empowerment, og engagerende den nuværende ungdomskultur i USA ved at tilskynde en positiv identitet centreret om social retfærdighed."\nElias Sithole, en gartner i Zimbabwe, mødtes i 1994 amerikanske sangskriver Chad Urmston. Elias delte sin drøm om en dag at hjælpe sine tre sønner med en universitetsuddannelse. Denne drøm blev sat sang og blev en populær stykke med Urmston band Dispatch. Efter bandet brød op i 2004 blev brødrene Eric og Scott Byington nærmede sig for at fundraise for en lille initiativ til at sponsorere Elias 'sønner uddannelse.\nEn succesfuld fundraiser var vært i sommeren 2005 med penge nok bliver rejst for alle tre af Elias 'sønner. Eric og Scott, sammen med et team af fire andre, tog til Zimbabwe for at gå finde Elias. Mens de var væk, over 1.200 unge mennesker underskrevet op til at gøre noget mere for Zimbabwe, selvom intet mere havde været planlagt eller offentliggjort. Det blev klart for Eric og Scott, at hvad der var begyndt som en enkelt fundraiser for en mands familie kunne blive til en fuldtidsansat organisation for Zimbabwes udvikling.\nOg så med fan-base af Dispatch til støtte, Eric og Scott vendte deres forhold til Elias ind i organisationen for Elias Fonden er i dag. EF er nu opererer i tre specifikke samfund støtte til oprindelige folks organisationer med fokus på uddannelse, fødevarehjælp og mikro-tilskud. Fra den ene mands drøm er sprunget en bevægelse spreder håb og muligheder i Zimbabwe.\nForrige artikel Brampton Transit\nNæste artikel Krystal healing


Using Multiple Feature Selection Methods in Ensembles - PDF\nUsing Multiple Feature Selection Methods in Ensembles\nDownload "Using Multiple Feature Selection Methods in Ensembles"\n1 Anvendelse af multiple featureudvælgelsesmetoder i ensembles. Using Multiple Feature Selection Methods in Ensembles Mikkel Fischer Christensen ( xxxx) & Martin Løbner-Olesen ( xxxx) Vejleder: Ole Fogh Semester: E2005 IT-Universitetet, København 28. september 2005\n2 Forord Dette projekt blev inspireret af et forberedende projekt, der blev gennemført i efteråret Projektets formål var at lære om neurale netværk, men ændrede senere fokus til tekstklassificering. Vi udviklede et system til klassificering af tekst dokumenter bestående af featureudvælgelsesmetoden Information Gain kombineret med et neuralt netværk. System kunne klassificere s 98,5% korrekt på LingSpam  som værende enten legitime s eller spam. Men projektet endte med at rejse flere spørgsmål end det besvarede: Hvad gik galt, når et dokument blev fejlkategoriseret? Var det udvælgelsen af de rigtige ord eller algoritmen til at lære, der begrænsede os fra at opnå endnu bedre resultater? Kunne der laves en kombination af featureudvælgelses metoder og klassificeringsmetoder med bedre resultat? Hvad er forskellen imellem featureudvælgelsesmetoderne? Spørgsmålene blev i speciale beskrivelsen formuleret som følgende: 1. Sammenligning af forskellige featureudvælgelsesmetoders effektivitet og analyse af deres indbyrdes overlap Sammenligning af forskellige klassificeringsmetoders effektivitet og analyse af deres indbyrdes overlap. 3. Kan vi udfra ovenstående resultater konstruere en bedre klassificeringsløsning ved at kombinere metoderne med baggrund i deres forskellighed? 4. Eksemplificeret med , kan inkorporering af domænespecifikke features forbedre klassificeringsevnen så det kan anvendes i et produktionsmiljø?. 5. Hvordan kan vi sørge for at et tekstklassificeringsværktøj kan forblive up-to-date og dermed vedligeholde sin evne til at klassificere? Efter specialets påbegyndelse er spørgsmålene blevet omprioriteret og omformuleret til at være mere præcise. Dette betyder at de tre første spørgsmål er blevet samlet til: Hvorvidt de indbyrdes forskelle mellem featureudvælgelsesmetoder og klassificeringsmetoder kan lede til bedre resultater. Derudover er det at udforske specifikke features og vedligeholdelsesmetoder trådt i baggrunden til fordel for at undersøge effekten af at benytte stopord. specifikke features benyttes i stort omfang af rigtige produktionsspamfiltre, inklusive opensource systemer, og istedet for at afprøve og validere deres regler, eller komme frem til en enkelt ny, har vi prioriteret at afprøve effekten af stopord, hvilket er lidt mere generelt uanset tekstdomæne. Abstract By using multiple feature selection methods for inducing variance in ensembles it is possible to obtain ensemble results higher than any single ensemble member. By pairing the elements in a set of feature selection methods: IG, CHI, DF, OR and RDZ with the elements in a set of classifiers: NB, SVM, knn and NN we obtain 20 possible combinations. The 20 combinations was used as candidates for possible membership in ensembles with a limit of members k = 2, 3 for stacking with SVM, and k = 3, 5 for majority voting. By searching all possible combinations of candidates it is shown that combinations exist which yield higher accuracy than any of the candidates. A measure for stacking and for majority voting are invented with the purpose of predicting the optimal combination.the measure for predicting the optimal combination on stacking fails mainly being too complex a measure. The more simple measure for majority decision is capable of finding near optimal combinations of candidates. The best predicted performance by majority voting for LingSpam corpus was 99,62% and the highest existing accuracy was 99,73%. For SpamAssassin the best predicted accuracy was 98,61 and the highest existing was 98,66%. This is comparable to the best known accuracies 99,65% for LingSpam  and 98,83% for SpamAssassin . A key point for the results is the usage of mainly stock methods and neither domain specific features or tuning have been applied. The non performance specific result is that feature selection methods can be used as an alternative to bootstrapping data for creating different biased ensemble members. Lastly the effect on accuracy when using stopwords have been investigated. The results showed that the effect on accuracy was method and domain specific, and that it should be checked whether it is beneficial to use stopwords. 1 Med overlap forstås i hvilken grad mængden af valgte features er de samme og er det de samme dokumenter der fejlklassificeres af de forskellige metoder.\n3 Indhold 1 Introduktion Indledning Rapportens opbygning Automatiseret Tekstklassificering - Introduktion Information Retrieval Korpus Træning Klassificering Resultater Afgrænsning Featureudvælgelse Features Udvælgelse Filtre Stopord Stemming Lavfrekvens filter Højfrekvens filter Featureudvælgelsesmetoder Information Gain Chi-square Document Frequency Odds-Ratio Reciprocal Distance Z-score Sammenfatning Klassificering Forberedelse af data Term vægtning Normalisering Klassificering Generalisering Støj Klassificeringsmetoder Naive Bayes k-nn Neurale Netværk Support Vector Machines Sammenfatning Ensembles Bagging Boosting Stacking Feature Randomization Beslutningsproces Diversitet Sammenfatning\n4 INDHOLD INDHOLD 4 Eksperimenter Statistiske Mål Opsplitning af data Kontingenstabel Data Krydsvalidering Spørgsmål Procedure Resultatbehandling Spørgsmål Forskellen mellem KA er Udbytte af kombination Procedure Spørgsmål Indbyrdes forskel mellem fejlklassificeringer Spørgsmål Spørgsmål Testkonfiguration FU-metoder KL-metoder Sammenfatning Software Krav specifikation Krav Værktøjer og importeret software Værktøjer Importeret software Udvikling Moduler Forbedringer Generelt Resultater Spørgsmål Flertalsafgørelse Stacking Bidrag fra kombination KA er i kombinationsløsningen Sammenfatning Spørgsmål Stacking Flertalsafgørelse Spørgsmål LingSpam SpamAssassin Ohsumed Ohsumed Overlap af features Sammenfatning Spørgsmål KA er baseret på RDZ Kombination med RDZ Sammenfatning Spørgsmål Document Frequency Chi Square Information Gain Odds Ratio Sammenfatning for stopord Mikkel Fischer Christensen & Martin Løbner-Olesen 2\n5 INDHOLD INDHOLD 6.6 Sammenfatning Diskussion Featureudvælgelsesmetoder og Ensembles Effekten af stopordslister Resultatbehandling Konklusion 99 9 Perspektivering Flertalsafgørelse Stopord Appendices 107 A CD-rom 107 B Software filer 108 B.1 Eksempel på xml-fil B.2 Eksempel på batch-fil C Stopordsliste 111 Ordliste Forkortelse FU-metode KL-metode KA Ensemble TV TD T Korpus (flertal: Korpora) Forklaring Featureudvælgelsesmetode Klassificeringsmetode Klassificeringsapparat - består af én FU-metoden og én KL-metode Kombination af flere KA er Træningssæt Test forskel sæt, valideringssæt for ensembles Testsæt Samling af prækategoriserede dokumenter Ordene klassificering og kategorisering, bruges med den samme betydning. Ligeledes med ordene term og feature. Mikkel Fischer Christensen & Martin Løbner-Olesen 3\n6 Kapitel 1 Introduktion 1.1 Indledning Automatisk kategorisering af dokumenter udgør i dag et væsentligt element i vores hverdag. Hver gang søgemaskinen Google benyttes til at finde information, udnyttes det at Google har indekseret og klassificeret store dele af internettets hjemmesider i emner. Hver gang der læses er der irritation over mængden af spam s, der slap igennem spamfilteret. Hver dag bliver millioner af dokumenter scannet, registreret og kategoriseret af virksomheders postmodtagelse. Hver dag bliver regninger betalt for sent fordi de blev kategoriseret forkert. Hver gang et dokument bliver kategoriseret forkert, er konsekvensen tab af tid, penge, og information. Behovet for automatisk at kunne klassificere dokumenter er stigende og effektiviteten er helt central. Automatisk klassificering af dokumenter er konceptuelt ikke anderledes end hvordan et menneske ville gøre det. En person med viden om kategorierne, læser hele eller dele af et dokument og tildeler det en kategori. For at en computer kan erstatte en persons klassificering, skal computeren tildeles viden om kategorierne. Denne viden tilvejebringes ved hjælp af en mængde træningsdokumenter, hvilket er dokumenter der allerede er kategoriserede. Udfra træningsdokumenternes egenskaber såsom størrelse, ord, og formattering, kan computeren lære kategoriernes særlige kendetegn. Et nyt dokument kan herefter klassificeres af computeren ved at udføre en sammenligning af det nye dokuments egenskaber med kategoriernes særlige kendetegn. Indenfor tekstklassificering findes forskellige metoder til at vælge de bedste egenskaber fra en mængde dokumenter. Denne type metoder kaldes featureudvælgelsesmetoder. Der er også forskellige metoder hvormed en computer kan lære sammenhænge mellem de valgte egenskaber og kategorier. Denne type metoder kaldes klassificeringsmetoder. En kombination af én featureudvælgelsesmetode og én klassificeringsmetode kan efter endt træning, klassificere dokumenter som ligner træningsdokumenterne i deres respektive kategorier. Kombinationen siges at have dannet en hypotese om et domæne. Der findes også forskellige kombinationsmetoder såkaldte ensembles hvor et ensemblemedlem består af en featureudvælgelsesmetode og en klassificeringsmetode. Kombination med ensemblemedlemmer giver mulighed for at udnytte, at de hver især har dannet en hypotese om domænet. Det er så op til den specifikke kombinationsmetode, at udnytte forskellene mellem hypoteserne til bedre at kunne klassificere domænet. For at et ensemble skal kunne klassificere bedre end de enkelte ensemblemedlemmer, skal disse klassificere forskelligt. Spørgsmålet er om forskellige featureudvælgelsesmetoder kan bidrage med den forskellighed blandt ensemblemedlemmer, som skal resultere i bedre klassificering? Til at afprøve dette benyttes ensemblemetoderne stacking og flertalsafgørelse, med et fast antal medlemmer. Medlemmerne udvælges blandt mængden af ensemblekandidater, hvor kandidaterne er de mulige par af featureudvælgelsesmetoder og klassificeringsmetoder. Dette er en ny tilgang, da eksisterende ensemblemetoder typisk benytter samme featureudvælgelsesmetode for alle ensemblemedlemmer. Dette leder frem til følgende spørgsmål: 1. Eksisterer der kombinationer af ensemblekandidater som klassificerer bedre end den bedste ensemblekandidat? Dette skal vise om der eksisterer kombinationer, bestående af en delmængde af de 4\n7 Kapitel 1. Introduktion 1.2. Rapportens opbygning mulige kandidater, der ved stacking eller flertalsafgørelse opnår bedre klassificering end alle kandidaternes. 2. Kan den optimale kombination predikteres? At vide at der eksisterer gode kombinationer er interessant, men det er mindst ligeså vigtigt om den optimale kombinationen kan udpeges og med hvilken præcision. 3. Hvad betyder forskellene mellem featureudvælgelsesmetoderne og klassificeringsmetoderne for resultaterne? Ved at sammenligne featureudvælgelsesmetoderne og klassificeringsmetoderne indbyrdes, analyseres hvilke metoder der bidrager til størst forskel, og om sammensætningen af de bedste ensembles kan forklares derved. 4. Hvilken effekt har tilførslen af flere ensemblekandidater baseret på en anderledes featureudvælgelsesmetode? Derudover vil vi prøve at belyse effekten af stopord. Stopord er egenskaber, mere præcist ord, som erfaringsmæssigt [42, 40, 45] ikke at bidrage til klassificering. Denne type ord udelukkes ofte helt fra at blive valgt som egenskaber. Stopord er blandt andet hyppigt anvendte ord som den, det, der, altså ord der bruges ofte uanset kategori. Teknikken har været anvendt siden 1975, hvor C.J. van Rijsbergen i sin bog Information Retrieval  præsenterer brugen af stopordslister. Andre [35, 12] insisterer modsat på, at stopord kan indeholde værdifuld information og anvender derfor ikke teknikken. En af årsagerne til at benytte stopordslister, har været optimering af hastigheden for preprocessering og hukommelsesforbrug, og dette har ikke længere samme store betydning som for 25 år siden. Derudover er der kommet featureudvælgelsesmetoder der er bedre til at udvælge de egenskaber, der rent faktisk bidrager. Ses der bort fra optimeringshensyn, er det interessant at vide om konsekvensen ved at benytte stopord er positiv eller negativ for klassificeringen. 5. Hvilken effekt har anvendelsen af stopordslister? For ikke at konkludere på et for snævert grundlag, undersøges effekten med forskellige typer featureudvælgelsesog klassificeringsmetoder. 1.2 Rapportens opbygning Resten af indledningen indeholder en kort introduktion til emnet tekstklassificering og en afgrænsning. Kapitel 2, Featureudvælgelse, omhandler den leksikalske analyse og featureudvælgelse. Den leksikalske analyse består af omdannelse af dokumenter til rå features og samt anvendelsen af filtre såsom stopord. Derefter beskrives de featureudvælgelsesmetoder vi benytter og der afrundes med en diskussion af forskellen mellem dem. Kapitel 3, Klassificering, handler om klassificeringsmetoder, hvor 4 udvalgte metoder gennemgås og ensembles introduceres overordnet. I kapitel 4, Eksperimenter, præsenteres spørgsmålene og eventuelle underspørgsmål uddybes. Derudover beskrives eventuelle optimeringer og indstillinger for featureudvælgelses- og klassificeringsmetoderne. Kapitel 5, Software, indeholder en beskrivelse software anvendt og udviklet i forbindelse med projektet. Derudover beskrives forløbet, anvendelsen, og forbedringer for udviklet software. Kapitel 6 Resultater indeholder resultaterne af eksperimenterne i samme struktur som spørgsmålene stillet i indledningen. I kapitel 7 Diskussion opsummeres resultaterne og de relateres til forskellige artikler. Endelig er kapitel 8 Konklusion og 9 Perspektivering. 1.3 Automatiseret Tekstklassificering - Introduktion Information Retrieval Tekstklassificering er en delmængde af forskningsområdet Information Retrieval (IR) og er overordnet en blanding af Data Mining (DM), som handler om at finde og forstå sammenhænge i information, og Machine Learning (ML). Indenfor tekstklassificering er de varme emner på nuværende tidspunkt: Feedback, semantik, og distribuerede løsninger. Feedback betyder at ved hjælp af brugerens og systemets interaktion skal IR systemer eksempelvis kunne vælge en optimal strategi. Derudover er der øget fokus på beregningsmæssige dyre metoder såsom Latent Semantic Analysis (LSA) der ved hjælp af distribuerede beregninger og hurtige maskiner er ved at blive genoptaget. Sidst er der fokus på at inddrage bedre sprogforståelse og kontekstafhængige features ind i klassificeringen altså et øget fokus på det semantiske plan. Dette projekt kan indplaceres blandt de beregningstunge eksperimenter som ikke før har været Mikkel Fischer Christensen & Martin Løbner-Olesen 5\n8 Kapitel 1. Introduktion 1.3. Automatiseret Tekstklassificering - Introduktion praktisk muligt at afprøve. Information Retrieval har en Special Interest Group of Information Retrieval eller kort SIGIR og en hjemmeside hvor konferencer og andre planlagte events annonceres Korpus Automatisk dokumentklassificering tager oftest udgangspunkt i en samling på forhånd kategoriserede dokumenter. Denne samling af dokumenter kaldes et korpus. Typisk opdeles et korpus i to sæt: Et træningssæt (T V ) og et testsæt(t ). På baggrund af sættet T V, trænes, tunes og valideres klassificeringsmetoden indtil det punkt, hvor det ikke forventes at kunne klassificere bedre. Herefter klassificeres dokumenterne i T og det måles hvor godt der rent faktisk klassificeres på T. Det der søges maksimeret er generaliseringsevnen som er udtryk for hvornår metoden er bedst til at klassificere dokumenter, som ligner dem i T V. Det er meget vigtigt at holde de to mængder af dokumenter helt adskilt for ikke at lække information eller viden om testsættet. Det overordnede flow i tekstklassificering er illustreret i figur 1.1. Der er to separate processor nemlig træning og klassificering Korpus T TV Filtre FUmatcher KL- Kontingenstabel metode #tp #fp #fn #tn 1. FUmetode Figur 1.1: Flow i dokumentklassificering. 1.) På baggrund af alle dokumenter i T V udvælger en FU-metode (featureudvælgelsesmetode) de bedste features, og gemmer dem i FU-matcher. 2.) KLmetoden (klassificeringsmetoden) trænes med vektorer, som skabes ved at matche dokumenter fra T V op imod FU-matcheren. 3.) Sættet T klassificeres af KL-metoden optælles i en kontingenstabel Træning Under træning benyttes kun dokumenter fra træningssættet T V. Sættet T V kan opdeles yderligere efter behov. Inden træningen starter, udføres den leksikalske analyse på alle dokumenter. Dette betyder at indholdet af dokumenterne splittes op i en mængde termer per dokument. I tekstklassificering benyttes både ordet term og feature med samme mening. Herefter filtreres termerne eventuelt, hvilket eksempelvis kan være at fjerne eventuelle stopord. Derefter registreres alle termers frekvens per kategori i en Bagof-Words (BoW). Information om termernes frekvens anvendes af featureudvælgelsesmetoderne. Udfra informationen om termerne i BoW vælger featureudvælgelsesmetoderne et fastsat antal termer der skal bruges. Der kan eventuelt være indsat filtre som eksempelvis udelader høj- eller lavfrekvente termer fra at blive valgt som features. Der startes nu forfra med dokumenterne i træningssættet. De sammenlignes alle med termerne som featureudvælgelsesmetoden valgte. På baggrund af sammenfaldet udformes en vektor for hvert dokument som kan benyttes til at træne en klassificeringsmetode. Dette er vist som FU-matcher i fig 1.1. Vektorerne vægtes og normaliseres typisk inden træning af klassificeringsmetoden. Klassificeringsmetoden præsenteres herefter for alle dokumentvektorerne og den korrekte kategori af dokumentet. Træningen medfører Mikkel Fischer Christensen & Martin Løbner-Olesen 6\n9 Kapitel 1. Introduktion 1.4. Afgrænsning at klassificeringsmetoden danner en hypotese om sammenhængen mellem features og kategorier, således at den nu er i stand til at kategorisere nye dokumenter Klassificering Klassificering af dokumenter minder meget om at træne klassificeringsmetoden. På samme måde som i træningen, bringes et dokument på vektorform. Vektoren klassificeres dernæst af den trænede klassificeringsmetode, hvilket betyder at dokumentet tildeles en kategori Resultater Ved at klassificere alle dokumenterne i testsættet T kan resultaterne af klassificering opgøres en kontingenstabel med antallet af dokumenter der blev kategoriseret henholdsvis korrekt og forkert, se Table 1.1. Category set Expert judgments c i YES NO Classifier YES tp i fp i Judgment NO fn i tn i Tabel 1.1: Kontingenstabel for kategori c i. tp (true positive) og tn (true negative) er korrekte klassificeringer i henholdsvis c i og ikke c i. fp (false positive) og fn (false negative) er ukorrekt klassificeringer i henholdsvis c i og ikke c i Efter Sebastiani  Kontingenstabellens søjler repræsenterer den rigtige klassificering og rækkerne er klassificeringsmetodens resultat. Diagonalen (tp og tn) er de rigtige beslutninger og alle andre indgange er forkerte beslutninger. Tabel 1.1 illustrerer en kontingenstabel når der klassificeres med to kategorier, og på baggrund af tallene i kontingenstabellen kan effektivitetsmålene opgøres som vist i tabel 1.2. Effektivitets mål Formel Beskrivelse accuracy error precision recall F1 tp+tn tp+fp+fn+tn fp+fn tp+fp+fn+tn tp tp+fp tp tp+fn 2 error precision error+precision Procent korrekte beslutninger. Procent forkerte beslutninger. Procent korrekt klassificerede dokumenter. Procent dokumenter klassificeret. Det harmoniske gennemsnit af precision og recall. Tabel 1.2: Effektivitetsmål udregnes på baggrund af en kontingenstabel. Effektivitetsmålene er relativt til den kategori der betragtes. Hvis kategorien spam er udgangspunkt, vil tp i tabellen være antallet af dokumenter korrekt klassificeret som spam, og de beregnede mål benævnes spam-precision, spam-recall osv. I rapporten bruges kun accuracy og error som er udtryk for procenten af korrekte og ukorrekte beslutninger ialt. Dette begrundes ved at vi undersøger forbedring i klassificering ved kombination af featureudvælgelsesmetoder og derfor ikke har specifikt fokus på specifikke kategorier. 1.4 Afgrænsning For at besvare de 5 stillede spørgsmål, skal der bruges et antal featureudvælgelses- og klassificeringsmetoder, herefter kaldet FU-metoder og KL-metoder. Udfra artiklerne [11, 40, 46] som hver især sammenligner og gennemgår et antal metoder, er der udvalgt henholdsvis fire FU-metoder og fire KL-metoder. De valgte metoder er hver især betragtet som gode metoder som indbyrdes adskiller sig i virkemåde. De valgte FU-metoder er følgende: CHI-Square (CHI), Document Frequency (DF), Information Gain (IG), og Odds Ratio (OR). De valgte KL-metoder er: Neuralt Netværk (NN), Naive Bayes (NB), k-nearest Neighbour (knn), og Support Vector Machines (SVM). Alle de nævnte metoder indgår i state of the art klassificeringsløsninger. Til besvarelsen af spørgsmål 4 anvendes en ny FU-metode Reciprocal Distance Z-score (RDZ). Som ensemblemetoder bruges flertalsafgørelse og stacking. Derudover benyttes et antal korpora, hvilket er samlinger af på forhånd kategoriserede dokumenter. De udvalgte korpora er SpamAssassin , LingSpam , og fire tilfældigt valgte kategorier af Ohsumed . Mikkel Fischer Christensen & Martin Løbner-Olesen 7\n10 Kapitel 1. Introduktion 1.4. Afgrænsning SpamAssassin og LingSpam er hyppigt anvendte korpora, hvilket gør det muligt at lave direkte sammenligning med andre resultater. Ohsumed er en samling abstracts af lægejournaler over en tidsperiode af 5 år. Ohsumed benyttes fordi det er radikalt anderledes og sværere at klassificere end de to førstnævnte. For at simplificere opgaven, afgrænses den til kun at omhandle klassificering af dokumenter af to kategorier. Dette kan begrundes med ved at et klassificeringsproblem med mange kategorier altid kan opsplittes til flere opgaver med to kategorier. Derfor kan viden om klassificering mellem to kategorier overføres til klassificeringsopgaver med flere kategorier. Mikkel Fischer Christensen & Martin Løbner-Olesen 8\n11 Kapitel 2 Featureudvælgelse Dette kapitel handler om featureudvælgelse, som er en fri oversættelse fra engelsk af Feature Selection eller Term Selection. Derudover beskrives de hyppigst anvendte filtre som påvirker featureudvælgelse. Direkte oversat fra engelsk, betyder feature egenskab. Kun fantasien sætter grænser for hvad en egenskaber kan være. Det er dog oftest mest meningsfuldt at sørge for at features er sammenlignelige i de objekter det skal klassificeres. Derfor anvendes termer (ord og tegn) hyppigt som features indenfor dokumentklassificering. En egenskab i et dokument kunne godt være formateringen eller størrelsen, antallet af afsnit...osv. Men i dette kapitel og i resten af specialet er features afgrænset til at være termer altså ord og tegn, selvom begrebet feature anvendes menes term med mindre andet fremgår. Fabrizio Sebastiani  har været en stor inspiration til dette kapitel med sin meget brede gennemgang af emnet tekstklassificering. 2.1 Features Featureudvælgelse er hjørnestenen i tekstklassificering. Udvælges de forkerte features at klassificere på baggrund af, kan en klassificeringsmetode uanset hvor god den er, ikke opnå et godt resultat. Første skridt er således at sikre sig, at der udvælges de features som menes at være de bedste til at kategorisere. Denne opgave er featureudvælgelsesmetodens (FU-metodens) opgave. En FU-metode vurderer hver eneste feature og på baggrund af eksempelvis featurens frekvens og fordeling imellem kategorier, vælger FU-metoden de features der menes bedst at klassificere udfra. Dette gøres i praksis ved at en FU-metode tildeler hver feature en værdi og når alle features er blevet tildelt en værdi, vælges de højest rangerende features i det antal det er ønsket. Et konkret eksempel på en featureudvælgelsesmetode er Document Frequency, som udelukkende vælger features på basis af featurens frekvens i dokumenter. Dette betyder, at de bedste features for den metode er de mest forekommende ord. Dette er ikke nødvendigvis den mest hensigtsmæssige metode at vælge features på, men har vist sig at være effektiv i mange tilfælde. For at illustrere forskellen mellem gode og dårlige features, er der i Tabel 2.1 en simpel model som viser fordelingen af features i en mængde dokumenter i to forskellige kategorier. Eksemplet er gennemgående i hele dette kapitel, og det vil sige at for alle FU-metoder er der en tilsvarende tabel som viser hvilke features metoden foretrækker med henblik på at kunne klassificere eksemplets 4 dokumenter. Dette betyder at i dette kapitel benyttes eksemplet til at illustrere hvilke features en featureudvælgelsesmetode vælger udfra et træningssæt af dokumenter og til at illustrere hvad det betyder når de samme dokumenter klassificeres. Med udgangspunkt i Tabel 2.1, kan det eksempelvis være ideelt for en FU-metode at tildele feature b den højeste værdi, da den bidrager godt til adskillelse af de to kategorier X og Y. Hvis b er tilstede i et dokument tilhører dokumentet kategori X, og et fravær af b betyder at dokumentet tilhører kategori Y. Feature a og e kan også benyttes som features, da de bidrager noget til kategorisering. Endelig ønskes det at undgå c og d som features idet de på ingen måde bidrager til viden som kan adskille X og Y. Dette eksempel er under antagelse af, at features frekvens er indbyrdes uafhængige. 2.2 Udvælgelse Udvælgelse af features består af flere trin. For det første skal alle features tildeles en score i henhold til deres kategoriseringsevne. Dernæst skal alle features sorteres i henhold til denne værdi, for at de bed- 9\n12 Kapitel 2. Featureudvælgelse 2.3. Filtre Kvalitet Kategori X Kategori Y f(t) D 1 D 2 D 3 D 4 mellem a høj b b lav c c lav d d d d mellem e e e Tabel 2.1: Tabellen viser 4 dokumenter D 1... D 4 placeret i 2 kategorier X og Y. Hvert dokument indeholder et antal features a,..., e. Søjlen Kvalitet betegner den kvalitet som den pågældende feature har med hensyn til at adskille de to kategorier fra hinanden. Tabellen genbruges for alle FU-metoderne som eksempel på træningsdata. ste features til slut kan udvælges. Men hvor mange features skal der vælges? Det simple svar er at der skal vælges nok features til at flest mulige dokumenter kan klassificeres korrekt. Dette skal balanceres med klassificeringsmetoderne hvor det er vigtigt udfra optimeringshensyn at minimere antallet af valgte features mest muligt. De forskellige klassificeringsmetoder har nogle begrænsninger, eksempelvis lider neurale netværk og nearest neighbour af Curse of Dimensionality hvilket kan opsummeres til at når antallet af features stiger, stiger behovet mere end tilsvarende for træningsdata. Pointen er, at der helst skal vælges så få men gode features som muligt. De FU-metoder der behandles i dette kapitel anvender kun termer som features, og derfor startes der traditionelt med at opbygge en Bag of words (BoW), som repræsenterer alle de unikke termer fra mængden af dokumenter i et træningssæt sammen med information om frekvensen af termen per kategori. Det er så op til den enkelte FU-metode at vurdere kategoriseringsevnen for alle termer i træningssættet. Tages der udgangspunkt i eksemplet Figur 2.1, vil den resulterende BoW blive [a, b, c, d, e], hvor FU-metoden beregner en kategoriseringsværdi for alle termerne. Til dette eksempel er det ønskeligt at ende op med de 5 features i stil med [b, a, e, c, d], hvor de bedste features er placeret i starten af listen. Alle termer får således tildelt en kategoriseringsværdi, og på baggrund af værdien vælges et begrænset antal termer der skal benyttes som de repræsentative features for kategorierne. I 1997 undersøgte Yiming Yang og Jan O. Pedersen  hvilken indflydelse antallet af udvalgte features havde på det endelig resultat. De fastslog at den optimale mængde features der benyttes til at klassificere et korpus var for kendte FU-metoder som Information Gain og Chi Square på ca. 2% af de mulige termer ialt. Dette tal er med forbehold for domænespecifikke variationer og anvendelsen af diverse filtre. I 2003 fulgte George Forman  op på disse resultater, og viste at dette var gældende for andre FU-metoder heriblandt OR. Vælges flere features end de 2%, ville resultatet nærme sig resultatet for anvendelsen af alle features. Artiklen kommer også med en anden vigtig pointe, at der kan opnås bedre resultater ved at reducere antallet af features, end ved at bruge dem alle. 2.3 Filtre I introduktionen blev det beskrevet, at der ofte gøres brug af forskellige typer filtre inden featureudvælgelse. Filtrene har et fælles formål; nemlig at reducere antallet af kandidat features, ved enten at udelade dem helt eller ved at slå flere features sammen. Der er to formål med at anvende filtre. Det første hensyn er at reducere antallet af termer med henblik på reducere forbrug af hukommelse og antallet af features der skal regnes på. Det andet formål er at opnå bedre klassificering ved at fjerne de features som er støj. I dette afsnit beskrives de fire hyppigst anvendte filtre Stopord Stopordslister udgør typisk en manuel vedligeholdt mængde af ord eller features der udelukkes fra medtagelse af FU-metoderne. Indenfor dokumentkategorisering består en stopordsliste af de n mest anvendte ord i et sprog og andre ord som det erfaringsmæssigt vides ikke bidrager eller endda bidrager negativt til kategorisering af dokumenter. Stopordslisten anvendes under den leksikalske analyse af dokumenterne, hvor tokens der matcher et ord indeholdt i stopordslisten fjernes og dermed ikke kan vælges som feature. Mikkel Fischer Christensen & Martin Løbner-Olesen 10\n13 Kapitel 2. Featureudvælgelse 2.3. Filtre Typisk er stopord fyldeord såsom: [det, den, en, hvad, i, meget,...] altså ord som bruges uafhængigt af den specifikke kontekst. Blandt stopordene er ofte de samme ord, som er de hyppigst benyttede i et givet sprog. Frekvensen for de hyppigst anvendte ord følger Zipf s lov, som siger at frekvensen af de n mest brugte ord i naturlige sprog er omvendt proportionalt med n. Hvis de tre mest anvendte ord i dansk var [det, den, der] anvendes den 1/2 gang mindre end det, og der 1/3 mindre. Ophavsmanden til zipf s lov er George Kingsley Zipf, der var linguist fra Harvard og som observerede denne sammenhæng i blandt andet engelsk og kinesisk. Andre har observeret sammenhængen i anden kontekst, men Zipf har lagt navn til, når det drejer sig om ord og sprog. Argumenterne for stopord er at det øger hastigheden og forbedrer klassificering. Anvendelsen af stopordslister bidrager til højere hastighed, når en Bag-Of-Word konstrueres, samt når den statistiske analyse pågår. Årsagen til dette, er at frasortering af stopord reducerer mængden af tokens der skal efterbehandles af FU-metoderne. Mængden af tokens der kan reduceres er, hvis sproget er engelsk, ifølge George W. Hart  op til 50%. Artiklen  omhandler kryptografi og dekodning af krypterede engelske tekster. Hart skriver at udfra en liste af de 135 hyppigst anvendte engelsk-amerikanske ord, er sandsynligheden 50% for at et tilfældigt udvalgt ord i en sætning, er indeholdt i listen. Stopordslister kan udover at anvendes i dekryptering, anvendes udfra en effektivitets betragtning. Den anden årsag til at anvende stopordslister er, at ordene er dårlige features at adskille kategorier fra hinanden med. Dette er en konsekvens af, at de hyppigste anvendte ord ofte er hyppigt anvendt i alle de kategorier der klassificeres imellem. Det er omvendt ikke helt rigtigt at disse ord ikke altid kan bidrage til kategorisering, eksemplificeret ved dette citat fra en ukendt newsgroup: I will be impressed when my site that lists venture capital firms in illinois stops showing up when people query Google to find the capital of illinois (it s Springfield by the way). Citatet beskriver hvad forskellen kan være ved at inkludere to engelske stopord som of og in. Begrundelsen for ikke at anvende stopord er at de er besværlige at have med at gøre. Stopordslisterne er sprogspecifikke og ofte statiske lister af ord som skal vedligeholdes. Desuden er der mulighed for at frasortere gode features ved at benytte en stopordsliste i en kontekst, hvor ordene rent faktisk bidrager til at adskille kategorierne. Det sprogspecifikke betyder, at der skal laves en stopordsliste for eventuelle sprog der mødes i klassificeringssituationen. Vedligeholdelsen ligger i at sprogbrug ændrer sig over tid og derfor bør de opdateres med passende mellemrum. Dette sker ikke særlig tit, eksempelvis skriver Mark Sinka i artiklen . One of the most commonly used stoplists, for example, is that of Van Rijsbergen , which is now almost 30 years old. Fluctuations in word use over time, as well as the emergence of web-specific words (either as a bias in the arena for document analysis tasks, or in general usage anyway) both suggest a hypothesis that document analysis tasks could be better served by more up to date stoplists. Med dette menes, at de eksisterende stopordslister er forældede og bør opdateres til den nuværende sprogbrug. Sidst kan stopordslister anvendes i den forkerte kontekst, eksempelvis ved klassificering af i kategorierne ham og spam. Her er ordene i spam ofte permutererede eller forvanskede, der benyttes mange tegn, og der inkluderes ordbogsindhold og lange citater fra diverse kilder for at undgå genkendelse. I denne situation kan fraværet eller frekvensen af de normale stopord have en betydning for klassificeringen. Hvis der omvendt er mindre forskel imellem kategorierne (som der eksempelvis ikke er på det medicinske korpus Ohsumed), kan det meget vel vise sig at stopordslister er fornuftige at bruge, fordi her benyttes de samme vendinger i begge kategorier. Stopord er mængden af ord som ikke menes at bidrage til klassificering. Dette kan omformuleres til at stopord kan opfattes som kendte feature-repræsentanter for støj. FU-metoder vælger selv de bedste features blandt mange tusinde, og blandt disse findes andet støj end den støj som stopordslisterne repræsenterer. Spørgsmålet er om stopord overhovedet gør en forskel, idet metoderne måske allerede er i stand til at undgå støj. Alternativer til manuelt vedligeholdte lister af stopord er at benytte eksempelvis højfrekvensfilter, det vil sige termer med frekvens højere end en fastsat grænse frasorteres. Dette betyder at de mest hyppige termer udelukkes fra medtagelse, og forventes at have et vist sammenfald med stopordene. Mikkel Fischer Christensen & Martin Løbner-Olesen 11\n14 Kapitel 2. Featureudvælgelse 2.4. Featureudvælgelsesmetoder Stemming Stemming er en teknik som udfra lingvistiske regler reducerer ord til deres grundform. Dette betyder at flertal og forskellige bøjninger af ord reduceres til den mindste form ordet kan antage. Stemming kan benyttes i mange varianter og ved de mest udbyggede varianter af stemming kendes alle ord i alle bøjninger og stemming medfører den sprogligt korrekte korteste form. Der findes også billigere løsninger som mere mekanisk udfra et regelsæt fjerner suffixes og prefixes på ord. Ved sidstnævnte mekaniske metode er det vigtigt at vide, at ved anvendelse af stemming er den resulterende grundstamme ikke nødvendigvis sprogligt korrekt eller menneskeligt læselig. Formålet med stemming er at reducere mængden af ord til fordel for elektronisk databehandling. M.F. Porter er kendt for sin implementering af stemming, delvis fordi der eksisterer en offentlig tilgængelig implementering. Porter s stemming fungerer ved at et ord repræsenteres som en streng af konsonanter og vokaler, som så reduceres ved hjælp af match-reduce regler. Stemming skulle gøre det muligt at reducere mængden af ord betydeligt, og M.F. Porter nævner i sin artikel, at på engelsk gav det en ordreduktion på ca. 40% og en større præcision i klassificeringen som dog ikke er kvantificeret. Det at reducere et ord er sprogspecifikt, så for at anvende stemming rigtigt er det nødvendigt at identificere sproget i et dokument før stemming udføres. I forprojektet fandt vi, at anvendelsen af Porter s stemming forbedrede F1 resultatet med ca. 1% (94% til 95%), men det var udelukkende på baggrund af et korpus nemlig LingSpam. Andre såsom Ellen Riloff  begrunder at stemming kan være direkte skadeligt i nogen sammenhænge eksemplificeret ved søgning i dokumenter omhandlende terrorisme. Sebastiani  nøjes med at konstatere, at der er fordele og ulemper ved at benytte stemming. På denne baggrund har undlader vi at anvende stemming Lavfrekvens filter Denne type filter er meget simpel og benyttes stort set altid. Teknikken er at ord med en frekvens eller forekomst mindre end en defineret grænseværdi frasorteres. Sebastiani  anbefaler at ord som forekommer mindre end 3-5 gange ikke medtages. Forman  frasorterer ord, når det gælder FU-metoden BNS, som forekommer globalt set færre end 2-3 gange Højfrekvens filter I et højfrekvens filter frasorteres ord med frekvens større end p. George Forman  benytter filteret som et alternativ til stopordslister, hvor andre benytter begge filtre samtidig. Valget af p synes noget tilfældigt, og betydningen af dette er derfor noget uklar. Det er ikke lykkedes at finde nogen præcise retningslinier for valget af p. Mark Sanderson  har benyttet 7, 5%, Forman  benytter 25% og i forbindelse med forprojektet anvendte vi selv 75% alle med godt resultat. Springet fra 7, 5% til 75% er stort, men det vides ikke hvor mange features det reelt frasorteres som konsekvens af filteret. De FUmetoder som beskrives benytter features frekvenser i kategorierne til tildelingen af værdi. De metoder som påvirkes af filtrene er dem som vægter frekvens højere end forskel, hvilket betyder at dette filter har betydning for DF og CHI. 2.4 Featureudvælgelsesmetoder Med henblik på at anvende flere forskellige FU-metoder i kombination med hinanden, er det ønskeligt at metoderne er effektive, samtidig med at de udvælger forskellige features. Vi har udvalgt 5 FU-metoder, som vi i de følgende afsnit vil gennemgå Information Gain I 1948 publicerede C. E. Shannon artiklen A mathematical theory of communication , som viste hvorledes kendskabet til sandsynlighederne for udfald, kunne repræsenteres i bits. Således vil en hændelse, som kan forudsiges med høj sandsynlighed, præsenteres i få bits, og omvendt kræves der mange bits, hvis sandsynligheden er lille. Sandsynligheden for udfaldet v i er P (v i ), og entropien af denne hændelse  kan beskrives som funktion af I, hvor I(P (v 1 ),..., P (v n )) = n P (v i ) log 2 P (v i ) (2.1) Entropi er graden af ubestemthed, hvilket følgende terning eksempel viser. Et terningkast har 6 udfald v 1,..., v 6 hvor det gælder at P (v i ) = 1 6, iɛ[1; 6]. Indsættelse i (2.1) giver, at der skal 2, 58 bits til at beskrive de 6 udfald. i=1 Mikkel Fischer Christensen & Martin Løbner-Olesen 12\n15 Kapitel 2. Featureudvælgelse 2.4. Featureudvælgelsesmetoder på 1 10 I( 1 6, 1 6, 1 6, 1 6, 1 6, ) = 1 6 log 1 2 = 2, 58bits (2.2) 6 i=1 Ændres sandsynlighederne for terningen, så sandsynligheden for v 1 er 1 2 og v 2,..., v 6 har sandsynlighed, kan de 6 udfald beskrives med 2, 16 bits (2.3). I( 1 2, 1 10, 1 10, 1 10, 1 10, 1 10 ) = 1 2 log i= log 2 1 = 2, 16bits (2.3) 10 Dette betyder, at jo mindre sandsynlighederne er for at hændelser indtræffer, desto sværere er det at modellere hændelserne, og derfor vil et kendskab til den faktiske udfald have en stor værdi. I tilfældet med terningen er værdien af kendskabet til den faktiske udfald størst for den almindelige terning. Informations Gain Vendes blikket mod dokumentkategorisering, vil et dokument bestå af mange ord (features) som hver især kan bidrage til kategorisering af dokumentet. Målet er at finde netop de features som adskiller dokumentet mest muligt fra dokumenter, der tilhører andre kategorier. For m forskellige kategorier c, defineres Information Gain for termen t  som IG(t) = m P (c i ) log P (c i ) (2.4) i=1 + P (t) + P ( t) m P (c i t) log P (c i t) (2.5) i=1 m P (c i t) log P (c i t) (2.6) i=1 Leddet på højre side i (2.4) svarer til informationsleddet (2.1) og vil aldrig bidrage negativt til summen IG(t). Leddene (2.5) og (2.6) ser på sandsynligheden for termen t i forhold til dens tilstedeværelse i de m kategorier. Disse bidrag vil altid være negative eller 0. Jo mindre en term bidrager til adskillelse, jo mere negative vil disse to led blive. En absolut adskillelse vil derimod medføre at begge led bliver 0. I (2.5) svarer P (c i t) log P (c i t) til at bestemme det bidrag af information, som det giver at kende sandsynligheden for termen t i kategorien i. Dette skal ses i forhold til sandsynligheden for t, og hele leddet (2.5) er nu det antal af bits der, givet t, mangler for at beskrive kategoriseringen korrekt mellem de i kategorier. Ligeledes beregnes samme værdi i (2.6) givet at termen t ikke er tilstede ( t) i kategori i. Dette leder frem til at leddene (2.5) og (2.6) angiver den fejl (i bit sproget: manglende information), som anvendelsen af termen t giver til kategorisering . Eksempel Til at illustrere IG, vises eksemplet fra Tabel 2.1 med IGs tildeling af score. IG(t) Kategori X Kategori Y (2.4) (2.5) (2.6) IG(t) D 1 D 2 D 3 D , 00 0, 69 0, 31 a 1 +0, 00 +0, 00 1, 00 b b 1 0, 50 0, 50 0, 00 c c 1 1, 00 +0, 00 0, 00 d d d d 1 0, 69 +0, 00 0, 31 e e e Det fremgår af tabellen at b er den term, som bidrager mest til adskillelse, hvorimod term a og e kun i mindre grad hjælper til at klassificere dokumenterne korrekt. Termerne c og d bidrager slet ikke til adskillelse, og tildeles derfor værdien 0. IG og tekstklassificering Inden for feltet tekstklassificering er IG en af de mest anvendte metoder til featureudvælgelse . Dette skyldes primært at IG er en af de metoder der har bidraget til de bedste resultater [46, 11, 40]. Mikkel Fischer Christensen & Martin Løbner-Olesen 13\n16 Kapitel 2. Featureudvælgelse 2.4. Featureudvælgelsesmetoder Chi-square Statistisk mål Chi-square (χ 2 ) er et statistisk mål som anvendes til at vurdere hvor stor en afvigelse et udfald er fra det forventede, samt til at vurdere uafhængigheden mellem data. Den generelle formel for Chi-square er: χ 2 (O E)2 = Σ (2.7) E hvor O er det observerede resultat og E er det forventede. Det ses, at hvis det observerede er det samme eller nær det forventede vil χ 2 gå mod nul. Det at der divideres med E er en skalerings faktor så χ 2 kan sammenlignes over forskellige populationer. Forskellen mellem at anvende χ 2 til at vurdere afvigelse fra det forventede og til at vurdere uafhængighed ligger i udformningen af E. Når χ 2 anvendes til at vurdere uafhængighed, fremsættes der en nulhypotese om at der er uafhængighed og E er så den forventede fordeling under antagelse af uafhængighed. Chi-square og kategorisering Når χ 2 anvendes til featureudvælgelse i dokumentklassificering anvendes den til at vurdere godheden af en feature. Den observerede fordeling O sættes til frekvensen af dokumenter hørende til kategori c i som indeholder feature t k og frekvensen af dokumenter som ikke indeholder feature t k, men som heller ikke tilhører c i. Den forventede fordeling E sættes til at være frekvensen af dokumenter som indeholder feature t k men som ikke hører til kategori c i og frekvensen af dokumenter som ikke tilhører c i, men som indeholder feature t k. Sætter vi fordelingen af dokumenter i kategorien c i og feature t k i en kontingenstabel som illustreret nedenfor svarer det til at forventet O er AD og E er CB. t k t k c i A B c i C D Så nul-hypotesen E, er at frekvensen af dokumenter i henholdsvis c i og c i ikke ændres af t k s tilstedeværelse eller fravær. Eller at der er den samme modsatte frekvens som det observerede. Hvis hypotesen er sand, går forskellen mellem AD og CB mod 0 og positiv ellers. Chi-square som den anvendes til featureudvælgelse i tekstklassificering som beskrevet af  og . E = C (A + B + C + D) B (A + B + C + D) = P (t k, c i ) P (t k, c i ) O = A (A + B + C + D) D (A + B + C + D) = P (t k c i ) P (t k, c i ) T r = (A + B + C + D) χ 2 (t k, c i ) = T r (O E)2 E Der er dog en forskel som ikke fremgår ovenfor i forhold til hvordan  og  formulerer chi-square, nemlig at de ikke benytter samme E i tæller som i nævner. Formen af nævneren som de anvender er E nævner = P (t k ) P (c i ) P (t k ) P (c i ). Dette har dog ingen betydning da det som tidligere nævnt er en skaleringsfaktor. Når der i praksis vælges features, beregnes χ 2 (t) værdien for alle features i hver kategori. Det endelige valg af features gøres ved at vælge de n features med højeste χ 2 (t). Der er to varianter af hvordan værdien beregnes nemlig udfra maksimal værdi eller gennemsnit. χ 2 avg(t) er en gennemsnits betragtning hvor den endelige score beregnes som vægtet gennemsnit af kategoriernes størrelse og featurens χ 2 bidrag for hver kategori. χ 2 max(t) er den grådige metode hvor features tildeles den største χ 2 (t) der opnås i en kategori. (2.8) χ 2 avg(t) = P (c i ) χ 2 (t, c i ) (2.9) χ 2 max(t) = max χ 2 (t, c i ) (2.10) Mikkel Fischer Christensen & Martin Løbner-Olesen 14\n17 Kapitel 2. Featureudvælgelse 2.4. Featureudvælgelsesmetoder Eksempel Vi ser igen på tabel 2.1 for at illustrere chi-square. I nedenstående eksempel anvendes χ 2 avg(t), hvor division med E er udeladt og ganget med T r. Dette betyder dog ikke noget da de i eksemplet udelukkende skalerer resultatet, samt at det undgås at udføre nuldivision. 2.9 Kategori X Kategori Y χ 2 (t) D 1 D 2 D 3 D a 1 b b 0 c c 0 d d d d 1 4 e e e Det fremgår af tabellen at b er den term, som bidrager mest til adskillelse, hvorimod term a og e kun i mindre grad kan hjælpe til at klassificere dokumenterne korrekt. χ 2 og tekstkategorisering For χ 2 forholder det sig på samme måde som med IG. Anvendelsen af χ 2 har resulteret i de stort set samme resultater, som var tilfældet med IG. Flere artikler peger på, at der er en stærk korrelation imellem de to metoder   Document Frequency Document Frequency (DF) er nok den mest simple featureudvælgelsesmetode. Definitionen  er ganske enkel: DF (t) = dokumenter, som indeholder t mindst én gang dokumenter (2.11) Ved anvendelsen af DF tages der ikke højde for kategorier. Den normale fremgangsmåde er blot at vælge de features t, som har resulteret i de største værdi for DF (t). Inden for tekstklassificering er det en almindelig anvendt teknik at gøre bruge af en stopordsliste til at frasortere de ord som er for almindelige til at kunne bidrage til dokumentklassificering. Eksempel Kategori X Kategori Y DF (t) D 1 D 2 D 3 D 4 0, 25 a 0, 50 b b 0, 50 c c 1 d d d d 0, 75 e e e Eksemplet viser tydeligt at anvendelsen af DF kan være forbundet med visse problemer. DF rangerer featuren d højest, men denne term kan aldrig bidrage til at afgøre hvorvidt et dokument befinder sig i kategori X eller Y. Ydermere skelnes der ikke imellem feature b og c, hvor b netop beskriver den ene kategori, og c ingen information giver. Endelig burde a og e måske sige præcis lige meget om hvilken kategori vi befinder os i, men tilstedeværelsen af flere e er ændrer billedet. Dokument Frequency og Tekstkategorisering Ovenstående eksempel kan gøre det svært at se mening i at anvende DF som FU-metode. Men undersøgelser har mange gange vist at DF er en udmærket metode til at få reduceret featurerummet betydeligt uden tab af nævneværdig præcision . I 1997 publicere Yiming Yang et al. en artikel  hvor forskellige FU metoder sammenlignes. Her konkluderes det, at der er en stærk korrelation mellem de termer som DF udvælger, set i forhold til IG og CHI. Resultatet for at bruge DF som FU metode, bliver derfor næsten lige så godt, som hvis IG og CHI var anvendt. Da DF samtidig er en hurtig metode til at udvælge features, bruges den stadigvæk hyppigt, skønt andre metoder er bevist som værende bedre. Mikkel Fischer Christensen & Martin Løbner-Olesen 15\n18 Kapitel 2. Featureudvælgelse 2.4. Featureudvælgelsesmetoder Odds-Ratio Odds For at forstå Odds ratio må betydningen af et odds afklares. Oddset for at en hændelse sker er nært beslægtet med sandsynligheden for hændelsen. Sandsynligheden for hændelsen a defineres som a divideret a med antallet af alle hændelser, dvs a selv og alle andre udfald b, hvilket giver a+b. Odds defineres derimod som hændelsen a divideret med alle andre hændelser b, dvs a b. Forskellen kan tydeligt illustreres ved at tænke på en normal mønt, som med 50% sandsynlighed giver krone. Så hvor sandsynligheden for krone (trivielt) bliver 1 2 = 1 (2.12) 2 er oddset for at få krone = 1 (2.13) Hvor P (t c) formelt er defineret som sandsynligheden for hændelsen t givet c, er odds så defineret som odds(t c) = P (t c) 1 P (t c) (2.14) Klausulen c inddrages her, da det inden for tekstkategoriseringen er målet at få vægtet feature t i forhold til en given kategori c. Odds ratio Odds Ratio (OR) defineres som forholdet mellem oddset for feature t, henholdsvis givet og ikke givet kategori c: OR(t, c) = ln odds(t c) odds(t c) (2.15) Typisk anvendes den naturlige logaritme til OR(t, c) for at opnå at værdierne skal kunne udfylde hele intervallet ], [, samt at deres fordeling opnår en approksimeret normalfordeling . Så hvor OR = 1 normalt betyder at der ingen afhængighed er mellem termer og kategorier, er det for 2.15 OR = 0 at dét gør sig gældende, da ln(1) = 0. Ved at indsætte (2.14) i (2.15)  får vi OR(t, c) = ln = ln P (t c) 1 P (t c) P (t c) 1 P (t c) P (t c) (1 P (t c)) (1 P (t c)) P (t c) (2.16) En mere simpel udgave af Odds Ratio kan findes ved at kigge på en kontingens tabel. t t c tp fn c fp tn Her skal man blot bestemme fordelingen af t og t i de to mulige kategorier c og c, og så kan OR(t, c) beskrives som OR(t, c) = ln tp fn fp tn = ln tp tn (2.17) fp fn Det skal bemærkes at på samme måde som med (2.16) risikeres en nuldivision eller skulle tage logaritmen til 0. Det er derfor ofte benyttet at erstatte ethvert nul-element (tp, tn, fp, fn) med 1 . Der anvendes den absolutte værdi af (2.17) da det er størrelsen af forholdet der er væsentligt, ikke hvilken kategori forholdet er i. Mikkel Fischer Christensen & Martin Løbner-Olesen 16\n19 Kapitel 2. Featureudvælgelse 2.4. Featureudvælgelsesmetoder Eksempel I eksemplet får vi brug for at erstatte 0-elementer med 1 i udregningerne for alle termerne bortset fra termen c, som har tp = tn = fp = fn = 1. Udregningerne er gjort på baggrund af at kategori X er c, og Y er c Kategori X Kategori Y OR(t, c) D 1 D 2 D 3 D 4 0, 69 a 1, 39 b b 0 c c 0 d d d d 0, 69 e e e Tabellen viser de beregnes OR-værdier udfra (2.17). OR scorer højest for termen b, da den er mest afhængig af kategorien. Feature a og e er lige gode features, idet deres afstand til 0 er den samme. Derfor bør det vælges at lade de højeste numeriske værdier af OR(t, c) repræsentere de pågældende features i en situation med præcis to kategorier. Odds ratio og tekstkategorisering OR er en ofte anvendt featureudvælgelsesmetode. Især sammensat med Naive Bayes (NB) som klassificeringsmetode, har OR bidraget til gode resultater indenfor tekstkategorisering. Dunja Mladenić konkluderede i 1999 at OR og Naive Bayes giver bedre resultater, end Naive Bayes sammen med bl.a. IG, CHI og DF . Ligeledes indikerede Fabrizio Sebastiani i 2002 at OR er en bedre featureudvælgelsesmetode, end CHI og IG  Reciprocal Distance Z-score RDZ er resultatet af vores fejlfortolkning af Bi Normal Separation (BNS) , som præsenteres sidst i dette afsnit. RDZ er en FU-metode der foretrækker lavfrekvente helst unikke features fra kategorierne. Udtrykket for RDZ er vist nedenfor, samt kontingenstabel som viser dokumenternes inddeling per kategori og efter henholdsvis tilstedeværelse og fravær af term t. t t c tp fn c fp tn Udfra tilstedeværelsen og fraværet for alle termer per kategori beregnes standardafvigelsen for hver kategori som kvadratroden af variansen: StdAfv c = StdAfv c = t=n t=1 ( tp tp+fn )2 n t=n t=1 ( fp fp+tn )2 n Herefter kan afstanden udtrykt i standardafvigelser i forhold til gennemsnit som er sat til 0 beregnes udfra kontingenstabellen for alle termer t som: tp Z c ( tp + fn ) = tp tp Z c ( tp + fn ) = fp tp+fn StdAfv c fp+tn StdAfv c RDZ beregnes så som forskellen i den reciprokke afstand i standardafvigelser for hver kategori: RDZ = 1 1 tp Z c ( (tp+fn) ) fp Z c ( (fp+tn) ) (2.18) Mikkel Fischer Christensen & Martin Løbner-Olesen 17\n20 Kapitel 2. Featureudvælgelse 2.4. Featureudvælgelsesmetoder For at løse problemer med nul division for den reciprokke Z substitueres med 0, 0005 når Z c eller Z c er nul. Konsekvensen er, at hvis en feature ikke er tilstede i en af kategorierne vægtes dette højest. RDZ metoden vælger features lidt forskelligt alt afhængig af standardafvigelsen for hver kategori. I nedenstående tabel er illustreret hvordan der vælges features udfra forholdet mellem standardafvigelserne for kategorierne c og c. Eksempel StdAfv c < StdAfv c Features med lav frekvens fra c i og høj frekvens fra c i StdAfv c = StdAfv c Features med lav frekvens i den ene kategori og høj i den anden. StdAfv c > StdAfv c Features med høj frekvens fra c i og lav frekvens fra c i For at illustrere hvordan RDZ vælger features, er RDZ score udregnet over en fiktiv fordeling af dokumenter over en mængde features. Std c = 0, 5477 Std c = 1 Kategori X Kategori Y RDZ(t) D 1 D 2 D 3 D , 17 a 1999, 09 b b 0, 82 c c 0, 41 d d d d 1, 32 e e e Det fremgår af tabellen at b og a er de termer, som bidrager mest til adskillelse, idet de er fraværende i den ene kategori og tilstede i den anden. Term e bidrager derimod mindre til at klassificere dokumenterne korrekt. Bi Normal Separation BNS er en nyere FU-metode udviklet af George Forman . BNS tildeler hver feature en værdi udfra forholdet mellem tilstedeværelsen og fraværet af features over kategorierne. Udtrykket for BNS er vist nedenfor, samt kontingenstabel som viser dokumenternes inddeling per kategori og efter henholdsvis tilstedeværelse og fravær af term t. t t c tp fn c fp tn BNS(t k ) = F 1 tp ( (tp + fp) ) F 1 fn ( (fn + tn) ) (2.19) Hvor F 1 er den inverse standard kumulative normal distribution. En standard normalfordelings (Figur 2.1) areal kan beregnes ved hjælp af integralet F (x), som ikke kan bestemmes analytisk men kan tilnærmes. F (x) (Figur 2.2), hvor x er standardafvigelser, tilnærmer arealet til venstre for x i en standard normalfordeling for X <= x. Arealet tolkes som sandsynligheden for alle udfald X <= x. F 1 (p) (Figur 2.3) er den inverse af F (x) og tilnærmer således standardafvigelsen givet en sandsynlighed. Georg Forman s BNS score benytter således forholdet for en terms optræden og fravær i kategorierne til at opnå de tilhørende z-scorer i en standard normalfordeling. Hvis ratioen for en features eksistens eller fravær i en kategori er nul, substitueres ratioen med 0, 0005 for at undgå F 1 (0, 0) =. En unik feature i en kategori medfører at ratioen for tilstedeværelse af featuren bliver 1, 0 og dermed er F 1 (1, 0) =. Forman beskriver ikke hvordan en ratio på 1, 0 håndteres, men en fornuftig substitutionsværdi kunne være 0, Mikkel Fischer Christensen & Martin Løbner-Olesen 18\n21 Kapitel 2. Featureudvælgelse 2.4. Featureudvælgelsesmetoder Figur 2.1: Standard normal distribution Figur 2.2: Standard kumulativ normal distribution (F ) Figur 2.4: Figurer fra  Figur 2.3: Inverse standard kumulativ normal distribution (F 1 ) Sammenfatning De 5 FU-metoder er forskellige i deres måde at beregne en features score på. Dette svarer til at de har forskellige principper for hvad der er gode features. Der er for hver FU-metode illustreret hvordan en aktuel beregning af score udføres og den endelige prioritering er eksemplificeret. Men det gennemgående eksempel er for simpelt til rigtigt at illustrere forskellen imellem dem. Derfor er principperne for udvælgelse kort beskrevet med ord nedenfor, så det er tydeligt, at de forskellige. CHI vælger features som udviser størst uafhængighed mellem kategorier og foretrækker højfrekvente features der udviser forskel fremfor mellem- og lav-frekvente. Overordnet har metoden lighed med Document Frequency og Information Gain. Metoden er ikke indifferent overfor størrelsesforskelle. DF vælger udelukkende højfrekvente features, startende med den mest frekvente. DF er meget primitiv og forventes at have meget lidt tilfælles med de andre metoder, dog kan der være sammenfald med CHI og IG. Metoden er meget følsom overfor størrelsesforskel mellem kategorier. Hvis der er stor forskel på størrelsen vil der udelukkende blive valgt features fra den største kategori. IG vælger features udfra hvor lidt information den taber ved at vælge en feature. Information Gain vælger features som udviser størst forskel i frekvens mellem kategorierne, men forskellen betyder mere end frekvensen af featuren. IG har lighed med CHI men foretrækker i større grad forskel fremfor størrelse, omend størrelse kan have betydning. IG er følsom overfor størrelsen af kategorierne, idet hvis en kategori er lavfrekvent er information om den kategori forholdsmæssigt mere værdifuld end information om andre kategorier. OR vælger features udfra forholdet mellem frekvensen i hver kategori. Dette betyder at for OR er det kun forholdet der tæller, at en feature har høj frekvens har ingen betydning. OR er dermed insensitiv overfor forskel i størrelsen af kategorierne. RDZ tildeler højest værdi til features som har lavest mulig frekvens for den ene kategori og afviger mest muligt fra gennemsnittet i den anden. Det at en feature er lavfrekvent er vigtigere end selve forskellen i den anden kategori, men den laveste - højeste kombination foretrækkes. Metoden er indifferent over for størrelsesforskelle imellem kategorier og forventes at vælge features meget forskelligt fra resten af metoderne. Forskellen metoderne imellem kan illustreres ved at liste dem: DF-CHI-IG-OR. Den intuitive forståelse er, at en metode har mest tilfældes med sin nabo i listen. Således har DF fællesskab med CHI, og OR har mest til fælles med IG. De metoder der er valgt har indbyrdes overlap, men er samtidig meget forskellige. Forskellen skulle gerne vise, at det at kombinere dem med stacking og flertalsbeslutning kan give et godt resultat. En god kombination vil formentlig bestå af OR, som er ufølsom overfor størrelsesforskelle imellem kategorier, og en eller flere af de andre. Hvad angår stopordslister forventes det at DF og CHI vil være mest følsomme, idet de prioriterer høj frekvens højt, og i mindre grad de tre andre metoder. Andre forskelle metoderne imellem er, hvordan de påvirkes af teknikker som at beskære features under eller over henholdsvis en fastsat minimum og maksimum frekvens. Ved hjælp af den type beskæring kan FU-metoderne optimeres, men da den type beskæring er domænespecifik (korpus) fokuseres der ikke på den type optimeringer selvom det kan betyde stor forskel i effektivitet. Mikkel Fischer Christensen & Martin Løbner-Olesen 19\n22 Kapitel 2. Featureudvælgelse 2.4. Featureudvælgelsesmetoder En pointe ved de valgte FU-metoder er, at de alle tildeler værdi til den enkelte term uafhængigt af andre termer og dermed antages implicit uafhængighed. Dette er formentlig ikke korrekt, men er en praktisk antagelse som også benyttes hyppigt indenfor KL-metoder. Der findes andre metoder eksempelvis LSA (Latent Semantisk Analyse), der er istand til at gruppere features med samme semantiske værdi. Et eksempel på dette kan illustreres i forhold til det eksempel der er fokuseret på for alle metoderne. I eksemplerne er b den bedste term at kategorisere efter. Men uden b er det stadig muligt at kategorisere alle dokumenterne korrekt, se Figur 2.2. Kvalitet Kategori X Kategori Y f(t) D 1 D 2 D 3 D 4 mellem a mellem e e e Tabel 2.2: Et udsnit af eksemplet fra Figur 2.1. Er e tilstede uden a, tilhører dokumentet kategori Y. I alle andre tilfælde tilhører dokumentet kategori X Med kendskab til term a og e s tilstedeværelse i et dokument, kan kategorien bestemmes. Det er KLmetodens opgave på baggrund af de udvalgte features at udnytte sammenhænge som Figur 2.2 illustrerer. Det der kan være et problem er at der ingen garanti er for at de features som FU-metoderne udvælger er de bedste til at beskrive dokumenternes kategori. Jævnfør 2.2 så scorer hverken a eller e højest, da de tildeles værdi enkeltvis. Dermed kan det risikeres en feature ikke udvælges på trods af deres kombinerede evne til at kategorisere D 1... D 4 er perfekt. Det skal bemærkes at ikke alle KL-metoder kan håndtere et dokument der ingen features har som D 2. Med hensyn til støj, begrænser vi os til udelukkende at benytte en Van Rijsbergen inspireret stopordsliste til at måle effekten på accuracy for de forskellige kombinationer af klassificeringsmetoder og featureudvælgelsesmetoder. Listen  er hentet fra University of Glasgow - The Information Retrieval Group s hjemmeside, hvor Van Rijsbergens på nuværende tidspunkt er professor. Vi benytter ikke højfrekvens filtre idet det altid vil kunne argumenteres for og imod et specifikt valg af grænseværdi. Listen af termer benyttes som kendte repræsentanter for støj og på den vis kan de benyttes til at måle featureudvælgelsesmetodernes følsomhed overfor støj. Mikkel Fischer Christensen & Martin Løbner-Olesen 20\n23 Kapitel 3 Klassificering Dette kapitel handler om klassificering og den rolle som klassificeringsmetoderne (KL-metoder) har ved kategorisering af dokumenter (eller andet). Først beskrives hvordan det rå tekstdokument bringes på en form, som KL-metoder kan arbejde med, det vil sige vektorisering. Dernæst behandles klassificering generelt og de udvalgte KL-metoder præsenteres. Endelig sluttes kapitlet med at se på metoder til at kombinere metoderne på, også kaldet ensembles. 3.1 Forberedelse af data I forrige kapitel og introduktionen blev det beskrevet, hvordan en liste af n termer bliver valgt fra et korpus og hvordan nye dokumenter matches med de valgte termer. Ved hjælp af listen af termer, kan der konstrueres en repræsentation af ethvert dokument i form af en vektor ved at matche termer i den udvalgte liste med termerne i et dokument. Sebastiani  beskriver at det i denne proces bør sikres at dokumentvektoren d j = w 1j,..., w nj, overholder at w kj [0; 1] for n features. Denne forberedelse er primært til fordel for KL-metoderne, som arbejder bedst med værdier i intervallet [0; 1]. I Term vægtning beskrives hvorledes enkelte termer vægtes, hvorefter der i Normalisering ses på hvorledes vægtene kan skaleres til intervallet [0; 1] Term vægtning I processen med at bringe dokumentet på vektorform, hvor hver indgang i vektoren svarer til en feature, skal det overvejes om indgangene i vektoren skal repræsentere eksistens af en feature eller om indgangene skal være mere nuanceret. Indenfor tekstklassificering anvendes ofte binær vægting, altså om en feature er tilstede eller TFIDF -termvægtning. Binær Den binære tilgang er en boolsk repræsentation, som sætter w k = 1, hvis termer eksisterer mindst én gang i dokumentet, ellers er w k = 0. Denne metode vil således mappe alle dokumenter, som har de samme termer, over i det samme punkt, selvom termer optræder med forskellig hyppighed. TFIDF En mere sofistikeret tilgang er at anvende Term Frequency Inverse Document Frequency (TFIDF), hvor det på den ene side ønskes, at jo flere gange en term er repræsenteret, jo mere vægt skal termen have. På den anden side, søger man samtidig at nedjustere vægten i forhold til hvor hyppigt den pågældende term optræder i hele T V . For en term t k bestemmes w k : tfidf(t k, d j ) = #(t k, d j ) log T V #T V (t k ) (3.1) hvor #(t k, d j ) er antallet af tilfælde som term t k er repræsenteret i dokumentet. T V er træningssættets størrelse og #T V (t k ) er antallet af dokumenter i T V med term t k. Med udgangspunkt i formel 3.1 betyder det at for hyppigt anvendte ord vil log nærme sig 0, T V #T V (t k ) og for mindre anvendte ord går scoren mod log T V 1. Ethvert w d j er udtryk for antallet af gange 21\n24 Kapitel 3. Klassificering 3.2. Klassificering en term er brugt i et dokument vægtet med vigtigheden af ordet. Modsat den binære repræsentation betyder det, at to forskellige dokumenter, indeholdende de samme termer fra vores feature mængde, men ikke nødvendigvis i samme mængde, vil blive repræsenteret ved forskellige vektorer, og dermed bevares muligheden for at adskille disse Normalisering Normalisering af d j skal på en meningsfuld måde sørge for at w k [0; 1], k. Normalisering er med andre ord at foretage en passende skalering af sine vektorer. Ofte anvendes normaliseres vektoren, så den får længden 1. Et alternativt kan være at normalisere i forhold til vektorens største værdi. Ved sidstnævnte bliver vektorens største værdi altid 1 og alle andre w k skaleres i forhold til den største værdi, en undtagelse er skalering af nulvektoren. I dette projekt er normalisering i sig selv ikke i fokus, og vi vil blot gøre brug af normalisering udfra største værdi i vektoren. 3.2 Klassificering For at forstå hvad det vil sige at kategorisere dokumenter, vises det først hvordan en KL-metode klassificerer, og hvad det betyder. En KL-metode må først opbygges/trænes, hvilket gøres ved hjælp af T V, hvorefter KL-metoden valideres med T. Opbygning af en KL-metode drejer sig groft sagt om at gruppere vektorer, eller rettere punkter, i et hyperrum 1. For nogle KL-metoder (f.eks. Neurale Netværk) er dette en iterativ proces, og derfor kaldes det at træne sin KL-metode. En KL-metode er færdig med at træne, når det antages at metoden klassificerer uset data (T ) bedst muligt. Denne klassificering afhænger af den konkrete KL-metode, hvor Figur 3.1 illustrerer hvordan to almindelige KL-metoder klassificerer. A B C? Class 2 Class 2!! Class 2 Class 1 Class 1 Class 1 Figur 3.1: Klassificering af et punkt ( ). A: Hvordan afgøres det hvilken klasse (kategori) som punktet tilhører? B: For KL-metoden knn, afgøres det at punktet er af samme type som de f. eks. 3 nærmeste naboer. C: Et neuralt netværk konstruerer et hyperplan, som adskiller de to klasser, og punktet klassificeres alt efter dennes placering i forhold til hyperplanet Generalisering Som det antydes i Figur 3.1, er det interessante ikke at kunne klassificere data fra T V, da det overordnede mål er at skabe en mekanisme som kan klassificere uset (T ) data bedst muligt. Langt hen ad vejen, er der en klar sammenhæng mellem evnen til at klassificere T V og T korrekt. Ideelt set skal en KL-metode trænes indtil den generaliserer bedst muligt udfra T V. Dette betyder at det ikke er afgørende at KLmetoden ender op med at kunne klassificere T V særligt effektivt, da det er klassificeringsevnen på T som er afgørende. Men da T er et mål for hvor godt klassificeringen vil være i den rigtige verden, er det uvidenskabeligt at optimere sin KL-metode med T, med henblik på at skabe det bedste resultat. Derfor er en ofte anvendt teknik, at opdele sit træningssæt T V i to dele. Et træningssæt og et valideringssæt (T V = Train -and Validation Set), hvor valideringssættet bruges som resultatkriterie idet T ikke må benyttes. 1 Rum af vilkårlig dimension. Mikkel Fischer Christensen & Martin Løbner-Olesen 22\n25 Kapitel 3. Klassificering 3.3. Klassificeringsmetoder Det forventes så, at når valideringssættet giver det bedste resultat, vil klassificering af T ligeledes være optimalt. Inden for litteraturen betegner overfitting det, som skal undgås nemlig at være i stand til at kunne klassificere T V perfekt, på bekostning af evnen til at klassificere uset som T. Der er stor forskel på hvordan forskellige KL-metoder tackler overfitting, og for nogen er det tilsyneladende næsten ikke noget problem, som med SVM  Støj I processen med at optimere generaliseringsevnen, er støj i træningsmaterialet et problem. Hvordan skal man opbygge en KL-metode hvor data er grupperet som i eksemplet i Figur3.2. Class 2 Class 1 Figur 3.2: Træningsdata med støj. Som udgangspunkt er det ønskeligt at de to støj -punkter, ignoreres i træningen af KL-metoden. Men hvad hvis de to punkter rent faktisk ikke er støj? Ideelt set skal KL-metoden på baggrund af data T V afgøre hvilke punkter der er støj, og hvilke der reelt set bedst beskriver kategorierne. Dette håndteres forskelligt af KL-metoder, og er ofte et optimeringsparameter for den enkelte KL-metode. 3.3 Klassificeringsmetoder Naive Bayes En af de mere effektive og simple klassificeringsmetoder som anvendes er Nãive Bayes (NB). NB baserer sig på Bayes lov: P (A X) = P (X A) P (A) P (X) Bayes lov anvendes til at beregne hvad et bevis X betyder for sandsynligheden for hændelsen A. Dette gøres udfra den foregående sandsynligheden for hændelsen A og sandsynligheden for bevis X givet A. Eksempelvis kan sandsynligheden for at et dokument er spam, givet at det indeholder featuren/termen Cheap, beregnes som nedenstående. P (Spam Cheap) = P (Cheap Spam) P (Spam) P (Cheap) Dette beregnes som den foregående sandsynlighed for at et dokument er Spam og sandsynligheden for at et dokument af kategorien spam indeholder ordet Cheap. Hvis vi har flere beviser eller features ser bayes således ud: P (c k t 1,..., t n ) = P (t 1,..., t n c k ) P (c k ) P (t 1... t n ) Hvor det at beregne og holde styr på sandsynligheder for alle de mulige kombinationer af beviser P (t 1... t n ) ikke længere er trivielt. Det er her at ordet Naiv Bayes kommer ind. Ved at antage uafhængighed mellem de betingede sandsynligheder kan forrige Bayes formel omskrives til: (3.2) (3.3) (3.4) Mikkel Fischer Christensen & Martin Løbner-Olesen 23\n26 Kapitel 3. Klassificering 3.3. Klassificeringsmetoder P (c k t 1,..., t n ) = P (ti c k ) P (c k ) P (ti ) (3.5) Ordet naiv stammer således fra antagelsen om uafhængighed mellem de betingede sandsynligheder. Antagelsen kan eksemplificeres ved at sandsynligheden for om ordet xxx optræder i en spam mail ikke påvirkes af at vi allerede ved at ordet sex indgår. Dette er en urealistisk antagelse - men det virker i praksis med tekstklassificering. Dokument klassificering med Naive Bayes foregår ved at beregne forekomsten af ord og kategorier i et træningssæt, og udfra den foregående viden om features og kategorier i træningssættet kan sandsynligheden for at et dokument hører til en specifik dokumentkategori beregnes udfra Bayes og derudfra vælge den kategori der er mest sandsynlig. Eksempelvis med to kategorier af dokumenter ham og spam beregnes sandsynligheden for begge kategorier og dokumentet tilskrives den kategori med størst sandsynlighed i henhold til Bayes. Dette kan gøres som nedenfor hvor sandsynligheden for spam givet features t 1,..., t n sættes i forhold til ham. P (c spam t 1,..., t n ) = P (c spam) P (t i c spam ) P (c ham ) P (t i c ham ) (3.6) Der hvor bayes har problemer er når mængden af features i dokumentet der skal klassificeres er lav. Eksempelvis hvis den eneste genkendte feature er ordet Cheap da vil sandsynligheden for spam være høj - og Naive Bayes reduceres til at genkende keywords og klassificere på baggrund af dette. En anden ting er at Bayes vurderer på baggrund af foregående viden, det vil sige eksempelvis træningssættet af dokumenter, som benyttes til at klassificere de rigtige dokumenter. Der er dermed risiko for at foregående viden ikke svarer til de reelle forhold. Det være sagt, så har Naive Bayes den fordel at den er simpel at implementere, og den er effektiv til tekstklassificering på trods af den naive antagelse [1, 40]. Derudover, som bevis for at den virkelige verden har taget NB til sig, anvendes det til spam klassificering af eksempelvis danske Spamfighter, og opensource værktøjet Spamassassin k-nn k - Nearest Neighbour (knn) er en meget intuitiv klassificerings metode. Konceptet er simpelt hen at givet en mængde på forhånd kategoriserede punkter i et rum, kategoriseres et nyt punkt udfra kategorien af de nærmeste naboer, se Figur 3.3. Figur 3.3: Den sorte cirkel er det emne der klassificeres i henhold til naboernes kategori, billede taget fra  k et betegner mængden af naboer der udføres sammenligning med, således at hvis k = 1 klassificeres punktet til samme kategori som den nærmeste nabo og hvis k = n klassificeres punktet eksempelvis udfra kategorien af majoriteten af naboer. knn tilhører gruppen af klassificerings værktøjer med navne som Memory Based, Case Based og Instance Based - learning. Fællesnævneren ved disse metoder er at klassificering af et objekt foregår ved at sammenligne med en på forhånd klassificeret mængde af Mikkel Fischer Christensen & Martin Løbner-Olesen 24