eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingOdczyt ciśnienia - analiza obrazu › Re: Odczyt ciśnienia - analiza obrazu
  • X-Received: by 2002:ad4:56b2:: with SMTP id bd18mr18217936qvb.22.1605911904470; Fri,
    20 Nov 2020 14:38:24 -0800 (PST)
    X-Received: by 2002:ad4:56b2:: with SMTP id bd18mr18217936qvb.22.1605911904470; Fri,
    20 Nov 2020 14:38:24 -0800 (PST)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erj
    e.net!feeder.erje.net!news.mb-net.net!open-news-network.org!aioe.org!peer02.ams
    4!peer.am4.highwinds-media.com!peer03.iad!feed-me.highwinds-media.com!news.high
    winds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-
    groups.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Fri, 20 Nov 2020 14:38:24 -0800 (PST)
    In-Reply-To: <e...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: google-groups.googlegroups.com; posting-host=178.36.195.82;
    posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
    NNTP-Posting-Host: 178.36.195.82
    References: <rmorh6$cu7$1@dont-email.me> <5f91c6f4$0$503$65785112@news.neostrada.pl>
    <rmspap$ps7$1@dont-email.me>
    <d...@g...com>
    <rmuva3$a2k$1@dont-email.me> <20201023181640.0f3af18f@mateusz>
    <6...@g...com>
    <20201114202121.0f3b5205@mateusz>
    <6...@g...com>
    <d...@g...com>
    <c...@g...com>
    <7...@g...com>
    <b...@g...com>
    <1...@g...com>
    <7...@g...com>
    <e...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <7...@g...com>
    Subject: Re: Odczyt ciśnienia - analiza obrazu
    From: "M.M." <m...@g...com>
    Injection-Date: Fri, 20 Nov 2020 22:38:24 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    X-Received-Bytes: 27593
    X-Received-Body-CRC: 3613644573
    Xref: news-archive.icm.edu.pl pl.comp.programming:215240
    [ ukryj nagłówki ]

    On Friday, November 20, 2020 at 5:02:29 PM UTC+1, Maciek Godek wrote:
    > czwartek, 19 listopada 2020 o 13:30:25 UTC+1 M.M. napisał(a):
    > > On Wednesday, November 18, 2020 at 11:10:46 PM UTC+1, Maciek Godek wrote:
    > > > środa, 18 listopada 2020 o 21:44:48 UTC+1 M.M. napisał(a):
    > > >
    > > > > Z notatnikiem w ręku nie robiłem pomiarów, ale wychodząc z
    > > > > Twojego założenia o ludzkiej omylności, nie ma sensu robić takich
    > > > > pomiarów, bo bym się pomylił w notowaniu ;-)
    > > > To błędny wniosek.
    > > Żartowałem :)
    > Ryzykant ;]
    > > > Można dokonywać eksperymentów pomimo tego, że się popełnia błędy.
    > > Oczywiście.
    > > > > Kilkoro dzieci uczyłem tabliczki mnożenia, alfabetu i jak się dobrze
    > > > > nauczyły to nie popełniały błędów.
    > > > Nie popełniały błędów na zbiorze trenującym, czy na zbiorze testowym?
    > > W ogóle nie myślałem o podziale na zbiór uczący i testowy gdy przytaczałem
    > > ten przykład.
    > No to nic dziwnego, że masz niewspółmierne wyniki.

    Obojętnie jakie mam wyniki, tutaj raczej chodzi o zasadniczą różnicę pomiędzy
    uczeniem się ludzi (dzieci), a sztucznymi sieciami neuronowymi opartymi o klasyczny
    perceptron wielowarstwowy.

    Dziecko uczymy np. tabliczki mnożenia, podajemy przykłady i mamy pewne
    prawdopodobieństwo, że dziecko odkryje regułę na mnożenie dowolnych liczb.
    Im więcej dziecku podamy przykładów, tym większa szansa na to że odkryje
    regułę. Podobnie jest z naukowcem, im więcej ma danych tym ma większą szansę, że
    odkryje regułę rządzącą badanym przez niego zjawiskiem. Naukowiec nie musi
    przed sobą ukrywać połowy danych z badań. Gdy naukowiec proponuje jakąś regułę, to
    ona powinna się sprawdzać na wszystkich dostępnych danych i jest duże
    prawdopodobieństwo, że
    się sprawdzi na danych, którymi naukowiec nie dysponował w trakcie badań.

    Oczywiście, sztuczną sieć neuronową też możemy wyuczyć dokładnie na wszystkich
    dostępnych danych, bez dzielenia na zbiór uczący i testowy. Wtedy sztuczna sieć,
    podobnie jak reguła naukowca, będzie się sprawdzała na wszystkich dostępnych danych.
    Problem jednak w tym, że reguła zaproponowana przez sztuczną sieć neuronową będzie
    sporadycznie dawała poprawne odpowiedzi na danych których sieć nie dostała w trakcie
    uczenia. To się nazywa, jak zapewne wiesz, przeuczenie sztucznej sieci neuronowej.
    Dlatego w przypadku sztucznej sieci neuronowej lepiej podzielić dane uczące na zbiór
    testowy i uczący, i uczyć do momentu, gdy ilość poprawnych odpowiedzi na zbiorze
    testowym jest maksymalna. Z tego wynikają wady sztucznych sieci neuronowych:
    - tworzą regułę na mniejszej ilości danych niż ilość dostępnych,
    - nawet na zbiorze uczącym z pewnym prawdopodobieństwem udzielają błędnych
    odpowiedzi.

    Moje sieci, jak już pisałem, po wyuczeniu na maksa mają mniej objawów przeuczenia.


    > > > > Podobnie jak w recytowaniu wiersza z
    > > > > pamięci - o ile im się chciało i o ile dobrze się nauczyły to powtarzały bez
    > > > > pomyłek.
    > > > Sieć neuronowa, o ile "dobrze się nauczy", też będzie powtarzała bez pomyłek.
    > > Oczywiście, jeśli sztuczną siec neuronową, opartą o klasyczny perceptron
    wielowarstwowy,
    > > wyuczymy z dokładnością 100% na danym zbiorze, to będzie dawała poprawne
    > > odpowiedzi z prawdopodobieństwem 100% na tym zbiorze.
    > > > Owe 95% (czy ile tam) skuteczności nie dotyczy powtarzania.
    > > Nie rozumiem.
    > Zdanie niżej masz wyjaśnienie, na które odpowiedziałeś "oczywiście"
    > > > Wytrenowana sieć dla tych samych danych wejściowych w 100% razy zwróci te same
    dane wyjściowe.
    > > > (w każdym razie dotyczy to sieci bezinercyjnych, takich jak perceptrony)
    > > Oczywiście.
    > O.
    > > > > Kiedyś amatorsko tresowałem kota, łapał i aportował zabawkę
    > > > > bezbłędnie.
    > > > W jaki sposób mierzyłeś błąd? I na ilu próbach?
    > > Na potrzeby tego o czym pisałem nie ma potrzeby użycia naukowej,
    > > udokumentowanej metody, tym bardziej że jest to tylko analogia.
    > Albo używamy pomiarów, albo stosujemy analogie.
    > Mówienie o procentach skuteczności sugeruje pomiar.

    Może wysłowiłem się w mylący sposób - przepraszam.


    > > Dziecko po opanowaniu całego materiału może udzielać bardzo
    > > dokładnych, precyzyjnych odpowiedzi i ta umiejętność nie musi
    > > dziecku niekorzystnie wpłynąć na zdolności generalizowania, abstrahowania.
    > > Sztuczne sieci neuronowe zwykle uczy się tylko do pewnego momentu, aby
    > > nie doszło do przeuczenia. Zwykle lepiej jest gdy sztuczne sieci
    > > neuronowe nie udzielają precyzyjnych odpowiedzi na zbiorze uczącym.
    > > > > Ale powyższy akapit ma się nijak do tego o czym pisałem i nie
    > > > > chce mi się sprawdzać, kiedy dziecko myli się raz na 5 recytacji
    > > > > wiersza, a kiedy raz na 1000 recytacji. Interesuje mnie fakt, że
    > > > > DZIECKO UCZĄC SIĘ DOKŁADNIE (np. tabliczki mnożenia do 10) NIE
    > > > > ZATRACA ZDOLNOŚCI GENERALIZACJI W ZAKRESIE DO 20.
    > > > OK, to tutaj już jest bardziej konkretna hipoteza
    > > Przepraszam że poprzednio napisałem zbyt skrótowo.
    > > > (której chyba nadal nie rozumiem).
    > >
    > >
    > > > Czyli twierdzisz, że jeżeli dziecko nauczy się na pamięć, ile to jest 6 * 7, to
    będzie
    > > > również bez problemu w stanie powiedzieć, ile to jest 13*17?
    > > Nadal nie to chciałem powiedzieć, ale już jesteśmy bliżej sedna. Dziecko może
    > > uczyć się tabliczki mnożenia na pamięć. Nie jest ważne czy to dobra metoda nauki,
    czy
    > > zła - to po prostu przykład działania biologicznego mózgu w akcji. Dziecko
    > > otrzymuje jeden przykład uczący do nauki, drugi, kolejny. W zależności od tego
    jakie to
    > > dziecko i czego uczyło się wcześniej, może znaleźć regułę mnożenia po pamięciowym

    > > opanowaniu mniejszej ilości przykładów, większej, albo w ogóle. Dziecku po
    > > prostu dajemy przykłady do nauki. W przypadku sztucznych sieci neuronowych jest
    > > inaczej. Przed przystąpieniem do uczenia sztucznej sieci, zbiór danych
    > > dzielimy na zbiór uczący i zbiór testowy. Zbiór testowy jest w pewnym sensie
    > > marnowany, ponieważ nie jest przeprowadzana na nim nauka. Niemniej jednak
    > > zbiór testowy jest konieczny, aby móc kontrolować jakość działania sztucznej
    > > sieci neuronowej na przykładach które nie były podawane w trakcie nauki.
    > W przypadku nauki dzieci też masz zbiory trenujące i zbiory testowe.

    Oczywiście że można, a zazwyczaj wręcz trzeba testować zdobytą wiedzę/umiejętności
    przez ludzi! Nie chciałem powiedzieć że ludzie tylko uczą się na przykładach, aż
    odkrywają regułę i potem nie muszą weryfikować swojej wiedzy.

    Raczej chciałem powiedzieć, że jedną z metod nauki jest taka metoda, w której
    nauczyciel podaje jeden przykład i sposób rozwiązania tego przykładu, potem drugi,
    trzeci, w końcu n-ty i dzieci kolejne przykłady rozwiązują samodzielnie. Raczej
    chciałem powiedzieć, że nauczyciel nie ukrywa połowy materiałów edukacyjnych, w
    obawie że dzieci się przeuczą.

    Upraszczając, w przypadku nauki dzieci są tak jakby dwa zbiory danych: jeden uczący,
    potem testowy np. na egzaminie. W przypadku sztucznej sieci neuronowej (nadal
    upraszczając) są trzy zbiory: zbiór uczący, zbiór testowy i potem dane napływające
    do sieci w trakcie jej działania. Dostępne dane są marnotrawione, bo sieć nie uczy
    się na danych testowych, aby się nie przetrenowała. Moje sztuczne sieci, ze
    względu na specyficzną architekturę (choć to nadal jest perceptron wielowarstwowy) są

    mniej wrażliwe na przetrenowanie, więc można uczyć na maksa, a sieć na starych
    danych nie poda błędnej odpowiedzi.


    > Przynajmniej tak jest w przypadku nauki matematyki.
    > Masz przykłady i masz zadania sprawdzające.
    > Doświadczenia nauczycieli raczej podpowiedzą, że na zadaniach sprawdzających rzadko
    masz 100% skuteczności.


    Oczywiście, nie chciałem powiedzieć że PO ETAPIE nauki nie sprawdza
    się na kolejnych danych umiejętności uczniów czy hipotezy naukowca.
    Chciałęm powiedzieć ze NA ETAPIE nauki ani naukowiec, ani uczeń nie
    ukrywają przed sobą połowy dostępnych wyników badań czy połowy
    materiałów edukacyjnych. Tymczasem w przypadku sztucznych sieci
    neuronowych już NA ETAPIE nauki ukrywamy jakąś część danych przed
    siecią i zwykle nie uczymy aż sieć pod 100% poprawnych odpowiedzi
    na danych. Uczeń powinien się uczyć aż opanuje 100% dostępnych
    materiałów, a naukowiec powinien pracować nad hipotezą aż pokryje
    ona wszystkie materiały z badań. To co będzie po etapie nauki, czy
    uczeń zda egzamin, czy hipoteza naukowca przetrwa próbę czasu i
    zyska status wiedzy - stanowią kolejną kwestię.


    > Przykład z tabliczką mnożenia jest o tyle niefortunny, że to jest dokładnie coś,
    czego uczysz się na pamięć.
    > Taki jest zamysł. To jest cache, który ma później usprawniać obliczenia.

    Owszem, przedstawiłem to myląco. Chyba nigdy nie prowadziłem rozmowy na ten temat i
    nie zdawałem sobie sprawy jak można zrozumieć takie przedstawienie problemu. Ale
    faktycznie, tabliczka mnożenia to jest cache, a po etapie nauki uczeń jest
    testowany np. na egzaminie. Więc pisanie że uczeń nie jest testowany było
    mylące. Raczej chodzi o to, że uczeń nie ukrywa przed sobą części materiałów
    edukacyjnych w obawie że się przeuczy - no chyba że ze zmęczenia; ale dobrze
    zaprojektowany układ elektroniczny, pracujący w dobrych warunkach, odpowiednio
    zasilany... praktycznie nie ulega żadnym awariom przez tysiące lat, więc pod tym
    względem w ogóle porównanie ludzi i komputerów elektronicznych nie ma sensu.


    > Dziecko, które ma "dane w cache'u", może nie mieć algorytmu do mnożenia, i dlatego
    > ze znajomości tabliczki mnożenia nie można wyciągnąć wniosku o tym, czy dziecko
    umie
    > mnożyć liczby powyżej 10.

    Owszem, ale nie o to chodziło.



    > > Zwykle w trakcie nauki mamy do czynienia ze zjawiskiem przeuczenia, czyli
    > > im sieć daje więcej poprawnych odpowiedzi na zbiorze uczącym, tym mniej na
    > > zbiorze testowym. Zwykle należy przerwać trening sieci w momencie gdy na zbiorze
    > > testowym jest najwięcej poprawnych odpowiedzi. Widać tutaj oczywistą i
    > > sporą wadę w porównaniu z nauką dzieci. Nawet na zbiorze uczącym sieć nie
    > > daje 100% poprawnych odpowiedzi! Minimalnie wypaczając analogię, to tak jakby
    > > uczyć dziecko tylko do momentu gdy udzieli 80% poprawnych odpowiedzi z
    > > tabliczki mnożenia. W sztucznych sieciach neuronowych na bazie 'mojej
    > > autorskiej' struktury danych ten problem nie jest aż tak drastyczny - choć
    > > niestety nadal może się pojawiać. Moje sieci mogą dawać 100% poprawnych i
    > > bardzo precyzyjnych odpowiedzi na dostępnych danych, bez obawy, że znacznie
    > > spadnie skuteczność na danych, których nie było w trakcie uczenia. Problem
    > > przeuczenia w moich sieciach nie jest aż tak dużym problemem.

    > Nie możesz "nie mieć obaw o skuteczność na danych, których nie było w trakcie
    uczenia".
    > Bo jeżeli nie było, to skąd sieć ma wiedzieć, jakie tam mają być wartości?
    >
    > Nie może tego wiedzieć.

    Całkowicie obaw oczywiście nie mogę się pozbyć, ale mam zdecydowanie mniejsze obawy
    że
    moja wyuczona sieć neuronowa na maksa (czyli przeuczona) zachowa się lepiej niż
    klasyczny
    perceptron.


    > Przetrenowanie i błędna generalizacja u ludzi może wystąpić w takim samym stopniu,
    jak u sieci neuronowych.

    Czy w takim samym stopniu to inna sprawa, ale na pewno masz rację, że zarówno w
    przypadku ludzi jak i
    sztucznych sieci neuronowych jest ryzyko błędnej generalizacji. I tutaj sztuczne
    sieci na bazie
    mojej architektury nie wprowadzają zupełnie żadnego przełomu. Moje tylko po
    przeuczeniu nie są
    tak bardzo (tak często) przeuczone jak sieci na bazie klasycznego perceptronu
    wielowarstwowego.


    >
    > Ja pamiętam, jak kiedyś chyba w przedszkolu byłem oburzony, bo mieliśmy odróżnić
    obrazek z sałatą od
    > obrazka z kapustą. I to na domiar złego była taka włoska kapusta, z odstającymi
    liśćmi. Tak że
    > wyglądała dla mnie nierozróżnialnie od sałaty (tym bardziej, że w moim spekrtum
    doświadczeń nie
    > było ani kapusty, ani sałaty)

    Hmmm, kolejny ciekawy przykład na temat działania biologicznych sieci neuronowych i
    kolejne
    źródło wartościowych inspiracji. Ale niestety do tego konkretnego i wąskiego tematu
    nie klei
    mi się w ogóle, może czegoś nie rozumiem?


    > Jak masz bardzo duży zbiór danych, to zawsze znajdzie się tam kot, który wygląda
    jak pies, albo
    > ser, który wygląda jak skrzynka na listy. Albo cyferka 3, która wygląda jak 5 albo
    8. I jeżeli
    > oznaczenie danych mówi, że ta cyferka to jest 3, ale sieć widzi, że jednak wygląda
    bardziej jak 8,
    > to nie można mieć do niej pretensji, że "się myli".

    Oczywiście, ale temat błędnych danych to kolejna kwestia. Jeśli w danych uczących
    cyfra 8
    jest z prawdopodobieństwem p oznaczona jako 8 i z prawdopodobieństwem 1-p jako
    nie-osiem, to
    (precyzyjna) sieć neuronowa, gdy otrzyma na wejście 8 powinna właśnie dać odpowiedź
    p, a
    nie 1. Jeśli dane pochodzą np. z ręcznie pisanych cyfr, jeśli zbiór danych jest
    reprezentatywny, a cyfra 8 jest mylona z inną cyfrą z prawdopodobieństwem 1-p, to
    trakcie
    działania cyfra 8 jest mylona z inną cyfrą z tym samym prawdopodobieństwem, więc
    lepszą
    odpowiedzią sieci jest odpowiedź p, niż 1. Jakie dane, taką hipotezę postawi sieć i
    naukowiec.
    Jeśli cyfra 8 w danych jest klasyfikowana z prawdopodobieństwem 99% jako cyfra 3, to
    każda
    szanująca się metoda uczenia maszynowego powinna też ją sklasyfikować jako cyfrę 3.
    Antidotum na błędne dane jest duży i losowy zbiór uczący, który asymptotycznie będzie

    dążył do zbioru reprezentatywnego, a nie cudowna metoda uczenia maszynowego która
    poprawi BŁĘDY STATYSTYCZNE w danych.

    W pewnym przybliżeniu, sztuczna sieć neuronowa w programie szachowym na wejście też
    dostaje tylko informacje o tym, że z danej pozycji było N rozgrywek, białe wygrały X
    razy,
    czarne Y, a pozostałe partie były remisowe. To, że dane są nieprecyzyjne albo
    nawet błędne, nie oznacza, iż oczekujemy od sieci lepszej odpowiedzi niż dane.
    Jeśli program szachowy napotyka pozycję z której wygrywał z prawdopodobieństwem 80%,
    to
    sieć niech podaje odpowiedź dla tej pozycji 80%, a nie 100%, nawet jeśli pozycja jest
    wygrana w 100%. Chodzi o to, aby nie podawała 70%, ani 90%, tylko właśnie precyzyjnie

    80%, bo tyle wynika z danych.



    > > > > Nie muszę
    > > > > dziecka uczyć tylko 70% przykładów, bo w wieku dorosłym będzie
    > > > > miało z mnożeniem w słupku - to było oczywiste. Tymczasem, sztuczna sieć
    > > > > neuronowa zbudowana w oparciu o klasyczny perceptron wielowarstwowy, ucząc
    się
    > > > > dokładnie na zbiorze uczącym, zazwyczaj udziela gorszych odpowiedzi na
    zbiorze
    > > > > testowym. Sztuczne sieci neuronowe zbudowane w oparciu o moją architekturę
    > > > > mają z tym mniej problemów - tak, chwalę się, jestem dalece niedoskonały ;-)
    > >
    > > > Ja czasem mam tak, że jak sobie w jesienne wieczory idę przez miasto, to
    > > > niektóre worki na śmieci wypełnione liśćmi mój mózg rozpoznaje jako psy.
    > > > Serio, jestem na jakimś poziomie całkowicie przekonany, że na ulicy leży pies.
    > > > Dopiero jak się wytężę, uświadamiam sobie, że to tylko worek na śmieci.
    > > > Czasem jeżeli nawet kilka dni z rzędu idę przez to samo miejsce, i leży ten
    > > > sam worek, to niezawodnie rozpoznaję w nim dużego śpiącego bernardyna.
    > > Od czasu gdy mój wzrok uległ znacznemu pogorszeniu, bardzo często mam podobne
    > > problemy, aż dziwne, że z takimi zakłóceniami jestem w stanie cokolwiek
    > > rozpoznać. Ale to też odbiega od tematu rozmowy.
    > Właśnie chodzi o to, że nie odbiega.
    > Że pokazuje zjawiska, które można obserwować w działaniu sieci neuronowych na
    spektrum naszych doświadczeń.

    To ja nie rozumiem związku tego przykładu z rozmową na temat błędych odpowiedzi sieci
    na
    danych ze zbioru uczącego.


    > > Raczej chciałem
    > > tutaj powiedzieć, że sieci zbudowane w oparciu o moją architekturę nie
    > > powtarzają błędów, bo można je wyuczyć na maksa na danych rozszerzonych o
    > > przypadki w których pojawiły się błędne odpowiedzi, a problem przeuczenia
    > > nie występuje tak łatwo jak w przypadku sieci zbudowanych w oparciu o
    > > klasyczny (nie)liniowy perceptron wielowarstwowy.

    > To może kluczowe pytanie jest takie, z jakich zbiorów danych korzystałeś, żeby
    dojść
    > do tych wniosków.

    To w głównej mierze teorie i hipotezy. Ale też wykonałem kilka praktycznych testów,
    wypadły bardzo zachęcająco. Np. na danych o zarobkach wypadły najlepiej ze wszystkich
    metod uczenia jakie były dostępne w benchmarku i w wece. Minęło już kilka lat jak
    robiłem testy, ale chyba na danych syntetycznych wygenerowanych z prostych wzorów
    matematycznych, w ogóle wypadły bardzo dobrze i pobiły klasyczny perceptron na głowę
    w
    szybkości, precyzji i skuteczności na zbiorze testowym.

    Potem niestety, w obawie o to że kody źródłowe zostaną wykradzione z mojego
    komputera,
    wszystko skasowałem. Nie zdążyłem przetestować wszystkich algorytmów które
    współpracują z
    tą strukturą sieci neuronowych, w tym kilku algorytmów opracowanych przeze mnie. W
    przypadku
    tych sieci można stosować dwa odmienne algorytmy do uczenia jednej i tej samej sieci
    na
    tych samych danych - nie tak łatwo to wszystko dokładnie przetestować i odpluskwić.

    Co do teorii, to udowodniłem że moja architektura może bardzo szybko wyuczyć się
    precyzyjnie
    dowolnych danych, stanowi więc uniwersalny aproksymator.


    Co do lepszej generalizacji formalnego dowodu w ogóle nie można przedstawić.
    Mamy najprostszy, jednoelementowy zbiór uczący:
    f(0)=0.
    Zbiór testowy może być taki:
    f(1)=1,
    albo taki:
    f(1)=0.
    Z matematycznego punktu widzenia żaden z tych zbiorów nie jest ani gorszy, ani
    lepszy.
    Jeśli sieć neuronowa na jednym zbiorze testowym da poprawną odpowiedź, to na drugim
    da złą. Więc formalnie, z matematycznego punktu widzenia, nie istnieje żadna metoda
    uczenia maszynowego, która będzie cechowała się dobrymi zdolnościami do
    generalizacji.

    Moje sieci neuronowe nie próbują rozbić powyższego muru głową. Zamiast tego szybko
    się uczą, używają minimalistycznego modelu matematycznego, szybko dla danych uczących

    dają dobre odpowiedzi, nie marnją danych na zbiór testowy - ale jak pomiędzy próbkami
    jest
    jakiś nagły pik, to i salomon nie naleje - moje sieci też tego piku cudownie nie
    odgadną. Oczywiście,
    jeśli dla danego zadania lepszym modelem matematycznym będzie klasyczny perceptron
    wielowarstwowy, to
    moje sieci neuronowe będą znacznie gorsze - cudów nie ma.

    Swoje przekonania co do lepszych zdolności generalizacyjnych na danych praktycznych
    (bo
    teoretycznie, na dowolnych danych, wykazałem powyżej że jest to w ogóle niemożliwe),
    opieram
    też na pewnych podobieństwach do innych metod interpolacji/aproksymacji. Np. na tym,
    że
    jeśli aproksymujemy modelem liniowym, to wystarczą zaledwie dwie dobre próbki uczące,
    aby
    mieć dobrą aproksymację.

    Moje sieci mają też inną zaletę, moje sieci neuronowe uczą się o rzędy wielkości
    szybciej. Gdy jakąś głęboką sieć neuronową wyuczy się jeden raz przez ileś tygodni na
    klastrze złożonym z wielu GPU, to moją można wyuczyć np. setki razy na jednym
    komputerze
    bez GPU.


    > > > Na dużych zbiorach danych popełnianie błędów jest niemożliwe do uniknięcia.
    > > Jeśli jakąś przestrzeń mamy gęsto pokrytą danymi (czyli mamy dużo danych i
    > > równomiernie rozłożonych po tej przestrzeni) to jest możliwe wyuczenie sieci
    > > która da blisko 100% poprawnych odpowiedzi na zbiorze uczącymi i
    > > testowym.
    > To zależy od zbioru uczącego i testowego.
    > Ale tak, zazwyczaj (pewnie) jest możliwe. Nawet owo anegdotyczne 95% to jest
    całkiem "blisko 100%".

    Ok.

    Pozdrawiam


Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

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: