How AI Happens

Turning Expertise into Algorithms with Mavenoid CEO Shahan Lilja

Episode Summary

CEO Shahan Lilja joins to explain how Mavenoid is able to deploy custom chat bots in a matter of minutes, the processes by which these tools get better over time, and how the ability to automatically turn technical expertise into an algorithm that can be utilized at scale is amplifying human intelligence.

Episode Notes

CEO Shahan Lilja joins to explain how Mavenoid is able to deploy custom chat bots in a matter of minutes, the processes by which these tools get better over time, and how the ability to automatically turn technical expertise into an algorithm that can be utilized at scale is amplifying human intelligence.


Episode Transcription

0:00:00.0 Shahan Lilja: So basically, you click a button and you get a bot, 20 minutes later.

0:00:08.6 Rob Stevenson: Welcome to How AI Happens, a podcast where experts explain their work at the cutting edge of artificial intelligence. You'll hear from AI researchers, data scientists and machine learning engineers as they get technical about the most exciting developments in their field and the challenges they're facing along the way. I'm your host, Rob Stevenson, and we are about to learn how AI happens. Today on how AI happens, we're going to dig into another great example of where AI technologies can further enable humans to focus on their highest leverage activities. We're going to look into the technology powering chatbots, chatbots combine a unique array of technologies, both natural language processing, live constructional models, and also enable experts to seamlessly capture and express their expertise in the form of an algorithm that can be utilized at scale. To dig into this, I sat down with the CEO of Mavenoid, a company who's AI powers hardware in many forms, including the generation of fully customized chatbots at lightning speed.

0:01:21.7 SL: The classic founder, cliche story, PhD dropout, started a little company then that we later sold, worked at Palantir for some time, and then after that started Mavenoid and here we are.

0:01:38.8 RS: Got it. What was the PhD that you decided to walk away from?

0:01:42.0 SL: It was in something called object recognition, so basically teaching computers to see and recognize objects.

0:01:48.5 RS: It's funny, walking away from the PhD has come up a couple of times on the show so far, I'm curious, what was it that made you decide to walk away from finishing the degree in object recognition and that you were better off starting your own company rather than finishing up in academia.

0:02:04.8 SL: It was basically, I felt that the rate of learning wasn't as high as I was craving when I was doing my PhD. And PhD is of course, by their nature they are very specialized. You're kind of drilling down on one narrow subject. When you look kind of back in history a little bit, then you see kind of your heroes and you look at their PhD, thesis. They're actually revolutionary for their fields, and then you kind of looking at your own thing, at the thing you're doing yourself, and you realize that probably "I'm not cut out for this." I crave much more action, much more speed of learning and I wasn't getting that.

0:02:44.5 RS: Who were some of your heroes? Who's PhDs you were reading.

0:02:49.0 SL: One of my favorites of all-time is Richard Feynman, if you could see my room here, you see that I have a picture of him in my background. John von Neumann which is like a complete alien, not even... It's like as much similarity between him and a human... As a human and a snail. So it's mostly people in science. I think one of the artists I really like is Leonardo da Vinci a bit of a boring hero to have, but he's a... He was a such a... He was just smart in such a weird way, such a quirky way, just very observant guy that picked up every detail and was just very good at kinda finding unconventional solutions to problems.

0:03:30.2 RS: I don't think that's a boring hero to have. Particularly when you look at some of the sketches of the inventions he wanted to make, it's clear he was way out of his time. I like to think about what would he have come up with had he lived several hundred years in the future, you know?

0:03:42.7 SL: Yeah, he definitely would have done some good Sci-Fi novels, I think if he was living now.

0:03:47.5 RS: Definitely. Well, Shahan, I really wanna learn more about Mavenoid, to set some context here. Would you mind sharing a little bit about the company and the chief opportunity it is you are attacking, and then we can get into some of that heft of a technology as well.

0:04:03.2 SL: Yeah, sure. So we're a platform for hardware support. So we let basically hardware companies provide amazing, just like very remarkable technical support of really any physical product, so devices, appliances, machines, stuff you can knock on with your hand. And the two main products that we offer on our platform are self-service, and we do that via kind of a Smart Product assistant, that you can put in on your website, on your mobile app or any support channel you want. And then we also have this kind of remote service too which we do through something we call live video support. And this is basically the customer being able to just point their smartphone on a problem they have in their surrounding, might be their microwave that has broken or something like that, and get kind of live help from an agent.

0:04:55.3 SL: So we work with companies like Jabra, HP, BSH, Logitech, all kinds of companies that are producing physical products, and we basically help them help their customers do things like setting up the product, using the product, trouble shooting it, all kinds of things that they might wanna help their customers with. You've also asked me about the problem that we're solving, the short version of that is that we're basically helping them to scale their hardware support, scale their tech support. And that's something which is very difficult to do for companies, they usually just throw more humans at that problem instead of trying to solve it with technology and automation.

0:05:42.7 RS: Got it. And then when did it become apparent that utilizing AI for these tools was the right approach to solve this problem?

0:05:52.6 SL: Yeah it's certainly... Like if we could avoid using AI, we would avoid using it, it just happens to be our problem domain requires it, so in our case, there's actually many parts of the target user experience that requires AI. So one example is users, when they have a problem with a physical product, let's say their dishwasher at home, they wanna be able to describe their problem with natural language. So they don't want just that multiple choice options when they're getting self-service, they actually want to express their problem freely. However they want... And you need to understand that language, which is obviously "AI". And then once you understand the problem, once you understand the intent, the question that the user has, you kinda want to go into a structured flow. Like you want to start to ask them specific questions to narrow down the problem, to troubleshoot the issue that they have, for example, if it's a technical issue. It's a hard problem to solve, to for example, fix something that's broken.

0:06:52.0 SL: But you also need this thing to become better over time, for example. And then if we can't solve the problem, then we escalate it to a human. And that human actually, we wanted that human to be able to give feedback so that the bot improves. So for example, what solution did end up solving the problem, that's something that's very valuable and can kinda create an important feedback loop. Yeah, those are some ways in which we use AI, and then I guess maybe more interestingly from an almost infrastructure level, I think one problem in general is that chatbots really suck.

0:07:24.2 SL: So it was actually an interesting question for us like, "Why do they suck so much?" Like, "is it really the best we can do?" And one of the conclusions that we kind of came to there was that, chatbots are very difficult to build, and not only build, but also to maintain, to update, to scale. Like what do you do if you have built the chatbot for one product then you have a hundred products. How do you add the next 99 products, for example? And it takes a very long time to build a decent chatbot, version 1 even, right? And then they are not very robust, like if the world changes, it's actually hard to change the chatbot, so the other kind of more deep technical problem we're solving is building better bots essentially.

0:08:05.7 RS: What are some of the ways you managed to make these systems improve over time?

0:08:10.8 SL: So we have a few ways that they improve over time, one is that we have this kind of natural language understanding. That's the start of the user experience, the user types in or they can speak into the microphone or whatever, what their problem or question or issue is and we try to guess their intent, essentially. Like what does this person want to ask, what is their problem, and that's something that is very important for it A. To become better over time and kind of B. Not to suck when you launch it. Because you know people... It's customer-facing, so you'd lose a lot of trust with your users and our customers wouldn't launch it in the first place if it wasn't... Had a very high quality from day one. And then the other thing is, once you know what the issue is, you go into trying to solve that issue, resolve it in some way. Whatever that path is that the user goes through, you wanna improve that path over time, optimize it and make it better.

0:09:04.9 SL: Finally, you want to be able to build bots very quickly and very smoothly, you don't want to invest a lot of time into doing so, so you can say the most magical feature that we have is auto-generation of bots. So basically you click a button and you get a bot, 20 minutes later and then you can edit that bot and improve it, add images, change the logic of it a little bit if you find it lacking in some areas. And once you built it, the way that we help our customers to maintain it is to suggest things dynamically, so while they're looking at all of this content, while they're looking at the bot, this is kind of a big canvas in our user interface. While they're looking at this canvas, they can kind of not just paint themselves on the canvas, but they also get suggestions for the next brush strokes.

0:09:49.2 RS: How does it know what to suggest? Is there like a base level kind of model that it builds off of? How does it know where to point the user?

0:09:55.2 SL: We took a few different approaches to this problem, basically the current approach we take is that we basically scrape a lot of different data sources, like we scrape information from the internet, we find information about problems, solutions, issues that people have in forums and places like that. A lot of various public data sources Wikipedia, for example, we use as well. And then we also use private data sources, you can say like things that only their company has, like their own support ticket data, manuals that might only be used by internal experts, that's not publicly available and things like that. And then it's kind of a linguistic approach, so given the kind of notes that we have in our model, and by notes I mean things like symptoms, solutions and stuff like that. We kind of guess what... What a reasonable connection to that note would be.

0:10:49.2 RS: Got it. So this is kinda leading to the natural language processing that's at play here and... So I'm curious how you were able to sort of develop your NLP approach within the parlance of hardware troubleshooting. Very different than, you know, how you and I speak to each other, how regular sort of automated speech recognition happens, how regular sort of conversational AI takes place, I imagine.

0:11:12.2 SL: I guess we had two main problems that we were are trying to solve, one was, you can call it semantic matching. Basically, our issue was that our users would on the one hand use kind of super vague terms, right? They would say, for example, "there's something wrong with my swirler" and what they mean is there's something wrong with my fan, for example. They can use lots... And you can even use like swirls with a z or like you know, but does that's a bad example, but they... People would kinda... They can be very vague in how they express words and problems, and concepts.

0:11:44.9 RS: My aunt calls a garbage disposal the garburator.

0:11:47.9 SL: I love that. [chuckle]

0:11:49.4 RS: Yeah, so you would need to have garburator in here in their parlance.

0:11:52.9 SL: I mean if we collected crazy stuff... People say Ex-thingy for stuff. If we just collected the kind of amount of crazy stuff that we've seen, it's just... Like we have 100 examples per day. It's pretty crazy how imaginative people are. But the interesting thing is, on the one hand, they can be very vague people right, on the other hand, in our domain, they can be also highly technical, right? So they have an issue with their dishwasher and there's like an arrow code on the display of the dishwasher. And they will say, "Hey, I have E109 error" and it says that the power is low or whatever. So they can be very technical and very vague at the same time. So, that's one thing that we have to solve in a way that other type of support doesn't have to solve. That combination of vagueness and being highly technical and highly specific about the hardware problems they have. And then the other maybe even bigger problem we had is it kind of turns out that expert time is very limited, right? So we actually have very, very precious and very little time from people who actually know the products. They're very busy, they don't have time sitting for... Like they do in big chatbot projects. They don't have time sitting for weeks just building chatbots, they have a job to do.

0:13:05.3 SL: So what do we do with 100 times less expert time than what's reasonably used in chatbots? Probably this has been one of the big reasons why chatbots fail actually. Our approach to that is basically... It's pretty simple. So on the kind of semantic matching side, we use pretty standard modern methods but very much tailored to our domain. So for example, transformers in particular has made kind of this problem much easier for us compared to when we started the company. For example, we recently adapted the GP3 to our domain, which is really cool. We're kind of constantly changing these methods, but in the beginning, when we used word embedding and come standard, more old school approaches, this was actually quite tricky or something we had to push through the friction to actually get somewhere with.

0:13:53.9 SL: And then I think the other piece, how to use human time effectively, basically the smallest part of things we do today. I'll give you just a few quick examples. So for example, we let experts just enter their intents and then have the system kind of understand immediately what they need. They don't have to give a lot of examples of, these are the different words that people can use, these are the different terms they can use. They can just say one time what they intend and that's enough, kind of like one shop learning I think is their buzz term for that. The other thing is that we... Like our dimension, we can auto-generate models. Basically the philosophy there is that we try to build a model that 70% of the way to a good model but we do it with 30 seconds of the user's time instead of 30 days. So it's not quite there, they still have to build it out. But it's very important to start to build momentum in the humans brain that like, "Hey, this is actually very easy and fun to start building this bot." And similarly once they build it, we wanna keep that momentum going so we do things like auto-suggestion, we help them guess other nodes that they could put on on our graph, for example. This is the way with which we build the bots.

0:15:04.0 SL: So it's all kind of tailored towards, We have a few minutes, a few hours of this person's time. Initially we'll have a few minutes, they might get bored. How do you win them over immediately? How do we make them think that this is unlike any other chatbot project before as they have seen other chatbot projects? Or how is this just a fun way for them to enter the knowledge into the system?

0:15:24.6 RS: So how do you do that? How do you make them excited about engaging with it?

0:15:28.1 SL: Actually, the auto-generation is pretty fun, like you enter your product's name and a URL where the product is described and you click a button and then you get an email 20 minutes later saying, "Hey, you're model is ready, do you wanna give it a spin?" And that usually blows most people's minds. Funny enough, some people, they are not impressed at all about that because they don't have any expectations, they've never tried to build a bot before but the thing that impresses those people who are kind of the more cynical version of the crowd is when they kind of get suggestions and they haven't thought about the suggestions themselves. I think one great way to impress people is to surprise them and then make the surprise seem intuitive and kind of seem to make sense to them immediately. And of course, the reverse of that, which is also something we've seen is if you surprise someone and they don't like your suggestion, even if you're correct, they might burn you at the stake. So it's something that we actually constantly have to balance.

0:16:26.0 RS: Why might someone not like the suggestion even if it's correct?

0:16:30.4 SL: I'm an expert. I've been doing this for 20 years. The system is just...

0:16:33.4 RS: Ego, oh okay, Got it. [laughter]

0:16:33.8 SL: Yeah, so that's kind of a very human thing to kind of rebel against.

0:16:37.5 RS: Is there anything you can do about that if someone is just too proud to take the advice from a robot, from a chatbot?

0:16:47.4 SL: I think that's a really interesting question. I think one way is to explain to them how you arrived at your suggestion, so for example, if you have a complete black box method and you just say, "Just trust me," that's not as helpful as saying, "Look, here's the logic laid out on a canvas in a pedagogical way, this is why I really think you should do this."

0:17:05.8 RS: So I like that you refer to the area where these models are generated as a canvas and it sounds like in the case where you can show exactly why it's suggesting what it is that it's displaying these sort of attention mechanisms. Is that what's kind of at play here? Or are you sort of letting people click into why it believes what it believes.

0:17:26.5 SL: Yeah, so it's very easy to immediately see, And our system, by the way, it's not like a simple flow chart or decision tree, We have our own kind of way to lay out that logic but it's basically as simple as a decision tree. It's just something that people haven't seen before, we call it the Check Flows and you can basically see how is the system thinking, for example, about what symptoms lead to what other symptoms. So a symptom might be smoke is coming out of a hole and then that might lead to... Actually, that might be caused by overheating of some part of a product, for example. So then you can very easily see how those two symptoms are connected on my graph in a very visual... It's almost like a visual programming language. You can kind of code a chatbot without being a programmer, I think the buzz word for this is no code or whatever people call it nowadays but, that's very important if you're gonna have a system that gives technical advice to people at homes, right? You don't want somebody to just electrocute themselves or you actually have to have a review ability of the stuff that you're publishing.

0:18:38.3 RS: And the no-code approach, the enabling non-technical people to really develop exceptionally technical sorts of materials. It speaks to this change I'm sort of observing in the Human-in-the-loop metaphor, I guess, or even just the visual of a Human-in-the-loop. And it's less about the Human-in-the-loop as a babysitter, as a chaperone, and more about it working in parallel. Is that kind of how you see how your technology pairs with the user? How do you compare it to the traditional sort of conceptions of Human-in-the-loop technology?

0:19:13.3 SL: Yeah, that's a good question. So I guess, the way we view human in the loop as a metaphor is very dehumanizing. We like to think about us as amplified intelligence like how do we amplify human intelligence. So it's basically kind of the Iron Man model instead of the RoboCop model. So Iron Man, he steps into his suit... And he only does so temporarily, he's not always in his suit. And he gets useful advise from his suit, like JARVIS kinda gives him some tips and he can take those advice into heart or or not. And whereas the other model is, you're in this raft in a cage, you're barely aware that you... You have, there is some machine there and you're just doing simpler tasks. You're basically more a machine than a human, you're more machine than the machine almost. The way that we approach this, I guess there's a few different ways. One, is that we wanna minimize the time the human spends in the loop, we want them to just visit the loop, like have a vacation in the loop, not be in the loop all the time.

0:20:21.6 SL: So it's like you touch the loop, you give the systems some advice and then you jump out of the loop and you do your human things. And we do that, for example, to be a bit more concrete, we kind of... For example, for experts, we provide them a very carefully prioritized list of suggestions that they can take or not take, basically changes in the logic of the book that they can accept or not accept. And we aggregate all of the cases that are coming in from real usage of the system in a very nice way. So they can, for example, see that 20 users... 20 cases indicates that you should make this change and this is third in their priority list. So then it can kind of, they can even look through those cases and make their own... Because dive deeper if they want to just see why we're making that suggestion. Then I think it's also a very important part actually, that we underestimated... In the beginning, was putting the right people in the right loop. So there's many different loops.

0:21:24.5 SL: For example, if you are a beginner and you're not like a super expert, you're just a support agent that started a few weeks ago, maybe then it's fine that you just correct some misunderstandings in the English language or you give some simple feedback. Whereas if you are a very knowledgeable expert, you really should only be asked for things that require expertise. And that's something that has been a very important part of our design philosophy. The only thing that actually is quite interesting is how do you make the loop frictionless in some sense? How do you make it fun for the human? So one way to make it fun is that you learn by being in the loop. So you're actually getting... We talked before about being surprised, so we actually stretch your abilities to get suggestions you haven't thought about, where you give feedback for products that are adjacent to the product you're expert in. Things like that, this is something where we're thinking a lot about as well.

0:22:26.2 RS: Yeah. And it all seems in service, you're making it frictionless. Also how often do you ping the technical expert? It's all in service of enabling humans do their highest leverage activity. And so in these cases where it's like, "Okay, we don't need the expert to do X, we need him to do Y," you sort of are able to be more efficient and this whole goal of not replacing work, but replacing the boring work, replacing the menial tasks to allow people to really flex their particular expertise in a high leverage way seems to be just kind of an overall goal across the industry really.

0:23:02.6 SL: Yeah. That's very important for us. I think it's particularly important in domains such as ours, where the work is extremely repetitive by its nature. So hardware products, you can't update them just magically, so if you have an issue, the same issue is gonna come back, like crazy, it's gonna be very, very repetitive. So I think in those situations is particularly important to not just view humans as kind of literal cogs in the wheel.

0:23:31.6 RS: Yes, yeah, exactly. Well, Shahan, this has been fascinating listening to you. Before I let you go, I just would quickly like to ask you one more thing. What is most exciting about our field about AI and this technology? When you... If you ever lay awake at night, just kind of being curious and excited about this technology as I'm sure you are, what are some of the applications and the uses that you're excited to see play out?

0:23:54.5 SL: I think for AI in general, I guess it ties into a little bit with the purpose of our company in small bits as well. But it's basically like, how can AI help us to make hard things easy? How can I make hard... I think that's a kind of a theme that I'm very fascinated about. So for example, there are a lot of complex problems we have to deal with as humans, but you can break them down into simple steps. And AI is great at breaking things down for us. And it should break things down for us where we're not that interested in solving those problems, because they are repetitive or they're not very interesting, they have been solved by other people before. So for example, whenever you step up to a piece of technology and you have a question about it or you scratch your head, can be for example, my grandma doesn't understand a remote control, literally after 20 years, it's the same remote control, she doesn't understand it. When she steps up to that remote control, it should be very easy for her to immediately understand how to use it.

0:24:51.5 SL: She should be able to just ask any question from it, she should be able to do what she wants to do with her television without having to figure things out. And I think that's the purpose of... Maybe not to make technology more easy for people, but I think that's true in general. We should have... Everyone should have their own little assistant giving them advice about things to make their lives easier and more fun.


0:25:23.2 RS: How AI Happens is brought to you by Sama. Sama provides accurate data for ambitious AI, specializing in image, video and sensor data annotation and validation for machine learning algorithms in industries such as transportation, retail, E-commerce, media, MedTech, robotics and agriculture. For more information, head to