# Teaching ML in Compact Courses **Anne Fouilloux, Peter Steinbach** ECMLPKDD2020 Teaching ML Workshop Satellite Event September 8, 2020 --- # Who are we? ---- # Anne Fouilloux ![](https://codimd.carpentries.org/uploads/upload_d8f5dc8122ef686fe7a80e7c59c45c8e.png) Research Software Engineer at [University of Oslo](https://www.uio.no/english/) for the climate community twitter:@AnneFouilloux github:@annefou ---- # Peter Steinbach ![](https://codimd.carpentries.org/uploads/upload_7bbcde039941dd0e88fd2a122a3b4ad6.png) [Helmholtz AI](https://helmholtz.ai) Consulting Team Lead at [HZDR](https://hzdr.de) twitter:@psteinb_ github:@psteinb --- # Our dataset ---- <div style="color: white; background-color: rgba(.2,.2,.2,.75);"> # Anne's - [one deep learning workshop](https://carpentries-incubator.github.io/deep-learning_intro/) in 2019 - About 35 learners - 2 days of teaching & practicals (carpentry style) - 3 deep learning work-along & study group sessions - 1/2 hour teaching - 1.5 to 2 hours bring-your-own-data and discussion </div> ---- <!-- .slide: data-background="https://codimd.carpentries.org/uploads/upload_d3e878a1cbb11df815e40d10612a3f59.jpg" data-background-color="#005" --> <div style="color: white; background-color: rgba(.2,.2,.2,.75);"> # Peter's - two deep learning bootcamps in [2017](https://indico.mpi-cbg.de/event/42/) and [2018](https://indico.mpi-cbg.de/event/118/) + 1 week each + 3.5 days of teaching + 1 day bring-your-own-data - one deep learning hackathon in [2019](https://indico.mpi-cbg.de/event/186/) - background: PhD students/PostDocs/RGL from natural science(s), business, engineering, digital humanities </div> --- # Agenda ["Ten Simple Rules for Running Interactive Workshops"](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1003485) Katrina Pavelin, Sangya Pundir, Jennifer A. Cham (2014) --- # 1 : Decide Whether an Interactive Workshop Is the Right Choice ---- # Anne - Interactivity helps to satisfy all the learners (optional exercises, discussion) - **[Co-develop training material](https://carpentries-incubator.github.io/deep-learning_intro/)** with other instructors and on-board helpers - Hard to correctly communicate learning objectives (learners often read "buzz" words only) ---- # Peter - teaching interactively is always a good choice - **potpourri of speakers** is hard to synchronize in one week (teaching style, notation, exercises) - single material or single speaker better during the event --- # 2 : Choose Participants Carefully ---- # Anne - First come, first served (university policy) - **very unhomogeneous classroom** - Much more homogeneous crowd with work-along and bring-your-own-data - Lesson learned: **select attendees**: - ask about learning objectives, and - how they will be using what they learn ---- # Peter communicating course content super tricky ![](https://codimd.carpentries.org/uploads/upload_64e8c92914125f0e45679cf1006c0a9a.png) --- # 3 : Identify Suitable Activities ---- # Anne - ice breaker, game, world of cloud ![](https://codimd.carpentries.org/uploads/upload_cd16065cb3d3786d32e908cae1db6130.png) ---- # Peter - :vertical_traffic_light: started with transfer learning (run your first deep learning within half a day) - :100: elaborate on this (NN, Loss, SGD/Optimization, ...) - :+1: run example code in ready-made jupyter notebooks --- # 4 : Identify Facilitators and Brief Them ---- # Anne - 2 **helpers** for workshops: - facilitators are even more important for online workshops (zoom host, hackMD host, helpers, etc.) - for work-along and study groups, instructor also had the role of facilitator: - possible with small groups only ---- # Peter used local cluster with [jupyterhub](https://jupyter.org/hub) interface - accounts for externals - no HPC - test, test, test *before* the workshop - next time: colab :question: --- # 5 : Consider Logistics, Facilities, and How to Record Outcomes ---- # Anne - **Delegate** logistics to Science Library: - used to organize workshops/events - makes it much easier for instructors - can get first help when starting the event - loan laptops when required - standard classroom for workshops and cabaret settings for work-along & study groups ---- # Peter teaching = :computer: based & coop prepared ![](https://codimd.carpentries.org/uploads/upload_10272848dc97cdbae0320f3daf4447a9.jpg) Note: - discuss still not optimal setup (see neck posture of participants) --- # 6 : Plan the Agenda ---- # Anne - Used a template from [The Carpentries](https://carpentries.org/): - :pencil2: plan for optional exercises - :coffee: long breaks for informal discussions ---- # Peter - leave room for breaks :coffee: - keep strictly to 7h max per day - dedicated breaks/sessions - :+1: lightning talks (first day self-introduction) - :+1: poster discussions - :-1: industry talks --- # 7 : Market Your Interactive Workshop As a Networking Opportunity ---- # Anne - Ice breaker: 🎲 :icecream: - have a short game on how neural networks work effectively (using sticky notes for weights, etc.) - :coffee::coffee: Long breaks for informal discussions ---- # Peter - learners bring a A1 poster to explain their data/problem - one longer break per day so people can discuss the posters - activity so that all learners cover at least 3-4 posters (:gift:) - bring-your-own-data as self-organized un-hackathon --- # 8 : Get the Best from Your Participants ---- # Anne - :coffee: had 1/2 hour morning coffee - :information_desk_person: help desk before the workshop - encourage more advance learners to help ---- # Peter - :+1: used [indico](https://getindico.io/) served workshop website as central resource (provide materials, announce schedule changes, ...) - :ok_hand: use hackmd/etherpad for topic blocks to collect notes as class - :rotating_light: used t-shirts to indicate helpers/teachers and learners - :heavy_check_mark: do quality assurance survey (online **during** workshop) --- # 9 : Follow Up with Your Facilitators and Create a Post-Workshop Report ---- # Anne - :clap::clap: Encouraged helpers and instructors to teach/lead future work-along & study group sessions - :mortar_board: :medal: Gave a certificate to helpers (at their demand) ---- # Peter - :woman-running: tricky to do follow-ups with instructors (typically busy in day job) - :medal: certificate to learners and helpers - :scales: have post-mortem meeting with all helpers/teachers (qualitative and quantitative feedback) --- # 10 : Follow Up with Your Participants ---- # Anne - Follow up with work along and study group activities ---- # Peter - :mailbox_with_mail: postcards from your future self - have learners write a postcard to their future self - send out 6 months past workshop - :computer: blog post - highlights on social media (return rate 20-30% of participants) --- # Summaries ---- # in one slide - Anne - :ok_hand: 2 day workshops is about right for novices - make workshop prerequisites **clear** - Peter - :sweat_smile: 1 week workshop on deep learning is intense - :goal_net: set goals right & :speaking_head_in_silhouette: communicate them - learning experience for all involved ---- # Anne acknowledges - [Carpentry@UiO](https://www.uio.no/english/for-employees/support/research/research-data/training/carpentry/) and its [StudyGroup](https://uio-carpentry.github.io/studyGroup/) and in particular Naoe Tatara and Annika Rockenberger - [Department of Geosciences, University of Oslo](https://www.mn.uio.no/geo/english/): Ana Costa Conrado and Jean Iaquinta ---- # Peter acknowledges - [MPI CBG](https://mpi-cbg.de): Reni Schimmel, Florian Jug, Uwe Schmidt, Martin Weigert, Gene Myers - [Scionics](https://scionics.de): Jeff Oegema, Ian Henry - [TU Dresden](https://tu-dresden.de): Walter de Back, Nico Hoffmann - [Zalando Research](https://research.zalando.com/): Kashif Rasul
{}