eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › sieć neuronowa do uczenia sieci neuronowej
Ilość wypowiedzi w tym wątku: 5

  • 1. Data: 2017-09-18 02:26:45
    Temat: sieć neuronowa do uczenia sieci neuronowej
    Od: "M.M." <m...@g...com>


    Co prawda to nie jest grupa stricte o sztucznej inteligencji, ale
    takowa niemal zamarła, piszą tam z rzadka góra 3-4 osoby; ponadto
    temat sztucznej inteligencji (póki co) jest ściśle związany z
    algorytmiką, więc chyba można na tę grupę pisać o sieciach
    neuronowych, a szczególnie o sztucznych sieciach neuronowych.

    Do rzeczy, jakiś czas temu przyszło mi kilka pomysłów do głowy na to,
    jak jedną sztuczną sieć neuronową wykorzystać do uczenia drugiej
    sztucznej sieci neuronowej. Pomysłami tymi nie chcę się na razie
    dzielić, poza jednym wyjątkiem. Ten jeden stricte nie dotyczy uczenia,
    ale dotyczy doboru architektury, doboru sposobu inicjalizacji wag,
    parametrów uczenia, czasu uczenia, i innych. Pomysł nie jest
    przełomowy, wiem że analogiczne zastosowania sztucznych sieci
    neuronowych były już w innych dziedzinach, chociażby w optymalizacji
    technologii wypiekania ciasteczek. Wpisałem jednak w google i
    nic podobnego nie znalazłem, więc postanowiłem ten pomysł opisać
    tutaj, ryzykując że już ktoś to opisywał.

    Teraz naprawdę do rzeczy. Mamy duże zadanie, dużo danych, prawdopodobnie
    będzie do tego zadania potrzebna duża sieć, a więc każda próba uczenia
    będzie kosztowna i czasochłonna. Na początku na wyczucie dobieramy
    czas uczenia, rozmiary pod-zbiorów uczących, architekturę sieci, sposób
    inicjalizacji wag, itd. Przeprowadzamy kilka eksperymentów i sprawdzamy
    (kroswalidacja) jakie uzyskaliśmy wyniki na zbiorach testowych. Następnie
    na wejście drugiej (dużo mniejszej) sieci podajemy wyniki ze zbiorów
    testowych, a na wyjście dajemy właśnie czas uczenia, rozmiary pod-zbiorów,
    architekturę, inicjalizację, itd. Potem oczywiście uczymy drugą sieć.
    W końcu na wejście sieci dajemy wartość 100%, bo na zbiorach walidacyjnych
    chcemy mieć właśnie skuteczność 100%. Druga sieć na wyjściu zaproponuje
    nowy czas uczenia, nowe podziały na pod-zbiory, nową architekturę itd.
    Pierwszą sieć, o ile odpowiedź drugiej sieci nie jest całkowicie
    nonsensowna, uczymy według propozycji drugiej sieci. W ten sposób
    uzyskamy kolejne dane uczące dla drugiej sieci. Cały proces zapętlamy.

    Będę wdzięczny za uwagi.
    Pozdrawiam


  • 2. Data: 2017-09-18 16:23:56
    Temat: Re: sieć neuronowa do uczenia sieci neuronowej
    Od: t-1 <t...@t...pl>


    W dniu 2017-09-18 o 02:26, M.M. pisze:
    > Druga sieć na wyjściu zaproponuje
    > nowy czas uczenia, nowe podziały na pod-zbiory, nową architekturę itd.
    > Pierwszą sieć, o ile odpowiedź drugiej sieci nie jest całkowicie
    > nonsensowna, uczymy według propozycji drugiej sieci. W ten sposób
    > uzyskamy kolejne dane uczące dla drugiej sieci. Cały proces zapętlamy.
    >
    > Będę wdzięczny za uwagi.

    Rysuje się więc układ potencjalnie niestabilny.
    A ponieważ jest niewątpliwie układem dynamicznym, wielowymiarowym,
    nieliniowym i niestacjonarnym to trudno nawet oszacować jak się zachowa.


  • 3. Data: 2017-09-18 16:43:16
    Temat: Re: sieć neuronowa do uczenia sieci neuronowej
    Od: Szyk Cech <s...@o...pl>

    Nie znam się na SI, ale na logikę, skoro 1 sieć jest jedynie
    przybliżeniem rozwiązania problemu, to czy nauczona na niej druga sieć
    nie będzie czasem gorszym przybliżeniem rozwiązania problemu?!?


  • 4. Data: 2017-09-18 22:08:51
    Temat: Re: sieć neuronowa do uczenia sieci neuronowej
    Od: "M.M." <m...@g...com>

    On Monday, September 18, 2017 at 4:23:54 PM UTC+2, t-1 wrote:
    > W dniu 2017-09-18 o 02:26, M.M. pisze:
    > > Druga sieć na wyjściu zaproponuje
    > > nowy czas uczenia, nowe podziały na pod-zbiory, nową architekturę itd.
    > > Pierwszą sieć, o ile odpowiedź drugiej sieci nie jest całkowicie
    > > nonsensowna, uczymy według propozycji drugiej sieci. W ten sposób
    > > uzyskamy kolejne dane uczące dla drugiej sieci. Cały proces zapętlamy.
    > >
    > > Będę wdzięczny za uwagi.
    >
    > Rysuje się więc układ potencjalnie niestabilny.
    > A ponieważ jest niewątpliwie układem dynamicznym, wielowymiarowym,
    > nieliniowym i niestacjonarnym to trudno nawet oszacować jak się zachowa.

    Druga sieć jest po prostu aproksymatorem. Skuteczność sieci na zbiorze
    testowym zależy głównie od: inicjalizacji wag, algorytmu uczenia, czasu
    uczenia, podziału danych na pod-zbiory uczące/testowe i od architektury
    sieci.

    Przykład dotyczący architektury: zbyt dużo neuronów ukrytych doprowadzi
    do przeuczenia, zbyt mało do niedouczenia. I w jednym, i w drugim
    przypadku sieć kiepsko zachowa się na zbiorze testowym. Druga sieć,
    na podstawie kilkudziesięciu danych uczących, może z jakimś
    prawdopodobieństwem odgadnąć optymalną ilość ukrytych neuronów.

    Pozdrawiam


  • 5. Data: 2017-09-18 22:21:39
    Temat: Re: sieć neuronowa do uczenia sieci neuronowej
    Od: "M.M." <m...@g...com>

    On Monday, September 18, 2017 at 4:43:16 PM UTC+2, Szyk Cech wrote:
    > Nie znam się na SI, ale na logikę, skoro 1 sieć jest jedynie
    > przybliżeniem rozwiązania problemu, to czy nauczona na niej druga sieć
    > nie będzie czasem gorszym przybliżeniem rozwiązania problemu?!?

    Tak, jakby druga sieć uczyła się tego samego co pierwsza, to albo
    byłoby tak jak piszesz, albo jeszcze gorzej. Pierwsza sieć uczy
    się na zupełnie innych danych.

    Przykład:
    Mamy zbiór X jakiś danych. Przygotowujemy 10 różnych eksperymentów
    uczenia. W każdym eksperymencie używamy sieci o innej architekturze, w
    pierwszym mamy 5 neuronów, w drugim w drugim 10, itd aż do 50.
    Uczymy pierwszą sieć w każdym eksperymencie i testujemy na zbiorze
    uczącym. Następnie tworzymy zbiór Y danych. W zbiorze Y będzie
    początkowo 30 wektorów. Wejście w tych wektorach będzie stanowiła
    skuteczność sieci na zbiorze testowym. Wyjście 5, 10, itd aż do 50
    neuronów. Na tych 30tu wektorach uczymy drugą sieć. Następnie na
    wejście podajemy drugiej sieci wartość 100%, bo chcemy uzyskać
    skuteczność 100%. Druga sieć na wyjściu poda np. 38 neuronów. Więc
    do następnego eksperymentu używamy w pierwszej sieci 38 neuronów.

    Pozdrawiam

strony : [ 1 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: