Z pamiętnika nauczyciela akademickiego: Turkusowa Edukacja

Zaczyna się nowy semestr a z nim idą nowe pomysły na zmiany związane z dydaktyką. Co planujecie zmienić w swoich zajęciach? Dla mnie kolorem na semestr letni jest turkus.

Ale o co chodzi?

Chodzi oczywiście o nawiązanie do turkusowych organizacji. W Polsce twarzą turkusowej samoorganizacji jest prof. Andrzej Blikle. Pisze na ten temat blogi, książki (Doktryna Jakości, dostępna też jako bezpłatny pdf) czy prowadzi warsztaty (90 min w mp4).

W olbrzymim skrócie, w turkusowych organizacjach ważne jest zaangażowanie wszystkich uczestników organizacji we wspólne działanie, poczucie (faktyczne) sprawczości, podmiotowość w relacjach oraz rozwój własny członków organizacji, który przekłada się na rozwój organizacji.

Takie podejście do wspólnego działania powoduje, że uczestnicy organizacji mogą zaspokoić wyższe potrzeby, np. potrzebę poczucia dumy z siebie i swoich działań. Oczywiście można zapytać się czy taka utopia ma prawo funkcjonować, po przykłady i dyskusje odsyłam do powyższych pozycji lub do tego krótkiego wywiadu.

Jak to się ma do edukacji?

Gdyby szukać różnic pomiędzy organizacją a studiami na uczelni wyższej, to różnic można znaleźć wiele. Organizacje buduje się by rosła i trwała latami, a studia z perspektywy studenta mają określony zakres czasowy; przyjęcie do organizacji poprzedzone jest rekrutacją nad którą mamy dużą kontrolę, a na zajęcia przychodzą różne osoby, czasem przypadkowe.

Ale można też się skupić na podobieństwach. Zarówno w organizacjach jak i na zajęciach uczestnicy liczą na własny rozwój; tak w organizacjach jak i na uczelni większa efektywność jest możliwa przy współpracy i zaufaniu. Podobieństw można szukać dalej, dają one nadzieję, że pewne zasady dotyczące turkusowych organizacji można przenieść do klasy.

Nie jest to proste. Typowy schemat prowadzenia zajęć związany jest z najczęstszym pytaniem studentów na pierwszych zajęciach, czyli: jakie są zasady oceniania i czy obecność jest obowiązkowa. A jak przeczytamy tutaj, czwartym punktem dekalogu turkusowych organizacji jest nie oceniaj, bo to niszczy – doceniaj, bo to wzmacnia.
Czy można nie oceniać? Co prawda mógłbym studentom powiedzieć na początku semestru ‘pracujcie a będzie dobrze’, ale Polska Komisja Akredytacyjna ocenia (oceniając kierunek) też jasność kryteriów oceniania przedmiotów opisanych w karcie przedmiotu, zupełnej samowoli tutaj nie ma.

Czy trzeba oceniać by wystawić ocenę?

Wątków związanych z turkusem jest wiele, poniżej rozwinę ten związany z ocenianiem.

Kiedyś próbowałem w ocenianie wciągnąć samych studentów dając im część punktów do rozdzielenia. Ale to był bardzo zły pomysł. Ocenianie kolegi/koleżanki nadwyręża społeczne więzy pomiędzy studentami, które dla wielu z nich są ważniejsze niż sama ocena (nic dziwnego).

Inne podejście polegało na uzupełnianiu oceny za projekt szerszą informacją dotyczącą wad i zalet oraz kierunków poprawy zgłoszonego rozwiązania. Bogu świeczka (=studentom feedback), diabłu ogarek (ocena oparta na punktach dla PAKA)? Niestety odnoszę wrażenie, że jeżeli feedback stoi obok oceny punktowej, to i tak dla większości studentów liczy się ocena punktowa a nie proza i szkoda godzin spędzonych nad redakcją tych opisów. Feedback jest użyteczny, ale jego odbiór bywa zdominowany przez punkty.

Jeszcze inna próba dotyczyła oceniania zespołu jako całości, a nie studentów indywidualnie. To podejście bardziej wspiera współpracę w zespole, ale wciąż mamy ocenianie tyle, że dwóch-trzech osób zamiast jednej.

A więc jak będzie wyglądała ocena bez oceniania tego lata?

Prowadzę zajęcia projektowe. Główny pomysł polega na tym, by wybrać projekty, które chciałbym by zostały zrealizowane, z których mógłbym się czegoś ciekawego nowego dowiedzieć.
Projekty podzielone będą na zadania, tak by uzyskanie oceny X było związane z wykonaniem konkretnego zdefiniowanego zadania.
Zadania, którego wykonanie będzie wymagało określonej wiedzy i umiejętności a z drugiej strony, zadania którego wykonanie będą mogli zweryfikować sami studenci. Nie będzie więc elementu zaskoczenia ‘ocenił mnie lepiej/gorzej niż się spodziewałem’, ale będzie wiadomo co trzeba wykonać na ocenę X. Aby uzyskać ocenę X+1 trzeba zrobić wszystkie zadania na ocenę X i dodatkowo to na ocenę X+1.
Przy odpowiednim zdefiniowaniu zadań, ocena jest (prawie automatyczną) konsekwencją aktywności studenta, a prowadzący zamienia się w potencjalnego współpracownika, który może doradzić co opanować by dane zadanie rozwiązać. Co więcej, który sam jest zainteresowany poznaniem odpowiedzi.

Jak się sprawdzi to podejście? Zobaczymy w czerwcu.
Jeżeli macie ciekawe pomysły/propozycje, chętnie usłyszę.

histoRia R w Polsce @ tRzecie uRodziny SERa

histoRia
Najbliższe Spotkanie Entuzjastów R (9 marca 2017) będzie wyjątkowe. Świętujemy trzecie urodziny SERów i z tej okazji będzie kilka niespodzianek. Zamiast pizzy będą bąbelki i coś słodkiego, zamiast przerwy zrobimy sesje tematycznych okrągłych stolików aby spokojnie porozmawiać z innymi entuzjastami R, a zamiast referatu o tym co aktualnie dzieje się w R będzie referat o przeszłości, o tym jak wyglądały początki R w Polsce.

Mam poprowadzić ten referat, ale przecież nie znam całej historii R.
Mam więc wielką prośbę do Was!
Pomóżcie mi uzupełnić informacje o tym jak wyglądały początki R w Polsce. Kiedy jakie przedmioty pojawiły się na których uczelniach, kiedy w firmach pojawiły się duże i ciekawe rozwiązania/wdrożenia oparte o R, kiedy miały miejsca ciekawe spotkania związane z R. Kiedy działy się ciekawe rzeczy związane z R, co to były za rzeczy i kto je organizował.

Założyłem na GitHubie stronę do której można dodawać interesujące ciekawostki związane z historią R (https://github.com/mi2-warsaw/SER/blob/master/histoRia/README.md).
Jeżeli wiecie o aktywności, która powinna się w tym zestawieniu znaleźć, proszę dopiszcie, albo przez nowe issue, albo nowy pull request albo przez wysłanie mi emaila na adres przemyslaw.biecek na serwerze gmail.
Mogą to być wydarzenia z już wymienionych typów a mogą to być całkowicie nowe rzeczy.

Dziękuję i do zobaczenia na SERze!

Więcej statystyki Bayesowskiej

Statystyka częstościowa królowała w naukach empirycznych przez większość XX wieku. Początki XXI wieku wieszczą zmiany. Od kilkunastu lat pisał o nich np. Terry Speed na łamach biuletynu IMS. Pisało też wielu innych, ale Terry Speed jest biostatystykiem więc łatwiej mi się na niego powoływać. Zmiany nabrały tempa po rekomendacjach ASA sprzed kilku miesięcy dotyczących p-wartości, a więc jednej z głównych nóg statystyki częstościowej.

Jakby tego było mało, w ubiegłym tygodniu Frank Harrell opublikował post My Journey From Frequentist to Bayesian Statistics. Pierwsze zdanie to: If I had been taught Bayesian modeling before being taught the frequentist paradigm, I’m sure I would have always been a Bayesian. Mocne prawda?

Również niedawno zamieszanie wokół p-wartości spowodowały posty Andrew Gelmana z serii pizzagate. Tu co prawda czarnym charakterem nie jest sama p-wartość ale profesor, który wykorzystał p-hacking do (prawie) granic przyzwoitości.

Kolejny sygnał, że warto do edukacji statystyków i data-scientistów wprowadzać więcej statystyki Bayesowskiej. A semestr letni tuż tuż…

How to hire a Data Scientist?


W poprzednim tygodniu odbyła się konferencja Big Data Technology Summit 2017. Organizatorom udało się osiągnąć dwa cele, było wiele ciekawych merytorycznych referatów oraz wielu ciekawych uczestników z którymi można porozmawiać w kuluarach. Podczas sesji round-table miałem przyjemność poprowadzić stolik How to hire a Data Scientist? Wrażenia z tego stolika opisuję poniżej.

Dyskusja potoczyła się zaskakująco, choć na początku było dosyć klasycznie

Wśród uczestników tego stolika było kilku przedstawicieli biznesu, którzy do swoich firm lub działów szukają data scientistów (dalej juz piszę DS by nie kaleczyć tak bardzo języka), były też osoby zainteresowane rozwojem w tym kierunku.
Na początku było dosyć standardowo, czyli narzekanie, że zrekrutować DSa jest trudno. LinkedIn jest mało skuteczny, bo specjaliści dostają po kilka ogłoszeń tygodniowo i już ignorują większość z nich więc trzeba szukać innych ścieżek.
Na pytanie, co z rekrutacją na możliwie wczesnym etapie, jeszcze studentów na uczelniach, pojawiły się odpowiedzi, że ważna jest obecność firmy na uczelni ale (uczestnicy stolika) nie rekrutują osób na stanowisko DS na wczesnych latach a raczej starają się zdobyć już doświadczonych pracowników.
Samo w sobie to ciekawa deklaracja. Być może aby zostać DSem trzeba najpierw zjeść trochę chleba pracując na bardziej klasycznym stanowisku? A może uczenie się przez całe życie jest wpisane w zawód DS, a łatwiej się uczyć gdy ma się solidne podstawy po ukończonych dobrych studiach.

Z konstruktywnych wniosków pojawiło się np. stwierdzenie, że to co przyciąga DSa to ciekawe projekty i dostęp do ciekawych danych. W perspektywie dłuższego zatrudnienia, jest to silniejszym magnesem niż kolejna podwyżka. Ten motywator działa słabiej podczas pierwszej pracy, która motywowana jest najczęściej tym, że koledzy/żanki na studiach już zarabiają a ja jeszcze nie, ale gdy szukamy specjalistów w DS to właśnie możliwość rozwoju w ciekawym środowisku staje się coraz ważniejsza.
Ale jak dać znać pracownikom, że w firmie dzieją się ciekawe rzeczy? Jednym z rozwiązań (choć wciąż mało popularnym) jest blog pokazujący co ciekawego dzieje się w środku firmy/zespołu.

Później było jeszcze ciekawiej

Z ciekawszych wątków, w dalszej dyskusji pojawiła się np. wątpliwość, czy w ogóle warto szukać i rekrutować DSów?
Po co się zastanawiać jak rekrutować, jeżeli nie mamy pewności, że nasz biznes jest już gotowy aby przyjąć do pracy nowych DSów? Nawet jeżeli mamy nadwyżkę w budżecie na zespół DS, to warto świadomie określić po co nam ten zespół. W przeciwnym razie zdobędziemy kilka osób, które przyjdą, popracują rok, zobaczą że ich analizy są na nic i sobie pójdą.

Jeden z cytatów, który wpadł mi w ucho, to ,,jak wiemy DSy obumierają w samotności”. Czyli aby DSy pracowali efektywnie potrzebują zespołu, a może nawet całego ekosystemu wspierającego i uzupełniającego ich pracę.
Ale to wymaga od biznesu zbudowania zaplecza złożonego z inżynierów, którzy postawią i utrzymają te wszystkie sparki, hive’y, skonfigurują spotowe instancje na AWSie tak by potrzebne dane były zebrane i dostępne.
Jak również zaplecza po stronie kierowników, dyrektorów i zarządu, które pomoże nowe rozwiązanie wdrożyć lub przynajmniej przetestować w biznesie.
Aby zbudować efektywny zespół DS trzeba w wypracować pewną kulturę pracy z danymi, jeżeli nawet nie w całej firmie, to przynajmniej w warstwie zarządczej.

A więc jak rekrutować te jednorożce zwane DSami?

Dobrym kierunkiem jest taka organizacja biznesu, by istniało wsparcie techniczne pozwalające na efektywny dostęp do danych oraz warstwa zarządcza gotowa na wdrożenie zmian sugerowanych przez dane.
Do takiego środowiska DSy same przyjdą jak do wodopoju, bo będą czuli, że ich wysiłek na coś się przełoży. A świat się skurczył i informacja o tym gdzie dzieją się ciekawe rzeczy a gdzie nieciekawe szybko się rozchodzi.

Gdy już takie środowisko zostanie zbudowane, to nie zaszkodzi umieścić ogłoszenia na portalu http://datahero.tech/ lub przyjść czasem na uczelnie z ciekawym referatem (np. na SERy).

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.