Hans Rosling 27 VII 1948 – 7 II 2017

Screen Shot 2017-02-07 at 23.48.29

Dzisiaj umarł Hans Rosling, ikona wizualizacji danych, założyciel fundacji Gapminder i prawdopodobnie najbardziej rozpoznawalny i wpływowy statystyk XXI wieku (jeden ze 100 najbardziej wpływowych ludzi świata według Times 2012).

Znany między innymi dzięki swoim wystąpieniom na TED i TEDx. Najbardziej znane wystąpienia można zobaczyć tutaj.

Z pamiętnika nauczyciela akademickiego: Kaggle in Class


W tym semestrze na przedmiocie Statystyka II wykorzystywałem Kaggle in Class. Co to jest i co z tego wyszło? O tym poniżej.

Kaggle (https://www.kaggle.com/) to platforma hostowania konkursów opartych o dane. Firma, instytucja badawcza lub inny zainteresowany ogłasza na tej platformie konkurs, polegający zazwyczaj na wykonaniu predykcji w oparciu o jakieś dane. Wykryć raka na bazie rezonansu, przewidzieć zapotrzebowanie na prąd w szkole na podstawie historii, przewidzieć zajętość łóżek szpitalnych? To typowe problemy z tej platformy. Zgłaszający określa nagrodę, termin zakończenia konkursu, kryterium oceny zgłoszeń itp. Tematy konkursów są bardzo różne, dane są różnych kształtów, struktur i wielkości.

Kaggle in Class (https://inclass.kaggle.com/) to część platformy Kaggle, przygotowana do wykorzystania w ramach zajęć. Pozwala na tworzenie własnych konkursów wykorzystując istniejącą infrastrukturę do zgłaszania rozwiązań, oceny automatycznej, dzielenia rankingów na publiczny i prywatny itp. Trzeba wskazać zbiór danych, dokładnie opisać zadanie do wykonania, określić format przesyłania odpowiedzi, dokładnie opisać kryterium oceny rozwiązania. Rejestracja nowego zadania jak i przesyłanie odpowiedzi jest bezpłatne. Kaggle in Class jest bezpłatna i dla prowadzącego i dla studentów.

Statystyka II to kurs, na którym przez pół semestru omawiamy klasyczne techniki predykcji, takie jak bagging, boosting, stacking, lasy losowe, regresja itp. Akurat do ćwiczenia algorytmów predykcyjnych Kaggle pasowało bardzo.

Kilka luźnych wrażeń dotyczących użycia tej platformy.

* Korzystanie z Kaggle pozwala studentom na uzyskanie praktycznie natychmiast oceny zgłoszonego rozwiązania. Natychmiastowy feedback to bardzo przydatna rzecz, studenci nie muszą czekać aż ja ocenię zadanie, (prawie) natychmiast widzą jakie są wyniki, przez co nie tracą ,,momentum” w pracy nad modelem.

* Korzystanie z Kaggle In Class ma tę przewagę nad zwykłymi konkursami Kaggle, że prowadzący może całkowicie dowolnie dobrać sobie problem (omawiam predykcje wieloetykietową to wstawiam dane do predykcji wieloetykietowej), dobrać termin oddania projektu, określić maksymalną liczbą zgłoszeń dziennie itp.

* Kolejną zaletą Kaggle in Class nad Kaggle jest to, że prowadzący zna dane które są modelowane, jeżeli je symulował to zna prawdziwy model, jeżeli to prawdziwe dane z którymi wcześniej pracował to też dużo o nich wie. Dzięki temu w końcowej ocenie może ocenić zarówno podejście do modelowania jak i wybrany model a nie tylko wyznaczone predykcje.

* Kaggle umożliwia ustalenie maksymalnej liczby rozwiązań zgłoszonych dziennie. Ustawienie takiego ograniczenia na dwa dziennie premiuje zespoły, które do problemu podejdą wcześnie. Zgłaszanie rozwiązania ostatniego dnia to ryzyko, że dwa oddane strzały będą daleko od dobrych predykcji. Atakując problem odpowiednio wcześniej mamy większe pole manewru.

* Przygotowanie własnego konkursu niesie ze sobą też ryzyka. Jedno jest takie, że studentom uda się wygenerować idealną predykcję. Mnie to się nawet zdarzyło. Na rzeczywistych (!!!) danych w problemie binarnej klasyfikacji udało się po kilku dniach uzyskać skuteczność 100%. Z punktu widzenia predykcji to świetnie, ale aspekt dydaktyczny leży. Mamy rozwiązanie i już nikt nie opracuje lepszego, my też nie mamy czego poprawiać. Tak więc moje doświadczenie jest takie, że lepiej zamiast rzeczywistych danych wygenerować sztuczne dane o strukturze zgodnej z rzeczywistą, ale kontrolowanym zakłóceniem (np. zachować X, ale wygenerować y na bazie jakiegoś modelu). Jak to możliwe, że ktoś otrzymał 100% skuteczności na zbiorze testowym?

* Wyznaczenie jednego konkretnego współczynnika do optymalizacji bardzo zwiększa zaangażowanie studentów w realizacje projektu. Zamienia projekt w grę na optymalizację. Niektóre zespoły zgłaszały po 20 rozwiązań próbując poprawić nawet naprawdę dobre rozwiązania. To oczywiście miecz obosieczny, ponieważ w rzeczywistości określenie miary do optymalizacji to często zadanie samo w sobie, ale z punktu widzenia zaangażowania to przydatna cecha.

* Ocena nie może być oparta całkowicie o wyniki z Kaggle (jeżeli jest dużo dobrych rozwiązań, to to które jest najlepsze, zależy czasem od przypadku) a z drugiej strony jakoś z tymi wynikami musi być związana (inaczej po co się starać). W przypadku moich zajęć wyniki z Kaggla to była 1/3 punktów z jednego projektu, wydaje mi się to dobrą proporcją.

* Teoretycznie Kaggle In Class jest bezpłatne, ale nie ma się ludzkiego supportu gdyby coś poszło nie tak. W praktyce, gdy takiej pomocy potrzebowałem (musiałem anulować rozwiązania i podmienić dane gdy okazało się że można mieć 100% skuteczność), napisałem maila i człowiek (albo naprawdę sprytne AI) szybko odpisał poprawiając to co trzeba by wszystko działało.

1024 bity (i Bety)

c20

Miesiąc temu pisałem o akcji prowadzenia warsztatów ,,Jak zważyć psa linijką”.
Dzięki grantowi mPotęga planowaliśmy dotrzeć z warsztatami statystycznymi do 5 klas z różnych szkół.
Zainteresowanie okazało się jednak znacznie większe!
Do dziś udało się dotrzeć z warsztatami do ponad 30 nauczycieli i ponad 1000 (słownie: tysiąca!) dzieciaków.

Statystyka i programowanie w podstawówce? Za moich czasów tego nie było!

Czytaj dalej 1024 bity (i Bety)

MIMUW vs SuperFarmer

screen-shot-2017-01-04-at-23-02-08
W 1997 roku DeepBlue (IBM) wygrał z mistrzem szachowym Garri Kasparowem.
W 2011 roku Watson (IBM) wygrał w Jeopardy! z dwoma mistrzami Bradem Rutterem i Kenem Jenningsem.
W 2016 roku AlphaGo (Google) wygrał w go z jednym z najlepszych graczy Lee Sedolem.
A w tym semestrze, pod przykrywką zajęć z programowania w R i wizualizacji danych, studenci z MIM UW walczą z grą SuperFarmer. Szukamy strategii wygrywającej (w jakimś sensie).

SuperFarmer to gra wydana przez Granna na bazie gry Hodowla Zwierzątek, którą opracował matematyk, Karol Borsuk, profesor Uniwersytetu Warszawskiego. Zasady są dosyć proste, przez co można grać nawet z małymi dziećmi. Gra jest bardzo dynamiczna i przyjemna nawet dla wytrawnych / starszych graczy.

Póki co, najlepsza znaleziona przez studentów strategia ma medianowy czas gry 34 kroki (tj. w grze jednoosobowej dla najlepszej strategii, połowa gier kończy się zwycięstwem przed 34 krokiem).

rozkladliczbyruchow

Czytaj dalej MIMUW vs SuperFarmer

Konkurs na najgorszy wykres 2016 roku

Zbliża się nasz konkurs na najgorszy wykres tego roku. Kandydaci z poprzednich lat dowodzą, że nie jest prosto zdobyć ten tytuł (edycja 2015, edycja 2014, edycja 2013, edycja 2012).

Zasada konkursu jest prosta. Raz dziennie, do końca roku, można wskazać swoje typy za pomocą ankiety umieszczonej na końcu tego wpisu. Po nowym roku zobaczymy, który wykres otrzymał najwięcej głosów. To on otrzyma tytuł ,,Zniekształcenie roku 2016”, a więc grafikę najbardziej zniekształcającą prezentowane dane. Aby ułatwić głosowanie, każdy kandydat ma skrótową nazwę ,,wpadającą w ucho” nazwę.

Tym razem nominowanych grafik było kilkadziesiąt. Część otrzymałem na maila, część trafiła do mnie przez tag @smarterpoland na Facebooku lub Twitterze. Aby uprościć głosowanie, wybrałem 13 grafik w czterech grupach: ,,Ach te słupki”, ,,Co tam panie w polityce”, ,,Pole minowe” i ,,Niefortunne koło”.

Niech zwycięży najlepszy!

Czytaj dalej Konkurs na najgorszy wykres 2016 roku

Równanie Choinki

bokeh_plot-1

Bibliotek i narzędzi do tworzenia interaktywnych wykresów jest cała masa. Poczynając od tych pozwalających przy odrobienie wysiłku na wyrenderowanie praktycznie każdego możliwego wykresu (D3.js), po te generujące wykresy błyskawicznie, ale ograniczone do kilku szablonów (np. NVD3). Aby przetestować elastyczność różnych narzędzi, na ostatnich zajęciach z Technik Wizualizacji Danych wykonaliśmy test choinki – w bibliotece XYZ przygotuj interaktywną choinkę.

Poniższą przygotowali Jan Dyszyński i Maksymilian Mazur z użyciem biblioteki RBokeh (a dokładniej R-owego portu do Bokeh). Kod jest tutaj, przykład poniżej, przy odrobienie zoomu można odczytać równanie tej choinki.



screen-shot-2016-12-24-at-17-30-44

Po lewej i pod tym linkiem jest choinka, której autorem jest Piotr Smuda (najedźcie myszką aby sprawdzić jakie prezenty są pod choinką).

screen-shot-2016-12-23-at-15-03-41

Tutaj jest choinka w googleVis wykonana przez panią Małgorzatę Sobczak.

Kolejna choinka jest w ggiraph. Autorką jest Dorota Łępicka a kod jest tutaj.

screen-shot-2016-12-29-at-20-16-18

Muffinki pod choinkę (2.0)!

6014_2
Pierwszy nakład Muffinek rozszedł się błyskawicznie i od ponad tygodnia nie było ich w księgarniach, ale dzięki sprawnej pracy drukarni uzupełniliśmy nakład.

Jak długo żyją Muffinki od wczoraj (ponownie) u dystrybutora, a od dzisiaj w księgarniach. Czas realizacji jest taki, że jeszcze powinny dojść pod choinkę, więc gdyby ktoś był zainteresowany to zachęcam.

Opowiadanie ,,JAK SZYBKO UROSNĘ?” zostało w grudniu opublikowane w Małej Delcie i Delcie. Do pobrania jako html i pdf. Swoją drogą, więcej miałem z tego frajdy niż z publikacji w JSS, Delta rulez!

StatTuba w Twojej szkole (lub szkole Twoich dzieci)


StatTuba to projekt dotarcia do uczniów szkół podstawowych i średnich z wnioskowaniem opartym o dane. Pokażmy dzieciakom, że fajne rzeczy (czasem bardzo nieoczywiste) można robić, o ile tylko mamy odpowiednie dane.

Z akcją na PolakPotrafi.pl się nie udało, ale dzięki wsparciu z programu mPotęga (mBank), przygotowaliśmy materiały, pozwalające praktycznie każdemu zainteresowanemu nauczycielowi lub rodzicowi poprowadzenie warsztatów statystycznych w szkole. Materiały o których piszę niżej, są przeznaczone głównie dla klas 3-5.

Jak to działa?

1. Zainteresowany nauczyciel, rodzic lub inna osoba, która chciałaby w wybranej szkole poprowadzić warsztaty, wysyła na adres stattuba@gmail.com informację gdzie i kiedy chce te warsztaty przeprowadzić,
2. Do prowadzącego, na wskazany adres, wysyłamy całkowicie bezpłatnie materiały i instrukcje jak poprowadzić warsztaty (na jedną grupę średnio 30 papierowych kopii tego komiksu),
3. Nauczyciel lub rodzic prowadzi warsztaty, przesyła nam krótką (2-3 zdania) informację jak poszły warsztaty (najlepiej z jednym-dwoma zdjęciami) a my odsyłamy dyplom z podziękowaniami dla nauczyciela i dyrektora za udział w programie StatTuba,
4. Przewidujemy, że na warsztaty prowadzone w styczniu wyślemy materiały do 30 nauczycieli/prowadzących (10 już jest, szukamy kolejnych).

Na stronie http://betabit.wiki/warsztaty/ umieściliśmy szczegółowy wideo-opis tego, jak można poprowadzić warsztaty, jakie ćwiczenia przeprowadzić i jak wykorzystać przesłane materiały. W razie jakichkolwiek pytań chętnie udzielę szczegółowych informacji. Proszę o email na adres stattuba@gmail.com.

Materiały do warsztatów zostały przygotowane razem z Agnieszką Tomczyk i Martyną Śpiewak.

Bardzo zachęcam do poprowadzenia takich warsztatów w szkole swoich dzieci. To dla dzieci wielka frajda. Warto przesłać to ogłoszenie nauczycielowi matematyki (lub nauczania początkowego) w swojej szkole.

Prace domowe

Dawno już nie prowadziłem przedmiotu, przy którym tyle przyjemności sprawiało mi sprawdzanie prac domowych!

Na przedmiocie ,,Techniki prezentacji danych”, studenci jako prace domowe przygotowują grafiki związane z danymi, które znaleźli w gazetach z ostatniego tygodnia. Niektóre z tych prac są świetne. Poniżej dwie wykonane ostatnio przez Ewę Baranowską i Martę Jóźwik.

Tabela z Bloombergnews Polska

twd2

zamienia się w wykres przedstawiający rekordowe hiperinflacje (dwie z nich dotyczą Polski). Wykres trzeba oglądać w pełnej rozdzielczości (kliknij by otworzyć w pełnej rozdzielczości).

twd

Drugi wykres wyrósł z Pulsu Biznesu.

img_20161118_244049659

Trochę gg-magii i

twd3

Jak szybko urosnę? Czyli co ma wspólnego Singapur i BetaBit


Ze strony projektu BetaBit można pobrać plik pdf z opowiadaniem ,,Jak szybko urosnę?”. Pierwszym opowiadaniem ze zbioru ,,Jak długo żyją Muffinki?”. Niedługo pojawią się wersje elektroniczne kolejnych opowiadań.
Przez stronę projektu można też zakupić papierową wersję opowiadań lub komiksów.


Tematem przewodnim pierwszego opowiadania jest pytanie: kiedy będę wystarczająco wysoki/wysoka aby móc przejechać się kolejką górską? Szybkie kolejki mają ograniczenie na minimalny wzrost i czasem nawet stanie na palcach nie pomaga. A ten temat to świetna wymówka by porozmawiać o rozkładach wzrostu różnych dzieci w tym samym wieku.

Ale co wspólnego ma to opowiadanie z Singapurem?

Jakiś czas temu znajoma z Centrum Nauki Kopernik przywiozła mi z singapurskiego Art Science Museum książeczkę do pracy z dziećmi pod tytułem ,,Big Band Data”.
A co jest w środku? Ćwiczenia praktyczne na pracę z danymi, wizualizację, planowanie procesu analizy danych od ich zebrania po modelowanie.

O tak! Umiejętność korzystania z danych jest w rozwiniętych gospodarkach równie potrzebna jak umiejętność pisania i czytania. Trzeba więc pokazywać od młodych lat co i jak można z danymi zrobić.

Czasem spotykam się z głosami marud, że to pieśń przyszłości i trzeba poczekać jeszcze z 50 lat. Ale właśnie przykład z Singapuru pokazuje, że nie ma na co czekać.
Dzieci są ciekawe świata a ten można im pokazać przez pryzmat liczb.
Ale jeżeli można w Singapurze to można też w Polsce!

Więcej o projekcie BetaBit i dostępnych w nim materiałach można przeczytać na stronie http://betabit.wiki/.