-
Data: 2010-02-05 21:58:52
Temat: Re: matlab taki wydajny?
Od: bartekltg <b...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 5 Lut, 18:17, Mariusz Marszałkowski <m...@g...com> wrote:
> Mam parametry wejsciowe x_i i np. jeden parametr wyjsciowy y.
> Nastepnie rozszerzam parametry wejsciowe o jeden dodatkowy
> przez poddanie nieliniowej funkcji kazdej kombinacji funkcja( x_i ,
> x_j ).
> Jesli mam 50 parametrow wejsciowych, to wychodzi 2500 kombinacji.
> WIec trzeba 2500 razy ulozyc uklad rownan normalnych, kazdy
> rozwiazac i podac kombinacje x_i, x_j ktora daje najlepsze
> dopasowanie.
> To co zwraca funkcja( x_i , x_j ) traktujemy jako 51-szy parametr.
Nie trzeba za kazdym razem ukladac calego zagadnienia...
> > Tego ta funkcja nie zrobi. Jesli jednak dopuszczasz, aby w
> > rozwiazaniu
> > byly wszytkie, to niepotrzebne beda mialy maly wspolczynnik i tyle
>
> To też dobra metoda, szczegolnie jesli do glownej przekatnej doda
> sie pewne liczby wieksze od zera.
?
> Raczej parametr * funkcja( x_i , x_j )
Czyli to cały czas liniowe zagadneinie najmnieszych kwadratow.
Bawienie sie w nieliniowe solvery tylko dodanarzut.
> > Miliardy wierszy to gigabajty.
>
> Niestety to moja zmora. Z reguly brakuje dobrych danych przy
> data minning. Moje dane nie mieszcza sie na 10 nowoczesnych
> dyskach. A moze jakas baza danych ma zaimplementowana
> regresje liniowa dla wielu parametrow? Jakis odpowiednik
> excelowskiego reglinp?
To wcale nie jest tak duzo danych jak na zadanie, ktore chesz
rozwiazac. Przyjrzyj sie dokladnie zagadnieniu. Jesli nie macie
problemu z tym, ze rozwiazujesz to rownaniem normalnym
(uwarunkowanie etc) to jedyne co musisz zrobic z danymi
to policzyc pewna ilosc iloczynow skalarnych.
1225 <x_i,x_j>, 50 <x_i, y>
125000< x_i, f(x_j,x_k) > i 2500<y,f(x_i,x_j)>
Jesli bys chciel dodac wiecej niz tylko jedna,
'nieliniowa funkcja od tabelek' dojdzie cos rzedu
3mln elementow(chyba, ze .. dluzsza historia;).
Wszytko liczysz w jednym przebiegu odczytywania danych,
nastepnie bawisz sie jedynie z _malymi_ obiektami (51x51)
X.' * X i X.' * y ( X.' -transponowane X).
Samo policzenie tych iloczynow jest wiekszym problemem.
Zajmie to na nowym komputerze cos rzedu wieksze kilka godzin
na miliard danych:)
Sumowac tez trzeba sprytnie (albo odpowiednio podwyzszajac
przecyzje, lepiej sprytnie, nieco to zalezy od danych).
Dobrym pomyslem jest tez zastanowienie sie, czy iloscny skalarnego
mniej istotnych par nie mozna przyblizac, szacowan np za pomoca
znacznie mniejszego podwektora Wtedy i zagadnienie uwzgledniajace
52 parametry na zwyklym PC.
Moze potrzebujecie matematyka z delikatnym zamilowaniem do
numerkow? :-)
> > Matlab nie musi byc wtedy najlepszym
>
> Hmmm, dziwne, powinien miec opcje ze macierz lezy na
> dysku w pliku tekstowym albo binarnym. To raczej
> zwykla rzecz ze dane leza na dysku a w pamieci sa
> tylko "zmienne algorytmu".
To znacznie zwieksza czas. I chyba nie ma za czestych zastosowan.
Zobacz, ile czasu zajeloby mnozenie 2 macierzy kwadratowych
zajmujacych wiekszaosc Twojego ramu. Strzelmy 20000x20000
(3GB). 1000 razy dluzej niz 2000x2000.
Z drugiej storny gugiel sugeruje, ze cos wie o mnozeniu macierzy
na dyskach. Jednak podejrzewam, ze i tak raczej uzywa sie tego do
macierzy rzadkich (jakies guglowskie pozycjonowanie etc).
Twoje zagadnienie jest prostrze, programik czyta, mnozy, dodaje, goto
start;)
pozdrawiam
bartekltg
Następne wpisy z tego wątku
- 06.02.10 00:26 Mariusz Marszałkowski
- 06.02.10 01:26 bartekltg
- 06.02.10 05:50 Mariusz Marszałkowski
- 06.02.10 22:22 Roman Werpachowski
- 08.02.10 21:38 bartekltg
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 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 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