Julia pro optimalizaci a učení

Rychlé odkazy skripta diskusní fórum BRUTE rozvrh

Kurz je možné si zapsat v rámci prg.ai.

ENGLISH TRANSLATION is now available.

Úvod

Programovací jazyk Julia je stále více používán komunitou pro jeho vhodnost v oblasti numerických výpočtů. Předmět se skládá ze dvou částí. První část prezentuje jazyk Julia a ukáže jeho základy. Druhá část nejdřív ukáže základní ideu matematické optimalizace a aplikuje ji ve strojovém učení, statistice a optimálním řízení diferenciálních rovnic. Zatímco první část ukazuje jednotlivé koncepty Julie, druhá část je kombinuje do delších logických sekcí kódu. Jednotlivé aplikace jsou vždy vysvětleny teoreticky, jednoduché funkce jsou naprogramovány ručně a poté se ukážou balíčky, kde je daný kód již hotov. Předmět je zakončen závěrečným projektem. Student si může zvolit téma, případně si vyzkoušet práci s reálnými daty výběrem soutěže z Kaggle.

Přednášky a cvičení

  • Přednášející: Václav Šmídl, Václav Mácha, Michaela Mašková (maskomic@fel.cvut.cz), Šimon Soldát (soldasim@fel.cvut.cz).
  • Dotace je celkově 1+3. První půlka semestru je 0+4, druhá 2+2.
  • Přednášky a cvičení postupují podle online skript.
  • Konzultace poskytujeme po předchozí domluvě.
Datum Přednáška + cvičení Téma Úkoly Deadline
26. 9. 2024 0+4 Základy Julie I
3. 10. 2024 0+4 Základy Julie II
10. 10. 2024 0+4 Často používané balíky
17. 10. 2024 0+4 Metody a funkce domácí úkol 23. 10. 2024
24. 10. 2024 0+4 Typový systém
31. 10. 2024 0+4 Organizace kódu I
7. 11. 2024 0+4 Organizace kódu II
14. 11. 2024 2+2 Optimalizace domácí úkol 20. 11. 2024
21. 11. 2024 2+2 Regrese a klasifikace
28. 11. 2024 2+2 Neuronové sítě I
5. 12. 2024 2+2 Neuronové sítě II domácí úkol 11. 12. 2024
12. 12. 2024 2+2 Statistika
19. 12. 2024 4+0 Konzultace projektů

Hodnocení a zkouška

Kurz je zakončen klasifikovaným zápočtem. Známku student obdrží podle získaných bodů.

Domácí úkoly max. 30 bodů
Projekt max. 70 bodů
Celkem max. 100 bodů

Známka se uděluje dle následujících bodových rozhraní.

Body [0, 50) [50, 60) [60, 70) [70, 80) [80, 90) [90, 100]
Známka F E D C B A

Domácí úkoly

Cílem domácích úkolů je naprogramování krátké funkce, která se automaticky vyhodnotí na neznámých vstupech. Vyhodnocení vámi napsané funkce dostanete hned po uploadu. Stejně jako u kvízů není počet uploadů jednotlivých funkcí omezen.

V semestru vám zadáme 3 domácí úkoly, při včasném vyplnění dostanete za každý 10 bodů. Při pozdním odevzdání se strhává 0.5 bodu za každý načatý den zpoždění. Každý domácí úkol bude zadán v BRUTE. Na vypracování domácích úkolů je jeden týden. Podrobnější informace o struktuře jsou ve vlastní sekci.

Projekt

Cílem závěrečného projektu je ukázat dovednosti naučené v kurzu. Téma závěrečného projektu musí být schváleno jedním z vyučujících do deadlinu uvedeného níže. Student si projekt sám vybere a jednomu z vyučujících přednese krátký popis projektu a funkcionalitu. Bez tohoto schválení nemůže být projekt obhájen. Po vypracování projektu následuje obhajoba projektu. Podrobnější informace o návrzích projektu, jeho implementaci a schvalování je v samostatné sekci.

Pro schválení projektu platí následující deadliny:
  • Projekt musí být osobně navržen nejpozději na přednášce 19. 12. 2024
  • Potenciální požadované úpravy musí být zpracovány do 10. 1. 2025
courses/b0b36jul/start.txt · Last modified: 2024/10/01 10:47 by maskomic