1
00:00:00,570 --> 00:00:04,170
So in this section, what we do, we analyze our results.

2
00:00:04,710 --> 00:00:08,520
So a good way to analyze results is basically to create some training plots.

3
00:00:08,550 --> 00:00:14,520
These are very good ways to understand how your model is performing in relation to how many epochs we

4
00:00:14,520 --> 00:00:17,100
performed, how it's doing a test dataset.

5
00:00:17,100 --> 00:00:21,690
I assume that the training, the dataset, we're going to look at accuracy and loss for each.

6
00:00:22,140 --> 00:00:23,290
So let's take a look here.

7
00:00:23,310 --> 00:00:28,410
So remember, just to recap, we created a epoch law lost log in accuracy log.

8
00:00:28,860 --> 00:00:33,750
Well, the reason we created those is so that we can actually produce these auto shots at the end.

9
00:00:34,320 --> 00:00:37,650
So I'm not going to go into too much detail with the code for these charts.

10
00:00:37,670 --> 00:00:40,030
I'll just go through it relatively quick.

11
00:00:40,050 --> 00:00:45,120
If you wanted to understand math problem, there's a lot of online logs and material to discuss how

12
00:00:45,120 --> 00:00:46,080
to use my Portland.

13
00:00:46,530 --> 00:00:47,790
But for now, what we do?

14
00:00:47,910 --> 00:00:49,280
We're creating some subplots.

15
00:00:49,280 --> 00:00:51,300
So we use plotted out subplots here.

16
00:00:51,780 --> 00:00:53,550
We create the figure and the ax here.

17
00:00:54,180 --> 00:01:00,090
So what we do know, we just create the title for using the party function, and we said we want to

18
00:01:00,090 --> 00:01:04,740
put the title that way to five degrees so that you don't have to do that, to be honest.

19
00:01:05,640 --> 00:01:08,040
We use X one or twin x.

20
00:01:08,250 --> 00:01:12,240
That allows us to have two different Y accesses on the graph.

21
00:01:12,240 --> 00:01:16,290
And that's because the loss isn't a very different skill to accuracy.

22
00:01:16,440 --> 00:01:22,170
Accuracy is a percent skill, and it's usually going to be close and close to 80 and above in most models.

23
00:01:22,770 --> 00:01:24,770
And loss is going to be quite low.

24
00:01:24,780 --> 00:01:26,490
It's going to be under one of the two.

25
00:01:26,580 --> 00:01:30,420
In most cases, and these are a number of epochs we train for.

26
00:01:30,990 --> 00:01:32,830
Remember, we just train for 10 epochs.

27
00:01:33,270 --> 00:01:36,540
So this graph is exactly what you want to see when you're training.

28
00:01:36,930 --> 00:01:43,920
You want to see a loss starting at a relatively medium high point and then coming down as e-books go.

29
00:01:44,490 --> 00:01:46,560
And then you want to see accuracy going up as well.

30
00:01:46,710 --> 00:01:48,450
So this is this is a good sign.

31
00:01:49,110 --> 00:01:54,240
Now this is the accuracy and loss for the test dataset.

32
00:01:54,720 --> 00:02:00,810
If you wanted to actually do this for the training loss, you can just create some more functions here

33
00:02:01,320 --> 00:02:03,630
and store those results in the loop as well.

34
00:02:03,660 --> 00:02:05,650
We didn't actually store them in our case.

35
00:02:06,060 --> 00:02:10,610
However, it's a good exercise for you to do to go back, manipulate the training code, which I want

36
00:02:10,610 --> 00:02:11,610
to go all the way up.

37
00:02:12,090 --> 00:02:13,380
But it's quite it's quite long.

38
00:02:13,860 --> 00:02:17,130
So a simple exercise to do just create some new variables.

39
00:02:17,700 --> 00:02:18,780
Run the function.

40
00:02:18,780 --> 00:02:19,380
Run the data.

41
00:02:19,380 --> 00:02:19,860
True.

42
00:02:20,130 --> 00:02:28,500
Still, get the training, the model story accuracy still loss at that point and log it and then photographs

43
00:02:28,500 --> 00:02:29,190
of it afterward.

44
00:02:30,650 --> 00:02:35,060
So you can see what the epochal looks like, it's just a list of this range.

45
00:02:35,540 --> 00:02:37,970
Similarly, you can use this to generate that list as well.

46
00:02:38,120 --> 00:02:38,460
I don't know.

47
00:02:38,540 --> 00:02:43,070
I actually put this here just maybe to help you guys understand what epoch was doing.

48
00:02:44,030 --> 00:02:45,800
So that's it for this lesson.

49
00:02:46,190 --> 00:02:46,910
I won't go into that.

50
00:02:46,940 --> 00:02:55,550
This is an extra good and not so observations here is that if you were to try this same network treating

51
00:02:55,550 --> 00:02:58,520
it with a CPU, it's going to take much, much longer.

52
00:02:59,000 --> 00:03:02,630
So if you wanted to give it a try and experiment with that to see how it goes.

53
00:03:03,140 --> 00:03:04,040
Good luck with that.

54
00:03:04,040 --> 00:03:05,660
And basically.

55
00:03:05,930 --> 00:03:11,090
So that concludes this lesson on Python, which you've seen how we actually put everything together,

56
00:03:11,450 --> 00:03:17,000
how we got our data, how we looked at our libraries, how we created the network poetry to optimize

57
00:03:17,150 --> 00:03:22,460
data loaders, lost function, then how we passed everything to our training loop, how we saved the

58
00:03:22,460 --> 00:03:27,710
model, how we displayed our results, how we loaded our model and then got get some pretty got some

59
00:03:27,710 --> 00:03:28,580
predictions out of it.

60
00:03:29,210 --> 00:03:31,880
So I hope that was a very useful lesson for you guys.

61
00:03:32,390 --> 00:03:37,430
What we'll do next, we'll do the same thing, the same procedure, but we just did.

62
00:03:37,520 --> 00:03:43,010
However, we're going to use Keros with TensorFlow to do this, so it's going to be quite different

63
00:03:43,130 --> 00:03:47,320
and also quite easier and much simpler than using by too much.

64
00:03:47,330 --> 00:03:49,370
And there's a reason we started with pay to watch this.

65
00:03:49,760 --> 00:03:51,520
It's because it is a harder one.

66
00:03:51,530 --> 00:03:57,080
It's a bit more intricate, a lot more detail, and you have to understand the training process a bit

67
00:03:57,080 --> 00:03:58,730
more than by George.

68
00:03:59,060 --> 00:04:03,410
So I thought it would be good for you, beginners, because they're coming fresh from the slides to

69
00:04:03,410 --> 00:04:07,270
understand how to construct the neural nets to CNN's inside touch.

70
00:04:07,280 --> 00:04:12,890
And then afterward, when you saw moving to Keros, which is a much higher level API, it's going to

71
00:04:12,890 --> 00:04:14,210
seem a lot easier.

72
00:04:14,360 --> 00:04:15,710
And Caris is quite nice.

73
00:04:15,710 --> 00:04:21,890
A lot of people may prefer to use cameras for most cases, most projects researchers may prefer to use

74
00:04:21,890 --> 00:04:27,170
pay to watch, and we'll have some slides where we discuss the differences when you should reduce PyTorch

75
00:04:27,170 --> 00:04:30,530
or when you should use cameras later on.

76
00:04:31,040 --> 00:04:32,130
But for now, that's it.

77
00:04:32,150 --> 00:04:38,070
And for now, we'll move on to creating seamless CNN inquiries.

78
00:04:38,570 --> 00:04:41,750
So I look forward to showing it up in the next section.

79
00:04:41,990 --> 00:04:42,410
Thank you.
