INF2820 Datalingvistikk V2016 Jan Tore Lønning
INF2820 Datalingvistikk 20. januar 2016 2
I dag: 1. Time: Datalingvistikk: motivasjon og eksempler Praktisk informasjon 2. Time: Regulære språk OBS: Lov å stille spørsmål underveis
The game of the name 1. Datalingvistikk 1. Computational linguistics 3. Språkteknologi 3. (Human) Language Technology 2. Natural language processing 2.Språkprosessering / prosessering av naturlige språk Computer science Artificial intelligence (AI) NLP Data Science NLP Navnene har litt forskjellig opphav og tradisjon, eks. I dag brukes navnene til dels om hverandre 20. januar 2016 4
The name of the game Datalingvistikk Prosessering av naturlige språk Språkteknologi Språk: Norsk, arabisk, japansk, Naturlige: Oppstått Ikke oppfunnet Data Prosessering Teknologi 20. januar 2016 5
Hvorfor datalingvistikk? 1. Visjonen om kunstig intelligens (Artificial intelligence/ai) Modeller av mennesker Forstå Erstatte 2. Nyttig, anvendelser: Supplere mennesker Redskap
Skjønner datamaskinen hva jeg sier? Visjon: Intelligente maskiner Maskiner som forstår Roboter En slik maskin må: Kunne snakke og lytte Ingen intelligens uten språk
Turingtesten Kommunikasjon i naturlig språk
2011-sensasjon: Watson på Jeopardy
Nytte, eks.: oversettelse Drømmen fra 18 år siden Ikke i 2003, men hvor er vi i dag? Tekstoversettelse Oversettelse av tale
Menneske-maskininteraksjon Visjon: Kommunisere med datamaskinen som til et menneske: Eks.: 2001 en romodyssé 2011: Siri Basert på langsiktig grunnforskning: SRI
Språkteknologi 2016 Fra visjon til virkelighet Integrert i en rekke applikasjoner Drevet av: Internett/Store datamengder Mobilteknologi Anvendelser: Stave- og grammatikkontroll Talegjenkjenning, diktering Syntetisk tale, eks. GPS Maskinoversettelse Dialogsystemer Søk i tekst (innholdsrelaterte) Analyse av store tekstmengder Analyse av internett Overvåkning
Hva skal vi gjøre i INF2820? Fokusere på grunnleggende teknikker: Språk: naturlige og formelle språk Endelige tilstandsteknikker for nat.spr. Kontekstfrie grammatikker Parsing av kontekstfrie grammatikker for naturlige språk Unifikasjonsgrammatikker Semantikk (Regelbaserte metoder)
Modell Talegjenkjenning Syntaktisk og semantisk analyse Talesyntese Generering Typisk tre trinn Analyse (syntaktisk, semantisk, ) Utføring av oppgave (finn svar, transfer, ) Generer svar Rundt dette et større system: dialoghåndtering mm.
Fra NLTK
Flertydighet Den største utfordringen i språkteknologi Eksempel fra Youtube-video om Watson: 20. januar 2016 16
Verktøy Endelige tilstandsteknikker De første ukene NLTK: The Natural Language Toolkit Programmer for ulike typer NLPoppgaver Kan kombinere med egen kode Vekt på opplæring: Men også brukt for større oppgaver Bok, dokumentasjon 20. januar 2016 17
Python Gode strukturer for tekst: Strenger Lister Read-eval-print-loop Lesbar, strukturert kode: Kompakt, nesten pseudokode Gir gode programmeringsvaner Lett å lære Objektorientert Mye brukt: tilgjengelig, bibliotek, grensesnitt Nyttig senere i livet: scripting 20. januar 2016 18
Læremidler Deler av Bøker: Jurafsky og Martin, Speech and Language Processing S. Bird, E. Klein and E. Loper: Natural Language Processing with Python (Finnes på nett) Kode Presentasjoner som blir lagt ut på nett Supplerende Erstatter ikke bøker Noen artikler/web-sider/utdelt materiale OBS: Samme bok! 20. januar 2016 19
Forelesninger Jan Tore Lønning, jtl@ifi.uio.no, Forelesninger: Onsdag 14.15-16 Sted: Caml 15-16 uker 20. januar 2016 20
Gruppeundervisning Bo Bjerke-Lindstrøm Tirsdag 8.15-10 Sted alternerer mellom Datastue Chill Seminarrom Perl Første gang 26. jan. The place to be: Rom 3467 Fortran Programstue: - Informatikk: språk og kommunikasjon 20. januar 2016 21
Arbeidsformer og arbeidsmengde Forelesninger 2 t/uke Gruppe 2 t/uke Teorioppgaver I Pensumlesning I I Obligs Terminalarbeid 13 +9 t/u samlet i gj.snitt Obligatoriske oppgaver: 4 sett, alle må bestås Men: også ikkeobligatoriske oppgaver er eksamensstoff Undervisningen er eksamensrelevant selv om den ikke er obligatorisk 20. januar 2016 22
Forkunnskaper INF1000 - Grunnkurs i objektorientert programmering, INF1080 - Logiske metoder for informatikk INF1820 - Introduksjon til språk- og kommunikasjonsteknologi Disse er ikke obligatoriske, men i undervisningen regner med at du har disse kunnskapene Hvis du mangler ett av emnene vil du kunne ta INF2820, hvis Du har gode kunnskaper på de andre områdene Er villig til å legge inn en ekstra innsats 20. januar 2016 23