-
Data: 2013-04-21 17:58:27
Temat: Re: Podpis cyfrowy większej ilości podmiotów
Od: Edek <e...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dnia Fri, 19 Apr 2013 11:54:57 -0700 po głębokim namyśle M.M. rzekł:
> On Thursday, April 18, 2013 5:35:15 PM UTC+2, Edek wrote:
>
>> No bo nie mam zbyt wysokiego mniemania o NN w sensie ogólnym.
> Ach to o to chodziło :) Mnie strasznie wkurza propaganda SSN. Czasami
> można odnieść wrażenie, że naprawdę programista jedzie na wakacje, a w
> tym czasie sieć neuronowa pisze za niego program. W praktyce należy
> spodziewać się że będzie odwrotnie i rozwiązanie na bazie SSN będą
> wymagały większego nakładu pracy, nie wspomniawszy o klastrach
> obliczeniowych do treningu i eksperymentów. Niemniej jestem entuzjastą
> rozwiązań w których sztuczna sieć neuronowa pełni jakąś pomocniczą rolę.
To jest główna idea tych sieci. Po co robić analizę statystyczną czy
budować wiedzę bayesem jak można zapuścić sieć. I nawet działa w
przypadku "płynnych dziedzin" typu wsparcie wycofywania kilkuosiowej
ciężarówki. Ale już przy kwantyfikowanych danych i relacjach minimalizacja
to nie to co misie lubią najbardziej.
>> Jak to mówią ludzie z front-office, fajnie działają, ale nie da się
>> tego sprzedać, bo to black-box - na pytanie "jak to działa w konkretnym
>> przypadku" można rybkę szczelić.
> Racja, a to zaledwie wierzchołek góry lodowej problemów SSN. Trudno
> (bardzo trudno) na bazie wyuczonej sieci wywnioskować jaki ona w istocie
> realizuje algorytm, kiedy ten algorytm zadziała, a kiedy zawiedzie.
> Nawet gdy sieć ma niezbyt dużo połączeń/wag to trudno jest się uczyć od
> wyuczonej sieci. Od wielu innych metod uczenia maszynowego można się
> czegoś dowiedzieć niczym od nauczyciela.
Mało wiem o siciach, ale niektórzy właśnie się odgrażali, że najpierw
zrobią sieć, potem zobaczą co wyjdzie, a na koniec zanalizują i się
czegoś dowiedzą. Mi to podejście wydaje się atrakcyjne, skoro uczymy
się od natury, że zwrotne delfiny mają "poszarpane" płetwy i tak
można zbudować lepszą łódź podwodną, to czemu nie symulować natury,
żeby nauczyć się rozwiązywać problemy nie występujące w naturze -
chyba że istnieją misie wycofujące "Long Vehicles" o czym nie wiem ;)
To trochę naginana teoria z tym modelowaniem przyrody, ale ma jeszcze
jakiś sens.
> A czy fajnie działają? Nie wiem czy tak fajnie... W moich szachach
> działają rewelacyjnie, ale opracowanie i implementacja choćby algorytmy
> przygotowującego dane zajęło mi wiele wiele miesięcy, jeśli nie lat. Jak
> dam tak po prostu dane z gier, czy dane graczy do uczenia, to mam
> powiedzmy 90% szans na całkowicie bezsensowny efekt i jakieś 10% na
> efekt kiepski :) Tak więc rola sieci neuronowej w tej całej zabawie jest
> marginalna, rewelacyjne działanie wynika z tzw "dodatków" które okazują
> się najważniejsze.
Mało mam praktyki, ale sporo znam teorii. Chociażby wg. modeli
matematycznych gęstość informacji jest inna w neuronach z funkcją
ciągłą i nieciągłą. Czyli jak masz back-propagation mnożesz
minimalizować, ale za pomocą nieciągłych da się przy tej samej liczbie
połączeń (aksjonów, tak?) uzyskać więcej kwantyfikowanych relacji. I to
o rzędy wielkości.
Ja właśnie tak przy okazji uczenia się CUDY coś takiego przetestowałem.
Powiedzmy: 3 layery 100x100 mają 3e4 linków. Layery 1000x1000 już
3e6. Wygląda mi to na straszną marnację mocy obliczeniowej i
przy okazji wcale nie odpowiada naturze. Więc jeżeli takie layery
mają 2 wymiary, to zrobiłem neurony mające kształ, powiedzmy dla
layerów 100x100 nauron miałby {x -3:7,y -10:10} - jak kolejny neuron
jest "w kształcie" połączenie jest. Od razu zrobiło się luźniej.
Potem: nieliniowość. W zasadzie funkcja była taka: y = x > .5 ? 1 : 0.
Zrobiłem też więcej layerów - skoro linków mniej, to można je łączyć
dwa-trzy layery w dół i nie działa prawo klasycznych sieci, że to
samo da się osiągnąć 3 layerami in-pośredni-out dzięki nieliniowości
- i uczyłem output layer gradientem, a pozostałe tak: jeżeli wynik jest
ok to nic się nie zmienia, jeżeli jest błąd to
link_delta = C * abs(e) * sign(source_firing - 0.5) * sign(target_firing
- 0.5), gdzie firing jest 0. lub 1. a C < 0. Czyli odwrotność
pozytywnego wzmocnienia a la Pawłow. A, i bez biasu, więc zawsze musi
być jakiś input bo inaczej ZIZO - zero in zero out.
Zrobiłem to tak dla picu, uczyłem się cudy i mało mnie interesowało,
czy te sieci będą się do czegokolwiek nadawać, ale jak się okazało
działa: sieć się bardzo fajnie uczyła, z tym że _nigdy_ nie uczyła
się do końca, zawsze błąd oscylował na niewielkim poziomie, powiedzmy,
że kilka % przypadków było źle. Testowałem operacje logiczne, a nie
"płynne" dzidziny. Dlatego o tym wspominam - szachy są skwantyfikowane,
nawet jeżeli wynik jest "to całkiem całkiem" a inny wynik "to trochę
lepiej".
>> Dodatkowo NN to artefakt ideologii AI, gdzie mapowanie mózgu przesłania
>> mapowanie umysłu, a tu już się kłania lingwistyka.
> Hmmm nie wiem :) Ja stawiam (wiem że kontrowersyjną) hipotezę, że mózg
> to antena, analogiczna jak oczy, czy uszy.
Yyyy... a powiesz co przez to rozumiesz?
>> Praktycznie ja najpierw zrobiłem typowe NN, gdzie zrównoleglanie było
>> banalne, a potem zrobiłem coś takiego:
> Typowe, warstwowe, jednoprzebiegowe sieci powinny się zrównoleglać
> prawie liniowo. W przypadku bardziej skomplikowanych sieci, można
> zrównoleglać obliczanie błędu i/albo gradientu.
Tak, dokładnie, z tym że tak jak napisałem nie liczyłem wcale gradientu.
A przynajmniej nie jego propagacji.
>> I to już zaczęlo mnie uczyć kombinowania w programowaniu gpu. Naprawdę
>> trzeba się namęczyć.
> Gdy się rozważa siedząc w wygodnym fotelu, to nie wydaje się trudne, ale
> w praktyce... wierzę że jest co tuningować przez długie tygodnie.
Ano. Fajnie jest mieć pomysł, ale potem trzeba na parę dni zakasać
rękawy. Oby na kilku dniach się skończyło...
--
Edek
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO
- 2024-11-28 droga laweta
- 2024-11-28 Co tam się odpierdala w tej Warszawie?
- 2024-11-28 skąd się biorą tacy debile?
- 2024-11-28 JDG i utylizacja sprzetu
- 2024-11-27 Identyfikacja układ SO8 w sterowniku migających światełek choinkowych
- 2024-11-28 Katowice => Technical Artist <=
- 2024-11-28 Katowice => Technical Artist <=
- 2024-11-28 Bydgoszcz => QA Engineer <=