== Návod: ml-machine pre Micro:bit s matematickou vizualizáciou ==
== Návod: ml-machine pre Micro:bit s matematickou vizualizáciou ==
'''ml-machine''' je nástroj vytvorený pre študentov, ktorý umožňuje trénovať jednoduché modely strojového učenia (Machine Learning) a nasadiť ich priamo na mikrokontrolér BBC micro:bit. Táto verzia na '''math.ml-machine.org''' navyše vizualizuje matematické princípy trénovania.
'''ml-machine''' je nástroj vytvorený pre študentov, ktorý umožňuje trénovať jednoduché modely strojového učenia (Machine Learning) a nasadiť ich priamo na mikrokontrolér BBC micro:bit. Táto verzia na '''math.ml-machine.org''' navyše vizualizuje matematické princípy trénovania, čo je ideálne pre hlbšie pochopenie pre pokročilejších študentov.
=== 🎯 Krok 1: Príprava a Spustenie Projektu ===
=== 🎯 Krok 1: Príprava a Spustenie Projektu ===
Riadok 60:
Riadok 60:
# V ľavej časti obrazovky sa nachádza sekcia '''Model Setup''' (Nastavenie modelu).
# V ľavej časti obrazovky sa nachádza sekcia '''Model Setup''' (Nastavenie modelu).
# '''Input (Vstup):''' Vyberte typ vstupu, ktorý bude micro:bit posielať. Pre jednoduché projekty zvyčajne zvolíte:
# '''Input (Vstup):''' Vyberte typ vstupu, ktorý bude micro:bit posielať. Pre jednoduché projekty zvyčajne zvolíte:
#* '''Accelerometer''' (Akcelerometer) pre rozpoznávanie pohybu.
#* '''Accelerometer''' (Akcelerometer) pre rozpoznávanie pohybu (napr. pre rozpoznávanie mávania, poklepania).
#* Alebo '''Digital/Analog Pin''' (Digitálny/Analógový pin) pre externé senzory.
#* Alebo '''Digital/Analog Pin''' (Digitálny/Analógový pin) pre externé senzory (napr. svetelný senzor, snímač teploty).
# '''Output (Výstup):''' Zvoľte typ výstupu, napr. '''LED Matrix''' (LED Matica) alebo '''Serial''' (Sériový výstup).
# '''Output (Výstup):''' Zvoľte typ výstupu, napr. '''LED Matrix''' (LED Matica) pre zobrazenie ikony alebo '''Serial''' (Sériový výstup) pre odosielanie dát do počítača.
# '''Classes (Triedy):''' Nastavte počet tried, ktoré chcete rozpoznať (napr. 2 alebo 3). Premenujte ich (napr. '''Mávanie''', '''Kľud''', '''Otočenie''').
# '''Classes (Triedy):''' Nastavte počet tried, ktoré chcete rozpoznať (napr. 2 alebo 3). Premenujte ich na jasné popisy (napr. '''Mávanie''', '''Kľud''', '''Otočenie''').
=== 📈 Krok 2: Zber Dát (Data Collection) ===
=== 📈 Krok 2: Zber Dát (Data Collection) ===
''Pre správne trénovanie je kľúčový kvalitný zber dát.''
''Pre správne trénovanie je kľúčový kvalitný zber dát – čím viac rôznorodých a presných dát pre každú triedu, tým lepší model.''
# V sekcii '''Data Collection''' zvoľte, ako budete dáta zbierať (cez '''micro:bit''' alebo '''simulátor''').
# V sekcii '''Data Collection''' zvoľte, ako budete dáta zbierať (cez '''micro:bit''' alebo '''simulátor''').
# Ak používate micro:bit, pripojte ho k počítaču a spárujte.
# Ak používate micro:bit, pripojte ho k počítaču a spárujte. Uistite sa, že máte na micro:bite nahraný firmvér, ktorý mu umožňuje komunikovať s ml-machine (zvyčajne ho ponúkne na stiahnutie samotný nástroj).
# Pre každú vytvorenú triedu:
# Pre každú vytvorenú triedu:
#* Kliknite na príslušné tlačidlo triedy (napr. '''Mávanie''').
#* Kliknite na príslušné tlačidlo triedy (napr. '''Mávanie''').
#* Spustite akciu (napr. začnite micro:bitom mávať).
#* Spustite akciu (napr. začnite micro:bitom mávať, držte ho v kľude, alebo ho otočte).
#* Zbierajte '''dostatočné množstvo vzoriek''' (ideálne 50+ pre každú triedu).
#* Zbierajte '''dostatočné množstvo vzoriek''' (ideálne 50+ pre každú triedu). Snažte sa dáta zbierať v rôznych podmienkach, ktoré zodpovedajú reálnemu použitiu.
=== 🧠 Krok 3: Trénovanie Modelu a Vizualizácia ===
=== 🧠 Krok 3: Trénovanie Modelu a Vizualizácia ===
''Táto verzia ponúka vizuálny pohľad na to, ako sa model učí.''
''Táto verzia ml-machine je výnimočná v tom, že ponúka vizuálny pohľad na to, ako sa model učí a ako "vidí" vaše dáta. Je to kľúčové pre pochopenie matematického pozadia.''
# Prejdite do sekcie '''Training''' (Trénovanie).
# Prejdite do sekcie '''Training''' (Trénovanie).
# '''Výber Algoritmu:''' Pre micro:bit sa najčastejšie používa jednoduchý algoritmus ako '''K-Nearest Neighbors (k-NN)''' alebo '''Support Vector Machine (SVM)'''. Zvoľte si jeden.
# '''Výber Algoritmu:''' Pre micro:bit sa najčastejšie používajú jednoduché a efektívne algoritmy ako '''K-Nearest Neighbors (k-NN)''' alebo '''Support Vector Machine (SVM)'''. Zvoľte si jeden.
# '''Parametre (Pre pokročilých):''' Experimentujte s parametrami algoritmu (napr. hodnota ''K'' pre k-NN). Sledujte, ako zmena parametrov ovplyvňuje výsledky.
# '''Parametre (Pre pokročilých):''' Experimentujte s parametrami algoritmu (napr. hodnota ''K'' pre k-NN alebo ''Kernel'' pre SVM). Sledujte, ako zmena parametrov ovplyvňuje výsledky vizualizácie.
# '''Štart trénovania:''' Kliknite na tlačidlo '''Train Model'''.
# '''Štart trénovania:''' Kliknite na tlačidlo '''Train Model'''.
# '''Matematická Vizualizácia:''' V pravej časti okna sledujte, ako nástroj vykresľuje trénovacie dáta a vytvára '''rozhodovacie hranice''' (Decision Boundaries) – vizuálnu reprezentáciu toho, ako model rozdeľuje triedy v dátovom priestore. To pomáha študentom pochopiť matematický základ.
#* V pravej časti okna sa zobrazí '''dátový graf''', kde sú vaše zozbierané dáta pre každú triedu znázornené ako farebné body.
#* Po trénovaní uvidíte '''rozhodovacie hranice''' (Decision Boundaries) – sú to čiary alebo plochy, ktoré vizuálne rozdeľujú dátový priestor. Každá oblasť ohraničená týmito hranicami reprezentuje jednu triedu.
#* '''Príklad:''' Ak trénujete rozpoznávanie ''"Mávanie"'' a ''"Kľud"'', môžete vidieť, ako sa dáta pre ''Mávanie'' (napr. červené body) zhlukujú na jednej strane hranice a dáta pre ''Kľud'' (napr. modré body) na druhej.
#* Vizualizácia ukazuje, ako model "myslí" a ako bude klasifikovať nové, neznáme dáta – ak nový dátový bod spadne do červenej oblasti, bude klasifikovaný ako ''Mávanie''.
#
# Príklad vizualizácie rozhodovacích hraníc (predstavte si tento obrázok tu):
# [[File:ml-machine_decision_boundaries_example.png|thumb|center|500px|Príklad vizualizácie dátových bodov a rozhodovacích hraníc v ml-machine. Rôzne farby reprezentujú rôzne triedy a čiary sú hranice, ktoré model použije na klasifikáciu nových dát.]]
#
# Sledujte, ako sa menia tieto hranice, keď pridáte viac dát alebo zmeníte algoritmus/parametre.
=== 🧪 Krok 4: Testovanie a Nasadenie ===
=== 🧪 Krok 4: Testovanie a Nasadenie ===
# '''Testovanie (Test Model):''' Otestujte model s novými, neznámymi dátami priamo z micro:bitu. Ak sú výsledky presné (vysoká predikcia), model je pripravený.
# '''Testovanie (Test Model):''' Otestujte model s novými, neznámymi dátami priamo z micro:bitu. Ak sú výsledky presné (vysoká predikcia pre správnu triedu), model je pripravený. Ak nie, vráťte sa ku Krok 2 (viac dát) alebo Krok 3 (úprava algoritmu/parametrov).
# '''Nasadenie na micro:bit (Export):''' Prejdite do sekcie '''Export'''.
# '''Nasadenie na micro:bit (Export):''' Prejdite do sekcie '''Export'''.
#* Vyberte možnosť '''Download .hex file''' (Stiahnuť .hex súbor).
#* Vyberte možnosť '''Download .hex file''' (Stiahnuť .hex súbor).
#* Nástroj vygeneruje a stiahne súbor s natrénovaným modelom.
#* Nástroj vygeneruje a stiahne súbor s natrénovaným modelom.
#* Tento '''HEX súbor''' presuňte priamo na disk micro:bitu (presne tak, ako by ste nahrávali kód z MakeCode).
#* Tento '''HEX súbor''' presuňte priamo na disk micro:bitu (presne tak, ako by ste nahrávali kód z MakeCode).
#* Model je teraz natrvalo v micro:bite a dokáže vykonávať predikcie autonómne.
#* Model je teraz natrvalo v micro:bite a dokáže vykonávať predikcie autonómne bez pripojenia k počítaču.
----
----
'''⚡️ Pre Pokročilých Študentov:'''
'''⚡️ Pre Pokročilých Študentov:'''
Skúste porovnať presnosť a rozhodovacie hranice pri použití rôznych algoritmov (napr. k-NN vs. SVM) a rôzneho nastavenia parametrov. Tým pochopíte, prečo je výber algoritmu kľúčový.
Skúste porovnať presnosť a vizualizácie rozhodovacích hraníc pri použití rôznych algoritmov (napr. k-NN vs. SVM) a rôzneho nastavenia parametrov. Tým pochopíte, prečo je výber algoritmu a optimalizácia parametrov kľúčová pre úspešné strojové učenie.
Návod: Jednoduché rozpoznávanie obrázkov s Teachable Machine
Teachable Machine je bezplatný webový nástroj od spoločnosti Google, ktorý umožňuje trénovať jednoduché modely strojového učenia (napr. rozpoznávanie obrázkov) bez potreby programovania. Je ideálny pre rýchle študentské projekty.
Triedy sú kategórie, ktoré sa bude model učiť rozpoznávať (napr. "Jablko", "Banán").
Premenovanie Tried: V sekcii s triedami (Class 1, Class 2, atď.):
Kliknite na názov triedy (napr. Class 1) a premenujte ju na názov vášho prvého objektu (napr. Jablko).
Postup zopakujte pre ďalšie triedy (napr. Banán, Stôl - pre pozadie/prázdne miesto).
Pridanie Tréningových Dát: Pre každú triedu musíte nahrať vzorky.
Kliknite na tlačidlo Nahrať (Upload) pod názvom triedy.
Nahrajte aspoň 20-30 obrázkov pre každý objekt/triedu. Fotky by mali zachytávať objekt z rôznych uhlov a s rôznym osvetlením, aby bol model robustný.
🧠 Krok 3: Trénujte Model
Trénovanie učí model priradiť vzory k správnej triede.
V strednej sekcii kliknite na tlačidlo Trénovať model (Train Model).
Počkajte: Proces trvá od niekoľkých sekúnd do minút. Počas trénovania nezavrite okno prehliadača.
Po dokončení sa zobrazí správa "Model Trained!" (Model trénovaný!).
🧪 Krok 4: Testujte Model
V pravej sekcii môžete model ihneď otestovať.
Použite Webkamera (Webcam) alebo Súbor (File) na ukázanie nového obrázku alebo živého vstupu z kamery.
Sledujte výsledky: V sekcii Output sa zobrazí, ktorú triedu model rozpoznáva a s akou Istotou (Confidence).
Ak model rozpozná objekt s vysokou istotou (blízko 100%), trénovanie bolo úspešné.
📤 Krok 5: Exportujte Model (Voliteľné)
Ak chcete model použiť v inej webovej aplikácii (napr. vo Scratchi, P5.js alebo na vlastnej stránke):
Kliknite na tlačidlo Exportovať Model (Export Model).
Zvoľte požadovaný formát (napr. TensorFlow.js pre web).
Kliknite na Nahrať môj model (Upload my model) a skopírujte poskytnutý webový odkaz, ktorý môžete použiť vo svojom projekte.
💡 Dôležitý Tip:
Nezabudnite vždy trénovať aj triedu pre prázdne pozadie (napr. "Stôl" alebo "Nič"), aby model nepriraďoval vaše objekty k náhodným záberom, keď tam nič nie je.
```
Chceli by ste k tomuto návodu pridať aj obrázky alebo odkazy na konkrétne kurzy na wiki?
Návod: ml-machine pre Micro:bit s matematickou vizualizáciou
ml-machine je nástroj vytvorený pre študentov, ktorý umožňuje trénovať jednoduché modely strojového učenia (Machine Learning) a nasadiť ich priamo na mikrokontrolér BBC micro:bit. Táto verzia na math.ml-machine.org navyše vizualizuje matematické princípy trénovania, čo je ideálne pre hlbšie pochopenie pre pokročilejších študentov.
V ľavej časti obrazovky sa nachádza sekcia Model Setup (Nastavenie modelu).
Input (Vstup): Vyberte typ vstupu, ktorý bude micro:bit posielať. Pre jednoduché projekty zvyčajne zvolíte:
Accelerometer (Akcelerometer) pre rozpoznávanie pohybu (napr. pre rozpoznávanie mávania, poklepania).
Alebo Digital/Analog Pin (Digitálny/Analógový pin) pre externé senzory (napr. svetelný senzor, snímač teploty).
Output (Výstup): Zvoľte typ výstupu, napr. LED Matrix (LED Matica) pre zobrazenie ikony alebo Serial (Sériový výstup) pre odosielanie dát do počítača.
Classes (Triedy): Nastavte počet tried, ktoré chcete rozpoznať (napr. 2 alebo 3). Premenujte ich na jasné popisy (napr. Mávanie, Kľud, Otočenie).
📈 Krok 2: Zber Dát (Data Collection)
Pre správne trénovanie je kľúčový kvalitný zber dát – čím viac rôznorodých a presných dát pre každú triedu, tým lepší model.
V sekcii Data Collection zvoľte, ako budete dáta zbierať (cez micro:bit alebo simulátor).
Ak používate micro:bit, pripojte ho k počítaču a spárujte. Uistite sa, že máte na micro:bite nahraný firmvér, ktorý mu umožňuje komunikovať s ml-machine (zvyčajne ho ponúkne na stiahnutie samotný nástroj).
Pre každú vytvorenú triedu:
Kliknite na príslušné tlačidlo triedy (napr. Mávanie).
Spustite akciu (napr. začnite micro:bitom mávať, držte ho v kľude, alebo ho otočte).
Zbierajte dostatočné množstvo vzoriek (ideálne 50+ pre každú triedu). Snažte sa dáta zbierať v rôznych podmienkach, ktoré zodpovedajú reálnemu použitiu.
🧠 Krok 3: Trénovanie Modelu a Vizualizácia
Táto verzia ml-machine je výnimočná v tom, že ponúka vizuálny pohľad na to, ako sa model učí a ako "vidí" vaše dáta. Je to kľúčové pre pochopenie matematického pozadia.
Prejdite do sekcie Training (Trénovanie).
Výber Algoritmu: Pre micro:bit sa najčastejšie používajú jednoduché a efektívne algoritmy ako K-Nearest Neighbors (k-NN) alebo Support Vector Machine (SVM). Zvoľte si jeden.
Parametre (Pre pokročilých): Experimentujte s parametrami algoritmu (napr. hodnota K pre k-NN alebo Kernel pre SVM). Sledujte, ako zmena parametrov ovplyvňuje výsledky vizualizácie.
Štart trénovania: Kliknite na tlačidlo Train Model.
Matematická Vizualizácia - Rozhodovacie Hranice:
V pravej časti okna sa zobrazí dátový graf, kde sú vaše zozbierané dáta pre každú triedu znázornené ako farebné body.
Po trénovaní uvidíte rozhodovacie hranice (Decision Boundaries) – sú to čiary alebo plochy, ktoré vizuálne rozdeľujú dátový priestor. Každá oblasť ohraničená týmito hranicami reprezentuje jednu triedu.
Príklad: Ak trénujete rozpoznávanie "Mávanie" a "Kľud", môžete vidieť, ako sa dáta pre Mávanie (napr. červené body) zhlukujú na jednej strane hranice a dáta pre Kľud (napr. modré body) na druhej.
Vizualizácia ukazuje, ako model "myslí" a ako bude klasifikovať nové, neznáme dáta – ak nový dátový bod spadne do červenej oblasti, bude klasifikovaný ako Mávanie.
Príklad vizualizácie rozhodovacích hraníc (predstavte si tento obrázok tu):
Súbor:Ml-machine decision boundaries example.pngPríklad vizualizácie dátových bodov a rozhodovacích hraníc v ml-machine. Rôzne farby reprezentujú rôzne triedy a čiary sú hranice, ktoré model použije na klasifikáciu nových dát.
Sledujte, ako sa menia tieto hranice, keď pridáte viac dát alebo zmeníte algoritmus/parametre.
🧪 Krok 4: Testovanie a Nasadenie
Testovanie (Test Model): Otestujte model s novými, neznámymi dátami priamo z micro:bitu. Ak sú výsledky presné (vysoká predikcia pre správnu triedu), model je pripravený. Ak nie, vráťte sa ku Krok 2 (viac dát) alebo Krok 3 (úprava algoritmu/parametrov).
Nasadenie na micro:bit (Export): Prejdite do sekcie Export.
Vyberte možnosť Download .hex file (Stiahnuť .hex súbor).
Nástroj vygeneruje a stiahne súbor s natrénovaným modelom.
Tento HEX súbor presuňte priamo na disk micro:bitu (presne tak, ako by ste nahrávali kód z MakeCode).
Model je teraz natrvalo v micro:bite a dokáže vykonávať predikcie autonómne bez pripojenia k počítaču.
⚡️ Pre Pokročilých Študentov:
Skúste porovnať presnosť a vizualizácie rozhodovacích hraníc pri použití rôznych algoritmov (napr. k-NN vs. SVM) a rôzneho nastavenia parametrov. Tým pochopíte, prečo je výber algoritmu a optimalizácia parametrov kľúčová pre úspešné strojové učenie.