You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -20,92 +16,20 @@ A feladatok megoldása során ne felejtsd el követni a feladatbeadás folyamat
20
16
3. Hozz létre egy új ágat `megoldas` néven, és ezen az ágon dolgozz.
21
17
4. A neptun.txt fájlba írd bele a Neptun kódodat. A fájlban semmi más ne szerepeljen, csak egyetlen sorban a Neptun kód 6 karaktere.
22
18
23
-
## 1. feladat: Fejlesztőkörnyezet összeállítása
24
-
25
-
### Android Studio telepítése
26
-
27
-
Töltsd le és telepítsd az Android Studiot és a benne foglalt Android SDK-t!
28
-
29
-
!!! info "Ha még nem használtad az Android Studiot"
30
-
Ha még nem ismered ezt a fejlesztőkörnyezetet, [ezen a linken](https://viauad02.github.io/laborok/laborok/01-android-hello-world/) találsz róla hasznos információkat.
31
-
32
-
### Projekt létrehozása
33
-
34
-
Indítsuk el az Android Studio-t, majd:
35
-
36
-
1. Hozzunk létre egy új projektet, válasszuk az *Empty Activity* lehetőséget.
37
-
1. A projekt neve legyen `GeminiTicTacToe`, a kezdő package pedig `hu.bme.aut.android.geminitictactoe`.
38
-
1. Nyelvnek válasszuk a *Kotlin*-t.
39
-
1. A minimum API szint legyen API24: Android 7.0.
40
-
1. A *Build configuration language* Kotlin DSL legyen.
41
-
42
-
!!!danger "FILE PATH"
43
-
A projekt mindenképpen a repository-ban lévő GeminiTicTacToe könyvtárba kerüljön, és beadásnál legyen is felpusholva! A kód nélkül nem tudunk maximális pontot adni a laborra!
44
-
45
-
Ellenőrizd, hogy elérhető-e a Gemini a projektből! *(View > Tool Windows > Gemini)*
46
-
Szükség esetén jelentkezz be a Google Accountoddal, valamint engedélyezd a projektben a kontextus használatát.
47
-
48
-
!!! example "1. feladat beadandó (1 pont)"
49
-
* Kommitold a változtatásokat.
50
-
* Készíts egy képernyőképet a fejlesztőkörnyezetről, úgy, hogy látszódjon a Gemini nézete, és mentsd el a repository gyökerébe **`f1.png`** néven.
51
-
52
-
## 2. feladat: Amőba alkalmazás elkészítése Gemini segítségével
53
-
54
-
Az előbb létrehozott projektben valósíts meg egy amőba játékot a Gemini segítségével!
55
-
56
-
!!! info "Nem kell túlbonyolítani"
57
-
A feladat megoldható akár egy prompttal/kérdéssel, és a válasz tartalmainak bemásolásával, további javítások nélkül.
58
-
59
-
!!! example "2a. feladat beadandó (1 pont)"
60
-
* Kommitold a változtatásokat.
61
-
* Készíts egy képernyőképet a futó alkalmazásról *játék közben* (emulátoron vagy saját készüléken), és mentsd el a repository gyökerébe **`f2a.png`** néven.
62
-
63
-
!!! example "2b. feladat beadandó (1 pont)"
64
-
* Kommitold a változtatásokat.
65
-
* Készíts egy képernyőképet a futó alkalmazásról *miután valamelyik játékos nyert* (emulátoron vagy saját készüléken), és mentsd el a repository gyökerébe **`f2b.png`** néven.
1. Hozzunk létre egy új projektet, válasszuk a *Gemini API Starter* lehetőséget.
74
-
1. A projekt neve legyen `GeminiApiDemo`, a kezdő package pedig `hu.bme.aut.android.geminiapidemo`.
75
-
1. Nyelvnek válasszuk a *Kotlin*-t.
76
-
1. A minimum API szint legyen API24: Android 7.0.
77
-
1. A *Build configuration language* Kotlin DSL legyen.
78
-
1. A következő ablakban a linkre kattintva generáljunk magunknak API kulcsot, majd másoljuk be.
79
-
80
-
!!!danger "FILE PATH"
81
-
A projekt mindenképpen a repository-ban lévő GeminiApiDemo könyvtárba kerüljön, és beadásnál legyen is felpusholva! A kód nélkül nem tudunk maximális pontot adni a laborra!
82
-
83
-
Vizsgáljuk meg a létrejött projekt kódját, majd próbáljuk meg futtatni a létrejött projektet!
84
-
85
-
A projekt nagy valószínűséggel nem fog elindulni, mert több helyen elavult hivatkozásokat tartalmaz.
86
-
87
-
A fejlesztőkörnyezet által kiírt Error üzenetek alapján próbáld meg kijavítani a projekt működését!
88
-
Futás idejű hibák esetén használd a *Logcat* nézetet!
89
-
90
-
!!! tip "Model overload"
91
-
Ha az alkalmazás használata során az API-tól a "Model overloaded" hibaüzenet kapod vissza, próbálkozz egy későbbi időpontban. Ha ez sem segít, készítsd el így a képernyőképeket.
92
-
93
-
!!! example "3a. feladat beadandó (1 pont)"
94
-
* Kommitold a változtatásokat.
95
-
* Készíts egy képernyőképet a futó alkalmazásról *az első kép alapján generált szöveggel* (emulátoron vagy saját készüléken), és mentsd el a repository gyökerébe **`f3a.png`** néven.
19
+
## Feladat: Feltáró adatelemzés és adatvizualizáció
96
20
97
-
!!! example "3b. feladat beadandó (1 pont)"
98
-
* Kommitold a változtatásokat.
99
-
* Készíts egy képernyőképet a futó alkalmazásról *saját promptot kipróbálva* (emulátoron vagy saját készüléken), és mentsd el a repository gyökerébe **`f3b.png`** néven.
21
+
1. Válassz egy publikusan elérhető adathalmazt (pl. Kaggle-ről), amin a vizualizációkat fogod elkészíteni.
22
+
2. Végezz feltáró adatelemzést (EDA) a következők szerint.
23
+
- Készíts 4-4-4 vizualizációt a **matplotlib**, **seaborn** és **plotly** könyvtárakkal
24
+
- Minden vizualizáció legyen egyedi
25
+
- Minden könyvtárnál legyen legalább 2 olyan típusú vizualizáció, amely más könyvtáraknál nem szerepel
26
+
- Minden vizualizáció legyen igényes, tartalmazzon címet, tengelyfeliratokat, stb., illetve hordozzon tényleges információt.
27
+
- Minden vizualizáció után írd le egy Markdown cellába, hogy milyen következtetést lehet levonni az adott grafikonból.
100
28
101
-
## Opcionális feladat (megajánlott jegyért):
102
29
103
-
Készíts egy új alkalmazást, amely vagy LiteRT alapú modellt, vagy egy tetszőleges MLKit szolgáltatást használ bármilyen MI alapú funkció megvalósítására!
104
-
A megvalósítás során használhatod segítségként a Geminit, vagy más nagy nyelvi modellt.
30
+
!!! example "Beadandó (40 pont)"
31
+
* Töltsd fel a repoba a vizualizációkat tartalmazó Jupyter Notebook fájlt. A cellakimenetek, tehát a vizualizációk is szerepeljenek benne!
105
32
106
-
!!!danger "FILE PATH"
107
-
A projekt mindenképpen a repository-ban lévő OptionalProject könyvtárba kerüljön, és beadásnál legyen is felpusholva! A kód nélkül nem tudunk maximális pontot adni a laborra!
108
33
109
34
!!! example "Opcionális feladat beadandó (10 pont)"
110
-
* Kommitold a változtatásokat.
111
-
* Készíts egy képernyőképet az elkészült alkalmazás felületéről, ahol látszik, hogy mi a megvalósított funkció és mentsd el **`fo.png`** néven a repository gyökerébe.
35
+
* Készíts legalább 3 térképet a Folium python könyvtárral, tetszőleges adathalmazon. Az ábrák legyenek igényesek, tartalmazzanak minél több információt.
A labor során a Pythonban elérhető legfontosabb adatvizualizációs könyvtárakkal ismerkedhetünk meg.
5
+
**Az alapfeladat**
6
6
7
+
A feladat Kaggle-ről egy tetszőleges dataset választása és egy notebook kidolgozása az előadás anyag végén bemutatotthoz hasonlóan. Ez a minta notebook megtalálható a tárgy github repo-jában a ComputerVision mappában.
7
8
8
-
## Előkészület
9
+
**Az extra feladat**
9
10
10
-
A feladatok megoldása során ne felejtsd el követni a feladatbeadás folyamatát [Github](../../tudnivalok/github/GitHub.md).
11
+
Az extra feladat (ami a megajánlott jegyhez járulhat hozzá) választható: Pytorch-ban a QAT (quantization aware training) kipróbálása, vagy a Tensorflow alapú megoldás szintén notebook-os elkészítése, vagy a készített meogldás integrálása egy mobilos környezetbe és erről videó készítése. A második esethez minta a ComputerVision/link_for_zip_examples.txt-ben megjelölt zip fájl "ami" mappájában van tf.py néven.
11
12
12
-
### Git repository létrehozása és letöltése
13
+
**Beadási információ**
13
14
14
-
1. Moodle-ben keresd meg a laborhoz tartozó meghívó URL-jét és annak segítségével hozd létre a saját repository-dat.
15
-
2. Várd meg, míg elkészül a repository, majd checkout-old ki.
16
-
3. Hozz létre egy új ágat `megoldas` néven, és ezen az ágon dolgozz.
17
-
4. A neptun.txt fájlba írd bele a Neptun kódodat. A fájlban semmi más ne szerepeljen, csak egyetlen sorban a Neptun kód 6 karaktere.
15
+
Lényeges, hogy az egyes vizualizációk és print-elt szövegek is a beadás részét képezik (confusion matrix, tanulási görbe, precision, recall, stb.). Így a beadott notebook-ból ezek ne legyenek törölve. (Tehát alapból egy notebook a beadandó.) Ennek a neve legyen olyan, hogy tartalmazza a nevet, neptun kódot. Formátum: Pelda_Peter_ABC123.ipynb
18
16
19
-
## Feladat: Feltáró adatelemzés és adatvizualizáció
17
+
**Beadási információ az extra feladathoz.**
20
18
21
-
1. Válassz egy publikusan elérhető adathalmazt (pl. Kaggle-ről), amin a vizualizációkat fogod elkészíteni.
22
-
2. Végezz feltáró adatelemzést (EDA) a következők szerint.
23
-
- Készíts 4-4-4 vizualizációt a **matplotlib**, **seaborn** és **plotly** könyvtárakkal
24
-
- Minden vizualizáció legyen egyedi
25
-
- Minden könyvtárnál legyen legalább 2 olyan típusú vizualizáció, amely más könyvtáraknál nem szerepel
26
-
- Minden vizualizáció legyen igényes, tartalmazzon címet, tengelyfeliratokat, stb., illetve hordozzon tényleges információt.
27
-
- Minden vizualizáció után írd le egy Markdown cellába, hogy milyen következtetést lehet levonni az adott grafikonból.
19
+
Az extra feladat 1. verziójának választása esetén lehet folytatólagosan dolgozni az alap notebook-ba. (Tehát ekkor csak egy notebook kerül beadásra.)
28
20
21
+
A 2. verzió készíthető egy új notebook-ba. (Tehát ekkor összesen két notebook kerül beadásra.)
29
22
30
-
!!! example "Beadandó (40 pont)"
31
-
* Töltsd fel a repoba a vizualizációkat tartalmazó Jupyter Notebook fájlt. A cellakimenetek, tehát a vizualizációk is szerepeljenek benne!
23
+
Az extra feladat 3. verziójának választása esetén pedig elhelyezendő egy link az alap notebook-ban, ami a videóra mutat. (Tehát ekkor egy notebook kerül beadásra a végén egy linkkel.)
32
24
33
-
34
-
!!! example "Opcionális feladat beadandó (10 pont)"
35
-
* Készíts legalább 3 térképet a Folium python könyvtárral, tetszőleges adathalmazon. Az ábrák legyenek igényesek, tartalmazzanak minél több információt.
25
+
_Bármilyen kérdést tegyetek fel bátran a Teams csoportban, hogy tanulhassunk egymás kérdéseiből!_
0 commit comments