<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>time series &#8211; Biznes Myśli</title>
	<atom:link href="https://biznesmysli.pl/tag/time-series/feed/" rel="self" type="application/rss+xml" />
	<link>https://biznesmysli.pl/tag/time-series/</link>
	<description>by Vladimir, sztuczna inteligencja w biznesie</description>
	<lastBuildDate>Tue, 14 Feb 2023 16:13:58 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://biznesmysli.pl/wp-content/uploads/2017/03/cropped-bm-sq-1-32x32.jpg</url>
	<title>time series &#8211; Biznes Myśli</title>
	<link>https://biznesmysli.pl/tag/time-series/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Szeregi czasowe: rozmowa z doświadczonym inżynierem z Uber</title>
		<link>https://biznesmysli.pl/szeregi-czasowe-rozmowa-z-doswiadczonym-inzynierem-z-uber/</link>
					<comments>https://biznesmysli.pl/szeregi-czasowe-rozmowa-z-doswiadczonym-inzynierem-z-uber/#respond</comments>
		
		<dc:creator><![CDATA[Vladimir]]></dc:creator>
		<pubDate>Mon, 03 Dec 2018 04:00:27 +0000</pubDate>
				<category><![CDATA[Podcast]]></category>
		<category><![CDATA[deep learning]]></category>
		<category><![CDATA[dynet]]></category>
		<category><![CDATA[M4]]></category>
		<category><![CDATA[Sławek Smyl]]></category>
		<category><![CDATA[time series]]></category>
		<category><![CDATA[Uber]]></category>
		<guid isPermaLink="false">http://biznesmysli.pl/?p=1297</guid>

					<description><![CDATA[<p>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ą? Prognozowanie szeregów czasowych jest prawdopodobnie jedną z tych dziedzin, która przy minimalnym wysiłku daje namacalne korzyści. Mało tego &#8211; 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 &#160;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 &#8211; 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! &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Cześć Sławek, przedstaw się: kim jesteś, czym się zajmujesz, gdzie mieszkasz? Dzień dobry. Nazywam się Sławek Smyl. Jestem Data Scientist, czyli tak zwanym naukowcem od danych. Mieszkam w okolicach San Francisco i pracuję w Uberze. Moją specjalnością jest prognozowanie szeregów czasowych. Zajmuję się tym od 4-5 lat. Poprzednio pracowałem przy Windows Azure, gdzie zajmowałem się symulowaniem tego systemu. Zajmowałem się również walką ze zorganizowaną przestępczością, co było związane z nielegalnym użyciem Azure. Poprzednio miałem do czynienia z komputerami, a już w bardzo zamierzchłej przeszłości byłem fizykiem medycyny. Studiowałem w Krakowie. Co ostatnio czytałeś? Jak byłem w Polsce, w sierpniu to czytałem “The Money Formula” autorstwa Paula Wilmotta i Davida Orrella. Paull Wilmott jest to taka legenda matematyki finansowej. David Orrell też jest matematykiem z Oxfordu. Jest to książka, która opisuje historię finansów i matematyki finansowej, zaczynając od Newtona, a kończąc na skomplikowanych instrumentach finansowych. Jest to ciekawa ekspozycja, która mówi o tym, jak ekonomiści kopiowali metody i modele fizyczne. W fizyce dziewiętnastowiecznej mieliśmy model gazu doskonałego. Ekonomiści tworzyli swoje modele zakładając, że społeczeństwo składa się z niezależnych i idealnie racjonalnych agentów, którzy myślą tylko o sobie, ale jest też ta równowaga i niewidzialna ręka. Ciekawa ekspozycja historyczna, chociaż pod koniec autorzy twierdzą, że wszystkie te elementy które spowodowały kryzys finansowy w 2008 są dalej na miejscu, także oni nie są optymistami. Rozumiem, że ta książka jest napisana dość przystępnym językiem? Ja myślę, że tak. Ja ją kupiłem dlatego, że słuchałem doktora Davida Orrella podczas konferencji dotyczącej prognozowania. On opowiadał tam, że opcje finansowe można atakować używając matematyki i fizyki kwantowej, więc to było interesujące, ale w tej książce nic nie ma na ten temat, dzięki czemu jest zupełnie przystępna. Również ekspozycja historyczna początków Newtona jest bardzo ciekawa. Jesteś mistrzem szeregów czasowych. Przez ostatnie 5 lat głównie tym się zajmujesz. Nie miałem okazji spotkać wielu osób, które potrafiłyby się skupić na jednym, dość wąskim temacie. Wyjaśnij czym jest prognozowanie na szeregach czasowych (time series forecasting). Na pewno każdy się z tym kiedyś spotkał. Jakikolwiek wykres w czasie, na przykład ilość wypadków samochodowych od roku 1952 do dzisiaj, czy jakaś krzywa w skali jeden punkt na rok, czy kwartalna produkcja masła czy mleka. Ta sama rzecz, która rozwija się w czasie i zapisujemy ją z miesiąca na miesiąc, czy z sekundy na sekundę, to jest szereg czasowy. EKG jest szeregiem czasowym. Jest to po prostu krzywa w czasie. Jakie zastosowanie mają szeregi czasowe w biznesie? Czy można nimi uzyskać jakąkolwiek wartość dodaną? W zasadzie wszystkie biznesy potrzebują przewidywania. Za pomocą szeregów czasowych można wykonać, na przykład analizy w sensie klasyfikacji. Podobno jak ktoś ma stan przedzawałowy, to na EKG co pewien czas pojawia się taki dziwny zygzak, więc można to klasyfikować jako stan przedzawałowy. Czy zawał nastąpi za 15 minut, czy za pół godziny, tego nie wiemy. Chodzi bardziej o klasyfikację. Natomiast w biznesie ważniejsze jest ile sprzedamy, ile będzie reklamacji, ilu nowych klientów do nas przyjdzie. Praktycznie cokolwiek, co dzieje się w biznesie. Biznes dzieje się w czasie, więc nieważne co robimy, to zawsze ma to wymiar czasu i jakąkolwiek decyzję w biznesie podejmujemy, jest ona jakoś związana z przewidywaniem. Ludzie muszą robić przewidywanie: Jak się będzie rozwijał ich biznes? Czego będzie potrzebował? I właśnie można to robić mniej, lub bardziej matematycznie. Zależy to też od tego, czy mamy dobre dane. W teorii statystyka i uczenie maszynowe mają wiele wspólnego. W praktyce jest inaczej. Spróbujmy przedstawić, gdzie jest ta różnica, bo cięzko powiedzieć, że uczenie maszynowe jest czymś zupełnie nowym. Jest tam sporo statystyki. Z drugiej strony, statystyka to nie jest uczenie maszynowe. Na czym polega ta różnica? Gdzie jest ta granica? Wydaje mi się, że to jest głównie związane z tym kto to robi, i jak łatwo się tego używa. Statystycy z reguły mają swoje w miarę proste modele, które dobrze funkcjonują. Natomiast algorytmy przewidywania szeregów czasowych mają ok. 50 lat, powoli się zmieniają, powoli stają się coraz lepsze, i tym głównie zajmują się statystycy. Natomiast masz też ludzi z działu Computer Science, którzy podchodzą do tego z innej strony. Ale koniec końców, w obu przypadkach jest tak samo. Czyli jest tam jakiś model, bardziej czy mniej skomplikowany, i ten model ma jakieś parametry, i ostatecznie robi przewidywanie. Według mnie, jest to bardziej kwestia tradycji i takiego podejścia, że w statystyce mają to już we krwi, że jak produkują coś, to to jest dosyć łatwe do użycia. Jest tam jakiś program w R czy w Python. Można nawet kupić program do przewidywania, gdzie użytkownik po prostu podaje do komputera tą krzywą, naciska jeden przycisk, i jest. Natomiast jeśli chodzi o Machine Learning, to z reguły zakłada się, że ktoś wie jak tego używać. Programista, Data Scientist, który nad tym spędzi czas, napisze program, będzie się bawił z różnymi parametrami i w końcu być może wyjdzie mu coś lepiej, niż osobom od statystyki. Ale także jest to kwestia kultury i łatwości użycia. Te algorytmy statystyczne są bardzo łatwe do użycia, a Machine learning to jest mieszanka programowania, budowania modeli, i tak dalej. Jest to znacznie bardziej skomplikowane. Które podejście sprawdza się najlepiej w szeregach czasowych? Czy metody statystyczne radzą sobie lepiej, albo jest odwrotnie? Ja myślę, że to wszystko zależy od kontekstu, ale generalnie nie ma czegoś takiego, że jedna z nich jest znacznie lepsza, choćby właśnie z uwagi na łatwość użycia. Jeżeli ja mogę używać, na przykład pakietu Forecast, albo nawet kupię program za kilkaset dolarów czy więcej, i wystarczy mi że nacisnę jakiś przycisk i mam przewidywanie, to po pierwsze, te statystyczne metody są znacznie łatwiejsze do użycia. Po drugie, one z reguły pracują znacznie szybciej. Jest to liczba...</p>
<p>Artykuł <a href="https://biznesmysli.pl/szeregi-czasowe-rozmowa-z-doswiadczonym-inzynierem-z-uber/">Szeregi czasowe: rozmowa z doświadczonym inżynierem z Uber</a> pochodzi z serwisu <a href="https://biznesmysli.pl">Biznes Myśli</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="lazyblock-speaker-spotify-ZpnBhB wp-block-lazyblock-speaker-spotify"><div class="wp-block-columns are-vertically-aligned-center">
<div class="wp-block-column is-vertically-aligned-center">
<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><a href="https://www.spreaker.com/user/biznesmysli/bm46-prognozowanie-szeregow-czasowych-ro" target="_blank"><img decoding="async" src="https://biznesmysli.pl/wp-content/uploads/2020/02/spreaker.png" alt="" class="wp-image-2150" width="213" height="71"></a></figure></div>
</div>
<div class="wp-block-column is-vertically-aligned-center">
<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><a href="https://open.spotify.com/episode/0pYjgVaRBiyawChjfah8IR" target="_blank"><img decoding="async" src="https://biznesmysli.pl/wp-content/uploads/2020/02/spotify-badge-button.png" alt="" class="wp-image-2149" width="192" height="93"></a></figure></div>
</div>
</div></div>

<ul>
<li><span style="font-weight: 400;">Czym jest prognozowanie na szeregach czasowych (time series forecasting)?</span></li>
<li>Jakie zastosowanie mają szeregi czasowe w biznesie?</li>
<li>Jaka jest różnica pomiędzy statystyką a uczeniem maszynowym?</li>
<li>Które podejście sprawdza się najlepiej w stosunku do prognozowania szeregów czasowych?</li>
<li>Na co należy zwracać szczególną uwagę przy wykorzystywaniu uczenia maszynowego do prognozowania szeregów czasowych?</li>
<li>Czy odbywają się konkursy związane z prognozowaniem szeregów czasowych?</li>
<li>Jak konkursy wpływają na rozwój technologii?</li>
<li>Czym jest M4 Competition?</li>
<li>Jak działa model hybrydowy który łączy uczenie maszynowe ze statystyką?</li>
</ul>
<p><span style="font-weight: 400;">Prognozowanie szeregów czasowych jest prawdopodobnie jedną z tych dziedzin, która przy minimalnym wysiłku daje namacalne korzyści. Mało tego &#8211; 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ę. </span></p>
<p><span style="font-weight: 400;">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.</span></p>
<p><span style="font-weight: 400;">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.</span></p>
<p><span style="font-weight: 400;">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. </span></p>
<p><span style="font-weight: 400;">O znaczeniu szeregów czasowych powiedziałem więcej w odcinku 39. Tytuł tego odcinka to: “<a href="/10-przykladow-jak-uczenie-maszynowe-moze-pomoc-twojemu-biznesowi">10 przykładów jak uczenie maszynowe może pomóc Twojemu biznesowi</a></span><i><span style="font-weight: 400;">”. </span></i><span style="font-weight: 400;">Tam powiedziałem więcej o sposobach mapowania oraz innych tematach, które pomagają rozwiązać wyżej wymienione problemy. </span></p>
<p><span style="font-weight: 400;">Prawdopodobnie wiesz też, że prowadzę kurs, który nazywa się: “<a href="http://www.dataworkshop.eu/pl/time-series">Praktyczne prognozowanie szeregów czasowych</a>”. 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. </span></p>
<p><span style="font-weight: 400;">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. </span></p>
<p><span style="font-weight: 400;">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 &nbsp;tym powiem kolejnym razem. Mam zamiar zaprosić kilku absolwentów do kolejnych rozmów, prawdopodobnie w styczniu, może w lutym.</span></p>
<p><span style="font-weight: 400;">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 </span><i><span style="font-weight: 400;"><a href="http://www.intelligene.io/" class="broken_link">Intelligene</a>. </span></i><span style="font-weight: 400;">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. </span></p>
<p><span style="font-weight: 400;">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.</span></p>
<p><span style="font-weight: 400;">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.</span></p>
<p><span style="font-weight: 400;">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. <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></span></p>
<p><span style="font-weight: 400;">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. </span></p>
<p><span style="font-weight: 400;">Załóżmy, że mamy na przykład kurs waluty (złotówka &#8211; 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. </span></p>
<p><span style="font-weight: 400;">Serdecznie zapraszam! &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></p>
<p><span id="more-1297"></span></p>
<hr />
<p><b>Cześć Sławek, przedstaw się: kim jesteś, czym się zajmujesz, gdzie mieszkasz?</b></p>
<p><span style="font-weight: 400;">Dzień dobry. Nazywam się Sławek Smyl. Jestem Data Scientist, czyli tak zwanym naukowcem od danych. Mieszkam w okolicach San Francisco i pracuję w Uberze. Moją specjalnością jest prognozowanie szeregów czasowych. Zajmuję się tym od 4-5 lat. Poprzednio pracowałem przy Windows Azure, gdzie zajmowałem się symulowaniem tego systemu. Zajmowałem się również walką ze zorganizowaną przestępczością, co było związane z nielegalnym użyciem Azure. Poprzednio miałem do czynienia z komputerami, a już w bardzo zamierzchłej przeszłości byłem fizykiem medycyny. Studiowałem w Krakowie.</span></p>
<p><b>Co ostatnio czytałeś?</b></p>
<p><span style="font-weight: 400;">Jak byłem w Polsce, w sierpniu to czytałem “The Money Formula” autorstwa Paula Wilmotta i Davida Orrella. Paull Wilmott jest to taka legenda matematyki finansowej. David Orrell też jest matematykiem z Oxfordu. Jest to książka, która opisuje historię finansów i matematyki finansowej, zaczynając od Newtona, a kończąc na skomplikowanych instrumentach finansowych. Jest to ciekawa ekspozycja, która mówi o tym, jak ekonomiści kopiowali metody i modele fizyczne. W fizyce dziewiętnastowiecznej mieliśmy model gazu doskonałego. Ekonomiści tworzyli swoje modele zakładając, że społeczeństwo składa się z niezależnych i idealnie racjonalnych agentów, którzy myślą tylko o sobie, ale jest też ta równowaga i niewidzialna ręka. Ciekawa ekspozycja historyczna, chociaż pod koniec autorzy twierdzą, że wszystkie te elementy które spowodowały kryzys finansowy w 2008 są dalej na miejscu, także oni nie są optymistami.</span></p>
<p><b>Rozumiem, że ta książka jest napisana dość przystępnym językiem? </b></p>
<p><span style="font-weight: 400;">Ja myślę, że tak. Ja ją kupiłem dlatego, że słuchałem doktora Davida Orrella podczas konferencji dotyczącej prognozowania. On opowiadał tam, że opcje finansowe można atakować używając matematyki i fizyki kwantowej, więc to było interesujące, ale w tej książce nic nie ma na ten temat, dzięki czemu jest zupełnie przystępna. Również ekspozycja historyczna początków Newtona jest bardzo ciekawa.</span></p>
<p><b>Jesteś mistrzem szeregów czasowych. Przez ostatnie 5 lat głównie tym się zajmujesz. Nie miałem okazji spotkać wielu osób, które potrafiłyby się skupić na jednym, dość wąskim temacie. Wyjaśnij czym jest prognozowanie na szeregach czasowych (</b><b><i>time series forecasting</i></b><b>).</b></p>
<p><span style="font-weight: 400;">Na pewno każdy się z tym kiedyś spotkał. Jakikolwiek wykres w czasie, na przykład ilość wypadków samochodowych od roku 1952 do dzisiaj, czy jakaś krzywa w skali jeden punkt na rok, czy kwartalna produkcja masła czy mleka. Ta sama rzecz, która rozwija się w czasie i zapisujemy ją z miesiąca na miesiąc, czy z sekundy na sekundę, to jest szereg czasowy. EKG jest szeregiem czasowym. Jest to po prostu krzywa w czasie.</span></p>
<p><b>Jakie zastosowanie mają szeregi czasowe w biznesie? Czy można nimi uzyskać jakąkolwiek wartość dodaną?</b></p>
<p><span style="font-weight: 400;">W zasadzie wszystkie biznesy potrzebują przewidywania. Za pomocą szeregów czasowych można wykonać, na przykład analizy w sensie klasyfikacji. Podobno jak ktoś ma stan przedzawałowy, to na EKG co pewien czas pojawia się taki dziwny zygzak, więc można to klasyfikować jako stan przedzawałowy. Czy zawał nastąpi za 15 minut, czy za pół godziny, tego nie wiemy. Chodzi bardziej o klasyfikację. Natomiast w biznesie ważniejsze jest ile sprzedamy, ile będzie reklamacji, ilu nowych klientów do nas przyjdzie. Praktycznie cokolwiek, co dzieje się w biznesie. Biznes dzieje się w czasie, więc nieważne co robimy, to zawsze ma to wymiar czasu i jakąkolwiek decyzję w biznesie podejmujemy, jest ona jakoś związana z przewidywaniem. Ludzie muszą robić przewidywanie: Jak się będzie rozwijał ich biznes? Czego będzie potrzebował? I właśnie można to robić mniej, lub bardziej matematycznie. Zależy to też od tego, czy mamy dobre dane. </span></p>
<p><b>W teorii statystyka i uczenie maszynowe mają wiele wspólnego. W praktyce jest inaczej. Spróbujmy przedstawić, gdzie jest ta różnica, bo cięzko powiedzieć, że uczenie maszynowe jest czymś zupełnie nowym. Jest tam sporo statystyki. Z drugiej strony, statystyka to nie jest uczenie maszynowe. Na czym polega ta różnica? Gdzie jest ta granica?</b></p>
<p><span style="font-weight: 400;">Wydaje mi się, że to jest głównie związane z tym kto to robi, i jak łatwo się tego używa. Statystycy z reguły mają swoje w miarę proste modele, które dobrze funkcjonują. Natomiast algorytmy przewidywania szeregów czasowych mają ok. 50 lat, powoli się zmieniają, powoli stają się coraz lepsze, i tym głównie zajmują się statystycy. Natomiast masz też ludzi z działu Computer Science, którzy podchodzą do tego z innej strony. Ale koniec końców, w obu przypadkach jest tak samo. Czyli jest tam jakiś model, bardziej czy mniej skomplikowany, i ten model ma jakieś parametry, i ostatecznie robi przewidywanie. Według mnie, jest to bardziej kwestia tradycji i takiego podejścia, że w statystyce mają to już we krwi, że jak produkują coś, to to jest dosyć łatwe do użycia. Jest tam jakiś program w R czy w Python. Można nawet kupić program do przewidywania, gdzie użytkownik po prostu podaje do komputera tą krzywą, naciska jeden przycisk, i jest. </span></p>
<p><span style="font-weight: 400;">Natomiast jeśli chodzi o Machine Learning, to z reguły zakłada się, że ktoś wie jak tego używać. Programista, Data Scientist, który nad tym spędzi czas, napisze program, będzie się bawił z różnymi parametrami i w końcu być może wyjdzie mu coś lepiej, niż osobom od statystyki. Ale także jest to kwestia kultury i łatwości użycia. Te algorytmy statystyczne są bardzo łatwe do użycia, a Machine learning to jest mieszanka programowania, budowania modeli, i tak dalej. Jest to znacznie bardziej skomplikowane.</span></p>
<p><b>Które podejście sprawdza się najlepiej w szeregach czasowych? Czy metody statystyczne radzą sobie lepiej, albo jest odwrotnie?</b></p>
<p><span style="font-weight: 400;">Ja myślę, że to wszystko zależy od kontekstu, ale generalnie nie ma czegoś takiego, że jedna z nich jest znacznie lepsza, choćby właśnie z uwagi na łatwość użycia. Jeżeli ja mogę używać, na przykład pakietu </span><i><span style="font-weight: 400;">Forecas</span></i><span style="font-weight: 400;">t, albo nawet kupię program za kilkaset dolarów czy więcej, i wystarczy mi że nacisnę jakiś przycisk i mam przewidywanie, to po pierwsze, te statystyczne metody są znacznie łatwiejsze do użycia. Po drugie, one z reguły pracują znacznie szybciej. Jest to liczba rzędu poniżej jednej sekundy na jedną krzywą, co może mieć znaczenie. Ludzie w dzisiejszych czasach mają ogromne ilości danych, i na przykład potrzebują przerobić w miarę szybko kilkadziesiąt tysięcy z nich. </span></p>
<p><span style="font-weight: 400;">Nie możesz siedzieć 10 minut nad każdą, a już zwłaszcza nie możesz wizualnie oglądać każdej z nich i decydować &nbsp;jakie tu parametry zastosować. Jeżeli chodzi o szybkość, łatwość użycia to właśnie te statystyczne metody są najlepsze. Czasami też możesz mieć dużo regresorów, gdzie nie masz tylko tej krzywej, ale oprócz tej krzywej masz jeszcze inne rzeczy, na przykład: w tym województwie była lepsza pogoda, a w tym, na przykład zwiększa się ilość maszyn. Czyli masz dodatkowe informacje. Jak masz dodatkowe informacje które są dobre, to w tym momencie uczenie maszynowe zaczyna mieć przewagę. Jak masz czystą krzywą, bez niczego innego, to prawdopodobnie metody statystyczne będą wtedy lepsze.</span></p>
<p><b>Chciałem jeszcze dodać, że jeżeli chodzi o szybkość, to trzeba wspomnieć, że jest ten czas na trenowanie i przygotowanie tego modelu, oraz czas na predykcję. Jeśli chodzi o predykcję, to jest ona szybka, natomiast jeśli chodzi o przygotowanie modelu, to już niekoniecznie. Na przykład, chociażby ta <a href="https://en.wikipedia.org/wiki/Autoregressive_integrated_moving_average">ARIMA</a>, gdzie musisz zbadać stacjonarność, dobrać parametry, itd.</b></p>
<p><span style="font-weight: 400;">Ale to wciąż są okolice jednej sekundy. A w przypadku jakiejś tam sieci neuronowej, czy podobnych, to mówimy o wielu minutach, być może nawet wielu godzinach. Także to wciąż są różnice. I jeśli mowa o dłuższym trenowaniu, taki model statystyczny robi treningi i przewidywanie w tym samym momencie. A w przypadku uczenia maszynowego to są dwa oddzielne kroki. Najpierw trenujesz, przez co jest to bardziej skomplikowane. </span></p>
<p><b>Na co należy zwracać szczególną uwagę przy stosowaniu uczenia maszynowego do prognozowania? Bardziej mam na myśli szeregi czasowe.</b></p>
<p><span style="font-weight: 400;">Chyba na przygotowanie danych. Praktycznie te wszystkie metody uczenia maszynowego są generalne. One nie są napisane z myślą o szeregach czasowych. Pomijając sieci neuronowe, one nie mają pojęcia czasu, więc ten czas musisz sam wprowadzić, na przykład mając takie dwa okienka, input i output, które przesuwają się po tej krzywej, z każdym krokiem wyciągasz cechy z tego okienka input i przewidujesz co jest w output. Więc Ty musisz przerobić tą krzywą czasową na coś, co uczenie maszynowe rozumie, czyli właśnie na ten input-output. Jest to dość skomplikowane i wcale nie takie oczywiste. Wiele osób popełnia wtedy błędy. A jeżeli tego nie zrobisz dobrze, to często nawet najlepsze algorytmy uczenia maszynowego nie zadziałają. To jest częsta przyczyna dla którego te sprawdzone, proste algorytmy statystyczne zwyciężają w porównaniu z uczeniem maszynowym. One wiedzą co to jest szereg czasowy, one mają w sobie to pojęcie. A tutaj użytkownik to musi przygotować, a to przygotowanie danych nie jest takie proste.</span></p>
<p><b>Jeśli chodzi o uczenie maszynowe, to przygotowanie danych jest rzeczywiście dużym wyzwaniem. Pozwolę sobie zmienić temat i ciekawy jestem jednej rzeczy. Bierzesz udział w konkursach, na przykład takich jak M4, i zajmujesz tam, na przykład pierwsze miejsce. Jak konkursy wpływają na rozwój technologii, i przede wszystkim jaką rolę mają w tym szeregi czasowe?</b></p>
<p><span style="font-weight: 400;">Wygrałem dwa z tych konkursów i uważam, że są one bardzo istotne. Generalnie, cały Deep learning, ten ogromny postęp w sieciach neuronowych który nastąpił w ciągu ostatnich 8 czy 10 lat, to w dużej mierze jest wynikiem tego, że właśnie te dziedziny przyjęły modele z konkursów. Było coś takiego jak ImageNet, czyli coroczny konkurs do rozpoznawania obrazów. I to było niesamowite, jak ludzie co roku produkowali nowe rozwiązania z reguły używając sieci neuronowe. Co roku był duży postęp w wielu dziedzinach. Ludzie piszą artykuły, gdzie mają jakiś dziwny algorytm, który podobno działa super na trzech krzywych, które oni sobie w jakiś sposób dobrali. Nie jest to przekonywujące. Gdy masz duży zbiór danych i pokażesz, że na tym dużym zbiorze danych Twój algorytm naprawdę poprawia rekord świata, to wtedy jest to czymś co mówi, czy Twoja metoda jest intelektualnie interesująca, czy też wygląda głupio, czy też nie jest przekonywująca, ale faktem jest że poprawiłeś rekord świata. I to zmusza ludzi, aby się temu przyjrzeć. Wtedy ludzie stwierdzają: okej, Twoje wyjaśnienie nie ma za bardzo sensu, ale jest naprawdę super i my to ulepszymy. </span></p>
<p><span style="font-weight: 400;">To powoduje, że ludzie biorą dobre elementy z jednej metody, poprawiają je i dzięki temu wszystko idzie do przodu. Ja bardzo się cieszę, że M4 się odbyło. Zresztą, w 2016 wygrałem konkurs. Jest to organizacja inżynierska. Brałem udział w konkurencji GEFCom, czyli mówiącej o zużyciu energii elektrycznej, jak i również o M4. To mi naprawdę dużo dało. Ja przy każdym takim konkursie uczę się bardzo dużo i mam doświadczenie, które nie zawsze jest tak łatwo można zdobyć w pracy. W pracy czasami nie masz takiego dużego zbioru danych, albo zajmujesz się ciągle tym samym. Tu masz coś nowego. Według mnie, jak się kończy taki konkurs, to po pierwsze wiadomo, która metoda była najlepsza, a po drugie powstaje ten zbiór danych przez co ludzie, którzy nawet nie brali udziału w tym konkursie, mogą go używać, pisać artykuły o tym, itd. Także dla mnie, to jest zupełnie fundamentalne i bardzo się cieszę, że te konkursy miały miejsce.</span></p>
<p><b>Fajnie to ująłeś, też bardzo popieram konkursy. A jakie są najciekawsze konkursy związane z szeregami czasowymi i prognozami szeregów czasowych?</b></p>
<p><span style="font-weight: 400;">Wydaje mi się, że nie ma ich zbyt wiele. Najciekawsza jest seria, którą robił <a href="https://en.wikipedia.org/wiki/Spyros_Makridakis">Makridakis</a>. Zaczęło się to w 1978, kiedy napisał artykuł w którym pokazywał, że proste metody statystyczne takie jak, na przykład że czegoś będzie tyle samo za rok, co dzisiaj, czyli taka metoda, że bierzemy dziś obecne dane, działają równie dobrze jak bardziej skomplikowane, na przykład jak ARIMA. On miał duży kłopot z przekonaniem innych statystyków którzy nie mogli w to uwierzyć, że tak zaawansowana metoda matematycznie poprawna jak ARIMA, mogłaby być na tym samym poziomie, co coś takiego jak naiwne przewidywanie. Odbyła się tam zażarta dyskusja i on, aby ją przerwać, zorganizował właśnie pierwszy konkurs M1. </span></p>
<p><span style="font-weight: 400;">Rezultaty były zgodne z tym, o czym właśnie mówił w swoim artykule, że naprawdę nie ma specjalnej różnicy. Później ludzie go krytykowali, więc zorganizował M1, M2, M3. M3 odbywało się w 2000 roku. Było tam 3000 szeregów czasowych, po której była długa przerwa. W tamtym roku było ogłoszone M4, które się skończyło w tym roku. 100 000 krzywych. Głównie z biznesu, ale i nie tylko. Krzywe z różnych miejsc, nie wiadomo dokładnie skąd. W każdym razie, są tam krzywe miesięczne, jak i trzystuletnie więc to jest ciekawe, skąd profesor Makridakis to ściągnął.</span></p>
<p><span style="font-weight: 400;">W tym wypadku chodziło o porównanie metod uczenia maszynowego z metodami statystycznymi. Profesor Makridakis przewidywał, że uczenie maszynowe nie będzie działać za dobrze, bo tak zawsze było historycznie od 2000 roku, i generalnie miał rację. 240 osób się zarejestrowało, około czterdziestu wysłało wyniki, a z nich tylko 6 używało uczenia maszynowego, i one wypadły bardzo marnie. Druga metoda używała kilku statystycznych metod, ale wagi pomiędzy nimi było zrobione za pomocą uczenia maszynowego. I ja wygrałem za pomocą metody, która właściwie łączy obie rzeczy. Zarówno uczenie maszynowe, jak i metody statystyczne, co nazywane jest wygładzaniem wykładniczym. To było zaskoczeniem, ale profesor Makridakis to bardzo otwarty człowiek i mimo swojego wieku wcale nie jest dogmatykiem. On naprawdę stara się znaleźć to, co działa.</span></p>
<p><span style="font-weight: 400;"> Czy jest to metoda statystyczna, standardowa, prosta czy skomplikowana. Jego interesuje tylko czy działa, i dlaczego uczenie maszynowe generalnie, rzecz biorąc nie działa. Bardzo się cieszył, że jest coś nowego, czyli metoda, która łączy to stare dobre podejście statystyczne z sieciami neuronowymi. To było dla niego największe odkrycie tego konkursu, zarówno jak i jego wynik. </span></p>
<p><b>Wejdźmy trochę w szczegóły. Wygrałeś konkurs, zbudowałeś model hybrydowy który potrafi łączyć świat statystyki z uczeniem maszynowym. Zdradź nam coś więcej na ten temat. Co tam dokładnie zrobiłeś?</b></p>
<p><span style="font-weight: 400;">Użyłem prostych formuł używanych w równaniach wykładniczych, czyli proste algorytmy do przewidywania szeregów czasowych, które dobrze działają. Wziąłem niektóre z tych formuł i w trakcie tej pętli uczącej się sieci neuronowej, robiłem w trakcie takie mini-przygotowanie danych, w której te formuły wygładzały moje krzywe i usuwały efekty sezonowe. Teraz sieć neuronowa widziała ładną krzywą bez tych efektów sezonowych, tak samo znormalizowaną i mogła się skoncentrować na tym co jest bardzo istotne, czyli na trendzie. Wcale nie musi on być liniowy. Może być nieliniowy, lub taki troszeczkę pokrzywiony w górę, albo w dół. Więc masz te dobre, tradycyjne równania, i istotne jest to, że jest to jeden algorytm dlatego, że parametry tych formuł są tak samo optymalizowane przez ten sam algorytm, który optymalizuje wagi tych sieci neuronowe. Także tu nie ma dwóch etapów, tylko jeden. Algorytm sieci neuronowe został rozszerzony o te formuły z tradycyjnych algorytmów statystycznych i to zadziałało bardzo dobrze. Było to tylko możliwe od niedawna, bo to wymaga czegoś takiego jak </span><i><span style="font-weight: 400;">Dynamic Computational Graph Systems</span></i><span style="font-weight: 400;">. </span></p>
<p><span style="font-weight: 400;">To jest nowy rodzaj systemów sieci neuronowe. Mają one około roku lub półtora. Jest to </span><i><span style="font-weight: 400;">Pyro</span></i><span style="font-weight: 400;"> i </span><i><span style="font-weight: 400;">Pytorch</span></i><span style="font-weight: 400;">. To pozwala na znacznie większą swobodę w budowie modeli, w taki sposób, że model który trenujemy zmienia się od jednej krzywej, to drugi nie jest taki sam. Także możemy mieć nie tylko generalne parametry jak, na przykład pakiet z czarną skrzynką tej sieci neuronowej, ale każda krzywa ma parę swoich parametrów. Oczywiście nie wszystkie, ale każda ma swoje własne słupki sezonowości. Czyli masz generalny model tej sieci neuronowej i oddzielnych parametrów dla każdej krzywej osobno. Mamy tutaj model hierarchiczny, ponieważ zawierają one generalne, wszystkie zmienne dla każdej krzywej, jak i kilka oddzielnych parametrów dla każdej z nich. Jest to możliwe tylko dzięki </span><i><span style="font-weight: 400;">Dynamic Computational Graph Systems.</span></i></p>
<p><b>Wspomniałeś o konkursie w którym macie 100 000 szeregów czasowych. Masz model hybrydowy, czyli łączysz sieci neuronowe z wygładzaniem wykładniczym. Jak długo ten model się uczył?</b></p>
<p><span style="font-weight: 400;">W tych 100 000 krzywych było kilka oddzielnych kategorii. Na przykład 48 000 krzywych miesięcznych, czyli jeden punkt na miesiąc. 24 000 krzywych kwartalnych, czyli jeden punkt na kwartał. 20 parę tysięcy krzywych rocznych, czyli jeden punkt na rok. Było tam bodajże sześć kategorii różnych krzywych i dla każdej z nich trzeba było wytrenować oddzielny model. Ja pracowałem ciężko przez wiele miesięcy próbując różnych algorytmów, różnych podejść, różnych parametrów, ale w końcu jak już wiedziałem co mam robić w ciągu tych ostatnich paru dni, to zdecydowałem się te wszystkie modele przekalkulować od początku do końca w ciągu tygodnia na jednym paroletnim komputerze. Także ten najdłuższy, miesięczny zajął mi trzy-cztery dni.</span></p>
<p><b>Jak teraz opowiadasz o tym rozwiązaniu, to brzmi bardzo ciekawie, tym bardziej, że jest to najlepsze rozwiązanie jakie udało się zbudować. Natomiast, czy odważyłbyś się tego użyć w produkcji?</b></p>
<p><span style="font-weight: 400;">Jak najbardziej, i właśnie obecnie moim głównym zadaniem jest przeniesienie do produkcji ulepszonego modelu z M4. To jest moje moje główne, oficjalne zadanie którym zajmuje się w pracy.</span></p>
<p><b>Wspomniałeś o jednej takiej rzeczy. Do tych sieci neuronowych potrzebne są możliwości budowania dynamicznych grafów, i to jest prawdopodobnie robione w Tor, ale wiem, że i tak zrobiłeś to po swojemu, na niższym poziomie. Czego dokładnie użyłeś i czy to rozwiązanie jest gdzieś dostępne?</b></p>
<p><span style="font-weight: 400;">To nie jest tak, że ja to zrobiłem od podstaw. Owszem, napisałem troszeczkę rozszerzeń, ale generalnie używałem mniej popularnego, ale podobnego programu. Używałem </span><i><span style="font-weight: 400;"><a href="https://github.com/clab/dynet">dynet</a>. </span></i><span style="font-weight: 400;">Można go sobie ściągnąć. Całkiem przyzwoity program. Ja wybrałem </span><i><span style="font-weight: 400;">dynet </span></i><span style="font-weight: 400;">z tego powodu, że oni mają dobre wsparcie do C++. Ja nie chciałem używać Pythona, z uwagi na to, że wiedziałem, że to 100 000 muszę zrobić jak najszybciej. </span></p>
<p><span style="font-weight: 400;">Poza tym, miałem nadzieję, że mogę to zrobić w </span><i><span style="font-weight: 400;">multithreading, </span></i><span style="font-weight: 400;">czyli że mogę napisać trochę bardziej zaawansowany program, który będzie procesował na wielu wątkach. Koniec końców, to się nie udało. Ja to troszkę rozszerzyłem, napisałem trochę klas, ale to nie jest tak, że ja wystartowałem od zera. To byłoby za dużo. Jak się wpisze w Google “<a href="https://github.com/M4Competition/M4-methods">M4 Forecast Competition GitHub</a>”, to znajdziemy tam wszystkie metody, które mają krótki opis i kod. Także tam można wszystko znaleźć.</span></p>
<p><b>Z tych 40-paru osób, które cokolwiek tam wysłali, to tylko sześć wykorzystało uczenie maszynowe. Z drugiej strony, uczenie maszynowe w połączeniu ze statystyką wygrało. I jak to teraz zinterpretować? Czy to uczenie maszynowe dobrze sobie radzi z szeregami czasowymi? Czy jednak wymagana jest ta kombinacja. Ty trochę złamałeś te stereotypy. Co teraz można z tym zrobić?</b></p>
<p><span style="font-weight: 400;">Opowiem jeszcze taką anegdotę. Zarejestrowało się 240 osób, a w końcu tylko 30- pare wysłało swoje projekty. Częściowo dlatego, że ludzie robili tak zwany </span><i><span style="font-weight: 400;">backtesting, </span></i><span style="font-weight: 400;">czyli sprawdzali jak ich metoda działa. Załóżmy, że mamy krzywą miesięczną i zadaniem jest przewidzieć następnych 18 miesięcy, czyli 18 punktów. Krzywa którą ja mam, ma na przykład, 50 punktów, więc mogę udawać, że tak naprawdę mam 32 punkty. Z tych 32 przewidzieć te 18, czyli skrócić tą krzywą o horyzont do przewidywania i nauczyć się przewidywania na tej krótszej krzywej. Następnie sprawdzić jak nam idzie. To jest prawidłowe podejście, które ja zastosowałem. Ludzie to sprawdzali, porównywali i okazywało się, że wcale nie jest tak łatwo wykorzystać standardowe metody, bo organizatorzy podali standardowe wyniki i metody do porównania. Jedna moja znajoma pracowała, po czym stwierdziła, że nie jest w stanie pokonać tych standardowych metod i zrezygnowała z dalszego udziału. Także kto wie, być może na początku było więcej osób które próbowały użyć uczenia maszynowego, ale koniec końców zrezygnowali. To jest jedna z możliwości dlaczego chętnych było więcej, ale nie dotarli do końca. </span></p>
<p><span style="font-weight: 400;">Jest to generalnie trudny konkurs dla metod uczenia maszynowego, ponieważ masz tysiące tych krzywych, ale bez żadnego opisu. Jedna może okazać, na przykład ilość transakcji w bankomacie, druga to może być, na przykład ilość wylewów rzeki w jakimś tam okresie. Więc masz tysiące krzywych i nie wiadomo skąd one pochodzą. Mają zupełnie inny wygląd, wyginają się w różnym rytmie, pod różnymi kątami. Ich sezonowe wpływy są zupełnie inne. Więc uczenie maszynowe w tym momencie ma kłopoty, ponieważ jedna krzywa wyklucza drugą. Ucząc się z jednej, druga jest zupełnie inna. Także to jest najtrudniejsze zadanie, jakie uczenie maszynowe ma w przewidywaniu szeregów czasowych. </span></p>
<p><span style="font-weight: 400;">Na przykład jak w Uber przewidujesz ilość podróży samochodem, to mamy inne rzeczy. Możemy wiedzieć w którym mieście, &nbsp;nawet w którym rejonie miasta, jaka jest tam średnia zarobków za godzinę. Mamy wiele innych atrybutów, które są bardzo istotne i to powoduje, że uczenie maszynowe, które ładnie radzi sobie z dużą ilością, i dobrze wyciąga te informacje z dużej ilości atrybutów, w tym momencie będzie miało przewagę. Natomiast, jak mamy taką “gołą” krzywą, bez niczego innego, to jest ciężko. Ja myślę, że to jest podstawowa sprawa. Brak tych dodatkowych atrybutów powoduje, że zadanie jest ciężkie. Nie, że niewykonalne, ale bardzo ciężkie. Z jednej strony można stwierdzić, że uczenie maszynowe wygrało, a z drugiej niekoniecznie, bo bez tych formuł, które były w środku tego algorytmu nie wygrałoby. Więc oba tłumaczenia są właściwe. Ja myślę, że to jest dobry algorytm. Ten algorytm może być wzbogacony przez dodatkowe cechy, atrybuty. I to, czy to był triumf uczenia maszynowego, zależy od punktu widzenia.</span></p>
<p><b>Czy masz w planach wdrożyć te rozwiązania do Ubera?</b></p>
<p><span style="font-weight: 400;">Tak, to jest właśnie moje główne zadanie w pracy. Przy czym weź pod uwagę, że nie ma jednej metody na wszystko. W różnych kontekstach łatwe, tradycyjne metody statystyczne są jak najbardziej na miejscu. To, że my to wdrożymy nie znaczy, że każda krzywa w Uberze będzie tym przewidywana. Być może ich zastosowanie trochę się rozszerzy, ale robimy to tylko wtedy, kiedy to ma sens, a nie dlatego że wszyscy tego używają. To, że w jakiejś sytuacji metoda jest najlepsza, nie znaczy, że będzie najlepsza w pozostałych.</span></p>
<p><b>Czy coś oprócz tego, że w trakcie konkursu M4 tyle osób się poddało jeszcze Cię zaskoczyło?</b></p>
<p><span style="font-weight: 400;">Zaskoczyła mnie mała ilość rozwiązań z użyciem uczenia maszynowego. Wydaje mi się, że Ci którzy dotrwali do końca tego konkursu i przedstawili swoje wyniki, byli to głównie statystycy, którzy częściowo dodawali uczenia maszynowego, ale to była tradycyjna szkoła. Jest to trochę deprymujące. Młode pokolenie rośnie. Oni się mniej boją różnych sieci neuronowych. Z resztą to widać na corocznych konferencjach, w której do najważniejszych w tych dziedzinach, można zaliczyć między innymi </span><i><span style="font-weight: 400;">International Symposium on Forecasting. </span></i><span style="font-weight: 400;">Uczęszczam na nią od około 5 lat, i ta ilość ludzi którzy przychodzą na moje wykłady rośnie. Więc widać, że to młodsze pokolenie jest bardziej zainteresowane tymi nowymi metodami, i dobrze.</span></p>
<p><b>Jak można znaleźć Ciebie w sieci?</b></p>
<p><span style="font-weight: 400;">Najłatwiej wpisać Slawek Smyl w <a href="https://www.linkedin.com/in/s%C5%82awek-smyl-b40b325/">LinkedIn</a> i tam można mnie znaleźć.</span></p>
<p><b>Dzięki wielkie Sławek za tę rozmowę. Za tą chęć podzielenia się wiedzą, której masz bardzo dużo, w szczególności jeśli chodzi o szeregi czasowe. Jeszcze raz dzięki za podzielenie się wszelkimi informacjami. Do zobaczenia!</b></p>
<p><span style="font-weight: 400;">Dziękuję bardzo.</span></p>
<hr />
<p><span style="font-weight: 400;">Bardzo dziękuję za wysłuchanie tego odcinka. Mam nadzieję, że udało Ci się wyciągnąć z niego wiele ciekawych informacji. Dziękuję Ci bardzo za wspólnie spędzony czas, za słuchanie BiznesMysli, za inspirację, oraz za wszystkie informacje zwrotne, które od Ciebie dostaję, i życzę Tobie wszystkiego najlepszego. Cześć! Na razie! Trzymaj się! </span></p><p>Artykuł <a href="https://biznesmysli.pl/szeregi-czasowe-rozmowa-z-doswiadczonym-inzynierem-z-uber/">Szeregi czasowe: rozmowa z doświadczonym inżynierem z Uber</a> pochodzi z serwisu <a href="https://biznesmysli.pl">Biznes Myśli</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://biznesmysli.pl/szeregi-czasowe-rozmowa-z-doswiadczonym-inzynierem-z-uber/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>10 przykładów jak uczenie maszynowe może pomóc Twojemu biznesowi</title>
		<link>https://biznesmysli.pl/10-przykladow-jak-uczenie-maszynowe-moze-pomoc-twojemu-biznesowi/</link>
					<comments>https://biznesmysli.pl/10-przykladow-jak-uczenie-maszynowe-moze-pomoc-twojemu-biznesowi/#respond</comments>
		
		<dc:creator><![CDATA[Vladimir]]></dc:creator>
		<pubDate>Mon, 27 Aug 2018 03:00:33 +0000</pubDate>
				<category><![CDATA[Podcast]]></category>
		<category><![CDATA[demand forecasting]]></category>
		<category><![CDATA[legacy code]]></category>
		<category><![CDATA[Perpetuum Mobile]]></category>
		<category><![CDATA[szeregi czasowe]]></category>
		<category><![CDATA[time series]]></category>
		<guid isPermaLink="false">http://biznesmysli.pl/?p=1158</guid>

					<description><![CDATA[<p>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 przerobić kurs na DataWorkshop?     Praktyczna prognoza szeregów czasowych Zapraszam Cię do mojego autorskiego kursu &#8222;Praktyczne prognozy szeregów czasowych&#8221; w Python &#x1f642;   Skupimy się na rozwiązaniu praktycznych problemów biznesowych takich jak: prognozowanie popytu na produkty dla sieci sklepów (900k+ klientów, 2,5k+ unikalnych produktów, ~1k magazynów) prognozowanie sprzedaży w siecie sklepów (łączna sprzedaż 5 mld+, 1,1k+ sklepów, 4k+ klientów) prognozowanie popytu energii w Polsce (rzeczywiste dane) prognozowanie cen na paliwa w Niemczech (rzeczywiste dane) wiele innych Poznasz takie algorytmy jak: &#x1f449; ARMA, ARIMA, SARIMA &#x1f449; Exponential Smoothing, czyli modele (Browna, Holta, Wintersa) &#x1f449; Generalized additive model (GAM) &#x1f449; Boosting model (+ inżynieria cech dla szeregów czasowych) &#x1f449; Deep Learning: LSTM   Jak to działa? &#x1f449; 6 tygodni = 6 modułów &#x1f449; 100% online &#x1f449; gotowe środowisko pracy = niczego nie instalujesz lokalnie &#x1f449; wiedzę o narzędziach i bibliotekach zdobywasz pracując z danymi &#x1f449; wykonujesz swój projekt w trakcie, który zasila Twoje CV &#x1f449; uczysz się tylko tego, co sprawdzone w praktyce &#x1f449; kodujesz od samego początku.   W trakcie kursu poznasz, jak działać efektywnie w tym obszarze, w szczególności chodzi mi o zastosowanie uczenia maszynowego i dlaczego podejście ML zwykle (chociaż kusi mnie, żeby powiedzieć: zawsze) zachowuje się lepiej niż inne metody. W ciągu 6 tygodni poznasz wiele praktycznych przykładów, np. predykcję popytu, predykcję kosztu paliwa. Podzielę się z Tobą również moim doświadczeniem w predykcji kryptowalut. Polecam kurs osobom, które już przerobiły mój pierwszy kurs, lub mają pewne podstawy uczenia maszynowego.   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? Z lotu ptaka, uczenie maszynowe pomaga w dwóch możliwych poziomach: podejmowaniu właściwych decyzji i usprawnieniu produktu (lub usługi). Dzisiaj powiem o obu przypadkach, mówiąc precyzyjniej, skupimy się na jednej grupie problemów, predykcji tak zwanych szeregów czasowych i jak te rozwiązania mogą być pomocne dla Twojego biznesu. Od razu powiem, że to jest grupa problemów, które występują w każdej firmie, pytanie tylko, czy chcesz mieć nad tym kontrolę :). Zaczniemy od zrozumienia, czym są szeregi czasowe. Klasyczna definicja brzmi, że szeregi czasowe to sekwencja punktów danych przechowywanych w kolejności czasowej. Myślę, że będzie to bardziej zrozumiałe na przykładzie. Problem, który dla mnie jest nieco odkrywczy, ale podobno wiele osób martwi się o wagę. Jak zacząłem więcej czasu spędzać z ludźmi, a akurat teraz spędzam więcej, wcześniej czy później pojawiał się temat wagi, diet, ćwiczeń. Skoro jest to tak popularny problem, to łatwiej będzie wyjaśnić, o co chodzi z szeregami czasowymi właśnie przy pomocy tego przykładu. Jeśli miałbym bawić się w odchudzanie się w sposób skuteczny, to zacząłbym zbierać dane, czym więcej, tym lepiej, ale co najmniej byłaby to waga i pewnie jeszcze kilka innych parametrów. Należałoby zbierać dane przez jakiś dłuższy czas, np. przez miesiąc, rok czy nawet kilka lat. Warto byłoby robić to konsekwentne. Następnie na podstawie uzyskanych danych historycznych, można próbować przewidzieć przyszłość, czyli zrobić predykcję, jaka waga będzie jutro, za tydzień czy może nawet za miesiąc. To jest przykład szeregów czasowych. Wyobraź sobie na chwilę wykres: na osi X będą daty, a na osi Y wartość, w tym przypadku wartością jest Twoja waga. Zobacz też, że mając dane, możemy przejść cztery poziomy interpretacji. Po pierwsze widzimy, w których okresach w przeszłości było gorzej (pewnie w okolicy Sylwestra są pewne „podwyżki wagowe”). Drugi poziom to stwierdzenie, dlaczego tak było? Na przykład, dlatego, że był o jeden obiadek za dużo. Trzeci poziom jest taki, że możemy powiedzieć, że skoro kilka ostatnich lat w okolicy Sylwestra przybywało nam kilka dodatkowych kilogramów, to w tym roku będzie tak samo. Już w tym momencie przewidujemy, jaka może być nasza przyszłość dotycząca wagi. I w końcu czwarty poziom jest taki, skoro wiemy, że na Sylwestra w tym roku przybędzie nam trochę kilogramów, a tego nie chcemy (lub chcemy – ludzie mają różne problemy), to pewnie warto zrobić coś, żeby sytuacja była zgodna z naszymi oczekiwaniami. To coś, nie zawsze jest oczywiste, ale w tym przypadku pewnie warto zamknąć lodówkę na kłódkę lub zrobić coś podobnego. Ostatni, czwarty poziom jest najciekawszy, bo wtedy próbujemy zdefiniować przyszłość, a nie tylko się z nią pogodzić. W ten sposób zarządzają decyzjami rozwinięte, technologiczne firmy (wiele przykładów podam poniżej), ale nie tylko firmy technologiczne, również dokładnie w ten sam sposób wygrywa się wybory i pewnie już w kilku krajach było to skutecznie zastosowane. Podsumujmy i przejdźmy do przykładów. Prognozowanie szeregów czasowych to prognoza przyszłej wartości na osi czasu, bazująca na danych z przeszłości. Mając dane z kilku miesięcy czy lat wstecz, robimy prognozę na tydzień czy kilka tygodni do przodu. Przejdźmy do praktyki, konkretnych zastosowań, wtedy to powinno być jeszcze bardziej zrozumiałe. Opowiem Ci o 10 przypadkach użycia. 10 przypadków użycia Przykład #1 Prognozowanie popytu w przedziale czasowym (ang. demand forecasting) Prognozowanie popytu jest jednym z kluczowych zadań w logistyce. Zarządzanie magazynami jest wyzwaniem, ale jak już to opanujesz, może się okazać, że wniesie to wiele korzyści dla Twojego biznesu. Jakie są problemy? Pierwszy problem, który mają firmy zarządzające magazynem to zamrożenie kapitału. Dla firmy z większym kapitałem mogą być to dziesiątki, setki milionów lub nawet więcej. Wystarczy zoptymalizować jedynie kilka procent i już pojawiają się bardzo namacalne wyniki. Drugi problem to brak dostępnych produktów, co oznacza, że biznes traci. Jeśli biznes zarabia, wtedy gdy sprzedaje, to można sformułować bardzo prosty wniosek, że biznes traci wtedy, kiedy klient jest gotowy kupić, ale produkt nie jest dostępny. Dlatego, dość często, opłaca się mieć większe zapasy, bo koszty magazynu są niższe. Są pewne wyjątki, które potwierdzają istnienie tej reguły. Trzeci problem ma trochę inny wymiar i jest to lojalność klienta. Jeśli klient przyjdzie do sklepu po zakup towaru i po raz kolejny go nie ma, to więcej nie będzie chciał tam wrócić. Inny przykład związany z lojalnością to Otto Group. Jest to niemiecka firma, która jest agregatem rzeczy do kupowania. Problem jest w tym, że jak klient coś zamówi, to spodziewa się otrzymać produkt jak najszybciej. Natomiast fizyka tego świata ma swoje prawa i logistyka potrzebuje czasu na realizację. Dlatego, żeby zminimalizować czas dostawy do klienta, należy zacząć realizować zamówienia jeszcze przed rzeczywistym zakupem klienta. Innymi słowy, Otto Group wie wcześniej, że ktoś kupi towar X i zamawia go z wyprzedzeniem (kupują ok. 200 000 towarów z wyprzedzeniem). Dzięki temu udało im się zminimalizować czas dostawy i zwiększyć grupę lojalnych klientów. Inny przykład. Czy słyszałeś o startupie HelloFresh? Jest niedaleko polskiej granicy – w Berlinie. Natomiast już teraz wyszli na rynki zagraniczne, również do Stanów Zjednoczonych. Jaki problem próbują rozwiązać? Być może czasem masz taki problem, że chcesz przygotować fajny obiad czy kolacje, otwierasz lodówkę i czegoś tam brakuje. Trochę szkoda, bo był zapał i tutaj znów kończy się jedynie na zwykłym makaronie :). W HelloFresh możesz wybrać, co chcesz ugotować i wtedy dostaniesz koszyk ze wszystkimi składnikami. W ten sposób, po pierwsze oszczędzasz czas na chodzenie po sklepach, po drugie pobudzasz swoją wyobraźnię i stajesz się bardziej kreatywnym, bo chociażby na stronie możesz wybierać przeróżne dania. Po trzecie jesteś bardziej zmotywowany, żeby zrobić to, co zaplanowałeś, bo trochę szkoda, żeby zmarnowały się produkty z Twojej lodówki. Po czwarte czujesz się bardziej szczęśliwy, bo nawet jeśli to był totalnie zły dzień i nie udało Ci się nic zrobić, to przynajmniej ugotowałeś fajny obiadek :). Teraz pomyśl o tym, jakie wyzwania ma HelloFresh? Przecież te wszystkie produkty trzeba zamawiać z wyprzedzeniem. O ile kasze mogą poleżeć trochę dłużej i nic się nie stanie, natomiast są takie produkty, które psują się znacznie szybciej np. W ciągu kilku dni. Dlatego zarządzanie popytem w tym przypadku również było kluczowe. Swoją drogą, czy nie zastanawia Cię, czemu tak wiele produktów potrafi nie psuć się przez dłuższy czas. Na przykład mleko. O ile go nie otworzysz, to może stać w kartonie nawet ponad 30 dni. Mieszkałem na wsi i wiem, jak szybko psują się naturalne produkty, czy to oznacza, że w tych produktach są pewne dodatki, które „zabijają” szybkie psucie się? A jeśli tak, to jak to wpływa na nasze zdrowia i te wszystkie obecne choroby cywilizacyjne. Co o tym myślisz? Jakie są pułapki? Predykcja popytu jest dość podchwytliwym zadaniem. Może się okazać, że są pewne pułapki, których algorytm może nie przewidzieć. Od razu wyjaśnię, że ten problem wynika z tego, że uczenie maszynowe jest bardzo ograniczone do przewidywania przypadków, które już wydarzyły się w przeszłości. Jak na razie, dość słabo sobie radzi z tak zwanym rozumowaniem. To dlatego przeciętny człowiek w pewnych sytuacjach radzi sobie lepiej niż ML. Podam Ci przykład. Wyobraź sobie, że w dzień, kiedy temperatura powietrza wynosi do 20 stopni, ludzie kupują zwykle 100 butelek wody (założyłem 100, jako konkretną liczbę, na której będzie łatwo dalej robić obliczenia). Mamy 15 stopni, zwykle sprzedaje się 100 butelek. Mamy 18 stopni, sprzedaje się też około 100 butelek. Jak myślisz, ile sprzedamy, kiedy będzie 25 stopni? Pewnie na poziomie intuicji czujesz, że więcej, np. 120 (czyli 20% więcej). Jak myślisz, ile sprzeda się butelek wody, kiedy temperatura będzie około 30 stopni? Pewnie Twoja odpowiedź brzmi: jeszcze trochę więcej np. 150 butelek. I jeszcze jedno pytanie, jaka będzie sprzedaż przy 35 stopniach? Jeśli pomyślisz, co dla Ciebie oznacza 35 stopni ciepła, to wtedy czujesz, że chcesz się napić po raz kolejny, więc pewnie Twoja odpowiedź będzie, że co najmniej 200 lub więcej butelek. Zobacz, że w pewnym momencie wzrost popytu na wodę jest wykładniczy. Jak zaczniesz o tym myśleć, to jest bardzo oczywiste, przecież jak jest temperatura około 35 stopni, to pijemy znacznie więcej wody. Teraz uwaga! O ile taka sytuacja nie pojawiła się wcześniej (z odpowiednią powtarzalnością, a nie tylko jako wyjątek), bo wtedy algorytm może się tego nauczyć, ale bardzo ciężko jest się algorytmowi domyśleć, że będzie punkt przegięcia w przyszłości, jeśli wcześniej nie widział danych. Tym bardziej że wzrost po tym punkcie jest wykładniczy. To jest przykład z życia wzięty, kiedy mimo tego, że popyt na wodę przy temperaturze wyższej niż 20 stopni był mnożony na wszelki wypadek przez współczynnik X,...</p>
<p>Artykuł <a href="https://biznesmysli.pl/10-przykladow-jak-uczenie-maszynowe-moze-pomoc-twojemu-biznesowi/">10 przykładów jak uczenie maszynowe może pomóc Twojemu biznesowi</a> pochodzi z serwisu <a href="https://biznesmysli.pl">Biznes Myśli</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="lazyblock-speaker-spotify-ZS1gQG wp-block-lazyblock-speaker-spotify"><div class="wp-block-columns are-vertically-aligned-center">
<div class="wp-block-column is-vertically-aligned-center">
<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><a href="https://www.spreaker.com/user/biznesmysli/bm39-10-przykladow-jak-uczenie-maszynowe" target="_blank"><img decoding="async" src="https://biznesmysli.pl/wp-content/uploads/2020/02/spreaker.png" alt="" class="wp-image-2150" width="213" height="71"></a></figure></div>
</div>
<div class="wp-block-column is-vertically-aligned-center">
<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><a href="https://open.spotify.com/episode/2HHXBUGV2IBCpgDlp1iNqa" target="_blank"><img decoding="async" src="https://biznesmysli.pl/wp-content/uploads/2020/02/spotify-badge-button.png" alt="" class="wp-image-2149" width="192" height="93"></a></figure></div>
</div>
</div></div>

<h1>Szeregi czasowe</h1>
<p>Z tego odcinka dowiesz się:</p>
<ul>
<li>jak uczenie maszynowe może pomóc Twojemu biznesowi?</li>
<li>czym są szeregi czasowe?</li>
<li>jakie problemy rozwiązuje możliwość prognozowania popytu w przedziale czasowym?</li>
<li>jakie problemy w biznesie może rozwiązać predykcja sprzedaży w przedziale czasowym?</li>
<li>czy można przewidzieć, ilu klientów zamierza odejść w pewnej perspektywie czasowej?</li>
<li>czy dzięki prognozowaniu można usprawnić pracę w call center?</li>
<li>kto może skorzystać z prognozowania ilości awarii w przedziale czasowym?</li>
<li>czy jest możliwość przewidzenia, jakie będzie zanieczyszczenie powietrza?</li>
<li>od czego zależy dynamiczna zmiana cen?</li>
<li>czy można przewidzieć wystąpienie choroby?</li>
<li>dlaczego warto przerobić kurs na DataWorkshop?</li>
</ul>
<p> </p>
<p><a href="https://dataworkshop.eu/pl/time-series?utm_source=bm39&amp;utm_medium=podcast&amp;utm_campaign=my-story&amp;utm_id=marta-data-analyst&amp;utm_term=timeseries&amp;utm_content=post"><img decoding="async" class="aligncenter wp-image-8987 size-large" src="https://biznesmysli.pl/wp-content/uploads/2018/08/ts-1024x576.png" alt="" width="960" height="540" srcset="https://biznesmysli.pl/wp-content/uploads/2018/08/ts-1024x576.png 1024w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts-300x169.png 300w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts-768x432.png 768w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts-1536x864.png 1536w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts-1140x641.png 1140w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts.png 1920w" sizes="(max-width: 960px) 100vw, 960px" /></a></p>
<p> </p>
<h2><a href="https://bit.ly/3YLMfH0">Praktyczna prognoza szeregów czasowych</a></h2>
<p class="p1">Zapraszam Cię do mojego autorskiego kursu &#8222;Praktyczne prognozy szeregów czasowych&#8221; w Python <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p class="p1"> </p>
<p class="p1">Skupimy się na rozwiązaniu praktycznych problemów biznesowych takich jak:</p>
<ul>
<li><strong style="font-size: revert; color: initial; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;">prognozowanie popytu na produkty dla sieci sklepów</strong><span style="font-size: revert; color: initial; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;"> (900k+ klientów, 2,5k+ unikalnych produktów, ~1k magazynów)</span></li>
<li><strong>prognozowanie sprzedaży w siecie sklepów</strong> (łączna sprzedaż 5 mld+, 1,1k+ sklepów, 4k+ klientów)</li>
<li><strong>prognozowanie popytu energii w Polsce</strong> (rzeczywiste dane)</li>
<li><strong>prognozowanie cen na paliwa w Niemczech</strong> (rzeczywiste dane)</li>
<li>wiele innych</li>
</ul>
<h3 class="p1">Poznasz takie algorytmy jak:</h3>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> ARMA, ARIMA, SARIMA</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Exponential Smoothing, czyli modele (Browna, Holta, Wintersa)</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Generalized additive model (GAM)</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Boosting model (+ inżynieria cech dla szeregów czasowych)</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Deep Learning: LSTM</p>
<p> </p>
<h3 class="p1">Jak to działa?</h3>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 6 tygodni = 6 modułów</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 100% online</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> gotowe środowisko pracy = niczego nie instalujesz lokalnie</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> wiedzę o narzędziach i bibliotekach zdobywasz pracując z danymi</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> wykonujesz swój projekt w trakcie, który zasila Twoje CV</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> uczysz się tylko tego, co sprawdzone w praktyce</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> kodujesz od samego początku.</p>
<p> </p>
<p>W trakcie kursu poznasz, jak działać efektywnie w tym obszarze, w szczególności chodzi mi o zastosowanie uczenia maszynowego i dlaczego podejście ML zwykle (chociaż kusi mnie, żeby powiedzieć: zawsze) zachowuje się lepiej niż inne metody. W ciągu 6 tygodni poznasz wiele praktycznych przykładów, np. predykcję popytu, predykcję kosztu paliwa. Podzielę się z Tobą również moim doświadczeniem w predykcji kryptowalut. Polecam kurs osobom, które już przerobiły mój pierwszy kurs, lub mają pewne podstawy uczenia maszynowego.</p>
<p> </p>
<figure id="attachment_1164" aria-describedby="caption-attachment-1164" style="width: 1280px" class="wp-caption aligncenter"><a href="https://biznesmysli.pl/wp-content/uploads/2018/08/BM39.jpg"><img decoding="async" class="size-full wp-image-1164" src="https://biznesmysli.pl/wp-content/uploads/2018/08/BM39.jpg" alt="Szeregi czasowe" width="1280" height="720" srcset="https://biznesmysli.pl/wp-content/uploads/2018/08/BM39.jpg 1280w, https://biznesmysli.pl/wp-content/uploads/2018/08/BM39-300x169.jpg 300w, https://biznesmysli.pl/wp-content/uploads/2018/08/BM39-1024x576.jpg 1024w, https://biznesmysli.pl/wp-content/uploads/2018/08/BM39-768x432.jpg 768w, https://biznesmysli.pl/wp-content/uploads/2018/08/BM39-1140x641.jpg 1140w" sizes="(max-width: 1280px) 100vw, 1280px" /></a><figcaption id="caption-attachment-1164" class="wp-caption-text">Szeregi czasowe</figcaption></figure>
<p>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.</p>
<p>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 „<a href="https://en.wikipedia.org/wiki/Legacy_code">legacy code</a>” i zawarty w nim <a href="http://it-filolog.pl/dlug-techniczny-zagrozenie-nie-tylko-dla-projektow-it/">dług techniczny</a> jest tak drogi, a w pewnym momencie potrafi wywrócić do góry nogami nawet potężny biznes.</p>
<p>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”.</p>
<p>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?</p>
<p><span id="more-1158"></span></p>
<p>Z lotu ptaka, uczenie maszynowe pomaga w dwóch możliwych poziomach: podejmowaniu właściwych decyzji i usprawnieniu produktu (lub usługi). Dzisiaj powiem o obu przypadkach, mówiąc precyzyjniej, skupimy się na jednej grupie problemów, predykcji tak zwanych szeregów czasowych i jak te rozwiązania mogą być pomocne dla Twojego biznesu. Od razu powiem, że to jest grupa problemów, które występują w każdej firmie, pytanie tylko, czy chcesz mieć nad tym kontrolę :).</p>
<p>Zaczniemy od zrozumienia, czym są szeregi czasowe.</p>
<p>Klasyczna definicja brzmi, że szeregi czasowe to sekwencja punktów danych przechowywanych w kolejności czasowej. Myślę, że będzie to bardziej zrozumiałe na przykładzie. Problem, który dla mnie jest nieco odkrywczy, ale podobno wiele osób martwi się o wagę. Jak zacząłem więcej czasu spędzać z ludźmi, a akurat teraz spędzam więcej, wcześniej czy później pojawiał się temat wagi, diet, ćwiczeń. Skoro jest to tak popularny problem, to łatwiej będzie wyjaśnić, o co chodzi z szeregami czasowymi właśnie przy pomocy tego przykładu.</p>
<p>Jeśli miałbym bawić się w odchudzanie się w sposób skuteczny, to zacząłbym zbierać dane, czym więcej, tym lepiej, ale co najmniej byłaby to waga i pewnie jeszcze kilka innych parametrów.</p>
<p>Należałoby zbierać dane przez jakiś dłuższy czas, np. przez miesiąc, rok czy nawet kilka lat. Warto byłoby robić to konsekwentne. Następnie na podstawie uzyskanych danych historycznych, można próbować przewidzieć przyszłość, czyli zrobić predykcję, jaka waga będzie jutro, za tydzień czy może nawet za miesiąc.</p>
<p>To jest przykład szeregów czasowych. Wyobraź sobie na chwilę wykres: na osi X będą daty, a na osi Y wartość, w tym przypadku wartością jest Twoja waga. Zobacz też, że mając dane, możemy przejść cztery poziomy interpretacji. Po pierwsze widzimy, w których okresach w przeszłości było gorzej (pewnie w okolicy Sylwestra są pewne „podwyżki wagowe”). Drugi poziom to stwierdzenie, dlaczego tak było? Na przykład, dlatego, że był o jeden obiadek za dużo. Trzeci poziom jest taki, że możemy powiedzieć, że skoro kilka ostatnich lat w okolicy Sylwestra przybywało nam kilka dodatkowych kilogramów, to w tym roku będzie tak samo. Już w tym momencie przewidujemy, jaka może być nasza przyszłość dotycząca wagi. I w końcu czwarty poziom jest taki, skoro wiemy, że na Sylwestra w tym roku przybędzie nam trochę kilogramów, a tego nie chcemy (lub chcemy – ludzie mają różne problemy), to pewnie warto zrobić coś, żeby sytuacja była zgodna z naszymi oczekiwaniami. To coś, nie zawsze jest oczywiste, ale w tym przypadku pewnie warto zamknąć lodówkę na kłódkę lub zrobić coś podobnego.</p>
<p>Ostatni, czwarty poziom jest najciekawszy, bo wtedy próbujemy zdefiniować przyszłość, a nie tylko się z nią pogodzić. W ten sposób zarządzają decyzjami rozwinięte, technologiczne firmy (wiele przykładów podam poniżej), ale nie tylko firmy technologiczne, również dokładnie w ten sam sposób wygrywa się wybory i pewnie już w kilku krajach było to skutecznie zastosowane.</p>
<p>Podsumujmy i przejdźmy do przykładów. Prognozowanie szeregów czasowych to prognoza przyszłej wartości na osi czasu, bazująca na danych z przeszłości. Mając dane z kilku miesięcy czy lat wstecz, robimy prognozę na tydzień czy kilka tygodni do przodu.</p>
<p>Przejdźmy do praktyki, konkretnych zastosowań, wtedy to powinno być jeszcze bardziej zrozumiałe. Opowiem Ci o 10 przypadkach użycia.</p>
<p>10 przypadków użycia</p>
<h2>Przykład #1 Prognozowanie popytu w przedziale czasowym (ang. <em>demand forecasting</em>)</h2>
<p>Prognozowanie popytu jest jednym z kluczowych zadań w logistyce. Zarządzanie magazynami jest wyzwaniem, ale jak już to opanujesz, może się okazać, że wniesie to wiele korzyści dla Twojego biznesu.</p>
<h3>Jakie są problemy?</h3>
<p>Pierwszy problem, który mają firmy zarządzające magazynem to zamrożenie kapitału. Dla firmy z większym kapitałem mogą być to dziesiątki, setki milionów lub nawet więcej. Wystarczy zoptymalizować jedynie kilka procent i już pojawiają się bardzo namacalne wyniki.</p>
<p>Drugi problem to brak dostępnych produktów, co oznacza, że biznes traci. Jeśli biznes zarabia, wtedy gdy sprzedaje, to można sformułować bardzo prosty wniosek, że biznes traci wtedy, kiedy klient jest gotowy kupić, ale produkt nie jest dostępny. Dlatego, dość często, opłaca się mieć większe zapasy, bo koszty magazynu są niższe. Są pewne wyjątki, które potwierdzają istnienie tej reguły.</p>
<p>Trzeci problem ma trochę inny wymiar i jest to lojalność klienta. Jeśli klient przyjdzie do sklepu po zakup towaru i po raz kolejny go nie ma, to więcej nie będzie chciał tam wrócić. Inny przykład związany z lojalnością to Otto Group. Jest to niemiecka firma, która jest agregatem rzeczy do kupowania. Problem jest w tym, że jak klient coś zamówi, to spodziewa się otrzymać produkt jak najszybciej. Natomiast fizyka tego świata ma swoje prawa i logistyka potrzebuje czasu na realizację. Dlatego, żeby zminimalizować czas dostawy do klienta, należy zacząć realizować zamówienia jeszcze przed rzeczywistym zakupem klienta. Innymi słowy, Otto Group wie wcześniej, że ktoś kupi towar X i zamawia go z <a href="https://www.economist.com/business/2017/04/12/how-germanys-otto-uses-artificial-intelligence">wyprzedzeniem</a> (kupują ok. 200 000 towarów z wyprzedzeniem). Dzięki temu udało im się zminimalizować czas dostawy i zwiększyć grupę lojalnych klientów.</p>
<p>Inny przykład. Czy słyszałeś o startupie <a href="https://www.hellofresh.com/">HelloFresh</a>? Jest niedaleko polskiej granicy – w Berlinie. Natomiast już teraz wyszli na rynki zagraniczne, również do Stanów Zjednoczonych. Jaki problem próbują rozwiązać? Być może czasem masz taki problem, że chcesz przygotować fajny obiad czy kolacje, otwierasz lodówkę i czegoś tam brakuje. Trochę szkoda, bo był zapał i tutaj znów kończy się jedynie na zwykłym makaronie :). W HelloFresh możesz wybrać, co chcesz ugotować i wtedy dostaniesz koszyk ze wszystkimi składnikami. W ten sposób, po pierwsze oszczędzasz czas na chodzenie po sklepach, po drugie pobudzasz swoją wyobraźnię i stajesz się bardziej kreatywnym, bo chociażby na stronie możesz wybierać przeróżne dania. Po trzecie jesteś bardziej zmotywowany, żeby zrobić to, co zaplanowałeś, bo trochę szkoda, żeby zmarnowały się produkty z Twojej lodówki. Po czwarte czujesz się bardziej szczęśliwy, bo nawet jeśli to był totalnie zły dzień i nie udało Ci się nic zrobić, to przynajmniej ugotowałeś fajny obiadek :).</p>
<p>Teraz pomyśl o tym, jakie wyzwania ma HelloFresh? Przecież te wszystkie produkty trzeba zamawiać z wyprzedzeniem. O ile kasze mogą poleżeć trochę dłużej i nic się nie stanie, natomiast są takie produkty, które psują się znacznie szybciej np. W ciągu kilku dni. Dlatego zarządzanie popytem w tym przypadku również było kluczowe. Swoją drogą, czy nie zastanawia Cię, czemu tak wiele produktów potrafi nie psuć się przez dłuższy czas. Na przykład mleko. O ile go nie otworzysz, to może stać w kartonie nawet ponad 30 dni. Mieszkałem na wsi i wiem, jak szybko psują się naturalne produkty, czy to oznacza, że w tych produktach są pewne dodatki, które „zabijają” szybkie psucie się? A jeśli tak, to jak to wpływa na nasze zdrowia i te wszystkie obecne choroby cywilizacyjne. Co o tym myślisz?</p>
<h3>Jakie są pułapki?</h3>
<p>Predykcja popytu jest dość podchwytliwym zadaniem. Może się okazać, że są pewne pułapki, których algorytm może nie przewidzieć. Od razu wyjaśnię, że ten problem wynika z tego, że uczenie maszynowe jest bardzo ograniczone do przewidywania przypadków, które już wydarzyły się w przeszłości. Jak na razie, dość słabo sobie radzi z tak zwanym rozumowaniem. To dlatego przeciętny człowiek w pewnych sytuacjach radzi sobie lepiej niż ML.</p>
<p>Podam Ci przykład. Wyobraź sobie, że w dzień, kiedy temperatura powietrza wynosi do 20 stopni, ludzie kupują zwykle 100 butelek wody (założyłem 100, jako konkretną liczbę, na której będzie łatwo dalej robić obliczenia). Mamy 15 stopni, zwykle sprzedaje się 100 butelek. Mamy 18 stopni, sprzedaje się też około 100 butelek. Jak myślisz, ile sprzedamy, kiedy będzie 25 stopni? Pewnie na poziomie intuicji czujesz, że więcej, np. 120 (czyli 20% więcej). Jak myślisz, ile sprzeda się butelek wody, kiedy temperatura będzie około 30 stopni? Pewnie Twoja odpowiedź brzmi: jeszcze trochę więcej np. 150 butelek. I jeszcze jedno pytanie, jaka będzie sprzedaż przy 35 stopniach? Jeśli pomyślisz, co dla Ciebie oznacza 35 stopni ciepła, to wtedy czujesz, że chcesz się napić po raz kolejny, więc pewnie Twoja odpowiedź będzie, że co najmniej 200 lub więcej butelek.</p>
<p>Zobacz, że w pewnym momencie wzrost popytu na wodę jest wykładniczy. Jak zaczniesz o tym myśleć, to jest bardzo oczywiste, przecież jak jest temperatura około 35 stopni, to pijemy znacznie więcej wody. Teraz uwaga! O ile taka sytuacja nie pojawiła się wcześniej (z odpowiednią powtarzalnością, a nie tylko jako wyjątek), bo wtedy algorytm może się tego nauczyć, ale bardzo ciężko jest się algorytmowi domyśleć, że będzie punkt przegięcia w przyszłości, jeśli wcześniej nie widział danych. Tym bardziej że wzrost po tym punkcie jest wykładniczy. To jest przykład z życia wzięty, kiedy mimo tego, że popyt na wodę przy temperaturze wyższej niż 20 stopni był mnożony na wszelki wypadek przez współczynnik X, to i tak przy większych temperaturach popyt rósł gwałtownie i zaczęło brakować wody w sklepie.</p>
<p>Kolejna pułapka jest taka, że model uczy się na dostępnych danych. Jeśli widzimy, że wszystkie produkty zostały sprzedane, to oznacza, że dobraliśmy idealną wartość produktów i nic się nie marnuje. Prawda? Dlatego model traktuje, że to jest „idealna” wartość popytu i próbuje optymalizować model, opierając się na tych liczbach. Jak na razie wszystko brzmi zgodnie z planem. Pomyśl jeszcze trochę. A co jeśli w połowie dnia zabrakło chleba? W drugiej połowie dnia przyszło setki chętnych po chleb, a jego już nie było. Naturalnie to oznacza, że chleba musi być więcej, a jeśli patrzymy tylko na dane, to wydaje się, że mamy sytuację idealną i chleba jest w sam raz. Bo w danych brakuje kontekstu, że przyszło jeszcze 100 osób chętnych i wyszli bez chleba.</p>
<p>To dlatego, tak naprawdę idealnie jest, gdy coś zostaje na półce, niż gdy sprzedaje się wszystko. Bo wtedy wiemy, jak dużo zostało. Czy to jeden bochenek chleba, czy może druga skrajność, np. tysiąc? Wtedy model lepiej rozumie kontekst. Z drugiej strony, jest to dość kosztowne dla biznesu. Co to oznacza, że coś zostanie na półce? Dość często oznacza to marnowanie produktów, w szczególności, jeśli mówimy o takich, które szybko się psują. Co zrobić? To już bardzo zależy od odwagi i mądrości osób zarządzających biznesem, warto próbować znaleźć złoty środek. Ewentualnie chociaż raz na jakiś czas próbować zamawiać trochę więcej niż model powiedział, żeby sprawdzić, jak duży jest popyt :).</p>
<h2>Przykład #2 Prognozowanie sprzedaży w przedziale czasowym (ang. <em>sales forecasting</em>)</h2>
<p>Firma, która umie zarządzać lejkiem sprzedażowym pod kątem prognoz, ma znacznie większą przewagę nad firmami, które tego nie potrafią. Oczywiście predykcja sprzedaży z dużym wyprzedzeniem jest bardzo trudnym tematem, bo rozbieżność prognozowanych wyników może być ogromna. Z drugiej strony, kontrola w tym obszarze jest kluczowa. Dlatego, po pierwsze sprzedaż należy traktować jako proces, lecz potrzeba czegoś więcej niż zwykła intuicja, żeby firma była w stanie przewidzieć potencjalne problemy i mieć czas, żeby na to odpowiednio zareagować.</p>
<p>Tak naprawdę ten temat jest znacznie szerszy, niż tylko powiedzenie, że pod koniec miesiąca firma zarobi X złotych. Gdzieś tam pod spodem pojawia się konieczność wykonania kilku kroków. Przerabiałem te problemy na własnej skórze i to dlatego wiem, na ile one potrafią być trudne.</p>
<h3>Jakie to są problemy?</h3>
<p>Może być ich wiele i to bardzo zależy od firmy. Od tego jaka jest kultura sprzedaży, jak wyglądają procesy sprzedaży i czy w ogóle są jakiekolwiek. Jak pokazuje doświadczenie, to bardzo zależy od osób zarządzających. Przykład z życia wzięty. Zespół, który sprzedawał był raczej otwarty na spójność, natomiast kierownik tego zespołu czuł się mało komfortowo, żeby być spójnym z procesami. Swoją drogą, od razu powiem, że często widzę ludzi, którzy mają fajne talenty, ale pracują na cudzym miejscu… Mało tego, bardzo mocno trzymają się tego miejsca (co jest dość łatwo wyjaśnić, bo boją się stracić regularną kasę, a kredyty i inne rzeczy cisną). Natomiast, czy jest to dobra strategia na dłuższy czas? Zadam Ci pytanie do rozważenia. Jak myślisz, czy Twoje obecne miejsce pracy jest Twoje, czy jednak zajmujesz cudze? Pomyśl.</p>
<p>Wracam lejka sprzedażowego. Robiłem osobną prezentację na jednej z konferencji, gdzie bardziej szczegółowo wyjaśniłem jeszcze wiele innych potencjalnych problemów, które osobiście spotkałem. Jeśli będzie na to zainteresowanie, być może nagram osobny webinar na ten temat. Proszę, daj mi znać, czy jesteś tym zainteresowany.</p>
<p>Podsumowując: predykcja sprzedaży jest możliwa tylko wtedy, kiedy został wdrożony proces sprzedaży. Każdy w zespole (wraz z kierownikiem) pilnuje spójności, a wszystkie zdarzenia, które występują, trafiają do CRM-a lub innego systemu. Teraz bardziej nowoczesne systemy zarządzania są tak zrobione, żeby zebrać jak najwięcej danych, nie prosząc o to użytkownika. Na przykład, dzwoniąc poprzez CRM, zostawiasz w systemie ślad, że był kontakt z klientem. Podobnie, kiedy wysyłasz e-mail.</p>
<p>Cyfrowy ślad aktywności sprzedawcy z klientem jest bardzo istotny, bo pamiętaj, że model uczy się na danych, które posiada. Jeśli np. sprzedawca spotyka się klientem na lunch, wysyła mu SMS-y lub dokonuje innych czynności, które nie są zarejestrowane w systemie, to ciężko potem zbudować dobry model, który skutecznie „poznał” rzeczywistość. Jeśli masz dobre dane, spójny proces sprzedaży to uczenie maszynowe może Ci pomóc robić skuteczne prognozy.</p>
<h2>Przykład #3 Prognozowanie odchodzenia klientów (ang. <em>churn prediction</em>)</h2>
<p>Pozyskiwanie nowych klientów jest dosyć drogą zabawą. Trzeba najpierw zapłacić za reklamę, żeby klient dowiedział się, że Twoja firma istnieje, następnie trzeba zbudować zaufanie (i to czasem jest dość czasochłonny proces), następnie zaoferować odpowiednią usługę i następnie klient to kupuje. Dlatego opłaca się zatrzymać klientów, których już masz.</p>
<p>Ludzie po jakimś czasie się frustrują. Ktoś na to potrzebuje więcej czasu, ktoś inny mniej. Mówi się, że wszędzie dobrze, gdzie nas nie ma. Dlatego, nawet jeśli starasz się dbać o klienta, to i tak Twoja firma ma swoje ograniczenia. Tym bardziej, jeśli mało dbasz o klientów, to przyspieszasz decyzję klienta o odejściu. Pojawia się kluczowe pytanie, co zrobić z tą informacją? Oprócz tego, że świadomość boli (w szczególności na początku), to może warto podjąć konkretne działania, żeby ratować sytuację. Można spróbować odświeżyć relacje z klientem, dając mu jakąś dodatkową wartość.</p>
<p>Najbardziej uniwersalna wartość to dać pieniądze wprost. Jednak to zaburza cały system biznesu, przecież pieniądze wprost daje klient, dlatego ta opcja raczej odpada (bo inaczej nie wiadomo, kto na kim robi biznes). Wtedy można pomyśleć o takiej wartości, która dla biznesu „kosztuje” mniej, ale jest zauważalna dla klienta – na przykład, jakaś dodatkowa usługa gratis. Oczywiście zakładam, że już masz odrobioną pracę domową i wiesz, co jest wartością dodatkową dla klienta. Tylko jest jeden problem biznesowy, jeśli dajesz dodatkową wartość wszystkim klientom, to nagle okazuje się, że firma ma znacznie więcej wydatków, niż planowała. Wtedy dział finansowy ma stres i proponuje zmienić strategię. Właśnie i to jest moment, kiedy biznes zastanawia się, czy jest możliwość przewidzieć, ilu klientów zamierza odejść w pewnej perspektywie czasowej.</p>
<p>Uwaga. Predykcja prawdopodobieństwa, że klient odejdzie, to jest zadanie zwykłej klasyfikacji binarnej. Gdzie na wejściu modelu są klienci z różnymi cechami (jak długo są klientami, ile płacą, jak używają naszej usługi itd.), a na wyjściu wartość pomiędzy 0 i 1. Gdzie 1 oznacza, że klient odejdzie na 100%.</p>
<p>Natomiast, można na to popatrzeć z trochę innej perspektywy czasowej: ilu klientów odchodzi w pewnym przedziale czasowym. Akurat takie podejście ma sens dla firm z większą liczbą klientów, np. 50 tysięcy lub jeszcze więcej. Wtedy można zobaczyć dynamikę i próbować już na poziomie strategicznym naprawić sytuację. Zrozumieć jak te lub inne czynniki wpływają na odchodzenie klientów oraz jak podejmowane działania pomagają (lub nie) rozwiązać ten problem.</p>
<h3>Jakie mogą być pułapki?</h3>
<p>Decyzja o odejściu może być dość często złożonym, emocjonalnym i niejednokrotnie irracjonalnym procesem. Dlatego warto zdawać sobie sprawę, w jakim stopniu ważny jest kontekst. Podam Ci przykład. Akcja ratownicza ma być dobrana do kontekstu. Część osób może zmienić zdanie nawet w ostatniej chwili, wystarczy odpowiednio pokazać wartości. Dla innych osób taka decyzja jest podejmowana z pewnym wyprzedzeniem i zobowiązaniem wobec innych. Nawet, wtedy gdy klient zobaczy dodatkowe wartości i przekona się, że to ma sens, to i tak decyzja o odejściu została już podjęta. Dlatego aby stwierdzić, czy akcja ratunkowa jest skuteczna, trzeba uważnie przeanalizować kontekst.</p>
<h2>Przykład #4 Prognozowanie wartości kryptowalut w przedziale czasowym</h2>
<p>Kryptowaluty są teraz bardzo gorącym tematem. Chociaż ten przykład dotyczy również zwykłych rynków finansowych. Gdy mówimy na temat predykcji na rynku finansowym, istnieją dwa podejścia: analiza fundamentalna i analiza techniczna. Jedna ze szkół skupia się tylko na patrzeniu na wykres, zdarzeniach z przeszłości, żeby powiedzieć o tym co będzie w przyszłości. Takie podejście jest bardzo krytykowane. Wiele osób twierdzi, że jest to proces zbyt chaotyczny, żeby zakładać, że w przeszłości był wzorzec X i on powtórzy się w przyszłości.</p>
<p>Jak to zwykle bywa, każdy ma trochę racji. Rynki finansowe są bardzo ciekawym przykładem. Okazuje się, że jeśli odpowiednio podejść do analizy technicznej, to można budować bardzo ciekawe modele, które zaczynają działać.</p>
<p>Jeśli krzywisz się, jak to mówię, i pytasz siebie lub mnie: dlaczego takie podejście ma prawo działać? Podam Ci kilka powodów, w jaki sposób model może zacząć zachowywać się w sposób bardziej kontrolowany.</p>
<p>Jest hipoteza, którą można zauważyć, że ten rynek jest regulowany w taki sposób, że więksi gracze budują sztuczne fale. Dlaczego to robią? Odpowiedź jest bardzo prosta: na panice zarabia się najlepiej. Najpierw trzeba zacząć udawać, że łódź tonie, a następnie, gdy ludzie na emocjach zaczynają sprzedawać i kurs spada, kupić je z powrotem. Ostatecznie twórca fal zostaje na plusie, czasem nawet na dużym.</p>
<p>Swoją drogą, mam pytanie, czemu fala oceanu może podchwycić i ponieść w ocean dużego słonia, natomiast mała rybka całkiem komfortowo czuje się w wodzie i płynie tam gdzie chce?<br />Jak myślisz?</p>
<p>Wracam do strategii finansowej. Dlatego sprawdza się strategia, żeby być rybką, która surfuje razem z dużą falą i korzysta z jej potencjału.</p>
<p>O tym planuję nagrać osobny odcinek, podczas którego opowiem więcej o modelach, które udało się zbudować i jak one działają. Również będę uczył jak robić predykcje w swoim kursie, o którym trochę później.</p>
<p>Mniej oczekiwany przykład. Czy zwracasz uwagę, że cena paliwa zmienia się w czasie? Oczywiście w dłuższym okresie czasu jak rok jest to zrozumiałe. Natomiast teraz mam na myśli krótsze przedziały czasowe, np. kilka dni czy tydzień. Może się okazać, że przewidując koszt paliwa, można będzie zaoszczędzić na kosztach. Ten przykład również będziemy przerabiać w trakcie kursu.</p>
<h2>Przykład #5 Prognozowanie ilości telefonów w <em>call center</em> w przedziale czasowym</h2>
<p>Jak często dzwonisz gdzieś i słyszysz, że jesteś dziesiąty w kolejce? Moim rekordem było, że jestem sto pięćdziesiąty w kolejce. Z czego to wynika? Są dwa elementy kluczowe. Jak dużo osób dzwoni po jednej stronie i dużo osób odbiera po drugiej stronie. Zakładając, że każda rozmowa ma pewną długość, to wtedy wiedząc, ile osób zadzwoni w pewnym przedziale czasowym, możemy lepiej zarządzać potrzebną ilością osób w call center w tym dniu.</p>
<p>Oczywiście ten problem jest dość złożony. Bo jak człowiek przyjeżdża do pracy, to raczej będzie pracować co najmniej kilka godzin. Mam teraz na myśli, że wdrożenia pewnych pomysłów jest mniej elastyczne w praktyce, niż w teorii. Natomiast nadal taka informacja może być bardzo pomocna do zarządzania zespołem. W szczególności, jeśli Twój zespół, który odpowiada za odbieranie telefonów to kilkaset czy kilka tysięcy osób.</p>
<h2>Przykład #6 Prognozowanie ile będzie awarii w przedziale czasowym</h2>
<p>Zgodnie z <a href="https://pl.wikiquote.org/wiki/Prawa_Murphy%27ego">prawem Murphy&#8217;ego</a>, Jeżeli coś może się zepsuć – zepsuje się na pewno (w szczególności na produkcji). Osobiście nauczyłem się tego, gdy byłem odpowiedzialny za architekturę większych systemów. Wtedy już jest oczywiste, jak bardzo istotne jest, by znajdować z wyprzedzeniem słabe ogniwa. Jeśli nie można ich naprawić, to przynajmniej możemy się zabezpieczyć przed negatywnymi skutkami.</p>
<p>Nieco inna perspektywa jest, jeśli działasz w świecie materialnym (a skoro słuchasz tego podcastu, to myślę, że tak jest), to wszystko psuje się wcześniej lub później. Jak na razie nie mamy jeszcze <a href="https://en.wikipedia.org/wiki/Perpetuum_mobile"><em>Perpetuum Mobile</em></a>. Znów z mojego doświadczenia, jeśli tylko mogę komuś delegować rzeczy związane z utrzymaniem serwera – to chętnie to robię. To jest trochę taka choroba zawodowa. Jeśli jesteś początkujący, to wydaje Ci się, że potrafisz wszystko. Czym więcej serwerów, przeróżnych technologii, tym czujesz się bardziej potężny. Z czasem biegun zmienia się i każdy kolejny serwer kojarzy się z problemami, które potencjalnie (jest to bardzo realne) mogą się wydarzyć. Mój kolega, który przez dłuższy czas pracuje jako iOS developer, boi się otwierać aplikacji na iPhonie, bo podejrzewa, że zaraz coś się popsuje :). Tak to już jest z tym chorobami zawodowymi.</p>
<p>Awarie zdarzają się, to możemy tylko zaakceptować. Natomiast skutki i koszt naprawy awarii mogą być wysokie. Jeśli jesteśmy w stanie powiedzieć, że coś może się popsuć, to wtedy możemy się na to przygotować. Na przykład zorganizować ekipę naprawczą, być może zamówić jakieś potrzebne do naprawy części itd. W ten sposób można wiele zaoszczędzić, ale też zachować twarz w trudnej sytuacji.</p>
<p>Osobiście miałem okazję robić predykcję na danych jednej firmy telekomunikacyjnej, w wyniku czego proces chaosu już staje się bardziej kontrolowany.</p>
<p>Jest wiele innych firm, które mogą skorzystać z takiej predykcji. Przede wszystkim firmy serwisowe. Zobacz, jak bardzo można usprawnić proces i zwiększyć lojalność klienta, kiedy z góry będzie wiadomo, że któraś część się zepsuje. O tym już wspomniałem wcześniej, np. <a href="https://www.konicaminolta.com"><em>Konica Minolta</em></a> zrobiła prototyp (być może jest to już wdrożone na produkcję), próbują przewidzieć z wyprzedzeniem, że jakaś część w drukarce może się popsuć.</p>
<p><iframe title="Wojciech Indyk - How to quickly prototype machine learning systems" width="960" height="540" src="https://www.youtube.com/embed/wZaTrkIKtE0?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe></p>
<p>Do tej grupy można również dołączyć przykłady z prognozą przeróżnych anomalii. Przykład trochę z innej branży. Jeśli spodziewaliśmy się na stronie, np. tysiąca użytkowników w punkcie czasowym X, a jest tylko stu, to oznacza, że coś poszło nie tak. Dość często przyczyną może być jakaś awaria lub tak zwany „zepsuty deployment”, czyli ostatnio wprowadzili zmiany i coś się gdzieś popsuło. Dość często w złożonych systemach jest tak, że zmieniasz coś w obszarze X i testujesz go, wszystko jest OK, wrzucasz zmiany na produkcję i potem okazuje się, że popsuło się coś w obszarze Y.</p>
<h2>Przykład #7 Prognozowanie zanieczyszczenie powietrza w przedziale czasowym</h2>
<p>Kraków jest pięknym miastem, w którym mieszkam już ponad 12 lat i bardzo go lubię. Natomiast to miasto ma jedno wyzwanie, w szczególności w zimie, jest to jakość powietrza. Są ludzie bardziej uczuleni na zanieczyszczenia powietrza, którzy muszą na to bardzo uważać. Czasem nawet muszą zakładać maski.</p>
<p>Kiedyś rozważałem przeprowadzkę do innego miasta. Być może gdzieś w góry, np. do Zakopanego. Jednakże okazało się, że w zimie w górskich miasteczkach jest często znacznie gorzej, bo ludzi palą w piecach przeróżnymi cudami. Z ciekawości zacząłem analizować sprawę i okazało się, że w Warszawie, w szczególności w ostatnich latach, sytuacja też wygląda dość podejrzanie. Żartobliwie mówię, że Warszawa obraziła się na Kraków, próbuje wybić się na pierwsze miejsce i chyba ma szansę na to&#8230;.</p>
<p>Pytanie, czy jest możliwość przewidzenia, jakie będzie zanieczyszczenie? Do tego są potrzebne dane. W Krakowie jakiś czas temu powstał startup &#8211; airly. Można zamówić sobie miernik jakości powietrza i zamontować go np. na swoim balkonie. Dzięki coraz większej ilości czujników siatka jest coraz gęstsza. Mając dane, można robić dokładniejsze predykcje, próbować również wyciągać bardziej globalne wnioski. Jak na to wpływa na przykład pogoda lub inne zewnętrzne czynniki.</p>
<h2>Przykład #8 Prognozowanie dynamicznej ceny</h2>
<p>Gdy jest duży popyt na Ubera czy Taxify, to cena nagle zauważalnie się zwiększa, ale i tak są chętni. Jak to działa? Robi się predykcję w czasie, ile będzie wart przejazd taksówką w zależności od pewnych parametrów środowiska. W dużym uproszczeniu, czym więcej zamówień tym drożej, ale tak naprawdę jest tam znacznie więcej różnych parametrów. Między innymi dostępność samochodów na tym obszarze.</p>
<p>Podobnie jest z samolotami. Cena bardzo zależy od tego, kiedy kupujesz. Są firmy, które specjalizują się tylko w tym, żeby przewidzieć koszt na moment X w zależności od różnych czynników.</p>
<h2>Przykład #9 Prognozowanie wystąpienia choroby w przedziale czasowym</h2>
<p>Już wcześniej wspomniałem, że świat materialny jest tak skonstruowany, że wszystkie jego części psują się z czasem. Jest to pewien cykl. Kwestia tylko, kiedy to się stanie. Podobnie jest z ludźmi. Jeśli mówimy o ciele człowieka, to w dużym uproszczeniu możemy je potraktować jako „pojazd”, który też się zużywa i ostatecznie z czasem się psuje. Dlatego uczenie maszynowe można również zastosować do prognozowania, co stanie się z człowiekiem w czasie, w zależności od tego, co jest teraz.</p>
<p>Mało tego, taka prognoza może znacznie poprawić jakość, jeśli do tego dodamy analizę genetyczną, która teraz rozwija się bardzo szybko.</p>
<h2>Przykład #10 Prognozowanie pojazdów, tirów, kontenerów, palet&#8230;</h2>
<p>Już mówiłem na temat logistyki, na koniec jeszcze opowiem o trochę innym wyzwaniu. Logistyka próbuje łączyć wiele kropek, np. ile towarów trzeba będzie przewieźć z punktu A do punktu B? Ile będzie do tego potrzebnych pojazdów? Ile będzie potrzebnych dodatkowych rzeczy, np. kontenerów czy palet?</p>
<p>Umiejętne odpowiedzi na wszystkie wyżej wymienione pytania, pomogą sporo zaoszczędzić, chociażby na kosztach utrzymania całej infrastruktury, ale też mogą poprawić inne metryki, jak na przykład dostawę towarów na czas.</p>
<p>Już wspomniałem w poprzednim przykładzie temat taksówek. Można dodać jako przykład logistyczną predykcję, w których obszarach będzie potrzeba najwięcej samochodów i jak zarządzać nimi z wyprzedzeniem.</p>
<p>Mam nadzieję, że teraz w Twojej głowie lepiej poukłada się, czym są szeregi czasowe i jakie korzyści dla biznesu mogą przynieść. Moim celem było podać więcej przykładów, żeby umożliwić Twojej wyobraźni, zaadaptować to myślenie dla Twojego przykładu.</p>
<p> </p>
<p><a href="https://dataworkshop.eu/pl/time-series?utm_source=bm39&amp;utm_medium=podcast&amp;utm_campaign=my-story&amp;utm_id=marta-data-analyst&amp;utm_term=timeseries&amp;utm_content=post"><img decoding="async" class="aligncenter wp-image-8987 size-large" src="https://biznesmysli.pl/wp-content/uploads/2018/08/ts-1024x576.png" alt="" width="960" height="540" srcset="https://biznesmysli.pl/wp-content/uploads/2018/08/ts-1024x576.png 1024w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts-300x169.png 300w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts-768x432.png 768w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts-1536x864.png 1536w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts-1140x641.png 1140w, https://biznesmysli.pl/wp-content/uploads/2018/08/ts.png 1920w" sizes="(max-width: 960px) 100vw, 960px" /></a></p>
<p> </p>
<h2><a href="https://bit.ly/3YLMfH0">Praktyczna prognoza szeregów czasowych</a></h2>
<p class="p1">Zapraszam Cię do mojego autorskiego kursu &#8222;Praktyczne prognozy szeregów czasowych&#8221; w Python <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p class="p1"> </p>
<p class="p1">Skupimy się na rozwiązaniu praktycznych problemów biznesowych takich jak:</p>
<ul>
<li><strong style="font-size: revert; color: initial; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;">prognozowanie popytu na produkty dla sieci sklepów</strong><span style="font-size: revert; color: initial; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;"> (900k+ klientów, 2,5k+ unikalnych produktów, ~1k magazynów)</span></li>
<li><strong>prognozowanie sprzedaży w siecie sklepów</strong> (łączna sprzedaż 5 mld+, 1,1k+ sklepów, 4k+ klientów)</li>
<li><strong>prognozowanie popytu energii w Polsce</strong> (rzeczywiste dane)</li>
<li><strong>prognozowanie cen na paliwa w Niemczech</strong> (rzeczywiste dane)</li>
<li>wiele innych</li>
</ul>
<h3 class="p1">Poznasz takie algorytmy jak:</h3>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> ARMA, ARIMA, SARIMA</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Exponential Smoothing, czyli modele (Browna, Holta, Wintersa)</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Generalized additive model (GAM)</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Boosting model (+ inżynieria cech dla szeregów czasowych)</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Deep Learning: LSTM<span class="Apple-converted-space"> </span></p>
<p> </p>
<h3 class="p1">Jak to działa?</h3>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 6 tygodni = 6 modułów</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 100% online</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> gotowe środowisko pracy = niczego nie instalujesz lokalnie</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> wiedzę o narzędziach i bibliotekach zdobywasz pracując z danymi</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> wykonujesz swój projekt w trakcie, który zasila Twoje CV</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> uczysz się tylko tego, co sprawdzone w praktyce</p>
<p class="p1"><img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> kodujesz od samego początku.</p>
<p> </p>
<p>W trakcie kursu poznasz, jak działać efektywnie w tym obszarze, w szczególności chodzi mi o zastosowanie uczenia maszynowego i dlaczego podejście ML zwykle (chociaż kusi mnie, żeby powiedzieć: zawsze) zachowuje się lepiej niż inne metody. W ciągu 6 tygodni poznasz wiele praktycznych przykładów, np. predykcję popytu, predykcję kosztu paliwa. Podzielę się z Tobą również moim doświadczeniem w predykcji kryptowalut. Polecam kurs osobom, które już przerobiły mój pierwszy kurs, lub mają pewne podstawy uczenia maszynowego.</p>
<p> </p>
<hr />
<figure id="attachment_1161" aria-describedby="caption-attachment-1161" style="width: 494px" class="wp-caption aligncenter"><a href="https://biznesmysli.pl/wp-content/uploads/2018/08/Michal.jpg"><img decoding="async" class="size-full wp-image-1161" src="https://biznesmysli.pl/wp-content/uploads/2018/08/Michal.jpg" alt="Michał Czarnecki" width="494" height="494" srcset="https://biznesmysli.pl/wp-content/uploads/2018/08/Michal.jpg 494w, https://biznesmysli.pl/wp-content/uploads/2018/08/Michal-150x150.jpg 150w, https://biznesmysli.pl/wp-content/uploads/2018/08/Michal-300x300.jpg 300w, https://biznesmysli.pl/wp-content/uploads/2018/08/Michal-270x270.jpg 270w" sizes="(max-width: 494px) 100vw, 494px" /></a><figcaption id="caption-attachment-1161" class="wp-caption-text">Michał Czarnecki</figcaption></figure>
<p> </p>
<p>I na koniec zapraszam Cię do posłuchania opinii Michała, który jest absolwentem drugiej edycji kursu.</p>
<p><b>Cześć Michał. Przedstaw się, kim jesteś, czym się zajmujesz, gdzie mieszkasz.</b></p>
<p>Cześć. Nazywam się <a href="https://www.linkedin.com/in/michalczarnecki/">Michał Czarnecki</a>. Pochodzę z Trójmiasta, obecnie mieszkam w Warszawie. Jestem przedsiębiorcą, działającym w obszarze technologii IT i od kilku lat współpracuję z dużym wydawnictwem, w którym wspieram procesy produkcji, utrzymanie portali, wdrożenia e-commerce oraz przetwarzanie dużych zbiorów danych.</p>
<p><b>Michale, co ostatnio czytałeś?</b></p>
<p>Jestem w trakcie czytania „Far Future. Historia jutra” napisanej przez Infuture Institute Natalii Hatalskiej. Książka w formie raportu przedstawia prognozy dla świata w 2068 roku i stara się odpowiedzieć: gdzie będziemy mieszkać, co będziemy jeść, jak będziemy pracować, jak będziemy uprawiać seks w przyszłości. Prognozy te mogą rodzić przerażenie, czy zasmucać, że wkrótce roboty zaczną za nas myśleć. Na szczęście przyszłość tworzymy my sami, ona nie jest nam dana i wszystko, co jest prognozowane, możemy jeszcze zmienić. Także polecam tę książkę jak najbardziej.</p>
<p><b>Brzmi ciekawie. Tym bardziej że w ciągu 50 lat naprawdę wiele rzeczy może się wydarzyć i pozmieniać. Teraz przejdę do dzisiejszego tematu. Jak to się stało, że zainteresowałeś się tematem uczenia maszynowego?</b></p>
<p>Pierwszy raz ze sztuczną inteligencją zetknąłem się jeszcze w trakcie studiów, działając w kole naukowym Politechniki Gdańskiej. Prowadzącym to koło był doktor Buler, który działał w zespole Hugo de Garisa. Oni na japońskim uniwersytecie w Kioto prowadzili badania pod nazwą Roboconeco, które miały na celu zbudowanie sztucznego mózgu, który będzie w stanie symulować mózg kota. W ramach tego koła naukowego robiliśmy pierwsze sieci neuronowe, przetwarzaliśmy dane, niestety po wielu miesiącach prób wyniki nie były zadowalające, skończyło się finansowanie tego projektu w Japonii i cały projekt upadł.</p>
<p><b>Jest to dość imponujące, powiedz dokładnie, kiedy to było?</b></p>
<p>To było 95-96 rok, oni postawili sobie za cel, że do 2001 zbudują ten mózg, ale niestety to się nie udało.</p>
<p><b>Od tej pory minęło już 20 lat. W tym czasie naprawdę wiele się zmieniło, w szczególności, jeśli chodzi o dostępność bibliotek, budowanie sieci neuronowych, teraz to środowisko wygląda bardziej komfortowo i przyjemniej niż wtedy. Przejdźmy do twojej opinii na temat kursu. Jesteś absolwentem drugiej edycji kursu „Praktyczne uczenie maszynowe” na DataWorkshop, gdzie między innymi było pokazane, jak tworzyć sieci neuronowe. Powiedz, co Ci się najbardziej spodobało w kursie.</b></p>
<p>Przede wszystkim praktyka, było bardzo dużo ćwiczeń, dużo pracy samodzielnej, była wymiana zdań w trakcie sesji podsumowującej na koniec tygodnia, no i konkurs, który zorganizowałeś z fajną nagrodą. Ten konkurs wzniecił w uczestnikach jeszcze większe zaangażowanie w pogłębianie wiedzy, no i była ta nutka rywalizacji. Wydaje mi się, że niejeden z uczestników zarwał nockę, żeby uzyskać jak najlepszy wynik, zwłaszcza pod sam koniec konkursu widać było duże emocje i cały czas próbowaliśmy ulepszać swoje rozwiązania. Także było to bardzo motywujące.</p>
<p><b>Czy coś Cię zaskoczyło w trakcie kursu?</b></p>
<p>Nie spodziewałem się, że będzie aż tak mocno praktycznie. Oczywiście na początku, jeszcze przed kursem, sygnalizowałeś, żeby wykroić sobie ten czas, żeby nic nam nie przeszkadzało, żeby się całkowicie poświęcić temu wszystkiemu i rzeczywiście trzeba było poświęcić ten czas, wykonać dużo pracy, ale to praktyczne podejście, praktyczne przykłady z życia bardzo mi się podobały i mnie zaskoczyły. Dzięki temu dużo łatwiej było liznąć trochę teorii i zanurzyć się w rozwiązywanie konkretnych życiowych problemów. Sam często musiałem gdzieś dociekać, doczytywać, szperać w Internecie, jak zrealizować jakieś zadanie, jak coś pracuje – to też rozwijało całą wiedzę w obszarze <em>machine learning</em>.</p>
<p><b>Już od dawna zajmujesz się tematami IT, a teraz już nie tylko programujesz samodzielnie, bo masz również zespół. Zastanawiam się, czy już masz plan na zastosowanie uczenia maszynowego w praktyce, być może masz własny pomysł na projekt, być może chcesz uczestniczyć w jakimś konkursie. Powiedz, jak zamierzasz wykorzystać wiedzę zdobytą w kursie?</b></p>
<p>Tak praktycznie to wyszło dosyć naturalnie – w firmie, z którą współpracuję, toczą się tematy e-commerce, gdzie są duże zbiory danych i tak naprawdę w tych obecnie wdrażanych projektach bazy danych są po naszej stronie i po stronie dostawców, zadaniem postawionym przed nami jest „zmatchowanie” tych baz, połączenie produktów z jednej bazy z drugą. W zespole, z którym współpracuję, z zastosowanie znalazły sieci neuronowe, które na podstawie podanych cech uczą się łączyć te produkty. W tym momencie skuteczność tego dochodzi do 70-75%, co jest weryfikowane jeszcze czynnikiem ludzkim, ale pozwoli nam w przyszłości wykluczyć pracę człowieka na tym polu. Myślę, że automat będzie w stanie świetnie to wykonywać. Drugim obszarem jest rozpoznawanie zdjęć z produktami odzieżowymi. Budowane rozwiązanie będzie w stanie rozróżniać kolory, rodzaje ubioru, czy jest to bluzka, sukienka, jakiego rodzaju bluzka, czy to jest t-shirt, czy bluzka z długim rękawem i tak. Wspieramy się też już gotowymi narzędziami dostępnymi na platformach Google czy Microsoftu. Efekty są całkiem obiecujące.</p>
<p><b>Brzmi to bardzo ciekawie. Bardzo się cieszę, że starasz się wykorzystać w praktyce wiedzę zdobytą z kursu. Jest to dla mnie bardzo ważne. Komu poleciłbyś przerobienie kursu na DataWorkshop?</b></p>
<p>Kurs polecam developerom, którzy chcieliby poszerzyć swoją wiedzę o obszary uczenia maszynowego i sztucznej inteligencji. Myślę, że każdy developer prędzej czy później trafi na problem do rozwiązania, w którym będzie mógł zaimplementować uczenie maszynowe. Widziałbym tutaj także managerów zarządzających zespołami IT, aby mogli trochę lepiej zrozumieć tworzone rozwiązania i wspierać zespół swoją wiedzą. Myślę także, że osoby, które są spoza branży IT, mogą zafascynować się przetwarzaniem ogromnych ilości danych, usprawnianiem otaczającego nas świata, może w przyszłości one znajdą pracę w tej branży, bo jest ona tak naprawdę obecna w każdej dziedzinie życia od samochodów poprzez inteligentne lodówki po tematy zdrowia i opieki.</p>
<p><b>Michale, bardzo dziękuję Ci za znalezienie czasu i podzielenie się swoją opinią. Życzę Ci samych sukcesów również w wykorzystaniu uczenia maszynowego. Do usłyszenia, do zobaczenia na przykład na konferencji 13 października w Warszawie.</b></p>
<p>Dziękuję bardzo Vladimir. Życzę również dużo sukcesów. Mam nadzieję, że szybko do zobaczenia na kolejnej edycji kursu na jeszcze bardziej zaawansowanym poziomie i również na konferencji. Dzięki.</p><p>Artykuł <a href="https://biznesmysli.pl/10-przykladow-jak-uczenie-maszynowe-moze-pomoc-twojemu-biznesowi/">10 przykładów jak uczenie maszynowe może pomóc Twojemu biznesowi</a> pochodzi z serwisu <a href="https://biznesmysli.pl">Biznes Myśli</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://biznesmysli.pl/10-przykladow-jak-uczenie-maszynowe-moze-pomoc-twojemu-biznesowi/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
