SlideShare uma empresa Scribd logo
1 de 36
TOMASZ BRZEZIŃSKI
NIESTANDARDOWE METODY MACHINE LEARNING
Podnoszenie efektywności biznesu przez zastosowanie
podejścia symulacyjnego
Jak działa iTaxi?
Problem: optymalizacja algorytmu wydawania
zleceń
Którą taksówkę wysłać?
Dostarczyć taksówkę:
•jak najszybciej
•jak najlepszą
•z żądaną stawką za kilometr
•spełniającą dodatkowe wymagania (np. liczba osób)
•tak, aby móc skutecznie zrealizować kolejne zlecenia
Zadanie
Dostarczyć taksówkę:
•jak najszybciej: mediana czasu dojazdu
•jak najlepszą: średni scoring kierowcy
•tak, aby móc skutecznie zrealizować kolejne zlecenia:
reliability ratio (ilość kursów/popyt)
KPI
Problem
•wielokryterialny
•nieliniowy i niesprowadzalny do liniowego
•dyskretny
•niestabilny w czasie
•w warunkach niepewności
Dlaczego to jest trudne?
System cyklicznej poprawy algorytmu
Benchmark (100%) Benchmark (90%) Benchmark (50%) Przegrany (10%) Przegrany (0%)
Kandydat (10%) Pretendent (50%)
Zwycięzca - nowy
benchmark (90%)
Zwycięzca - nowy
benchmark (100%)
Testy A/B
Benchmark (100%)
(50%)
Przegrany (10%) Przegrany (0%)
Kandydat (10%)
Pretendent
(40%)
Zwycięzca -
nowy
benchmark
(80%)
Benchmark
(50
(…)
Kandydat 2
(10%)
Przegrany (0%)
Pretendent
(40%)
(…)
Kandydat 4
(10%)
(…)
Benchmark (100%)
Benchmark
(90%)
Benchmark
(50%)
Przegrany (10%) Przegrany (0%)
Kandydat (10%)
Pretendent
(40%)
Zwycięzca -
nowy
benchmark
(80%)
Benchmark
(50%)
(…)
Kandydat 2
(10%)
Przegrany (0%)
Kandydat 3
(10%)
Pretendent
(40%)
(…)
Kandydat 4
(10%)
(…)
Cykliczne testy A/B
Benchmark (100%)
Benchmark
(90%)
Kandydat (10%)
Benchmark (100%)
Benchmark
(90%)
Benchmark
(50%)
Kandydat (10%)
Pretendent
(40%)
Kandydat 2
(10%)
Nowe rozwiązanie Test w symulatorze
Optymalizacja
parametrów w
symulatorze
Benchmark w teście
A/B
Nowy benchmark/
przegrany
Pretesting w symulatorze
Testowanie w rzeczywistości ma znaczący wpływ na
biznes
A jeśli wyniki w rzeczywistości odbiegają od
symulacji?
Kompletny system
Test w
symulatorze
Testy A/B
Analiza
rozbieżności
Modyfikacja
symulatora
Czym jest symulacja?
• Symulacja: przybliżone odtwarzanie zjawisk czy zachowań jakiegoś
obiektu za pomocą jego modelu (fizycznego lub matematycznego)
• Model matematyczny: grupa funkcji wiążących ze sobą różne zmienne
i w ten sposób opisujących powiązania między wielkościami
w układzie
Symulacja
Symulacyjne podejście do problemu iTaxi–
założenia/uproszczenia
rozważmy zbiór identycznych sferycznych taksówek…
ze zbiornikiem paliwa o nieskończonej pojemności…
poruszających się ruchem jednostajnym prostoliniowym…
po powierzchni wycinka quasigeoidy…
w celu obsługi identycznych pasażerów…
o stałych i niezmiennych w czasie preferencjach…
składających zamówienia wg rozkładu Poissona…
Jak nie odlecieć?
Uproszczenia:
• Eliminacja zdarzeń tak rzadkich, że nie wpływających na wynik
• Eliminacja wzajemnie znoszących się odchyleń
• Eliminacja nieestymowalnych odchyleń
Nie wolno:
• Uśredniać istotnych zmienności
• Ignorować niestabilności
• Ignorować istotnych korelacji zjawisk
• Zakładać znajomości informacji, których w realnej sytuacji nie mamy
Można rozważyć:
• Uproszczenie (np. uśrednienie) istotnego zjawiska, jeśli strata dokładności jest
rekompensowana szybkością obliczeń
Zasady budowy modelu
Taksówki mają identyczną prędkość
Poruszają się po liniach prostych
Nie ma zleceń grupowych (kilka taksówek)
Nie ma zleceń terminowych
Pasażer nie zmienia swoich decyzji
Uproszczenia
Zjawiska mają określone rozkłady, które muszą być odzwierciedlone:
- rozkład zleceń w przestrzeni i czasie
- rozkład dostępności taksówkarzy w przestrzeni i czasie
- rozkład scoringów
- rozkład cierpliwości pasażerów
- rozkład prawdopodobieństwa odrzucenia zlecenia przez taksówkarza (rozkłady są różne dla
poszczególnych taksówkarzy)
Wielowymiarowe rozkłady nie są dekomponowane na poszczególne wymiary
Poszczególne miasta mają inne charakterystyki
Przejezdność miasta (prędkość poruszania się) zmienia się w czasie i jest niejednorodna w
przestrzeni
W danym momencie nie mamy wiedzy o przyszłości
Poszczególne czynności (zamówienie taksówki, przyjęcie zlecenia przez taksówkarza itp.) trwają
określony czas
Czego nie uprościliśmy?
Rozkłady szacowane metodami analitycznymi:
- rozkład scoringów
- rozkład prawdopodobieństwa odrzucenia zlecenia
przez taksówkarza
Popyt i podaż – symulacja metodami Monte Carlo
Szacowanie rozkładów – główny problem
Metoda Monte Carlo
metoda Monte Carlo
• Stanisław Ulam
• Metoda jest używana do modelowania
procesów zbyt złożonych do obliczania
analitycznego
• Aby zamodelować wynik procesu, losujemy
odpowiednio dużo wielkości
charakteryzujących proces, po czym
dokonujemy przetworzenia algorytmicznego
Monte Carlo - przykład
Dla danego dnia znajdujemy dni „podobne”
Zlecenia ze wszystkich dni podobnych stanowią pulę
losowania
Określamy intensywność popytu
Losujemy (ze zwracaniem) potrzebną liczbę zleceń
Dla danego zlecenia bierzemy jego pełną
charakterystykę (położenie, czas, parametry pasażera)
Zastosowanie Monte Carlo w symulacji popytu
Dla danego dnia znajdujemy dni „podobne”
Pulę losowania stanowią wszystkie sesje dostępności
kierowców
Określamy intensywność podaży
Losujemy (ze zwracaniem) potrzebną liczbę sesji dostępności
Dla danej sesji bierzemy jej pełną charakterystykę (miejsce
pojawienia, czas startu, czas zakończenia, parametry
taksówkarza)
Zastosowanie Monte Carlo w symulacji podaży
Wyniki
•W symulatorze: 12 różnych funkcji, około 1000
zestawów parametrów
•W testach A/B: 9 faz testów, 3 funkcje, łącznie 32
zestawy parametrów
•2 fazy modyfikacji symulatora na podstawie
rozbieżności z rzeczywistością
•Cykliczność: nowy test w (prawie) każdy czwartek
Przeprowadzone testy
Dni robocze
Czas dojazdu
RR
Scoring
Weekend
Czas dojazdu
RR
Scoring
Przykładowe wyniki dla jednego z miast
F1 F2 F3
Dni robocze
Czas dojazdu -7,2% -6,9% -6,1%
RR +3,0% +3,0% -8,5%
Scoring -4,4% -7,7% -4,0%
Weekend
Czas dojazdu -3,2% +0,0% -4,8%
RR -1,5% -1,5% +5,0%
Scoring -3,5% -6,3% +4,0%
Dotychczasowe efekty
•Zmiana średniego scoringu: +0,4%
•Zmiana mediany czasu dojazdu: -8,5%
•Zmiana RR: +7,5%
Dlaczego tak mało?
Dlaczego tak mało?
•Rzeczywistość nieustannie się zmienia
•Optymalne algorytmy są specyficzne dla miast i czasu
•Testy A/B muszą być ostrożne -> określenie istotności
statystycznej zajmuje czas
Co dalej?
Plany
•Dynamiczna automatyczna optymalizacja
Prognoza
popytu
Natężenie
ruchu
Wybór funkcji i
parametrów przydziału
taksówki
Prognoza
zmian podaży
Lokalizacja
zlecenia
Obecny stan
podaży
Plany – automatyka testów
• SI (NN lub GA) przeszukuje zakres możliwych algorytmów
przydziału taksówek i testuje je w symulatorze
• Jeśli test istotnie poprawia funkcję celu, automatyczny test
A/B
• Jeśli w teście A/B poprawa jest potwierdzona, test
rozszerzany
• Jeśli w teście A/B poprawa nie jest potwierdzona, alert
(symulator wymaga poprawy)
• Jeśli możesz, przed testowaniem na żywo sprawdź scenariusz w
warunkach laboratoryjnych
• Jeśli problem jest zbyt skomplikowany do rozwiązania analitycznego,
przeprowadź symulację
• Rozbieżności wyników symulacji z wynikami testów A/B są narzędziem
do doskonalenia symulatora
• W zmieniającej się rzeczywistości optymalizacja nigdy się nie kończy
Na wynos

Mais conteúdo relacionado

Mais de Infoshare

infoShare AI Roadshow 2018 - Dorian Nikoniuk (Microsoft) - Usługi poznawcze, ...
infoShare AI Roadshow 2018 - Dorian Nikoniuk (Microsoft) - Usługi poznawcze, ...infoShare AI Roadshow 2018 - Dorian Nikoniuk (Microsoft) - Usługi poznawcze, ...
infoShare AI Roadshow 2018 - Dorian Nikoniuk (Microsoft) - Usługi poznawcze, ...Infoshare
 
infoShare AI Roadshow 2018 - Tomasz Kopacz (Microsoft) - jakie możliwości daj...
infoShare AI Roadshow 2018 - Tomasz Kopacz (Microsoft) - jakie możliwości daj...infoShare AI Roadshow 2018 - Tomasz Kopacz (Microsoft) - jakie możliwości daj...
infoShare AI Roadshow 2018 - Tomasz Kopacz (Microsoft) - jakie możliwości daj...Infoshare
 
infoShare AI Roadshow 2018 - Adam Karwan (Groupon) - Jak wykorzystać uczenie ...
infoShare AI Roadshow 2018 - Adam Karwan (Groupon) - Jak wykorzystać uczenie ...infoShare AI Roadshow 2018 - Adam Karwan (Groupon) - Jak wykorzystać uczenie ...
infoShare AI Roadshow 2018 - Adam Karwan (Groupon) - Jak wykorzystać uczenie ...Infoshare
 
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurzeinfoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurzeInfoshare
 
infoShare 2014: Peter Taylor,The Art of Productive Laziness
infoShare 2014: Peter Taylor,The Art of Productive LazinessinfoShare 2014: Peter Taylor,The Art of Productive Laziness
infoShare 2014: Peter Taylor,The Art of Productive LazinessInfoshare
 
infoShare 2014: Paweł Brodziński, Efektywny czy zajęty? Jesteś pewien, że dob...
infoShare 2014: Paweł Brodziński, Efektywny czy zajęty? Jesteś pewien, że dob...infoShare 2014: Paweł Brodziński, Efektywny czy zajęty? Jesteś pewien, że dob...
infoShare 2014: Paweł Brodziński, Efektywny czy zajęty? Jesteś pewien, że dob...Infoshare
 
infoShare 2014: Michał Sierzputowski, Testy automatyczne aplikacji webowych o...
infoShare 2014: Michał Sierzputowski, Testy automatyczne aplikacji webowych o...infoShare 2014: Michał Sierzputowski, Testy automatyczne aplikacji webowych o...
infoShare 2014: Michał Sierzputowski, Testy automatyczne aplikacji webowych o...Infoshare
 
infoShare 2014: Michał Polak, Smart Cities na wyciągnięcie smartfona.
infoShare 2014: Michał Polak, Smart Cities na wyciągnięcie smartfona.infoShare 2014: Michał Polak, Smart Cities na wyciągnięcie smartfona.
infoShare 2014: Michał Polak, Smart Cities na wyciągnięcie smartfona.Infoshare
 
infoShare 2014: Mariusz Róg, Big Data w praktyce -- jak efektywnie przetwarza...
infoShare 2014: Mariusz Róg, Big Data w praktyce -- jak efektywnie przetwarza...infoShare 2014: Mariusz Róg, Big Data w praktyce -- jak efektywnie przetwarza...
infoShare 2014: Mariusz Róg, Big Data w praktyce -- jak efektywnie przetwarza...Infoshare
 
infoShare 2014: Marek Landowski, Architektura SWIFT obiektowego przechowywani...
infoShare 2014: Marek Landowski, Architektura SWIFT obiektowego przechowywani...infoShare 2014: Marek Landowski, Architektura SWIFT obiektowego przechowywani...
infoShare 2014: Marek Landowski, Architektura SWIFT obiektowego przechowywani...Infoshare
 
infoShare 2014: Maciej Saganowski, Designing Mobile Services.
infoShare 2014: Maciej Saganowski, Designing Mobile Services.infoShare 2014: Maciej Saganowski, Designing Mobile Services.
infoShare 2014: Maciej Saganowski, Designing Mobile Services.Infoshare
 
infoShare 2014:Jacek Samsel, Andrzej Pyra, Marketingowa mapa skarbów: w jaki ...
infoShare 2014:Jacek Samsel, Andrzej Pyra, Marketingowa mapa skarbów: w jaki ...infoShare 2014:Jacek Samsel, Andrzej Pyra, Marketingowa mapa skarbów: w jaki ...
infoShare 2014:Jacek Samsel, Andrzej Pyra, Marketingowa mapa skarbów: w jaki ...Infoshare
 
infoShare 2014: Jacek kmiecik, Tworzenie aplikacji na Google Glass.
infoShare 2014: Jacek kmiecik, Tworzenie aplikacji na Google Glass.infoShare 2014: Jacek kmiecik, Tworzenie aplikacji na Google Glass.
infoShare 2014: Jacek kmiecik, Tworzenie aplikacji na Google Glass.Infoshare
 
infoShare 2014: Gino Marckx, Forget about Agile, let's write great code first!
infoShare 2014: Gino Marckx, Forget about Agile, let's write great code first!infoShare 2014: Gino Marckx, Forget about Agile, let's write great code first!
infoShare 2014: Gino Marckx, Forget about Agile, let's write great code first!Infoshare
 
infoShare 2014: Witold Bołt, Bartosz Zięba, Skok na naderwanym bungee, czyli ...
infoShare 2014: Witold Bołt, Bartosz Zięba, Skok na naderwanym bungee, czyli ...infoShare 2014: Witold Bołt, Bartosz Zięba, Skok na naderwanym bungee, czyli ...
infoShare 2014: Witold Bołt, Bartosz Zięba, Skok na naderwanym bungee, czyli ...Infoshare
 
infoShare 2014: Bartosz Leoszewski, Mobilność to już nie tylko smartfony i ta...
infoShare 2014: Bartosz Leoszewski, Mobilność to już nie tylko smartfony i ta...infoShare 2014: Bartosz Leoszewski, Mobilność to już nie tylko smartfony i ta...
infoShare 2014: Bartosz Leoszewski, Mobilność to już nie tylko smartfony i ta...Infoshare
 
infoShare 2014: Wojciech Seliga, Innowacja w praktyce - jak może powstawać so...
infoShare 2014: Wojciech Seliga, Innowacja w praktyce - jak może powstawać so...infoShare 2014: Wojciech Seliga, Innowacja w praktyce - jak może powstawać so...
infoShare 2014: Wojciech Seliga, Innowacja w praktyce - jak może powstawać so...Infoshare
 
infoShare 2014: Paweł Tkaczyk, Klątwa nieśmiertelności
infoShare 2014: Paweł Tkaczyk, Klątwa nieśmiertelnościinfoShare 2014: Paweł Tkaczyk, Klątwa nieśmiertelności
infoShare 2014: Paweł Tkaczyk, Klątwa nieśmiertelnościInfoshare
 
infoShare 2014: Nikolay Davidov, Finding value in institutional investors
infoShare 2014: Nikolay Davidov, Finding value in institutional investorsinfoShare 2014: Nikolay Davidov, Finding value in institutional investors
infoShare 2014: Nikolay Davidov, Finding value in institutional investorsInfoshare
 
infoShare 2014: Mark Johnson, Lessons from the Trenches: How I sold Zite twice
infoShare 2014: Mark Johnson, Lessons from the Trenches: How I sold Zite twiceinfoShare 2014: Mark Johnson, Lessons from the Trenches: How I sold Zite twice
infoShare 2014: Mark Johnson, Lessons from the Trenches: How I sold Zite twiceInfoshare
 

Mais de Infoshare (20)

infoShare AI Roadshow 2018 - Dorian Nikoniuk (Microsoft) - Usługi poznawcze, ...
infoShare AI Roadshow 2018 - Dorian Nikoniuk (Microsoft) - Usługi poznawcze, ...infoShare AI Roadshow 2018 - Dorian Nikoniuk (Microsoft) - Usługi poznawcze, ...
infoShare AI Roadshow 2018 - Dorian Nikoniuk (Microsoft) - Usługi poznawcze, ...
 
infoShare AI Roadshow 2018 - Tomasz Kopacz (Microsoft) - jakie możliwości daj...
infoShare AI Roadshow 2018 - Tomasz Kopacz (Microsoft) - jakie możliwości daj...infoShare AI Roadshow 2018 - Tomasz Kopacz (Microsoft) - jakie możliwości daj...
infoShare AI Roadshow 2018 - Tomasz Kopacz (Microsoft) - jakie możliwości daj...
 
infoShare AI Roadshow 2018 - Adam Karwan (Groupon) - Jak wykorzystać uczenie ...
infoShare AI Roadshow 2018 - Adam Karwan (Groupon) - Jak wykorzystać uczenie ...infoShare AI Roadshow 2018 - Adam Karwan (Groupon) - Jak wykorzystać uczenie ...
infoShare AI Roadshow 2018 - Adam Karwan (Groupon) - Jak wykorzystać uczenie ...
 
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurzeinfoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
 
infoShare 2014: Peter Taylor,The Art of Productive Laziness
infoShare 2014: Peter Taylor,The Art of Productive LazinessinfoShare 2014: Peter Taylor,The Art of Productive Laziness
infoShare 2014: Peter Taylor,The Art of Productive Laziness
 
infoShare 2014: Paweł Brodziński, Efektywny czy zajęty? Jesteś pewien, że dob...
infoShare 2014: Paweł Brodziński, Efektywny czy zajęty? Jesteś pewien, że dob...infoShare 2014: Paweł Brodziński, Efektywny czy zajęty? Jesteś pewien, że dob...
infoShare 2014: Paweł Brodziński, Efektywny czy zajęty? Jesteś pewien, że dob...
 
infoShare 2014: Michał Sierzputowski, Testy automatyczne aplikacji webowych o...
infoShare 2014: Michał Sierzputowski, Testy automatyczne aplikacji webowych o...infoShare 2014: Michał Sierzputowski, Testy automatyczne aplikacji webowych o...
infoShare 2014: Michał Sierzputowski, Testy automatyczne aplikacji webowych o...
 
infoShare 2014: Michał Polak, Smart Cities na wyciągnięcie smartfona.
infoShare 2014: Michał Polak, Smart Cities na wyciągnięcie smartfona.infoShare 2014: Michał Polak, Smart Cities na wyciągnięcie smartfona.
infoShare 2014: Michał Polak, Smart Cities na wyciągnięcie smartfona.
 
infoShare 2014: Mariusz Róg, Big Data w praktyce -- jak efektywnie przetwarza...
infoShare 2014: Mariusz Róg, Big Data w praktyce -- jak efektywnie przetwarza...infoShare 2014: Mariusz Róg, Big Data w praktyce -- jak efektywnie przetwarza...
infoShare 2014: Mariusz Róg, Big Data w praktyce -- jak efektywnie przetwarza...
 
infoShare 2014: Marek Landowski, Architektura SWIFT obiektowego przechowywani...
infoShare 2014: Marek Landowski, Architektura SWIFT obiektowego przechowywani...infoShare 2014: Marek Landowski, Architektura SWIFT obiektowego przechowywani...
infoShare 2014: Marek Landowski, Architektura SWIFT obiektowego przechowywani...
 
infoShare 2014: Maciej Saganowski, Designing Mobile Services.
infoShare 2014: Maciej Saganowski, Designing Mobile Services.infoShare 2014: Maciej Saganowski, Designing Mobile Services.
infoShare 2014: Maciej Saganowski, Designing Mobile Services.
 
infoShare 2014:Jacek Samsel, Andrzej Pyra, Marketingowa mapa skarbów: w jaki ...
infoShare 2014:Jacek Samsel, Andrzej Pyra, Marketingowa mapa skarbów: w jaki ...infoShare 2014:Jacek Samsel, Andrzej Pyra, Marketingowa mapa skarbów: w jaki ...
infoShare 2014:Jacek Samsel, Andrzej Pyra, Marketingowa mapa skarbów: w jaki ...
 
infoShare 2014: Jacek kmiecik, Tworzenie aplikacji na Google Glass.
infoShare 2014: Jacek kmiecik, Tworzenie aplikacji na Google Glass.infoShare 2014: Jacek kmiecik, Tworzenie aplikacji na Google Glass.
infoShare 2014: Jacek kmiecik, Tworzenie aplikacji na Google Glass.
 
infoShare 2014: Gino Marckx, Forget about Agile, let's write great code first!
infoShare 2014: Gino Marckx, Forget about Agile, let's write great code first!infoShare 2014: Gino Marckx, Forget about Agile, let's write great code first!
infoShare 2014: Gino Marckx, Forget about Agile, let's write great code first!
 
infoShare 2014: Witold Bołt, Bartosz Zięba, Skok na naderwanym bungee, czyli ...
infoShare 2014: Witold Bołt, Bartosz Zięba, Skok na naderwanym bungee, czyli ...infoShare 2014: Witold Bołt, Bartosz Zięba, Skok na naderwanym bungee, czyli ...
infoShare 2014: Witold Bołt, Bartosz Zięba, Skok na naderwanym bungee, czyli ...
 
infoShare 2014: Bartosz Leoszewski, Mobilność to już nie tylko smartfony i ta...
infoShare 2014: Bartosz Leoszewski, Mobilność to już nie tylko smartfony i ta...infoShare 2014: Bartosz Leoszewski, Mobilność to już nie tylko smartfony i ta...
infoShare 2014: Bartosz Leoszewski, Mobilność to już nie tylko smartfony i ta...
 
infoShare 2014: Wojciech Seliga, Innowacja w praktyce - jak może powstawać so...
infoShare 2014: Wojciech Seliga, Innowacja w praktyce - jak może powstawać so...infoShare 2014: Wojciech Seliga, Innowacja w praktyce - jak może powstawać so...
infoShare 2014: Wojciech Seliga, Innowacja w praktyce - jak może powstawać so...
 
infoShare 2014: Paweł Tkaczyk, Klątwa nieśmiertelności
infoShare 2014: Paweł Tkaczyk, Klątwa nieśmiertelnościinfoShare 2014: Paweł Tkaczyk, Klątwa nieśmiertelności
infoShare 2014: Paweł Tkaczyk, Klątwa nieśmiertelności
 
infoShare 2014: Nikolay Davidov, Finding value in institutional investors
infoShare 2014: Nikolay Davidov, Finding value in institutional investorsinfoShare 2014: Nikolay Davidov, Finding value in institutional investors
infoShare 2014: Nikolay Davidov, Finding value in institutional investors
 
infoShare 2014: Mark Johnson, Lessons from the Trenches: How I sold Zite twice
infoShare 2014: Mark Johnson, Lessons from the Trenches: How I sold Zite twiceinfoShare 2014: Mark Johnson, Lessons from the Trenches: How I sold Zite twice
infoShare 2014: Mark Johnson, Lessons from the Trenches: How I sold Zite twice
 

infoShare AI Roadshow 2018 - Tomasz Brzeziński (iTaxi) - Niestandardowe metody Machine Learning: podnoszenie efektywności biznesu przez zastosowanie podejścia symulacyjnego

  • 1. TOMASZ BRZEZIŃSKI NIESTANDARDOWE METODY MACHINE LEARNING Podnoszenie efektywności biznesu przez zastosowanie podejścia symulacyjnego
  • 5. Dostarczyć taksówkę: •jak najszybciej •jak najlepszą •z żądaną stawką za kilometr •spełniającą dodatkowe wymagania (np. liczba osób) •tak, aby móc skutecznie zrealizować kolejne zlecenia Zadanie
  • 6. Dostarczyć taksówkę: •jak najszybciej: mediana czasu dojazdu •jak najlepszą: średni scoring kierowcy •tak, aby móc skutecznie zrealizować kolejne zlecenia: reliability ratio (ilość kursów/popyt) KPI
  • 7. Problem •wielokryterialny •nieliniowy i niesprowadzalny do liniowego •dyskretny •niestabilny w czasie •w warunkach niepewności Dlaczego to jest trudne?
  • 9. Benchmark (100%) Benchmark (90%) Benchmark (50%) Przegrany (10%) Przegrany (0%) Kandydat (10%) Pretendent (50%) Zwycięzca - nowy benchmark (90%) Zwycięzca - nowy benchmark (100%) Testy A/B
  • 10. Benchmark (100%) (50%) Przegrany (10%) Przegrany (0%) Kandydat (10%) Pretendent (40%) Zwycięzca - nowy benchmark (80%) Benchmark (50 (…) Kandydat 2 (10%) Przegrany (0%) Pretendent (40%) (…) Kandydat 4 (10%) (…) Benchmark (100%) Benchmark (90%) Benchmark (50%) Przegrany (10%) Przegrany (0%) Kandydat (10%) Pretendent (40%) Zwycięzca - nowy benchmark (80%) Benchmark (50%) (…) Kandydat 2 (10%) Przegrany (0%) Kandydat 3 (10%) Pretendent (40%) (…) Kandydat 4 (10%) (…) Cykliczne testy A/B Benchmark (100%) Benchmark (90%) Kandydat (10%) Benchmark (100%) Benchmark (90%) Benchmark (50%) Kandydat (10%) Pretendent (40%) Kandydat 2 (10%)
  • 11. Nowe rozwiązanie Test w symulatorze Optymalizacja parametrów w symulatorze Benchmark w teście A/B Nowy benchmark/ przegrany Pretesting w symulatorze Testowanie w rzeczywistości ma znaczący wpływ na biznes
  • 12. A jeśli wyniki w rzeczywistości odbiegają od symulacji?
  • 13. Kompletny system Test w symulatorze Testy A/B Analiza rozbieżności Modyfikacja symulatora
  • 15. • Symulacja: przybliżone odtwarzanie zjawisk czy zachowań jakiegoś obiektu za pomocą jego modelu (fizycznego lub matematycznego) • Model matematyczny: grupa funkcji wiążących ze sobą różne zmienne i w ten sposób opisujących powiązania między wielkościami w układzie Symulacja
  • 16. Symulacyjne podejście do problemu iTaxi– założenia/uproszczenia
  • 17. rozważmy zbiór identycznych sferycznych taksówek… ze zbiornikiem paliwa o nieskończonej pojemności… poruszających się ruchem jednostajnym prostoliniowym… po powierzchni wycinka quasigeoidy… w celu obsługi identycznych pasażerów… o stałych i niezmiennych w czasie preferencjach… składających zamówienia wg rozkładu Poissona… Jak nie odlecieć?
  • 18. Uproszczenia: • Eliminacja zdarzeń tak rzadkich, że nie wpływających na wynik • Eliminacja wzajemnie znoszących się odchyleń • Eliminacja nieestymowalnych odchyleń Nie wolno: • Uśredniać istotnych zmienności • Ignorować niestabilności • Ignorować istotnych korelacji zjawisk • Zakładać znajomości informacji, których w realnej sytuacji nie mamy Można rozważyć: • Uproszczenie (np. uśrednienie) istotnego zjawiska, jeśli strata dokładności jest rekompensowana szybkością obliczeń Zasady budowy modelu
  • 19. Taksówki mają identyczną prędkość Poruszają się po liniach prostych Nie ma zleceń grupowych (kilka taksówek) Nie ma zleceń terminowych Pasażer nie zmienia swoich decyzji Uproszczenia
  • 20. Zjawiska mają określone rozkłady, które muszą być odzwierciedlone: - rozkład zleceń w przestrzeni i czasie - rozkład dostępności taksówkarzy w przestrzeni i czasie - rozkład scoringów - rozkład cierpliwości pasażerów - rozkład prawdopodobieństwa odrzucenia zlecenia przez taksówkarza (rozkłady są różne dla poszczególnych taksówkarzy) Wielowymiarowe rozkłady nie są dekomponowane na poszczególne wymiary Poszczególne miasta mają inne charakterystyki Przejezdność miasta (prędkość poruszania się) zmienia się w czasie i jest niejednorodna w przestrzeni W danym momencie nie mamy wiedzy o przyszłości Poszczególne czynności (zamówienie taksówki, przyjęcie zlecenia przez taksówkarza itp.) trwają określony czas Czego nie uprościliśmy?
  • 21. Rozkłady szacowane metodami analitycznymi: - rozkład scoringów - rozkład prawdopodobieństwa odrzucenia zlecenia przez taksówkarza Popyt i podaż – symulacja metodami Monte Carlo Szacowanie rozkładów – główny problem
  • 23. metoda Monte Carlo • Stanisław Ulam • Metoda jest używana do modelowania procesów zbyt złożonych do obliczania analitycznego • Aby zamodelować wynik procesu, losujemy odpowiednio dużo wielkości charakteryzujących proces, po czym dokonujemy przetworzenia algorytmicznego
  • 24. Monte Carlo - przykład
  • 25. Dla danego dnia znajdujemy dni „podobne” Zlecenia ze wszystkich dni podobnych stanowią pulę losowania Określamy intensywność popytu Losujemy (ze zwracaniem) potrzebną liczbę zleceń Dla danego zlecenia bierzemy jego pełną charakterystykę (położenie, czas, parametry pasażera) Zastosowanie Monte Carlo w symulacji popytu
  • 26. Dla danego dnia znajdujemy dni „podobne” Pulę losowania stanowią wszystkie sesje dostępności kierowców Określamy intensywność podaży Losujemy (ze zwracaniem) potrzebną liczbę sesji dostępności Dla danej sesji bierzemy jej pełną charakterystykę (miejsce pojawienia, czas startu, czas zakończenia, parametry taksówkarza) Zastosowanie Monte Carlo w symulacji podaży
  • 28. •W symulatorze: 12 różnych funkcji, około 1000 zestawów parametrów •W testach A/B: 9 faz testów, 3 funkcje, łącznie 32 zestawy parametrów •2 fazy modyfikacji symulatora na podstawie rozbieżności z rzeczywistością •Cykliczność: nowy test w (prawie) każdy czwartek Przeprowadzone testy
  • 29. Dni robocze Czas dojazdu RR Scoring Weekend Czas dojazdu RR Scoring Przykładowe wyniki dla jednego z miast F1 F2 F3 Dni robocze Czas dojazdu -7,2% -6,9% -6,1% RR +3,0% +3,0% -8,5% Scoring -4,4% -7,7% -4,0% Weekend Czas dojazdu -3,2% +0,0% -4,8% RR -1,5% -1,5% +5,0% Scoring -3,5% -6,3% +4,0%
  • 30. Dotychczasowe efekty •Zmiana średniego scoringu: +0,4% •Zmiana mediany czasu dojazdu: -8,5% •Zmiana RR: +7,5%
  • 32. Dlaczego tak mało? •Rzeczywistość nieustannie się zmienia •Optymalne algorytmy są specyficzne dla miast i czasu •Testy A/B muszą być ostrożne -> określenie istotności statystycznej zajmuje czas
  • 34. Plany •Dynamiczna automatyczna optymalizacja Prognoza popytu Natężenie ruchu Wybór funkcji i parametrów przydziału taksówki Prognoza zmian podaży Lokalizacja zlecenia Obecny stan podaży
  • 35. Plany – automatyka testów • SI (NN lub GA) przeszukuje zakres możliwych algorytmów przydziału taksówek i testuje je w symulatorze • Jeśli test istotnie poprawia funkcję celu, automatyczny test A/B • Jeśli w teście A/B poprawa jest potwierdzona, test rozszerzany • Jeśli w teście A/B poprawa nie jest potwierdzona, alert (symulator wymaga poprawy)
  • 36. • Jeśli możesz, przed testowaniem na żywo sprawdź scenariusz w warunkach laboratoryjnych • Jeśli problem jest zbyt skomplikowany do rozwiązania analitycznego, przeprowadź symulację • Rozbieżności wyników symulacji z wynikami testów A/B są narzędziem do doskonalenia symulatora • W zmieniającej się rzeczywistości optymalizacja nigdy się nie kończy Na wynos