Welcome to Part 1 (v2)

Some feedback:

I found the notebook kind of confusing and the video seemed to explain just a few arbitrary things. I have quite a bit of programming experience and a little machine learning experience, so I was able to follow through the notebook, but I think a beginner would be totally lost. I’m not sure how deep we’re meant to go into the code and how much of it we’re meant to understand at this point.

My usual expectation would be to understand 100% of the code, but perhaps that’s not your intention for lesson 1?

The notebook talks a lot about layers and loss, without defining what any of these things are or why they matter until right at the end of the notebook. It doesn’t even show the structure of a neural net.

The code itself is hard to follow due to amount of abbreviations and poor naming. For example, using lr_find() instead of find_learning_rate(), or tfms instead of transforms. These may seem like little things, but for beginners who are coming across terminology for the first time, trying to keep up with what everything stands for, while also trying to wrap your head around the concepts, is almost impossible. Spending some more time on naming would make the whole thing a lot more intuitive.

Anyway, thanks for releasing the course. I’ll stick with it :slight_smile:

As much as we can using jupyters tricks before second version kicks in…

That’s my goal…
Regarding loss and all, thread are awesome medium posts which explain them in a lucid way

Feel free to post in the forum’s…

People here love to help others…(I was also helped by many and still being helped…)

1 Like

@pekoto That is the FastAI approach on things. I think it’s our fault that we aren’t used to top down learning approaches.
Definition of learning (Before I took fast AI): I can understand the thing thouroughly, I need to to know every possible combination of it, and all the theory behind it.
Definition (After fast AI): If I can apply something, I’m good. I don’t have to know the details, because my system works for now. If I need to add something extra, well I’ll figure it out.

Lesson 1 is Dogs Vs Cats. You call the 3 lines, and beat the SOTA. If you use the same model with some fine tuning, it’d work! It’s okay to not know every single theory behind the applications is what I learned.
It was hard to believe for me that I was learning, but the best approach is follow the lectures and not be worried about too much theory. Focus on building things or replicating the results without looking at the code :slight_smile:

To prove the fact that Jeremy is very cool and to gain a booster in self confidence regarding implementation of notebooks…,

Watch the ML videos (especially the lectures 6-9)…
(Haven’t watched more so can’t say)

Update

Had completed all.the lectures and now Googling my doubts with the videos for second round…

The style of teaching is so so pious…

You will have moments when you’ll keep saying to yourself.
No, it can’t be that easy. There has to be a catch.

There isn’t. This is:
Fast - AI :nerd_face:

Yup that’s the issue - all we hope after this lesson is that you can complete the assignment, which is to replicate the notebook on a new dataset. In the following lessons you’ll learn how all the code worked, and you’ll also learn how to write the underlying library pieces.

Hi all! Excited to start V2 of this class.

To make watching the lecture videos easier I made a small “video caption search” tool.

Essentially it’s a large list of youtube’s auto generated caption along with the timestamp of the caption.

You can search the caption of the video by key word.

And the timestamp of where the key word is said by Jeremy is listed below.

I find this very useful for myself when I need to rewatch the videos, I hope this can help someone else! Thanks for reading!

Happy Hacking!

9 Likes

Congratulations @jeremy for the new fastai Deep Learning (DL) framework.
I have just ended the lesson 1 and you seducted me. I think I will try to master it and add it as one of my favorite DL libraries.
As I am currently implied in the France Azure Preview, I runned the Lesson 1 notebook on a VM[E64 v3 (64 vCPU, 432 RAM, 864 HDD) - Windows Server 2016]. The training took about 3 hours instead of about 20 s with GPU.


That means some heavy projects will require more than a month to train on CPU.
So, it is definetly worth run it on GPUs.
Just two or three preoccupations:
1- Is there a particular reason why you did not create a predict_proba function, but you choose instead to use the core functions to implement the probabilities?
2- Is there a documentation ongoing as other frameworks often do it on readthedocs.io for example? I am planning for a mean/long term strategy, so it will be useful.
3- Even if I undertook the official february 2017 session, I mostly use TensorFlow and didn’t adopt Pytorch again. So, please, do you think I will need to learn Pytorch if I adopt the fastai library?

Thank you.

That’s great! Thanks for sharing :slight_smile:

We do hope to create documentation, and there is a project to do so, although no progress as yet on it.

I would strongly suggest learning pytorch. You’ll become a more proficient DL practitioner by doing so.

2 Likes

OK, @jeremy,
I had in mind to learn it later, as now I master and mostly use TensorFlow based frameworks (TensorFlow, TFLearn, Keras) and also CNTK.
So in the meanwhile I will add fastai as a new skill and plan to learn Pytorch in detail later.
As there is no formal documentation for fastai library at the time, my implementations will be based on the actual courses and tutorials.
Thank you very much.

great! thanks
just an idea - you might want to do it for the machine learning videos also :slight_smile:

thanks!
I will process all the videos :slight_smile:

1 Like

Hi. Thank you for creating and sharing this great tool. I was looking for similar tool previously and thinking of creating one but you beat me to it :smile: I think this tool will be useful to many, helping to make it easier for them to watch the video lessons. More so when I usually replay or rewatch the videos for several times when I am doing a deep study.

Might be irrelevant completely to this thread but didn’t want to create another so Asking here,

How to keep track of what is happening on the forums…(I am already being notified of everything)

But the problem is that the forum has just exponentially exploded with lot of relevant and important links…(which goes unseen by me)

So how to keep them aside?(bookmarks I know)

One way is to notice when you have a problem and search for things at that point. Not everything is immediately useful, so you might not get everything you need out of, say, reading an entire thread. But if you run into something in the notebooks, chances are there are other people who have had the same issue or question come up for them. Good luck!

2 Likes

Two ways, both have their pros and cons:

  1. Rely on search functionality. When you can’t resolve an issue or want to explore some topic deeper, search for it on the forum.

  2. When you encounter something that seems important (links, tips, helpful pieces of code), save it somewhere. It’s better to split notes into different categories. I use OneNote for that purpose, but there are other apps you can use, like Evernote, or any text editor. I’m categorizing links, notes, and my own thoughts into logical sections like CNN, RNN, Structured data, Learning rate, Optimizers, Image Augmentation, etc.

1 Like

@ecdrid

When I do learn.parameters() after the lesson 1 exercise with new data, it gives the following error: AttributeError: ‘ConvLearner’ object has no attribute 'parameters’
Any ideas?

I apologize in advance if this question has been asked before, but why does the 1st video stop at LR finder explanation, whereas the 1st notebook has a lot more stuff after that?

Jeremy believes I guess that something should be left for self exploration otherwise it’s like spoon fed…

Also don’t go by the cell number, it’s not that way in the later notebooks…

1 Like