Simon

H. Hvidtfeldt

Simon Hvidtfeldt
Universitetsstuderende: Machine Learning og Datavidenskab

Universitetsuddannelse

Bachelor i Machine Learning & Datavidenskab

Københavns Universitet | 2024 - Nu

Om faget: Introduktion til Python, kontrolstrukturer og problemløsning.

Viden om
  • Grundlæggende begreber indenfor imperativ, objektorienteret og funktionsprogrammering.
  • Kontrolstrukturer, løkker, klasser, objekter, nedarvning og rekursion.
  • God programmeringsskik: Dokumentation, design patterns og unit testing.
  • Teknisk analyse af naturligsprogsproblemer.
Færdigheder i
  • At læse og skrive programmer (op til ca. 1000 linjer) med overholdelse af god skik.
  • Evaluere fordele og ulemper ved forskellige løsningsmodeller.
  • Implementere, afprøve og dokumentere løsningens kvalitet.
  • Anvendelse af passende studieteknik for at sikre fremdrift.
Kompetencer til
  • Analysere problemer ud fra en præcis problemformulering.
  • Udforme og programmere løsninger til det givne problem.
  • Verificere, afprøve og dokumentere den endelige løsning.

Om faget: Grundlæggende matematiske værktøjer og metoder med fokus på naturvidenskabelig anvendelse.

Viden om
  • Forståelse for elementære aspekter af matematiske emner og teorier.
  • Beherskelse af matematiske begreber i en grad, der muliggør anvendelse i det videre studium.
Færdigheder i
  • Udføre differentiation, integration og ekstremumsundersøgelser af funktioner af 1 og flere variable.
  • Løse typiske 1. og 2. ordens differentialligninger.
  • Bestemme grænseværdier, konvergens og Taylorpolynomier.
  • Udføre regning med komplekse tal og vektorer.
  • Beskrive funktioner geometrisk (grafer, niveaukurver og tangentplaner).
  • Opstille og beregne simple plan- og rumintegraler.
  • Anvendelse af Maple til matematiske beregninger.
Kompetencer til
  • At følge matematisk sprog og argumentation inden for kursets emneområder.
  • At anvende matematiske teorier og modeller, som optræder i det fortsatte studium.

Om faget: Statistiske modeller, sandsynlighedsteori og dataanalyse i R.

Viden om
  • Forståelse af fordelingsbegrebet, sandsynlighedsfunktioner og tætheder.
  • Marginale og simultane fordelinger samt middelværdi og varians.
  • Statistiske grundbegreber: Estimation, konfidensintervaller og hypotesetest.
  • Lineær regression og analyse af stikprøver.
Færdigheder i
  • Beregne sandsynligheder (inkl. betingede) vha. basale definitioner og regneregler.
  • Gennemføre beregninger vedr. marginale/simultane fordelinger.
  • Udføre estimation, beregne konfidensintervaller og udføre hypotesetest.
  • Gennemføre relevante statistiske beregninger i programmeringssproget R.
Kompetencer til
  • Oversætte tekstbaserede problemer og eksperimenter til matematisk formelsprog.
  • Opstille simple statistiske modeller (herunder lineær regression og t-test).
  • Vurdere modellernes relevans og kvantificere usikkerheder om konklusionerne.

Om faget: Fundamentet for datalogi: Logik, diskret matematik, algoritmer og datastrukturer.

Viden om
  • Grundlæggende matematisk metode, logik og elementær talteori.
  • Mængder, relationer og funktioner.
  • Asymptotisk tids- og pladskompleksitet (Big-O notation).
  • Basale datastrukturer: Lister, stakke, køer og binære søgetræer.
  • Grafer, træer og relaterede algoritmer.
Færdigheder i
  • Formulere simple matematiske argumenter og beviser.
  • Identificere relevante matematiske værktøjer til løsning af datalogiske problemer.
  • Analysere kombinatoriske problemstillinger (tælleargumenter og algebra).
  • Bestemme køretid for algoritmer ved brug af asymptotisk notation.
  • Analysere fordele og ulemper ved udvalgte algoritmer og datastrukturer.
Kompetencer til
  • Selvstændigt at løse problemer inden for logik, algoritmer og datastrukturer.
  • Udvælge korrekte metoder og teorier til problemløsning, herunder udføre formelle logiske operationer.

Om faget: Data wrangling, visualisering og design af data science pipelines.

Viden om
  • Model design og implementation: Basale begreber, strukturering og teststrategier.
  • Dataudforskning og visualisering: Eksplorativ analyse og nøglebegreber.
Færdigheder i
  • Skrive scripts til indsamling og processering af data samt indlæsning af struktureret tekst.
  • Design af modulær pipeline til dataanalyse af et konkret problem.
  • Design af meningsfulde visualiseringer.
Kompetencer til
  • Forstå centrale udfordringer i et effektivt data science work-flow.
  • Designe og forstå modulære data science pipelines.
  • Producere meningsfulde visualiseringer og dokumentere workflows, metoder og resultater.

Om faget: Design, implementering og administration af relationelle databaser samt systemudvikling.

Viden om
  • Centrale tekniske databasebegreber såsom relational model, data independence og transactions.
  • Entity-Relationship modeling (ER modeling) og relational data modeling, inklusiv transformationer fra ER til relationel model.
  • Forespørgsler i databasesprog, herunder relational calculus, relational algebra og SQL.
  • Teorien bag database normalization, herunder functional dependencies, keys og relational decompositions.
  • ACID (atomicity, consistency, isolation, durability) egenskaber og brug af transactions.
  • Indexing techniques og deres rolle i database query optimization.
  • Brug af constraints og triggers.
  • Metoder til læsning af struktureret tekst (f.eks. regular expressions, finite automata, context-free grammars).
  • Data protection regulation (GDPR).
Færdigheder i
  • Udvikle en datamodel og realisere databaseapplikationer – startende fra ER modeling, over relational modeling og normalization, til konkret SQL-baseret applikation.
  • Planlægge og styre en agile, iterativ og læringsorienteret system development process under givne ressource- og tidsbegrænsninger.
Kompetencer til
  • Udvikle et database design og implementere databaseapplikationer.
  • Deltage effektivt i en agile software development process som del af en udviklergruppe.

Om faget: Lineær algebra med fokus på ligningsløsning, matricer og anvendelse i datalogi.

Viden om
  • Fundamentale emner: Ligningsløsning, Gauss-elimination og matrixregning.
  • Vektorrumsteori: Baser for vektorrum, ortogonalitet og determinant.
  • Avancerede emner: Egenværdier, komplekse tal og diagonalisering.
  • Anvendelsesmuligheder i datalogi og implementering af algoritmer i F# eller Python.
Færdigheder i
  • Beherske fundamentale metoder og algoritmer i lineær algebra såsom matrixmanipulation (inkl. inversion), Gauss-elimination og determinantbestemmelse.
  • Bestemmelse af egenværdier og egenvektorer – både manuelt og ved computerstøttede beregninger.
  • Benytte komplekse tal i beregninger.
  • Skrive matematik og udarbejde projekter i LaTeX.
Kompetencer til
  • Identificere og løse almene lineære problemer vha. matricer.
  • Fortolke resultaterne af de fundamentale metoder og algoritmer.
  • Konstruere baser (også ortogonale) og bestemme dimension.
  • Afgøre diagonaliserbarhed og udføre basisskift.

Om faget: Teorien bag og anvendelse af supervised og unsupervised learning algoritmer.

Viden om
  • De grundlæggende principper for machine learning.
  • Grundlæggende probability theory til modellering og analyse af data.
  • De teoretiske koncepter bag classification, regression og clustering.
  • Det matematiske fundament for udvalgte machine learning algorithms.
  • Grundlæggende antagelser bag algoritmerne, deres implikationer og almindelige faldgruber.
Færdigheder i
  • Bevise generalisation bounds baseret på validation errors og for tællelige hypothesis classes.
  • Anvende lineære og ikke-lineære teknikker til classification og regression.
  • Udføre elementær dimensionality reduction og data clustering.
  • Implementere udvalgte machine learning algorithms og bruge softwarebiblioteker til problemløsning.
  • Visualisere og evaluere resultater opnået med machine learning techniques.
  • Identificere og håndtere almindelige faldgruber i machine learning.
Kompetencer til
  • Genkende og beskrive mulige anvendelser af machine learning.
  • Formalisere og analysere machine learning problems stringent.
  • Sammenligne, vurdere og udvælge machine learning methods til specifikke opgaver.
  • Løse virkelige data mining og pattern recognition problemer ved brug af machine learning techniques.

Om faget: Dybdegående matematisk analyse af funktioner, rækker og flerdimensionale rum.

Viden om
  • Kende konvergenskriterier for talfølger og talrækker.
  • Kende grundlæggende koncepter som kontinuitet, differentiabilitet og integrabilitet, som relaterer til funktioner af en eller flere variabler.
  • Kende konvergensbegreber og kriterier for funktionsfølger og funktionsrækker, herunder potensrækker og Fourierrækker.
Færdigheder i
  • Håndtere den matematiske analyses grænseværdibegreb med håndværksmæssig sikkerhed.
  • Udføre matematisk analyse af funktioner i én variabel (undersøge kontinuitet, differentiabilitet, integrabilitet og ekstremumsundersøgelse).
  • Udføre matematisk analyse af funktioner fra flere variabler til flere variabler, specielt ekstremumsundersøgelse og optimering.
Kompetencer til
  • Afgøre korrektheden og relevansen af matematiske argumenter indenfor analyse.
  • Argumentere med matematisk stringens i definitioner og bevisføring.
  • Analysere problemstillinger fra den flerdimensionale matematiske analyse, herunder vurdere relevansen af differential- og integralregning i konkrete sammenhænge.

Om faget: Avancerede neurale netværk, arkitekturer og træningsmetoder til kompleks dataanalyse.

Viden om
  • Convolutional neural networks (CNNs).
  • Transformers og deres anvendelse.
  • Message passing og graph neural networks.
  • Generative neural networks såsom variational autoencoders (VAEs).
  • Grundlæggende strategier for interpretability af deep neural networks.
  • Training methodology for dybe modeller.
Færdigheder i
  • Udvælge passende metodologi til at løse deep learning problems.
  • Implementere udvalgte deep learning algorithms.
  • Designe og træne egne deep learning algorithms.
Kompetencer til
  • Reflektere over muligheder og begrænsninger ved deep learning algorithms.
  • Genkende og beskrive mulige anvendelser af deep learning methodology.
  • Designe, optimere og bruge deep models.
  • Anvende den lærte metodologi på analyse af real-world data såsom billeder, lyd og tekst.
  • Analysere deep learning algorithms.

Om faget: Parallelisering, systemprogrammering og hardware-arkitektur.

Viden om
  • Talrepræsentationer, aritmetik og boolsk algebra.
  • Instruktionssæt, maskinsprog, processorarkitektur og lagerhierarkier.
  • Tråde, skedulering og synkronisering.
  • Processer og virtuel hukommelse.
  • Indkodning af data i filer og datanetværk.
  • Parallelle arkitekturer.
Færdigheder i
  • Implementere enkle programmer i et systemprogrammeringssprog med eksplicit lagerhåndtering.
  • Redegøre for motivationer for samtidighed, lagerhierarkier og virtuel hukommelse.
  • Benytte gængse værktøjer til udvikling, modifikation og udvidelse af programmer på systemniveau.
  • Systematisk afprøve, fejlrette og måle ydelse af programmel på systemniveau.
  • Implementere enkle programmer på en parallel platform.
Kompetencer til
  • Ræsonnere omkring processorarkitektur, lagerhierarkier, styresystemer og datanetværk.
  • Analysere ydeevnen af programmer baseret på viden om systemets opbygning.
  • Implementere enkle programmer i et systemprogrammeringssprog og på en parallel platform.
  • Ræsonnere omkring korrektheden af simple flertrådede programmer.

Om faget: Modellering med Bayesian networks, grafiske modeller og sandsynlighedsalgoritmer.

Viden om
  • Grafiske repræsentationer af afhængighed og conditional independence.
  • Standard probability propagation algorithms i et netværk.
  • Standardeksempler på Bayesian networks.
  • Gaussian models.
Færdigheder i
  • Mestre graph terminology samt relationen mellem grafer og probability models.
  • Afgøre conditional independence ved hjælp af d-separation.
  • Implementere simuleringer af variable fra et Bayesian network.
  • Udføre beregninger med linear Gaussian networks (baseret på lineær algebra) og discrete networks.
  • Implementere almindelige probability propagation algorithms inden for rammen af Bayesian networks.
  • Implementere udvalgte learning algorithms og anvende dem.
Kompetencer til
  • Afgøre korrekthed og relevans af algoritmer samt teoretiske beregninger inden for Bayesian networks.
  • Vurdere om et Bayesian network korrekt repræsenterer en specifik applikation.
  • Vurdere og diskutere fordele og ulemper ved en algoritme for et specifikt Bayesian network (f.eks. ift. køretidskompleksitet eller generalitet).
  • Løse en større opgave, der inkluderer teoretiske såvel som praktiske elementer, i samarbejde med andre.

Om faget: Sortering, graf-algoritmer, dynamisk programmering og kompleksitetsanalyse.

Viden om
  • Sorteringsalgoritmer.
  • Algoritmer til løsning af optimeringsproblemer i grafer.
  • Prioritetskøer og balancerede søgetræer.
  • Amortiseret analyse.
  • Rekursive algoritmer og rekursionsligninger.
  • Grådige algoritmer (Greedy algorithms).
  • Dynamisk programmering.
  • Geometriske algoritmer og parallelle algoritmer.
Færdigheder i
  • Genkende algoritmiske paradigmer såsom rekursion, dynamisk programmering og grådige algoritmer.
  • Foretage asymptotisk kompleksitetsanalyse af algoritmer og datastrukturer (herunder løsning af rekursionsligninger).
  • Argumentere for korrekthed af algoritmer og datastrukturer vha. induktion (herunder formulering af løkkeinvarianter) samt direkte og modstridsbeviser.
Kompetencer til
  • Anvende passende algoritmer og datastrukturer på nye problemstillinger.
  • Anvende algoritmiske paradigmer på nye problemstillinger.

Om faget: Relevant kombinatorisk sandsynlighedsteori og randomiserede teknikker til dataanalyse.

Viden om
  • Relevant kombinatorisk sandsynlighedsteori og randomiserede teknikker i algoritmik.
  • Varians og spredning.
  • Haleuligheder.
  • Randomiserede datastrukturer og randomiserede algoritmer.
  • Analyse af store datastrømme.
Færdigheder i
  • Vise grænser for forventet køretid af randomiserede algoritmer.
  • Forklare metoder til at begrænse sandsynligheden for, at en tilfældig variabel afviger langt fra dens forventede værdi.
Kompetencer til
  • Ræsonnere om og anvende randomiserede teknikker til dataanalyseproblemer.
  • Finde simple og effektive randomiserede algoritmer og datastrukturer, hvor traditionelle deterministiske metoder er vanskeligere eller mindre effektive.

Om faget: Videnskabsteori, etik og datalogiens rolle i samfundet.

Viden om
  • Videnskabsteoretiske, etiske, politiske og juridiske diskussioner af både generel og fagspecifik karakter.
  • Datalogifagets placering i forhold til andre discipliner.
  • Forskellige videnskabelige metoder.
Færdigheder i
  • Belyse en akademisk problemstilling nuanceret ved at udvælge relevante synspunkter på tværs af forskellige kontekster.
  • Udarbejde et skriftligt akademisk produkt, herunder korrekt litteraturhenvisning og selvstændig udvælgelse af relevant pensum.
Kompetencer til
  • Kritisk vurdere rækkevidden af naturvidenskabens metoder og forholdet mellem datalogi og det omgivende samfund.
  • Reflektere over videnskabelig vidensproduktion (fra grundforskning til innovation) samt datalogiens erkendelsesmæssige status.
  • Tage selvstændig stilling til praktikerens og forskerens etiske ansvar og redelighed.

Om faget: [Ikke valgt endnu]

Om faget: [Ikke valgt endnu]

Om faget: [Ikke valgt endnu]]

Om faget: [Ikke valgt endnu]

Om faget: [Ikke valgt endnu]

Om faget: [Ikke valgt endnu]

Emne: [Ikke valgt endnu]

Gymnasial Uddannelse

STX - Kolding Gymnasium

Kolding | 2017 - 2020

Studieretning: MatSamf - Matematik A og Samfundsfag A.

A Niveau

  • Matematik
  • Samfundsfag
  • Historie
  • Dansk

B Niveau

  • Engelsk
  • Fysik
  • Idræt
  • Tysk
  • Kemi

C Niveau

  • Billedkunst
  • Oldtidskundskab
  • Religion
  • Biologi
  • Retorik