.[ ČeskéHry.cz ].
Projekt Eco
Jdi na stránku Předchozí  1, 2, 3  Další
 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Inkubátor
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
mar



Založen: 16. 06. 2012
Příspěvky: 601

PříspěvekZaslal: 18. květen 2021, 16:05:14    Předmět: Odpovědět s citátem

pcmaster napsal:
Ja si tipnem, ze ma vlastny 'framework' Smile

proč ne? tensorflow je megabloat a na malé sítě není potřeba ani backpropagation. aktivační funkce mě překvapuje, že VODA nepoužává ReLU, ale to je drobnost.

inference je naprosto triviální, k tomu viset na nějakém "frameworku" co má stovky mega fakt nepotřebuješ
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1525
Bydliště: Telč

PříspěvekZaslal: 18. květen 2021, 16:09:45    Předmět: Odpovědět s citátem

Hlavně, zkuste si tensorflow rozjet. To je tak práce na celý den a ještě se to nepovede. Samý python, anakondy, updaty, balíčky...a furt dokola.
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 18. květen 2021, 16:16:56    Předmět: Odpovědět s citátem

]semo[ napsal:
A máš na to vlastní framework, nebo nějaký tensorflow?

Vlastní, minimalistický framework přimo v enginu.

]semo[ napsal:
...co se týče odpadků u cesty (těch reálných), neni to náhodou tak, že to třeba skupina dobrovolníků sesbírala v okolí a čeká to na odvoz? Už jsem si taky takhle jednou zanadával, abych pak (naštěstí) zjistil, že sem trouba Smile

Také mě to napadlo... ale kdo ví. Wink
_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1525
Bydliště: Telč

PříspěvekZaslal: 18. květen 2021, 16:19:12    Předmět: Odpovědět s citátem

To je zajímavý téma, ten vlastní framework. Docela by mě zajímalo, kde si čerpal znalosti, jaký si dělal první kroky a tak. Já o tom četl nějakou knížku, takže znám nějaký pojmy, ale neodvážiil sem se udělat ten první krok :)
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 18. květen 2021, 16:28:33    Předmět: Odpovědět s citátem

mar napsal:
aktivační funkce mě překvapuje, že VODA nepoužává ReLU, ale to je drobnost.

Tuším, že ve škole nám říkali, že použití sigmoidu je častokrát lepší než ty skokové nebo lineární aktivační funkce (už si tedy přesně nepamatuji proč).
Tak se toho držím.
Žádné testy jsem s tím nedělal, ale ten můj malý framework je napsaný tak, že si mohu zvolit jakou funkci chci, ale default je tanh.

Sice se uvádí, že ReLU je nejčastěji používaná funkce v deep learning aplikacích, ale já bych se toho zase tolik nedržel. Raději volím "hladkost" a "spojitost".
_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 18. květen 2021, 16:42:49    Předmět: Odpovědět s citátem

]semo[ napsal:
To je zajímavý téma, ten vlastní framework. Docela by mě zajímalo, kde si čerpal znalosti, jaký si dělal první kroky a tak. Já o tom četl nějakou knížku, takže znám nějaký pojmy, ale neodvážiil sem se udělat ten první krok Smile

Studoval jsem umělou inteligenci v Plzni (i když nedostudoval) a měl jsem jeden skvělý předmět s Kamilem Ekšteinem, kde nám Kamil celkem do detailu popsal všechny možné "inteligentní" algoritmy a postupy, od lineární regrese, přes neuronové sítě, genetické algoritmy až po PCA (principal component analysis) a ICA (independent component analysis).
Bych řekl, že jeden z nejlepších předmětů vůbec, které jsem měl na navazujícím studiu.

Jinak moje implementace NN vychází z tohoto článku (videa): https://vimeo.com/19569529

Neříkám, že jsem nějaký expert na umělou inteligenci, ale hodně mě baví genetické algoritmy, na vysoké jsem na ně měl i krátkou přednášku.
Pak jsem si s genetickými algoritmy hrál, různě jsem je kombinoval s lineární algebrou a numerickými metodami, abych se zbavil nutnosti dělat miliony iterací a čekal na výsledek hodiny (celkem úspěšně, nějaké brutální výpočty jsem díky tomu stáhl z minut na milisekundy... ale to se nechci chvástat). Wink
_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 18. květen 2021, 17:36:33    Předmět: Odpovědět s citátem

Mimochodem, kdo nesleduje můj Twitter, už jsem konečně zprovoznil těžební logiku, takže bych se teď rád pustil do modelování hlavní budovy a těžíků.
Pochopitelně by to také chtělo nějakou jinačí mapičku, pravděpodobně stále "blockmesh" styl (a ještě by se mi líbilo mít stromy, kterým naroste listí na uzdravené zemi)... nicméně bych rád na konci měsíce uvolnil nějaké veřejné "demíčko", ať zkusíme, jak to šlape i na jiných počítadlech (jestli se mi to povede opravdu na konci měsíce netuším... uvidíme).


_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
perry



Založen: 28. 07. 2009
Příspěvky: 879

PříspěvekZaslal: 18. květen 2021, 18:26:02    Předmět: Odpovědět s citátem

]semo[ napsal:
Hlavně, zkuste si tensorflow rozjet. To je tak práce na celý den a ještě se to nepovede. Samý python, anakondy, updaty, balíčky...a furt dokola.


Tensorflow je celkem kšunt, co jsem ho zkoušel Smile Nakonec jsem začal používat Torch a jsem spokojený. Hlavně, běhá to nativně i v C++ Wink

Psát si to ručně... záleží co a na co to potřebuješ. Pokud nějakou konvoluční síť, tak psát si to ručně je dobré na školní cvičení, ale na praktické použití to moc není. Jakmile potřebuješ velkou a hlubokou síť, tak bez GPU se to natrénovat nedá a ty optimalizace co tam jsou bych teda znova psát nechtěl.
_________________
Perry.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
mar



Založen: 16. 06. 2012
Příspěvky: 601

PříspěvekZaslal: 18. květen 2021, 23:09:29    Předmět: Odpovědět s citátem

VODA napsal:
Tuším, že ve škole nám říkali, že použití sigmoidu je častokrát lepší než ty skokové nebo lineární aktivační funkce (už si tedy přesně nepamatuji proč).
Tak se toho držím.
Žádné testy jsem s tím nedělal, ale ten můj malý framework je napsaný tak, že si mohu zvolit jakou funkci chci, ale default je tanh.

Sice se uvádí, že ReLU je nejčastěji používaná funkce v deep learning aplikacích, ale já bych se toho zase tolik nedržel. Raději volím "hladkost" a "spojitost".

nevím, odborník fakt nejsem. ReLU je triviální na výpočet (i když ta aktivační funkce není o výkonu - uvaří se to trochu jinde) a má jednoduchou derivaci a co jsem četl tak to prý urychluje trénink (což nemůžu ani potvrdit, ani vyvrátit Smile, použil jsem tedy leaky ReLU, což je
max(x, -epsilon)

co jsem zkoušel něco triviálního (MNIST), tak jsem natrénoval fakt dobré sítě, i když to bylo malinkaté, myslím 110 tisíc vah zhruba (včetně biasů) - topologie 784-128-64-10, 96.68% test set accuracy

co jsem (empiricky) zjistil, tak samozřejmě trénování je nejkritičtější část a hodně záleží na dobré volbě parametrů pro rychlost trénování a velikosti minibatchů, aby nedocházelo k overfittingu

jinak mi přijde, že pro jednoduché malinkaté feedforward sítě se z toho zbytečně dělá nějaká věda Smile

a co se týká plně propojené sítě (chápu, že to video byl tutoriál), tak myslím, že jsou mnohem lepší reprezentace, než OOP neurony jako objekty v paměti s uzly přes pointery - váhy jsou prostě matice a vlastně celé se to dá narvat do jednoho vektoru + array view pro každý layer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 19. květen 2021, 15:37:21    Předmět: Odpovědět s citátem

mar napsal:
a co se týká plně propojené sítě (chápu, že to video byl tutoriál), tak myslím, že jsou mnohem lepší reprezentace, než OOP neurony jako objekty v paměti s uzly přes pointery - váhy jsou prostě matice a vlastně celé se to dá narvat do jednoho vektoru + array view pro každý layer

To je jasné, že se to dá napsat různě. Nicméně Semo se ptal, odkud jsem čerpal znalosti. A na pochopení toho principu je tahle OOP implementace skvělá.
Prostor pro optimalizace je pak vždy, ne? Wink
_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1525
Bydliště: Telč

PříspěvekZaslal: 19. květen 2021, 15:55:21    Předmět: Odpovědět s citátem

Díky :-) Tak až posbírám síly, zkusím si to video pustit :-)
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1525
Bydliště: Telč

PříspěvekZaslal: 24. květen 2021, 13:13:31    Předmět: Odpovědět s citátem

A podle čeho navrhujte/odhadujete topologii neuronový síitě? Chápu, že vstupní vrstva je jasná, jaký mám input, tolik bude mít neuronů. Výstup je taky jasný, co chci na výstupu, tolik neuronů. Ale co uvnitř? Řeknete si: "to by tak mohlo stačit"... aneb...pane Merunka, chcete tu maltu hustší, a nebo řidší.... ?
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
mar



Založen: 16. 06. 2012
Příspěvky: 601

PříspěvekZaslal: 24. květen 2021, 14:02:40    Předmět: Odpovědět s citátem

ideálně co nejmíň, co bude splňovat tvoje požadavky, takže asi styl pan Merunka Smile

mě třeba zajímají sítě, co mají relativně velký vstupní vektor (bit plane, tzn. většina vstupu je nulová a sem tam jednička - k tomu mám pak i transponovanou matici vah, aby to bylo u sebe v paměti) a velmi malý výstupní vektor (jednotky),
takže pak dám jeden/dva hidden layery, co jdou postupně dolů s počtem "neuronů", tzn. HL1 má míň než vstup, HL2 má míň než HL1 a výstup má míň, než HL2. ale to nemusí být pravidlo.

je potřeba si uvědomit, že počet vah pro další layer (u mě vstup není layer, ale čistě vektor) je velikost předchozího vstupu krát počet vah aktuálního (řeším použe plně propojené sítě) a tenhle počet chci mít v součtu co nejmenší - pak se to rychleji natrénuje a inference (forward pass) bude taky rychlejší. když to nestačí a nedá se natrénovat nic rozumného, zvětšuji hidden layery, případně přidávám další

pokud má někdo lepší recept něž pokus-omyl, rád se přiučím. ale hádám, že to dost záleží na konkrétním případu, čeho chceš docílit

taky strašně záleží na kvalitě a objemu trénovacích dat pro daný problém. obecně asi čím větší síť, tím víc dat budeš potřebovat a tím se proporcionálně prodlouží trénink.

pro mě to je prostě kafemlejnek, kde ho trénuješ co chceš aby z něho lezlo podle toho, co do něj nasypeš. ale děláš to jen proto, aby z toho lezlo něco rozumného i na neznámém vstupu, tj. na něčem, cos přímo netrénoval, ale mělo by se to chovat zhruba podobně
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1525
Bydliště: Telč

PříspěvekZaslal: 26. květen 2021, 08:23:38    Předmět: Odpovědět s citátem

Když už jsme v tomhle offtopicu (snad to VODOvi nevadí):
Vzal jsem kód z toho video tutoriálu, podstrčil mu gesta z handtrackingu, který sem si nahrál, a světe div se...po pár pokusech se to dokonce naučilo rozpoznávat ukazování prstem :-). Musel sem trochu poladit eta a alpha a taky hodně snížit výchozí hodnoty. Ale naučila se. Je to topologie 78 32 16 1 (78 pro 26 kloubů s pozicema xyz). Takže úspěch a díky za tipy :-).
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 26. květen 2021, 16:27:11    Předmět: Odpovědět s citátem

]semo[ napsal:
Když už jsme v tomhle offtopicu (snad to VODOvi nevadí):
Vzal jsem kód z toho video tutoriálu, podstrčil mu gesta z handtrackingu, který sem si nahrál, a světe div se...po pár pokusech se to dokonce naučilo rozpoznávat ukazování prstem Smile. Musel sem trochu poladit eta a alpha a taky hodně snížit výchozí hodnoty. Ale naučila se. Je to topologie 78 32 16 1 (78 pro 26 kloubů s pozicema xyz). Takže úspěch a díky za tipy Smile.

Možná mě trochu mrzí, že o hru není až tak velký zájem, ale nic kvůlu čemu bych se měl hroutit. Kdo ví, jestli to někdy vůbec dodělám... historie svědčí proti mně...
Ale hlavně jsem rád, že jsme Ti mohli dát pár typů ohledně Neuronek a že to pro Tebe má nějaké reálné využití. Smile
Čert vem hru. Wink
_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Inkubátor Časy uváděny v GMT + 1 hodina
Jdi na stránku Předchozí  1, 2, 3  Další
Strana 2 z 3

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna