1 00:00:07,750 --> 00:00:13,300 In this video, we’ll introduce you to machine learning and deep learning models. 2 00:00:13,300 --> 00:00:18,700 Data contains a wealth of information that can be used to solve certain types of problems. 3 00:00:18,700 --> 00:00:24,420 Traditional data analysis approaches, such as a person manually inspecting the data or 4 00:00:24,420 --> 00:00:29,880 a specialized computer program that automates the human analysis, quickly reach their limits 5 00:00:29,880 --> 00:00:35,570 due to the amount of data to be analyzed or the complexity of the problem. 6 00:00:35,570 --> 00:00:40,520 Machine learning uses algorithms – also known as ”models” - to identify patterns 7 00:00:40,520 --> 00:00:41,730 in the data. 8 00:00:41,730 --> 00:00:47,960 The process by which the model learns these patterns from data is called “model training." 9 00:00:47,960 --> 00:00:52,010 Once a model is trained, it can then be used to make predictions. 10 00:00:52,010 --> 00:00:57,129 When the model is presented with new data, it tries to make predictions or decisions 11 00:00:57,129 --> 00:01:01,650 based on the patterns it has learned from past data. 12 00:01:01,650 --> 00:01:06,850 Machine learning models can be divided into three basic classes: supervised learning, 13 00:01:06,850 --> 00:01:11,460 unsupervised learning, and reinforcement learning. 14 00:01:11,460 --> 00:01:16,130 Supervised learning is one of the most commonly used type of machine learning models. 15 00:01:16,130 --> 00:01:21,930 In supervised learning, a human provides input data and the correct outputs. 16 00:01:21,930 --> 00:01:27,689 The model tries to identify relationships and dependencies between the input data and 17 00:01:27,689 --> 00:01:29,930 the correct output. 18 00:01:29,930 --> 00:01:35,140 Generally speaking, supervised learning is used to solve regression and classification 19 00:01:35,140 --> 00:01:36,140 problems. 20 00:01:36,140 --> 00:01:40,180 Let’s look at an example for each problem type: 21 00:01:40,180 --> 00:01:44,119 Regression models are used to predict a numeric, or “real," value. 22 00:01:44,119 --> 00:01:50,689 For example, given information about past home sales, such as geographic location, size, 23 00:01:50,689 --> 00:01:56,350 number of bedrooms, and sales price, you can train a model to predict the estimated sales 24 00:01:56,350 --> 00:02:02,720 price for other homes with similar characteristics. 25 00:02:02,720 --> 00:02:06,520 Classification models are used to predict whether something belongs to a category, or 26 00:02:06,520 --> 00:02:07,520 “class." 27 00:02:07,520 --> 00:02:13,790 For example, given a set of emails along with a designation of whether or not they are considered 28 00:02:13,790 --> 00:02:19,110 spam, an algorithm can be trained to identify unsolicited emails. 29 00:02:19,110 --> 00:02:23,510 In unsupervised learning, the data is not labelled by a human. 30 00:02:23,510 --> 00:02:28,620 The models must analyze the data and try to identify patterns and structure within the 31 00:02:28,620 --> 00:02:34,610 data based only on the characteristics of the data itself. 32 00:02:34,610 --> 00:02:39,650 Clustering and anomaly detection are two examples of this learning style. 33 00:02:39,650 --> 00:02:44,610 Clustering models are used to divide each record of a data set into one of a small number 34 00:02:44,610 --> 00:02:46,580 of similar groups. 35 00:02:46,580 --> 00:02:50,730 An example of a clustering model could be providing purchase recommendations for an 36 00:02:50,730 --> 00:02:57,959 e-commerce store based on past shopping behavior and the content of a shopping basket. 37 00:02:57,959 --> 00:03:04,220 Anomaly detection identifies outliers in a data set, such as fraudulent credit card transactions 38 00:03:04,220 --> 00:03:07,500 or suspicious online log-in attempts. 39 00:03:07,500 --> 00:03:12,349 The third type of learning, reinforcement learning, is loosely based on the way human 40 00:03:12,349 --> 00:03:15,440 beings and other organisms learn. 41 00:03:15,440 --> 00:03:17,420 Think about a mouse in a maze. 42 00:03:17,420 --> 00:03:21,400 If the mouse gets to the end of the maze it gets a piece of cheese. 43 00:03:21,400 --> 00:03:24,250 This is the “reward” for completing a task. 44 00:03:24,250 --> 00:03:28,310 The mouse learns – through trial and error – how to get through the maze to get as 45 00:03:28,310 --> 00:03:31,230 much cheese as it can. 46 00:03:31,230 --> 00:03:37,010 In a similar way, a reinforcement learning model learns the best set of actions to take, 47 00:03:37,010 --> 00:03:42,580 given its current environment, in order to get the most reward over time. 48 00:03:42,580 --> 00:03:47,170 This type of learning has recently been very successful in beating the best human players 49 00:03:47,170 --> 00:03:53,489 in games such as go, chess, and popular strategy video games. 50 00:03:53,489 --> 00:03:56,849 Deep learning is a specialized type of machine learning. 51 00:03:56,849 --> 00:04:02,239 It refers to a general set of models and techniques that tries to loosely emulate the way the 52 00:04:02,239 --> 00:04:05,700 human brain solves a wide range of problems. 53 00:04:05,700 --> 00:04:11,930 It is commonly used to analyze natural language, both spoken and text, as well as images, audio, 54 00:04:11,930 --> 00:04:16,860 and video, to forecast time series data and much more. 55 00:04:16,860 --> 00:04:21,580 Deep learning has had a lot of recent success in these and other areas and is therefore 56 00:04:21,580 --> 00:04:27,300 becoming an increasingly popular and important tool for data science. 57 00:04:27,300 --> 00:04:32,940 Deep learning typically requires very large data sets of labeled data to train a model, 58 00:04:32,940 --> 00:04:38,370 is compute-intensive, and usually requires special purpose hardware to achieve acceptable 59 00:04:38,370 --> 00:04:40,070 training times. 60 00:04:40,070 --> 00:04:44,800 You can build a custom deep learning model from scratch or use pre-trained models from 61 00:04:44,800 --> 00:04:48,720 public model repositories. 62 00:04:48,720 --> 00:04:54,280 Deep learning models are implemented using popular frameworks such as TensorFlow, PyTorch, 63 00:04:54,280 --> 00:04:55,780 and Keras. 64 00:04:55,780 --> 00:05:01,210 Deep learning frameworks typically provide a Python API, and many support other programming 65 00:05:01,210 --> 00:05:05,330 languages, such as C++ and JavaScript. 66 00:05:05,330 --> 00:05:10,009 You can download pre-trained state-of-the-art models from repositories that are commonly 67 00:05:10,009 --> 00:05:13,270 referred to as model "zoos." 68 00:05:13,270 --> 00:05:20,449 Popular model zoos include those provided by TensorFlow, PyTorch, Keras, and ONNX. 69 00:05:20,449 --> 00:05:25,090 Models are also published by academic and commercial research groups. 70 00:05:25,090 --> 00:05:30,440 While it is beyond the scope of this video to explain in detail how you would go about 71 00:05:30,440 --> 00:05:36,090 building a model, let’s briefly outline the high-level tasks using an example. 72 00:05:36,090 --> 00:05:41,699 Assume you want to enable an application to identify objects in images by training a deep 73 00:05:41,699 --> 00:05:43,229 learning model. 74 00:05:43,229 --> 00:05:48,270 First, you collect and prepare data that will be used to train a model. 75 00:05:48,270 --> 00:05:52,620 Data preparation can be a time-consuming and labor-intensive process. 76 00:05:52,620 --> 00:05:58,000 In order to train a model to detect objects in images, you need to label the raw training 77 00:05:58,000 --> 00:06:04,410 data by, for example, drawing bounding boxes around objects and labeling them. 78 00:06:04,410 --> 00:06:10,290 Next, you build a model from scratch or select an existing model that might be well suited 79 00:06:10,290 --> 00:06:14,340 for the task from a public or private resource. 80 00:06:14,340 --> 00:06:17,280 You then train the model on your prepared data. 81 00:06:17,280 --> 00:06:22,259 During training, your model learns from the labeled data how to identify objects that 82 00:06:22,259 --> 00:06:24,470 are depicted in an image. 83 00:06:24,470 --> 00:06:29,580 Once training has commenced, you analyze the training results and repeat the process until 84 00:06:29,580 --> 00:06:33,069 the trained model performance meets your requirements. 85 00:06:33,069 --> 00:06:37,830 When the trained model performs as desired, you deploy it to make it available to your 86 00:06:37,830 --> 00:06:41,069 applications. 87 00:06:41,069 --> 00:06:45,490 In this video, you’ve learned about machine learning and deep learning, what they are 88 00:06:45,490 --> 00:06:49,449 used for, and where to find open source models. 89 00:06:49,449 --> 00:06:54,740 In the next video, we’ll introduce you to the Model Asset eXchange, a curated collection 90 00:06:54,740 --> 00:06:58,580 of ready-to-use and customizable deep learning models.