As quite a few of you showed interest in the project idea I shared, I thought I would give you an update on where I am with this
Here is a link to a notebook demonstrating nearly all that the code I have written thus far can do.
What I got out of this project thus far:
- Deep sense of appreciation for the fastai library. There are so many things happening there per line of code and a lot of the functionality is simply amazing!
- Freezing batchnorm seems very powerful! If you have a small dataset, enabling this feels like cheating
- Learning PyTorch - PyTorch doesn’t hide anything so a project such as this is a great opportunity to explore what things it makes available and what they do and to get to know the framework a little bit!
- Learning Python - I haven’t used Python extensively and have done very little OOP in general so this is a nice opportunity to learn.
- Working on this is the most fun I’ve had programming in a very long time.
- Working with the code has a nice, homely feeling! (probably since I either wrote or copied in all of the code there
Normally I would be surrounded by code that someone else wrote so this is a nice change!)
Having said that, I’ve had mixed feelings while working on this. I think that I will continue to work on the project since it seems to work well with my level of experience and with my personality + I am learning a lot. Still, if you are capable of figuring out what fastai code does, you probably would be better off working with it directly instead of trying to build something on your own. I think I might be slowly getting to this level where I would be able to do that, but it is a bit of a catch 22 situation - had I not attempted this project I wouldn’t have the background to navigate fastai! I am speaking from experience as that is what I initially attempted but after several hours of no progress I looked for a different approach.
Also, what probably makes quite a big difference, is the fact that Jeremy began to explain lower level concepts in the lectures. I think had I waited till this week’s lecture, I might have actually had a significantly better chance of figuring out what fastai was doing (though this might be being optimistic and maybe there is no substitute for actually writing code to learn).
Overall, I do not think I can complain Despite all, I am very happy that I set out to work on this!