Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
mar
Založen: 16. 06. 2012 Příspěvky: 608
|
Zaslal: 18. květen 2021, 16:05:14 Předmět: |
|
|
pcmaster napsal: |
Ja si tipnem, ze ma vlastny 'framework' |
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 |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 18. květen 2021, 16:09:45 Předmět: |
|
|
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 |
|
|
VODA
Založen: 29. 07. 2007 Příspěvky: 1721 Bydliště: Plzeň
|
Zaslal: 18. květen 2021, 16:16:56 Předmět: |
|
|
]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 |
Také mě to napadlo... ale kdo ví. _________________ Opravdovost se pojí s trýzní... |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 18. květen 2021, 16:19:12 Předmět: |
|
|
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 |
|
|
VODA
Založen: 29. 07. 2007 Příspěvky: 1721 Bydliště: Plzeň
|
Zaslal: 18. květen 2021, 16:28:33 Předmět: |
|
|
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 |
|
|
VODA
Založen: 29. 07. 2007 Příspěvky: 1721 Bydliště: Plzeň
|
Zaslal: 18. květen 2021, 16:42:49 Předmět: |
|
|
]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 |
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). _________________ Opravdovost se pojí s trýzní... |
|
Návrat nahoru |
|
|
VODA
Založen: 29. 07. 2007 Příspěvky: 1721 Bydliště: Plzeň
|
Zaslal: 18. květen 2021, 17:36:33 Předmět: |
|
|
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 |
|
|
perry
Založen: 28. 07. 2009 Příspěvky: 879
|
Zaslal: 18. květen 2021, 18:26:02 Předmět: |
|
|
]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 Nakonec jsem začal používat Torch a jsem spokojený. Hlavně, běhá to nativně i v C++
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 |
|
|
mar
Založen: 16. 06. 2012 Příspěvky: 608
|
Zaslal: 18. květen 2021, 23:09:29 Předmět: |
|
|
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 , 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
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 |
|
|
VODA
Založen: 29. 07. 2007 Příspěvky: 1721 Bydliště: Plzeň
|
Zaslal: 19. květen 2021, 15:37:21 Předmět: |
|
|
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? _________________ Opravdovost se pojí s trýzní... |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 19. květen 2021, 15:55:21 Předmět: |
|
|
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 |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 24. květen 2021, 13:13:31 Předmět: |
|
|
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 |
|
|
mar
Založen: 16. 06. 2012 Příspěvky: 608
|
Zaslal: 24. květen 2021, 14:02:40 Předmět: |
|
|
ideálně co nejmíň, co bude splňovat tvoje požadavky, takže asi styl pan Merunka
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 |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 26. květen 2021, 08:23:38 Předmět: |
|
|
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 |
|
|
VODA
Založen: 29. 07. 2007 Příspěvky: 1721 Bydliště: Plzeň
|
Zaslal: 26. květen 2021, 16:27:11 Předmět: |
|
|
]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 . 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 . |
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í.
Čert vem hru. _________________ Opravdovost se pojí s trýzní... |
|
Návrat nahoru |
|
|
|