Titel: Ett träningsbart verktyg för att klassificera nyhetstexter (A learnable tool for classifying news texts)

Storlek: px
Starta visningen från sidan:

Download "Titel: Ett träningsbart verktyg för att klassificera nyhetstexter (A learnable tool for classifying news texts)"

Transkript

1 Examensarbete vid NADA, KTH Av Erik Herou Titel: Ett träningsbart verktyg för att klassificera nyhetstexter (A learnable tool for classifying news texts) Examensarbete inom datalogi Handledare: Anders Green Examinator: Kerstin Severinson Eklundh Uppdragsgivare: Adaptlogic AB

2

3 Ett träningsbart verktyg för att klassificera nyhetstexter Sammanfattning Det är i många sammanhang ett problem att framställa metadata, data om data, för de stora mängder texter som förekommer i digitala medier. Textklassificering är ett forskningsområde som går ut på att statistiskt analysera texter och deras metadata för att finna samband vilka kan utnyttjas för att senare automatiskt tilldela metadata till nya texter. Hur detta görs beror på vilken metod man använder för själva analysen, kallad maskininlärning. Detta examensarbete har syftat till att studera olika sådana metoder och deras lämplighet för textklassificering för nyhetstexter. Studien utmynnade i ett beslut att med hjälp av en prototyp praktiskt utvärdera en metod som bygger på Bayes regel för betingad sannolikhet. Prototypen har studerats och utvärderats med avseende på tidsprestanda och träffsäkerhet i tilldelning av metadata för en mängd tidningsartiklar. Tidsprestanda för prototypen anses vara tillräcklig för den specifika realtidstillämpning som beskrivs i arbetet. Under testerna analyserade prototypen ca nyligen publicerade artiklar för att försöka hitta samband för tilldelning av 27 olika ämnen och geografiska kodningar. Matematisk utvärdering av systemet visade att artikelmängden gav systemet en träffsäkerhet på runt 80 % i sin tilldelning av vanligt förekommande ämnen som sport eller krig. Träffsäkerheten på många andra ämnen blev dock mycket låg på grund av att det fanns för få artiklar med de respektive ämnena i den mängd som analyserades. Textklassificeringen som utvärderas i prototypen anses, förutsatt viss vidareutveckling, ha stor potential i det aktuella sammanhanget och uppskattades av de tilltänkta användarna. På sikt kan även en helt automatisk tillämpning vara både möjlig och högst användbar. A learnable tool for classifying news texts Abstract In many situations the creation of metadata, data describing data, is a problem. This is especially obvious when dealing with the huge amounts of text availiable through digital medias today. Text classification is the research discipline of automatical assigning of metadata to, or classification of, texts written in natural language. This is done through statistic analysis of texts and metadata, in its abstract form called machine learning, which can be done in many different ways. This master s thesis is a study of different techniques for machine learning and their suitability for a text classfication application in the context of news articles. The decision taken based on the study was to evaluate a method based on Bayes rule using a prototype system. The evaluation is also covered by this report. The prototype has been evaluated regarding the significance of the metadata it assigns to a set of news articles and the speed with which it does so. The time complexity and execution speed of the system is considered acceptable for the real-time application described in this report. The tests of the prototype were performed using news articles and 27 different topics and geographic codes for the initial set-up analysis required by the system. The mathematic evaluation of the prototype indicated that using this relatively small set of news text for the set-up analysis was enough for the system to have a significance of about 80 % for some of the metadata fields, and less for others. The number of occurrences of each metadata field in the set-up dataset was closely connected to the system s ability to correctly assign the fields to new texts, respectively. The text classifier implemented and described in this report is considered to have an interesting potential for applications in the newspaper situation, also described. The prototype recieved quite a lot of interest and positive response from the potential users. It is also claimed in the report that a more or less automatic classification process for the newspaper might be a good application of the classifier in the future.

4

5 Förord Denna rapport beskriver ett examensarbete genomfört på institutionen för numerisk analys och datalogi, NADA, vid Kungliga tekniska högskolan, KTH, i Stockholm. Arbetet har genomförts under hösten 2001 och motsvarar 20 akademiska poäng. Uppdragsgivare har varit Adaptlogic AB där mina handledare varit Erik Wallin och Christoffer Atle. Handledare på NADA har varit Anders Green och examinator Kerstin Severinson Eklundh. Examensarbetet var en ansats till tillämpning av tekniker från området artificiell intelligens och lärande system i en verklig situation. Sådana tekniker är fortfarande alltför ovanliga utanför universitets- och högskolevärlden även om några kommersiella projekt har pågått i många år. Potentialen för artificiell intelligens och autonoma eller lärande system inom informationsinhämtning ( information retreival ) och informationsnavigering är enorm. Med hjälp av lättanvända, smarta verklighetsanknutna applikationer av metoder från artificiell intelligens kan människor återta kontrollen över den informationsbest vi släppt lös, och jag hoppas kunna vara en del av det framtida arbetet inom detta yrkes- och forskningsområde under många år framöver. Min upplevelse av examensarbetet är att det uppnådde sina mål väl. Det ena målet var att studera några maskininlärningsmetoder för att kunna göra en rekommendation om den lämpligaste. Det målet uppnåddes. Det andra målet var att producera en prototyp som var användbar för vidare tester. Det målet nådde jag också. Jag vill speciellt tacka Erik Wallin och Christoffer Atle på Adaptlogic för möjligheten att genomföra examensarbetet där, min handledare Anders Green på NADA för hjälp och ett engagemang stundtals mycket större än vad som förväntas av en handledare samt Thorbjörn Frisk för kreativt samarbete kring maskininlärning. Jag vill också tacka Johan Möller och Klas Sabelström på Svenska Dagbladet för generös tillgång till artikeldatabaser, samt utvecklarna på Adaptlogic för de tips jag fått för att underlätta systemutvecklandet.

6

7 Innehållsförteckning 1 INLEDNING Problemintroduktion varför ämnet är intressant Vad är textklassificering? Disposition PROBLEMDEFINITION Målsättning med examensarbetet Om den aktuella situationen Krav på textklassificeringssystemet Systemmiljö och datatillgång Analys av uppgiften Avgränsningar NÅGRA METODER FÖR TEXTKLASSIFICERING Maskininlärning för textklassificering Terminologi Att behandla och representera en text Attributrepresentation i form av word-by-document-matris Språkhantering stemming och stopping Besvärliga saker med verkliga texter Något om maskininlärares utdata Utvärderingsmått Precision, täckning och breakeven Multipla klasser Studerade maskininlärningsmetoder Nearest-neighbor (knn) Naiv Bayes Klusterbaserade metoder Supportvektormaskiner (SVM) BCPNN Några publicerade utvärderingar Komplexitet och prestanda för studerade metoder Träning Körning Att minska krav på träningsdatavolymer Uncertainty sampling välj ut optimalt träningsdata Transductive SVM METODDISKUSSION OCH METODVAL Val av klassificeringsmetod Metodernas lämplighet i nyhetsapplikationen Utvärderingskriterier Motivering och val Metod för algoritmutvärdering ARBETSFÖRLOPP Ställningstaganden och viktiga förändringar Samarbete kring maskininlärningskomponenter Prestandaoptimering Optimering av realtidsanrop Uppstart av systemet Minskad tidsåtgång vid träning PROTOTYP AV TEXTKLASSIFICERINGSSYSTEMET Arkitektur Förenklingar och avkall i första versionen...38

8 6.3 Genomförda integrationer Gränssnittutformning Klassificeringsgränssnitt Träningsgränssnitt RESULTAT OCH UTVÄRDERING Diskussion kring gränssnittet med användare Klassificeringskorrekthet matematisk utvärdering Jämförelse med andras publicerade resultat Analys av det konstruerade systemet SLUTSATSER OCH REKOMMENDATIONER KÄLLFÖRTECKNING...51

9 1 Inledning 1 Inledning 1.1 Problemintroduktion varför ämnet är intressant Den teknik som används för distribution av information är idag mycket lättillgänlig och integrerad i samhället, vilket lett till att informationsflödet blivit enormt. Många användare upplever att de översköljs av och måste kunna hantera mycket stora volymer text i många olika verksamheter. Behovet av metadata i form av informationsklassificering är nu större än någonsin när aktörer börjar integrera sina processer med varandra och utbyter data. Att manuellt strukturera dessa stora informationsmängder är inte bara tidsödande utan lämnar också stora utrymmen för fel och inkonsekvens. Sedan många år arbetas det med automatisk textklassificering både inom forskningsvärlden och för kommersiella tillämpningar. Att låta en maskin strukturera informationen går snabbt, och även om en viss felprocent uppstår kan det vara acceptabelt ställt i relation till de tidsbesparingar som görs. Textklassificering är ett område som är nära förknippat med maskininlärning och artificiell intelligens. Tekniker för lärande maskiner för exempelvis strukturering och metadatahantering för texter finns av varierande form sedan tidigare, som kommersiellt exempel kan det engelska företaget Autonomy nämnas. Inom artificiell intelligens finns många inlärningsmetoder som kan verka kryptiska och svåra att följa för en människa som använder dem. Därför är det viktigare än någonsin att de applikationer som utnyttjar sådana metoder har ett gränssnitt som är användbart och som gör att användaren känner sig trygg och vågar lita på att applikationen fungerar som den ska. Arbete som syftar till att kombinera verkliga tillämpningar av tekniker inom artificiell intelligens och användbara gränssnitt är av dessa orsaker mycket viktigt för att det någonsin skall leda till intressanta vardagstillämpningar. 1.2 Vad är textklassificering? En människa kan på tiondelar av en sekund avgöra om en text är skriven på ett visst språk, om den handlar om globala världsnyheter, sporthändelser, programmeringsteknik eller kultur, om den är intressant för läsaren eller ej o.s.v. Textklassificering är ett forskningsområde där syftet är att låta en maskin göra motsvarande avgöranden givet en text. Att klassificera en text innebär att texten tilldelas en eller flera egenskaper, vilka kan motsvaras av en klass. Innebörden av en klass kan vara till exempel sport, intressant innehåll för mig eller typiskt ärende för tekniska supporten. Problemet som ett textklassificeringssystem skall lösa är alltså att för en klass automatiskt kunna avgöra om en viss text bör tilldelas klassen eller ej. För att systemet skall kunna göra sådana avgöranden använder det sig oftast av någon inlärningsmetod som gör statistiska analyser av stora mängder text där klassificering redan är gjord och kan antas vara korrekt. Genom att jämföra texter som handlar om exempelvis sport med sådana som inte gör det kan en lärande maskin ställa in sig så att den med en viss grad av säkerhet kan skilja på sporttexter och andra texter. I kapitel 1 kommer jag att utförligt förklara hur textklassificering går till. 1.3 Disposition Denna rapport beskriver examensarbetet genom att först presentera målet, syftet och en analys av vad som med hänsyn till dessa behövde göras under arbetet. Sedan presenteras de metoder för textklassficering, maskininlärning och gränssnittsdesign som studerats och övervägts och utifrån denna presentation motiveras valet av metoder för respektive moment. Därefter beskrivs viktiga ställningstaganden som gjorts under examensarbetets lopp, det resultat som producerades i form av en prototyp samt en utvärdering av prototypen. Rapporten avslutas med en analys av resultat och utvärdering samt en diskussion kring nyttan av och potentialen för textklassificering i applikationsområdet nyhetstextklassificering. 9

10

11 2 Problemdefinition 2 Problemdefinition I detta kapitel redovisas de krav, målsättningar och förutsättningar som gällde för examensarbetet, samt hur jag utifrån det valde att avgränsa och fokusera uppgiften. 2.1 Målsättning med examensarbetet Syftet med examensarbetet var att utvärdera om ett automatiskt textklassificeringssystem kan användas hos en tidning som publicerar textmaterial på sin webbplats och som vill märka materialet med metadata. Målet med detta examensarbete var därför att göra en teoretisk utvärdering av ett fåtal (högst fem) metoder för textklassificering för den aktuella situationen, samt att utförligare beskriva och implementera en eller två av de lämpligaste metoderna för att göra verkliga tester av dess effektivitet. Målet var också att implementationen skulle innehålla ett gränssnitt användbart nog att användas som utgångspunkt för vidare tester och utveckling hos uppdragsgivaren. Den ursprungliga planen för examensarbetet var att använda en iterativ designprocess där de tilltänkta användarna fick vara delaktiga i gränssnittsdesignen enligt principer som contextual inquiry 1 och participatory design 2, där användarnas arbete studeras och där de får vara delaktiga i utformandet av prototyper på flera nivåer. Dock handlade det här om ett gränssnitt av begränsat omfång så designprocessen skulle bli relativt enkel. Tyvärr orsakade den nedåtgående konjunkturen under hösten 2001 en del nedskärningar i mediabranschen, så även hos tidningen. Det blev därmed svårare än planerat att få någon egentlig användarinblandning i designprocessen. Detta moment av arbetet fick därför byta fokus till att i huvudsak byggas på designriktlinjer från litteratur. Det gjordes också en avslutande diskussion med några användare för att få en bild av vilket första intryck de fick av textklassificeringsverktyget och dess användbarhet. Användarna utgjordes i första hand av de ansvariga för metadataprojektet på tidningen. 2.2 Om den aktuella situationen Den tilltänkta avnämaren för textklassificeringssystemet är en tidning som publiceras både i tryck och i webbformat. Artiklar för webbpublicering matas in i systemet av journalister, och godkänns sedan av redigerare för publicering på webbsidan. I början av mitt examensarbete höll tidningen tillsammans med Adaptlogic på att införa en mer utförlig metainformation kring sina artiklar. I samband med detta konstruerades även ett gränssnitt med vilket märkning av artiklar med metainformation (kallas i fortsättningen för klassificering) kan göras av journalisterna vid inmatningen av artikeln eller av redigerarna i samband med godkännandet. I den första versionen av publiceringsverktyget, vilken var den som användes under mitt arbete, görs detta genom att man väljer ett av åtta alternativ under geografi (t.ex. Stockholm, Sverige, Norden ) samt ett lämpligt antal av nitton val under ämnen (t.ex. Sport, Nöje, Krig & oroligheter ) Krav på textklassificeringssystemet Examensarbetet skulle innefatta utformandet av ett verktyg som kunde fungera som stöd i det moment där journalister eller redigerare skall klassificera en artikel. När vyn för att välja t.ex. ämne och geografi visas, skulle verktyget se till att den redan var ifylld med ett förslag på ett lämpligt för den artikel som matats in, baserat på artikelns textinnehåll. Verktyget kallas därför i fortsättningen förslagsverktyg. En viss felprocent kommer alltid att finnas i ett automatiskt textklassificeringssystem, men är felet tillräckligt litet kan systemet ändå göra nytta. Om klassificeringen på sikt automatiseras helt så att den görs av systemet utan att ens först godkännas av användarna, kan tidsvinsten direkt vägas mot kostnaden i form av en viss felprocent. Mitt uppdrag begränsade sig dock 1 Wixon, Holtzblatt, Knox: Contextual design: an emergent view of system design. 2 Shneiderman: Designing the user interface. 11

12 2 Problemdefinition till genereringen av klassificeringsförslag och ett gränssnitt för det manuella godkännandet av dem, varför en analys av hur detta gränssnitt bör utformas också måste göras. För att ett förslagsverktyg skall tillföra något måste förslaget naturligtvis vara korrekt, så att verktyget hjälper snarare än irriterar användaren genom att ständigt föreslå fel och orsaka mer arbete än det gör nytta. Det måste också gå mycket snabbt att ta fram ett förslag för att inte användaren skall känna att man lika gärna kan läsa igenom den aktuella artikeln översiktligt och klassificera den manuellt. Det kan också vara bra om förslagsverktyget åskådliggör hur starkt det anser ett förslag vara. En sådan indikation kan vara till stöd för användaren i valet om verktygets förslag skall accepteras eller ändras manuellt. För att snabba upp användarens arbetsflöde är det viktigt att han eller hon mycket snabbt uppfattar hur verktyget klassificerat en text och inte behöver tolka en ointuitiv visualisering. De tilltänkta användarna av förslagsverktyget i den situation examensarbetet behandlar var ett fåtal journalister och redigerare vilka lätt skulle kunna läras använda det. Eftersom dessa användares huvudsakliga arbete består i arbete med det verktyg som skulle utökas med förslagsverktyget, skulle de sannolikt ställa stora krav på snabbhet och inte tolerera tidsfördröjningar eller avbrott. Systembelastningen på förslagsverktyget kunde tack vare den begränsade användargruppen förväntas vara mycket liten, sällan högre än något tiotal per minut, då det inte skulle användas från någon extern webbplats Systemmiljö och datatillgång Systemmiljön är en riklig blandning av plattformar och format. Tidningens miljö består av ett publiceringsverktyg i form av en webbapplikation i ASP och COM-objekt med en Oracledatabas för artikellagring. Förslagsgränssnittet skulle byggas för att kunna infogas i detta publiceringsverktyg. Adaptlogics miljö bestod av en tilläggsplattform skriven helt i Java, där ett API fanns att utnyttja från tidningens olika webapplikationer för intern och extern funktionalitet. Det var således lämpligt att skriva även förslagsverktyget i Java så att det kunde utnyttja viss funktionalitet från Adaptlogics plattform på ett enkelt sätt. Dock fanns artikelinnehållet lagrat i tidningens system och de artiklar som skulle klassificeras av verktyget matades in i detsamma, medan metadata för artiklar endast fanns tillgänglig i Adaptlogics plattform via Java-API:t. Under examensarbetet fanns en export av tidningens artikeldatabas tillgänglig i form av en SQL-databas för Microsoft SQL Server. På grund av det sätt som tidningen lagrar sina artiklar (t.ex. olika mallar, backup- och datastädningsrutiner o.s.v.) innehöll denna export inte samtliga artiklar utan bara en delmängd av artiklarna skrivna under september och oktober, vilket blev i storleksordningen 3400 stycken. Förslagsverktyget skulle ha två funktioner; träning och klassificering. För träningen skulle det krävas tillgång till stora mängder sammankopplade texter och metadata. Därmed skulle verktyget behöva ansluta parallellt till både Adaptlogics Java-API och tidningens artikeldatabas samtidigt under träningen. Vid klassificeringen skall tidningens publiceringsverktyg kunna leverera en text till förslagsverktyget och få tillbaka ett förslag på vilka klasser som vore lämpligast att tilldela texten. Därför krävs en lösning som medger att publiceringsverktyget, skrivet i ASP, kan använda förslagsverktyget. 2.3 Analys av uppgiften Baserat på en analys av de förutsättningar som beskrivits ovan var följande punkter vad som behövde genomföras under examensarbetet: Utred i detalj hur automatisk textklassificering kan göras Identifiera maskininlärningsmetoder som ofta förekommer inom textklassificering Utred hur de identifierade maskininlärarna fungerar Utred hur man utvärderar en textklassificerare och maskininlärares korrekthet Välj metod för textklassificering och maskininlärning 12

13 2 Problemdefinition Utforma gränssnittet för klassificeraren Tillverka en prototyp av textklassificerare och gränssnitt Utvärdera prototypen med avseende på klassificeringskorrekthet och gränssnitt 2.4 Avgränsningar Endast den maskininlärningsmetod jag efter de teoretiska studierna ansåg vara bäst lämpad skulle implementeras i en prototyp. En körbar prototyp för hela textklassificeringssystemet skulle implementeras, men vissa funktioner skulle lämnas för att tas hand om senare. Arkitekturen skulle därför vara gjord så att prototypen lätt skulle kunna utvidgas till ett mer fullständigt system. Under examensarbetet skulle det inte tillverkas funktionalitet för språkhantering som att göra om ord till grundform, ett moment som dock kan behövas i textklassificeringssammanhang för god prestanda. Språkhanteringskomponenter skulle endast användas i den mån redan existerande lösningar fanns tillgängliga. 13

14

15 3 Några metoder för textklassificering 3 Några metoder för textklassificering I detta kapitel presenteras grunderna inom textklassificering och i sammanhanget tillämplig maskininlärning. Det kan vara till nytta för förståelsen av den senare redovisningen av resultatet och diskussionerna kring detsamma. Beskrivningarna i kapitel 3.7 är bitvis mycket tekniska och kan läsas översiktligt av den som är mer intresserad av prototypen än algoritmdiskussionsdelen av arbetet. I detta kapitel kommer följande typer av maskininlärningsmetoder förklaras, för att i kapitel 4.1 tas upp i en jämförelse vilken utmynnar i val av metod att implementera. Nearest-neighbor-principer Supportvektormaskiner Bayesianska klassificerare Kluster 3.1 Maskininlärning för textklassificering Som nämndes i inledningen till denna rapport handlar textklassificering om att automatiskt tilldela egenskaper till en text. För att göra detta måste man börja med att representera texten på ett datalogiskt effektivt sätt. Denna representation kan sedan analyseras med hjälp av maskininlärningsmetoder, varav några beskrivs nedan. Genom att representera texter som en iakttagelse av världen i form av en mängd attribut och representera klasser som okända variabel vars sant/falskt-värde skall approximeras, kan textklassificering göras med hjälp av många olika maskininlärare. En typiskt maskininlärarsystem kan utifrån en mängd givna iakttagelser om världen uppskatta några eftersökta okända parametrar. Detta kan systemet göra genom att det före användning matats med ett stort antal iakttagelser om världen där den sökta parametern också är känd. På så vis kan maskininlärningssystemet, beroende på hur dess algoritmer är uppbyggda, approximera samband mellan parametrarna i iakttagelsen och de eftersökta parametrarna. Innan maskininlärningssystemet kan användas måste det matas med iakttagelser kombinerat med kända värden på de parametrar som senare kommer att behöva approximeras. Detta moment kallas för träning. 3.2 Terminologi I rapporten används en viss terminologi som är vedertagen inom maskininlärning och textklassificering. Nedan förklaras terminologin och vissa av grundkoncepten översiktligt, baserat på majoriteten av de källor som studerats. Texter som förekommer i klassificeringssammanhanget kallas dokument eller exempel. Exempel är en mer vedertagen term i maskininlärningssammanhang eftersom den är lämplig oavsett i vilket sammanhang inlärningsalgoritmen beskrivs. Termen träningsexempel används också och vilket innebär ett manuellt klassificerat exempel som kan användas som facit för träning och testning av algoritmer. Varje exempel som behandlas av en maskininlärningsmetod består på något sätt av attribut, även kallade features. Det angreppssätt till textklassificering jag använder här gör till att börja med ett attribut av varje ord. När det gäller klassificering talar man om positiva och negativa exempel, där ett positivt exempel innebär att ett exempel tillhör en klass och ett negativt att exemplet inte gör det. I den mest grundläggande formen handlar klassificering om binär klassificering, att välja huruvida ett exempel skall tillhöra en klass eller ej, t.ex. detta är en intressant text för användaren. I många sammanhang, så även i nyhetsapplikationen som studerats i detta examensarbete, kan exemplen tillhöra noll till många klasser. Då många maskininlärningsalgoritmer endast kan göra en binär klassificering av ett exempel till en klass, brukar tillvägagångssättet vara att 15

16 3 Några metoder för textklassificering bedöma tilldelningen av varje tänkbar klass för exemplet som en enskild uppgift, och en maskininlärare tränas för varje klass. 3.3 Att behandla och representera en text Att representera en text som en lång sträng är oftast opraktiskt i maskininlärningssammanhang. För att kunna använda någon maskininlärningsmetod måste texter kunna representeras på ett lämpligare sätt. Samtliga metoder som studerats under detta examensarbete använder sig av en serie attribut. Attributen fungerar som räknare för varje känt ords antal förekomster, och varje exempeltext representeras av sin speciella kombination av värden på räknarna. När det gäller textklassificering måste exemplen, d.v.s. texterna, förbehandlas för att på ett bra sätt kunna göras om till attribut. Sådant som skiljetecken, siffror och andra icke-ord väljer man ofta att rensa bort. Dessutom kan man vilja göra om ord till grundform eller ta bort informationsfattiga ord, vilket beskrivs senare i detta kapitel Attributrepresentation i form av word-by-document-matris Den allra vanligaste representationen av texter vid textklassificering är den så kallade vector space-modellen, där varje text motsvaras av en vektor i en rymd 3. Rymden spänns upp av en dimension per attribut, d.v.s. alla ord som förekommer i minst ett dokument i träningsmängden. Det typiska sättet att välja attribut är att efter borttagning av informationsfattiga ord och omformning av ord till grundform välja varje enskilt ord som ett attribut. Dessa vektorer kan sedan inordnas i en matris, kallad word-by-document-matris, där varje rad motsvarar ett ord (attribut) och varje kolumn ett dokument. I fortsättningen av rapporten används förkortningen WBD för denna matris. Man kan alltså på varje position i matrisen finna information om ett visst ords förekomst i ett visst dokument. Enklast att tänka sig är att räkna antalet gånger ordet förekommit i dokumentet, men andra typer av information kan lagras. Detta utvecklas ytterligare i kapitlen nedan. WBD-matriser används i alla metoder jag har undersökt. Orsaken till att WBDrepresentationen av data är så populär både för representation av text och som indata till maskininlärningsalgoritmer i andra sammanhang är förstås att dess generaliserade format gör att det blir lätt att konstruera inlärningsalgoritmer som är generella nog att användas i många sammanhang. Samtidigt kan man använda många olika inlärningsalgoritmer om data lagrats på detta sätt. En reparametrisering (se även kapitel 3.4), transformation av WBD-matrisen till en rymd med färre dimensioner, kan vara lämplig ibland. Vissa metoder såsom supportvektormaskiner klarar av en stor mängd attribut och inom textkategorisering anses de flesta orden ha relevans för klassificeringen 4. När reparametrisering är olämplig kan istället en rensning, feature selection, av WBD-matrisen vara lämplig. Enligt något mått väljer man då ut de ord som verkar innehålla minst information om dokumentmängden. Ett exempel på ett sådant mått är information gain, vilket går ut på att välja de ord med hjälp av vilka man mest distinkt delar upp dokumentmängden i sådana som tillhör en klass och sådana som inte gör det Viktning och ordräknare Då WBD-matrisen skall fyllas med innehåll är den enklaste varianten att inte räkna antalet förekomster, utan endast avgöra om ordet förekommer eller ej, så kallad boolesk viktning. Värdet för en position i matrisen blir då sant eller falskt (alternativt 0 eller 1) 6. Vid ordfrekvensviktning räknar man även antalet gånger ordet förekommer i respektive dokument 7. Här påverkar alltså dokumentens längd dess matrisrepresentation kraftigt. 3 Aas, Eikvil: Text Categorisation: a survey 4 Joachims: Text categorization with support vector machines: learning with many relevant features. 5 Aas, Eikvil: Text Categorisation: a survey 6 Aas, Eikvil: Text Categorisation: a survey 16

17 3 Några metoder för textklassificering Därmed måste maskininlärningsmetoden som använder matrisen kunna ta hänsyn till detta för att två dokument med kraftigt liknande innehåll men av olika längd inte skall riskera att anses som mycket olika. För att även ta hänsyn till hur unikt ett ord är sett över hela mängden av träningsdokument kan dess inverse document frequency användas 8 och multipliceras med dess frekvens ( term frequency ) i varje dokument. Innehållet i matrisen, kallat a ij för ord nummer i, dokument j, räknas ut enligt: a ij = f ij N log( ) n i där f ij är antalet förekomster av ordet i i dokument j, N totala antalet dokument och n i antalet dokument i vilka ordet i förekommer minst en gång Språkhantering stemming och stopping Eftersom exempelvis läsa, läste, läs är väldigt närstående varandra semantiskt kan det vara lämpligt att gruppera dessa. Detta görs med stemming, vilket innebär omvandling av ord så att de representeras enbart av sin stam. Eftersom sätt att böja ord varierar mellan språk krävs en stemmingalgoritm anpassad för det språk man arbetar med. En ofta förekommande stemmingalgoritm för engelska är Porters algoritm 10. Arbete med stemmingalgoritmer på svenska görs också och har visat sig förbättra resultaten i andra textbehandlingssammanhang 11. Vid textklassificering vill man naturligtvis på något sätt hitta gemensamma egenskaper och skillnader mellan dokument för att kunna förutsäga nya dokuments klasstillhörighet. Vissa ord är dock så vanligt förekommande att de inte kan användas för att hitta några samband, eller saknar informationsvärde av andra orsaker och man väljer därför i många sammanhang att ta ignorera dem när man bygger sin representation av dokumenten. Vilka ord som bör tas bort beror förstås på språk, sammanhang och hur man representerar dokumenten. Förfarandet med att ta bort ord på detta sätt kallas stopping. 3.4 Besvärliga saker med verkliga texter Vid inläsningen av texten behöver man någon representation för vad den handlar om. Man måste då välja hur omfattande analys av texten man vill göra. Den enklaste varianten är förstås att bara se texten som en mängd ord utan innebörd. En enklare utökning av denna variant är att räkna olika kombinationer av ord och fraser, där exempelvis tysk rodelåkare identifieras som ett attribut istället för att orden tysk och rodelåkare identifieras var för sig. Då man bygger en WBD-matris räknas dock enbart antalet förekomster av ord, d.v.s. man använder det förstnämnda synsättet, även kallat bag-of-words. Många maskininlärningsmetoder behandlar varje ord, d.v.s. rad i WBD-matrisen, fristående från de andra och kan därmed gå miste om mönster bland dokumentklassningen som bygger på kombinationer av ord. Naiv Bayes (se kapitel 3.7.2) är ett exempel på detta som har visat sig mycket effektiv trots detta förenklande antagande 12. Det har också visat sig att detta enkla bag-of-words-angreppssätt har varit ungefär lika effektivt som andra metoder som involverar lingvistisk analys eller domänkunskap 13. Att istället göra uttömmande sökningar på 7 Aas, Eikvil: Text Categorisation: a survey 8 Aas, Eikvil: Text Categorisation: a survey 9 Aas, Eikvil: Text Categorisation: a survey 10 Porter, M.F: An algorithm for suffix stripping. 11 Carlberger, Dalianis, Hassel, Knutsson: Improving precision in information retreival for Swedish using stemming. 12 Dumais, Platt, Heckerman: Inductive learning algorithms and representations for text categorization 13 Lewis: Naive (Bayes) at forty: the independence assumption in information retreival 17

18 3 Några metoder för textklassificering kombinationer av ordförekomster är dels svårare att modellera, och dels mycket beräkningstungt då alla kombinationer skulle behöva sökas igenom, eller åtminstone en stor del enligt någon lämplig avgränsning. En av de stora vinsterna med att använda bag-of-words är att man tack vare det förenklande antagandet att alla ord är fristående från varandra minskar beräkningsbehovet dramatiskt till en volym som går att hantera. Det finns emellertid sätt att behandla WBD-matrisen så att resultatet innehåller nya attribut som istället motsvarar kombinationer av ordförekomster 14. LSI, latent semantic indexing, är en metod för reparametrisering som bland annat syftar till detta. Genom en singulärvärdesdekomposition, SVD, rensas brus i WBD-matrisen ut och en ny matris innehållandes element som motsvarar en form av ordstruktur i dokumenten bildas. Dokumenten kan sedan jämföras med sina respektive kolumner i denna matris istället 15. I praktiska sammanhang medför förstås naturligt språk ytterligare svårigheter. De flesta språk böjer många ord på en mängd olika sätt, och sällan helt regelbundet. I sådana fall blir stemminguppgiften svårare och man riskerar att missa samband som egentligen finns. Det faktum att så många moment inom textklassificering beror på vilket språk man arbetar med medför förstås också vissa problem. Exempelvis är explicita stemmingregler för engelska är helt oanvändbara på franska texter. Därför måste en textklassificerare som riskerar att stöta på flera olika språk vara anpassad till en sådan uppgift. Några forskningsprojekt kring stemmingalgoritmer som är intressanta vid arbete med svensk text är Carlberger et al om en svensk stemmer och Hedlund , ett examensarbete vid NADA vilket syftade till att undersöka möjligheter att automatiskt konstruera stemmingregler oberoende av språk. 3.5 Något om maskininlärares utdata Många maskininlärningsmetoder levererar ett kontinuerligt utvärde, ibland med innebörden sannolikhet för att ett exempel skall tillhöra en viss klass. I de fall utvärdet indikerar någon form av styrka i påståendet att ett exempel kan tillhöra en viss klass, måste man omvandla detta till ett beslut huruvida exemplet skall tilldelas klassen eller ej. Man använder sig då av ett tröskelvärde för den minimala styrka som krävs för tilldelning av klassen (kallas thresholding). Lämpliga tröskelvärden beror förstås på sammanhang och tillgängliga exempel. Lewis och Ringuette 18 talar om en variant av den naiva Bayes-klassificeringsmetoden (se kapitel 3.7.2) kallad PropBayes som utökas till att tilldela klasser proportionellt mot hur ofta klassen förekommer i träningsdatat. Om X procent av träningsdatat tillhör klassen C, tilldelas kx procent av testdatat klassen C. Konstanten k används för att justera proportionaliteten. Genom att öka k ökar man sannolikheten att en viss klass skall tilldelas ett dokument. En proportionell tilldelning av klasser på detta sätt kan tillämpas vid alla metoder där utvärdet är kontinuerligt, eftersom man då kan välja var på skalan mellan maximal styrka i en positiv respektive negativ klass tröskeln för positiv respektive negativ klass skall placeras så att önskad proportionalitet uppnås. 3.6 Utvärderingsmått Då många maskininlärningsalgoritmer av olika orsaker ger kontinuerliga utvärden måste man ofta välja ett tröskelvärde eller någon annan inställning för algoritmen som gör att den kan användas för en binär klassificering. När det gäller just tröskelvärde för hur starkt algoritmen föreslår tilldelning av en klass innebär både ett högt och ett lågt värde risk för felklassificeringar. Ett för högt tröskelvärde gör att algoritmen kanske låter bli att tilldela 14 Aas, Eikvil: Text Categorisation: a survey 15 Aas, Eikvil: Text Categorisation: a survey. 16 Carlberger, Dalianis, Hassel, Knutsson: Improving precision in information retreival for Swedish using stemming. 17 Hedlund, Automatic construction of stemming rules 18 Lewis, Ringuette: A comparison of two learning algorithms for text categorization. 18

19 3 Några metoder för textklassificering exempel en viss klass, fast den borde ha gjort det. Ett för lågt tröskelvärde gör istället att algoritmen kanske tilldelar exempel en viss klass, fast den inte borde ha gjort det Precision, täckning och breakeven Man talar inom utvärdering av klassificeringsmetoder om termerna recall eller täckning andelen dokument från klassen C som av algoritmen också tilldelas C vid testning och precision andelen dokument från dem som vid testning tilldelats klassen C som faktiskt tillhör den 19. Täckning och precision blir alltså varandras motsatser med avseende på tröskelvärdets inverkan, och då man önskar så höga värden som möjligt på både täckning och precision blir man tvungen att välja det tröskelvärde som ger den bästa kompromissen mellan de två. Eftersom täckningen ökar med ett minskat tröskelvärde och precision minskar med detsamma, söker man efter den punkt där de båda är lika höga och kallar den för breakeven-point. Denna punkt används ofta vid jämförelser mellan algoritmer 20. För varje klass beräknas täckning och precision enligt: a = antal exempel korrekt tilldelade klassen C b = antal exempel felaktigt tilldelade klassen C c = antalet exempel från klassen C som ej tilldelats klassen C täckning = a/(a+c) precision = a/(a+b) 100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% Tröskel precision täckning Figur 1. Precisionens och täckningens beroende av tröskelvärdet, och hur kurvorna möts i breakevenpunkten. Figuren är en illustration och representerar inte resultat från en verklig maskininlärare Multipla klasser I många sammanhang vill man kunna tilldela exempel flera klasser och det är då intressant att utvärdera algoritmens prestanda över alla klasser eftersom breakeven som det beskrivs ovan bara räknas ut för en klass i taget. Micro-averaging och macro-averaging är två metoder för att utvärdera en algoritms klassificeringsprestanda då många klasser och många exempel är inblandade. Som framgår av formlerna nedan så premierar macro-averaging prestanda för varje kategori, oavsett hur vanligt förekommande den är. Micro-averaging premierar istället 19 Witten, Frank: Data mining. 20 Aas, Eikvil: Text Categorisation: a survey. 19

20 3 Några metoder för textklassificering prestanda per exempel, vilket gör att god prestanda på vanliga kategorier är viktigare än på ovanligare vid micro-averaging 21. Vid macro-averaging beräknas precision och täckning för varje klass, sedan tas medelvärdet över klasserna. Vid micro-averaging räknas istället precision och täckning ut en gång för alla klasser. Om antalet klasser är N, så gäller för macro-average: 1 precision = N a N i i = N a i + c i recall = 1 N a N i i = N a i + b i och för micro-average: precision recall i = 1 N i i = 1 = N N i = 1 a i + i i = 1 = N N a N i + a a i = 1 i = 1 b i c i 3.7 Studerade maskininlärningsmetoder Denna rapport tar upp några av de maskininlärningsmetoder som oftast förekommer i litteratur kring textklassificering. Samtliga metoder har studerats med avseende på algoritm för klasstilldelning, träningsmetod och kända utvärderingar med avseende på tids- och klassificeringsprestanda. Vissa metoder kan bara hantera klassificeringsproblemet för en klass i taget. Andra kan klara mer än så, men jag har ändå valt att bara studera samtliga utifrån enklassperspektivet för att kunna jämföra alla med varandra. Maskininlärningsmetoderna som tas upp här beskrivs för enkelhets skull ur ett textklassificeringsperspektiv snarare än på ett generellt plan för att underlätta för läsaren Nearest-neighbor (knn) Nearest-neighbor är en relativt enkel metod som går ut på att hitta exempel i träningsdatamängden som liknar det exempel som skall klassificeras. Detta gör man genom att definiera en rymd där varje attribut som används i träningsexemplen representeras av en dimension. På så vis kan varje dokument representeras i denna rymd som en punkt vilkens koordinater återfinns i exemplets attributmängd. Med hjälp ett avståndsmått kan man hitta punkterna för de träningsexempel som finns närmast ett oklassificerat dokument i attributrymden. Två intressanta avståndsmått för vektorer eller punkter i rymden som förekommer i litteraturen är euklidiskt avstånd och vinkel mellan vektorerna. I sin ursprungliga form innebär nearest-neighbor att man tilldelar det oklassificerade dokumentet samma klass som det närmaste träningsexemplet. En utvidgning av denna är k-nearest-neighbor, knn, där man väljer de k närmaste träningsexemplen i rymden och väljer den klass som förekom flest gånger för att få en stabilare funktion. En variant på denna är weighted average där man man ökar vikten för ett träningsexempel ju närmare 21 Yang: An evaluation of statistical approaches to text categorization. 20

Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1

Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1 Inlämningsuppgift : Finn 2D1418 Språkteknologi Christoffer Sabel E-post: csabel@kth.se 1 1. Inledning...3 2. Teori...3 2.1 Termdokumentmatrisen...3 2.2 Finn...4 3. Implementation...4 3.1 Databasen...4

Läs mer

Prototypbaserad Inkrementell Diagnos. Anders Holst SICS, Swedish Institute of Computer Science AB

Prototypbaserad Inkrementell Diagnos. Anders Holst SICS, Swedish Institute of Computer Science AB Prototypbaserad Inkrementell Diagnos Anders Holst SICS, Swedish Institute of Computer Science AB Metoder för Industriell Diagnos Datadrivna metoder Träna in en mappning från symptom till diagnoser. Kräver

Läs mer

Att använda Weka för språkteknologiska problem

Att använda Weka för språkteknologiska problem Att använda Weka för språkteknologiska problem Systemet WEKA (Waikato Environment for Knowledge Acquisition) är en verktygslåda med olika maskininlärningsalgoritmer, metoder för att behandla indata, möjligheter

Läs mer

Föreläsning 13 Innehåll

Föreläsning 13 Innehåll Föreläsning 13 Innehåll Exempel på problem där materialet i kursen används Hitta k största bland n element Histogramproblemet Schemaläggning PFK (Föreläsning 13) VT 2013 1 / 15 Hitta k största bland n

Läs mer

Hitta k största bland n element. Föreläsning 13 Innehåll. Histogramproblemet

Hitta k största bland n element. Föreläsning 13 Innehåll. Histogramproblemet Föreläsning 13 Innehåll Algoritm 1: Sortera Exempel på problem där materialet i kursen används Histogramproblemet Schemaläggning Abstrakta datatyper Datastrukturer Att jämföra objekt Om tentamen Skriftlig

Läs mer

HKGBB0, Artificiell intelligens

HKGBB0, Artificiell intelligens HKGBB0, Artificiell intelligens Kortfattade lösningsförslag till tentan 3 november 2005 Arne Jönsson 1. Vad karaktäriserar dagens AI-forskning jämfört med den AI-forskning som bedrevs perioden 1960-1985.

Läs mer

Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1

Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1 Algoritmer Lars Larsson VT 2007 Lars Larsson Algoritmer 1 1 2 3 4 5 Lars Larsson Algoritmer 2 Ni som går denna kurs är framtidens projektledare inom mjukvaruutveckling. Som ledare måste ni göra svåra beslut

Läs mer

Klassificering av homonymer Inlämningsuppgift språkteknologi

Klassificering av homonymer Inlämningsuppgift språkteknologi Klassificering av homonymer Inlämningsuppgift språkteknologi 2013-01-10 Kurskod: DD2418 Författare Gustav Ribom 910326-0593 Erik Aalto 861108-0212 Kontaktperson Johan Boye Abstract Ordet fil har flera

Läs mer

Beräkning med ord. -hur en dator hanterar perception. Linköpings universitet Artificiell intelligens 2 2010-10-03 Erik Claesson 880816-1692

Beräkning med ord. -hur en dator hanterar perception. Linköpings universitet Artificiell intelligens 2 2010-10-03 Erik Claesson 880816-1692 Beräkning med ord -hur en dator hanterar perception 2010-10-03 Erik Claesson 880816-1692 Innehåll Inledning... 3 Syfte... 3 Kan datorer hantera perception?... 4 Naturligt språk... 4 Fuzzy Granulation...

Läs mer

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4 Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 014-015 Denna lektion ska vi studera rekursion. Lektion 4 Principen om induktion Principen om induktion är ett vanligt sätt att bevisa

Läs mer

Datorlaboration :: 1 Problembeskrivning ::

Datorlaboration :: 1 Problembeskrivning :: Datorlaboration :: Ett hyrbilsföretags problem Laborationen går ut på att lösa Labbuppgift 1 till 5. Laborationen redovisas individuellt genom att skicka laborationens Mathematicafil till Mikael Forsberg

Läs mer

Projekt i bildanalys Trafikövervakning

Projekt i bildanalys Trafikövervakning Projekt i danalys Trafikövervakning F 99 F 00 Handledare : Håkan Ardö Hösten 3 vid Lunds Tekniska Högskola Abstract Using traffic surveillance cameras the authorities can get information about the traffic

Läs mer

Graärgning och kromatiska formler

Graärgning och kromatiska formler Graärgning och kromatiska formler Henrik Bäärnhielm, d98-hba 2 mars 2000 Sammanfattning I denna uppsats beskrivs, för en ickematematiker, färgning av grafer samt kromatiska formler för grafer. Det hela

Läs mer

1 Duala problem vid linjär optimering

1 Duala problem vid linjär optimering Krister Svanberg, april 2012 1 Duala problem vid linjär optimering Detta kapitel handlar om två centrala teoretiska resultat för LP, nämligen dualitetssatsen och komplementaritetssatsen. Först måste vi

Läs mer

Omvärldsbevakning. Sammanfattning av Business Intelligence-kursen. Nyhetsarkiv och källork. Hämta webbnyheter. Modeller över texter

Omvärldsbevakning. Sammanfattning av Business Intelligence-kursen. Nyhetsarkiv och källork. Hämta webbnyheter. Modeller över texter Sammanfattning av Business Intelligence-kursen Hercules Dalianis DSV-SU-KTH e-post:hercules@kth.se Omvärldsbevakning Påverkan från omvärlden Påverka omvärlden Tidigare långsam spridning papperstidningar,

Läs mer

(1/5) David Södermark (dv02sdd@cs.umu.se) Data Mining

(1/5) David Södermark (dv02sdd@cs.umu.se) Data Mining (1/5) David Södermark (dv02sdd@cs.umu.se) Data Mining Data mining handlar om att med automatiska metoder få fram information ur stora datamassor. Det kan handla om att hitta relevant information i stora

Läs mer

Eulercykel. Kinesiska brevbärarproblemet. Kinesiska brevbärarproblemet: Metod. Kinesiska brevbärarproblemet: Modell. Definition. Definition.

Eulercykel. Kinesiska brevbärarproblemet. Kinesiska brevbärarproblemet: Metod. Kinesiska brevbärarproblemet: Modell. Definition. Definition. Eulercykel Definition En Eulercykel är en cykel som använder varje båge exakt en gång. Definition En nods valens är antalet bågar som ansluter till noden. Kinesiska brevbärarproblemet En brevbärartur är

Läs mer

Kursplan Gränssnittsdesign och Webbutveckling 1 Vårtermin 2014

Kursplan Gränssnittsdesign och Webbutveckling 1 Vårtermin 2014 Kursplan Gränssnittsdesign och Webbutveckling 1 Vårtermin 2014 Kurswebb: www.creativerooms.se/edu, välj Gränssnittsdesign eller Webbutveckling 1 Lärare: Aino-Maria Kumpulainen, aino-maria.kumpulainen@it-gymnasiet.se

Läs mer

Titel: Undertitel: Författarens namn och e-postadress. Framsidans utseende kan variera mellan olika institutioner

Titel: Undertitel: Författarens namn och e-postadress. Framsidans utseende kan variera mellan olika institutioner Linköping Universitet, Campus Norrköping Inst/ Kurs Termin/år Titel: Undertitel: Författarens namn och e-postadress Framsidans utseende kan variera mellan olika institutioner Handledares namn Sammanfattning

Läs mer

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på layout, ett GUI-baserat program Frågor

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på layout, ett GUI-baserat program Frågor TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5 Laboration 4 Lådplanering Exempel på layout, ett GUI-baserat program Frågor 1 Laboration 5 - Introduktion Syfte: Öva på självständig

Läs mer

Genetisk programmering i Othello

Genetisk programmering i Othello LINKÖPINGS UNIVERSITET Första versionen Fördjupningsuppgift i kursen 729G11 2009-10-09 Genetisk programmering i Othello Kerstin Johansson kerjo104@student.liu.se Innehållsförteckning 1. Inledning... 1

Läs mer

DIGITAL KOMMUNIKATION

DIGITAL KOMMUNIKATION EN KOR SAMMANFANING AV EORIN INOM DIGIAL KOMMUNIKAION Linjär kod En binär linjär kod kännetecknas av att summan av två kodord också är ett kodord. Ett specialfall är summan av ett kodord med sig själv

Läs mer

FriendlyReader. Språkteknologi för sammanfattningar och ökad läsbarhet. Målgruppsegmentering. Arbetsgång

FriendlyReader. Språkteknologi för sammanfattningar och ökad läsbarhet. Målgruppsegmentering. Arbetsgång FriendlyReader Språkteknologi för sammanfattningar och ökad läsbarhet Mål:! Öka den digitala delaktigheten genom att underlätta för personer med lässvårigheter att tillgodogöra sig textuellt baserad information

Läs mer

Manual HSB Webb brf 2004 03 23

Manual HSB Webb brf 2004 03 23 TERMINOLOGI I Polopoly används ett antal grundläggande begrepp för publicering och hantering av information, eller innehåll som det också benämns. Nedan följer en kort genomgång av denna grundläggande

Läs mer

UPPGIFT 1 V75 FIGUR 1.

UPPGIFT 1 V75 FIGUR 1. UPPGIFT 1 V75 FIGUR 1. Varje lördag året om spelar tusentals svenskar på travspelet V75. Spelet går ut på att finna sju vinnande hästar i lika många lopp. Lopp 1: 5 7 Lopp 2: 1 3 5 7 8 11 Lopp 3: 2 9 Lopp

Läs mer

Plats avhandlingens titel på en rad, två rader eller tre rader

Plats avhandlingens titel på en rad, två rader eller tre rader Plats avhandlingens titel på en rad, två rader eller tre rader Plats för underrubrik som sträcker sig över en rad eller två rader (Titeln skall vara både på svenska och engelska under varandra) NAMN FÖRFATTARE

Läs mer

- A Scrum Planning Tool Case Study to Evaluate the The Rich AJAX Platform

- A Scrum Planning Tool Case Study to Evaluate the The Rich AJAX Platform Datavetenskap Opponent(er): Jhonny Carvajal Johan Bjärneryd Respondent(er): Fredrik Häggbom Erik Olsson Haglund Scrumptious - A Scrum Planning Tool Case Study to Evaluate the The Rich AJAX Platform Oppositionsrapport,

Läs mer

Med koppling till EmiWeb

Med koppling till EmiWeb Datavetenskap Opponent(er): Jonas Brolin Mikael Hedegren Respondent(er): David Jonsson Fredrik Larsson Webbaserad släktträdsmodul Med koppling till EmiWeb Oppositionsrapport, C/D-nivå 2005:xx 1 Sammanfattat

Läs mer

Decentraliserad administration av gästkonton vid Karlstads universitet

Decentraliserad administration av gästkonton vid Karlstads universitet Datavetenskap Opponent(er): Markus Fors Christian Grahn Respondent(er): Christian Ekström Per Rydberg Decentraliserad administration av gästkonton vid Karlstads universitet Oppositionsrapport, C/D-nivå

Läs mer

Unit testing methodology

Unit testing methodology Department of Computer Science Per Hurtig Stefan Lindberg & Fredrik Strandberg Unit testing methodology Opposition Report, C/D-level 2005:xx 1 Övergripande utvärdering Helhetsintrycket av uppsatsen är

Läs mer

1(15) Bilaga 1. Av Projekt Neuronnätverk, ABB Industrigymnasium, Västerås Vt-05

1(15) Bilaga 1. Av Projekt Neuronnätverk, ABB Industrigymnasium, Västerås Vt-05 1(15) Bilaga 1 2(15) Neuronnätslaboration Räknare Denna laboration riktar sig till gymnasieelever som går en teknisk utbildning och som helst har läst digitalteknik samt någon form av styrteknik eller

Läs mer

b) NY KURS (Ange kursnamn, årskurs, önskad läsperiod, schemablocksplacering. Bifoga utkast till kursplan.)

b) NY KURS (Ange kursnamn, årskurs, önskad läsperiod, schemablocksplacering. Bifoga utkast till kursplan.) LINKÖPINGS TEKNISKA HÖGSKOLA Tekniska fakultetskansliet FÖRSLAG TILL PROGRAMNÄMND INFÖR ÅR NÄMND/NÄMNDER: Förslagsställare (Namn, funktion, Inst/Enhet) FÖRSLAGET GÄLLER: a) EXISTERANDE KURS (Ange kurskod

Läs mer

Word-guide Introduktion

Word-guide Introduktion Word-guide Introduktion På det kognitionsvetenskapliga programmet kommer du läsa kurser inom flera olika vetenskapsområden och för varje vetenskapsområde finns ett speciellt sätt att utforma rapporter.

Läs mer

Utveckling av ett grafiskt användargränssnitt

Utveckling av ett grafiskt användargränssnitt Datavetenskap Opponenter: Daniel Melani och Therese Axelsson Respondenter: Christoffer Karlsson och Jonas Östlund Utveckling av ett grafiskt användargränssnitt Oppositionsrapport, C-nivå 2010-06-08 1 Sammanfattat

Läs mer

Introduktion till algoritmer - Lektion 1 Matematikgymnasiet, Läsåret 2014-2015. Lektion 1

Introduktion till algoritmer - Lektion 1 Matematikgymnasiet, Läsåret 2014-2015. Lektion 1 Kattis Lektion 1 I kursen används onlinedomaren Kattis (från http://kattis.com) för att automatiskt rätta programmeringsproblem. För att få ett konto på Kattis anmäler du dig på Programmeringsolympiadens

Läs mer

Approximation av funktioner

Approximation av funktioner Vetenskapliga beräkningar III 8 Kapitel Approximation av funktioner Vi skall nu övergå till att beskriva, hur man i praktiken numeriskt beräknar funktioner I allmänhet kan inte ens elementära funktioner

Läs mer

TENTAMEN: Design och konstruktion av grafiska gränssnitt DAT215/TIG091

TENTAMEN: Design och konstruktion av grafiska gränssnitt DAT215/TIG091 TENTAMEN: Design och konstruktion av grafiska gränssnitt DAT215/TIG091 DAG: 5 mars, 2012 TID: 8.30 12.30 SAL: Hörsalsvägen Ansvarig: Olof Torgersson, tel. 772 54 06. Institutionen för tillämpad informationsteknologi.

Läs mer

Utvecklingen av ett tidregistrerings- och faktureringssystem

Utvecklingen av ett tidregistrerings- och faktureringssystem Datavetenskap Opponenter: Anders Heimer & Jonas Seffel Respondenter: Daniel Jansson & Mikael Jansson Utvecklingen av ett tidregistrerings- och faktureringssystem Oppositionsrapport, C-nivå 2006:10 1 Sammanfattat

Läs mer

VINDKRAFT. Alternativ Användning

VINDKRAFT. Alternativ Användning Datum (2012-03-14) VINDKRAFT Alternativ Användning Elev: Andreas Krants Handledare: Anna Josefsson Sammanfattning Alternativa användningssätt för vindkraft är vad denna rapport handlar om, och med alternativ

Läs mer

Slutrapport Vertikala Sökmotorer Uppdrag från.se:s Internetfond Våren 2008

Slutrapport Vertikala Sökmotorer Uppdrag från.se:s Internetfond Våren 2008 Slutrapport Vertikala Sökmotorer Uppdrag från.se:s Internetfond Våren 2008 Anders Ardö Elektro- och informationsteknik Lunds Universitet Box 118, 221 00 Lund June 18, 2009 1 Inledning Digitala bibliotek

Läs mer

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5 Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor 1 Laboration 4 - Introduktion Syfte: Öva på självständig problemlösning

Läs mer

Uppdatera Mobilus Professional till version 3.2.1. * Filen MpUpdate.exe får inte köras när du startar denna uppdatering.

Uppdatera Mobilus Professional till version 3.2.1. * Filen MpUpdate.exe får inte köras när du startar denna uppdatering. Uppdatera Mobilus Professional till version 3.2.1 Krav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering. Mobilus Digital Rehab AB * Filen MP.exe (Mobilus programmet) får inte användas

Läs mer

Lathund Omföring. Inledning

Lathund Omföring. Inledning Inledning Avsnittet behandlar grunder och tillvägagångssätt vid verifikationsregistrering. Registrering i modulen Huvudbok kan inte generera utbetalningar, för detta finns andra moduler, istället används

Läs mer

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng TENTAMEN I PROGRAMMERING Ansvarig: Jan Skansholm, tel 7721012 Betygsgränser: Hjälpmedel: Sammanlagt maximalt 60 poäng. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng Skansholm,

Läs mer

Nationell Informationsstruktur 2015:1. Bilaga 7: Arkitektur och metodbeskrivning

Nationell Informationsstruktur 2015:1. Bilaga 7: Arkitektur och metodbeskrivning Nationell Informationsstruktur 2015:1 Bilaga 7: Arkitektur och metodbeskrivning Innehåll Nationell informationsstruktur arkitektur och metod... 3 Standarder inom informatik... 3 NI relaterat till ISO 42010...

Läs mer

WEBBTEKNIK. Ämnets syfte

WEBBTEKNIK. Ämnets syfte WEBBTEKNIK Webbteknik används för att utveckla och vidareutveckla statiska och dynamiska webbsidor, webbplatser, webbapplikationer eller andra applikationer där webbtekniker används, till exempel applikationer

Läs mer

WEBBTEKNIK. Ämnets syfte

WEBBTEKNIK. Ämnets syfte WEBBTEKNIK Webbteknik används för att utveckla och vidareutveckla statiska och dynamiska webbsidor, webbplatser, webbapplikationer eller andra applikationer där webbtekniker används, till exempel applikationer

Läs mer

2 = 3 = 1. ekvationssystem är beskriven som de vektorer X = 2 0 1 2. 1 1 0 2

2 = 3 = 1. ekvationssystem är beskriven som de vektorer X = 2 0 1 2. 1 1 0 2 . Tisdagen 35 Igår visade vi att lösningsmängden W R 5 till ekvationssystemet 3x + x 2 + 3x 3 + 2x 4 x 5 = (..) 2x 2 + x 3 + 4x 4 + 2x 5 = 3x 3x 2 + x 3 6x 4 5x 5 = har bas u och u 2 och u 3 där 5 2 6

Läs mer

Att beräkna t i l l v ä x t takter i Excel

Att beräkna t i l l v ä x t takter i Excel Att beräkna t i l l v ä x t takter i Excel Detta kapitel är en liten matematisk vägledning om att beräkna tillväxttakten i Excel. Här visas exempel på potenser och logaritmer och hur dessa funktioner beräknas

Läs mer

campus.borlänge Förstudie - Beslutsstöd för operativ tågtrafikstyrning

campus.borlänge Förstudie - Beslutsstöd för operativ tågtrafikstyrning campus.borlänge Förstudie - Beslutsstöd för operativ tågtrafikstyrning En rapport från CATD-projektet, januari-2001 1 2 Förstudie Beslutsstöd för operativ tågtrafikstyrning Bakgrund Bland de grundläggande

Läs mer

WEBBLÄTTLÄST SLUTRAPPORT

WEBBLÄTTLÄST SLUTRAPPORT Arne Jönsson 2012-07-23 WEBBLÄTTLÄST SLUTRAPPORT 1. Inledning Inom projektet WebbLättLäst har vi utvecklat teknik för att automatiskt rangordna svenska webbsidor efter hur läsbara de är. Detta gör att

Läs mer

Lutande torn och kluriga konster!

Lutande torn och kluriga konster! Lutande torn och kluriga konster! Aktiviteter för barn under Vetenskapsfestivalens skolprogram 2001 Innehåll 1 Bygga lutande torn som inte faller 2 2 Om konsten att vinna betingat godis i spel 5 3 Den

Läs mer

reella tal x i, x + y = 2 2x + z = 3. Här har vi tre okända x, y och z, och vi ger dessa okända den naturliga

reella tal x i, x + y = 2 2x + z = 3. Här har vi tre okända x, y och z, och vi ger dessa okända den naturliga . Lösningsmängden till homogena ekvationssystem I denna första föreläsning börjar vi med att repetera det grunnläggande begreppet inom linjär algebran. Linjär algebra är studiet av lösningsmängden till

Läs mer

Multiplicera 7med A λ 1 I från vänster: c 1 (Av 1 λ 1 v 1 )+c 2 (Av 2 λ 1 v 2 )+c 3 (Av 3 λ 1 v 3 ) = 0

Multiplicera 7med A λ 1 I från vänster: c 1 (Av 1 λ 1 v 1 )+c 2 (Av 2 λ 1 v 2 )+c 3 (Av 3 λ 1 v 3 ) = 0 Diagonalisering Anm. Begreppet diagonaliserbarhet är relevant endast för linjära avbildningar mellan rum av samma dimension, d.v.s. sådana som representeras av kvadratiska matriser. När vi i fortsättningen

Läs mer

Handläggning av Examensarbeten på Trafik och Väg

Handläggning av Examensarbeten på Trafik och Väg Version 2013-01-14 Institutionen för Teknik och samhälle Trafik och väg Handläggning av Examensarbeten på Trafik och Väg Detta dokument innehåller det mesta som man behöver veta för att genomföra ett examensarbete

Läs mer

Linjära ekvationssystem. Avsnitt 1. Vi ska lära oss en metod som på ett systematiskt sätt löser alla linjära ekvationssystem. Linjära ekvationssystem

Linjära ekvationssystem. Avsnitt 1. Vi ska lära oss en metod som på ett systematiskt sätt löser alla linjära ekvationssystem. Linjära ekvationssystem Avsnitt Linjära ekvationssystem Elementära radoperationer Gausseliminering Exempel Räkneschema Exempel med exakt en lösning Exempel med parameterlösning Exempel utan lösning Slutschema Avläsa lösningen

Läs mer

Undervisningen ska ge eleverna tillfälle att arbeta i projekt samt möjlighet att utveckla kunskaper om projektarbete och dess olika faser.

Undervisningen ska ge eleverna tillfälle att arbeta i projekt samt möjlighet att utveckla kunskaper om projektarbete och dess olika faser. WEBBTEKNIK Webbteknik används för att utveckla och vidareutveckla statiska och dynamiska webbsidor, webbplatser, webbapplikationer eller andra applikationer där webbtekniker används, till exempel applikationer

Läs mer

Laboration 5: Regressionsanalys. 1 Förberedelseuppgifter. 2 Enkel linjär regression DATORLABORATION 5 MATEMATISK STATISTIK FÖR I, FMS 012, HT-08

Laboration 5: Regressionsanalys. 1 Förberedelseuppgifter. 2 Enkel linjär regression DATORLABORATION 5 MATEMATISK STATISTIK FÖR I, FMS 012, HT-08 LUNDS TEKNISKA HÖGSKOLA MATEMATIKCENTRUM MATEMATISK STATISTIK Laboration 5: Regressionsanalys DATORLABORATION 5 MATEMATISK STATISTIK FÖR I, FMS 012, HT-08 Syftet med den här laborationen är att du skall

Läs mer

Föreläsning 15: Repetition DVGA02

Föreläsning 15: Repetition DVGA02 Föreläsning 15: Repetition DVGA02 Vad handlar kursen om? Kursen kan i grova drag delas upp i tre delar: 1. Objekt-orienterad programmering 2. Grafiska användargränssnitt 3. Datastrukturer Dessutom genomsyras

Läs mer

UPPGIFT 1 TVÅPOTENSER. UPPGIFT 2 HISSEN I LUSTIGA HUSET.

UPPGIFT 1 TVÅPOTENSER. UPPGIFT 2 HISSEN I LUSTIGA HUSET. UPPGIFT 1 TVÅPOTENSER. 2 ½ ¾ = 5575186299632655785383929568162090376495104 n = 142 är det minsta värde på n för vilket 2 Ò inleds med siffrorna 55. Uppgiften består i att skriva ett program som tar emot

Läs mer

Mathematical Cryptology (6hp)

Mathematical Cryptology (6hp) Time to sign up for the continuation course Mathematical Cryptology (6hp) 12 lectures (2 hours) + 2 small projects Exercises are done on your own and discussed in class (6*2 hours). Contents: Elliptic

Läs mer

Algebra & Ekvationer. Svar: Sammanfattning Matematik 2

Algebra & Ekvationer. Svar: Sammanfattning Matematik 2 Algebra & Ekvationer Algebra & Ekvationer Parenteser En parentes När man multiplicerar en term med en parentes måste man multiplicera båda talen i parentesen. Förenkla uttrycket 42 9. 42 9 4 2 4 9 8 36

Läs mer

Webbsystems inverkan på innehåll och användbarhet på webbplatser - oppositionsrapport

Webbsystems inverkan på innehåll och användbarhet på webbplatser - oppositionsrapport Webbsystems inverkan på innehåll och användbarhet på webbplatser - oppositionsrapport Respondenter: Emma Henriksson och Ola Ekelund Opponenter: Eva Pettersson och Johan Westerdahl Sammanfattande omdöme

Läs mer

Ränteberäkning vid reglering av monopolverksamhet

Ränteberäkning vid reglering av monopolverksamhet 1 Jan Bergstrand 2009 12 04 Ränteberäkning vid reglering av monopolverksamhet Bakgrund Energimarknadsinspektionen arbetar f.n. med en utredning om reglering av intäkterna för elnätsföretag som förvaltar

Läs mer

Tentamensinstruktioner. Vid skrivningens slut

Tentamensinstruktioner. Vid skrivningens slut Matematiska institutionen Optimeringslära TENTAMEN TAOP14/TEN1 OPTIMERINGSLÄRA GRUNDKURS för I och Ii Datum: 13:e januari 2011 Tid: 8.00 13.00 Hjälpmedel: Kurslitteratur av Lundgren m fl: Optimeringslära

Läs mer

Regressionstestning teori och praktik

Regressionstestning teori och praktik Regressionstestning teori och praktik Lic. Emelie Engström emelie.engstrom@cs.lth.se Software Engineering Research Group LUND UNIVERSITY Sweden SWELL the Swedish Research School in Software Verification

Läs mer

Signalbehandling Röstigenkänning

Signalbehandling Röstigenkänning L A B O R A T I O N S R A P P O R T Kurs: Klass: Datum: I ämnet Signalbehandling ISI019 Enk3 011211 Signalbehandling Röstigenkänning Jonas Lindström Martin Bergström INSTITUTIONEN I SKELLEFTEÅ Sida: 1

Läs mer

Basware Catalogs Katalogtjänster för leverantörer och kunder

Basware Catalogs Katalogtjänster för leverantörer och kunder A Presentation Catalogs Katalogtjänster för leverantörer och kunder Kenneth Tellebo 6.10.2011 Presentationens innehåll Vad är Catalogs? Catalog Management Tools Catalog Interfaces Service Elements Catalog

Läs mer

GRÄNSSNITTSDESIGN. Ämnets syfte. Kurser i ämnet

GRÄNSSNITTSDESIGN. Ämnets syfte. Kurser i ämnet GRÄNSSNITTSDESIGN Ämnet gränssnittsdesign behandlar interaktionen mellan dator och människa med fokus på designaspekterna i utveckling av användbara, tillgängliga och tilltalande gränssnitt. Det innehåller

Läs mer

Skriv! Hur du enkelt skriver din uppsats

Skriv! Hur du enkelt skriver din uppsats Skriv! Hur du enkelt skriver din uppsats Josefine Möller och Meta Bergman 2014 Nu på gymnasiet ställs högra krav på dig när du ska skriva en rapport eller uppsats. För att du bättre ska vara förberedd

Läs mer

Bonus Rapport Kommersiell Design KTH

Bonus Rapport Kommersiell Design KTH Bonus Rapport Kommersiell Design KTH Johan Holmström & Lars Åkesson Introduktion Denna rapport beskriver projektet och delmomentet Kommersiell Design i kursen Interaktionsdesign 2 på KTH i Stockholm. Detta

Läs mer

Utveckling av simulator för ärendehanteringssystem

Utveckling av simulator för ärendehanteringssystem Datavetenskap Opponent(er): Emil Danielsson & Patrik Lundberg Respondent(er): Niclas Hanold & Samiar Saldjoghi Utveckling av simulator för ärendehanteringssystem Oppositionsrapport, C/D-nivå 2005:xx 1

Läs mer

Using SharePoint Workflow

Using SharePoint Workflow Datavetenskap Opponent(er): Anders Olsson Marcus Karlsson Respondent(er): Harald Quist Creating a Help Desk Using SharePoint Workflow Oppositionsrapport, C-nivå 2009:xx 1 Sammanfattat omdöme av examensarbetet

Läs mer

ANDREAS REJBRAND 2007-11-03 Elektromagnetism http://www.rejbrand.se. Coulombs lag och Maxwells första ekvation

ANDREAS REJBRAND 2007-11-03 Elektromagnetism http://www.rejbrand.se. Coulombs lag och Maxwells första ekvation ANDREA REJBRAND 2007-11-03 Elektromagnetism http://www.rejbrand.se oulombs lag och Maxwells första ekvation oulombs lag och Maxwells första ekvation Inledning Två punktladdningar q 1 samt q 2 i rymden

Läs mer

Prissättning av optioner

Prissättning av optioner TDB,projektpresentation Niklas Burvall Hua Dong Mikael Laaksonen Peter Malmqvist Daniel Nibon Sammanfattning Optioner är en typ av finansiella derivat. Detta dokument behandlar prissättningen av dessa

Läs mer

Dagens föreläsning (F15)

Dagens föreläsning (F15) Dagens föreläsning (F15) Problemlösning med datorer Carl-Mikael Zetterling bellman@kth.se KP2+EKM http://www.ict.kth.se/courses/2b1116/ 1 Innehåll Programmering i Matlab kap 5 EKM Mer om labben bla Deluppgift

Läs mer

Miniprojektuppgift i TSRT04: Mobiltelefontäckning

Miniprojektuppgift i TSRT04: Mobiltelefontäckning Miniprojektuppgift i TSRT04: Mobiltelefontäckning 19 augusti 2015 1 Uppgift Enligt undersökningen Svenskarna och internet 2013 (Stiftelsen för Internetinfrastruktur) har 99 % av alla svenskar i åldern

Läs mer

Krav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering.

Krav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering. Uppdatera Mobilus Professional till version 3.1.2 Krav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering. Mobilus Digital Rehab AB * Filen MP.exe (Mobilus programmet) får inte användas

Läs mer

Matematikundervisningen har under

Matematikundervisningen har under bengt aspvall & eva pettersson Från datorernas värld Hur kan vi stimulera elever i matematik, och hur kan vi genom matematiken visa delar av datorns funktioner? Författarna visar hur man kan introducera

Läs mer

På följande sidor återfinns en kort dokumentation som beskriver några användbara programfunktioner.

På följande sidor återfinns en kort dokumentation som beskriver några användbara programfunktioner. RengöringsSystemet V4 På följande sidor återfinns en kort dokumentation som beskriver några användbara programfunktioner. Översikt över innehåll i bifogad dokumentation: Visa / Visa ej flikar/knappar i

Läs mer

Stiftelsen Allmänna Barnhuset KARLSTADS UNIVERSITET

Stiftelsen Allmänna Barnhuset KARLSTADS UNIVERSITET Stiftelsen Allmänna Barnhuset KARLSTADS UNIVERSITET National Swedish parental studies using the same methodology have been performed in 1980, 2000, 2006 and 2011 (current study). In 1980 and 2000 the studies

Läs mer

Dokumentation. Joomla - Administrationsguide 1. Logga in i administrations-gränssnittet 2. Ändra globala inställningar 2.

Dokumentation. Joomla - Administrationsguide 1. Logga in i administrations-gränssnittet 2. Ändra globala inställningar 2. Joomla - Administrationsguide Joomla - Administrationsguide 1 Logga in i administrations-gränssnittet 2 Ändra globala inställningar 2 Ändra titel 3 Artiklar, kategorier och sektioner 4 Skapa sektioner

Läs mer

Laboration 2. Artificiell Intelligens, Ht 2004 2004-10-19 Lärare: Christina Olsén Handledare: Therese Edvall Daniel Ölvebrink

Laboration 2. Artificiell Intelligens, Ht 2004 2004-10-19 Lärare: Christina Olsén Handledare: Therese Edvall Daniel Ölvebrink Artificiell Intelligens, Ht 2004 2004-10-19 Lärare: Christina Olsén Handledare: Therese Edvall Daniel Ölvebrink Laboration 2 Laboranter: Johan Bystedt (dit02lbt) Alexander Pettersson (dit02apn) Stefan

Läs mer

JavaRats. Kravspecifikation. Version 1.1. Gustav Skoglund gussk258@student.liu.se. Marcus Widblom marwi026@student.liu.se. Senast ändrad: 13 / 05 / 08

JavaRats. Kravspecifikation. Version 1.1. Gustav Skoglund gussk258@student.liu.se. Marcus Widblom marwi026@student.liu.se. Senast ändrad: 13 / 05 / 08 JavaRats Kravspecifikation Version 1.1 Gustav Skoglund gussk258@student.liu.se Marcus Widblom marwi026@student.liu.se Senast ändrad: 13 / 05 / 08 Sammanfattning Kravspecifikationen för JavaRats har skrivit

Läs mer

Objekt-orienterad utveckling. Objektorienterad analys och design. Objekt-orienterad programutveckling. Objekt-orienterad analys och design: Litteratur

Objekt-orienterad utveckling. Objektorienterad analys och design. Objekt-orienterad programutveckling. Objekt-orienterad analys och design: Litteratur Objekt-orienterad utveckling Saker man vill uppnå: Objektorienterad analys och design Sven-Olof Nyström Uppsala Universitet 16 mars 2005 en systematisk metod för att gå från problembeskrivning till färdigt

Läs mer

Nationella riktlinjer i nya digitala format. Delrapport

Nationella riktlinjer i nya digitala format. Delrapport Nationella riktlinjer i nya digitala format Delrapport Du får gärna citera Socialstyrelsens texter om du uppger källan, exempelvis i utbildningsmaterial till självkostnadspris, men du får inte använda

Läs mer

Handläggning av Examensarbeten på Trafik och Väg

Handläggning av Examensarbeten på Trafik och Väg Version 2013-08-16 Institutionen för Teknik och samhälle Trafik och väg Handläggning av Examensarbeten på Trafik och Väg Detta dokument innehåller det mesta som man behöver veta för att genomföra ett examensarbete

Läs mer

2D1418, Språkteknologi NADA, Kungliga Tekniska Högskolan 2004-10-17 SÖKMOTOROPTIMERING. Av Erik Lindgren 810110-8218 soft@kth.se

2D1418, Språkteknologi NADA, Kungliga Tekniska Högskolan 2004-10-17 SÖKMOTOROPTIMERING. Av Erik Lindgren 810110-8218 soft@kth.se 2D1418, Språkteknologi NADA, Kungliga Tekniska Högskolan 2004-10-17 SÖKMOTOROPTIMERING Av Erik Lindgren 810110-8218 soft@kth.se SAMMANFATTNING Föreliggande uppsats behandlar ämnet sökmotoroptimering.

Läs mer

Wise Business Support Ms Office Kursinnehåll För nybörjare och därefter

Wise Business Support Ms Office Kursinnehåll För nybörjare och därefter Wise Business Support Ms Office Kursinnehåll För nybörjare och därefter Mohammad Honarbakhsh 2013 01 11 073 784 22 74 mo.honar@wisebs.com www.wisebs.com Ms Office Ms Word, Ms Outlook, Ms PowerPoint, Ms

Läs mer

Nationella prov i verkligheten

Nationella prov i verkligheten Nationella prov i verkligheten: Sida 1 Nationella prov i verkligheten Övningsprov Matte 1C (2012) Vad används matematiken till? Vad gör en matematiker? 2 Räkning med procent förekommer i prisberäkningar

Läs mer

Anpassningsbar applikationsstruktur för flerpunktsskärmar

Anpassningsbar applikationsstruktur för flerpunktsskärmar Datavetenskap Opponent(er): Rikard Boström Lars-Olof Moilanen Respondent(er): Mathias Andersson Henrik Bäck Anpassningsbar applikationsstruktur för flerpunktsskärmar Oppositionsrapport, C/D-nivå 2005:xx

Läs mer

Klassificering av e-post

Klassificering av e-post Klassificering av e-post En undersökning av handledda klassificeringsmetoder JOHAN LITSFELDT Examensarbete Stockholm, Sverige 2011 Klassificering av e-post En undersökning av handledda klassificeringsmetoder

Läs mer

Laborationsinformation

Laborationsinformation Linköpings Tekniska Högskola 2015 08 25 Matematiska institutionen/optimeringslära Kaj Holmberg Laborationsinformation 1 VINEOPT: Visual Network Optimization 1.1 Introduktion VINEOPT är ett program för

Läs mer

TMV166/186 Linjär Algebra M/TD 2011/2012 Läsvecka 1. Omfattning. Innehåll 2012-01-20. Lay, kapitel 1.1-1.9, Linjära ekvationer i linjär algebra

TMV166/186 Linjär Algebra M/TD 2011/2012 Läsvecka 1. Omfattning. Innehåll 2012-01-20. Lay, kapitel 1.1-1.9, Linjära ekvationer i linjär algebra TMV166/186 Linjär Algebra M/TD 2011/2012 Läsvecka 1 Omfattning Lay, kapitel 1.1-1.9, Linjära ekvationer i linjär algebra Innehåll Olika aspekter av linjära ekvationssystem 1. skärning mellan geometriska

Läs mer

En ansats till behovsstyrd applikationsutveckling

En ansats till behovsstyrd applikationsutveckling Datavetenskap Opponenter: Daniel Mester Pirttijärvi Hampus Skystedt Respondent: Johan Björlin En ansats till behovsstyrd applikationsutveckling Oppositionsrapport, C-nivå 2011:05 1 Sammanfattat omdöme

Läs mer

Bild 1: Översikt över faserna i projektarbetet

Bild 1: Översikt över faserna i projektarbetet Projektarbete kring system X Det här dokumentet beskriver uppgiften samt innehåller mallar för de rapporter som ska lämnas in. Bild 1 visar ordning och ungefärligt förhållande för tidsåtgång mellan de

Läs mer

Sammanfattningar Matematikboken Y

Sammanfattningar Matematikboken Y Sammanfattningar Matematikboken Y KAPitel 1 TAL OCH RÄKNING Numeriska uttryck När man beräknar ett numeriskt uttryck utförs multiplikation och division före addition och subtraktion. Om uttrycket innehåller

Läs mer

Trädstrukturer och grafer

Trädstrukturer och grafer Översikt Trädstrukturer och grafer Trädstrukturer Grundbegrepp Binära träd Sökning i träd Grafer Sökning i grafer Programmering tillämpningar och datastrukturer Varför olika datastrukturer? Olika datastrukturer

Läs mer

WEBBKLUSTRING SLUTRAPPORT

WEBBKLUSTRING SLUTRAPPORT Arne Jönsson 2014-01-09 WEBBKLUSTRING SLUTRAPPORT 1. Inledning Inom projektet har vi utvecklat teknik som gör det möjligt att identifiera webbsidors innehåll och därefter klustra (gruppera) dem så att

Läs mer

Del A: Begrepp och grundläggande förståelse

Del A: Begrepp och grundläggande förståelse STOCKHOLMS UNIVERSITET FYSIKUM K.H./C.F./C.W. Tentamensskrivning i Experimentella metoder, 1p, för kandidatprogrammet i fysik, 18/6 013, 9-14. Införda beteckningar skall förklaras och uppställda ekvationer

Läs mer