Z pamiętnika nauczyciela akademickiego: O pracach domowych

Najbardziej lubię prace domowe, które mogę czytać z zapartym tchem.
Jak to?
Ekscytować się pracami domowymi ponad 50 studentów robiących to samo zadanie?

Zobaczcie sami!

Na zajęciach z Technik Wizualizacji Danych (zajęcia na bazie Esejów o sztuce prezentowania danych) opowiadam studentom jakie wykresy są dobre a jakie złe.
Ale przecież studenci matematyki i informatyki nie biorą niczego na wiarę!
W ramach piątej pracy domowej sprawdzali czy faktycznie wygląd wykresu ma znaczenie.
Poniżej wyniki z kilku przykładowych prac domowych.
Prace polegały na przeprowadzeniu ankiety na temat związany z wykresami.
Zachęcam do zrobienia najpierw ankiety a później przeczytania o wynikach z ankiety.

Torty czy słupki?

Ankieta
Wyniki

Co oni robią na kolosie?

Ankieta
Wyniki

Albo słupki albo tytuł

Ankieta
Wyniki

Tego Nie Zobaczysz

Ankieta
Wyniki

Libre Office nie jest bez wad

Ankieta
Wyniki

Loteria

Ankieta
Wyniki

A może drzewo?

Ankieta
Wyniki

Nawet dziecko to zobaczy

Wyniki

Co jest w pudełku?

Wyniki

Świetne, prawda?

Dlaczego boimy się sztucznej inteligencji, dlaczego to przerażające i co możemy z tym zrobić?

W ostatnich miesiącach brałem udział w kilku panelach poświęconych SI, między innymi w Dysputach Pitagorejskich na PW. Przyznam, że przebieg dyskusji był często dla mnie zaskakujący, a może nawet przerażający. Dlaczego? O tym poniżej.

Mówi się sporo o gospodarce opartej o dane, rewolucji informacyjnej, przemyśle 4.0 itp. Spodziewałem się więc, że panele poświęcone Sztucznej Inteligencji będą krążyły wokół tego tematu. Co zrobić, by nasza gospodarka wykorzystała tę zmianę zyskując na konkurencyjności? Jak wykorzystać nowe technologie w jak największej części gospodarki? Jednak z jakiegoś powodu, dyskusja z publicznością zbiega na wątki typu ,,czy roboty zabiorą nam pracę’’ lub ,,czy sztuczna inteligencja się zbuntuje’’. Miała być nadzieja na lepsze jutro, a jest głównie strach i obawy.

Cóż, pewnie po prostu lubimy się bać, tym bardziej, że ten strach podsycają niektóre media czy filmy. Baliśmy się kosmitów, baliśmy się zmutowanych pomidorów, możemy się bać i SI. Obecny stan SI jest tak daleki od jakiejkolwiek samoświadomości, że strach przed SI jest równie irracjonalny jak strach przed tym, że lokomotywy parowe przerażą krowy tak, że przestaną dawać mleko a kury jajka (takich rzeczy obawiano się kiedyś).

Niestety strach przed SI, jest barierą rozwoju dla polskich firm, obawą przed wdrażaniem rozwiązań opartych o uczenie maszynowe. Mamy w Polsce sporo osób tworzących rozwiązania w obszarze uczenia maszynowego czy sztucznej inteligencji, ale zazwyczaj jest to outsourcing dla zachodnich firm, bardziej zaawansowanych technologicznie. Firmy szukające klientów na rodzimym rynku często borykają się z bardzo niskim zrozumieniem możliwości, ograniczeń i potencjału jaki daje uczenie maszynowe.

Sprawa jest poważna. Trafiłem ostatnio na raport ,,SZANSE I WYZWANIA POLSKIEGO PRZEMYSŁU 4.0” opracowany przez ARP, który pokazuje jak mizernie wygląda zaawansowanie robotyzacji i automatyzacji w Polsce. Dwa przykładowe wykresy z tego raportu poniżej.

Stwierdzenie z raportu: ,,Obok niskich kosztów pracy, to brak wiedzy i gotowości polskiej kadry kierowniczej do zmian jest główną barierą w rozwoju Przemysłu 4.0 w Polsce’’. Dodałbym jeszcze do tego zdania ukryty strach przed SI, które z jakiegoś powodu kojarzone jest częściej z robotami wyglądającymi jak człowiek zamiast z rozwiązaniami typu system rekomendacyjny Amazona czy wyszukiwarka Googla.

Co możemy zrobić by nie przegapić kolejnej rewolucji? Potrzebna jest szeroko zakrojona edukacja przedsiębiorców/społeczeństwa dot możliwości jakie daje analiza danych. Nie tylko edukacja kadr (programy studiów, też doktoranckich, to zwiększy podaż umiejętności) ale również edukacja przedsiębiorców (aby zwiększyć podaż). Zamiast straszyć w gazetach robotami, można pokazać mniejsze i większe sukcesy AI (i nie chodzi mi o granie w Go).

Microsoft w tym roku zorganizował ciekawe warsztaty/burzę mózgów na ten temat. Grupa z którą miałem przyjemność pracować zaproponowała opracowanie programu edukacyjnego/popularyzacyjnego pod hasłem ,,Zrozum syntetyczny rozum’’. Program (może prelekcje, może youtube, może artykuły w mediach lub TV), w ramach którego można by skupić się na popularyzacji użytecznych zastosowań SI i ML w gospodarce. Zarówno przez pokazywanie gdzie ML podniósł konkurencyjność firmy jak i przez zwalczanie absurdów w stylu samoświadome komputery walczące z ludzkością.

Łatwiej opracować takie materiały mając szerszą perspektywę wielu par oczu.
Jeżeli byłbyś zainteresowany/zainteresowana pomocą w opracowaniu takich materiałów (czy to przez wkład merytoryczny, techniczny czy jakikolwiek inny) to zobowiązany będę za kontakt. Jeżeli się zbierze kilka osób to z pewnością też znajdzie się sposób na realizacje tej inicjatywy.

PS: Ciekawy artykuł o trendach w postrzeganiu SI.

PS2: Z rozwojem SI są oczywiście związane różne zagrożenia (patrz moja ulubiona XAI), ale nie powinny być one stosowane jako wymówka do nie używania SI.

Koderek i BetaBit


W tym roku miałem ponad 20 referatów na 4 kontynentach. Ale największym przeżyciem był dzisiejszy.
Na wydziale MiNI PW opowiadałem o odkrywaniu świata przez wizualizację danych (Da Vinci, Nightingale, Snow i te klimaty) dwóm klasom 8-latków ze Szkoły Podstawowej nr 1.
Około 40 pełnych energii dzieciaków w sali 107 – gdzie mieści się do 250 studentów – super zabawa. Jest to fragment projektu Beta Bit – edukacji w obszarze Data Literacy (matematyka + informatyka) dla małych i dużych.

Kolejne warsztaty z tej serii już w sobotę 21 listopada na Koderku – arcyciekawej konferencji dla dzieci, młodzieży, nauczycieli i dorosłych.
Koderek to multum ciekawych referatów i warsztatów.
W tym roku jest też coś ekstra – labirynt z zagadkami logicznymi.
Pełny program jest tutaj.
Wciąż można się zapisywać.

Dyscypliny czasopism

Dzisiaj bardzo technicznie.
Od jakiegoś czasu, umysły wielu polskich naukowców zaprząta problem: do jakiej dyscypliny naukowej się przypisać?. Wczoraj ministerstwo opublikowało listę przypisań czasopism do dyscyplin (na tej stronie). Lista jest w postaci pliku pdf. Aby dało się z nią pracować zapisałem ją w formacie txt tutaj.
Przyjrzymy się tej liście.

Mamy na niej 44 dyscypliny i 27301 czasopism.
Dla 136 czasopism przypisano wszystkie 44 dyscypliny (np. Science czy Nature). Dla 3/4 czasopism przypisano trzy lub więcej dyscyplin. Poniżej histogram (obcięty do 20 czasopism dla czytelności).

Dla każdej pary dyscyplin policzyłem ile jest czasopism, które są przypisane do obu dyscyplin. Taką tablę współwystępowania można pobrać z tej strony.

A jak już mamy tabelę współwystępowania to trzeba zrobić z niej graf. Poniżej graf wykonany z użyciem pakietu igraph. Wielkość wierzchołka – liczba czasopism, grubość krawędzi – liczba wspólnych czasopism.

Mnie najbardziej interesowały dyscypliny z którymi czuję się jakoś związany. Wycinek powyższej tabeli dla 9 wybranych dyscyplin przedstawiam tutaj.

Jest kilka ciekawostek.

Np. dyscyplinę informatyka ma przypisanych 2510 czasopism, z czego 2506 ma też przypisaną informatyka techniczna i telekomunikacja. Wśród tych czterech z informatyki, ale nie informatyki technicznej mamy Journal of Experimental Algorithmics, Konstruktion i Positivity. Poza tymi nielicznymi wyjątkami, liczba czasopism z przypisaniem informatyka zawiera się w informatyce technicznej.

Matematyka ma duże przecięcie z obiema informatykami. 70% czasopism z przypisaną matematyką, ma też przypisane obie informatyki.

Nauki medyczne mają bardzo duże przecięcie z naukami o zdrowiu (to nie jest zaskoczeniem). Podobnie z biologią i bioinżynierią.

Bardzo dobre czasopisma związane z ML (np. Journal of Machine Learning Research, Journal of Statistical Software) są przypisane do obu informatyk i matematyki.

Część środowiska obawiała się, że jeżeli przypisze się do dyscypliny X to później okaże się, że nie może do tej dyscypliny przypisać części swoich prac. Ale ogólne moje wrażenie jest takie, że czasopisma do dyscyplin przypisane są z rozmachem.
Ministerstwo deklaruje, że nawet jeżeli czasopismo nie jest przypisane do jakieś dyscypliny, to będzie można konkretną pracę do dyscypliny przypisać, tyle, że nie z automatu.
Zobaczymy.
Bioinformatycy publikujący np. w Nucleic Acids Research nie znajdą w wykazie jej dyscyplin ani informatyki ani informatyki technicznej. A że problem (?) z NAR i mnie dotyka, więc pewnie jeszcze o nim napiszę.

Ponoć gdzieś po sieci krąży plik z informacją o punktacji dla poszczególnych czasopism. Chętnie sprawdziłbym jak to współdzielenie dyscyplin wygląda wśród tych najlepszych czasopism.

Matematyka i wizualizacja danych, czyli plany wydawnicze na koniec 2018

Na końcówkę roku szykujemy dwie bardzo ciekawe pozycje. Póki co zapowiedzi. Napiszę gdy już ukażą się w sprzedaży lub przedsprzedaży.


Pierwsza z nich to ,,W pogoni za Nieskończonością”. To 32 stronicowy komiks o przygodach Bety i Bita.

Tym razem rodzeństwo zmierzy się z Nieskończonością. A że to nie mały problem, więc i publikowany zeszyt jest początkiem (oby) dłuższej serii.

Patrząc na okładkę część z Was pewnie widzi kreskę znanego biologia i popularyzatora przyrody Tomasza Samojlika (autor między innymi książek o Żubrze Pompiku). Drugim rysownikiem jest Sebastian Szpakowski. Treścią matematyczną współopiekował się Łukasz Maciejewski.

Nie dajcie się zwieść. To nie jest komiks dla dzieci! Poruszamy w nim poważne tematy. Zresztą, już niedługo zobaczycie sami.


Druga zapowiedź dotyczy zeszytu ćwiczeń ,,Wykresy unplugged”.

Tym razem 28 osiem stron informacji o wykresach oraz miejsca na samodzielne praktykowanie sztuki wizualizacji danych.

Zeszyt wyposażony jest w 8 kompletów danych i ćwiczeń do samodzielnego wyrysowania. Wyrysowania ołówkiem i kredkami, nie ma co ograniczać się do możliwości nawet najlepszego programu graficznego. Jedynym ograniczeniem niech będzie wyobraźnia!

Obok ćwiczeń jest też kilka wkładek tematycznych o technikach wizualizacji. I w tym wypadku nie dajcie się zwieść kredkom. To zeszyt ćwiczeń dla każdej kreatywnej osoby, nawet zabieganego dyrektora działu Data Science.

Stroną graficzną opiekowała się Magda Małczyńska-Umeda i zespół StoryVisio (autorka między innymi Infostory), merytoryczną opiekowałem się razem z Ewą Baranowską, przy wsparciu Piotra Sobczyka z Szychta w danych.


Czekając na te pozycje można zawsze sięgnąć do pozycji już obecnych na rynku. Np. do Zbioru Esejów o sztuce prezentowania danych. Do zamówienia ze strony Wydawnictw Uniwersytetu Warszawskiego.

Z pamiętnika nauczyciela akademickiego: Challenge-Based Learning


Challenge-Based Learning to technika uczenia przez zderzanie uczestników (studenci, uczniowie) ze współczesnym, ciekawym, rzeczywistym problemem do rozwiązania.
Aby taki problem rozwiązać, uczestnicy muszą zrobić badania literaturowe, zrozumieć problem, zaprojektować rozwiązanie i to najlepiej działające. Ta technika jest coraz częściej stosowana w szkołach średnich i podstawowych otwartych na nowe formy nauczania. Rozmawiałem ostatnio z twórcą koderka (aktywności dla dzieci związane z informatyką i nowymi technologiami) o edukacji STEM dla dzieci i młodzieży. Wątek Challenge-Based Learning pojawiał się nieustannie.

A jak to może wyglądać na uczelni?
Od jakiegoś czasu (ojej, to już 10 lat?) testuję różne techniki edukacyjne na zajęciach. Tym razem sprawdzałem pewien pomysł wzorowany na Challenge-Based Learning. Poniżej opiszę sam pomysł wraz z moimi obserwacjami po przeprowadzeniu zajęć.

Zaprojektowany by upaść

Jak pokazać na zajęciach wyzwania, jakie niesie komunikacja przy budowaniu wspólnego rozwiązania przez wiele osób?
W letnim semestrze prowadziłem Zaawansowane programowanie i analizę danych w R na MiNI PW. Jako drugi projekt studenci wykonali inteligentnego asystenta, pakiet R, który pomaga w pracy analityka danych wykonując co trudniejsze/żmudniejsze czynności (jak już raz się nauczy wczytywać dane to nie będzie w kółko pytać o te same parametry analityka).

Każdy z 14 studentów (luksus pracy z małymi grupami) dostał do wykonania jedną funkcjonalność. W sumie te funkcjonalności powinny złożyć się w jeden pakiet – jednego asystenta wspierającego pracę analityka.
Wciąż, jeden student opiekuje się jedną przypisaną mu funkcjonalnością – wczytaj dane, wykonaj preprocessing danych, przeprowadź budowę modelu predykcyjnego, wygeneruj raport, zapisz wykres, odtwórz sesji itp.
Zaliczenie projektu dotyczy częściowo tej jednej funkcjonalności a częściowo spójności rozwiązania z całą resztą pakietu.
Pomimo iż każdy opiekuje się swoją częścią to też opłaca się wszystkim by całość działała.
A jak wiadomo, całość to więcej niż suma składowych.
Wspomniany asystent nazywa się Hugo. Jeżeli chcecie go poznać bliżej, to zerknijcie na https://github.com/hugo4r/hugo.

Czytaj dalej Z pamiętnika nauczyciela akademickiego: Challenge-Based Learning

ML models: What they can’t learn?

What I love in conferences are the people, that come after your talk and say: It would be cool to add XYZ to your package/method/theorem.

After the eRum (great conference by the way) I was lucky to hear from Tal Galili: It would be cool to use DALEX for teaching, to show how different ML models are learning relations.

Cool idea. So let’s see what can and what cannot be learned by the most popular ML models. Here we will compare random forest against linear models against SVMs.
Find the full example here. We simulate variables from uniform U[0,1] distribution and calculate y from following equation

In all figures below we compare PDP model responses against the true relation between variable x and the target variable y (pink color). All these plots are created with DALEX package.

For x1 we can check how different models deal with a quadratic relation. The linear model fails without prior feature engineering, random forest is guessing the shape but the best fit if found by SVMs.

With sinus-like oscillations the story is different. SVMs are not that flexible while random forest is much closer.

Turns out that monotonic relations are not easy for these models. The random forest is close but event here we cannot guarantee the monotonicity.

The linear model is the best one when it comes to truly linear relation. But other models are not that far.

The abs(x) is not an easy case for neither model.

Find the R codes here.

Of course the behavior of all these models depend on number of observation, noise to signal ratio, correlation among variables and interactions.
Yet is may be educational to use PDP curves to see how different models are learning relations. What they can grasp easily and what they cannot.

Rozstrzygnięcie konkursu Data Science Masters na najlepszą pracę z DS i ML

Screen Shot 2018-03-14 at 9.20.11 AM
Dzisiaj dzień liczby Pi. Dobry dzień na rozstrzygnięcie PIerwszej edycji konkursu Data Science Masters na najlepsza pracę magisterską.

Ze zgłoszonych 72 prac trzeba było wybrać 3, które otrzymają nagrodę. Tematyka tych prac była bardzo różna (chmura słów po prawej została wygenerowana z tytułów i abstraktów). Prace zgłaszane były z całej Polski (statystyki dotyczące uczelni są poniżej). Na gali będzie można zapoznać się z procedurą konkursową oraz z nagrodzonymi pracami. Autorzy nagrodzonych prac zostali poproszeni o kilkunasto-minutowe prezentacje.

W imieniu komisji oraz organizatorów (MiNI PW i Nethone) serdecznie zapraszam dzisiaj do sali 107 na godzinę 16:15. Po gali, przy poczęstunku, będzie można porozmawiać z nagrodzonymi. Więcej informacji tutaj.

How fractals helped my students to master package development in R

Last semester I taught an R programming at MIMUW. My lectures are project oriented, the second project was related to package development. The idea was straightforward: each team of students shall create a package that produces IFS fractals (based on iterated function systems). Each package shall have two generic functions: create() and plot(), documentation and vignette. Fractals shall be implemented with the use of S3 or S4 classes.

I have students with different backgrounds. Mostly statistics, but some are from physics, psychology or biology. I was a bit unsure how they will deal with concepts like iterated contractions.
After all results exceeded my expectations.

Guess what is happening with students engagement when their packages start producing nice plots. Their need/hunger for more leads to beautiful things.

This team got interested in nonlinear transformations. They manage to create Apollonian Gasket generator and much more. See their vignette and package here.

Screen Shot 2018-03-09 at 7.31.24 PM

This team got interested in probabilistic mixtures of two fractals. They developed a Shiny app that mixes two sets of contractions with given mixture proportions. Here is a mixture of Sierpinski gasket and a tree. Find out their vignette here.

Screen Shot 2018-03-09 at 7.29.58 PM

This team got interested in random fractals. They developed fractal generator that draws parameters of each contraction. In result they get beautiful random shapes like these. Here is their vignette.

Screen Shot 2018-03-09 at 7.37.42 PMScreen Shot 2018-03-09 at 7.37.31 PMScreen Shot 2018-03-09 at 7.37.26 PM

And these two teams got interested in different ways of fractal colouring. Vignettes of Team 1 and Team 2

Screen Shot 2018-03-09 at 7.40.15 PMScreen Shot 2018-03-09 at 7.36.01 PMScreen Shot 2018-03-09 at 7.31.05 PM

After all it turns out that fractals are very addictive!
Use it with care 😉

BetaBit: Tato, kiedy ty mi to wreszcie wytłumaczysz….

Konigsberg_riverCzasem, gdy rozmawiam o edukacji matematycznej dla dzieci, temat schodzi na zagadnienia typu: w jakie słodkie opakowanie ubrać tę gorzką pigułkę wiedzy, aby dziecko chciało ją połknąć. Że to niby tyle różnych cukierków dookoła, tu gra, tam facebook, trzeba z takimi gigantami rywalizować o uwagę dziecka.

Ale czy tak faktycznie jest? Mój syn mnie kiedyś zabił pytaniem ,,Tato, kiedy ty mi wreszcie wytłumaczysz co to jest DNA”? Zacząłem się zastanawiać, jak wyglądałaby interakcja pomiędzy uczniem a nauczycielem, gdyby uczeń robił co tylko może by wyciągnąć od nauczyciela wiedzę, a nauczyciel co tylko może by żadnej wiedzy nie przekazać. Do jakich pytań posunąłby się uczeń aby wyrwać nauczycielowi skrawki tajemnicy?

Skracając te przemyślenia i przechodząc do pointy.
Napisałem krótkie opowiadanko o takim chłopcu co bardzo chciał wiedzieć jak rozwiązać zagadkę z mostami w Królewcu.
Znajdziecie je tutaj.