Nový předmět naučí studenty programovat v jazyku Julia

V letním semestru startuje zbrusu nový předmět z dílny katedry počítačů FEL ČVUT, který pod vedením Mgr. Lukáše Adama, Ph.D., a Ing. Václava Máchy přináší základy výuky strojového učení na FJFI a je otevřen všem studentům ČVUT. Volitelný předmět Strojové učení v programovacím prostředí Julia (01SUJ) seznámí studenty se základy programovacího jazyka Julia a jeho využitím v optimalizaci, strojovém učení, diferenciálních rovnicích či statistice.

Julia v posledních letech získává na popularitě a má nakročeno k tomu, aby nahradila jiné oblíbené jazyky. V tomto roce se nejspíš Julia zařadí mezi dvacet nejpoužívanějších jazyků na světě (aktuálně je na 23. místě, přitom ještě předloni byla na 47. příčce). Nový předmět tak jistě patří mezi nejatraktivnější volitelné kurzy, a doporučujeme proto studentům, aby se zápisem neotáleli. Zeptali jsme se vyučujících, co vás v novém předmětu čeká a proč byste si ho neměli nechat ujít.

Můžete programovací jazyk Julia krátce představit?

Julia kombinuje výhody mnoha jazyků. Podobně jako Matlab nebo Python poskytuje jednoduchou a intuitivní syntax, která umožňuje efektivní a rychlou práci. Zároveň se však jedná o kompilovaný jazyk. Díky tomu jsou kódy napsané v Julii přirozeně rychlé a není třeba dalších úprav pro získání dostatečného výkonu. Jako příklad můžeme uvést automatické generování C kódu v Pythonu nebo přepisování cyklů na maticové operace, které je naopak typické pro Matlab.

Kde se dá takový jazyk využít?

Julia je programovací jazyk navržený primárně pro numerické výpočty, takže se skvěle prosazuje v akademické a výzkumné sféře. Díky flexibilitě, efektivnosti a rychlosti se mu ale otevírá cesta i do komerční sféry. Navíc je Julia zdarma, čímž odpadají problémy s licenčními poplatky.

Jaká bude náplň nového předmětu?

V kurzu se snažíme, aby studenti pochopili, jak probíraná látka funguje teoreticky. Zároveň studenti budou v každé hodině programovat, aby si osvojili i praktické znalosti. Připravili jsme stránky, které vysvětlují teorii a též obsahují pro každou lekci desítky řešených příkladů.

Komu je předmět určen?

Předmět je určen komukoliv, kdo si chce rozšířit obzory, poznat nový programovací jazyk a seznámit se základy strojového učení, které nyní tolik hýbe světem. Od studentů očekáváme pouze základní matematické znalosti. Znalost jakéhokoliv programovacího jazyka je výhodou, ale nikoliv podmínkou.

Co musí studenti splnit k úspěšnému zakončení?

Hlavní podmínkou pro úspěšné zakončení kurzu je vypracování projektu, který si student může sám zvolit. Naše přání je, aby souvisel s bakalářskou či diplomovou prací. Pro studenty to má výhodu, že v kurzu mohou dělat na věcech, kterým by se stejně v rámci studia věnovali.

A proč by si studenti neměli tento předmět nechat ujít?

Absolvování kurzu poskytne studentům velice užitečný nástroj, který jim může v mnoha případech značně usnadnit život. Navíc získají vhled do problematiky, která je v dnešní době velice populární a žádaná.

S programovacím jazykem Julia se studenti brzy setkají i na FEL v novém předmětu Otevřené informatiky zaměřeném na Scientific Programming. Předmět ze stejné dílny katedry počítačů je pod vedením docentů Tomáše Pevného a Václava Šmídla koncipován jako volitelný předmět doporučený studentům 3. semestru magisterského studia. Již v zimním semestru akademického roku 2021/2022 se tak budou moci studenti seznámit nejen se základy programovacího jazyka Julia, ale také s pokročilými koncepty a programovacími paradigmaty využitelnými jak v umělé inteligenci a datových vědách, tak ostatních oborech.

Stránky předmětu: http://bit.ly/JuliaML.