eGospodarka.pl
eGospodarka.pl poleca

Ilość wypowiedzi w tym wątku: 355

  • 181. Data: 2012-11-24 14:48:17
    Temat: Re: Potyczki
    Od: PK <P...@n...com>

    On 2012-11-24, slawek <s...@h...pl> wrote:
    > Nie jest. Oczywiście - sortowanie to w pewnym sensie "brute force" - da się
    > i sortując a potem zliczając, tyle że nie wydaje się, aby to był najlepszy
    > algorytm (delikatnie rzecz ujmując).

    Bo to nie jest docelowy algorytm (choć może być). To jest tylko pewne
    oszacowanie złożoności problemu.

    Algorytmów do takiego problemu można wymyślić dużo (wiadomo ile).
    Oczywiście sortowanie explicite można zastąpić drzewami, ale de facto
    sprowadza się to do podobnych operacji. Dlatego napisałem, że jest to
    równoważne sortowaniu (bo trzeba te elementy porównać i jakoś umożliwić
    szybkie odwoływanie się do już "zaliczonych", a o to właśnie chodzi
    w sortowaniu). Kolejnym podejściem jest hash'owanie.

    Jeśli zakładasz, że po danych możesz przejść tylko raz i nie możesz
    ich wszystkich zapisać, bo analizujesz "na żywo" (standardowa sytuacja
    w fizyce, więc może to właśnie Cię dotyczy), to musisz przechowywać
    zliczenia historyczne (przynajmniej tych elementów, które jeszcze mogą
    "wygrać"). To jest po prostu nie do przeskoczenia w ogólnym przypadku.

    pozdrawiam,
    PK


  • 182. Data: 2012-11-24 14:48:31
    Temat: Re: Potyczki
    Od: "slawek" <s...@h...pl>


    Użytkownik "bartekltg" <b...@g...com> napisał w wiadomości grup
    dyskusyjnych:k8qh5v$rad$...@n...news.atman.pl...
    > W każdym razie naszą operację szacujemy na 15-20 minut.
    > Długo, trzeba by poprawić.
    >
    > Ale zaczyna być ciekawie:)

    Właśnie wyguglałem:
    http://www.mathcs.emory.edu/~cheung/papers/StreamDB/
    Frequency-count/FrequentStream.pdf



  • 183. Data: 2012-11-24 14:51:54
    Temat: Re: Potyczki
    Od: PK <P...@n...com>

    On 2012-11-24, slawek <s...@h...pl> wrote:
    > Poczytaj sobie np. to
    >
    > http://www.mathcs.emory.edu/~cheung/papers/StreamDB/
    Frequency-count/FrequentStream.pdf

    Pierwsze zdanie abstraktu:
    "We present a 1-pass algorithm for ESTIMATING the most frequent items
    in a data stream (...)".

    Twój problem brzmiał "znaleźć najczęściej występującą sekwencję zwaną
    podciągiem".

    pozdrawiam,
    PK


  • 184. Data: 2012-11-24 14:56:33
    Temat: Re: Potyczki
    Od: "slawek" <s...@h...pl>


    Użytkownik "PK" <P...@n...com> napisał w wiadomości grup
    dyskusyjnych:s...@n...notb-home.
    ..
    > Też liczyłem, że coś powie (przecież dałem mu całą noc!). Ale świat
    > toczy się dalej, więc lepiej to przyciąć od razu i bujać się z czymś
    > innym :).

    To pobujaj się z tym:
    http://www.cs.yale.edu/homes/el327/datamining2011aFi
    les/ASimpleAlgorithmForFindingFrequentElementsInStre
    amsAndBags.pdf



  • 185. Data: 2012-11-24 15:04:01
    Temat: Re: Potyczki
    Od: "slawek" <s...@h...pl>


    Użytkownik "PK" <P...@n...com> napisał w wiadomości grup
    dyskusyjnych:s...@n...notb-home.
    ..
    > On 2012-11-24, slawek <s...@h...pl> wrote:
    >> Poczytaj sobie np. to
    >>
    >> http://www.mathcs.emory.edu/~cheung/papers/StreamDB/
    Frequency-count/FrequentStream.pdf
    >
    > Pierwsze zdanie abstraktu:
    > "We present a 1-pass algorithm for ESTIMATING the most frequent items
    > in a data stream (...)".
    >
    > Twój problem brzmiał "znaleźć najczęściej występującą sekwencję zwaną
    > podciągiem".

    Tu masz jeszcze
    http://citeseerx.ist.psu.edu/viewdoc/download?doi=10
    .1.1.162.1712&rep=rep1&type=pdf

    Jest nawet coś o zastosowaniach w marketingu - więc temat dość praktyczny
    się okazuje.


  • 186. Data: 2012-11-24 15:12:08
    Temat: Re: Potyczki
    Od: Michoo <m...@v...pl>

    On 24.11.2012 14:13, bartekltg wrote:
    > W każdym razie naszą operację szacujemy na 15-20 minut.
    > Długo, trzeba by poprawić.
    >
    > Ale zaczyna być ciekawie:)

    Jest sobie OzSort, który sortuje 250GB danych (100 bajtowe bloki, 10B
    klucza, 90B payload) w 30 minut na nie_tak_drogim sprzęcie.

    >
    > To drzewo dużo miejsca nam nie oszczędza, ale zawsze.
    > Nie zaszkodzi spróbować, ale dla losowego ta heurystyka
    > zadziała?

    Zadziała dopóki różnych wartości jest dostatecznie mało. Każdy wpis do
    drzewa to 5 bajtów na poziom (klucz na k-tym poziomie+wskaźnik/licznik
    na końcu). Jeżeli dobrze szacuję to wyszukiwanie binarne max 16*8
    operacji, wstawianie max 16*255 operacji(nie licząc tego, że
    potrzebujemy alokator). Wychodzi około 6 milionów wpisów na 512MB ram.
    Dopóki liczba różnych wartości jest mniejsza od maksymalnego drzewa -
    powinno działać. Dla losowych raczej nie.


    --
    Pozdrawiam
    Michoo


  • 187. Data: 2012-11-24 15:17:11
    Temat: Re: Potyczki
    Od: Michoo <m...@v...pl>

    On 24.11.2012 14:48, slawek wrote:
    >
    > Użytkownik "bartekltg" <b...@g...com> napisał w wiadomości grup
    > dyskusyjnych:k8qh5v$rad$...@n...news.atman.pl...
    >> W każdym razie naszą operację szacujemy na 15-20 minut.
    >> Długo, trzeba by poprawić.
    >>
    >> Ale zaczyna być ciekawie:)
    >
    > Właśnie wyguglałem:
    > http://www.mathcs.emory.edu/~cheung/papers/StreamDB/
    Frequency-count/FrequentStream.pdf

    To rozwiązuje inny problem niż przedstawiłeś.

    --
    Pozdrawiam
    Michoo


  • 188. Data: 2012-11-24 15:18:37
    Temat: Re: Potyczki
    Od: PK <P...@n...com>

    On 2012-11-24, slawek <s...@h...pl> wrote:
    >
    > Użytkownik "PK" <P...@n...com> napisał w wiadomości grup
    > dyskusyjnych:s...@n...notb-home.
    ..
    >> o klasę problemów i klasę złożoności. W szczególności: rozwiązanie
    >> Twojego problemu będzie miało złożoność nie mniejszą niż sortowanie,
    >
    > Jeżeli będziemy upierali się aby porównywać dane - oczywiście. A czy to na
    > pewno trzeba robić? Ot, pytanie!

    Tak. Dominanta to najczęściej występująca wartość w zbiorze. To oznacza,
    że trzeba porównywać elementy (to tak z definicji).

    Ale oczywiście można wykombinować podejście przybliżone. Masz ten stream
    wartości. Bez problemu możesz w swoim RAM obsługiwać te M-krotki.
    Wymyśl dużo różnych funkcji mających M argumentów. Obliczasz je
    wszystkie na ostatniej M-krotce i przesuwasz okno o 1. Możesz
    budować histogramy wartości (zmieścisz je w pamięci), a na końcu
    odgadnąć na ich podstawie dane wejściowe (tzn. zbiór możliwości,
    który - przy odrobinie szczęścia - będzie zawierał jakieś podobne
    elementy). Jeśli Twój "stream" to np sygnał elektryczny i szukasz
    najbardziej popularnego impulsu, to możesz próbować dopasowywać
    jakieś patterny. To jest podejście wyciągnięte wprost z HFT, FX i AT,
    czyli skrótów, które tak zbulwersowały część dyskutantów.

    Ale tak naprawdę najlepiej byłoby, gdybyś podszedł do tego jak fizyk,
    a nie programista. Twoje dane to pewnie wynik jakiegoś doświadczenia.
    Powinieneś ogarnąc teorię stojącą za tym procesem i wyciągnąć z tego
    maksymalnie dużo (na kartce czy jak wolisz: e-notesie). W najlepszym
    wypadku skończysz z dobrym modelem. W najgorszym: z filtrami, które
    istotnie zmniejszą Ci rozmiar problemu.
    Tak naprawdę Twój stosunek ilości danych do dostępnego RAMu nie jest
    w żaden sposób imponujący. LHC generuje kilkaset GB/s. Podstawowe
    filtry obcinają 99.9%. I nie jest to efekt żadnej zajebistej algorytmiki
    tylko lat skrupulatnego rzeźbienia w fizyce.

    Ponadto przypominam, że jeśli są to dane empiryczne, a nie złośliwie
    generowane, to możesz estymować na ich podzbiorze. Możesz budować
    i kalibrować model na np. połowie tego streamu i potem puścić go
    na reszcie.

    Generalnie możesz zrobić dużo rzeczy mądrzejszych niż wymyślanie
    algorytmu na siłę (szczególnie jeśli taki algorytm nie istnieje).

    pozdrawiam,
    PK


  • 189. Data: 2012-11-24 15:25:22
    Temat: Re: Potyczki
    Od: Jacek <a...@o...pl>

    Dnia Sat, 24 Nov 2012 03:18:45 -0800 (PST), e...@g...com
    napisał(a):

    > W dniu sobota, 24 listopada 2012 04:44:05 UTC-5 użytkownik Jacek napisał:
    >
    >>> I obie strony sa szczesliwe.
    >
    >> Chyba mnie nie zrozumiałeś.
    >> Chodzi o to, że przez brak krawata, jakaś _pinda_ odsieje kandydata, który
    >> może być dobrym specjalistą, bo ona ma takie patrzenie na świat.
    >> Nigdy nie miałem wąsów, brody, a krawat miałem kilka razy na sobie i cieszę
    >> się, że pracuje sam dla siebie.
    >
    > Musialbym bardzo chciec. W przeciwnym wypadku pytanie jest takie:
    > dlaczego witaja mnie taka pinda? Za co? I jeszcze ona o wszystkim
    > decyduje w moim przypadku? No to super, dalej moze byc tylko gorzej.

    Wita Ciebie pinda, bo takie firma ma założenia. Pinda jest po 100
    szkoleniach, ma fakultet z psychologii, socjologi itd. Pracowała w ośmiu
    firmach, ma wspaniałe referencje i w koncu wylądowała w firmie PK. A że
    jakiś baran wymyślił sobie, że właśnie w pierwszym kroku rekrutuje pinda, a
    później kierownicy, specjaliści etc., to tak to właśnie funkcjonuje.
    Dalej (po pindzie) nie musi być wcale gorzej, lecz lepiej, bo zaczniesz
    gadać z kumplami po fachu.
    Edek, ja nie piszę o rzeczach z kosmosu, a o często spotykanej sytuacji w
    kapitalistycnych firmach/korporacjach po pozostałościach PRLowskich
    kombinatów i innych dużych fabrykach.


  • 190. Data: 2012-11-24 15:30:01
    Temat: Re: Potyczki
    Od: "slawek" <s...@h...pl>


    Użytkownik "PK" <P...@n...com> napisał w wiadomości grup
    dyskusyjnych:s...@n...notb-home.
    ..
    > Tak. Dominanta to najczęściej występująca wartość w zbiorze. To oznacza,
    > że trzeba porównywać elementy (to tak z definicji).

    Radix sort.

    > Ale tak naprawdę najlepiej byłoby, gdybyś podszedł do tego jak fizyk,
    > a nie programista. Twoje dane to pewnie wynik jakiegoś doświadczenia.

    Nie. Nie ma żadnych danych.

    Choć jak poguglałem, to np. znalazłem i coś takiego:
    http://www.notjustrandom.com/2009/11/13/finding-freq
    uent-items-in-a-data-stream/

    Cyt. "It is one of the most heavily studied problems in mining data streams,
    dating back to the 1980s."

    Wow!

    > Tak naprawdę Twój stosunek ilości danych do dostępnego RAMu nie jest
    > w żaden sposób imponujący. LHC generuje kilkaset GB/s. Podstawowe

    Oczywiście że nie jest!

    Rozmiar starałem się trafić taki, aby było już dość trudno... ale jednak
    wykonalnie na zwykłym PC. Bartek policzył (chwała mu za to), że powinno dać
    się znaleźć w jakieś 20 minut. Czyli nie "natychmiast", ale zanim rozpadną
    się ostatnie protony ;)

    > Generalnie możesz zrobić dużo rzeczy mądrzejszych niż wymyślanie
    > algorytmu na siłę (szczególnie jeśli taki algorytm nie istnieje).

    Patrz wyżej - na link. Sam nie wiedziałem, że to ma jakieś praktyczne
    znaczenie. A jednak: ma.

strony : 1 ... 10 ... 18 . [ 19 ] . 20 ... 30 ... 36


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: