eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingodchylenie standardowe online › Re: odchylenie standardowe online
  • Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
    From: " M.M." <m...@g...pl>
    Newsgroups: pl.comp.programming
    Subject: Re: odchylenie standardowe online
    Date: Sat, 4 Feb 2012 09:50:49 +0000 (UTC)
    Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
    Lines: 75
    Message-ID: <jgiv1p$7ii$1@inews.gazeta.pl>
    References: <jg4sr8$lv$1@inews.gazeta.pl> <o...@a...home>
    <jg573t$glv$1@inews.gazeta.pl> <jg57nu$6bg$1@node2.news.atman.pl>
    <4f296d0d$0$1268$65785112@news.neostrada.pl>
    <jgcjb1$8pk$1@node2.news.atman.pl>
    <4f2ad4a1$0$1209$65785112@news.neostrada.pl>
    <jgga8c$3ht$1@node2.news.atman.pl>
    <4f2c2271$0$1232$65785112@news.neostrada.pl>
    <jghahj$77l$1@node2.news.atman.pl>
    <4f2c45b9$0$1232$65785112@news.neostrada.pl>
    <jgihb1$dog$1@node2.news.atman.pl> <jgioan$lg3$1@inews.gazeta.pl>
    <jgiph1$lov$1@node2.news.atman.pl>
    NNTP-Posting-Host: localhost
    Content-Type: text/plain; charset=ISO-8859-2
    Content-Transfer-Encoding: 8bit
    X-Trace: inews.gazeta.pl 1328349049 7762 172.20.26.236 (4 Feb 2012 09:50:49 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Sat, 4 Feb 2012 09:50:49 +0000 (UTC)
    X-User: mariotti
    X-Forwarded-For: 89.229.34.123
    X-Remote-IP: localhost
    Xref: news-archive.icm.edu.pl pl.comp.programming:195072
    [ ukryj nagłówki ]

    bartekltg <b...@g...com> napisał(a):

    > W dniu 2012-02-04 08:56, M.M. pisze:
    > > bartekltg<b...@g...com> napisał(a):
    > >
    > >>> Oj! Skąd to wiesz?! Dałoby się np. sprawdzić testem nieparametr
    > ycznym,
    > >>> lecz... nie w każdym przypadku błędy są opisane tzw. rozkład
    > em normalnym
    > >> .
    > >>
    > >> Rozumiesz tekst pisany? Gdy błędy sa takie a takie to
    > >> teg lin jest w pewnym sensie najlepsza. Teraz pojął?
    > >
    > > Regresja liniowa to w ogole wdzieczna metoda. Odznacza sie mala
    > > zlozonoscia i jednoznacznosc wyniku. Mozna miec caly dysk zawalony
    > > danymi i bez problemu znalezc 2-3tys liniowych parametrow.
    >
    > Z ta małą złożonością aż tak bym nie przesadzał.
    Trzeba zbudowac macierz N x (N+1) gdzie N to ilosc parametrow.
    3tys parametrow daje rozmiar 9mln liczb w macierzy. Czyli
    mamy 9mln operacy typu A[ i * N + j ] += input[i] * input[j];
    Ile to moze trwac? Okolo 1-10ms? To mamy okolo 100-1000 wektorow
    na sekunde na jednym rdzeniu. Czyli na 6 rdzeniach na godzine mamy
    od okolo 20 do 200 mln rekordow. W porownaniu do optymalizacji
    nieliniowych smiem nazywac to super wydajnoscia :)

    > Z samej regresji przyjdzmy do prawdziwego zadadnienie,
    > czyli najmniejszych kwadratĂłw.
    > Macierz X, parametry b, wyniki y.
    > Szukamy b takiego, aby wektor Xb-y miał najmniejszą długość.
    >
    > X jest rozmiaru n=[ilość zmiennych] na m=[ilość próbek].
    >
    > Rozwiązanie tego równaniem normalnym sprowadza się
    > do stworzenia układu równań z macierzą n x n, czyli
    > rzeczywiście małego, a X^t*X można policzyć w miarę
    > sprawnie mając pełne X na dysku. Ale ta metoda
    > jest kiepskawa numerycznie (uwarunkowanie
    > nam się skwadratowało, a dla dużych X i tak było
    > najprawdopodobniej niemałe).
    Trzeba chociaz rozwiazanie podstawic do rownania i zwykle
    sprawdzenie zorbic. Dla moich danych nie mialem klopotow
    ze stabilnoscia. Uzywalem tylko zwyklego double i eliminacji
    gaussa napisanej na kolanie.

    > Inne popularne metody które nie mają tego problemu
    > korzystają z jakiś rozkładów X. Ale wtedy niewygodnie
    > to zrobić na dysku:) No i ma te swoje n^3 czasu.
    Czyli iteracyjnie na dysku. Rozmawialismy o tym jakis
    czas temu na tej grupie (albo na C++). Oczywista podstawa to
    sekwencyjny odczyt z dysku. Wtedy mialem bardzo specyficzne
    dane, praktycznie po 5ciu przebiegach najprostszym algorytmem
    uzyskiwalem zadowalajaca dokladnosc.

    > Chyba, że masz jakiś pomysł. Kiedyś była tu (albo
    > w okolicy) dość poważna dyskusja na ten temat.
    Pewna ilosc parametrow traktowalem jako jedna stala, a
    dla pozostalych budowalem zwykla macierz i rozwiazywalem
    eliminacja gaussa. W nastepnym przebiegu inne parametrytry
    traktowalem jak stala i tak w kolo az kazdy parametr
    byl uwzgledniony X razy. Pewnie sa znane ciekawe metody
    wyboru tych parametrow ktore w kolejnej iteracji potraktowac
    jako stala, ja korzystalem z najprostszej, czyli z losowej z
    kontrola powtorzen.

    Ale ostatecznie lepsze rezultaty byly dla okolo 500-3000 parametrow i
    nie bylo potrzeby zajezdzania dyskow.

    Pozdrawiam



    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/

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: