data.bythebay.io: Carlos Guestrin, Keynote: How Can We Trust Machine Learning?
Recording: data.bythebay.io: Carlos Guestrin, Keynote: How Can We Trust Machine Learning?
okay thank you for the kind introduction and uh thanks for having me here so I'm excited to to be part of this event um can everybody hear me okay this sound sounds a little weird from back here okay very good so I've been working on machine learning for a long time and uh maybe 20 years or so and it sometimes amazes me uh what people bring to production with machine learning and I asked myself the question recently how can we possibly trust this machine learning machines and so uh today I'll talk a little bit about that uh but I'll start with uh how I got into this journey and so uh my clickers so if you talked to me a couple years ago about machine learning I said yeah I know a lot about machine learning been teaching for a while it's pretty easy start with some data then you run some fancy machine learning algorithm then what I do next is I show you that my curve is better than your curve and I publish a paper about it but this is not why I got into machine learning in the first place I got into machine learning because I wanted to make Killer Robots I read a lot of sci-fi and I thought I built some really intelligent things that were going to change the world and the exciting thing is over the last year or so we've seen and and and before but we've seen these things come to tremendous amount of reality you see industry after industry being disrupted by companies that build what I call intelligent applications where which are differentiated by Machine learning at their core so in early days you can think about Amazon with uh retail and recommendations or Google with advertising all the way to uh how Uber uh dispatches its uh its taxes and that's disrupting a really interesting industry right there so uh this idea the Sci-Fi is really coming to reality today and in fact fact I believe that within five years every successful Innovative application is going to use machine learning at its core it's going to be intelligent and in fact if you're not intelligent um your application is not going to succeed so our goal is to really accelerate the process of creating such applications and we've talked to a lot of people where we've seen a lot of value come from machine learning so areas like recommended systems targeting advertising lead scoring fraud and any others but what what is well known is for example if you take uh Netflix which is well known that 70% of their views come from recommendations is pretty exciting they're famous for spending about $200 million a year on the recommendation team and so very few companies are able to do that kind of investment and in fact as we talk to a number of different companies and innovators we saw three core big blockers that uh stop folks from building this uh intelligent applications first is how do you map the business task you want to solve to the machine learning problem you need to solve underneath so it's well known for example that for recommenders you need something called Matrix factorization and you can find that in a textbook and everything but getting to that requires a lot of expertise and knowledge and background which slows down the rate of progress now after you find out that okay I'm going to do a matrix factorization model there's still a lot of iteration and interaction that goes on you have to do feature engineering you have to combine different models you have to optimize and that process can be time consuming and and clearly not some of the most exciting things that we do in every day and finally if you're thinking about taking these things to production you have to build systems that manage and deploy these algorithms as real-time services that your applications go and query and usually everything is custom build so a a data scientist or a developer will write say a prototype in Python R and they'll typically for throw it over the fence and some other team will reimplement that in Java six to 12 months later and the thing that gets implemented has nothing to do with the thing that they thought they're building so these are real pains and real pains are slowing down progress and so as we think about us um and this s talk a little bit about what we're trying to do dator uh we're trying to help folks first create value fast even if you don't have a machine learning background can you build that uh first term predictor lead scoring system recommend the fra system as quickly as possible but not as a blackbox that you can't change or edit or modify something that gives you flexibility to be highly Innovative and they can be make it easy to take that thing to production to build intelligent systems in production so these are three coree terment getting to value fast having flexibility to innovate and building intelligence to production so that's what we've been doing and our goal is to accelerate innovators who want to create intelligent applications using what I call a machine learning so let me give you a couple examples of a really fun little applications that we've built and these applications um they they F uh fulfill two pain points that I was having my life the first one uh is my sister uh is a fashion designer uh which makes buying gifts for her you know a really high bar process and so I wanted to buy her a dress and if I do a keyword search for dresses on uh on basically any website you get a wide variety of dressers uh they have different styles it's hard to figure out which one is right for her I do know that she likes floral dresses but if I just search keyword uh floral dress still there's a lot of Alternatives and it's hard to nail down which one is right for her now what is more natural for me as an experience is to look at one that maybe looks visually interesting or um looks visually appealing uh for what I know she likes and then find other dresses that get recommended to me they're visually similar to that one so for example if uh if I find that this dress here is one that I think she's going to like can we find dresses to look similar now what we did in this example is use a deep learning model that analyzes the features of this image and then finds other dresses that uh that are visually similar to this one so if I click on this floral dress you see they find other dresses that look kind of like it it's actually pretty cool but maybe I say that uh you know my sister um she likes something that's a little stylish and different maybe some with multiple patterns so maybe I'll get her this one and you see other dresses where uh you have interesting patterns inside them but maybe I've gone too far here maybe something a little more in between um this one looks really cool and the model even looks like my sister so that's perfect um now this is not a can demo you're welcome to try it out you can come and and uh play with it and you'll see that it really provides really interesting cool recommendations and I can click on anything here um here's address I don't think I've clicked on before say this one here and you you'll see that uh it finds visually similar ones it's pretty impressive there's no shopping experience like this today but I wish there were and what uh I've been uh thinking about and and for a while and team adto has investing is how do you enable a developer without machine learning background to build something like this in a few lines of code so if I click on this little gear you'll see that the data that we're using is uh images of dresses and the text description uh I haven't gone in I talk to you about the text part but there's a this part of this demo also uses text but in a few lines of code we can do keywords extractions inside the text um few lines of code of python we can build a deep neural network to analyze those images and basically with one line of code we can take that and repo deploys a real-time service on AWS such that every time I click on an image uh let's say this one it gets shipped off to AWS uh goes through a GPU it comes back for prediction of other address might want and that's what I would like to enable anybody to build so this is an example um of what kind of application you might want to build uh here's another one that was bugging me uh we have a 2-year-old and it turns out that when you have a kid you have to buy a lot of stuff and uh you know if you think about baby monitors you C you cannot have a child without a baby monitor it turns out I don't know how civilization ever got built um and so uh there's a lot of variety many of them with tons of reviews is impossible for me to really understand how one differ from others or uh what which way one baby wants to write me better than another and here two they have very different practices can I understand a little bit of in what aspects they differ so what we did behind the scenes here in this little example is to do um text analysis on the reviews and find different aspects that differentiate the two products so here range battery life signal and so on and for each aspect I can dig in and get a sense what people saying positively and naativ about that aspect so here's a fancier baby monitor but it seems like the signal is not so good in terms of the sentiment of the reviews let's see what people are saying positively or negatively about the signal so here's the most negative sentence has to do if the wear a signal of this baby monitor and it's hard to read from the bo so I'm going to read it to you it says if nothing else in your home sends out Wireless signal then this will work very well but then again it's 2014 and who doesn't have wireless signal in their home so that seems like a problem uh and if you read this other one here it says basically if the signal has to go through any walls at all then this is not the baby monitor for you so clearly not one I want to buy and it would have been hard for me to dig up those reviews and those aspects without having some kind of machine learning algorithm going through the Thousand or so reviews for me so that's the kind of creativity that I think we can Empower and we can Empower those folks can be way more creative than we are uh at building such applications so uh that's uh that's the goal that's the goal for us and uh we've been doing this uh for a for a couple years now but we've been doing actively over the last year and it's been really an exciting journey to go from Academia to taking these ideas into the real world and now uh we have a a large number of customers that uh are building really cool and Innovative applications they use machine learning so here is a really fun example um scripts network is um uh large Media company they own HTV uh Food Network and other properties and uh our champion Josh um uh is a database bi guy who didn't know anything about machine learning saw was in a budget meeting for the next year and saw they were paying people to manly label 500,000 images and then wanted to scale that and he said oh I heard this AI thing is pretty cool can I do something about it and uh he found us on the web uh downloaded uh the product started using it build his first uh image tagging system and that's really important because say about $150 million of revenue for their site comes from ads and if you have better image tagging you can place better ads and so he was really excited about that um and started building multiple applications including a cool one uh ingredient substitution tool for a Food Network so if there's a recipe they use a screen but in the reviews everybody says oh you should use yogurt is healthier it automatically bubbles up yogurt as a substitute for cream um so over 4 months he started building multiple applications having impact and uh he now has a team of people working on this and has become director of data science for a scripts Network which is pretty cool nice Journey there um we've been growing a community I I I was going to plug in I I hope that's okay the data science Summit in July uh there's also one in Israel that we're running uh where um you'll see great speakers also just like here and you have uh lots of people uh talking about machine learning ra ranging from um Folks at data to um uh industry leaders like Jeff Dean um and uh Jeff Dean from Google de n Cola from Corel corsera and many others um uh and I'll talk about this a little bit later we also been building an online education program uh with six courses in machine learning that is done very different than any other machine learning course out there so I'll talk about that towards the end so uh our goal uh as we step back is to accelerate the Journey of uh building intelligent applications and before I talk about trust I want to talk a little bit about what that Journey looks like and show you a little demo of that so uh we built uh three products one to create applications using machine learning graph lab create want to scale that data distribut that wanted to deploy as a service called Data predictive service but really the way we think about it is you want to build an intelligent application like that dress demo and you want to rapidly build and prototype things on your laptop and the question is what is the right architecture to build such applications and the one that we've invested in very happily is what we call the microservices architecture where every model that you build can be easily packaged and deployed as a real-time service that an application should query and then based on the feedback so for example did the user click on a particular dress or not we can close the feedback loop and actively improve the performance of the model through uh live monitoring and online learning and so this closed loop system is something that you have to build if you want to be really successful with a machine learning production so and uh we can run whatever infrastructure that you want out there so let me show you an example of building a recommender system uh just like we talked about Netflix and how you can do that in a few lines of code where a lot of the things underneath can be automated for you uh but you also have the power to go and edit choose your own algorithm or add your own method so let me show you a quick demo of that um so here's my quick demo uh this is an uh IPython notebook jupter notebook uh just a a nice way to demo things uh but underlying this I'm going to show you um machine learning library it's called graph lab graph lab create so I'm going to type import graph lab and uh it's going to get started and we're going to use some um San Francisco restaurant reviews from Yelp so this brings me back to to my days living in the Bay Area and um trying to find great places to go to and so uh here's what uh restaurant review data looks like you have a particular restaurant uh where a user provided a rating there was a a price range a type of food there was a review they wrote the date and so on and normally you have to slice and and dice that data in order to understand first and kind of explore and understand what that data looks like and that takes a while and so we created because of slowing us down we created this little visualization Tool uh that we call canvas that allows you to quickly get a sense of your data so what's going to happen here is with um Co callon canvas we do a sketching sketching algorithm where for each column we provide uh one pass sketch of what uh is in there so for example you see that the most popular restaurant for yops reviews is Pizzeria Delina yes good good choice uh most common reviewed food is breakfast and brunch uh that was a little surprising to me um and clearly $2 signs is where it's at um and so that gives me a sense of the data let's say that I feel pretty good about my data I want to go ahead and uh build a recommender system so uh here you know we provide the ability to choose your own recommender system like factorization machines and so on but if you just type graph lab recommended. create we automatically um uh select the right algorithm for your data optimize it and build something so here I'm running my laptop and it just finished and we have a recommender system built and you can do all sorts of things with it you could evaluate it you can um uh quat I'm just going to show a quick evaluation so as I was saying earlier I'm not a coffee drinker but uh lots of people in my team are so when I come here I I heard that you know four barel coffee is a great place for coffee what other places should I take my team any suggestion okay let's see what the what the recommended system says um side glass coffee richo Blue Bottle Coffee Bar and fils um the first two as I understand it uh have the similar uh don't roast your coffee too much and uh the novo coffee thing but uh yeah it looks pretty good now I'm more of like a Amnesia kind of guy yes no yes yeah yeah so we know what we're talking about some dive bars in the mission so go to Amnesia uh listen to some live music on Wednesday night uh when I go somewhere else where else should I go okay a few more anybody more so let's see what the recommender says Casanova Lounge dalva Elbow Room I think somebody mention Elbow Room room over there it's a pretty good dive bars places I could try um so in a few lines of code we got something that seems to give uh reasonable uh predictions let's say that I trust this model and we'll come back to trust in a little bit um and I want to deoy this as a service normally I have to take this package it and hand it over to somebody else to build a realtime service that my front end could query um instead uh we're going to show you that you can do that really easily so the first thing that I'm doing here here is connecting to a deployment that I already have so I'm not starting the deployment myself um here's one that there is on uh AWS and if I do a DOT show on it you'll see that there are three machines they're all live uh there's many models they are being hosted there so many microservices and they all versioned uh and providing different uh capabilities so what I'm going to do now is um take the model and wrap it with a python file function so this I'm showing you graph La create models but it could be anything it could be uh psych learn model it could be anything that you create I'm just wrapping a python function and when I do that um and I'm going to add it to my deployment it collects all the dependencies packages it up pickles that sends it over to AWS and starts hosting as a service uh depends on how fast the network is but it's usually pretty fast uh so the the pickle object is copy to S3 those three machines are then going to read them from S3 and start uh hosting that as a robust real time service so now we should be done and now can query it so I'm going to uh you can query it from JavaScript you can qu from curl here I'm going to qu it from um Python and I'm going to give it as input the restaurant name for barel coffee and it gives me back a Json response that includes Side Glass rual coffee roosters and others and the interesting thing or one interesting thing it also has this unique query ID so that the front end can provide a feedback loop uh to say for this particular query the user clicked on four Barrow coffee and that's used to update the model in a a Clos Loop or to do a testing or to do Bandits so all those things are are possible all right so this is how we think about that Journey from uh exploring a data to building a model to deploying as a real time service oops now as I said in the beginning the question is can I really trust the model I just built uh can I really uh think that this is the right thing for me and I call this the trust challenge we typically go from uh data to building a machine learning model maybe iterating over that to deploying predictions the front end application uh is going to serve the question for me is is this model really working the way I hope it's working and can I convince myself my engineering boss my business boss they were now all going to get fired because of what I just did and how do I do that so I'm glad um so so uh my student Marco R and my post Samir Singh have been uh working uh this is University of Washington he working on some really interesting algorithms and methods to explain the predictions of any machine learning technique and uh we have a paper on it that's pretty exciting that you're welcome to check out so I'm going to tell you a little bit about this and since everybody signed the release form on the way in right we can do a user study so we're going to start of a user study thank you for participating let's say that I built a deep learning model to solve a very important task given an image I want to know whether this is an image of wolf or a husky now we're at the University of Washington this decision is extremely important right some people know why husky is the University mascot they always bring a husky to the stadium uh you don't want to bring a wolf and um know what it's going to happen right there so we're going to use a deep learning model to protect ourselves from liability um and so I try this model you see the predicted value on the top here and you see the True Value and for everyone let's say for for a vast majority of the test cases it uh gets them right let's say for uh this one got WR seems pretty good my question to you user study question is do you trust this model oo anybody else so um that is a good uh suggestion so uh what um um deep learning models is really hard to understand it's hard to know whether or not to trust them and so what maros Samir did is come up with a way to for any algorithm go back and try to understand what features what part of the data was most important to making the decision if you look at this problem and you highlight for each image what part of the data was most important to make in the decision you'll see something very interesting as was pointed out over here if you look at the wolf pictures it's not predicting based on the features of the wolf but so you don't have a wolf detector you have a very very fancy and deep snow detector and so understanding trust can make a huge amount of difference um here's here's another example there's the famous 20 news groups data set in text anybody heard of this data set yeah so uh this data set collects uh articles Post in 20 news groups anybody know what news group is the later called forums later called Facebook pages um what's that yeah so news groups kind of the thing is amazing where you can post articles and other people read them um and so there's this uh classic data set that where you're trying to predict based on the text of the article which news group is it from is it from politics is it from religion and so on and it was a a known problem where we always use an example in class because basically any machine uh modern machine learning model gets really high accuracy like 95 94% accuracy on that and so uh Marco and Samir tried out their approach on this to try to explain why we're getting such high accuracy and they learned something really interesting the reason that most people sorry most models get really high accuracy on the CH newsa set is that they're using features like the email address of the person who posted the article and John at gmail.com always posts in politics news group and so extremely misleading and not generalizable results if you remove that kind of data you get much lower accuracy only 57% so what seem to be that amazing success of machine learning turns out to be a uh relative failure in some ways so the idea here is can when you create a model can you trust the model before you deploy it and this is important it's important for the accuracy issues that we discussed it's important seeing Netflix or users understand and you gain some transparency of why a particular movie was recommended to you and it's really important important in some domains like medicine so if you tell a doctor probability this uh patient has cancer is 95% the chances uh that doctor us does anything of that uh information is zero they're going to just ignore it but if you say uh look at this patient look at this MRI results look at this other related cases look at this paper that just appeared in the you know New England Journal of Medicine now you understand why this patient is likely to have cancer so trust has uh many different impacts and it's important to model and understand it so Marco and uh and Samir created a A system that allows you to understand and visualize why a prediction is made so here's an example of the email address being used uh in 20 news groups and I want to go into the details of the algorithm but just as a highlight what I do is try to explain the key features that were used to make the pred ition by uh Computing explanations they're good for a particular prediction they might not be good for the whole Space because there might not be a single explanation that shows why a deep learning model works but for this particular image you can explain really well and then they have a technique using some mod function optimization that explains the model as a whole uh they uh they create a really cool visualization tool and did a lot of user experiments to show that um user studies that show that uh this idea makes big difference and here's a really cool user study take that mechanic take that TR news groups data set where if you don't clean the data uh you only get 57% accuracy and so um okay so the way that um Sam uh so the way that Marco wanted to do this is he cleaned the data himself really well and came up with what he called the gold standard the idea is if you clean the data what is the best possible result that he could get and the question he was asking is can mechanical turkers by looking at explanations knowing nothing about machine learning help refine the model Crossing out things that they think that shouldn't be relevant in that explanation can they get close to Marco's gold standard and so uh the question is after multiple rounds mechanical turkers how close can we get to Marco's gold standard and what he found out is that the mechanical turkers after three rounds do better than the gold standard that he created so I fired him just a joke Mar is amazing student but it was pretty impressive that even people that don't have machine background when faced with explanations can understand uh how reason should be done and can help improve the performance of a machine learning algorithm and so so for me building Trust in models is not just about um evaluations here's my accuracy number although you want to make that easy and uh and clear but it is about being able to explore and understand the predictions of a model like we did with um for barel coffee and having explanations they help us uh understand if why are decisions being made and is that decision made for the right reasons and this can have impact not just uh the performance of the algorithm but in other aspects of the real world I mentioned the doctors here's something that a data we've done with explanations is having quite a lot of impact so if you think about churn prediction I'm trying to decide uh whether or not the user is likely to churn you can get a probability to stop using your service you can get a probability of churn and you can try to explain uh why in general people tend to churn but you can do some things that much more interesting with explanation so you can segment the users based on the ones they're likely to turn for the same reasons and then you can provide human understandable reasons of why the algorithm thinks this particular category of users is likely to turn and then um marketing person can take that and do targeted campaigns they help them address that those folks so for example there could be a category of users who was shopping a lot in the section of the website they had to do with uh toddlers two years later they stopped shopping that tells me something about about those users and tell me something about what kinds of things they might be open to in terms of campaigns so explanations um have can have a tremendous amount of impact uh and it's something that we've been working on quite a lot both from the academic perspective and from the company perspective um okay so I'm going to uh take uh there's a few minutes left so I'm going to take few minutes to talk about two things um little bit about uh what other the technology we've been invested in because this's a kind of General visible uh Concepts that are useful throughout machine learning space and a little bit about what we're doing with um online education at corera so in terms of Technology uh we've been building something called graph laab create that uh has a number of uh automatically optimized algorithms at the top like recommender system I showed earlier CH prediction lead scoring uh sentiment analysis and others which are backed by uh 50 or more highly optimized machine learning algorithms for tasks like regression classification and others uh and based on a data layer called the S frame which is highly optimized for machine learning so uh I'll talk a little bit more about um sorry take talk a little bit more about s frames in a second but uh SRAM is really super cool it's an open source package we created is a outof core data frame so that even on your laptop you could deal with hundreds of gigabytes or even terabytes of data at interactive speeds a big thing for us is to make it easy to deploy what you build as intelligent microservices so let's say that you're building a realtime recommendation system or a real-time fraud detection this some of our users do like every time you do a credit card transaction I want to predict within 7 7 milliseconds whether the transaction is fraudulent or not so the way that we do it we allow uh folks to create any models in data in R python Java and others um and deploy them as services that can be consumed by the real applications that are written in Python JavaScript or whatever they're written in just through rest apis and that's a really fast system so based on requirements from um some folks in the ad space uh We've optimized it so that you can get uh round trips within 5 milliseconds to make about 100 queries for um booster tree models and you can do about a thousand such predictions per second even on a single AWS machine uh a big thing for us for certain machine learning tasks is to scale them in a distributed way so this ranges from uh for some algorithms like boost of the trees providing large scale distributor implementations and for other t T like selecting parameters in machine learning models and searching over parameters where is more of a data parallel task being able to do that really easily so this is what uh data distributor does it can run on whatever um infrastructure you have it can be AWS it can be Docker it can be a spark cluster and provides you the ability to uh do this distributed machine learning algorithm so here's an example the performance that we get um if you take the Benchmark CTO data set which is a OD targeting type of question if you look at the uh distributed uh booster trees we way faster than any of the Alternatives out there and if you look at graph data uh which is something that we've been working on for a long time uh we can deal with graphs that basically nobody else can deal so here's the famous common craw graph which has 100 billion edges um this could not be finished on any other system out there at the time um and you can uh you can run it off on a single machine because s frame is an outo car infrastructure but you can get really fast as you scale to more and more machines so this is a little bit about uh the tools that we' built um at the University of Washington we also work a lot on online on education especially now on online education for machine learning so with Emily Fox we've created a uh new uh machine learning specialization on corsera uh people know corsera yeah yeah online education platform so uh Emily and I uh creating a sixc course machine learning specialization there which is built quite differently than any others uh in the space so I've been teaching machine learning for a long long long time and I in every other course that I've known in the past uh follows the following recipe uh start with the probability of a coin flip and how you infer that from data and then um build up from there and hopefully by the end end of the course of the end of semester you say oh and there's some applications for machine learning go figure them out yourself um with em we thought there's a there has to be a better way to do this and the way we're doing it is starting from use cases down so we start with questions like uh how does Zillow predict your house price and then we deconstruct that to say uh this is what regression is and this is how you estimate that from data how does Pandora figure out what song you want Listen to Next and uh from there we deconstruct it we talk about recommender systems and we talk about things like Matrix factorization and so on so it's a use case based approach um in the first course uh we focus mainly on uh the use cases themselves so if you think about building a machine learning pipeline it goes from data to machine learning method to intelligence let's say you have to figure out what machine and task is solving what the models are and what the parameters of those models are and what the optimization algorithms are they're going to select the parameters and then how to evaluate the things uh whether they're giving the the the results you're hoping so we take the models and algorithms as a black box in the first course and just focus on where the use cases where the tasks and how to evaluate and deploy it and make sure it works and then in the subsequence courses we dig in and uh the students will Implement their own algorithms and their own techniques from scratch for these different areas now that they use cases on real data for every single uh one of these so it's a very Hands-On real data driven approach so the first course on regression second classification the third the sorry the second course on regression third classification the fourth on clustering retrieval then there's one met factorization dimensionality reduction and then the final Capstone project is extremely cool uh folks are going to build deep learning models uh they combine tax and image data and deploy them as Services uh so that's uh that's uh how we're thinking about a new way of uh learning machine learning so I'm super excited about the space I hope you can tell um and the phase transition I see today is that we've gone from just an academic um purely abstract uh cute thing my curve is wet in your curve to intelligent applications they're changing the world so if you saw for example Google's announcements yesterday I'm sure everybody was just busy here and didn't see anything um but it's pretty cool you know personal assistance and AI is now talked in the media everywhere and that's extremely exciting and it's possible for Google to have tremendous advances but what's going to really spark creativity is if every developer in the proverbial garage which could be the literal garage or it could be the project inside a massive company is able to quickly and creatively build intelligent applications they use machine learning at the core and so my single Mission here is to accelerate that process and to help go through the creation process gaining trust and deploying this machine learning Services thank you very [Applause] much I don't know uh if we take a question or not take a question I saw a hand over here by the way I have a super bright light in my eye so I see Shadows so don't get upset yeah yeah I see I think a hand here I have two question number one the one you show the uh uh the machine learning uh after three round uh actually perform better than your student now was actually testing with the same data or actually add more test uh samples uh to evaluate accuracy so so here's how the experiment was set up uh the model was trained on the 20 news groups data set with uh the features that the Nano turkus thought were bad being removed and the models were tested on a heldout data set that mechanical ter didn't get to see which was not from the 20 news groups where was uh recently extracted news articles or or um so Forum posts from today CH news groups is from the '90s this is from today okay great uh second uh you actually are tune my uh advertise up but you didn't explain how actually your technology uh what kind of Technology you use to be able to explain how MA we should trust a machine learning conclusion yeah so um I did not go into the details of the algorithm I kind of hinted in that one slide um and it's really a question of time here and depth uh and I'll point you to the paper to to look at it EAS for you to find but um here's basically what we do we take an input we perturb it meaning we change the features here and there um and then we build what's called a locally weighted model so it's a model that is weighted around this data point and it is trying to uh be good for this particular data point not everywhere in the space H and it's training on the perturb data and then it tries to um figure out what are the key features to differentiate what the model think is positive versus negative or one class versus the other or whatever around the perturb data for the current input uh and it's a simple explainable B that's the goal but that means the person must know the underneath M they they must they don't have to know the math when I showed you the Deep learning problem I forget who over here just knew ready my punch line and just blurted it out um which is it was the first time actually I've done this talk for a long time but if you look at the second example uh everybody I hope got the punchline and you didn't have to know anything about machine learning to look at it and say snow is not a wolf it's true that snow is correlated with wolf wolves may be live in snow or go snow some of the time but snow is not a wolf and so that kind of uh understanding can be done by mechanical turkers as we saw in the Mechanical Turk experiment I think there's another question I I neither see you yes s thank you very interesting Carlos you say the title is trusting uh machine learning how about trusting the people who are using the platform and or the models they are building what's the antidote for for that issue if any so so your question just to be clear is do I trust the app developer that consumes the machine learning predictions is that is that true yes okay um I think uh it is my responsibility as a data scientist um to uh to work with those people or to provide a system that is robust to the way they use it uh it's easy for us to say this doesn't work because um you know Joe or Mary over there who build up front end uh screwed it up and I think that that's a responsibility we cannot assign to them and so I think it is important for us to provide enough transparency um ways to evaluate the model uh Clarity and so on and it's a journey I don't know that we can do it today such that those people um those folks can be super successful UC F so if you think about database systems we've done a quite a good job uh over the last 30 plus years of providing abstractions uh and feedback that makes it easy for most developers to consume and use a database and understand when things are going right and wrong more or less um and for machine learning there's a long journey ahead so I think uh so sorry to be like a little direct here but I think it's absolutely uh our responsibility to figure out how to do that for uh and how to help those folks uh use it the best way they can yeah that's my view thank you very much thank you [Applause]