Tag: time series

Szeregi czasowe: rozmowa z doświadczonym inżynierem z Uber

Szeregi czasowe: rozmowa z doświadczonym inżynierem z Uber

  • Czym jest prognozowanie na szeregach czasowych (time series forecasting)?
  • Jakie zastosowanie mają szeregi czasowe w biznesie?
  • Jaka jest różnica pomiędzy statystyką a uczeniem maszynowym?
  • Które podejście sprawdza się najlepiej w stosunku do prognozowania szeregów czasowych?
  • Na co należy zwracać szczególną uwagę przy wykorzystywaniu uczenia maszynowego do prognozowania szeregów czasowych?
  • Czy odbywają się konkursy związane z prognozowaniem szeregów czasowych?
  • Jak konkursy wpływają na rozwój technologii?
  • Czym jest M4 Competition?
  • Jak działa model hybrydowy który łączy uczenie maszynowe ze statystyką?
Sławomir Smyk
Sławomir Smyl

Prognozowanie szeregów czasowych jest prawdopodobnie jedną z tych dziedzin, która przy minimalnym wysiłku daje namacalne korzyści. Mało tego – okazuje się, że wiele firm dotychczas robiło to w tak prymitywny sposób, że wystarczy minimalna zmiana podejścia, aby uzyskać pozytywną różnicę.

Tak się złożyło, że słuchałem wiele podcastów o różnych tematykach, na przykład biznesowej i był jeden odcinek, który mówił o poradach dla przedsiębiorców. W tym odcinku był poruszony temat mówiący o tym, że wiele przedsiębiorstw nie wie, ile pieniędzy spodziewać się pod koniec miesiąca.

Wystarczy obliczyć, ile średnio zarabiasz w dni robocze, i następnie jeżeli już wiesz ile zarabiasz średnio w ciągu dnia, a do końca miesiąca pozostało Ci, na przykład siedem dni roboczych, to wystarczy przemnożyć tą wartość średnią razy siedem i tyle jeszcze zarobisz do końca miesiąca. Kiedy tego słuchałem z zaciekawieniem, ponieważ sam zajmuję się tego typu tematami i chciałem dowiedzieć się czegoś nowego, aby zyskać nowe spojrzenie oraz doświadczenie, to dało mi to do myślenia, bo skoro takie proste podejście jest w stanie pomóc, to tym samym prostsze modele uczenia maszynowego radzą sobie z tym jeszcze lepiej ze względu na większą jakość prognozy oraz predykcji.

Jeżeli, na przykład wyliczymy sobie taką średnią, i ta średnia przypada akurat na czarny piątek w listopadzie, który był niedawno, to wtedy całkowicie sobie zaburzysz cały system. Więc nie możesz sobie wziąć jakiejkolwiek średniej z dowolnego dnia roboczego. Prawdopodobnie wymagane jest uwzględnienie sezonów. Dodatkowo, trzeba brać pod uwagę cykle, przesunięcia. Biznes ciągle się rozwija. Coś dodaje, coś usuwa. W grę wchodzą również większe koszty, i tak dalej. Tych dodatkowych rzeczy trochę jest. Warto wtedy zastosować pewne narzędzie, które pozwoli na uwzględnienie tego wszystkiego.

O znaczeniu szeregów czasowych powiedziałem więcej w odcinku 39. Tytuł tego odcinka to: “10 przykładów jak uczenie maszynowe może pomóc Twojemu biznesowi”. Tam powiedziałem więcej o sposobach mapowania oraz innych tematach, które pomagają rozwiązać wyżej wymienione problemy.

Prawdopodobnie wiesz też, że prowadzę kurs, który nazywa się: “Praktyczne prognozowanie szeregów czasowych”. Właśnie trwa pierwsza edycja. Muszę przyznać, że naprawdę włożyłem w to wiele wysiłku i zawsze kiedy mam zamiar wystartować z kolejną edycją, to mówię sobie: nigdy więcej, ponieważ przerasta to troszkę moje możliwości. Jestem już na tyle zmęczony, że gdybym zobaczył dinozaura przebiegającego obok mnie, to nawet nie zwróciłbym na niego uwagi, bo po prostu nie miałbym już kompletnie siły o tym myśleć i analizować tego zadziwiającego zjawiska :). Z drugiej strony, kiedy już kończę taki kurs i obserwuję, jak ludzie się uczyli i potem relacjonują, że mogą to zastosować na różnych obszarach, to jest to bardzo satysfakcjonujące.

Też między innymi, są do wyboru dwa pakiety. Pakiet indywidualny oraz wspólny, gdzie wdrażamy rozwiązania na konkretnych danych, i natychmiast otrzymujemy spodziewane wyniki. To jest bardzo pocieszające i motywujące. Wtedy czujesz, że wszystko co robisz ma jakiś sens.

Dlatego, jeżeli na poważnie rozważasz robienie prognoz sprzedaży, popytu oraz innych rzeczy związanych z tym tematem, to zapraszam Cię bardzo gorąco do udziału w drugiej edycji, która odbędzie się w marcu i będzie trwała sześć tygodni. Więcej o  tym powiem kolejnym razem. Mam zamiar zaprosić kilku absolwentów do kolejnych rozmów, prawdopodobnie w styczniu, może w lutym.

W pewnym momencie, kiedy bardziej skupiłem swoją uwagę na kursach oraz konferencjach to stwierdziłem, że to bardzo fajne uczucie pomagać ludziom oraz dzielić się z nimi posiadaną wiedzą. Z drugiej strony, nie da się odciąć od robienia rzeczy samodzielnie, wprost, wdrażania ich na produkcję. Nagle może się okazać, że wiedza którą posiadam i którą zdobyłem w sposób praktyczny, po czym przestałem się tym zajmować, staje się trochę mniej aktualna. Wtedy podjąłem decyzję, że nadal muszę osobiście zajmować się rzeczami związanymi z biznesem, z konkretnymi danymi. Wcześniej to bardziej wyglądało jak consulting z jedną osobą, teraz to zaczyna nabierać wyższych obrotów. Jestem współzałożycielem firmy Intelligene. Aktualnie mamy wiele projektów, niektóre z nich związane są właśnie z szeregami czasowymi. Uzyskanie zgody na powiedzenie o tych tematach to dość trudna sprawa, ale mam nadzieję, że niedługo uda mi się wszystko załatwić i będę w stanie zdradzić więcej.

Na razie trochę upraszczając, załóżmy że to jest taka prognoza popytu. Kiedy obserwowałem ten problem i powiedzmy, że uda się poprawić prognozę o jeden procent przy obecnych obrotach, to nagle się okazuje, że już w pierwszym roku wszystkie koszty związane z tym projektem się pokrywają i kolejnym krokiem są tylko oszczędności.

W ogóle, trochę mnie dziwi to, że większe firmy podchodzą do tego tak późno. Częściowo wynika to z biurokracji, z zamieszania, z polityki wewnętrznej. I aby rozwiązać ten problem, to więcej czasu spędzamy na aspektach prawnych, formalnych, zamiast na rozwiązywaniu konkretnych problemów. Ale ja to wszystko przyjmuję z pokorą. Po prostu uznałem, że tak funkcjonuje ten świat.

Podsumowując, postaram się przekazać więcej informacji o firmie którą współtworzę. O tych wszystkich planach, które zapowiadają się bardzo ciekawie. Aktualnie rozpoczynamy współpracę z czterema większymi firmami, które na pewno znasz. Ale to na razie sekret. 🙂

Teraz przechodzimy do sedna tematu. Potrzebowałem osoby, która powie więcej o szeregach czasowych. Chodzi o prawdziwego weterana który, jak to się mówi “zjadł zęby” w tym obszarze i taką osobę znalazłem. Jest nią Sławomir Smyl. Sławek pracuje w Uberze. Jest on bardzo otwarty na świat oraz na nowoczesne metody, które potrafi adaptować. Moim głównym celem było zapytać wprost, czy metody statystyczne radzą sobie lepiej od uczenia maszynowego. Wbrew pozorom, oczekiwałem, że metody statystyczne w przypadku konkursu M4 poradzą sobie lepiej. Było tam 100 000 szeregów czasowych. Problem z tymi szeregami był taki, że one nie posiadały żadnego kontekstu, tylko samą wartość zmieniająca się w czasie.

Załóżmy, że mamy na przykład kurs waluty (złotówka – dolar), to mamy tych szeregów czasowych powiedzmy 10 000, ale nie mamy żadnych informacji ani kontekstu. Wiemy tylko, że ta wartość zmienia się w czasie. Zwykle w takich zastosowaniach metody statystyczne działają lepiej, ale tutaj dzięki jednej sztuczce, która zastosował Sławek, udało się usprawnić wynik i tym samym wygrać ten konkurs. Zajął on pierwsze miejsce, i to po raz kolejny potwierdza jego talent oraz zdolności w tej dziedzinie. Jest on bardzo fajnym człowiekiem.

Serdecznie zapraszam!             

Read More Read More

Share
10 przykładów jak uczenie maszynowe może pomóc Twojemu biznesowi

10 przykładów jak uczenie maszynowe może pomóc Twojemu biznesowi

Szeregi czasowe

Z tego odcinka dowiesz się:

  • jak uczenie maszynowe może pomóc Twojemu biznesowi?
  • czym są szeregi czasowe?
  • jakie problemy rozwiązuje możliwość prognozowania popytu w przedziale czasowym?
  • jakie problemy w biznesie może rozwiązać predykcja sprzedaży w przedziale czasowym?
  • czy można przewidzieć, ilu klientów zamierza odejść w pewnej perspektywie czasowej?
  • czy dzięki prognozowaniu można usprawnić pracę w call center?
  • kto może skorzystać z prognozowania ilości awarii w przedziale czasowym?
  • czy jest możliwość przewidzenia, jakie będzie zanieczyszczenie powietrza?
  • od czego zależy dynamiczna zmiana cen?
  • czy można przewidzieć wystąpienie choroby?
  • dlaczego warto zapisać się na najbliższą edycję kursu „Praktyczne uczenie maszynowe” na DataWorkshop?
Szeregi czasowe
Szeregi czasowe

Biznesy mają pewne elementy wspólne. Każdy biznes ma zarabiać, bo właśnie po to został stworzony. Ostatnio nawet usłyszałem bardziej agresywną definicję. Tworząc własny biznes, musisz założyć, że chcesz zarabiać co najmniej 5 lub 10 razy więcej w 2-3 lata. Bo biznes to podejmowanie ryzyka i jeśli rośnie wolniej, to bardziej opłaca się pracować na etacie (zakładając, że ktoś inny osiągnął podobny wynik, żeby pokryć koszty). Akurat ta agresywna definicja może być dość kontrowersyjna. Pytanie: jakim kosztem się to osiąga? Odpowiedź na to pytanie zostawiam Tobie.

Umiejętność zarządzaniem ryzykiem jest sztuką. Jak już ustaliliśmy wcześniej, biznes zawsze wiąże się z ryzykiem, zawsze coś pójdzie inaczej, niż było zaplanowane. Pamiętam, że jeszcze jako programista nauczyłem się, że czas pomiędzy stworzeniem buga w kodzie i jego wykryciem oraz naprawieniem ma wykładniczy wpływ na koszty. To oznacza, że czym później wykryjesz błąd w kodzie, tym znacznie więcej to będzie kosztować firmę i ten koszt z czasem ma wzrost wykładniczy. To stąd, tak zwany „legacy code” i zawarty w nim dług techniczny jest tak drogi, a w pewnym momencie potrafi wywrócić do góry nogami nawet potężny biznes.

Potem zauważyłem, że to jest ogólna zasada życiowa, również dla biznesu. Dobrze, że popełniamy błędy, bo w ten sposób się uczymy, problem polega na tym, że zbyt dużo czasu potrzebujemy, żeby je zidentyfikować, wyciągnąć wnioski i wprowadzić zmiany do strategii firmy. Zobacz, jak ważna jest ta zasada dla biznesu. Jak już mówiłem, biznes ma ambicje rosnąć bardzo szybko, co oznacza, że trzeba biec. Pytanie tylko: dokąd? Ktoś mądry powiedział: że „możesz spieszyć się jedynie wtedy, gdy biegniesz we właściwym kierunku”.

Wszystko brzmi bardzo prosto i logiczne, ale jak to często bywa w życiu, rozumienie i wdrażanie to są dwie różne historie. Jak uczenie maszynowe może nam w tym pomóc?

Read More Read More

Share