 Hey everyone and thanks for joining me for today's webinar machine learning overview for product managers So just before we begin some background about myself So I'm tal. I'm a machine learning product manager at booking.com I'm an industrial engineer and I have a little bit more than eight years of experience in product and analytical roles Here booking a focus on content intelligence machine learning products are both in the domains of computer vision and natural language processing techniques What are we going to talk about today? First we're going to discuss what is machine learning? What are the different types of model to work with? Afterwards we'll understand once we understand the overview of machine learning. We can deep dive into some real-world machine learning applications We will also discuss when not to use machine learning and what is it that we need to take into account When working with machine learning in terms of resources and other aspects So what is machine learning? As you can see on the left machine learning is a subdomain of artificial intelligence Machine learning enables system to learn and improve from experience without being explicitly told to So what is the difference between machine learning and artificial intelligence or what are the type of applications that are artificial intelligence But not machine learning so basically Artificial intelligence is any technique which enables computers to mimic human behavior So for example, if you take hundreds of doctors And each spend hundreds of hours detailing correlation between symptoms and disease and then you pick it up into a machine Then this is artificial intelligence. It mimics human behavior But it's not machine learning Machine learning actually gets the data and the answers and it provides the rules as opposed to classical programming When you get the rules and the data and then you provide the answers. So in this doctor's example the data are the diseases and the rules are the correlation between the connection between diseases and the diagnosis and Basically machine learning is able to understand And define those patterns without being explicitly told to Yeah, so artificial intelligence seems to have taken off around 1950s while 1950 while machine learning wasn't that commonly used before late 1990 or a bit before And just to understand the hype around artificial intelligence in general I think this graph actually explains. It's really well The predicted revenues from artificial intelligence around 2025 are $126 billion and you see the growth rate here As it seems very very significant and another interesting thing for example Is seeing machine learning term used in in Google search engine This is an image from Google Trends seeing the hype around machine learning going forward from 2014 and on So what are the different types of machine learning models or algorithms? There are four Main types of machine learning supervised unsupervised Supravised and reinforcement learning and will deep dive into each and every one of them So supervised models are the ones that use label datasets to train Models to classify or to predict outcome security. There are two types regression regression and classification classification models are the one to classify data points within a given data set and Regression are a set of statistical processes to estimate the relationship between a dependent variable and one or more independent So the example a good example of supervised learning is supervised model Seems to be you can see it here the training data here is labeled We already know what are the data the data points that are apples and what are the data points that are bananas and We feed it into the model and based on that the model will be able to Classify this unseen and unlabeled data the green banana You can see here and to classify it as banana based on the training data So this is supervised models Unsupervised models are basically one that doesn't have this supervision. It doesn't have this label data That has in their supervised models So different kinds of unsupervised models are came is PCA principal component analysis hierarchical clustering anomaly detection and more Same supervised models are basically the one to use both labels and unlabeled data It is a small amount of label data and large amount of unlabeled data To provide the benefits of both basically The need here most of the time when using some supervised model Is to avoid the challenges of finding of finding large scale or large amount of label data Because sometimes we just don't have enough of it Reinforcement learning the most interesting type of models In my opinion are the ones that able to take actions and learn through trial and error much like teaching your dog How to play with the ball? You give him a reward that reads if he does something good, or you don't treat him at all and this is the punishment So this is reinforcement learning basically And there are two approaches for reinforcement learning model based and model free Model based are the one that I use planning In order to conduct the model as opposed to simpler model free method that are explicitly trial and error techniques So now let's discuss some machine learning applications There are so many applications that we'll discuss a few of them in the upcoming slides So the first one actually utilize reinforcement learning techniques that we just discussed Optimizing hero image main image in notice.com inexperienced company The technology here is to use multi arm bandit, which is a reinforcement learning to click technique To explore what is the best image to surface across their search results and in funnel products And by using multi arm bandit They were able to drop the bounce rate and to improve some main business KPIs So it's an interesting example of how to use machine learning to boost conversion rate and to improve business KPIs Another interesting example is a Google Maps traffic prediction So basically Google were able to improve their ETA prediction significantly by using graph neural networks So it was an interesting. It's an interesting use case of using neural networks, you know in real life And by the way in the near future Google plans to further advance more of their AI applications By implementing voice assistant and creating augmented reality maps in real time. So so that's cool Another machine learning application is image classification for search relevance. So basically The capability as you can see on the left is to understand within an image What is it that we see in the image for example here We know when we see that the womb were boots and a dress and we can use it to take it for the search engine takes from image classification can increase the number of product attributes and therefore increase their discoverability in the search engine By the way, there is a similar Application and eBay that they released the shop the celebrity look where you can get a Celebrity image with a given set of clothes and based on this image you can shop the exact look on eBay So this this is a nice application of image classification techniques There are similar images for image search used by Pinterest and by many other applications And it's basically done by embedding the image getting a vector representation of the image And the comparing it to vector representations of other given set of images and based on that to understand What are the similarity of images? So in this example, it's used for visual search and for other it's used in other various of machine learning application Another interesting example is messages highlights by slack. So slack uses machine learning and NLP To move more relevant messages to the top Basically slack claims that a user is bugged more than 70 times a day With messages on slack and they want to help the user to focus a bit more So they surface the most relevant or highlighted messages In the product using NLP techniques So then we can ask ourselves is ML is machine learning is the solution for everything So the short and the long answer is no There are several things that machine learning can't provide you and it's important to be familiar with the limitation of machine learning So when not to use ML when not to use machine learning a male ML fails to deliver its value mainly when the problem can be solved by rule-based coding So when you can solve The problem with less complex solution don't go with machine learning For example, if you have an e-commerce site and you want to avoid listing illegal goods like guns or adults products and You already have a list of keywords For those products that you don't want to use that you don't want a surface online Then you don't need to develop a classification model to predict Which kind of goods should or shouldn't be listed. You can just use the keyword based solution Yeah, another reason not to use machine learning and when you just don't have enough data or label data So for example, if you want to detect fake reviews But you don't really know from previous from history. What are those fake reviews? To indicate and based on that predict a future fake reviews, then you can't really use machine learning Because you don't have the label data Or it's Lee or at least it's a bit more challenging to use machine learning for that Another reason not to use machine learning is where is when you have Non-stationary data When your data is just not a predictor for the future. For example, we saw it very well in COVID times When for example predicting stock returns in the presence of COVID-19 is a bit problematic Because your history data Let's say from 2002 is not a predicted predictable Data sets for the future because the current situation Covid situation is a bit different and not something that we saw in the past Another reason why not to use machine learning is when you need 100% accuracy So if it's a life or death situation, you might need to combine both machine learning Application and maybe human interaction in order to ensure 100% accuracy Another Final reason not to use machine learning is when you need high level of explain ability if your product product requires explainability Understand and make and help other and others understand why the machine learning took its decision the way took then machine learning is You have a challenge there Because while we may understand the underlying mechanics behind the model It's still not very clear how the models reach their decision There are some techniques like feature importance and correlation metrics that can help us understand But it's still not very but not very clear how machine learning Product and produce The decision so it really depends on the product Um, so just before we continue I want to review the machine learning life cycle just to understand while working with machine learning To understand what are the life cycle? What are the different steps required to kick off machine learning product? So the first phase is data collection Then you need to pre-process the data and clean it obviously without data You don't have a model. So we need to collect the right data and then clean it Data cleaning and pre-processing seem to be small steps But actually these are very important and long Steps along the process and without the proper cleaning You might not get the machine learning results you desire Then you have the feature engineering you basically need to engineer Your data in order to maximize the prediction accuracy You engineer the data sets in a way that you think will be most useful for the model to Provide its prediction So for example data engineering example could be if you have Daily temperature data in New York Engineering the data Could be for example, taking the maximum temperature on a weekly basis and feed it into the model You engineer the data in a way that you think that will be most useful for the model and for the use case the specific use case That you're working on Then you have the model training and validation. So here is the domain expertise of the machine learning scientist the data scientist And then you have the model testing deployment and maintenance and improvements Rounds. So this is the overall machine learning lifecycle in short And just before we start I want to review what is it that we need to take into account in terms in terms of resources and other aspects So the first thing is production requirements Latencies latency issues some projects require batch prediction some doesn't need it You need to take into account. What is your Requirements on production and then see if your machine learning infrastructure can support it For example scaling up could be problematic if a model works on a small environment. It doesn't mean That it will work anywhere and everywhere on on larger scale and you need to check it before To check that you have the right infrastructure in order to be able to scale up in an in an healthy manner This is the first aspect the second one is you need to think if you want to build from scratch or Take off the shelf models So there are so many third parties offerings like Google vision API and AWS and there are so many Of the shelf product that you can use So you need to think with with the team and according to the use case Whether the model should be built from scratch or using an off-the-shelf model There are also pre-trained models So you don't even need to train your model by yourself but of course it depends on the use case and sometimes if you have a very specific use use case a very Custom-made need then you might need to build from scratch Or to combine some several third parties of the shelf capabilities The third thing I think it's important to to know is what team is required So basically you need to build a team you need data engineers and data scientists and an analyst sometime To understand and the evaluation of the model and of course you need back-end and front-end if needed depends on your application Another thing to take into account is that things can change over time So you need more than monitoring because the fact that the model is performing well now Doesn't mean it before it will perform well In a year from now or two years from now So you need to continuously monitor your model and maybe even retrain it once in a while to make sure that it's up to date And the last thing is the cost. So basically there are infrastructure costs for the planning model cloud compute data storage Integration cost data pipelines development everything around cause it can be pretty costly to to Product machine learning based product So you just need to take into account and be familiar with the cost before going into a machine learning products development So just to to wrap it up and machine learning is a powerful tool It's up to us machine learning product managers and and everyone else that involves To make sure that it solves real world problem and have a clear problem hypothesis and success metrics And and only then understand if machine learning is indeed distribution for us Yeah, so the main and the key takeaways from this talk are what are the machine learning model types that We reviewed supervised unsupervised reinforcements learning semi supervised We discussed machine learning applications example if it's a ETA prediction or image classification, for example We also talked about when not to use machine learning when you just don't have the data for example Or if the data is non-stationary And lastly the required resources you need to take into account So thank you for a time. I hope you found it useful and please feel free to reach out if you have any questions So additional thoughts. Thanks