Statistisk Maskinöversättning eller:

Storlek: px
Starta visningen från sidan:

Download "Statistisk Maskinöversättning eller:"

Transkript

1 729G43 Statistisk Maskinöversättning eller: Hur jag slutade ängslas (över fördjupningsuppgiften) och lärde mig hata stoppord. Jonas Hilmersson

2

3 Innehåll 1. Introduktion Datamängden Direkt maskinöversättning Ett tvåspråkigt lexikon Statistisk Maskinöversättning Diskussion Litteraturförteckning... 8

4 1. Introduktion Maskininlärning och artificiell intelligens är applicerbart i många kontexter och domäner. Med det inte sagt att det alltid är simpelt. Mänskligt (läs naturligt) språk är komplext och varierar väldigt, både inom ett språk och mellan olika språk. Även när språket skalas från en stor del av sina beståndsdelar när det återges i text. Ett lämpligt tillämpningsområde för vad som kan kallas artificiell intelligens; maskininlärning, är därmed översättning från ett språk till ett annat och det är ett fält där det har skett många framsteg bara det senaste decenniet, men där det fortfarande finns många förbättringar att göra. För den här rapporten sammanställdes en rudimentär (och det måste erkännas väldigt bristande) maskinöversättare i form av två python-skript, ett som används för att bearbeta den valda datamängden och ett som används för att översätta en mening baserat på de mått och värden som framkommer under bearbetningen av datamängden. 2. Datamängden Datamängden som användes för den här rapporten hämtades från statmt.org (European Parliament Proceedings Parallel Corpus , 2012). För att den valda modellen ska kunna tillämpas måste två korpusar som uteslutande innehåller motsvarande meningar från bägge språk användas. Som väntat så visade det sig att mängden data har stor betydelse för modellens slutgiltiga funktion och anledningen till att modellen delades upp i två separata skript var hur lång tid det tog att bearbeta datamängden när mer data inkluderades i bearbetningen. Exakt hur mycket mängden data påverkar modellens funktion är svårt att avgöra utan någon form av mått på modellens funktion och en utvärdering hindras dessutom av den långa tiden som krävs varje gång skriptet körs. 1

5 3. Direkt maskinöversättning En grundläggande typ av maskinöversättning är vad som kallas för direktöversättning (eng. Direct Translation). En översättare av den typen översätter ord för ord i en given mening baserat på statiska värden gällande endast det givna ordet. På så sätt liknar den en N-gram modell (Jurafsky & Martin, 2009, s. 117), men istället för att generera nästa ord så genererar den motsvarande ord på det språk som meningen ska översättas till. En sådan modell kan därmed sägas vara begränsad till att endast vara lämplig för att översätta språk med samma grammatiska struktur (till exempel svenska och norska). De fyra beståndsdelarna i en sådan modell kan representeras som i bilden nedan. Bild 1: Modell för direkt maskinöversättning. Den viktigaste delen, indikerat i bilden med hjälp av dess storlek är ett tvåspråkigt lexikon (Jurafsky & Martin, 2009, s. 904). Både den morfologiska analysen och den morfologiska generationen kan anta många olika former beroende på språk, typ av text och formen på den data som skripten appliceras på. Ett begränsat antal av dessa kommer diskuteras i den här rapporten. Den första morfologiska bearbetningen som övervägdes var kombinationen av engelska substantiv i bestämd form från två separata ord till en gemensam fras (från the följt av substantiv till the substantiv. Detta utelämnades i slutändan på grund av en bristande insyn i hur denna ändring i antal ord som ska jämföras påverkar resultatet. En annan morfologisk bearbetning som övervägdes var att ta hänsyn till när två ord är väldigt lika eller har motsvarande egenskaper, som till exempel en stor bokstav eller en parentes och implementera vikter för dessa på något sätt. Detta utelämnades på grund av ovisshet gällande var i processen detta ska implementeras och vilket värde vikterna skulle ha. 4. Ett tvåspråkigt lexikon Det tvåspråkiga lexikonet visade sig som redogjort för ovan vara ytterst väsentlig, inte bara för framgången hos modellen som togs fram för den här rapporten, men också för den

6 generella genomförbarheten i att ta fram en sådan modell och utformningen av det skript som skapar lexikonet utgjorde en anmärkningsvärt stor del av det hela arbetet. Den modell som implementerades för att skapa ett sådant lexikon kan representeras som en matris med ord från bägge språk i varsin axel och den gemensamma förekomsten av orden i motsvarande meningar, i varje cell. En sådan matris kan representeras grafiskt som i bilden nedan. Bild 2: Matris innehållande värden som motsvarar den gemensamma förekomsten av de bearbetade orden från bägge språken (Hiemstra, 1996, s. 24). För matrisen ovan har bara meningar med två ord använts och det holländska ordet ik har då till exempel förekommit i tre meningar där meningen på engelska har innehållit ordet I. Ett värde på 1 fördelas över alla ord i den motsvarande meningen. Detta kan vid första anblick framstå som bristfälligt, men det innebär att meningarnas grammatiska struktur inte påverkar bearbetningen och detta är också en förutsättning för den översättning som ska genomföras. Denna matris sammanställdes i skriptet som ett dictionary där ord som inte finns representerade i en motsvarande mening utelämnas, delvis för att begränsa storleken på det dictionary som skapas. Detta kan vara ett misstag. Alla ord borde kanske ha representerats med en ett visst av smoothing tillämpat för varje ord för att undvika operationer med noll senare. I modellen som användes löstes detta som sagt istället genom att de ord som hade haft värdet noll helt enkelt inte representeras, men detta leder till andra problem senare i översättningen. Det första skriptet har tre funktioner som följer nedan:

7 en funktion för att omvandla (en vald mängd) rådata till hanterbar data (i verkligheten omvandla två radseparerade textfiler med motsvarande meningar till varsin nästlad lista där varje bearbetad mening representeras av en egen lista) en funktion för att spara den bearbetade datamängden i separata filen för senare bearbetning en funktion för att skapa lexikonet i form av ett dictionary där varje nyckel är ett är ord tillhörande språk x och varje värde ett eget dictionary med varje ord tillhörande språk y som (enligt modellen) är en potentiell översättning till ordet som representeras i den yttre nyckeln, som nycklar och den uppskattade sannolikheten för att varje ord utgör den bäst lämpade översättningen, som värden (funktionen kördes två gånger, en gång för varje språk) De två första funktionerna är python-relaterade snarare än relaterade till maskinöversättning och är inte väsentliga för modellens implementation. Den tredje funktionen är då den som skapar lexikonet och den funktion som är relevant att ta del av för förståelsen av modellen. Funktionen visas nedan. def create_dictionary(x_list, y_list, x_stop_words, y_stop_words): x_to_y={} for x_sentence, y_sentence in zip(x_list, y_list): for x_word in x_sentence: if x_word.lower() not in x_to_y: x_to_y[x_word.lower()]={'word_count': 0} x_to_y[x_word.lower()]['word_count'] += 1 for y_word in y_sentence: if not ((x_word.lower() in x_stop_words) and (y_word.lower() in y_stop_words)) or ((x_word.lower() not in x_stop_words) and (y_word.lower() not in y_stop_words)): if y_word.lower() not in x_to_y[x_word.lower()]: x_to_y[x_word.lower()][y_word.lower()] = 0 x_to_y[x_word.lower()][y_word.lower()] += 1/len(x_sentence) return x_to_y Funktion 1: Den funktion som skapar det lexikon som används i modellen. Det dictionary som skapas av funktionen skulle kunna se ut som visas nedan. {'bold': {'djärv': 0.5, 'modig': 0.25, 'aldrig': 0.25}, 'when': {'när': 0,5, 'hur': 0.5, 'var': 0.5}}

8 Observera att detta är ett exempel med godtyckliga värden. Faktiska värden utelämnas i förmån för ett godtyckligt exempel på grund av dimensionerna hos det genererade lexikonet (om datamängden ska vara ens i närheten av tillräcklig och ett ord förekommer i mer än en mening så innehåller varje ords dictionary väldigt snabbt ett stort antal ord som nycklar med långa floattal som värden). Observera också att stoppord bara kan paras ihop med andra stoppord. Utan denna begränsning blir modellen i praktiken värdelös då stoppord kommer vara de mest förekommande för varje ord i datamängden (samma grupp av ett litet antal stoppord dessutom). Detta var den första morfologiska bearbetningen som implementerades och möjligtvis den mest avgörande för att modellen i slutändan skulle uppvisa någonting som ens liknar förmågan att översätta en mening. För att möjliggöra detta inkluderades två listor med stoppord i skriptet, en för varje språk. Dessa används sedan när skriptet körs för att separera de stopp-ord som skriptet stöter på (skildrat i den långa if(not)-satsen i bilden ovan). De två listor på stopp-ord, svenska respektive engelska, som användes hämtades från Ranks NL (Stopwords, 2019). 5. Statistisk Maskinöversättning En mer avancerad och användbar variant av maskinöversättning är vad som kallas för Statistisk Maskinöversättning (Statistical Machine Translation på engelska). Det är en förlängning av den modell som visas ovan som. Vid statistisk maskinöversättning så kapar man modellen vid det moment där översättningen sker i förmån för en rad uträkningar och samband som har som syfte att med hjälp av statistik och algoritmiska regler producera en bättre översättning än en den som genereras vid direkt maskinöversättning. Målet med modellen är att översätta en mening från ett språk till ett annat. Vi använder från svenska till engelska som exempel. Med hjälp av de värden som sammanställdes av det första skriptet ska vi då räkna ut sannolikheten för en engelsk mening givet en svensk mening, eller: P(E S) där E representerar en engelsk mening och S en svensk mening (observera mening och inte ord, till skillnad från vid direktöversättning).

9 Med hjälp av en tillämpning av Bayes regel (Jurafsky & Martin, 2009, s. 911)så kan vi skriva om vårt uttryck till: P(S E)P(E) Detta är uttrycket som kommer användas för den statistiska uträkningen. Det innebär att vi istället för att räkna ut sannolikheten för en engelsk mening givet en svensk mening (vilket kan anses vara det mest intuitiva) kommer räkna ut sannolikheten för den svenska meningen givet den svenska meningen och multiplicera detta med den absoluta sannolikheten för att den engelska meningen förekommer i datamängden. Vi kommer dessutom göra detta för varje engelsk mening i datamängden. Hur dessa sannolikheter räknas ut visas nedan: P(S E) = P(S E1) P(S E2) P(S El) Representerat här är produkten av sannolikheten för första ordet i den svenska meningen givet det första ordet i den engelska meningen, andra ordet i den svenska meningen givet det andra ordet i den engelska meningen, osv. P(E) = P(EI)P(E2) P(El) Representerat här är produkten av den absoluta sannolikheten för varje ord i den engelska meningen, det vill säga hur ofta varje ord i den engelska meningen förekommer i proportion till det totala antalet ord. När dessa två värden multipliceras med varandra för varje engelsk mening så bör då den mest sannolika meningen kunna urskiljas. Observera här att eventuell påverkan av ordföljden i varje mening i teorin är försumbar tack vare att vi fördelade sannolikheten på alla ord i den motsvarande meningen tidigare. Den första som tillämpas Det skript som används för att genomföra detta innehåller fyra funktioner: den första funktionen används för att läsa de filer som skapades av det första skriptet den andra funktionen räknar ut hur många ord som finns totalt i datamängden

10 den tredje funktionen räknar ut P(S E) för varje mening med hjälp av det lexikon som sammanställdes av det första skriptet den fjärde funktionen räknar ut P(E) med hjälp av en ordräknare som inkluderades i lexikonet och den summa som returneras av den andra funktionen Nedan visas de senare tre funktionerna: def calculate_total_word_count(word_dict): total = 0 word_count_dict = {} for word in word_dict: if word not in word_count_dict: word_count_dict[word] = 0 word_count_dict[word] = word_dict[word]['word_count'] total += word_dict[word]['word_count'] return (total, word_count_dict) def translate_sentence(x_sentence, y_sentences, y_words, y_words_count, y_words_total): translation = "" max_p = 0 for y_sentence in y_sentences: P_X_Y = 1 for y_word, x_word in zip(y_sentence, x_sentence): if x_word.lower() in y_words[y_word.lower()]: P_X_Y *= y_words[y_word.lower()][x_word.lower()] if P_X_Y!= 0: P_Y = calculate_p_y(y_sentence, y_words_count, y_words_total) P_Y_P_X_Y = P_Y * P_X_Y if (P_Y_P_X_Y > max_p): if P_X_Y > max_p: max_p = P_X_Y translation = ' '.join(y_sentence) return translation def calculate_p_y(sentence, words_count, words_total): P_Y = 1 for word in sentence: if word.lower() in words_count: P_Y *= words_count[word.lower()] return P_Y//words_total Resultatet av den tredje och fjärde funktionen för varje mening multipliceras och den mening som uppskattas ha högst sannolikhet returneras och ska då utgöra en lämplig översättning för den svenska meningen. I teorin.

11 6. Diskussion Så här långt kom jag inte i mitt arbete. Mitt skript kan inte genomföra uträkningarna som krävs för att räkna ut P(E) på grund av det stora antal decimaler som krävs. Jag tror inte att det är en faktisk begränsning i python, utan att jag bara inte har hittat lösningen. Det går att köra skriptet om dessa uträkningar exkluderas, men även då är modellen långt ifrån funktionell. Jag skulle säga att jag tror att modellen har all potential att fungera, så länge den har tillgång till tillräckligt mycket data. Saken är den att det finns så otroligt många variationer på hur en mening kan se ut och att behandla eller ens är inte tillräckligt för att göra en sådan gissning som den här modellen gör och om jag ökar datamängden som behandlas så får jag memory errors. Därmed inte sagt att modellen är obrukbar. Det finns många förbättringar som kan göras för att effektivisera skripten och heuristiker och morfologisk bearbetning som har potential att förbättra databearbetningen samt uträknandet av sannolikheten för varje mening och därmed potentiellt förbättra översättningen. 1. LITTERATURFÖRTECKNING European Parliament Proceedings Parallel Corpus (den 15 May 2012). Hämtat från statmt.org: Hiemstra, D. (1996). Using statistical methods to create a bilingual dictionary. Enschede: University of Twente. Jurafsky, D., & Martin, J. H. (2009). Speech and Language Processing. Upper Saddle River: Pearson Education. Stopwords. (den 14 April 2019). Hämtat från Ranks NL:

Dependensregler - Lathund

Dependensregler - Lathund Dependensregler - Lathund INTRODUKTION I textprogrammet TeCST är det möjligt för en skribent att skriva, redigera och klistra in text för att få ut läsbarhetsmått och få förslag på hur texten kan skrivas

Läs mer

Johan Karlsson Johka490. Statistical machine translation JOHAN KARLSSON

Johan Karlsson Johka490. Statistical machine translation JOHAN KARLSSON Johan Karlsson Johka490 Statistical machine translation JOHAN KARLSSON Innehåll Introduktion... 2 Bakgrund... 3 Statistiska maskinöversättningssystem... 3 Hur ett SMT-system fungerar... 4 Motsvarighetsmodell

Läs mer

Taltaggning. Rapport av Daniel Hasselrot 781105-0157, d98-dha@nada.kth.se 13 oktober 2003

Taltaggning. Rapport av Daniel Hasselrot 781105-0157, d98-dha@nada.kth.se 13 oktober 2003 Taltaggning av Daniel Hasselrot 781105-0157, d98-dha@nada.kth.se 13 oktober 2003 Sammanfattning Denna rapport är skriven i kursen Språkteknologi och behandlar taggning av årtal i en text. Metoden som används

Läs mer

Cristina Eriksson oktober 2001

Cristina Eriksson oktober 2001 Maskinöversättning Cristina Eriksson 660719-4005 d98-cer@nada.kth.se 15 oktober 2001 1 Sammanfattning Att låta en maskin översätta från ett språk till ett annat är ett forskningsområde som man lägger ner

Läs mer

2012-05-10. Mekaniskt lexikon, patenterat av George Artsrouni på tidigt 1930 tal Perforerade pappersband och avläsningsnockar 1 ord per 3 sekunder

2012-05-10. Mekaniskt lexikon, patenterat av George Artsrouni på tidigt 1930 tal Perforerade pappersband och avläsningsnockar 1 ord per 3 sekunder Mekaniskt lexikon, patenterat av George Artsrouni på tidigt 1930 tal Perforerade pappersband och avläsningsnockar 1 ord per 3 sekunder 1 Leibniz, tidigt 1600 tal Descartes, tidigt 1600 tal Petr Smirnov

Läs mer

Linköpings universitet Artificiell Intelligens II 729G11 HT Maskinöversättning. med hjälp av statistik. Erik Karlsson

Linköpings universitet Artificiell Intelligens II 729G11 HT Maskinöversättning. med hjälp av statistik. Erik Karlsson Maskinöversättning med hjälp av statistik Erik Karlsson erika669@student.liu.se Innehåll Inledning... 1 Bakgrund och historia... 2 Historia... 2 Klassiska designer... 2 Direkt översättning... 2 Interlingua...

Läs mer

- ett statistiskt fråga-svarsystem

- ett statistiskt fråga-svarsystem - ett statistiskt fråga-svarsystem 2010-09-28 Artificiell intelligens II Linnea Wahlberg linwa713 1 Innehåll Introduktion... 1 Grundprinciper för asked!... 2 Retrieval model... 4 Filter model... 6 Komponenter...

Läs mer

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping Fuzzy Logic När oskarpa definitioner blir kristallklara Linköpings Universitet Linköping Sammanfattning I denna fördjupningsuppgift har jag fokuserat på Fuzzy Logic och försökt att beskriva det på ett

Läs mer

Maskinöversättning 2008

Maskinöversättning 2008 Maskinöversättning 2008 F4 Översättningsstrategier, forts + Återanvändning av översättning LABEL byta SOURCE =byta.vb.1 TARGET =change.vb.1 TRANSFER LABEL byta-filter SOURCE

Läs mer

Gränssnitt för FakeGranska. Lars Mattsson

Gränssnitt för FakeGranska. Lars Mattsson Gränssnitt för FakeGranska av Lars Mattsson (larsmatt@kth.se) Innehållsförteckning 1 Introduktion...3 2 Genomförande:...3 3 Användning...5 4 Kända buggar:...6 5 Källförteckning...6 2 1 Introduktion Taken

Läs mer

Tentamen 2016-01-13. Marco Kuhlmann

Tentamen 2016-01-13. Marco Kuhlmann TDDD02 Språkteknologi för informationssökning (2015) Tentamen 2016-01-13 Marco Kuhlmann Denna tentamen består av 10 frågor. Frågorna 8 10 ligger på en högre kunskapsnivå än de övriga och kräver utförliga

Läs mer

Kursplaneöversättaren. Lina Stadell

Kursplaneöversättaren. Lina Stadell Kursplaneöversättaren Lina Stadell lina.stadell@convertus.se 2017-11-13 Innehåll Allmänt Språkliga resurser Översättningsprocessen Översättningsproblem Stavningskontroll Allmänt Bygger på egenutvecklad

Läs mer

Introduktion till programmering SMD180. Föreläsning 9: Tupler

Introduktion till programmering SMD180. Föreläsning 9: Tupler Introduktion till programmering Föreläsning 9: Tupler 1 1 Sammansatta datatyper Strängar Sekvenser av tecken Icke muterbara Syntax: "abcde" Listor Sekvenser av vad som helst Muterbara Syntax: [1, 2, 3]

Läs mer

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata. Att förstå variabler Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata. Vad är en variabel? En variabel är en plats att lagra information. Precis

Läs mer

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2 Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2 Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok,

Läs mer

Grundläggande textanalys. Joakim Nivre

Grundläggande textanalys. Joakim Nivre Grundläggande textanalys Joakim Nivre Om kursen Ni har hittills läst Lingvistik Datorteknik Matematik Språkteknologiska tillämpningar Nu ska vi börja med språkteknologi på allvar Hur gör man text hanterbar

Läs mer

MÖSG ht 2005 Maskinöversättningssystemet MATS

MÖSG ht 2005 Maskinöversättningssystemet MATS MÖSG ht 2005 Maskinöversättningssystemet MATS Per Weijnitz perweij@stp.ling.uu.se Om detta kursmoment främja förståelse av översättningsproblem MÖ-arbete regelbaserade MÖ-system godtyckligt valt system?

Läs mer

Projekt i språkteknologi Projektförslag Johanna Karlsson joka1954

Projekt i språkteknologi Projektförslag Johanna Karlsson joka1954 Projekt i språkteknologi Projektförslag Johanna Karlsson 870411-7129 joka1954 1. Inledning Opus är en växande parallell korpus med data från många olika språk (Tiedemann, 2009). Data som finns i OPUS i

Läs mer

MMA132: Laboration 2 Matriser i MATLAB

MMA132: Laboration 2 Matriser i MATLAB MMA132: Laboration 2 Matriser i MATLAB Introduktion I den här labben skall vi lära oss hur man använder matriser och vektorer i MATLAB. Det är rekommerad att du ser till att ha laborationshandledningen

Läs mer

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock Inledning Vad är ett datorprogram, egentligen? Olika språk Problemlösning och algoritmer 1 (14) Varför använda en dator? Genom att variera de program som styr datorn kan den användas för olika uppgifter.

Läs mer

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

LINKÖPINGS UNIVERSITET 729G11, Artificiell Intelligens II, HT10 SMT. En fördjupning i statistiska maskinöversättningssystem

LINKÖPINGS UNIVERSITET 729G11, Artificiell Intelligens II, HT10 SMT. En fördjupning i statistiska maskinöversättningssystem LINKÖPINGS UNIVERSITET 729G11, Artificiell Intelligens II, SMT En fördjupning i statistiska maskinöversättningssystem johka299@student.liu.se 2010-10-01 Innehållsförteckning 1. Introduktion till översättning...

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

Maskininlärning med boostrapping. Maskininlärningslabb i Språkteknologi

Maskininlärning med boostrapping. Maskininlärningslabb i Språkteknologi Maskininlärning med boostrapping Maskininlärningslabb i Språkteknologi Abstrakt Vi undersöker, med hjälp av maskininlärningslabben från denna kurs, hur pass bra resultat bootstrapping ger i samband med

Läs mer

Convertus - kursplaneöversättning

Convertus - kursplaneöversättning Utbildningsavdelningen 2017-10-25 Convertus - kursplaneöversättning Innehåll Om Convertus kursplaneöversättning... 2 Så fungerar det... 2 Tre olika användarroller... 2 Arbetsgång... 3 Filnamn... 3 1. Beställa

Läs mer

Introduktion till programmering SMD180. Föreläsning 2: Variabler, uttryck och satser

Introduktion till programmering SMD180. Föreläsning 2: Variabler, uttryck och satser Introduktion till programmering Föreläsning 2: Variabler, uttryck och satser 1 1 Värden De grundläggande saker som en dator manipulerar resultaten av beräkningar kallas värden Värden vi stött på: 2 och

Läs mer

729G04 Programmering och diskret matematik

729G04 Programmering och diskret matematik Tentamen 729G04, 2013-02-15 1(9) 729G04 Programmering och diskret matematik Tentamen 2013 02 15 kl 14.00 19.00 Tillåtna hjälpmedel: Dator, penna, papper, linjal, suddgummi, godkänd(a) bok/böcker Uppgifter:

Läs mer

Applikationsexempel Timer med tryckknapp

Applikationsexempel Timer med tryckknapp Applikationsexempel Timer med tryckknapp Document title Document Identity 4655_024_01 Valid for IMSE WebMaster Pro Firmare version 1.09 or higher Date 08-04-14 Webpages version 1.09 or higher Abelko Innovation

Läs mer

Kommentarer till bedömningsmatris för Tala Kurs D

Kommentarer till bedömningsmatris för Tala Kurs D Kommentarer till bedömningsmatris för Tala Kurs D Stockholms universitet Institutionen för språkdidaktik Global bedömning Den globala bedömningen representerar bedömarens första intryck och är en övergripande

Läs mer

Kungl. Tekniska högskolan NADA Grundformer med Stava

Kungl. Tekniska högskolan NADA Grundformer med Stava Kungl. Tekniska högskolan NADA Grundformer med Stava Språkteknologi 2D1418 Höstterminen 2004 Författare: Andreas Pettersson az@kth.se 1. Bakgrund Om man automatiskt ska plocka ut de informationsbärande

Läs mer

SPRÅKKONTAKT OCH F2: SPRÅKKONTAKTBASERAD FLERSPRÅKIGHET/ SPRÅKFÖRÄNDRING VT2014 SPRÅKFÖRÄNDRING - MEKANISMER

SPRÅKKONTAKT OCH F2: SPRÅKKONTAKTBASERAD FLERSPRÅKIGHET/ SPRÅKFÖRÄNDRING VT2014 SPRÅKFÖRÄNDRING - MEKANISMER SPRÅKKONTAKT OCH FLERSPRÅKIGHET/ SPRÅKFÖRÄNDRING VT2014 F2: SPRÅKKONTAKTBASERAD SPRÅKFÖRÄNDRING - MEKANISMER Josefin Lindgren josefin.lindgren@lingfil.uu.se 9/4 2014 GENERELL PROBLEMATIK Hur kan vi följa

Läs mer

Kommentarer till bedömningsmatris för Tala Kurs D

Kommentarer till bedömningsmatris för Tala Kurs D Kommentarer till bedömningsmatris för Tala Kurs D Stockholms universitet Institutionen för språkdidaktik Global bedömning Den globala bedömningen representerar bedömarens första intryck och är en övergripande

Läs mer

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann 729G43 Artificiell intelligens / 2015 Maskininlärning 3 Marco Kuhlmann Förra gången: Perceptroninlärning Beslutsregel predicerat y-värde Exempel: AND Välj parametrar θ 0, θ 1, θ 2 sådana att perceptronen

Läs mer

Tommy Färnqvist, IDA, Linköpings universitet. 1 ADT Map/Dictionary 1 1.1 Definitioner... 1 1.2 Implementation... 2

Tommy Färnqvist, IDA, Linköpings universitet. 1 ADT Map/Dictionary 1 1.1 Definitioner... 1 1.2 Implementation... 2 Föreläsning 5 ADT Map/Dictionary, hashtabeller TDDI16: DALG Utskriftsversion av föreläsning i Datastrukturer och algoritmer 16 september 2015 Tommy Färnqvist, IDA, Linköpings universitet 5.1 Innehåll Innehåll

Läs mer

Här är två korta exempel på situationer då vi tillämpar den distributiva lagen:

Här är två korta exempel på situationer då vi tillämpar den distributiva lagen: Modul: Algebra Del 8: Avslutande reflektion och utvärdering Distributiva lagen Cecilia Kilhamn, Göteborgs Universitet Distributiva lagen a (b + c) = a b + a c Den distributiva lagen kallas den räknelag

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

Perceptron som ordklasstaggare: ett fördjupningsarbete i 729G43 -Artificiell Intelligens

Perceptron som ordklasstaggare: ett fördjupningsarbete i 729G43 -Artificiell Intelligens Perceptron som ordklasstaggare: ett fördjupningsarbete i 729G43 -Artificiell Intelligens Niklas Blomstrand Linköpings Universitet Inledning Att veta vilken ordklass ett ord tillhör är en viktig del i bearbetning

Läs mer

Word- sense disambiguation

Word- sense disambiguation KTH Word- sense disambiguation Inlämningsuppgift - DD2418 - sprakt12 Mattias Uskali & Emilia Hillert 1/8/2013 Sammanfattning Denna rapport kommer att undersöka två metoder för word- sense disambiguation,

Läs mer

Lektion 2: Sökagenter. Robin Keskisärkkä

Lektion 2: Sökagenter. Robin Keskisärkkä Lektion 2: Sökagenter Robin Keskisärkkä Lektionens innehåll Introduktion till laboration 2 Implementation av en sökalgoritm Livekodning Konfrontera ett liknande problem själva Extra: Heuristisk sökning

Läs mer

KPP053, HT2016 MATLAB, Föreläsning 1. Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner

KPP053, HT2016 MATLAB, Föreläsning 1. Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner KPP053, HT2016 MATLAB, Föreläsning 1 Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner MATLAB Väletablerat Mycket omfattande program GNU OCTAVE Öppen

Läs mer

Kompilatorer och interpretatorer

Kompilatorer och interpretatorer 1 of 6 Örebro universitet Institutionen för teknik Thomas Padron-McCarthy (Thomas.Padron-McCarthy@oru.se) Tentamen i Kompilatorer och interpretatorer för Dataingenjörsprogrammet m fl lördag 7 november

Läs mer

Lingvistik I Delmoment: Datorlingvistik

Lingvistik I Delmoment: Datorlingvistik Lingvistik I Delmoment: Datorlingvistik evapet@stp.lingfil.uu.se 1 Lingvistik I, 12 februari 2007 Föreläsningsöversikt Datorlingvistik/språkteknologi vad är det? Några språkteknologiska tillämpningsområden:

Läs mer

Forskning och utveckling inom språkteknologi Uppgift 3: Projektförslag Parallelliserad dependensparsning i CUDA

Forskning och utveckling inom språkteknologi Uppgift 3: Projektförslag Parallelliserad dependensparsning i CUDA Forskning och utveckling inom språkteknologi Uppgift 3: Projektförslag Parallelliserad dependensparsning i CUDA Evelina Andersson 18 maj 2011 1 Introduktion Att träna mycket för att bli duktig på ett språk

Läs mer

729G74 IT och programmering, grundkurs. Tema 3. Föreläsning 2 Jody Foo,

729G74 IT och programmering, grundkurs. Tema 3. Föreläsning 2 Jody Foo, 729G74 IT och programmering, grundkurs Tema 3. Föreläsning 2 Jody Foo, jody.foo@liu.se Föreläsningsöversikt Repetition: syntax-quiz Fler for-loopar (över listor och dictionaries) range() Nästlade strukturer

Läs mer

Föreläsningsanteckningar, Introduktion till datavetenskap HT S4 Datastrukturer. Tobias Wrigstad

Föreläsningsanteckningar, Introduktion till datavetenskap HT S4 Datastrukturer. Tobias Wrigstad 1 Datatyper Tobias Wrigstad Det finns flera olika typer av (slags) data Olika datatyper har olika egenskaper. T.ex. är ett personnummer inte ett tal. (Den sista siffran skall stämma enligt den s.k. Luhnalgoritmen

Läs mer

TAIU07 Matematiska beräkningar med MATLAB för MI. Fredrik Berntsson, Linköpings Universitet. 15 januari 2016 Sida 1 / 26

TAIU07 Matematiska beräkningar med MATLAB för MI. Fredrik Berntsson, Linköpings Universitet. 15 januari 2016 Sida 1 / 26 TAIU07 Matematiska beräkningar med MATLAB för MI Fredrik Berntsson, Linköpings Universitet 15 januari 2016 Sida 1 / 26 TAIU07 Kursmål och Innehåll Målet med kursen är att Ge grundläggande färdighet i att

Läs mer

Introduktion till programmering SMD180. Föreläsning 4: Villkor och rekursion

Introduktion till programmering SMD180. Föreläsning 4: Villkor och rekursion Introduktion till programmering Föreläsning 4: Villkor och rekursion 1 1 Några inbyggda funktioner (med resultat!) Konverterar mellan de grundläggande typerna: >>> int("32") 32 >>> int(3.999) 3 >>> float(32)

Läs mer

Kryptering & Chiffer Del 2

Kryptering & Chiffer Del 2 Kryptering & Chiffer Del Vigenere Vigenere är en annan krypteringsmetod som är mer avancerad än de två föregående. Denna metod är säkrare men långt ifrån säker om man använder dåliga nycklar. Det finns

Läs mer

Arrayer (vektorer) Murach s: kap Elektronikcentrum i Svängsta AB

Arrayer (vektorer) Murach s: kap Elektronikcentrum i Svängsta AB Arrayer (vektorer) Murach s: kap 8 2013-01-15 1 Elektronikcentrum i Svängsta AB Arrayer Arrayer (vektorer) Ofta i ett program har vi flera variabler av samma datatyp som är relaterade till varandra. Exempel

Läs mer

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok, t.ex. den rekommenderade kursboken. Boken får ha anteckningar,

Läs mer

Statistisk maskinöversättning

Statistisk maskinöversättning Statistisk maskinöversättning Åsa Holmqvist Asaho232 Artificiell Intelligens 729G43 Innehållsförteckning Introduktion... 1 Maskinöversättningens historia.... 1 Statistisk metod... 3 Brusiga kanalen....

Läs mer

Business research methods, Bryman & Bell 2007

Business research methods, Bryman & Bell 2007 Business research methods, Bryman & Bell 2007 Introduktion Kapitlet behandlar analys av kvalitativ data och analysen beskrivs som komplex då kvalitativ data ofta består av en stor mängd ostrukturerad data

Läs mer

Föreläsning 18 Filer och avbildningar

Föreläsning 18 Filer och avbildningar Föreläsning 18 Filer och avbildningar Grundkurs i programmering Jan Lönnberg Institutionen för datateknik -universitetets högskola för teknikvetenskaper 15.11.2011 Avbildningar Hur skulle du göra en: Ordlista

Läs mer

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok, t.ex. den rekommenderade kursboken. Boken får ha anteckningar,

Läs mer

Datastrukturer och algoritmer

Datastrukturer och algoritmer Innehåll Datastrukturer och algoritmer Föreläsning 2 Fält Specifikation, Konstruktion och Specifikation, Konstruktion Dynamiska resurser Länk Länkade celler 23 24 Konstruktion av Fält Fysisk datatyp i

Läs mer

Tentamen, EDA501/EDAA20 Programmering M MD W BK L

Tentamen, EDA501/EDAA20 Programmering M MD W BK L LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Tentamen, EDA501/EDAA20 Programmering M MD W BK L 2017 05 31, 8.00 13.00 Anvisningar: Preliminärt ger uppgifterna 9 + 12 + 10 + 9 = 40 poäng.

Läs mer

729G04 Programmering och diskret matematik. Python 2: Villkorssatser, sanningsvärden och logiska operatorer

729G04 Programmering och diskret matematik. Python 2: Villkorssatser, sanningsvärden och logiska operatorer 729G04 Programmering och diskret matematik Python 2: Villkorssatser, sanningsvärden och logiska operatorer Föreläsningsöversikt Vad händer när vi kör vår pythonkod? Programmerare Villkorssatser Jämförelser

Läs mer

Avbildningar och hashtabeller. Koffman & Wolfgang kapitel 7, mestadels avsnitt 2 4

Avbildningar och hashtabeller. Koffman & Wolfgang kapitel 7, mestadels avsnitt 2 4 Avbildningar och hashtabeller Koffman & Wolfgang kapitel 7, mestadels avsnitt 2 4 1 2 Mängder i Java 3 Mängd-gränssnittet Set vs. List Mängder får endast innehålla unika element: Metoden.add(E) returnerar

Läs mer

Undervisningen ska erbjuda möjlighet till anpassning av stoff efter elevernas intresse och utbildning.

Undervisningen ska erbjuda möjlighet till anpassning av stoff efter elevernas intresse och utbildning. SVENSKT TECKENSPRÅK Ett välutvecklat teckenspråk är av betydelse för dövas och hörselskadades lärande i och utanför skolan. När språket utvecklas ökar förmågan att reflektera över, förstå, värdera och

Läs mer

Det finns mycket kritik som förs fram om skolan i allmänhet samtidigt

Det finns mycket kritik som förs fram om skolan i allmänhet samtidigt Joakim Samuelsson Expert i matematikklassrummet Vad är det som kännetecknar skickliga matematiklärare? Artikelförfattaren har följt en erkänt duktig matematiklärare och sett hur han bedriver sin undervisning.

Läs mer

Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator

Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator Viktiga begrepp Den här ordlistan är till för dig som går kursen Om Programmering. Eftersom detta är en grundläggande kurs har vi i vissa fall gjort en del förenklingar. En del begrepp är svåra att förenkla,

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

Laboration: Whitebox- och blackboxtesting

Laboration: Whitebox- och blackboxtesting Tilda11 höstterminen 2011 Laboration: Whitebox- och blackboxtesting Mål med laborationen Du ska lära dig begreppen white-box testing och black-box testing Du ska öva dig på att konstruera testfall Du ska

Läs mer

Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk

Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk Föreläsning 2 steknik och C DD1316 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program

Läs mer

Hur man programmerar. Exempel på problemlösning i Python

Hur man programmerar. Exempel på problemlösning i Python Hur man programmerar Exempel på problemlösning i Python Problemet Som vokaler i engelska språket räknar vi i denna uppgift bokstäverna aeuio, och som konsonanter alla andra bokstäver utom y (y fungerar

Läs mer

729G04 Programmering och diskret matematik

729G04 Programmering och diskret matematik Tentamen 729G04, 2013-01-11 1(8) 729G04 Programmering och diskret matematik Tentamen 2013 01 11 kl 08.00 13.00 Tillåtna hjälpmedel: Dator, penna, papper, linjal, suddgummi, godkänd(a) bok/böcker Uppgifter:

Läs mer

Föreläsning 5: Modellering av frasstruktur. 729G09 Språkvetenskaplig databehandling Lars Ahrenberg

Föreläsning 5: Modellering av frasstruktur. 729G09 Språkvetenskaplig databehandling Lars Ahrenberg Föreläsning 5: Modellering av frasstruktur 729G09 Språkvetenskaplig databehandling Lars Ahrenberg 2014-05-05 1 Översikt Introduktion generativ grammatik och annan syntaxforskning Att hitta mönster i satser

Läs mer

ÖU2100, Översättarutbildning 1. Magisterutbildning, 60 högskolepoäng

ÖU2100, Översättarutbildning 1. Magisterutbildning, 60 högskolepoäng Humanistiska fakultetsnämnden ÖU2100, Översättarutbildning 1 Magisterutbildning, 60 högskolepoäng Professional Translation 1, 60 higher education credits Avancerad nivå Second Cycle 1. Fastställande Kursplanen

Läs mer

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python. är, som Scheme, ett interpreterat språk men det finns kompilatorer för. När man interpreterar ett språk tillhandahåller man en interpretator som läser sats för sats och försöker tolka den. När man kompilerar

Läs mer

Programmering för Språkteknologer II. Innehåll. Associativa datastrukturer. Associativa datastrukturer. Binär sökning.

Programmering för Språkteknologer II. Innehåll. Associativa datastrukturer. Associativa datastrukturer. Binär sökning. Programmering för Språkteknologer II Markus Saers markus.saers@lingfil.uu.se Rum -040 stp.lingfil.uu.se/~markuss/ht0/pst Innehåll Associativa datastrukturer Hashtabeller Sökträd Implementationsdetaljer

Läs mer

Anna Sågvall Hein, Institutionen för lingvistik, Uppsala universitet Rosenbad/2001-08-24. Automatisk översättning och översättningshjälpmedel

Anna Sågvall Hein, Institutionen för lingvistik, Uppsala universitet Rosenbad/2001-08-24. Automatisk översättning och översättningshjälpmedel Automatisk översättning och översättningshjälpmedel 1 / 4 Klassiska problem med maskinöversättning orealistiska förväntningar dåliga översättningar svårigheter att integrera maskinöversättning i arbetsflödet

Läs mer

Tvåspråkighetssatsning Manillaskolan ~^

Tvåspråkighetssatsning Manillaskolan ~^ VCc ^j^\ Tvåspråkighetssatsning Manillaskolan ~^ Specialpedagogiska skolmyndigheten Definition Tvåspråkighet: Funktionell tvåspråkighet innebär att kunna använda båda språken för att kommunicera med omvärlden,

Läs mer

Innehåll. Föreläsning 11. Organisation av Trie. Trie Ytterligare en variant av träd. Vi har tidigare sett: Informell specifikation

Innehåll. Föreläsning 11. Organisation av Trie. Trie Ytterligare en variant av träd. Vi har tidigare sett: Informell specifikation Innehåll Föreläsning 11 Trie Sökträd Trie och Sökträd 356 357 Trie Ytterligare en variant av träd. Vi har tidigare sett: Oordnat träd där barnen till en nod bildar en mängd Ordnat träd där barnen till

Läs mer

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk Föreläsning 2 steknik DD1310 Python introduktion Variabler Datatyper Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program är

Läs mer

TDP Regler

TDP Regler Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt

Läs mer

Probabilistisk logik 2

Probabilistisk logik 2 729G43 Artificiell intelligens / 2016 Probabilistisk logik 2 Marco Kuhlmann Institutionen för datavetenskap Översikt Probabilistiska modeller Probabilistisk inferens 1: Betingad sannolikhet Probabilistisk

Läs mer

Lösningsförslag till tentamen i Språkteknologi 2D1418,

Lösningsförslag till tentamen i Språkteknologi 2D1418, Lösningsförslag till tentamen i Språkteknologi 2D1418, 2004-10-18 1. Stavningskontroll utan ordlista (10 poäng) a) Med 29 bokstäver i alfabetet och en specialbokstav för ordbörjan/ordslut så finns det

Läs mer

Introduktion till programmering D0009E. Föreläsning 5: Fruktbara funktioner

Introduktion till programmering D0009E. Föreläsning 5: Fruktbara funktioner Introduktion till programmering D0009E Föreläsning 5: Fruktbara funktioner 1 Retur-värden Funktioner kan både orsaka en effekt och returnera ett resultat. Hittills har vi ej definierat några egna funktioner

Läs mer

Instruktioner - Datortentamen TDDE24 och TDDD73 Funktionell och imperativ programmering (i Python)

Instruktioner - Datortentamen TDDE24 och TDDD73 Funktionell och imperativ programmering (i Python) Instruktioner - Datortentamen TDDE24 och TDDD73 Funktionell och imperativ programmering (i Python) Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok, t.ex. den rekommenderade kursboken. Boken

Läs mer

729G09 Språkvetenskaplig databehandling

729G09 Språkvetenskaplig databehandling 729G09 Språkvetenskaplig databehandling Föreläsning 2, 729G09, VT15 Reguljära uttryck Lars Ahrenberg 150409 Plan för föreläsningen Användning av reguljära uttryck Formella språk Reguljära språk Reguljära

Läs mer

Talsystem Teori. Vad är talsystem? Av Johan Johansson

Talsystem Teori. Vad är talsystem? Av Johan Johansson Talsystem Teori Av Johan Johansson Vad är talsystem? Talsystem är det sätt som vi använder oss av när vi läser, räknar och skriver ner tal. Exempelvis hade romarna ett talsystem som var baserat på de romerska

Läs mer

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python. är, som Scheme, ett interpreterat språk men det finns kompilatorer för. När man interpreterar ett språk tillhandahåller man en interpretator som läser sats för sats och försöker tolka den. När man kompilerar

Läs mer

729G75: Programmering och algoritmiskt tänkande. Tema 1. Föreläsning 1 Jody Foo

729G75: Programmering och algoritmiskt tänkande. Tema 1. Föreläsning 1 Jody Foo 729G75: Programmering och algoritmiskt tänkande Tema 1. Föreläsning 1 Jody Foo Föreläsningsöversikt Kursinfo / Om kursen Algoritmer Objektorienterad programmering i praktiken terminologi använda objekt

Läs mer

Svensk nationell datatjänst, SND BAS Online

Svensk nationell datatjänst, SND BAS Online Pass 3: Metadata Vad är metadata? I den här presentationen kommer jag ge en introduktion till metadata och forskningsdata på ett principiellt plan. Vi kommer bland annat titta lite närmare på vad metadata

Läs mer

Datastrukturer och algoritmer

Datastrukturer och algoritmer Datastrukturer och algoritmer Föreläsning 5 Algoritmer & Analys av Algoritmer Algoritmer Vad är det? Innehåll Mer formellt om algoritmer beräkningsbarhet Att beskriva algoritmer Analysera algoritmer Exekveringstid,

Läs mer

Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E. Föreläsning 4: Villkor och rekursion. Modulus-operatorn.

Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E. Föreläsning 4: Villkor och rekursion. Modulus-operatorn. Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E Föreläsning 4: Villkor och rekursion Konverterar mellan de grundläggande typerna: >>> int("") >>> int(.999) >>> float().0

Läs mer

Föreläsninsanteckningar till föreläsning 3: Entropi

Föreläsninsanteckningar till föreläsning 3: Entropi Föreläsninsanteckningar till föreläsning 3: Entropi Johan Håstad, transkriberat av Pehr Söderman 2006-01-20 1 Entropi Entropi är, inom kryptografin, ett mått på informationsinnehållet i en slumpvariabel.

Läs mer

Tommy Färnqvist, IDA, Linköpings universitet. 1 ADT Map/Dictionary 1 1.1 Definitioner... 1 1.2 Implementation... 2

Tommy Färnqvist, IDA, Linköpings universitet. 1 ADT Map/Dictionary 1 1.1 Definitioner... 1 1.2 Implementation... 2 Föreläsning 4 ADT Map/Dictionary, hashtabeller, skip-listor TDDC91: DALG Utskriftsversion av föreläsning i Datastrukturer och algoritmer 9 september 2015 Tommy Färnqvist, IDA, Linköpings universitet 4.1

Läs mer

Vardagssituationer och algebraiska formler

Vardagssituationer och algebraiska formler Modul: Algebra Del 7: Kommunikation i algebraklassrummet Vardagssituationer och algebraiska formler Cecilia Kilhamn, Göteborgs Universitet och Jörgen Fors, Linnéuniversitetet En viktig del av algebran

Läs mer

FTEA21:3 Spr akfilosofi F orel asning I Martin J onsson

FTEA21:3 Spr akfilosofi F orel asning I Martin J onsson FTEA21:3 Språkfilosofi Föreläsning I Martin Jönsson Att lära Varför Frege varken tror att ett ords mening är dess referens eller något mentalt. Freges egen teori om mening Tre semantiska principer Kompositionalitetsprincipen,

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) Uppgift 1 ( Betyg 3 uppgift ) Skriv ett program, Draw_Hexagones, som ritar ut en bikupa enligt körexemplen nedan. Exempel 1: Mata in storlek på bikupan: 1 Exempel 3: Mata in storlek på bikupan: 3 \ / \

Läs mer

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Skriven av Michael Andersson Introduktion Programmering I högnivåspråk fokuserar på själv problemet (algoritmen) istället

Läs mer

Att referera till objekt

Att referera till objekt Att referera till objekt En algoritm för generering av refererande uttryck 729G43: Artificiell intelligens Examinator: Arne Jönsson 2 Innehållsförteckning 1. Inledning... 4 1.1 Bakgrund... 4 1.2 Syfte...

Läs mer

Skrivstöd. Joakim Nivre. Introduktion till språkteknologi. Skrivstöd. Inledning. Orsaker till stavfel. Detektering av icke-ord

Skrivstöd. Joakim Nivre. Introduktion till språkteknologi. Skrivstöd. Inledning. Orsaker till stavfel. Detektering av icke-ord Joakim Nivre / 30 Varför bry sig om stavning? Stavfel kan skapa missförstånd Stavfel kan dölja innehåll Standardiserad stavning underlättar många uppgifter Slå upp ord i ordbok Identifiera svårlästa ord

Läs mer

Datastrukturer och algoritmer

Datastrukturer och algoritmer Innehåll Datastrukturer och algoritmer Föreläsning 2 Fält Specifikation, Konstruktion och Specifikation, Konstruktion Dynamiska resurser Länk Länkade celler 25 26 Fält Modell Schackbräde Organisation n-dimensionellt

Läs mer

Vektorgeometri för gymnasister

Vektorgeometri för gymnasister Vektorgeometri för gymnasister Per-Anders Svensson http://w3.msi.vxu.se/users/pa/vektorgeometri/gymnasiet.html Institutionen för datavetenskap, fysik och matematik Linnéuniversitetet Vektorer i planet

Läs mer

Formell logik Kapitel 1 och 2. Robin Stenwall Lunds universitet

Formell logik Kapitel 1 och 2. Robin Stenwall Lunds universitet Formell logik Kapitel 1 och 2 Robin Stenwall Lunds universitet Kapitel 1: Atomära satser Drömmen om ett perfekt språk fritt från vardagsspråkets mångtydighet och vaghet (jmf Leibniz, Russell, Wittgenstein,

Läs mer

Föreläsning 5 Programmeringsteknik DD1310. Modulen doctest. Exempel. Doctest Dictionary Filhantering

Föreläsning 5 Programmeringsteknik DD1310. Modulen doctest. Exempel. Doctest Dictionary Filhantering Föreläsning 5 Programmeringsteknik DD1310 Doctest Modulen doctest Man kan använda modulen doctest för att testa programmet på ett mer systematiskt sätt. Så här gör man: 1. Skriver programmets funktioner

Läs mer

Om ämnet Engelska. Bakgrund och motiv

Om ämnet Engelska. Bakgrund och motiv Om ämnet Engelska Bakgrund och motiv Ämnet engelska har gemensam uppbyggnad och struktur med ämnena moderna språk och svenskt teckenspråk för hörande. Dessa ämnen är strukturerade i ett system av språkfärdighetsnivåer,

Läs mer