際際滷

際際滷Share a Scribd company logo
In甜yniera danych -Big Data. Chwilowe zauroczenie czy trway trend? Przykady praktycznego zastosowania przetwarzania du甜ych wolumen坦w danych w bankowoci i analizie ruchu w Internecie 
11. pa添dziernika 2014 
1
Powitanie 
Ka甜dy pocztek ma w sobie co magicznego 
Bear Grylls 
2
Czemu stoj przed Pastwem? 
Przez przeszo 12 lat odpowiadaem za systemy raportujce w portalu Onet.pl. Onet to przeszo 3 mld odson i 70 mln unikalnych cookiesw skali miesica. Odpowiadaem za wyb坦r narzdzi do analizy danych. W tym za przejcie z rozwiza komercyjnych na rozwizania open source. 
Braem czynny udzia w jednym z najciekawszych projekt坦w Big Data w AliorBank. 
Obecnie odpowiadam za budow systemu rekomendacji treci w TVN. 
Czynnie zajmuj si analiz du甜ych zbior坦w danych i doborem narzdzi analitycznych. 
3
O co chodzi w tym caym Big Data? 
Mo甜liwo stworzenia sp坦jnego obrazu potrzeb klient坦w. 
Na podstawie wielu 添r坦dem danych. 
Nadajcego si do praktycznego wykorzystania. 
W rozsdnym czasie. 
Przy rozsdnych kosztach. 
Po co? 
Lepsze adresowanie usug. 
Ograniczenie koszt坦w. 
Zapobieganie niekorzystnym zdarzeniom. 
4
A tak konkretniej 
Chcemy poczy dane o zachowaniu naszych klient坦w: 
Systemy transakcyjne 
Co robi na naszych stronach 
Co pisz w mediach spoecznych 
Jakich treci szukaj w Internecie 
W jakiej sprawie dzwonili do callcenter 
Czy zainteresowa ich mailling 
Jak korzystaj z telefonu kom坦rkowego 
≒ 
Definicja Big Data (Gartner, 2001): Volume, Velocity, Variety 
5
Jeszcze konkretniej 
Musimy przej z danych typu: 
do danych o postaci: 
identyfikator klienta 
data zdarzenia 
opis zdarzenia 
warto 
1 
2009-01-01 
opata rachunku za gaz 
315 z 
1 
2009-01-01 
zakup w sklepie internetowym artykuy sportowe 
124 z 
 
 
 
 
identyfikator klienta 
data zdarzenia 
url 
useragent 
23456781 
2009-01-01 
www.wp.pl 
Mozilla/5.0 (Windows NT 5.1; rv:26.0) Gecko/20100101 Firefox/26.0 
 
 
 
 
identyfikator klienta 
warto rachunku za gaz M-6 
warto rachunku za gaz M-5 
rachunek za gaz ile dni przed/po terminie M-6 
warto bilety lotnicze M-6 
Kwota wydana na benzynM-5 
Kwota wydanana zakupy 甜ywnociowe w sklepach wy甜szej p坦ki M-5 
Czas spdzony na serwisach otematyce biznesowej M-6 
Wydatki na edukacj dziecka M-5 
Klasaposiadanegotelefonu 
 
1 
315 z 
320 z 
10 
0 z 
300 z 
20 z 
3:42 
140 z 
Wysoka 
 
2 
420 z 
350 z 
5 
800 z 
500 z 
550 z 
2:15 
0 z 
rednia 
 
 
 
 
 
 
 
 
 
 
6
Co mnie pociga w Big Data? 
1.Prawdziwy obraz zjawiska: 
nie ma podstawie deklaracji, 
nie na podstawie pr坦bki danych, 
nie na podstawie sztucznego eksperymentu. 
2.Mo甜liwo przekadu problem坦w biznesowych na jzyk danych. 
3.Konieczno rozwizywania amig坦wek. 
7
Praktyczny problem 
Dysponujemy danymi. 
8 
Identyfikator klienta 
Datalogowania 
1 
2000-01-01 
1 
2000-01-02 
1 
2000-03-01 
 
 
2 
2000-01-01 
2 
2000-06-01 
2 
2000-06-02 
 
 
Problem: jaki jest churn?
Praktyczny problem 
Dysponujemy danymi. 
9 
Identyfikator klienta 
Datalogowania 
1 
2000-01-01 
1 
2000-01-02 
1 
2000-03-01 
 
 
2 
2000-01-01 
2 
2000-06-01 
2 
2000-06-02 
 
 
Problem: jaki jest churn? 
Czego nie wiemy?
Praktyczny problem 
Dysponujemy danymi. 
10 
Identyfikator klienta 
Datalogowania 
1 
2000-01-01 
1 
2000-01-02 
1 
2000-03-01 
 
 
2 
2000-01-01 
2 
2000-06-01 
2 
2000-06-02 
 
 
Problem: jaki jest churn? 
Co to znaczy, 甜e klient zrezygnowa?
Praktyczny problem 
Dodajemy kolumn 
11 
Identyfikator klienta 
Datalogowania 
Ilo dni bez logowania 
1 
2000-01-01 
Null 
1 
2000-01-02 
1 
1 
2000-03-01 
59 
 
 
2 
2000-01-01 
Null 
2 
2000-06-01 
152 
2 
2000-06-02 
1 
 
 
Identyfikator klienta 
Maksymalny czas bez logowania,po kt坦rym zalogowa si powt坦rnie 
1 
63 
2 
160 
3 
1 
4 
1 
5 
2 
6 
215 
 
 
Tworzymy now tabel
Praktyczny problem 
Na podstawie nowej tabeli tworzymy wykres 
12 
0 
20 
40 
60 
80 
100 
120 
140 
1 dzie 
5 dni 
9 dni 
13 dni 
17 dni 
21 dni 
25 dni 
29 dni 
33 dni 
37 dni 
41 dni 
45 dni 
49 dni 
53 dni 
57 dni 
61 dni 
65 dni 
69 dni 
73 dni 
77 dni 
81 dni 
85 dni 
89 dni 
93 dni 
97 dni 
101 dni 
105 dni 
109 dni 
113 dni 
ilo klient坦w 
ilo klient坦w
Czemu warto lastbut not least 
13
Czemu warto lastbut not least 
14
Wyzwania 
1.Zgromadzenie du甜ych iloci danych w spos坦b umo甜liwiajcy korzystanie z nich w rozsdnym czasie. 
2.Zapewnienie sp坦jnej identyfikacji klienta w danych pochodzcych z r坦甜nych 添r坦de. 
3.Przetumaczenie danych technicznych na zdarzenia majce znaczenie z punktu widzenia biznesu. 
4.Przygotowanie analiz statystycznych. 
15
Gromadzenie danych 
Dlaczego zapisywanie danych jest tak wydajne? 
Tabela z faktami 
Sownik 2 
Sownik 4 
Tabela z faktami 
Sownik 1 
Sownik 3 
Podejcie relacyjne utrzymywanie postaci normalnych zapewnia nam optymalne wykorzystanie przestrzeni dyskowej. 
Nie musimy si przejmowa przestrzeni dyskow. 
16 
Wiele serwer坦w: 
jednostka centralna + dysk 
Jeden centralny proces
Gromadzenie danych 
Dlaczego dostp do danych jest tak wydajny? 
G坦wny problem 
Podproblem2 
Podproblem1 
Podproblemn 
 
W du甜ym zbiorze danych chcemy znale添 wpisy speniajce pewne kryterium, np.: wr坦d danych o wywietleniach materia坦w wideo chcemy znale添 wpisy dotyczce serialu X. 
Scalenie rozwiza podproblem坦w 
Dzielimy zbi坦r na kilkanacie mniejszych i w ka甜dym z nich r坦wnolegle w tym samym czasie wyszukujemy interesujce nas wpisy. 
czymy wyniki wyszukiwania. 
17 
Faza map 
Faza reduce
Apache Hive 
18 
rodowisko umo甜liwiajce zadawanie pyta w jzyku zbli甜onym do SQL. 
Ale nie tylko. R坦wnie甜: 
Rozbudowane mo甜liwoci operowania na napisach 
Mo甜liwo wywoywania metod Java 
Operowanie na JSON 
Sporo wbudowanych funkcji statystycznych umo甜lwiajcych szybkie poznanie rozkadu wartoci czy sprawdzenie korelacji midzy zmiennymi
PigLatine 
19 
PigLatin-jzyk, w kt坦rym definiujemy spos坦b przetwarzania danych. 
Warto pamita: 
Rozbudowane mo甜liwoci operowania na napisach 
Mo甜liwo u甜ywania wyra甜e regularnych 
Rozbudowane mo甜liwoci operowania na datach 
Mo甜liwo definiowania wasnych funkcji (Java, Python, JavaScript, Ruby, Groovy)
Mahout 
20 
Biblioteka procedur statystycznych, umo甜liwiajcych korzystanie z paradygmatu MapReduce. 
Dostpne procedury: 
Regresja tylko na pojedynczej maszynie 
Perceptrony wielowarstwowe tylko na pojedynczej maszynie 
Lasy drzew MapReduce/pojedyncza maszyna 
Algorytm centroid坦wMapReduce/pojedyncza maszyna 
Klasyfikatory bayesowskie-MapReduce
Hadoopszybki start 
21 
Dwu g坦wnych dostawc坦w: 
Cloudera 
ClouderaExpress 
Hortonworks 
HortonworksSandbox
Gromadzenie danych puapki 
Szybkie zapisywanie danych, to jedno, a agregacja na potrzeby analiz to drugie. 
W Hadoopatwo zapisa dane, trudniej wycofa raz zapisane rzetelny ETL. 
Analizowanie danych czy uzyskiwanie odpowiedzi w czasie rzeczywistym. 
To wbrew pierwszemu wra甜eniu cakiem skomplikowane rodowisko, wymagajce uruchomienia i utrzymania wielu usug. 
Hadoopdziaa na klastrze to naturalne rodowisko dla niekt坦rych firm, ale zupena nowo dla innych. 
Trzeba go zintegrowa z zewntrznymi 添r坦dami danych i systemami do prezentacji raport坦w. 
22
Jeszcze kilka pyta jeli chodzi o gromadzenie danych 
Lokalnie czy na zewntrz? 
Jaka przestrze dyskowa? 
Jaka pami operacyjna? 
Mo甜e CUDA? 
Skalowalno. 
23
Czy zawsze Hadoop? 
Potrzeba analizowania danych w czasie rzeczywistym: Storm(http://storm.incubator.apache.org/) 
Szybkie analizy w pamici operacyjnej: Spark(http://spark.incubator.apache.org/) Apache Top-Level Project od lutego 2014 
Riak 
Cassandra 
Cakowita elastyczno jeli chodzi o struktur danych: mongoDB(https://www.mongodb.org/) 
mySQL, PostreSQL,  
24
Czy zawsze Hadoop? 
Niewielki wolumen danych. 
Niewielkie zr坦甜nicowanie danych. 
Dane o wyra添nej strukturze. 
Dane niewymagajce czenia jednolite 添r坦do. 
Nike zasoby po stronie IT (zasilanie danymi, zarzdzanie dostpami, utrzymanie systemu). 
Niewielki zesp坦 analityczny. 
Czasem podejcie relacyjne jest lepsze. 
25
Sp坦jna identyfikacja klienta 
Ograniczenia prawne. 
Pozyskanie danych ze 添r坦de zewntrznych czy si z kosztami -przemylany model biznesowy. 
Identyfikacja u甜ytkownika w r坦甜nych systemach ma r坦甜ny czas wa甜noci. 
R坦甜ne systemy posuguj si r坦甜nymi walutami: numer konta bankowego, identyfikator przegldarki internetowej, adres IP, numer telefonu, login do Facebook, adres poczty e-mail,  
26
Zanim zajmiemy si analiz 
zgromadzenie danych w skadnicy danych/hurtowni danych 
kontrola poprawnoci danych (braki danych, wartoci wprowadzane jako domylne) 
zaprojektowanie struktury danych, kt坦re maj by poddane analizie 
wygenerowanie zbioru danych 
kontrola poszczeg坦lnych zmiennych (braki danych, czstotliwo wystpowania poszczeg坦lnych wartoci, korelacja pomidzy poszczeg坦lnymi zmiennymi, wartoci odstajce) 
waciwa analiza 
Przygotowanie danych zajmuje 80% czasu 
27
W jakim rodowisku bdziemy prowadzi analiz? 
Dobra integracja ze zbiorami danych poddawanych analizie. 
Czy bdziemy generowa kod scoringowy? Jak czsto? Ewentualna potrzeba integracji z systemami produkcyjnymi. 
Jakich technik statystycznych chcemy u甜ywa? 
Czy widzimy biznesow przydatno analiz? (syndrom g坦ry, kt坦ra rodzi mysz) 
28
R vs Python 
Praktycznie standard. 
Du甜e i pr甜ne rodowisko u甜ytkownik坦w: mn坦stwo modu坦w, praktycznie ka甜da nowa technika statystyczna. 
atwo w dostpie do ludzi znajcych R i rozumiejcych zagadnienia statystyczne. 
Jednak: oddzielny jzyk programowania. 
Znakomite rodowisko do oblicze statystycznych SciPy 
Jzyk programowania, w kt坦rym mo甜na napisa MapReduce. 
Nie ma zbyt wiele os坦b na rynku czcych umiejtnoci programistyczne, znajomo technik statystycznych i zorientowanych na rozwizywanie zagadnie biznesowych. 
29
R vs Python 
sqldf(SQL) 
plyr(agregacja danych) 
stringr(operacje na tekcie) 
lubridate(operacje na datach) 
reshape2 (zmiana struktury danych) 
ggplot2 (wizualizacja danych) 
forecast(szeregi czasowe) 
rpart(drzewa decyzyjne) 
randomForest(lasy drzew) 
nnet(sztuczne sieci neuronowe) 
class(k-najbli甜szych ssiad坦w) 
IPythoninteraktywna praca z danymi, atwe zr坦wnoleglanie oblicze 
pandasszybkie przygotowanie danych do analizy statystycznej 
Matplotlibatwa i wydajna wizualizacja danych 
30 
pakiety
Problem uniwersalny -ludzie 
Szukamy ludzi o niebanalnym zestawie umiejtnoci: 
administrator zarzdzanie klastrem 
programici -r坦wnolege przetwarzanie danych, ETL z r坦甜nych rodowisk 
analityk (data scientist) troch programista (map reduce), troch statystyk, dobrze rozumiejcy potrzeby biznesowe i specyfik danych 
31
wiat portali 
Mn坦stwo danych technicznych: 
Rodzaj przegldarki 
Rodzaj urzdzenia mobilnego 
Typ systemu operacyjnego 
Czy akceptuje javascript 
Wielko ekranu 
Poo甜enie geograficzne 
O kt坦rej godzinie zwyk czyta wiadomoci 
W kt坦rej sekundzie przesta oglda dany film 
Jakie treci szuka zanim znalaz si na naszych stronach 
Jakie strony odwiedzi 
W jakie reklamy klikn 
Z kim koresponduje/jak czsto 
32
wiat portali 
Ale: 
Ile ma lat? 
Jakiej jest pci? 
W jakiej miejscowoci mieszka na stae? 
Czy nie porzuci nas za chwil? 
33
wiat portali wyzwanie nr 1 
Odtworzenie cech demograficznych 
Znamy cechy czci u甜ytkownik坦w (podaj je w momencie rejestracji) 
Korzyci: 
wiemy dla kogo produkujemy treci, 
bardzo przydatna informacja przy r坦甜nicowaniu treci 
34
wiat portali wyzwanie nr 2 
Wy甜sza klikalnoreklam/mailing坦w 
Potrafimy odnale添 grupy zainteresowane okrelonym typem treci 
Korzyci: 
Prezentujemy u甜ytkownikom reklamy, kt坦re s dla nich bardziej interesujce przez to reklamy s odbierane jako mniej irytujce 
Podnosi si CTR klienci zlecajcy kampanie reklamowe s zadowoleni 
35
wiat portali wyzwanie nr 3 
Personalizacja treci stron 
Redakcje produkuj/otrzymuj setki wiadomoci dziennie dziennie. 
Nasze strony maj bardzo ograniczon pojemno. 
U甜ytkownicy wchodz na strony z r坦甜n czstotliwoci. 
Czsto musz przewin stron, 甜eby odnale添 interesujc informacj. 
Korzyci: 
U甜ytkownicy odbieraj serwis jako lepiej dostosowany do swoich potrzeb. 
Potrafimy zmieci wicej informacji redakcja jest zadowolona. 
Lepszy kontekst dla reklam. 
36
wiat portali wyzwanie nr 4 
Rekomendacja treci 
Niewiele punkt坦w wejcia 
Stosunkowo pytka penetracja 
Korzyci: 
Efektywniej wykorzystujemy wizyt u甜ytkownika. 
Wiksza ilo odwiedzonych serwis坦w/usug. 
Du甜szy czas spdzony z nami wicej okazji do wywietlenia reklam. 
37
wiat bank坦w 
Mn坦stwo danych o operacjach bankowych: 
Jak korzysta z karty debetowej 
Czy ma kredyt 
Jak korzysta z karty kredytowej 
Od kogo otrzymuje przelewy 
Na jakie konta przelewa pienidze 
38
wiat bank坦w 
Ale: 
Scroringkredytowy tylko jeli ma u nas kredyt, lub stara si o taki 
Saby opis transakcji bankowych 
Brak znajomoci potrzeb klient坦w 
Nie wiemy o wa甜nych wydarzeniach (zmiana pracy, narodziny dziecka, przejcie dziecka na kolejny etap edukacji, planowana przeprowadzka) 
Niewielu klient坦w przelewa wynagrodzenie 
39
wiat bank坦w wyzwanie nr 1 
Kategoryzacja operacji bankowych 
Niewiele ma jawnie wpisany tytu przelewu ale mo甜na si oprze na numerze konta bankowego 
Kategoryzacja patnoci kartami: poo甜enie geograficzne, kategoria wydatk坦w (kody MCC), kategoryzacja miejsc 
Korzyci: 
podstawa do dalszych analiz 
40
wiat bank坦w wyzwanie nr 2 
U甜ytkownicy bez historii kredytowej 
Modzi ludzie ubiegajcy si o pierwszy kredyt lub pierwszy powa甜ny kredyt. 
Bezcenne mo甜liwo signicia do danych pochodzcych spoza banku (firmy telekomunikacyjne, portale internetowe, media spoeczne) ale r坦wnie甜 do danych bankowych 
Korzyci: 
wity Graalscoringw oparciu o dane poza bankowe 
41
wiat bank坦w wyzwanie nr 3 
Zwikszenie wartoci klienta 
Ludzie sabo znaj ofert banku. 
Niewiele okazji do interakcji z klientem. 
Wiedza o szykujcych si zmianach w 甜yciu klienta (przeprowadzka, narodziny dziecka, zmiana samochodu) 
Korzyci: 
Oferujemy usugi, kt坦re mog by interesujce dla klienta 
Oferujemy je we waciwym momencie 
Wykorzystujemy do maksimum kr坦tkie momenty kontaktu 
42
wiat bank坦w wyzwanie nr 4 
Zapobieganie odejciom 
Szybsza spata kredytu. 
Likwidacja karty kredytowej. 
Likwidacja lokaty. 
Korzyci: 
Utrzymujemy klienta przy sobie. 
Klient wie, 甜e jest dla nas wa甜ny. 
Reagujemy w sytuacji rzeczywistego zagro甜enia odejciem. 
43
Inne wiaty 
1.Towarzystwa ubezpieczeniowe 
2.Sprzeda甜 towar坦w i usug 
3.Opieka medyczna 
44
Big Data 
To nie jest co co si dopiero mo甜e wydarzy. 
Dla wielu firm, to codzienno od wielu lat. 
Dla innych firm, to bardzo pocigajca przyszo. Co co musi si wydarzy. 
Tam, gdzie pojawia si Big Data, zmieniaj warunki gry. 
45
Dzikuj za uwag 
Radosaw Kita 
r.kita@tvn.pl 
46

More Related Content

Wyklad inauguracyjny

  • 1. In甜yniera danych -Big Data. Chwilowe zauroczenie czy trway trend? Przykady praktycznego zastosowania przetwarzania du甜ych wolumen坦w danych w bankowoci i analizie ruchu w Internecie 11. pa添dziernika 2014 1
  • 2. Powitanie Ka甜dy pocztek ma w sobie co magicznego Bear Grylls 2
  • 3. Czemu stoj przed Pastwem? Przez przeszo 12 lat odpowiadaem za systemy raportujce w portalu Onet.pl. Onet to przeszo 3 mld odson i 70 mln unikalnych cookiesw skali miesica. Odpowiadaem za wyb坦r narzdzi do analizy danych. W tym za przejcie z rozwiza komercyjnych na rozwizania open source. Braem czynny udzia w jednym z najciekawszych projekt坦w Big Data w AliorBank. Obecnie odpowiadam za budow systemu rekomendacji treci w TVN. Czynnie zajmuj si analiz du甜ych zbior坦w danych i doborem narzdzi analitycznych. 3
  • 4. O co chodzi w tym caym Big Data? Mo甜liwo stworzenia sp坦jnego obrazu potrzeb klient坦w. Na podstawie wielu 添r坦dem danych. Nadajcego si do praktycznego wykorzystania. W rozsdnym czasie. Przy rozsdnych kosztach. Po co? Lepsze adresowanie usug. Ograniczenie koszt坦w. Zapobieganie niekorzystnym zdarzeniom. 4
  • 5. A tak konkretniej Chcemy poczy dane o zachowaniu naszych klient坦w: Systemy transakcyjne Co robi na naszych stronach Co pisz w mediach spoecznych Jakich treci szukaj w Internecie W jakiej sprawie dzwonili do callcenter Czy zainteresowa ich mailling Jak korzystaj z telefonu kom坦rkowego ≒ Definicja Big Data (Gartner, 2001): Volume, Velocity, Variety 5
  • 6. Jeszcze konkretniej Musimy przej z danych typu: do danych o postaci: identyfikator klienta data zdarzenia opis zdarzenia warto 1 2009-01-01 opata rachunku za gaz 315 z 1 2009-01-01 zakup w sklepie internetowym artykuy sportowe 124 z identyfikator klienta data zdarzenia url useragent 23456781 2009-01-01 www.wp.pl Mozilla/5.0 (Windows NT 5.1; rv:26.0) Gecko/20100101 Firefox/26.0 identyfikator klienta warto rachunku za gaz M-6 warto rachunku za gaz M-5 rachunek za gaz ile dni przed/po terminie M-6 warto bilety lotnicze M-6 Kwota wydana na benzynM-5 Kwota wydanana zakupy 甜ywnociowe w sklepach wy甜szej p坦ki M-5 Czas spdzony na serwisach otematyce biznesowej M-6 Wydatki na edukacj dziecka M-5 Klasaposiadanegotelefonu 1 315 z 320 z 10 0 z 300 z 20 z 3:42 140 z Wysoka 2 420 z 350 z 5 800 z 500 z 550 z 2:15 0 z rednia 6
  • 7. Co mnie pociga w Big Data? 1.Prawdziwy obraz zjawiska: nie ma podstawie deklaracji, nie na podstawie pr坦bki danych, nie na podstawie sztucznego eksperymentu. 2.Mo甜liwo przekadu problem坦w biznesowych na jzyk danych. 3.Konieczno rozwizywania amig坦wek. 7
  • 8. Praktyczny problem Dysponujemy danymi. 8 Identyfikator klienta Datalogowania 1 2000-01-01 1 2000-01-02 1 2000-03-01 2 2000-01-01 2 2000-06-01 2 2000-06-02 Problem: jaki jest churn?
  • 9. Praktyczny problem Dysponujemy danymi. 9 Identyfikator klienta Datalogowania 1 2000-01-01 1 2000-01-02 1 2000-03-01 2 2000-01-01 2 2000-06-01 2 2000-06-02 Problem: jaki jest churn? Czego nie wiemy?
  • 10. Praktyczny problem Dysponujemy danymi. 10 Identyfikator klienta Datalogowania 1 2000-01-01 1 2000-01-02 1 2000-03-01 2 2000-01-01 2 2000-06-01 2 2000-06-02 Problem: jaki jest churn? Co to znaczy, 甜e klient zrezygnowa?
  • 11. Praktyczny problem Dodajemy kolumn 11 Identyfikator klienta Datalogowania Ilo dni bez logowania 1 2000-01-01 Null 1 2000-01-02 1 1 2000-03-01 59 2 2000-01-01 Null 2 2000-06-01 152 2 2000-06-02 1 Identyfikator klienta Maksymalny czas bez logowania,po kt坦rym zalogowa si powt坦rnie 1 63 2 160 3 1 4 1 5 2 6 215 Tworzymy now tabel
  • 12. Praktyczny problem Na podstawie nowej tabeli tworzymy wykres 12 0 20 40 60 80 100 120 140 1 dzie 5 dni 9 dni 13 dni 17 dni 21 dni 25 dni 29 dni 33 dni 37 dni 41 dni 45 dni 49 dni 53 dni 57 dni 61 dni 65 dni 69 dni 73 dni 77 dni 81 dni 85 dni 89 dni 93 dni 97 dni 101 dni 105 dni 109 dni 113 dni ilo klient坦w ilo klient坦w
  • 13. Czemu warto lastbut not least 13
  • 14. Czemu warto lastbut not least 14
  • 15. Wyzwania 1.Zgromadzenie du甜ych iloci danych w spos坦b umo甜liwiajcy korzystanie z nich w rozsdnym czasie. 2.Zapewnienie sp坦jnej identyfikacji klienta w danych pochodzcych z r坦甜nych 添r坦de. 3.Przetumaczenie danych technicznych na zdarzenia majce znaczenie z punktu widzenia biznesu. 4.Przygotowanie analiz statystycznych. 15
  • 16. Gromadzenie danych Dlaczego zapisywanie danych jest tak wydajne? Tabela z faktami Sownik 2 Sownik 4 Tabela z faktami Sownik 1 Sownik 3 Podejcie relacyjne utrzymywanie postaci normalnych zapewnia nam optymalne wykorzystanie przestrzeni dyskowej. Nie musimy si przejmowa przestrzeni dyskow. 16 Wiele serwer坦w: jednostka centralna + dysk Jeden centralny proces
  • 17. Gromadzenie danych Dlaczego dostp do danych jest tak wydajny? G坦wny problem Podproblem2 Podproblem1 Podproblemn W du甜ym zbiorze danych chcemy znale添 wpisy speniajce pewne kryterium, np.: wr坦d danych o wywietleniach materia坦w wideo chcemy znale添 wpisy dotyczce serialu X. Scalenie rozwiza podproblem坦w Dzielimy zbi坦r na kilkanacie mniejszych i w ka甜dym z nich r坦wnolegle w tym samym czasie wyszukujemy interesujce nas wpisy. czymy wyniki wyszukiwania. 17 Faza map Faza reduce
  • 18. Apache Hive 18 rodowisko umo甜liwiajce zadawanie pyta w jzyku zbli甜onym do SQL. Ale nie tylko. R坦wnie甜: Rozbudowane mo甜liwoci operowania na napisach Mo甜liwo wywoywania metod Java Operowanie na JSON Sporo wbudowanych funkcji statystycznych umo甜lwiajcych szybkie poznanie rozkadu wartoci czy sprawdzenie korelacji midzy zmiennymi
  • 19. PigLatine 19 PigLatin-jzyk, w kt坦rym definiujemy spos坦b przetwarzania danych. Warto pamita: Rozbudowane mo甜liwoci operowania na napisach Mo甜liwo u甜ywania wyra甜e regularnych Rozbudowane mo甜liwoci operowania na datach Mo甜liwo definiowania wasnych funkcji (Java, Python, JavaScript, Ruby, Groovy)
  • 20. Mahout 20 Biblioteka procedur statystycznych, umo甜liwiajcych korzystanie z paradygmatu MapReduce. Dostpne procedury: Regresja tylko na pojedynczej maszynie Perceptrony wielowarstwowe tylko na pojedynczej maszynie Lasy drzew MapReduce/pojedyncza maszyna Algorytm centroid坦wMapReduce/pojedyncza maszyna Klasyfikatory bayesowskie-MapReduce
  • 21. Hadoopszybki start 21 Dwu g坦wnych dostawc坦w: Cloudera ClouderaExpress Hortonworks HortonworksSandbox
  • 22. Gromadzenie danych puapki Szybkie zapisywanie danych, to jedno, a agregacja na potrzeby analiz to drugie. W Hadoopatwo zapisa dane, trudniej wycofa raz zapisane rzetelny ETL. Analizowanie danych czy uzyskiwanie odpowiedzi w czasie rzeczywistym. To wbrew pierwszemu wra甜eniu cakiem skomplikowane rodowisko, wymagajce uruchomienia i utrzymania wielu usug. Hadoopdziaa na klastrze to naturalne rodowisko dla niekt坦rych firm, ale zupena nowo dla innych. Trzeba go zintegrowa z zewntrznymi 添r坦dami danych i systemami do prezentacji raport坦w. 22
  • 23. Jeszcze kilka pyta jeli chodzi o gromadzenie danych Lokalnie czy na zewntrz? Jaka przestrze dyskowa? Jaka pami operacyjna? Mo甜e CUDA? Skalowalno. 23
  • 24. Czy zawsze Hadoop? Potrzeba analizowania danych w czasie rzeczywistym: Storm(http://storm.incubator.apache.org/) Szybkie analizy w pamici operacyjnej: Spark(http://spark.incubator.apache.org/) Apache Top-Level Project od lutego 2014 Riak Cassandra Cakowita elastyczno jeli chodzi o struktur danych: mongoDB(https://www.mongodb.org/) mySQL, PostreSQL, 24
  • 25. Czy zawsze Hadoop? Niewielki wolumen danych. Niewielkie zr坦甜nicowanie danych. Dane o wyra添nej strukturze. Dane niewymagajce czenia jednolite 添r坦do. Nike zasoby po stronie IT (zasilanie danymi, zarzdzanie dostpami, utrzymanie systemu). Niewielki zesp坦 analityczny. Czasem podejcie relacyjne jest lepsze. 25
  • 26. Sp坦jna identyfikacja klienta Ograniczenia prawne. Pozyskanie danych ze 添r坦de zewntrznych czy si z kosztami -przemylany model biznesowy. Identyfikacja u甜ytkownika w r坦甜nych systemach ma r坦甜ny czas wa甜noci. R坦甜ne systemy posuguj si r坦甜nymi walutami: numer konta bankowego, identyfikator przegldarki internetowej, adres IP, numer telefonu, login do Facebook, adres poczty e-mail, 26
  • 27. Zanim zajmiemy si analiz zgromadzenie danych w skadnicy danych/hurtowni danych kontrola poprawnoci danych (braki danych, wartoci wprowadzane jako domylne) zaprojektowanie struktury danych, kt坦re maj by poddane analizie wygenerowanie zbioru danych kontrola poszczeg坦lnych zmiennych (braki danych, czstotliwo wystpowania poszczeg坦lnych wartoci, korelacja pomidzy poszczeg坦lnymi zmiennymi, wartoci odstajce) waciwa analiza Przygotowanie danych zajmuje 80% czasu 27
  • 28. W jakim rodowisku bdziemy prowadzi analiz? Dobra integracja ze zbiorami danych poddawanych analizie. Czy bdziemy generowa kod scoringowy? Jak czsto? Ewentualna potrzeba integracji z systemami produkcyjnymi. Jakich technik statystycznych chcemy u甜ywa? Czy widzimy biznesow przydatno analiz? (syndrom g坦ry, kt坦ra rodzi mysz) 28
  • 29. R vs Python Praktycznie standard. Du甜e i pr甜ne rodowisko u甜ytkownik坦w: mn坦stwo modu坦w, praktycznie ka甜da nowa technika statystyczna. atwo w dostpie do ludzi znajcych R i rozumiejcych zagadnienia statystyczne. Jednak: oddzielny jzyk programowania. Znakomite rodowisko do oblicze statystycznych SciPy Jzyk programowania, w kt坦rym mo甜na napisa MapReduce. Nie ma zbyt wiele os坦b na rynku czcych umiejtnoci programistyczne, znajomo technik statystycznych i zorientowanych na rozwizywanie zagadnie biznesowych. 29
  • 30. R vs Python sqldf(SQL) plyr(agregacja danych) stringr(operacje na tekcie) lubridate(operacje na datach) reshape2 (zmiana struktury danych) ggplot2 (wizualizacja danych) forecast(szeregi czasowe) rpart(drzewa decyzyjne) randomForest(lasy drzew) nnet(sztuczne sieci neuronowe) class(k-najbli甜szych ssiad坦w) IPythoninteraktywna praca z danymi, atwe zr坦wnoleglanie oblicze pandasszybkie przygotowanie danych do analizy statystycznej Matplotlibatwa i wydajna wizualizacja danych 30 pakiety
  • 31. Problem uniwersalny -ludzie Szukamy ludzi o niebanalnym zestawie umiejtnoci: administrator zarzdzanie klastrem programici -r坦wnolege przetwarzanie danych, ETL z r坦甜nych rodowisk analityk (data scientist) troch programista (map reduce), troch statystyk, dobrze rozumiejcy potrzeby biznesowe i specyfik danych 31
  • 32. wiat portali Mn坦stwo danych technicznych: Rodzaj przegldarki Rodzaj urzdzenia mobilnego Typ systemu operacyjnego Czy akceptuje javascript Wielko ekranu Poo甜enie geograficzne O kt坦rej godzinie zwyk czyta wiadomoci W kt坦rej sekundzie przesta oglda dany film Jakie treci szuka zanim znalaz si na naszych stronach Jakie strony odwiedzi W jakie reklamy klikn Z kim koresponduje/jak czsto 32
  • 33. wiat portali Ale: Ile ma lat? Jakiej jest pci? W jakiej miejscowoci mieszka na stae? Czy nie porzuci nas za chwil? 33
  • 34. wiat portali wyzwanie nr 1 Odtworzenie cech demograficznych Znamy cechy czci u甜ytkownik坦w (podaj je w momencie rejestracji) Korzyci: wiemy dla kogo produkujemy treci, bardzo przydatna informacja przy r坦甜nicowaniu treci 34
  • 35. wiat portali wyzwanie nr 2 Wy甜sza klikalnoreklam/mailing坦w Potrafimy odnale添 grupy zainteresowane okrelonym typem treci Korzyci: Prezentujemy u甜ytkownikom reklamy, kt坦re s dla nich bardziej interesujce przez to reklamy s odbierane jako mniej irytujce Podnosi si CTR klienci zlecajcy kampanie reklamowe s zadowoleni 35
  • 36. wiat portali wyzwanie nr 3 Personalizacja treci stron Redakcje produkuj/otrzymuj setki wiadomoci dziennie dziennie. Nasze strony maj bardzo ograniczon pojemno. U甜ytkownicy wchodz na strony z r坦甜n czstotliwoci. Czsto musz przewin stron, 甜eby odnale添 interesujc informacj. Korzyci: U甜ytkownicy odbieraj serwis jako lepiej dostosowany do swoich potrzeb. Potrafimy zmieci wicej informacji redakcja jest zadowolona. Lepszy kontekst dla reklam. 36
  • 37. wiat portali wyzwanie nr 4 Rekomendacja treci Niewiele punkt坦w wejcia Stosunkowo pytka penetracja Korzyci: Efektywniej wykorzystujemy wizyt u甜ytkownika. Wiksza ilo odwiedzonych serwis坦w/usug. Du甜szy czas spdzony z nami wicej okazji do wywietlenia reklam. 37
  • 38. wiat bank坦w Mn坦stwo danych o operacjach bankowych: Jak korzysta z karty debetowej Czy ma kredyt Jak korzysta z karty kredytowej Od kogo otrzymuje przelewy Na jakie konta przelewa pienidze 38
  • 39. wiat bank坦w Ale: Scroringkredytowy tylko jeli ma u nas kredyt, lub stara si o taki Saby opis transakcji bankowych Brak znajomoci potrzeb klient坦w Nie wiemy o wa甜nych wydarzeniach (zmiana pracy, narodziny dziecka, przejcie dziecka na kolejny etap edukacji, planowana przeprowadzka) Niewielu klient坦w przelewa wynagrodzenie 39
  • 40. wiat bank坦w wyzwanie nr 1 Kategoryzacja operacji bankowych Niewiele ma jawnie wpisany tytu przelewu ale mo甜na si oprze na numerze konta bankowego Kategoryzacja patnoci kartami: poo甜enie geograficzne, kategoria wydatk坦w (kody MCC), kategoryzacja miejsc Korzyci: podstawa do dalszych analiz 40
  • 41. wiat bank坦w wyzwanie nr 2 U甜ytkownicy bez historii kredytowej Modzi ludzie ubiegajcy si o pierwszy kredyt lub pierwszy powa甜ny kredyt. Bezcenne mo甜liwo signicia do danych pochodzcych spoza banku (firmy telekomunikacyjne, portale internetowe, media spoeczne) ale r坦wnie甜 do danych bankowych Korzyci: wity Graalscoringw oparciu o dane poza bankowe 41
  • 42. wiat bank坦w wyzwanie nr 3 Zwikszenie wartoci klienta Ludzie sabo znaj ofert banku. Niewiele okazji do interakcji z klientem. Wiedza o szykujcych si zmianach w 甜yciu klienta (przeprowadzka, narodziny dziecka, zmiana samochodu) Korzyci: Oferujemy usugi, kt坦re mog by interesujce dla klienta Oferujemy je we waciwym momencie Wykorzystujemy do maksimum kr坦tkie momenty kontaktu 42
  • 43. wiat bank坦w wyzwanie nr 4 Zapobieganie odejciom Szybsza spata kredytu. Likwidacja karty kredytowej. Likwidacja lokaty. Korzyci: Utrzymujemy klienta przy sobie. Klient wie, 甜e jest dla nas wa甜ny. Reagujemy w sytuacji rzeczywistego zagro甜enia odejciem. 43
  • 44. Inne wiaty 1.Towarzystwa ubezpieczeniowe 2.Sprzeda甜 towar坦w i usug 3.Opieka medyczna 44
  • 45. Big Data To nie jest co co si dopiero mo甜e wydarzy. Dla wielu firm, to codzienno od wielu lat. Dla innych firm, to bardzo pocigajca przyszo. Co co musi si wydarzy. Tam, gdzie pojawia si Big Data, zmieniaj warunki gry. 45
  • 46. Dzikuj za uwag Radosaw Kita r.kita@tvn.pl 46