[ closed ] Feedbacks from existing study groups

[ This post was turned into wiki. You can edit it. ]

April 2, 2019 | Closing this topic and publication of the guide as markdown in a new topic : Fastai Study Group Guide

April 1, 2019 | End of the work on our Fastai Study Group Guide today. More information in this post. Thanks to all :slight_smile:

March 12, 2019 | I posted the version 1 of the Fastai Study Group Guide at (link deleted).


By this post (October 2018), Jeremy facilitated the creation of local fastai Part 1 (2018) study groups. While Part 2 (2019) will start soon and groups continue to be created in the world using Part 1 (2018), it would be interesting to collect feedbacks from the organizers and participants of these groups in order to list the best practices and also to avoid some gaps.

First, we need to define the fields to qualify different aspects of a fastai study group, fields that will be used to create a Google sheet in which organizers as well as groups participants can enter their comments.

In order to start the discussion, I propose the list below. This list is not exhaustive. The goal is to improve it by exchanging posts on this thread.

In order to promote this discussion, I will post the following message in the threads of existing study groups of this forum to the organizers and groups participants.

Hello, I just started a discussion thread on fastai study groups to gather feedbacks from the organizers and participants in order to list the best practices and also to avoid some gaps.
You will find more information in this post. Thank you if you can take a few minutes to participate in the discussion.

Next week, I will summarize the proposals to define a list of feedback fields and post the link to the Google sheet.

Thank you all :slight_smile:

List of feedback fields (draft):

  • Challenges (1) / Recommendations (2)
  • Collaborations (3)
  • Follow up or professional projects (4)
  • Selection of participants?
  • Registration method (online registration form, etc.)?
  • Number of organizers?
  • Average number of participants?
  • Number of meetings per week?
  • Duration of a meeting?
  • Classroom equipment? (projector, wifi, etc.)
  • Site / Facebook page / twitter / Meetup for the study group?
  • Cloud in order to store online all documents created in the sudy groups (slides, guides, notebooks, etc.)? (ex: a shared Google Drive with all reading/writing rights for all)
  • Any (free) online working/communication channel out of the forum? (slack, telegram, whatsapp, Google Group, newsletter, etc.) (fastai forum + Slack seems to be a winning combination for most study groups)
  • Definition of a course objective? (number of meetings, creation of a notebook, etc.)
  • Ask volunteers to be referents in the installation of a DL environment?
  • Before lesson 1, meeting on how to install a DL environment (python+numpy, GPU in laptop (Windows, Apple, Linux) / cloud, jupyter notebook)?
  • Group participants by level (beginners and advanced) or create 2 groups (concepts and coding) and let participants choose?
  • Creating groups of students to study outside of meetings?
  • Proposing Kaggle challenges to groups?
  • Teaching process? (an instructor presents the key points / no teaching but watch fastai videos / walking through the notebooks on a different dataset, sharing the learnings and discuss with the group how it can make it even better / other)
  • Watch the fastai video in meetings?
  • Coding session in meetings?
  • Creation of slides by using @hiromi notes?
  • Create a Participant Guide with installation advises, course content, list of resources and how to study at home (see How to do fastai - Study plans & Learning strategies)?
  • Get some parameters/numbers/quality evaluation to estimate the success of a fastai study group (evolution of number of participants, number of presentations by participants, number of blog posts, number of published notebooks, satisfaction survey, etc.)
    ā€“ How are the participants involved? (weekly presentations, etc.)
    ā€“ Which percentage of participants stayed until the end?
    ā€“ How many posts from participants published?
    ā€“ How many projects launched?
    ā€“ How many notebooks published?
    ā€“ Quality survey completed by the participants?
  • Other problems

(1) Challenges

  • Participants:
    • Empowerment of participants (weekly participation and stay until the end)
    • Different levels of knowledge (beginner, intermediate, advanced)
    • Different personal goals
    • Different learning speeds
    • Too much to learn for the participants (DL theory and fastai library)
    • Temporal variability at which participants can attend
  • Organizers:
    • Too much preparation time for a single organizer
    • Logistic (classroom, communication channels, etc.)
    • Stay on schedule

(2) Recommendations

  • Create a form to be filled in by each participant about the challenges: answers could help create small study groups.
  • Each course should have a lesson review (of the precedent lesson as a reminder and at the end in order to fix new contents in mind) and a practical exercise.
  • Between 2 courses, the forum (or the online service chosen as slack, etc.) could be used to discuss specific topics.
  • Preparation time: rotating hosts helps share preparation work
  • Initiatives of diverse topics: mini-presentations of 10-30 minutes are welcomed (it encourages more participation and offer a refresher of the course details or projects fastai-based), winning solutions of long-term hackathons, student projects, implementing papers, transitional ML techniques, explainable AI etc to mix with fastai lessons to meet our diverse audiencesā€™ needs.
  • Different kind of meetings at different time (evening, lunch, etc.): there is the main weekly meeting but offering other slots for presentations for example can be a solution to reach out those who canā€™t attend the main meetup.
  • Keep learning with fun : do a group project together to learn and have fun and after evening meetup, go out for dinner to continue nerd-chat.
  • Growing of the study group: get one or more local sponsor in order to help with venue larger, food and drinks, and even cloud computing credits.

(3) Collaborations

  • with local companies and if yes, how?
  • with local universities or schools and if yes, how?
  • with initiatives like City AI, AI saturdays, meetups or others and what would be the benefit?
  • Be part of a bigger communities in your local area (for example, do presentations in local research institute and universities)

(4) Follow up or professional projects

  • Did you try to organize special interest groups around topics (eg to deoldify pictures, analyze tabular data, language topics) to deep dive and prototype apps?
  • Weekly coworking sessions ?
14 Likes

I tried to post my invitation message to different fastai study groups of this forum, but as the text is identical, the publishing system does not allow it. @jeremy, how can I inform all the study groups about the existence of this thread? Thank you.

Organizing a MOOC study group is an interesting small group challenge (some of my interests are in small group psychology and education). My reply only concerns virtual study groups, and Iā€™m coming at this from a theoretical learning and small group psychology viewpoint. Letā€™s make the analogy that we do some ā€˜transfer learningā€™ for how large academic conferences are setup after the plenary lectures are given and apply that here: namely, people go into subgroup topic lectures, workshops, or small group discussions after the main lecture. The following is how we could do that for a MOOC.

Observations/Challenges for a MOOC small group:

  1. Different levels of knowledge
  2. Different goals for accomplishing each week
  3. Each person progresses differently over time during the course
  4. Temporal variability in when people can attend

Recommendations:

  1. Meaningful groupings of people likely revolve around: a) common levels of knowledge or b) common goals for the week.
  2. At the end of each lesson we formulate virtual fast.AI rooms centered around some common shared interest: a) discussing an academic paper (beginner, intermediate, advanced); b) creating a prototype based on the lesson; c) doing a review of the lesson for people with less experience, perhaps led by someone with advanced knowledge. For example, after the lesson is finished I could create a new topic entitled ā€œFast.AI virtual room proposal: discussing the ethical implications of AI (beginner)ā€. People can like or reply in the topic for that proposal which is directly related to the lecture that week.
  3. 24hrs after each lecture, people ā€œjoinā€ into each of these ā€œvirtual roomsā€ to hash-out the specifics and decide on the pathway forward.
  4. After the next lecture, everything resets. If you enjoy a particular personā€™s company then you connect and join the same virtual room next time.
3 Likes

This makes organising difficult! It does help that Jeremy goes through things so thoroughly from the beginning.

Do you think you need both of these to have a good group? And what virtual rooms do you use?

Local system configuration assistance provided?
GPU recommendations (local, cloud)?
Cloud providers recommended/avoided? Other cloud providers used by attendees?
Choice of local platforms (Linux, Mac, Windows)?
Remote system access methods (VNC, Remote Desktop, Teamviewer)?
Jupyter Notebook access methods (local subnet only, public IP using which protocols e.g. serveo.net)?

1 Like

People would self-select into the groups. Propose the virtual group in the forums, allow people to see the variable offerings and then organize a virtual meet up in Discord/Slack/Hangouts. The TWiML group has the idea, theyā€™re doing a sub-lecture variant guided by a mentor.

I donā€™t see the point in either of these situations:

  1. Same levels of knowledge but different goals
  2. Same goals but different levels of knowledge

The beauty of a MOOC is that we should be able to satisfy both conditions close enough to make groups meaningful. Groups donā€™t have to be big; keep in mind you start losing cohesiveness/intimacy after 4ā€™ish people. Trying to force a group without satisfying both of those conditions seems futile.

What would probably lead to the most success are the following constraints/disclosures for each group:

  1. Prereq knowledge: beginner, intermediate, advanced, all
  2. Type of meeting: lecture w/ mentor, lab/experimentation/coding, discussion
  3. Proposed topic/mission with mission statement. The narrower the better.
2 Likes

Good morning @soco_loco. Thanks for your contribution!

I think that most of challenges/recommendations you wrote about a MOOC study group are common with the ones of a in-person study group.

My summary of your posts and proposals:

  • Challenges: you are right that participants come with different knowledge levels in coding, python, GPU environment, DL, Pytorch, fastai, etc. (beginner, intermediate, advanced), different goals, different learning skills and different available time. These 4 issues could be used to create a form to be filled in by each participant and answers could help create small study groups (Iā€™m a big fan of small groups :slight_smile: ).

  • Recommendations: as said, creating small study groups and I think like you that each course should have a lesson review (of the precedent lesson as a reminder and at the end in order to fix new contents in mind) and a practical exercise. Between 2 courses, the forum (or the online service chosen as slack, etc.) could be used to discuss specific topics.

Iā€™ve updated the first post of this thread with challenges/recommendations. Thanks!

Good morning @bsalita. Thank you for your list of issues.

I fully agree with technically assisting participants with setting up the DL environment. Otherwise, many of them may resign.

Proposals:

  • Ask volunteers to be referents in the installation of a DL environment.
  • Before lesson 1, set up an installation meeting on the laptop installation of the Fastai library and notebooks (Windows, Apple, Linux), use of a GPU in the cloud, python + numpy basics, jupyter notebooks basics with the goal that all participants (even beginners) can run the fastai notebooks at home after this practical meeting.

Iā€™ve updated the first post of this thread with these proposals based on your feedback. Thanks!

@pierreguillou great idea, for handling forum issues like posting similar text maybe also Stas or Sylvain can help.

Vik, Bobby (collaboration with AI labs) and I organize a fast.ai studygroup in the Hague, Netherlands. It is really great, we do look however for ways to making this less dependent on few members, e.g. when they travel. So, we would be interested in understanding if others try to collaborate with e.g. local schools, universities, companies and other initiatives. Hence, we could include:

  • do you collaborate with local companies to run the study-group and if yes, how?
  • do you collaborate with local universities or schools to run the study-group and if yes, how?
  • do you collaborate with initiatives like City AI or AI saturdays or others and what would be the benefit?

Makes sense to include such ? @martijnd

1 Like

Hi @pierreguillou thank you for creating this feedback thread.

I represent TWiMLAI Meetup, Community. TWiMLAI is also a podcast hosted by Sam Charrington. The community is sponsored by Sam (He has sponsored our Zoom calls account and hosted a slack group)

Iā€™ll share my knowledge and ideas down to the most detailed points as much as possible, Iā€™m happy to provide more details.

Complete details, reposted from here for reading:

Meetup location: Online via Zoom Calls
Time: Each Saturday, 9 AM Pacific Time
Duration: 60-90 minutes

Details about TWiMLAI can be found here

Format: Weekly meetups, hosted by rotating hosts.
What are rotating hosts?

A small team within the community already based on a poll fixes between themselves to do the presentations.
@miwojc, @pnvijay , Jon F, @jcatanza, and me decided to keep switching between ourselves to do the lesson presentations.

We glance over the details and discuss them, do AMA and if we are not able solve our doubts then we post our questions here.

Mini-Presentations: We also welcome mini-presentations of 10-30 minutes. For Ex: This week I had discussed the EDA paper.

Time: Depending on the agenda, 60-90 minutes.

Participants: 30-60 usually.

Method of inviting: Sam has generously shared the details and reminders via his newsletter and the infamous slack: @ channel prompt.

A few issues weā€™ve had:
Zoom has a learning curve to it, sometimes sharing a screen or muting participants becomes a challenge.

Another challenge weā€™ve faced is to keep within the timelimits. Weā€™ve often went overboard by 10-15 minutes.

Other issues faced:
To much to prepare. We solved this by rotating hosts.

Too much theory:
We invite everyone to do mini-presentations. These encourage more participation and offer a refresher of the outside the course details or projects based on fast,ai

5 Likes

The first post of this topic was turned into wiki. You can edit it with your proposals.
Thanks Jeremy :slight_smile:

1 Like

This is basically a repost of the key parts of something I wrote last year about a ā€˜liveā€™ā€™ study group I helped to organise. It hopefully contains some ideas that others may possibly find useful:

Last summer, as part of the London Data Science Workshop Meetup group I was lucky enough to act as co-host of a seven-week study group series based around part 1 of the fastai course. The response was extremely positive and we attracted 20+ attendees each week, many of whom came to every single session.

Here are a few observations for anyone who might be looking to run their own study group:

  1. This series was run as part of a well-established meetup group, and we were well aware that by offering something for free, we would inevitably attract a bunch of non-shows. With only limited capacity at the venue, itā€™s certainly a challenge is to try and filter out these time-wasters in order to leave spaces open for those who are actually committed to attending. In order to combat this problem, before we even ā€œannouncedā€ the first meeting on Meetup, we contacted many of our regular members to invite them to sign up. Then at each meeting we ā€œannouncedā€ the following weekā€™s meetup, so that those who were actually at the meetup were guaranteed first claim on spots for the following week.
  2. We split our study group into two tracks, a ā€œconceptsā€ group and a ā€œcodingā€ group, with people free to switch between them at will. Our idea was that we would provide an environment for people to study the course together whichever way they preferred. The coders worked together on programming tasks, while (for the first part of each session at least) the rest of us focused on discussing the weekā€™s lecture material using some slides that I produced each week.
  3. Most weeks we also managed to find one or two volunteers to provide a lightning talk on a deep learning project on which they were trying out their new skills, which was a fun way of getting people more engaged with one another.
  4. We also provided a Slack channel so that people could share links to articles, repos, slides etc., and also continue their discussions outside of the weekly session.
5 Likes

Thank you @Benudek for your questions. They make sense :slight_smile: because the fastai material must allow - by nature - the majority of people to do DL in practice. Collaborations with local businesses, universities, schools, and/or AI initiatives are helping to achieve this goal.

Iā€™ve updated the wiki post of this thread with your questions.

1 Like

Thanks @init_27 for your feedback :slight_smile: I used it to update the wiki post with the following points:

  • Any online working tool out of the forum? (slack, telegram, whatsapp, newsletter, etc.)
  • Challenges
    ā€“ Stay within the time limits of the lesson
    ā€“ Preparation time: too much to prepare for one organizer
    ā€“ Too much theory for participants
  • Recommendations:
    ā€“ Preparation time: rotating hosts helps share preparation work
    ā€“ Mini-Presentations: mini-presentations of 10-30 minutes are welcomed (it encourages more participation and offer a refresher of the course details or projects fastai-based)
1 Like

We had some nice meetups in The Hague.

Our setup was that for each lesson one of us could volunteer to lead the session for 2 hours. Doing 1 of the 7 sessions was doable. It would be even better to have 2 presentors to have at least one backup and to split the workload even further. I learned a lot doing the preparation for a lesson, so there is a personal benefit :slight_smile: .

What worked well was walking through the notebooks on a different dataset and sharing your learnings and discuss with the group how we can make it even better.

@Benudek It would be very nice when we could work as a group on some projects of local companies/government to apply the insights of Jeremy on some real world projects.

3 Likes

Hello @AndrewK Thank you for your feedback on your seven-week series of fastai study groups.

After reading it, I see 4 main points (and Iā€™ve updated the wiki post):

  • Selection: How to select motivated participants? (at least, for the availability of space, it is necessary)
  • Group of participants by level:
  • beginners (or group of concepts): focused on discussing the conference materials of the week using slides produced by the organizers
  • advanced (or coding group): programming tasks
  • Engagement: weekly presentations by volunteers
  • Online working/communication tool (Slack for example)

I have some questions:

  • Have you watched in class fastai videos?
  • The two groups were in the same room?
  • How much time on average did you use to create your slides?
  • Why did you choose Slack? And not Telegram or even the fastai forum?
  • How did you evaluate the level of participants at the end?
  • Have you done a satisfaction survey?
  • If you had to redo this study group, what would you keep/change?

Thanks @martijnd for your feedback.

Iā€™ve updated the wiki post with your teaching process : walking through the notebooks on a different dataset, sharing the learnings and discuss with the group how it can make it even better.

Thanks for your response, @pierreguillou

  • We didnā€™t watch the videos in class ā€” people were expected to watch them at home in advance. I just prepared a slide deck each week so that we could have a fairly structured discussion about the key points.

  • Yes, the groups were in the same (large) room.

  • I had already watched all the videos once through in early Spring. To prepare the slides for the study group I watched each video again and also used @hiromiā€™s really excellent notes. That whole process took me probably something like four or five hours per week, but I was using it to reinforce my own learning, so it was all good.

  • We used Slack first of all because our meetup group already had a pre-existing Slack that we use for hackathons and other events. Our fastai study group channel was somewhere for everyone to keep in contact during the week, for me to upload the slides, people to share articles theyā€™d discovered etc.

  • There wasnā€™t any evaluation of participants. We started with around 25 people and in total around 45 attended at least one session. Twenty made it all the way through to week 7, which we were delighted with given how intense it was trying to cover all this material while we all also had full-time jobs.

  • We didnā€™t do a satisfaction survey.

  • I should point out that we didnā€™t actually group participants by level ā€” we allowed them to group themselves according to how they felt they would get the most out of the sessions. Some preferred hands-on coding and others preferred more of a seminar approach. I would certainly keep that structure if we were to do it again, along with the idea of lightning talks so that participants have a chance to present the projects they have been working on for feedback.

  • Incidentally, we were hoping to run another fastai study group this Spring, but as yet we have been unable to find a venue in London that is willing to accommodate us for seven consecutive weeks. (Finding suitable venues is actually the biggest hurdle we face with our meetup group in general.)

3 Likes

Many thanks @AndrewK for your clarifications.

And they did? For the vast majority of participants of our fastai study group in Brasilia last year, it was not the case.

I think this a key point for success (Iā€™ve noted you passed 4 to 5 hours of slides preparation by week and you used notes of @hiromi: great idea!).

fastai forum + Slack seems to be a winning combination for most study groups.

I think we should have some parameters/numbers/quality evaluation to estimate the success of a fastai study group: evolution of number of participants, number of presentations by participants, number of blog posts, number of published notebooks, satisfaction survey, etc. If not, it will be hard to do it every year (keep motivation of organizers, prove to the venueā€™s owner that a study group is more than a weekly meeting between friends, etc.) and we will have no way to improve really the efficiency of a study group.

Good point I think. This empowers the participants.

Iā€™ve updated the wiki post of this thread with your questions.

Thank you everyone for sharing here. I co-founded Perth Machine Learning Group in Jan 2017. Our participants come from industry, academia (from university students to PhDs), government and general community but interested in ML/DL.

We share similar challenge in finding speakers since we have 5 presentations a month. Solutions: We offer diverse topics, from winning solutions of long-term hackathons, student projects, implementing papers, transitional ML techniques, explainable AI etc to mix with fastai lessons to meet our diverse audiencesā€™ needs. Thank you @pete.condon for leading lunch lightening talks to reach out those who canā€™t attend evening meetup.

Venue/Resource challenge: When we started, we used free tools (Google Group/Slack) and venues (including my living room). Just be creative.

Thanks for @cobleg, he asked his employer to support us financially. So, we can have a ā€œhomeā€ to grow from 25+ to 1,400+ members. Then, other individuals/companies are also generously support us by active participation, open data, venue, food and drinks, and even lovely cloud computing credits. :slight_smile:

Other Recommendations:

  • to do a group project together to learn and have fun. Recently, we had an AI and Art exhibition for the community to enjoy. More details here

  • be part of a bigger communities in your local area. My cofounders @johnnyv @Dee are great AI evangelists. They presented in local research institute and universities. (You will be surprised what you learnt here are really cutting edge stuffs. Thanks Rachel, Jeremy and the dev team.)

  • after evening meetup, we go out for dinner to continue nerd-chat. So, we always finish on time.

5 Likes