0
1
00:00:00,610 --> 00:00:09,220
So, now that you've learned all about how to use CreateML to create a machine vision model, it's time
1

2
00:00:09,280 --> 00:00:14,380
to challenge yourself to create your very own machine learning model.
2

3
00:00:14,380 --> 00:00:22,750
Now, in previous modules, we create an app called WhatFlower and we used a research machine learning model
3

4
00:00:22,930 --> 00:00:29,400
that had been trained on maybe 80 or 90 images of each type of flower.
4

5
00:00:29,410 --> 00:00:36,000
Now, as many of you have realized, the machine learning model didn't have enough data to be very accurate.
5

6
00:00:36,220 --> 00:00:45,010
But if you were to use CreateML using all of the intelligence that it has from the Apple Photos and
6

7
00:00:45,010 --> 00:00:52,720
the Apple Siri technologies, and if you were to retrain it using your own images of flowers that you
7

8
00:00:52,720 --> 00:00:59,080
have classified manually, or you have found a data set where it has already been classified, and you were
8

9
00:00:59,080 --> 00:01:07,090
to create your very own flower database machine learning image recognition model, then you can add as
9

10
00:01:07,090 --> 00:01:13,930
much data as you needed to in order for it to become as accurate as you need it to be.
10

11
00:01:13,960 --> 00:01:20,680
Now, there are several other ideas that I've come up with for you to try and create your own machine
11

12
00:01:20,680 --> 00:01:21,700
learning model.
12

13
00:01:21,730 --> 00:01:27,670
Now, depending on what you're interested in, then you can pick and choose or even better come up with
13

14
00:01:27,670 --> 00:01:31,800
your own ideas for some crazy things that you can do.
14

15
00:01:31,810 --> 00:01:39,580
So, for example, you could look for celebrity images on Google Images and try to train a machine learning
15

16
00:01:39,580 --> 00:01:45,700
model that will know the difference between, say, Jennifer Lawrence and Jennifer Aniston, or even better,
16

17
00:01:45,700 --> 00:01:49,190
recognize what celebrity it's being shown.
17

18
00:01:49,210 --> 00:01:54,410
Another fun one is training machine learning model that recognizes brand logos.
18

19
00:01:54,610 --> 00:02:01,240
So you could use the image recognition to figure out which brand is being shown based on their logo.
19

20
00:02:01,240 --> 00:02:07,450
Now, if you have a lot of time and you want to do something really interesting, but quite time consuming,
20

21
00:02:07,990 --> 00:02:17,470
then a really fascinating topic, for me at least, is emotion recognition in people's faces. Now, because
21

22
00:02:17,470 --> 00:02:26,140
the emotions are all displayed on human faces, the differences between, say, surprise and fear, actually,
22

23
00:02:26,140 --> 00:02:28,000
really, really similar.
23

24
00:02:28,000 --> 00:02:36,280
And because the features are not so distinct, then you will need a large data set for each type of emotion
24

25
00:02:36,640 --> 00:02:44,380
based on lots of different types of faces, women, men, people from different countries, and you will need
25

26
00:02:44,380 --> 00:02:49,510
to train your model with a lot more data than some of the simpler things that you could do.
26

27
00:02:49,510 --> 00:02:55,410
Now, with the previous ones I've suggested that involves you going on to, say, Google Image, or wherever
27

28
00:02:55,420 --> 00:03:00,590
else, finding images that you recognize yourself that can be classified.
28

29
00:03:00,850 --> 00:03:08,200
But if you were to try and find public data sets, then some good resources are, for example,
29

30
00:03:08,200 --> 00:03:08,920
kaggle.com.
30

31
00:03:08,920 --> 00:03:17,950
So this is a large machine learning and data science website and I'll include a link in the link resources
31

32
00:03:17,950 --> 00:03:21,100
sheet to this image dataset.
32

33
00:03:21,160 --> 00:03:27,190
So they have a whole bunch of different ones, for example, pictures of the hand that represent different
33

34
00:03:27,190 --> 00:03:37,060
letters in the ASL alphabet, or different flowers, or different monkey species, or CT medical images.
34

35
00:03:37,060 --> 00:03:41,300
And it's really, really fun actually going through these datasets.
35

36
00:03:41,320 --> 00:03:42,670
So Kaggle is one of them.
36

37
00:03:42,850 --> 00:03:52,660
And this GitHub repository also collects a bunch of publicly available open databases of images and
37

38
00:03:52,660 --> 00:03:53,910
classifications.
38

39
00:03:54,190 --> 00:03:59,360
Now, remember that if the evaluation performance that you're getting isn't very good,
39

40
00:03:59,470 --> 00:04:08,000
say, it's below 80 percent, then you might need to retrain your model with more data or make other adjustments.
40

41
00:04:08,050 --> 00:04:15,610
And Apple has created this entire article on improving your models accuracy which I recommend that you
41

42
00:04:15,610 --> 00:04:22,930
read if you are encountering this problem. And they tell you a whole bunch of ways that you can improve
42

43
00:04:22,930 --> 00:04:29,650
the accuracy, for example, by augmenting your images or by getting more data to train your model.
43

44
00:04:29,650 --> 00:04:34,480
And I'll include a link to this in the resources sheet as well.
44

45
00:04:34,480 --> 00:04:41,230
The rule of thumb is that the closer that the images that you're trying to classify resemble each other,
45

46
00:04:41,560 --> 00:04:49,090
even to a human eye, then the more data you need to provide in order for it to pick up on the unique
46

47
00:04:49,150 --> 00:04:52,750
features that differentiate these different classes.
47

48
00:04:52,750 --> 00:05:01,850
Now, a classic example is the blueberry muffin versus chihuahua dog, where I have to say, even my own image
48

49
00:05:01,880 --> 00:05:08,690
classifier in my brain is not often good enough to tell which one's the dog and which one's a muffin.
49

50
00:05:08,690 --> 00:05:14,750
It's very concerning. But I hope you understand that this illustrates the point of the struggles that
50

51
00:05:14,750 --> 00:05:20,210
your machine learning model has to go through to be able to give you an answer with adequate confidence
51

52
00:05:20,210 --> 00:05:24,630
and adequate accuracy. So go crazy, go wild.
52

53
00:05:24,670 --> 00:05:31,570
Create machine learning models that are interesting to you and come up with new ideas.
53

54
00:05:31,570 --> 00:05:39,370
For example, what if you could recognize whether if a person is making a fist or a pair of scissors or
54

55
00:05:39,370 --> 00:05:46,030
paper, and create a rock paper scissors game based off image recognition and your own machine learning
55

56
00:05:46,030 --> 00:05:51,970
models, or what if you could create a game that's based off brand logos.
56

57
00:05:51,970 --> 00:05:53,950
The world is your oyster.
57

58
00:05:53,980 --> 00:05:58,360
And with what you've learned about how to create image recognition models,
58

59
00:05:58,540 --> 00:06:07,630
I hope that you'll use this skill and new knowledge to create and build really fascinating classifiers
59

60
00:06:07,720 --> 00:06:08,710
and models.
60

61
00:06:08,710 --> 00:06:13,360
And once you've done that, and you think it's pretty interesting, and you want to share it with other
61

62
00:06:13,360 --> 00:06:20,050
students on the course, then upload your model to GitHub and show it off in the Q & A section so that
62

63
00:06:20,080 --> 00:06:27,250
other students can be inspired by what it is that you're doing and can add to your database, and can
63

64
00:06:27,370 --> 00:06:33,800
add data or collaborate with you on your projects and your machine learning models.
64

65
00:06:33,910 --> 00:06:42,610
So go crazy, go nuts, have fun, and I look forward to seeing all the fantastic things that you guys achieve
65

66
00:06:42,880 --> 00:06:44,380
in the Q & A sections.
