I’ve been doing the Open Data Science course at https://mlcourse.ai, they include a couple of components which might help improve the fastai course. Those are the course assignments, and the kaggle in class competition.
I would suggest going through the Part 1 a little closely, Jeremy does suggest A LOT of homework! However, there are these little hints of them everywhere and not a definitive requirement since fastai isn’t just aimed at making us do homework. You could just watch the lectures or go through the notebooks or really use the knowledge to win a kaggle comp or even apply it to your domain. (I’m not an expert and I’ve failed multiple times at all of these. I make these claims of what you could do based on a little interview series that I have been doing to share stories of our peers to motivate beginners)
Here is the associated book, in case any one doesn’t like to attend another course : https://barbaraoakley.com/books/a-mind-for-numbers/ . When I started my Data Science journey, this book by Barbara Oakley helped me a lot. I am a serious procrastinator. But, I was not aware of the term (procrastination) and as a result I used to think that I am the only person who has the problem with getting started. This book educated me about the problem (procrastination) and helped me to overcome the problem as well.
I have twin daughters who are 7 years old. The one how follows me more closely (genetically) is a procrastinator as well. Fortunately, Barbara Oakley published another book on the same topics for school kids as well : https://barbaraoakley.com/books/learning-how-to-learn/ . I am using this book to help her explain procrastination and teaching her tricks to overcome the fear to dive into something unexpected and new.
Gamification in learning imho sometimes can backfire - you focus on some ranks and forget the ‘real work’. Also, at least for me, I do not like the idea so much s.o. ‘hacking’ my motivational system _ I should decide consciously myself how I want to spend my time, no tricks pls But that’s just me here, its probably different from person to person
I think all this learning methodology is really important… and I think the value of learning to learn is a super valuable ability one acquires while doing the fastai curriculum… but was also thinking that maybe some people a little bit newer to the lectures or who have not experienced being part of this sort of environment might be feeling a little bit lost…
By all means nothing can substitute redoing lecture notebooks and that needs to be the first stop… but if someone would want to venture of the beaten track a little bit more, I think the datasets by fastai are a really underappreciated asset. Such a variety there and they are the perfect size for the the hw currently available to a majority of students.
I think those datasets are such a cool initiative on so many levels. I started working on doing something I find quite exciting with the imagenette woof, but thought of keeping the repo private till I am ready to share it… but now I think maybe someone could use a bit of showing the ropes how to get the data, etc, so making it public right now…
It’s all you need to get started with training a custom architecture. There are so many things that could be done with it. You could try to beat Jeremy on the leaderboard. A bit of a challenge there, sort of like a competition mentioned above. But at 40 epochs with 160px this is great as training shouldn’t take that long and would be a great opportunity to try things out.
Not even a readme there yet, but everything you need (pulling data, etc) can be done through running the available notebooks. The notebook with training contains also some overall information on some good practices which maybe also can be interesting.
Hoping to add more to the repo hence have not been planning on making it public just yet, seems there might be some use for this already Might be a nice way to brush up before part 2.
For ideas and as a reference point, here is a repo I started working on with mini projects after part1 of v2 finished. This is using fastai v0.7 mostly I think, but maybe can help someone with ideas on what to do as an exercise.
I enjoy competitions and have entered many. (Too many, for the time I’ve had to dedicate). But I do not think it is that useful in a broad popular open learning forum. I thought it worked well with the latest course iteration to have less coverage of kaggle than the previous iteration.
People learn in so many different ways. I surprised myself when fastai surfaced a latent internal competitiveness. For others, they learn best through implementing papers. Others, through reimplementing parts of fast.ai itself, or replicating the lessons themselves. Yet others in study groups. Or by blogging progress. Others achieve a result useful at work, or in a hobby, or maybe simply internal private satisfaction of achieving progress with a toy problem. We all measure usefulness in different ways. Having in class assignments, or an expectation of an end of course capstone project or draft poster/paper, well in my mind that would turn off quite a few folks, and it also ‘dates’ the course.
The best model in the world is completely unimportant if it’s not being used for anything. With that in mind, I liked the focus in Part 1 on doing projects. At one point, Jeremy (and others) gave the advice to start a project and incrementally improve and expand upon that project as your skills improve throughout the course. That way, you have at least one significant project in your portfolio and not just a collection of many short, practice projects.
Personally, I don’t enjoy competitions like hackathons and such. I am highly self-motivated and don’t really need much external encouragement to continue learning or trying new things. I’m always trying to learn and figure out something new. I am most interested in my own, personal best and always improving upon that. If that happens to outperform anyone else’s personal best, great. If not, it’s still better than I was doing before. I would rather collaborate with other highly motivated people who have skills that I can learn from while also making my own important contributions. I think kaggle is great for practicing certain skills and working with new types of data, but there is so much going on in the competition aspect that it’s not appealing to me. I 've engaged with kaggle mainly to check whether I’ve got a relatively good understanding of a particular method or not since it quickly “grades” my work and that’s very convenient!
I also like the concept of replicating papers and plan to focus on doing that more since Part 2 is giving me a deeper understanding of the maths and code to start exploring.