Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmienne
Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
Również skończę dyskusję bo widzę, że starasz się być mądrzejszy od książek.
Podpowiem ci, że jeżeli wrzucisz ceny bez normalizacji i sprowadzania wektorów uczących
do jednego poziomu to gówno otrzymasz. Najpierw poczytaj co to jest normalizacja.
Za kilka lat jak wrócisz do tej rozmowy z lepszą wiedzą i doświadczeniem to być może przyznasz
się do tego jak głupie było twoje podejście.
Podpowiem ci, że jeżeli wrzucisz ceny bez normalizacji i sprowadzania wektorów uczących
do jednego poziomu to gówno otrzymasz. Najpierw poczytaj co to jest normalizacja.
Za kilka lat jak wrócisz do tej rozmowy z lepszą wiedzą i doświadczeniem to być może przyznasz
się do tego jak głupie było twoje podejście.
Każdy chce mieć pieniądze, ale pieniądze nie zawsze chcą każdego 

Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
To o czym ja mówię nie jest w sprzeczności z książkami! Widać, że nawet nie próbujesz zrozumieć tego o czym ja piszę i to co jest napisane w tych twoich książkach...
Szkoda również, że w żaden sposób nie argumentujesz swoich przekonań - tylko odsyłasz do książek (oczywiście bez podania konkretnego tytułu), w których, z tego co pamiętam, zaleca się stosowanie normalizacji a nie obliguje do jej stosowania - strasząc, że się otrzyma
Wikipedia:
Szkoda, że unikasz również odpowiedzi na pozostałe, wydawałoby się, banalne pytania - czemu mnie to nie dziwi...
Miałem już nie pisać, ale chciałem na zakończenie sprostować niepotrzebne wcześniejsze sprostowanie - dla ludzi o bardziej otwartych umysłach niż twój, który nie dopuszcza żadnego rodzaju przekształceń (nawet takich, które nie mają żadnego wpływu na wynik).
Otóż normalizacji można również nie stosować dla różnych typów zmiennych pod warunkiem, że uwzględnimy wstępne wielkości wag dla tych zmiennych - w trakcie losowania - oraz gdy odpowiednio zmniejszymy lub zwiększymy krok uczenia - indywidualnie dla każdej zmiennej. Z pośpiechu (braku analizy) i pod wpływem głupot, które pisałeś Tymek wycofałem się częściowo z tego - co było jednak niepotrzebne!
Innymi słowy: nauka sieci ze zmiennymi znormalizowanymi i odpowiednio dla zmiennych nieznormalizowanych wygląda tak:
W = W + krok_uczenia*g //dla zmiennych znormalizowanych
W = W + krok_uczenia_Z*g //dla zmiennych bez normalizacji
gdzie:
W to waga, krok_uczenia to krok uczenia ustalany indywidualnie, krok_uczenia_Z to krok uczenia ustalany indywidualnie, ale odpowiednio zwiększony/zmniejszony dla każdej zmiennej (uwzględniając jej wielkości), g to pochodna obliczona dla każdej zmiennej - gdy zmienne wejściowe były znormalizowane będzie odpowiednio mniejsza/większa, gdyby zmienne nie były znormalizowowane!
Można powiedzieć, że to o czym ja piszę to jest normalizacja od drugiej strony - zamiast normalizować zmienne, można "znormalizować" parametry.
Dlatego jeśli zmienne nie są zróżnicowane to można olać normalizację a w innym przypadku lepiej ją stosować z uwagi na to, że w/w podejście jest bardziej kłopotliwe - o czym już wspomniałem wcześniej.
I powtarzam, że to jest czysta i prosta matematyka, którą powinieneś wynieść ze szkoły podstawowej! W matematyce nie ma znaczenia, czy mnożysz 0.1 przez 2 czy 1 przez 0.2 - wynik jest ten sam. No ale cóż, jak się nie rozumie tak prostych rzeczy to rzeczywiście trzeba trzymać się wersji z książkami - jak czegoś nie ma w książce to nie może być prawdą... Tak to już jest jak się nie potrafi myśleć samodzielnie... To świadczy tylko o tym, że jesteś dość mocno ograniczony.
A jeśli nie wierzysz powyższym twierdzeniom to proponuję wziąć sobie jakiś prosty model liniowy z jedną zmienną (dla ułatwienia obliczeń) np. Y = W*X + b, gdzie W to waga a X to zmienna a b to wyraz wolny
następnie znormalizować tą zmienną
utworzyć drugi model typu Y = W*N, gdzie N to znormalizowana zmienna
i zastanowić się (odpowiedzieć sobie na proste pytania) czy:
1. oba modele nie mogą dawać tych samych wyników (podpowiedź: mogą),
2. jak będzie przebiegać "nauka"/estymacja takiego modelu metodą gradientową, (mam nadzieję, że umiesz obliczyć pochodną - szczególnie z tak prostej funkcji! Oczywiście najlepiej, by funkcja błędu była kwadratowa, ale może być dowolna),
3. czy nauka dla modelu ze zmienną znormalizowaną może przebiegać w identyczny sposób (w każdej iteracji model zwracałby ten sam wynik) co model bez normalizacji? A jeśli jest to możliwe to sam sobie odpowiedz na pytanie po co jest normalizacja, jeśli wyniki mogą być takie same!
A jak uda ci się dojść do punktu 3 to bądź tak łaskaw i odnieś się do poniższego cytatu i go sam skomentuj:
Szkoda również, że w żaden sposób nie argumentujesz swoich przekonań - tylko odsyłasz do książek (oczywiście bez podania konkretnego tytułu), w których, z tego co pamiętam, zaleca się stosowanie normalizacji a nie obliguje do jej stosowania - strasząc, że się otrzyma
Tymek pisze:gówno
Tymek pisze:Najpierw poczytaj co to jest normalizacja.
Wikipedia:
A teraz weź sobie książkę sieci neuronowe tom 6 (pod redakcją M. Nałęcza - taka gruba zielona) i zobacz ile jest sposobów na normalizację. Jest tam wymienionych 5 najczęściej stosowanych sposobów normalizacji i nie jest to katalog zamknięty. Teraz wyobraź sobie, że one wszystkie dają wyniki z różnych przedziałów! Rozumiesz co to znaczy? No to wracamy do mojego poprzedniego postu i pytania "do jakiego zakresu najlepiej normalizować zmienne - i czy jest jakiś optymalny zakres"? Bo jeśli nie ma optymalnego zakresu to po co normalizować zmienne, których wartości są z tego samego (podobnego) przedziału? Równie dobrze możesz je znormalizować do ich naturalnego przedziału - czyli nic nie robić. Rozumiesz to czy ciągle jesteś zbyt ograniczony by to pojąć? Piszesz o małych dzieciach, ale widzę, że tobie bez obrazków nie da się pewnych prostych i logicznych (wydawałoby się) rzeczy wytłumaczyć...Normalizacja jest w statystyce procedurą wstępnej obróbki danych w celu umożliwienia ich wzajemnego porównywania i dalszej analizy.
Szkoda, że unikasz również odpowiedzi na pozostałe, wydawałoby się, banalne pytania - czemu mnie to nie dziwi...
Miałem już nie pisać, ale chciałem na zakończenie sprostować niepotrzebne wcześniejsze sprostowanie - dla ludzi o bardziej otwartych umysłach niż twój, który nie dopuszcza żadnego rodzaju przekształceń (nawet takich, które nie mają żadnego wpływu na wynik).
Otóż normalizacji można również nie stosować dla różnych typów zmiennych pod warunkiem, że uwzględnimy wstępne wielkości wag dla tych zmiennych - w trakcie losowania - oraz gdy odpowiednio zmniejszymy lub zwiększymy krok uczenia - indywidualnie dla każdej zmiennej. Z pośpiechu (braku analizy) i pod wpływem głupot, które pisałeś Tymek wycofałem się częściowo z tego - co było jednak niepotrzebne!
Innymi słowy: nauka sieci ze zmiennymi znormalizowanymi i odpowiednio dla zmiennych nieznormalizowanych wygląda tak:
W = W + krok_uczenia*g //dla zmiennych znormalizowanych
W = W + krok_uczenia_Z*g //dla zmiennych bez normalizacji
gdzie:
W to waga, krok_uczenia to krok uczenia ustalany indywidualnie, krok_uczenia_Z to krok uczenia ustalany indywidualnie, ale odpowiednio zwiększony/zmniejszony dla każdej zmiennej (uwzględniając jej wielkości), g to pochodna obliczona dla każdej zmiennej - gdy zmienne wejściowe były znormalizowane będzie odpowiednio mniejsza/większa, gdyby zmienne nie były znormalizowowane!
Można powiedzieć, że to o czym ja piszę to jest normalizacja od drugiej strony - zamiast normalizować zmienne, można "znormalizować" parametry.
Dlatego jeśli zmienne nie są zróżnicowane to można olać normalizację a w innym przypadku lepiej ją stosować z uwagi na to, że w/w podejście jest bardziej kłopotliwe - o czym już wspomniałem wcześniej.
I powtarzam, że to jest czysta i prosta matematyka, którą powinieneś wynieść ze szkoły podstawowej! W matematyce nie ma znaczenia, czy mnożysz 0.1 przez 2 czy 1 przez 0.2 - wynik jest ten sam. No ale cóż, jak się nie rozumie tak prostych rzeczy to rzeczywiście trzeba trzymać się wersji z książkami - jak czegoś nie ma w książce to nie może być prawdą... Tak to już jest jak się nie potrafi myśleć samodzielnie... To świadczy tylko o tym, że jesteś dość mocno ograniczony.
A jeśli nie wierzysz powyższym twierdzeniom to proponuję wziąć sobie jakiś prosty model liniowy z jedną zmienną (dla ułatwienia obliczeń) np. Y = W*X + b, gdzie W to waga a X to zmienna a b to wyraz wolny



1. oba modele nie mogą dawać tych samych wyników (podpowiedź: mogą),
2. jak będzie przebiegać "nauka"/estymacja takiego modelu metodą gradientową, (mam nadzieję, że umiesz obliczyć pochodną - szczególnie z tak prostej funkcji! Oczywiście najlepiej, by funkcja błędu była kwadratowa, ale może być dowolna),
3. czy nauka dla modelu ze zmienną znormalizowaną może przebiegać w identyczny sposób (w każdej iteracji model zwracałby ten sam wynik) co model bez normalizacji? A jeśli jest to możliwe to sam sobie odpowiedz na pytanie po co jest normalizacja, jeśli wyniki mogą być takie same!
A jak uda ci się dojść do punktu 3 to bądź tak łaskaw i odnieś się do poniższego cytatu i go sam skomentuj:
Tymek pisze:Podpowiem ci, że jeżeli wrzucisz ceny bez normalizacji i sprowadzania wektorów uczących
do jednego poziomu to gówno otrzymasz.
Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
Naprawdę jesteś niesamowity, czytasz i nie wiesz co przeczytałeś w tych książkach
Masz naprawdę duże problemy.
Normalizacja danych wejściowych (wektorów uczących) to sprowadzenie wartości do tego samego przedziału.
A to oznacza całkiem coś innego niż ty zrozumiałeś, czyli masz problemy z podstawami i pier...lisz jak potłuczony.
Walisz takie teksty, że połowa uczelni już się położyła ze śmiechu a druga uczelnia już wrzuca twoje posty
do działu humor. Ale cóż zabłysłeś niesamowicie.
Nie chcę mi się tłumaczyć coś komuś co i tak ten ktoś uważa że i tak wie lepiej.
Ale ci powiem o co biega z tą normalizacją i zakończę z tobą dyskusję bo nie jesteś nawet warty mojej uwagi.
Masz wektor 1: [1.34; 1.36; 1.40; 1.39; 1.32]
Masz wektor 2: [1.24; 1.26; 1.30; 1.29; 1.22]
Jak widzisz przedstawia jakiś tam ruch ceny, jeżeli mamy tylko 2 wektory uczące jak teraz możesz wyznaczyć
ich przestrzeń czyli są w przedziale 0.0 do 0.08 czyli po normalizacji będą:
1: [0.02; 0.04; 0.08; 0.07; 0.0]
2: [0.02; 0.04; 0.08; 0.07; 0.0]
Czyli takie same ... a więc musisz sprawdzić czy odpowiedź na nie jest taka sama jak nie to nie ustabilizujesz
sieci. Tak robisz z całym zbiorem uczącym, i testowym. Dzięki normalizacji możesz określić czy twój zbiór
uczący jest prawidłowy ale ty i tak pewnie wiesz lepiej
By ci jeszcze namieszać to możesz sobie określić przedział jako -1 do 1
i wtedy musisz odpowiedni te
dane przeliczyć i te dwa wektory też będą takie same

Tak więc jeszcze wiele przed tobą a ja nie będę ci pomagał bo i tak zaraz będziesz wyskakiwał
z przekształceniem liniowym i innymi sprawami. Nie chce mi się tłumaczyć tobie dlaczego te wektory wyszły
takie same bo i tak zaraz mi powiesz że nie umiem całkować lub że używam jakiś tam bibliotek albo coś tam
jeszcze.
Generalnie obstawiają wszyscy że zrobisz z tego doktorat
i będziesz sławny 
I teraz naprawdę koniec. Baw się dobrze.

Masz naprawdę duże problemy.
Normalizacja danych wejściowych (wektorów uczących) to sprowadzenie wartości do tego samego przedziału.
A to oznacza całkiem coś innego niż ty zrozumiałeś, czyli masz problemy z podstawami i pier...lisz jak potłuczony.
Walisz takie teksty, że połowa uczelni już się położyła ze śmiechu a druga uczelnia już wrzuca twoje posty
do działu humor. Ale cóż zabłysłeś niesamowicie.
Nie chcę mi się tłumaczyć coś komuś co i tak ten ktoś uważa że i tak wie lepiej.
Ale ci powiem o co biega z tą normalizacją i zakończę z tobą dyskusję bo nie jesteś nawet warty mojej uwagi.
Masz wektor 1: [1.34; 1.36; 1.40; 1.39; 1.32]
Masz wektor 2: [1.24; 1.26; 1.30; 1.29; 1.22]
Jak widzisz przedstawia jakiś tam ruch ceny, jeżeli mamy tylko 2 wektory uczące jak teraz możesz wyznaczyć
ich przestrzeń czyli są w przedziale 0.0 do 0.08 czyli po normalizacji będą:
1: [0.02; 0.04; 0.08; 0.07; 0.0]
2: [0.02; 0.04; 0.08; 0.07; 0.0]
Czyli takie same ... a więc musisz sprawdzić czy odpowiedź na nie jest taka sama jak nie to nie ustabilizujesz
sieci. Tak robisz z całym zbiorem uczącym, i testowym. Dzięki normalizacji możesz określić czy twój zbiór
uczący jest prawidłowy ale ty i tak pewnie wiesz lepiej

By ci jeszcze namieszać to możesz sobie określić przedział jako -1 do 1

dane przeliczyć i te dwa wektory też będą takie same


Tak więc jeszcze wiele przed tobą a ja nie będę ci pomagał bo i tak zaraz będziesz wyskakiwał
z przekształceniem liniowym i innymi sprawami. Nie chce mi się tłumaczyć tobie dlaczego te wektory wyszły
takie same bo i tak zaraz mi powiesz że nie umiem całkować lub że używam jakiś tam bibliotek albo coś tam
jeszcze.



I teraz naprawdę koniec. Baw się dobrze.
Każdy chce mieć pieniądze, ale pieniądze nie zawsze chcą każdego 

Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
Przykład Wojciecha Marańskiego.
http://sequoia.ict.pwr.wroc.pl/~witold/ ... jekty/w20/
http://sequoia.ict.pwr.wroc.pl/~witold/ ... jekty/w20/
Pieniądze rosną na drzewie cierpliwości.
Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
Uważam, że w tym przypadku p. Wojciech użył złego podejścia do tego tematu ale jako
przykład jest to wystarczające. Nikt o zdrowych zmysłach nie przedstawi sieci albo struktury
sieci działającej bo konkurencja jest duża
Gdy liczą się pieniądze to nie ma sentymentów.
Za mały był zbiór uczący. Sieć nauczyła się dokładnie tego co miała i dostosowała się do
specyficznego rynku.
przykład jest to wystarczające. Nikt o zdrowych zmysłach nie przedstawi sieci albo struktury
sieci działającej bo konkurencja jest duża

Za mały był zbiór uczący. Sieć nauczyła się dokładnie tego co miała i dostosowała się do
specyficznego rynku.
Każdy chce mieć pieniądze, ale pieniądze nie zawsze chcą każdego 

Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
WojtexWay zabił tak ładnie zapowiadający się temat ;(
A mógł całkiem nieźle się rozwinąć
A mógł całkiem nieźle się rozwinąć

Każdy chce mieć pieniądze, ale pieniądze nie zawsze chcą każdego 

Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
Ja "zabiłem"?!Tymek pisze:WojtexWay zabił tak ładnie zapowiadający się temat ;(
Nie dość, że straszyłeś ludzi, że bez technologi CUDA nie ma sensu brać się za SSN i trzeba mieć doktora, by się tym zajmować, nie odpowiedziałeś na proste pytania odnoszące się do Twoich wypowiedzi, w żaden sposób nie próbowałeś argumentować swoich wypowiedzi, to jeszcze podważałeś to co ja pisałem bez żadnego uzasadnienia (na zasadzie Ty wiesz lepiej)... Poza tym większość czasu poświęciłeś obrażaniu mnie - bardzo dobra metoda na merytoryczne rozkręcenie wątku...
Ale spoko - to moja wina.
A następnym razem, jeśli nie masz nic ciekawego do powiedzenia, to po prostu nie pisz.
Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
A myślałem, że zrozumiałeś temat 
Nadal nie umiesz czytać ze zrozumieniem. Masz problem z interpretacją zdań dlatego masz
problemy z sieciami. Po prostu nie potrafisz czytać ze zrozumieniem.
I jeszcze masz problem ze zrozumieniem kto tu kogo zaczął obrażać i atakować.
Proponuje temat przenieść do kosza.

Nadal nie umiesz czytać ze zrozumieniem. Masz problem z interpretacją zdań dlatego masz
problemy z sieciami. Po prostu nie potrafisz czytać ze zrozumieniem.
I jeszcze masz problem ze zrozumieniem kto tu kogo zaczął obrażać i atakować.
Proponuje temat przenieść do kosza.
Każdy chce mieć pieniądze, ale pieniądze nie zawsze chcą każdego 

Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
Proponuje Tymek trochę pokory. Dopiero wchodzisz w temat (co pokazuje to, co piszesz i jak o tym piszesz) a Twoje posty są przepełnione stanowczymi twierdzeniami. Szanuj rozmówców i nie traktuje ich jako głupszych/gorzej poinformowanych - nigdy nie wiesz, kto jest po drugiej stronie.
Oprawienie wiedzy w książkę w żaden sposób jej nie uwiarygodnia, także w tej materii życzę Ci więcej krytycznego podejścia.
Oprawienie wiedzy w książkę w żaden sposób jej nie uwiarygodnia, także w tej materii życzę Ci więcej krytycznego podejścia.
Re: Wykorzystanie Sztucznych Sieci Neuronowych na FX - zmien
Po co odgrzebywać temat po miesiącu i na nowo komuś ubliżać ?
Mnie osobiście bardzo interesują sieci ale poziom jaki tu został zaprezentowany skutecznie zniechęca do dyskusji.
Proponuje zamknąć temat i przenieść go do kosza.
Mnie osobiście bardzo interesują sieci ale poziom jaki tu został zaprezentowany skutecznie zniechęca do dyskusji.
Proponuje zamknąć temat i przenieść go do kosza.