Deep learning alkalmazása a vizuális informatikában

A VIK Wikiből
A lap korábbi változatát látod, amilyen Kovács Attila 2 (vitalap | szerkesztései) 2021. augusztus 30., 22:45-kor történt szerkesztése után volt. (→‎A szorgalmi időszakban)
Ugrás a navigációhoz Ugrás a kereséshez
Deep learning alkalmazása
a vizuális informatikában
Tárgykód
VIIIAV20
Általános infók
Szak
infó
Kredit
4
Keresztfélév
vizsgakurzus
Követelmények
Labor
13 db
KisZH
nincs
NagyZH
nincs
Házi feladat
1 db
Vizsga
írásbeli
Elérhetőségek


A tárgy célja a GPU alapú deep learning technikák alkalmazásának bemutatása a vizuális informatika területén (gépi látás, alakzatfelismerés, textúra és optikai modell szintézis, zajszűrés, szuperfelbontás, tomográfia), megismertetve a hallgatókat a képi információfeldolgozás, valamint a látás alapú robotika feladataival, a GPGPU megközelítés elemeivel, és ezekre a feladatokra a mélytanulás alkalmazásával.


Követelmények

Előtanulmányi rend

A szorgalmi időszakban

  • Az aláírás feltételei:
    • A házi feladat összpontjaiból 40%.
  • Pótlási lehetőségek:
    • A házi feladat a pótlási hét végéig pótolható, különeljárási díj befizetése nélkül.

A vizsgadőszakban

  • Vizsga: van, írásbeli, félév teljes anyagából. 40% teljesítés szükséges a minimumhoz.

Félévvégi jegy

  • A félévvégi osztályzatot a hallgatók a házi feladat (50%) és a vizsgajegy (50%) alapján kapják.

Segédanyagok

Ajánlott könyvek

  • Rajalingappaa Shanmugamani, Deep Learning for Computer Vision, Pack Publishing, ISBN 9781788295628, 2018
  • John C. Russ, F. Brent Neal, The Image Processing Handbook, 7th edition, CRC Press, ISBN 149874026X, 2016
  • Jason Sanders, Edward Kandrot, CUDA by Example, Addison-Wesley press, ISBN 0-13-138768-5, 2010
  • GPU Computing Gems – Emerald Edition, Editor: Wen-mei W. Hwu., Morgan Kaufmann Publisher,ISBN: 9780123849885, 2011
  • Programming Massively Parallel Processors, David B. Kirk, Wen-mei W. Hwu, Morgan Kaufmann Publisher, ISBN 978-0-12-381472-2, 2010

Ajánlott oldalak

Házi feladat

2021. tavasz

Idén 4 kisházi volt. Bármilyen környezet használható volt hozzájuk, célszerű volt a Google Colab használata, de C++-ban is lehetett próbálkozni a házik 2. felénél.

A kisházik témái:

  • gépi tanulás alapműveletei, egyszerű architektúrák (konvolúció, lossok, konvolúciós hálók)
  • CUDA kernelek, többszintű kernelek, algoritmusok
  • paraméterezhető hálók, optimalizáció, technikák eredmény pontosság növelésére
  • bemeneti adathalmaz előállítás, képtranszformációk utáni teljesítmény elemzés

Laboratórium

2021. tavaszán online oktatás keretei közt ezek opcionálisak voltak jelenlétileg, de szinte kötelező, ha valaki meg is szeretné érteni az anyagot és tényleg alkalmazni a gyakorlatban. A laborok egyik felében Python-nal Google Colab-ban dolgoznak a hallgatók, ekkor deep learninghez köthető könyvtárakat is használnak, a laborok másik felében C++-ban, CUDA, CuBlas és hasonló könyvtárak segítségével dolgozzák fel.

1. Labor

  • ...

Vizsga

2021. tavasz

Két főbb részből állt:

  • 1 kifejtős kérdéssor 6 kérdéssel (30%-a az összes pontnak)
  • 2 gyakorlati feladat: egy Pythonos, egy C++-os (70%-a az összes pontnak)

Kedvcsináló

2021. tavasz - Kovács Attila

Harmadévesként találtam rá erre a gyöngyszem tárgyra, és nem bántam meg. Az oktatók mindig felkészülten érkeztek, mindig segítőkészek voltak, minden kérdésre válaszoltak, 10/10 oktatók. A laborok alapján kiválóan el lehetett sajátítani az anyagot szerintem, és a vizsgán sem kérdeztek bonyolultabbat, mint amiket megcsináltunk laboron. A házikban egészen sok támpontot adnak a feladatok leírásánál, először nagyon bonyolultnak tűnik, de a labor megoldások alapján el lehet indulni. Szerintem elég könnyűek voltak és a laborokon túl segítették az anyag megértését, elsajátítását. Ha ezek mentek, akkor a vizsgán sem lesz gond. Viszont a hátulütője a tárgynak hogy minimum Prog2-t és Analízis2-t meg kell előtte csinálni szerintem, hogy legalább a fogalmakkal tisztában legyen az ember mielőtt belevág (konvolúció, OOP paradigmák, stb.). Python-t az első laboron tanítanak, és ha már találkozott elég programnyelvvel az ember tényleg 1,5 óra alatt megtanulja. Nem foglalkoztam korábban a témával egy percet sem, de ez a tárgy nagyon megkedveltette velem.