Lesson 1 - Official topic

Thank you!

Here are some passages from the book you pointed to:

While our neural network gives impressive performance, that performance is somewhat mysterious. The weights and biases in the network were discovered automatically. And that means we don’t immediately have an explanation of how the network does what it does.

And while that passage is followed by a lot more details, it just descriptive and does not quite add up to “an explanation”.

Admittedly, this subsequent passage is more than mere description:

It does this through a series of many layers, with early layers answering very simple and specific questions about the input image, and later layers building up a hierarchy of ever more complex and abstract concepts.

But that only explains how a fully trained network functions and it does even attempt to explain the processes (ie the training phase) that took us from the untrained network to the trained network.

Later there is a direct reference to the training (“learning”) phase processes,

… use learning algorithms so that the network can automatically learn the weights and biases - and thus, the hierarchy of concepts - from training data.

There is that word , “automatically” again… Very descriptive but very decidedly not an explanation of the training processes. It this context it appears that “automatically” is a synonym for “mysteriously”.

Is there really so little – any? – theoretical progress being made that sheds any light on the effectiveness of deep learning techniques?

I realize this course is focused on “practical”, but it’s good to be up front about the question, “Is there – or is there not – a generally accepted theory or explanation behind all of this?”

It appears that the correct take away, “There is still no generally accepted explanation for it,” or, “It remains a mystery”?

Please contribute pointers to “the latest” on this subject if you are aware of anything. Thanks.

‘o’ in command mode

So training loss and error rate is calculated on the training data and the validation loss is on the 20% of the data set aside. So since the validation loss isn’t used in updating the weights, thus calculating the validation loss in every forward pass won’t lead to overfitting, is that right?

I think this is more of how the class/book are meant to teach. These concepts are specifically not talked about in great detail, because they are the ones that require math, and that should be touched on later. Effectively this is an optimization problem, where we are using Calculus + Matrix multiples, and non linearity to make a prediction. Updating the network is done through finding the derivative. As you can see the explanation of this gets mathy very quickly, which is why it is avoided at this point. Jeremy wants you to understand why we use neural nets, before we go into too much detail. I think the next few lessons will go further into the details that you seek.

Jeremy will probably use pictorial examples to explain this without math, before going into the math.

Sorry if this is a dumb question – but what’s the best way to ask a troubleshooting question for course 1?

Adding a new thread in “Part 1” seems “wasteful” :slight_smile:

Is there a preferred way?

Thanks

There should be platform specific threads already created. Feel free to ask there.

Such as: https://forums.fast.ai/t/platform-colab-free-10-month-pro/65525/94

Also follow what harish3110 said below.

For general questions this thread was created: https://forums.fast.ai/t/setup-help/65529

For server setup, there’s a specific thread. As Jeremy said, search if your issue has been addressed before and if not go ahead and post it. There’s nothing like a dumb question and this community is the best in helping out as much as possible to get you to resolve your issue ASAP! :slight_smile:

4 Likes

Jeremy mentioned how an Italian hospital used 3D printing to saves lives, here is a link about the story


And he also mentioned them been sued by a patent troll, here is the link to the story:

2 Likes

@harish3110, the error rate is calculated on the validation data itself, and not on the training data.

Also, if you optimize your model training too much to get a good score on a particular fixed validation set, even if you haven’t used the validation data to update your model weights, it still might be seen as overfitting the validation set. The reasoning here is that your training is probably only good for that particular validation set and may not work as well for other data since you’ve optimized for that validation set all this while. Maybe your current validation set contains very few examples of a class that is hard to predict on but is actually much more present in the test set and other samples of real world data? In this case your model would perform poorly in a real use case. And that would be called overfitting.

EDIT:
One more thing: the validation loss isn’t calculated with every forward pass. After the end of one epoch on the training data, the model is evaluated on the full validation set and the validation loss is thus calculated.

2 Likes

Will this course discuss the concept of adversarial machine learning?

To add to that, one forward pass looks at batch_size images. So if your dataset has 1000 images and your batch_size=10, that would be 100 forward passes for the completion of one epoch.

The current course notebooks don’t seem to be dealing with this, so my guess would be a No.

I’m experimenting this year with the Notion as a platform where I add my notes. It is faster to write and imo it looks cleaner than Medium.

The notes are part of my notebook as I’m paying member and I’m not sure if free plan would cover the whole course. These notes aren’t searchable from any search engine and there shouldn’t be public links available to my Notion. I have shared some other notes to maybe 2-4 people in the past but as far as I know no one is checking my notebook actively for anything new.

Please let me know if there is something I have missed or it’s not save enough and I will do the needed actions. I certainly don’t want to leak my notes before the course is publicly available for anyone outside this group.

1 Like

Absolutely agree! I never did coding ever in my life nor its required in my daily job but I guess passion and interest to learn something surpasses everything… :slight_smile:

3 Likes

I think you’ve just put into words what brings the fastai family together and makes it great :smiley:

3 Likes

Following the “color red” game as described by Jeremy, any research on the following strategy?

  1. Wash your hands.
  2. Wash your face.
  3. Wash your hands again.

A quick search on the web didn’t return anything particularly relevant.

I’ve just added the covid-19 video to the top post. Here it is:

Please help us share this with anyone you think might find it useful.

17 Likes

Thank you so much Jeremy! I have a whole list of people who need to see this…

You are correct that the validation loss isn’t used in updating the weights and the validation metrics are a good guide to see if your model is overfitting during the training process, however since you are typically optimizing your hyperparameters iteratively to improve the validation metrics it is still possible that your model could overfit to the validation set. This is the reason why we have yet another portion of data called the test set which was not used in any part of the training process.

For production, how the model performs on the test set is what ultimately matters most and if you find that your validation metrics are highly inconsistent with your test set results you should take more care in selecting the validation set so that it is a closer representation of the test set.

2 Likes

ICU beds occupied in the Netherlands due to COVID-19:

  • 16 March: 96 (8.3% or 16.7%)
  • 17 March: 135 (11.7% or 23.5%)
  • 18 March: 171 (14.9% or 29.7%)
  • 25 March: aproximately 600 beds occupied (total nr of beds evolving with nationwide upscaling)

Total capacity: 1150 of which 575 reserved for COVID-19 patients.
Dutch parlement decidid today ‘lock-down’ is not needed.

Quote by chair of Dutch ICU association: “When we feel that the increase is going too fast, we have consultations with the RIVM (Dutch public health institution), which is in contact with the Cabinet again.”

This is when the virus has not yet spread to Amsterdam and other major cities in the West of the Netherlands, like it has done so far in the southern provinces.
:roll_eyes:

Data from John Hopkins University (second hump in development?):


(Excellent) Link