Tak mě napadlo, k čemu se vlastně mohou použít ty paralelní sítě - když například budu rozpoznávat obrázky jako minule a kromě určení objektu (kočka, auto, truck) ještě budu chtít určit, jestli je obrázek rozostřený nebo přeexponovaný. Takže bych si udělal síť se třemi větvemi:
1) už popsanou konvoluční síť
2) asi normální síť pro detekci rozostření
3) taky asi normální síť pro detekci přeexponování (to bude nejjednodušší)
chápu to správně?
Tohle se dá řešit multi-task learningem. Tzn. pro každý task existuje jedna výstupní vrstva (např. softmax pro klasifikaci) ale skryté vrstvy mají sdílené váhy (resp. existuje jen jedna množina skrytých vrstev pro celou síť). Trénuje se to celé najednou, tzn. lossy se spočítají pro všechny výstupní tasky a back-propagation pak funguje jako normálně (gradienty "probublají" zpátky ke vstupu). Nevím jak Torch, ale např. v Keras se tohle dělá celkem snadno, když člověk použije jejich funkcionální API.