Latest / Agentic Conversations (formally mlops.community) / Learning from 150 Successful ML-enabled Products at Booking.com // Pablo Estevez // Coffee Sessions #46
Transcript
- 0:16Hey everyone, welcome to another episode of ml opt coffee
- 0:19sessions. I'm your co-host Vishnu and I'm
- 0:22joined today By Demetrios as always a dimitrios.
- 0:26What's up everyone? I today actually have a car For
- 0:31our coffee session, very end. You joining me.
- 0:35I'm going to say thanks to our guests.
- 0:37Pablo for being patient with us because you all don't know this.
- 0:41But just before we started, we spent the last 10 minutes with a
- 0:45bit of a zoom hiccup in my travel set up because I am not
- 0:51at home. If you couldn't tell the people
- 0:53that are listening, definitely can't tell, but those that are
- 0:55watching. See that I'm in an undisclosed
- 0:57location, on an island in Greece, But that's not what
- 1:02we're here to talk about today, we are here to talk with Pablo,
- 1:06my man from booking Vishnu. I stole it away from you, you
- 1:09take it. Oh, man.
- 1:11Now that's okay, that's okay. I think everyone's wondering if
- 1:13you're in a CIA safe house or something.
- 1:15But today, we have the pleasure of being joined by Pablo Estevez
- 1:19from booking.com, where he is a senior machine learning leader.
- 1:22I let him give you his entire bio, but we're very excited to
- 1:25have Pablo join us especially after where I believe some of
- 1:29you have joined our In groups where we were able to discuss
- 1:31the paper that he wrote we're all big fans of his work and are
- 1:35very excited to dive into the seminal paper 150 successful,
- 1:38machine learning, models and the lessons learned that
- 1:41booking.com. Pablo, thank you for joining us.
- 1:44Well, thank you for the for the invite.
- 1:45Super happy to be here Chandler, I couldn't join the book club
- 1:48last time. I was in holy the time, but
- 1:50happy that we had an opportunity.
- 1:52No, I mean, now everybody can hear the book club and everybody
- 1:55can hear your perspective on this paper.
- 1:56So I think think it all worked out.
- 2:00I think many of the people that have, you know, listening to our
- 2:03podcast that have been in the community.
- 2:04I've had the privilege of, you know, being exposed to your
- 2:07work, but maybe don't know as much about you the person and
- 2:11your background and how you ended up at booking.com.
- 2:13Maybe we can kick things off by learning a little bit about your
- 2:16journey to where you are now jokes from.
- 2:19I think it's actually interesting because I just
- 2:21started with booking and data science, machine learning Etc,
- 2:25eight years ago. And even though it's not that
- 2:27long ago, I think it has changed a lot the way people.
- 2:30Go into these roles. Seen by the time all especially
- 2:32the transition but before that, they were not many careers and
- 2:35machine learning and data science for this kind of
- 2:38Industries. And most of the people who join
- 2:40at the time, they were coming from some diverse background, my
- 2:43case. I came from electronic
- 2:44engineering. So I was doing the radio waves
- 2:47and stuff like that, then I move into robotics robotics of been
- 2:50too much in their name. Then I was working with on
- 2:52engineering side of it, but throughout through the Journey,
- 2:56I got involved into Data techniques and machine learning
- 2:58techniques, and that's how I ended.
- 3:00The working on this field in the case of booking.com are you.
- 3:03So many of my colleagues of the time they were coming from
- 3:05completely wears background to help people, from aerospace,
- 3:07engineering from statistics mathematics bioinformatics, it
- 3:12was quite quite mix. And then for the last seven
- 3:15years, I could have been working booking mostly I was working on
- 3:18with us our machine learning, scientists title changes, also
- 3:21it with the evolution of the field you could call it.
- 3:24Now, machine learning scientists and I work mostly on the front
- 3:27and side of the of the So they decided he supposed to our
- 3:31users, feel for accommodations. And then now for non
- 3:35accommodation products booking is expanding to other markets is
- 3:38now doing flights attraction transportation and I'm working
- 3:42lazy on that on that area. Got it.
- 3:46Got it. Quite the diverse jury that got
- 3:49you to where you are today in terms of booking.com and being
- 3:54in the hospitality industry, very cool to hear all about
- 3:58that. One question, I have just to
- 4:00start, you know, you mentioned that you have a very diverse
- 4:03group of people you work with. And that your background is very
- 4:08sort of cross-functional. I would love to understand you.
- 4:10How big is the machine learning group at booking and can you
- 4:13give us a little bit of context that the, how machine?
- 4:16His run at looking in terms of a team and organizational
- 4:18standpoint. Sure.
- 4:20So let's see. We have different organizations
- 4:24in Booking depending on what kind of goal that part of the
- 4:28organization wanted to see if it's an important thing to note
- 4:30in there is a booking is not a company that makes or sells or
- 4:34its main product. Is not much in learning.
- 4:36Module m is one of the tools we have for chief, our business
- 4:38goals, and to support our partners and support our
- 4:41customers, right? And depending on the part of the
- 4:43company, the the way that you Use machine learning differs
- 4:47have it. We have a couple of hundred
- 4:49people. I don't have the precise.
- 4:50Number also depends everything where you put this tension
- 4:52between machine. Learning science.
- 4:53Is machine learning in your data science Etc.
- 4:55But there is all the couple of hundred people working on
- 4:57related disciplines across the company and Depends a bit on
- 5:02that in some areas where you have heavy product development,
- 5:04you have very good multi, multi discipline team try.
- 5:07You might have a team working, let's say on a user facing
- 5:10problem. Let's say the hotel page to give
- 5:13an example, you can imagine, there is a couple of designers
- 5:15and Cooper. Developers have a product
- 5:17manager, and if you think that there is enough material in
- 5:19there for machine learning to help, you might also get up
- 5:22machine learning science. So as one set up, you have this
- 5:24kind of multi skilled team, normally coordinated by a p.m.,
- 5:28a product manager who understand what is the end goal that you
- 5:31want to achieve within the team and everywhere that you've seen
- 5:33from the discipline. And you can see very, very nice
- 5:36collaborations in there. Sometimes we make a model, you
- 5:38have the way up in you do is cut with a copywriter who tries to
- 5:41find how to explain it. When you have this course, it
- 5:43was a copywriter you realize that the mall you were The
- 5:46building doesn't get translate to a user.
- 5:47Maybe we're trying to to satisfy or you talk to the designer
- 5:51designer called and say, okay. Very nice model but I kind of
- 5:53like the user experience that you are designing.
- 5:55So I need your model to give me more specific answer so I can
- 5:59actually put the user on the right set of all.
- 6:01I think that the model is in a is exposing a part of the of the
- 6:04journey. Well, the user still needs
- 6:06option so I don't need one. A tenant in a journal to Output
- 6:09them Alternatives, right? So they have a better
- 6:11understanding on that and the developer could come and say
- 6:13yeah the features you're requesting they take too long to
- 6:16So I got pellicano, deploy them all your thinking in this part
- 6:19of the journey, right? So that's one set up in all
- 6:22kinds of the company. I'm sorry you had something no
- 6:25just saying just saying got it got it.
- 6:26Yeah, I would love to understand you other setups in all parts of
- 6:29the company where you have much more Focus ml topics a fraud
- 6:34detection, you can imagine there is a very heavy component of a
- 6:37male in the event. You do have email organizations.
- 6:39When you have several ml people working, could be celibate, mix
- 6:42between a male scientist data scientist ml engineers.
- 6:45Maybe the manager of the team. He's a specific data science,
- 6:49skilled person but even there the is in the the main driving
- 6:54guideline is that we focus on what we want to build.
- 6:56So even if you are working a fraud or cybersecurity, you
- 6:58would probably have lawyers involved somehow in the
- 7:00organization because as part of the of it if you are working on
- 7:04the partner face and you will have commercial managers because
- 7:07whatever you are doing, will interact with article people who
- 7:09manage properties and you have to make sure that you have a
- 7:11good alignment and while you're making in there, right?
- 7:14But it depends how we don't. Nation.
- 7:16And then maybe there is a third part, which is infrastructural
- 7:18teams. So, this do I describe our two
- 7:21different type of organizations that support product development
- 7:24in different ways and you also have internal products, or since
- 7:27there are infrastructure that we all use within booking and they
- 7:30do have also kind of a technical organization where you mostly
- 7:32have developers. And if we do so much in there
- 7:34and available so much in Learners, who are building
- 7:37things like mobile engines or monitoring systems or
- 7:41capabilities, right? You can have, I don't know,
- 7:43image, recognition capabilities instantly, Yeah.
- 7:46Yeah, that makes a ton of sense. It's very helpful to hear this
- 7:50context for how booking, actually organizes, its machine
- 7:53learning teams and thinks about how on a, you know, human sort
- 7:57of people level and human resource level, how machine
- 8:00learning fits in. Because I think everybody that's
- 8:03read this paper walks away, with the sense that booking is an
- 8:07extremely product and user-focused culture.
- 8:10This is not just a functional group kind of company.
- 8:13This is, how can we help the customer?
- 8:15How does our technology advanced that in machine learning is one
- 8:19of those. I think that's one of the things
- 8:20I walked away from the paper feeling and so with that, I
- 8:25think it would be really cool to start talking a little bit more
- 8:27about the paper and it's takeaways to start.
- 8:31This is one of the most popular papers that people kind of come
- 8:35back to continuously. I'd love to understand a little
- 8:38bit. How did you come to?
- 8:39You know, what to want to write this paper?
- 8:41How did this effort materialize and to have so many?
- 8:45Any so much knowledge packed into such a short amount of
- 8:48time. How did you do that?
- 8:49And why? Sure.
- 8:51So, as I mentioned, I think, I would say when you have seen
- 8:53broken and especially the first year that I was in there, like
- 8:56the first two, three years, there was a lot of exploration
- 8:58going on. Not only, we have thought it was
- 8:59a whole set of people in there. I join a team that was already
- 9:02producing quite some interesting material.
- 9:04They were two people who are authors of this paper Lucas on
- 9:07Tammy's. They were joining also more, or
- 9:09less at the time. And as I said there was a lot of
- 9:10exploration, we're really trying everywhere within in particular
- 9:14in our case, the front-end part of Booking.com to try to find
- 9:17Value. And I was again as you mentioned
- 9:19is part of the company's culture, right?
- 9:20Every other team was also just trying to look what is the value
- 9:23for the company for the guests at this?
- 9:25Not mentions of them, but also for the partner, I mean, we are
- 9:28a two-sided market place and we have to get also for our
- 9:31properties, right? And in the case of a metal with
- 9:34the same idea, let's try to explore.
- 9:35Where can we use ml to add value to all of these components of
- 9:39the of the marketplace? And there was a process.
- 9:41I mean, is if you read a paper, it might look like a very Has a
- 9:45story where you think a lot of these ideas.
- 9:47Of course, it was a lot more organic, right?
- 9:49So you have pro teams, they create hypotheses normally about
- 9:51these are coming from user stories, so users research come
- 9:55up with an idea. Okay, there is a lot of people
- 9:56looking for flexible travel. We need to offer alternative
- 10:00since like this and then you start exploring different
- 10:02options. But it was a very, really, very
- 10:04productive period on this exploration and the team grew
- 10:08and the way start improving our methods.
- 10:10In a way to allow us to kind of inspiration, more effective.
- 10:15This paper. That was three years ago.
- 10:17Basically, look back and say, okay, we have done a ton of
- 10:21exploration, we have not owned of model, we've stated many
- 10:23things and we are going to be successful in any of them.
- 10:26I just wanted to highlight for the paper focus on 150
- 10:28successful applications. There are things that work it
- 10:31behind this. There is another couple of
- 10:33hundred of things that did not work and that also teach you
- 10:35something right, three things always are basically ways.
- 10:38It was to have the paper was looking but say, let's try to
- 10:40look at all of this work and it's like, 25 there are patterns
- 10:43that Can help also and other practitioners, be more effective
- 10:46on using machine learning to get value.
- 10:48Yeah, makes makes makes perfect sense Demetrios.
- 10:50I see you, I see you holding that Mike there.
- 10:53What are you thinking, man? I just I'm fascinated by what
- 10:58you were talking about before on the different compositions of
- 11:02teams and how these teams end up maybe sparking creativity within
- 11:09each other. And so, were you on one of the
- 11:13teams that Multidisciplinary, or were you on this strict ml team?
- 11:19Or were you doing much more of a platform side?
- 11:24What was your role when you were looking at that?
- 11:28Now? Multiply that by invoking?
- 11:29I've been on the multidisciplinary team so
- 11:31because I was working on front-end.
- 11:33And in there, you mean, your men client is a customer to call who
- 11:36comes walking.com. Direct position channel is very
- 11:38much driven by Design. You have certain requirements on
- 11:41performance. So I was always in this kind of
- 11:43mood, People post teams will just kill team that is trying to
- 11:46set up a username at some point. Also exploring with these
- 11:49organizational aspect, we did create a team that was mostly ml
- 11:53people but this ml people was a supporting for a lot of
- 11:56different problems. So the prices were developing
- 11:58worry, still move your skills organizational.
- 12:00It made sense at some point to centralize some of this
- 12:03knowledge just because the amount of demand of morals and
- 12:06output. Actually, if you see everything,
- 12:08the beginning of the story were telling in bed, one thing, we
- 12:11noticed you don't realize that they were to type We could offer
- 12:14the world very specific modes. You were with one thing in one
- 12:17place. There are no examples, the
- 12:18Germany Hotel page Gallery, you have the photos.
- 12:22You want to know which photos versus very specific problem.
- 12:24You can make a very targeted one, that's what you could very
- 12:26much do, if you are in the hotel page team, but we realized that
- 12:29we could also get value from more kinetic models.
- 12:31That could be serving many different things.
- 12:33And that's what we try to settle wearing this team.
- 12:35That was a machine learning thing that was interacting with
- 12:37all of these different disciplines.
- 12:38So projectwise, it was still something you would do with the
- 12:41other disciplines, but we said, okay, if I can maybe instead of
- 12:44Making a model for the gallery of the photos of the hotel.
- 12:46I make a photo Rancor that can be used in the hotel phases,
- 12:49have resulted different parts of the funnel, then I'm actually
- 12:53able to span the with more, my eye real.
- 12:55So with the performance of the model, that's one thing but
- 12:57because you are not targeting specific case or signature, not
- 13:00diluted the the relation between features and Target.
- 13:03Labels is a weaker but now you have a much wider application so
- 13:07your overall impact on the business and the customer
- 13:10experience is also bigger. Yeah, let's zoom into that.
- 13:14At the business that you're talking about.
- 13:15Because one thing that I took away from the paper was how you
- 13:21were you talking about Driving true.
- 13:26Business impact is amazingly hard with machine learning and I
- 13:31was wondering about like this idea of how you can be more
- 13:36clear on the problem that you're trying to solve.
- 13:39This is one thing that we've talked to many about and it
- 13:42seems like you guys learned a lot when you're putting all of
- 13:47these successful models into production and the non
- 13:49successful ones. But is there something like that
- 13:53you could help us? Understand like what are some
- 13:56strategies that you found really work, when you're trying to
- 14:00figure out what problem you're solving and how to help the
- 14:05impact? How to make sure that it impacts
- 14:08it more like you were talking about saying, oh well there's a
- 14:11bit of a trade-off. But if I can reuse this model in
- 14:13other areas of the business, I get more impact.
- 14:17Are there other strategies that you found that were helpful?
- 14:20In that sense? Domination of many things, I
- 14:23think we're going to dodging on several aspects.
- 14:27There is one very weak enabled, which is two of them.
- 14:29So one hand, mentioned a bit of these already.
- 14:31What in a company that has very clear objectives, as a business
- 14:35objective and customer experience objectives in this
- 14:37case. So, it's in the filling is
- 14:39aligning to a very understanding that as a general practitioner,
- 14:42you're ringing a tool, but you are not the outcome depends on
- 14:44the industry. I mean, if you are in a company
- 14:46actually sells a machine learning solution, maybe they'll
- 14:48come, he's the model itself. But if your company is selling
- 14:51or Frozen Seas have defined a different, need to realize that
- 14:54you are a tool to this end, right?
- 14:56And that means that your end goal cannot be Precision or
- 14:59recall or anything like that, your angle is achieving that
- 15:01goal. If the goal is enabling more
- 15:03people to find the right accommodation or maximizing
- 15:05profit for your stakeholder, for shareholders, or whatever it is,
- 15:08the goal that you're trying to achieve in there.
- 15:10I think there's a step then you have to stab find that Gap
- 15:14because I don't know why they cannot force people to
- 15:16accommodations. I cannot force a certain
- 15:18Behavior, so I have to start filling that gap of 2 - kid.
- 15:20What can I do? We see my A skill that will
- 15:22eventually lead to that in the case of booking, the way we will
- 15:27learn the we learn how to satisfy these needs.
- 15:30And that we test them is Troy, but this is testing its.
- 15:34I mean, if there's a whole discussion on every test
- 15:36instrumentation Etc using the concept.
- 15:38The overall concept is accurate scientific concept which is
- 15:40hypothesis testing. We will start with a hypothesis
- 15:42and the hypotheses are the ones who will try to tie your idea,
- 15:47your technical idea to his end goal.
- 15:49So if my end goal is helping people go through a Quicker.
- 15:52Because I seen that will save them time.
- 15:53It's Etc. Then I started building my
- 15:55hypothesis. If I put better recommendations
- 15:57on the ranking, they will more easily find the right solution.
- 16:00Therefore, they will not have that moisture to support
- 16:02adoption. They will get them closer to our
- 16:04end goal. So your eyes on hypothesis, kind
- 16:06of ties, the thing that I can actually affect, I can do a
- 16:09rancor to my end goal. So all of these negative
- 16:13variables on the, on the planning, and then there are two
- 16:17more dimensions in there. One of them is having a good
- 16:20tool set like Harry. Indifferent and worse in which
- 16:22you can affect when I say want to improve my ranking, it was
- 16:25nice, but are many ways in which I could try to do it.
- 16:27I will if you were, when I step forward, if I want to improve
- 16:29decision-making on the user ranking, it just one way to do
- 16:31it copies and other design is another, there are many
- 16:35different ways in which you can improve the decision-making
- 16:37process of the user. If you choose to go for ranking,
- 16:39there are many ways to do it. So having this diversity, allows
- 16:42you to explore many options and try to find the next one.
- 16:45And the last element on here is capability of measurement.
- 16:48So being able to know if you report, this is actually Realize
- 16:52this, right? So if I make a different answer,
- 16:53because now I try to use a online learning using some maps
- 16:57a top, which is a very specific impersonation of this of these
- 17:02hypotheses. And I actually trace it back to
- 17:05is one of my studies so I have to go make a decision.
- 17:07Do I pick help help the business achieve your business goals for
- 17:11that? In our case, very often we rely
- 17:13on our experimentation platform but the general concept
- 17:16hypothesis test. If I will try to use tools from
- 17:17a hypothesis testing to know if this specific setting I pulled
- 17:21in, My multi-armed Bandit is driving the whole strength in
- 17:24the business value that I was looking for the beginning.
- 17:27I love what you just said. Because I think this, you know,
- 17:30I was hoping that we could go through one of the six lesson,
- 17:33you know, each of the six lessons and it, you know, I
- 17:35think we've basically now jumped into for those of you who really
- 17:39is your through all of them but it feels a little bit like
- 17:41lesson for right before solving a problem design it.
- 17:44And you're talking a little bit about some of your, some of your
- 17:48tools to do that. And to me when I heard your
- 17:51answer, I heard that booking has learned through the process to
- 17:55sort of, just experimentation iteration to do three things,
- 17:59when tackling a problem generate a hypothesis, apply abroad
- 18:03toolkit, and then leverage measurement, right?
- 18:06Let's see how well you're doing. Yeah.
- 18:08I mean you said it, I'm just I, I, you know, I just get to hear
- 18:13it back and so, so, you know, I think for me like, when I when I
- 18:17think about that, you know, that it's not something that I think
- 18:21a lot of machine, I always think about this, a lot, you know,
- 18:24machine learning professionals. We tend to come from different
- 18:26backgrounds. We tend to come from diverse
- 18:28backgrounds. As you said, I came from a bio
- 18:29engineering background. And then we have, when were
- 18:32challenged to sort of solve machine learning problems.
- 18:35We each bring sort of what our field taught us.
- 18:38But there's not quite this like set of best practices.
- 18:41Or like clear way that, you know, you're, you know, you're
- 18:46supposed to approach approach. A new problem per se, right?
- 18:49Sure. You know, train test set but
- 18:50something like what? Just said, I would love for that
- 18:53to be tight and, you know, machine learning classes from
- 18:55like a hypothesis toolkit and then measurement standpoint.
- 18:58Is this something this sort of framework around problem design.
- 19:01Something that you sort of try to teach new booking machine
- 19:04learning employees as they come in and emphasize the thought
- 19:07that if I was here with the, the registration, I think we can
- 19:09either wait for a while work calls product data science,
- 19:13trying to make the focus of our product makers and other were
- 19:16the religious crisis machine. Learning scientists, either be
- 19:18part of the, of the role is focus on that were The makers of
- 19:22things that we present we learn agile product development
- 19:25because I say whether we're going to make problems with his
- 19:27right. So make whom we have a very
- 19:29strong focus on product design and product development, that's
- 19:32one component. In the case of ml across the
- 19:35company, we've already strong, focus on experimentation.
- 19:38And that means that everybody who comes to a company, gets
- 19:40trainer experimentation gets trained or hypothesis testing on
- 19:42basic statistical concept, and it's really across all roles on
- 19:46the on development. That's, it's a fancy way to say
- 19:50that. We're very data-driven.
- 19:51That's One thing that I like to mention in some cases, are the
- 19:56passive it on them by Roman the company, the culture in some
- 19:58places you have to use the fire test right eye, why would you
- 20:01need to make a, you make a business case to try to find a
- 20:03data in booking more or less. All the time.
- 20:05People the fishes, they will ask you is, did you make a test?
- 20:08I will have a very good testing, environment and infrastructure
- 20:12and because it's very good is also very simple to make Pairs
- 20:14and we have the culture of always testing right now, coming
- 20:17up with assumption, but if it is Sol test it, and I think that
- 20:20kind of development. As I mentioned for remember,
- 20:22it's the same for design and copy copy compensate would like
- 20:24to do better. Relation with our clients want
- 20:26to be more personal they come up with a new set of copies.
- 20:28You have policies, you have the implementation of our policy to
- 20:31make a testable setup in which you actually change the copy and
- 20:34call People by name. For instance, because I will be
- 20:36more personal and you put it in an experiment, right?
- 20:38You make your measurement and you verify your apoptosis learn
- 20:41and iterate. The Savvy, the cycle.
- 20:43Yeah, I think is very helpful and I think this helps us move
- 20:48on to new lessons. In the paper.
- 20:49We've talked about, you know, lesson for around problem design
- 20:52and now I want to talk about sort of lesson 6 and less than 2
- 20:55and all right folks that warning is my numbering.
- 20:58Might be a little bit off here but you know, you'll know what
- 21:01I'm talking about. Basically these lessons, talk
- 21:03about, you know, offline model performance is just a health
- 21:06check and then experiment design pays.
- 21:09All right, and monitoring basically.
- 21:11So my question to you, is, You know, I'm a, you know, sort of
- 21:16like, a new machine learning engineer in 2021, and the
- 21:20discussions around monitoring and making sure that your model
- 21:23is doing what you actually wanted to when you've done it.
- 21:26You know, when you just done your sort of like isolated train
- 21:28test set, but doing it in the wild it's a huge topic.
- 21:32Somehow three years ago and even proceeding you your team and
- 21:38booking as a whole was able to come up with Frameworks and and
- 21:41methods of implementing sort of monitoring and experimentation
- 21:45Frameworks for machine learning models, without the plethora of
- 21:48tools that are available now, can you talk a little bit about
- 21:51how you guys built these tools from first principles and were
- 21:56able to scale? Sort of the lessons you learned
- 21:59about, you know, monitoring models in particular cases to
- 22:02all of those, you know maybe 150 or having many other models you
- 22:06did. So I like how did you build and
- 22:07scale the tooling around? Monitoring experimentation.
- 22:12So one thing is that There is still a lot of open question.
- 22:15Let's put another beautiful as a career, but I do think that we
- 22:17have been pushing for it for a while.
- 22:20We have a couple of things. So one thing is pretty
- 22:22mentation, as I mentioned is not only animal tool, so we have had
- 22:24in Booking culture for a while. I think we'll start
- 22:26experimenting in Middle 2005, eight, or something.
- 22:30Like, this is really quite some years.
- 22:31And if you search with on our side you will see quite some
- 22:34papers that we have in publishing.
- 22:36So were quite a solid player. Experimentation where that
- 22:39basically means is that when a man comes into the picture
- 22:42anyway, is it plain? As I mentioned Is very simple to
- 22:44make an experiment, very simple to validate hypothesis.
- 22:46At least, I wanted to confess in a randomized control, trial some
- 22:49things. You cannot because whatever you
- 22:50want to make tests, that are outside of our control or there
- 22:53are limitations. But from the National Treasures,
- 22:56in Booking are very simple. Do we find it in the code, you
- 22:58will find your hypothesis. You write the code in there, and
- 23:00there is a whole platform that setups the statistical testing.
- 23:04The reporter is also whole culture on making sure you are
- 23:07reading this results in the in the right way.
- 23:09So I think that seeing if there is anything that has been a huge
- 23:11enabler for pro-development and formatting, Happening is that
- 23:14because once you have very cheap experiments, it allows you to
- 23:17understand what is the relation between offline methods and
- 23:19online method allows you to test, your models are doing what
- 23:22you think they're doing even in the early stages model more
- 23:24development. You make some assumptions,
- 23:26right? Maybe they're right seem to
- 23:27optimize for the smallest Pharmacy or we should be
- 23:29actually looking for some kind of accuracy metric.
- 23:31Maybe I should go for something more complex, like a deep
- 23:34learning season that we gave me. Maybe a 10%, how much extra
- 23:37business value? We get from a 10% gain on Air,
- 23:40Mac, for this specific, all of these questions which we are
- 23:44very hard to understand from from a conceptual theoretical
- 23:47perspective, right? To what will be the impact on
- 23:49business of a 10% extra messy on something that is better user
- 23:52experience like a recommendation, you can just put
- 23:54in an experiment and you have the health infrastructure to
- 23:57with very cheaply and very structurally, correct, right
- 24:02with good hypothesis. Testing with good guard rails.
- 24:05There are some areas where you can get a better connection
- 24:07prison if you're working on something like PPC or fraud,
- 24:10this is a much tighter connection between the quality.
- 24:13Of your model prediction and the business value that is ring.
- 24:16I mean, if you can detect a single flower, you basically
- 24:18save 10% more money on for out. There is not much question in
- 24:21there, but if I can be a slightly better, getting my
- 24:25energy, say, score for the rancor.
- 24:27How much more will I help? My people decide.
- 24:30They could also scroll down and find the solution by themselves,
- 24:32right? It's I changed hold any position
- 24:3515 by 16, maybe it was the same for the use of right?
- 24:37They were both in the same street so that but that's one
- 24:41element that this just to focus on.
- 24:43So We had the experimentation element then there is something
- 24:45that is to seek from a male on one hand.
- 24:47We started developing our, we do this exploration a Time direct
- 24:50mention some years ago, we start exploring.
- 24:53How can we better use experimentation setup that we
- 24:56have been working very similar to what you will get?
- 24:58You know, a big Ecommerce has to get the most out of ML and we
- 25:01realize focus on certain set of settings is complex was playing
- 25:04here in the podcast. But since that we were falling
- 25:05for a male is try to understand when different when different
- 25:09models when you're comparing different models, weather
- 25:11prediction be fair. It doesn't make sense to make
- 25:13up. It in tomorrow's, if they are
- 25:15both decent models and they were done in good faith.
- 25:18They probably agree very often. So, it is actually no difference
- 25:20in the two models in which large part of the population.
- 25:22So by focusing on the instances, where the mall differ, you can
- 25:26actually see what how much value it is adding.
- 25:29You can also make a statement. There's a tops that allow you to
- 25:32to break the performance impact on the business impact.
- 25:36So you might have hearings on a fancy.
- 25:37Never a network competing to a very simple naive Bayes.
- 25:40Sure, you get more performance on your offline map.
- 25:43Trees. But also seller is lower and you
- 25:45can decouple these two things. So you can realize how much is
- 25:48the impact of the arid climate performance of the model.
- 25:54If they were both having the same impact on the site
- 25:57performance and if you realize that there is a lot of impact
- 25:59but the mall is a super slow, okay?
- 26:00You invest in infrastructure but you already know you have the
- 26:02business case of this investment infrastructure is going to be a
- 26:05joke because I already know of the moral will perform better,
- 26:07right? That's in there in the
- 26:10experimentation site. Then specifically for a male.
- 26:13We also started developing some years ago, our own matching
- 26:16their name platform which deals with stuff like moral serving
- 26:20feature, engineering feature serving etcetera and a component
- 26:23there was monitoring it and I think what what made up maybe
- 26:28with the difference in our case or what?
- 26:29I think that was quite productive was again the focus
- 26:32on Final objectives. We try to understand that our
- 26:35goal is not to make predictions, make them all predict the
- 26:40outcomes success. It wouldn't happen in reality,
- 26:42our end goal is to affect user behavior and business metrics.
- 26:47So, maybe an example, makes it a bit more and more clear, right?
- 26:50I could make them all a try to predict if I do, you're going to
- 26:52my breakfast and I if I see that you're going to buy breakfast, I
- 26:55sent you an email. Well, if I send, when you're
- 26:56probably going to eat breakfast because I send you an e-mail, so
- 26:59we're my moral matches, the end behavior is a read of.
- 27:04Now, if I read above could be witnessed in him, right?
- 27:07I don't even really predicting your behavior.
- 27:08I'm affecting your behavior. Moreover, many of the things, we
- 27:11do get very late feedback, right?
- 27:13People can cancel the reservations, you can cancel of
- 27:15go here in advance. You actually did.
- 27:16Book up to a year in advance, you can cancel anytime before
- 27:19you receive many of our state's. So all of these things tell us
- 27:22that this standard just look at your output.
- 27:25See if it matches the prediction might not be so useful.
- 27:28For our end goal which is actually affecting user,
- 27:30Behavior, understanding user, Behavior affecting business
- 27:32metrics and that brings the creativity.
- 27:34Okay, what can we do? Can we look into featured risk
- 27:36and you look into concept, or if there are actually some papers
- 27:39or try to look at the label field and we try to work on
- 27:42those? So what happened?
- 27:43If I know I mean, if I feel is an issue but what if I know that
- 27:46is an issue, I know that. Ezel ABI have this illusion of
- 27:48the delay. I know how this delay figure
- 27:50will behave. Can I do something about my
- 27:52mother? What we saw that in the paper is
- 27:54one specific thing. We put it in there because I
- 27:56think there was a most ignored if there is you can find around
- 27:58me and concept. Three featured.
- 28:00If etcetera you can find. But we put in there, is this
- 28:02idea of response distributions which is just looking at what
- 28:06the more says doesn't matter. What is reality?
- 28:08Just looking at what the more is answering and you can get a lot
- 28:10of information, right? If you see that within a typical
- 28:13sample of the population in your training data, immoral very
- 28:16often says Depends on the model. But safety is and not
- 28:19circumcised know and then you put it life and it embeds.
- 28:21Okay. Maybe your data.
- 28:22Would you turn on is not very similar to reality maybe if we
- 28:25change from one moment, we already sort of real red flag
- 28:28and much more interesting. Sometimes we have that very nice
- 28:30situation with a huge peak of the value.
- 28:31We go and check and we just not cumbersome currencies rights are
- 28:34things that are tools that tells you know where your modification
- 28:37is much in reality. Just working model is working,
- 28:39right? I think there was a, with the
- 28:41focus of the book. There is so much there, The
- 28:43Parson what you just said also. I just want to point out all the
- 28:46people listening And that Pablo is actually wearing a t-shirt
- 28:48that says rapid experimentation. So he really practice what he
- 28:53preaches. Now, one of the, you know, sort
- 28:58of points, I want to make here and one of the things in the
- 29:01second half of your answer, you know, I have questions around
- 29:04both apps but you know you really mentioned this idea of
- 29:07monitoring you guys have a strong idea.
- 29:10Your end goal and what you're actually trying to affect.
- 29:13And I think what stands out to me there is a because of your
- 29:16and this might happen. This right?
- 29:19But that because your company has such a product focused and
- 29:23user Centric culture. You have a really strong idea of
- 29:26the real world interactions. You're trying to affect and sort
- 29:30of what the ideal real-world impact.
- 29:34You want to achieve it, which is actually, I find very difficult
- 29:37for machine learning professionals, not all, machine
- 29:39learning, professionals are blessed with the strong product,
- 29:43you know, hat on their head or mindset.
- 29:46You know. I think I saw Go with it a
- 29:47little bit to really say, like, what are we trying to do for the
- 29:49user? And because you guys had that
- 29:52from the start, you were able to then say, in a technical
- 29:55platform and in our monitoring solution, we have to bake in
- 29:59that same strong sense of the real world and the ability to
- 30:01capture it. Does that does that kind of
- 30:03resonate? You know, it's not just output
- 30:05versus prediction. It's really about that real
- 30:07world, sort of Analysis company culture.
- 30:11I saw the company is not only about the mail but across all of
- 30:14the roles is always focusing on what you want to.
- 30:17To achieve. But at the end, maybe something
- 30:19that we just kind of completing the the question before we have
- 30:23experimentation and we have monitoring the one part of that
- 30:25misses everything there is that one just of experiment, you
- 30:28still lose the connection with the business value, right?
- 30:30So you make the statement, you made the POTUS is all connected
- 30:32to a business value, 10 to monitoring is quite hard to keep
- 30:35the relation of where I'm affecting business value.
- 30:37And the one thing that we have time, we've been exploring more
- 30:40mostly lately, you set of like online learning which kind of
- 30:43tries to keep that logo. And I think it kind of Misses
- 30:45two days. You have the imitation to prove
- 30:47your hypothesis but it's kind of time-limited the moment in which
- 30:50you might use this test, then you have always monitoring tool.
- 30:53That tells you is anything going on.
- 30:54That looks weird with my myself. Travis, anything breaking is
- 30:57anything moving in a way that I didn't foresee and online
- 31:00learning tries to kind of bridge these two things, right?
- 31:02Size to continuously, assess if your model is fulfilling its
- 31:06angle angle, right? Which is not there.
- 31:08Some kind of business or user Behavior code.
- 31:10Got it got it. We just one more question.
- 31:13I'm sorry Demetrios. I'm really, it's all good.
- 31:15All the time I like No I'm enjoying.
- 31:19You know I think one thing that you said I loved which is that
- 31:22you allow your, your team teammates to Define experiments
- 31:26as code. Did I hear that correctly?
- 31:28That you can easily that you guys are basically create an SDK
- 31:31that allows people to run experiments in their code pretty
- 31:33seamlessly? And that's kind of common in
- 31:36biggest e-commerce, right? Do you have some companies use
- 31:38except and then do some comments are internally.
- 31:40But I would say that's big Commerce, have it and big
- 31:43companies have it and I think it's a very weak and I work for
- 31:45a company to have Very simple ways to do.
- 31:48Hypothesis testing, that's what makes you later even right right
- 31:51right. Yeah I think I you know I heard
- 31:54the Airbnb has a great experimentation platform.
- 31:57I think, you know, there's actually a book that our good
- 32:00friend Louise you but you know is talking about when it came to
- 32:02running experiments and how you know Microsoft and you know how
- 32:07Airbnb and others enable it. My question is could you talk us
- 32:10through the workflow for that a little bit?
- 32:12Because, you know, somebody working at a smaller company?
- 32:15One thing we always OS. As in, we try to do, try to
- 32:19learn from best company in a big companies and replicate what
- 32:24they're doing. But without necessarily knowing
- 32:26exactly what their exact workflow looks like how
- 32:28intensive it is and what parts of the workflow you want to, you
- 32:31know, borrow from. So I'd love to understand like
- 32:34if I'm a dataset, well, how do I drive you and your listeners.
- 32:38There is a very recent paper, I can try to look for the
- 32:41reference, but it's actually from the head of experimentation
- 32:44of many of these companies where is the guy who was working?
- 32:46When I was premeditation in Booking, I think that is, I
- 32:48don't know Chronicle, how he was in there.
- 32:50He was in my 40s in Airbnb. There is one guy from Microsoft,
- 32:52for sure. So it is like six of these
- 32:55persons who are all leaders on experimentation on their
- 32:57company. So they do the paper is a key on
- 32:59how to create on the relevant. Experimentation cultural
- 33:01infrastructure? We should accompany.
- 33:03Sup super nice paper. If you are in a company of those
- 33:05not have this culture and this infrastructure to understand
- 33:08what are the different elements. And what they are going there
- 33:10with is, is a read of a play between developing
- 33:13infrastructure and developing culture.
- 33:14We have to do is two things together to make.
- 33:16The infrastructure is invested on and is producing valuable
- 33:21that is connected to our investment and its values.
- 33:24The servitor their argument in there because of booking.
- 33:27As you mentioned the infrastructure, of course it
- 33:29happened because people investment, but he's in their
- 33:31world, by have quite a, quite a solid one.
- 33:34If you see with how the flows goes in practice, what I would
- 33:38highlight is the flows hypothesis test is.
- 33:40So the flow is basically the scientific method in practice.
- 33:43You write down on a prophecies that you start with a theory.
- 33:46Ring that we very becomes a test our hypothesis.
- 33:49So, your theory is that users will engagement on the platform
- 33:51and they will help them with a decision.
- 33:53Then you make a testable hypothesis.
- 33:54I will help them with a decision by ranking properties, with
- 33:58their value proposition. And then I actually Implement
- 34:02that into code modeling, Etc. Once you have it in there, you
- 34:06have to basically run experimental design.
- 34:08Now, enjoy area in an e-commerce, experimental designs
- 34:11of randomized, control trial, and more or less easy to the
- 34:13top, we write users. And in the case of an SDK is
- 34:16very Because you literally putting one line experiments
- 34:19that here, this is code for version a this calls for
- 34:22version. Be the SDK will send the message
- 34:24to has been patient platform, experimentation platforms, take
- 34:26care of the login and then it processes able to generate any.
- 34:30Statistically valid aesthetically values report,
- 34:34there is a lot of assumptions that go into having a valid sou,
- 34:38second result. And there goes our view into the
- 34:39culture part and we don't the guardrails and infrastructure
- 34:42sets to make sure that the result you're going to see is
- 34:45valid and the general. Sighs, I'm going the right way.
- 34:48We had to start all this in the company.
- 34:49We have this fermentation to putting some warnings trying to
- 34:52help people in their. Obviously, once you set up your
- 34:54sister experiment together, super nice monitoring interface,
- 34:59where you can see how your face is going to wait for the test
- 35:01results. You see all the statistical
- 35:02results? And the way that we see, this is
- 35:06the tool and I understand similar in different companies.
- 35:09The tool provides you information that you can use for
- 35:11decision-making. So, the end of the test, you
- 35:13know, if you validated your hypotheses, and then you can
- 35:15decide where you go forward, They're do a stop or well
- 35:17educated 8 normally, this kind of test also gives you a lot of
- 35:21additional data. Not only the main hypotheses, I
- 35:23don't know user. When Twitter California law
- 35:25reviews, when higher, whatever is your main metric?
- 35:28You can also understand how this happens.
- 35:30And through understanding, you can either write in your idea,
- 35:32may be a real workout but you realize that you reduce errors
- 35:35or frustration went down because you see a CS contacts went down.
- 35:39Then allows you to iterate over the inward provide thought but
- 35:41maybe I can exploit this other better I found in here, right?
- 35:46It's a Sorry depression or absolutely.
- 35:48Yeah. I mean I think what I'm learning
- 35:49and what I'm going on thinking now is you know this
- 35:52experimentation platforms are an inspiration, you know, to other,
- 35:55you know I'm a lapsed platforms and how, you know, how those
- 35:59have developed very similar in some respects, you know, to the
- 36:02workflows you want to enable the I'm wondering about the when it
- 36:06comes to this experimentation platform.
- 36:09And it seems like. So I have kind of have two
- 36:12questions here for you. One is the experimentation
- 36:15platform. Is there a All platform team
- 36:17that has to keep that intact and and was that a large undertaking
- 36:23to create that. And then the other question that
- 36:26I have is when it's not something like putting a new
- 36:29model into play and it's more something like we need a new
- 36:34tool and that is the experiment that we want to experiment on.
- 36:38How does that work? Because I imagine it doesn't go
- 36:41through the experimentation platform.
- 36:43Well, you could be surprised but that very often doesn't but
- 36:46sometimes we try Why not the you ask yourself questions in there?
- 36:49I mean the first one I think is very generic about any companies
- 36:52with engineering, right? So you have to make investment
- 36:56to make your infrastructure better.
- 36:58If you have a use case, that is generic, then it's easier to
- 37:00make the investment because many people can profit from it.
- 37:04And in the case of experimentation, I think that's
- 37:06usually the case. As long as your company is a
- 37:08scaling of experimentation, is such a powerful tool for
- 37:10everyone that investment is not registry 5.
- 37:13If you see it currently looking for most of the team that is
- 37:16almost Free to make an experiment because the course is
- 37:19divided across the whole organization and that is thing
- 37:22you could say about machine learning certain rights to also
- 37:24have much in their name infrastructure team, that
- 37:27provides serving and monitoring and feature management Etc is
- 37:30the same idea. The investment is too high for a
- 37:32single model but once you manage to serve the needs of the whole
- 37:35company, it actually becomes physical investment for another
- 37:39company. That is, of course a lot of
- 37:41providers also, right? They made a big investment and
- 37:43you're just used to because very little more for the service but
- 37:45you don't have to evaluate. Your own capability.
- 37:47Hold for ML. Serving formal moratorium called
- 37:50for experimentation to your second question, I think was
- 37:55about to hypothesis testing on the Italian scooter in the
- 37:57company. So it's not always things aren't
- 38:00as they throw an experiment, not always tell us who are
- 38:02randomized control trial, but we do try to hold us accountable to
- 38:06some kind of hypothesis testing process.
- 38:07Sometimes you really cannot write.
- 38:09Your people just want to us as you can because of tooling.
- 38:12You basically do the prophecies and you acknowledge that.
- 38:14In some cases you will not be able to measure it, you know.
- 38:16Cases, you follow. Normally, I go there and work on
- 38:18a project management techniques like miles and okay.
- 38:20Jobs, Etc. At least Trace where you're
- 38:23achieving your goals? But I would say in some cases
- 38:25you really cannot measure the impact if possible, you will do
- 38:28it. For instance, infrastructure
- 38:29will very often. If we still have the first group
- 38:32of life, we just asked them both and you can an experiment that
- 38:35was in the back end. So if you have them all running
- 38:37on our main engine and you have more running independently.
- 38:40What we serve all of them and you make a performance
- 38:42experiment where you can assess stuff like loading time of the
- 38:44page cause for company. World clock time actual server.
- 38:48Time, Etc. You see can experiment on those,
- 38:50if possible, of course, we're not the menu, you have to make a
- 38:53bit of a leap of faith. In those cases, last thing that
- 38:56I wanted to ask before we jump into deployment and serving is
- 39:01around what metrics you're looking at you touched on it a
- 39:06little bit. But I know this is a question
- 39:07that comes up a lot in the in the labs community and its
- 39:11really asking about what metric should I be monitoring.
- 39:16And how you can relate those back to the business value?
- 39:22Yeah that is the different layers in there.
- 39:27So on one hand we have our business or business goals for
- 39:30our business unit goal, which could be monetary, could be
- 39:34conversion, could be used to satisfaction, could be
- 39:36operational dry like workload for our CSS, agents, and revenue
- 39:40for our partners, Etc. So you have this kind of metrics
- 39:43possibly injuring. All right, so ideally you want
- 39:44to do something. You are either measuring that.
- 39:46At or you are measuring proxies for that or things that, you
- 39:48know, that are going to alert you when that is is going to
- 39:52write right? Whenever possible, we do that.
- 39:54That's normally only possible experimentation setups for most
- 39:56of the of cases, this very clear connection because the the path
- 40:00between the ml model and this business value is quite Glory.
- 40:04What you can do is you put in an experiment and experiment.
- 40:06If you have a gold from the mines control trial, if you have
- 40:08a another hypothesis testing setup, it kind of assumes that
- 40:12whatever the past we are going to see the an effect on this
- 40:14metric, right? That's that's a one day.
- 40:17What y'all was not possible yourself looking for proxy.
- 40:19So if my hypothesis was that I was going to affect this user
- 40:21Behavior by being able to run better, okay?
- 40:23Can at least try some ranking better if I know that's going
- 40:25down then I know that I have a problem.
- 40:28The helmet is a dimension now for instance is responding
- 40:30solution shark or the reef is also a way of a proxy to put the
- 40:34red flag. So I know that I tested is an
- 40:36experiment in a certain situation.
- 40:37Can I use brief measurement and monitoring to know what?
- 40:41When my current model is different from that one that I
- 40:44tested the time with the business metric.
- 40:45So if you think, If you're too much, maybe it's time to go and
- 40:48check it again, because I cannot guarantee that they were in the
- 40:51same situation as when I made my initial test and then just run
- 40:55into a problem and there are things that are very obvious
- 40:57proxies. For instance, the delay between
- 40:59request and response, you know, if you are doing something that
- 41:01is serving front end, that will have an impact.
- 41:03But again, you might have data allow you to connect it better.
- 41:06So we have make experiments in which we impose delay.
- 41:09The responses understand window, having an impact and that can
- 41:12tell you what to look for in the left.
- 41:14So, we know the delay of, I don't know where officer, Just
- 41:16leave an example. Is that coming up with a number
- 41:18but you can experiment. Realizable press.
- 41:20This feature quarter of a second, have an issue, half a
- 41:22second is an issue, then I know what kind of stressful and
- 41:25unless I have to put on my, on my back and to monitor it,
- 41:28right? Yeah, I think I'm a very happy
- 41:33camper right now, because I think we have walked through
- 41:36monitoring. We've talked about evaluation,
- 41:38we've talked about the problem design.
- 41:41We talked about, you know, offline model performance and
- 41:45and how that That is just a health check as the paper said.
- 41:49So we've gotten through a lot of the lessons in the paper and
- 41:51there's one that stands out and that's a deployment and
- 41:56deployment. Yep.
- 41:57Yep. Deployment time is money and I
- 41:58think everybody listening would absolutely agree that they feel
- 42:02that way about model deployment. One of the this is It's a topic
- 42:08that comes up a lot in the community.
- 42:10How do you deploy models? How do you do it repeatably?
- 42:12How do you do it? Reliably, you know, that
- 42:15process. It's also It's really, you know,
- 42:18perhaps the most nebulous component of putting a model
- 42:24into production because you know what does deployment really
- 42:27mean? Well, it's putting it in front
- 42:28of users and, you know, everybody's users a little bit
- 42:31different. And so, you know, my question to
- 42:34you in terms of You know, just discussing this deployment
- 42:38topic. How would you summarize the
- 42:42lessons? Learn about model deployment at
- 42:45booking.com. You know, I know it's a big
- 42:47question but maybe we can just start with a few that come to
- 42:49mind and it, again, if you don't have time, we have a Blog where
- 42:54we publish more muscle power, ML and IA content is a booking .e,
- 42:59artificial intelligence building.
- 43:00That you will find a publication from Lucas Bernardi where he
- 43:04explains how we do our Ma Engine rml deployment infrastructure.
- 43:10The concept in general is is evidence for I mentioned before,
- 43:12radio start making mode within your team.
- 43:14You hack something together with are available for one specific
- 43:17use case. But once you realize that you
- 43:18can make a better system and you scale to more themes that allows
- 43:22you to invest more on it and that's what happened in Booking,
- 43:24over the last year's we started doing this kind of localized
- 43:26deployment and realized, there were a lot of common use cases,
- 43:29could be served by a common infrastructure, which means that
- 43:32you can more efficiently, build it more efficient to monitor it
- 43:34and then develop it further. Because now, your business, Case
- 43:37grows from one specific module specific team to serve in much
- 43:41broader and it and we've been working on the other way.
- 43:43For several years, I will have a platform that we use for
- 43:46deploying, a big part of our of our models.
- 43:49The, this one scene that the Lucas mentioned in the, in the
- 43:52publication, which I really like how he faces in there, which is
- 43:55that we translated one of our company's core values, which is
- 43:59respect for diversity. We translated also endure, any
- 44:02plasma. So what we try to do in there is
- 44:04that we try to provide users tools, Allows them to be diverse
- 44:08on how we approach, mental problems and some companies
- 44:10could maybe focus in one specific synthetic.
- 44:12I want to use tensorflow. My holy prom is going to be
- 44:15focused on tensorflow or in something different, right?
- 44:17We try to basically predict eyes our development by how many use
- 44:21cases can we serve especially how many different use cases and
- 44:24you can have very concrete outcomes actions from it?
- 44:29For instance, one of the 15 that we produce can eyes was look up
- 44:31tables. It's a very, very simple way to
- 44:34put something in production. You literally pre-compute every
- 44:36Well, combination from your model and put it into a standard
- 44:39table, where people can query. This is not the most sexy thing
- 44:42is not super smart, but it's super gentle.
- 44:44You can have anymore you like, you can use any programming
- 44:46language. You just tell me what I have to
- 44:47say in every location. I put it on a table and you look
- 44:50it up, right? So as a very concrete action
- 44:51that comes from this idea of, I want to support diversity with
- 44:55my ml Community. Now, you said, what you see
- 44:57Prince and linear models. I mean, the normal sounds very
- 44:59simple, but you can support a very broad range of things.
- 45:02An amazing animals you can do one layer neural network, linear
- 45:05regression and logistic, Crashing a naive based model
- 45:09there is as broad set of things. You can do you like having a
- 45:12linear engine. So you make the block and then
- 45:14your cell phone, if you put tensorflow, can do you have all
- 45:16of the setups of the tensor flow allows?
- 45:18If you could H20 case to has a lot of differences that you can
- 45:21support in there, right? That's like synthesizer with the
- 45:23philosophy that has been followed in there, try to set up
- 45:27as many use cases. And of course, that also
- 45:28resonate with, with business, because the most use cases, you
- 45:31can support more return, you will get in your investment that
- 45:34for you can make a better investment.
- 45:37It is a brilliant approach. I love that story about look up
- 45:40tables. And, you know, I think it's,
- 45:42it's instructive because I think a lot of companies I know I have
- 45:46this mindset sometimes nowadays. It's, you know, what's in Vogue,
- 45:50you know, what is popular in terms of the deployment
- 45:53solution. Let me adopt those sort of
- 45:56strict Frameworks rather than thinking again from the
- 45:59perspective of what's the real problem.
- 46:01You know, I think we're actually going to remodel development
- 46:04challenge right now and it's like, you know, the Trinidad is
- 46:07like, how specifically do you engineer it and use all the
- 46:10tools that are available versus how generally do you want it to
- 46:13work? You know what?
- 46:13It takes, patience. If you want to go General,
- 46:15because you need to take a long-term view towards all the
- 46:18other use cases, you want to support, you know, it's harder
- 46:20to see that immediate return on investments think that's the
- 46:23challenge that I've been having. And you know, in the paper you
- 46:28mentioned a really interesting, sort of learning about how
- 46:32latency became a challenge one. Thing that we love in the
- 46:39community and loved hearing on podcast.
- 46:40So War Stories and just stories about how you got to a
- 46:43particular point of learning or Insight, I'd love to know.
- 46:46Can you tell us the story of a model where you realize that
- 46:49latency was becoming a challenge when it came to business
- 46:52performance? I don't think I mean I cannot
- 46:57recall a specific one right now but I can tell you're worried
- 46:59because it's happened many many times, so I cannot put you a
- 47:02specific example but what I can tell you is how we realize that
- 47:05it was a challenge and it goes back to us.
- 47:07And those who have been talking, right?
- 47:09We've already thrown experimentation platform and
- 47:11that allows to make very fancy experiments.
- 47:13So in one set of the we normally use but we wish that we had over
- 47:17based Behavior. We have a certain moral serving
- 47:19a certain function and we have competing model.
- 47:22And what we can do is we can try to isolate different So we can
- 47:25for infinite slow down the corn oil until they all answers.
- 47:29So you keep the same moral, but you usually like of the second
- 47:32one, or you can put the same delay on both chuckle, both
- 47:34models and none of the to can answer until both of them have
- 47:36answer. So if you put that says, do you
- 47:38see as when you wait for what models, you're only comparing
- 47:40their label the prediction, right?
- 47:43Because they both have the same delay.
- 47:45Well, if you take the first model and relay it to the other
- 47:47one, you're only testing the effect of the relay.
- 47:49So it's kind of experiment allows on very many occasions to
- 47:52isolate the impact of the Improvement of the production
- 47:55quality or whatever the mall is trying to shift from the
- 47:57performance. And you know, I cannot give you
- 47:59a brief example. We really saw it many times that
- 48:02you could have fun improve performance on the pole output
- 48:05and improve user experience. Once you put up both of them at
- 48:08the same performance level, which is normally no lower.
- 48:12Well, if you take the moral, there was a performance in terms
- 48:15of linear regression is not only after performing quite fast, you
- 48:18might still get a better result with the user.
- 48:20Even though the outcome is not that good.
- 48:22I mean, you can imagine the this kind of storage media.
- 48:24You go In our simple linear regression and you're moving to
- 48:27something that is a very fancy never and I were set up, it will
- 48:29be slow but you probably will go to are gonna get a much better
- 48:32outcome. It doesn't mean that you don't
- 48:34do it, but isolating the different components allows you
- 48:37to make the investment. So so, oh my video.
- 48:39Can try to look for a better way to make the neuronal.
- 48:40Can I deploy it in a faster? Way?
- 48:42Can use better hard work because now I can isolate the effect.
- 48:45Can I pre compute it? That was a bit of the idea also,
- 48:48with, with a look-up tables. Maybe I say, okay, this model is
- 48:51super slow, but actually, there are not so many features is
- 48:54million combinations. It's putting a Cassandra table
- 48:56and you can get it out of there, right?
- 48:58So at the risk of this one needing to be cut out of the
- 49:04episode. I got to ask any of this stuff
- 49:07that you've been building at booking.
- 49:09Is there any thought of open sourcing it?
- 49:12Yeah, so we can have that on open source program.
- 49:15Let's say, we have to set a set of components in the listing in
- 49:19the MLS side. We have an open source at the
- 49:20motion, the developers age especially where one of the
- 49:23biggest Parts shops in the world right now.
- 49:25And we are pretty maintainer of the, of the VIP packages per
- 49:27women. They know, some of the versions
- 49:29of her, in the case of a male. We also have some component that
- 49:31we have tried to open source. I think we have done in a couple
- 49:35of cases, but in many companies that you have to make sure that
- 49:38I think the main policy behind it, it won't go into open
- 49:40source, something in the name of booking have to make sure to
- 49:41maintain, we just we don't want to go broke and cold outside,
- 49:44but it's going to fail. We know the mundane.
- 49:46And I think that the main limitation we have to make sure
- 49:48that we are open sourcing, something that you are willing
- 49:51and able to maintain enough. There is a belief that were
- 49:54willing to put out When I'm behind ya otherwise you shoot
- 49:56yourself in the foot and you it doesn't give a good look.
- 50:01So playing on that question. I guess.
- 50:06The next question I have is, do you feel like there is when it
- 50:13comes to the platform that you're using at booking?
- 50:16Is there enough of what you're doing with the ml side and the
- 50:21platform? And maybe this experimentation
- 50:23platform or just the sir Platform.
- 50:25If these things were to be open sourced, do you feel like right
- 50:30now in the machine learning world?
- 50:32There's enough standards around for it to be used by others, or
- 50:36would it be a heavy lift? Like I keep coming back to this
- 50:41because a lot of people have been talking about whether or
- 50:46not there are enough standards or whether or not tools can plug
- 50:51and play with each other. Well enough.
- 50:53Right now because Because the the ecosystem is so young and it
- 51:00needs more. Maturing, do you feel like there
- 51:04is enough of these standards or do you think that it would need
- 51:09to be more like, like, would people be able to get value out
- 51:13of it? If that makes any sense?
- 51:15What I'm saying? Specifically on the platform
- 51:23side but what I can see is that there is some companies out
- 51:25there who are open sourcing things and comments were selling
- 51:28this kind of platforms. And in the case of organization,
- 51:30with our focus on diversity, we use many of these platforms
- 51:33already. So I, if I see this, I user J
- 51:35has were getting value from the community of both open sources
- 51:39and Commercial Ventures are delivering this.
- 51:42So, it seems that have some value, they do operate more or
- 51:45less independently many of them, right?
- 51:46If you're worried 2nd planning area, there are some
- 51:48connections. If you see things like, Pythor
- 51:51tensorflow. They have some common concept
- 51:53that you may be able to to translate, but many of these
- 51:55things are with isolate the receipt, right?
- 51:58That doesn't mean you cannot use them.
- 51:59They are all using the same kind of based on Evolution
- 52:01coordinated. You can deploy them in your
- 52:03Cloud, right? When you go look in the
- 52:04direction, it's easier than Byron is.
- 52:06So so you are able to use components from different areas.
- 52:09I haven't seen that many examples of the things
- 52:11interoperating so easily, but again, I'm not in the in the
- 52:14platform side. So, all right.
- 52:17So as far as the paper goes lessons, that you have learned
- 52:22since anything that you would add to the paper.
- 52:25Now that it's been some time since it was written, so that
- 52:29he, so I just ended up maybe two main things.
- 52:32One thing I already mention of it which is the focus.
- 52:35The light focus on online learning so many things that
- 52:38we're doing at the time were testing.
- 52:40Prepare Amanda's are kind of limited on time and then we had
- 52:42monitoring as much as we could. Right now we're moving every
- 52:44morning to online learning because it connects these two
- 52:46words. It allows Continuously monitor
- 52:48the business value and you can see the feathers, you have
- 52:51online their names, you have continuously training.
- 52:53You have all of the different dimensions of all.
- 52:55Try to look for a way to keep your model up-to-date with a
- 52:58business value. Supposed to generate only one
- 53:01dimension. The other one is maintainability
- 53:03sounds very nice to have 150 successes but it's not so nice
- 53:06to maintain hundred and fifty things in parallel.
- 53:08And one thing that we have been a working on is trying to
- 53:12structure together some of the solutions or some point.
- 53:15You look at this okay, this stem programs that actually won
- 53:17power. And we decided to solve 10
- 53:18times. Can we somehow instructor a
- 53:19common solution and actually using submitting of 10-day
- 53:23limit? And so, we're taking some of
- 53:25these problems and it's rooted in the in a way that we can
- 53:27package it into a single online learning solution and you see
- 53:30copying a bit more in the company gives you more mundane
- 53:32ability. Better monitoring more
- 53:35scalability again because you United to join different
- 53:39business cases and you get a stronger business case which
- 53:41allows you to put more investment behind it, right?
- 53:43I think that's doesn't mean less than it actually.
- 53:44Connects these two things, right?
- 53:45Try to get a structure in. These exploration phase, we have
- 53:48with 250 successes and try to make them more into proposals.
- 53:52That are more common that are more applicable in wider areas,
- 53:56while online learning allows you to keep them.
- 53:58Well performing, I love the way that you think about that and
- 54:02how you want to basically generalize them enough to gain
- 54:08more value, out of a model and reuse it and and see the success
- 54:13in other areas that you may not have thought they could be
- 54:16successful in in the Genin, as far as the maintainability goes,
- 54:19and this was something that I was going to ask at the last
- 54:23question when you were talking about how you want to make sure
- 54:28that there's that diversity, that is available within all of
- 54:31the different Frameworks that people are using or whatever
- 54:35they choose to use. You want to support it?
- 54:38Is that not a really heavy lift is, does that not make it much
- 54:43harder to maintain? Sure, that it's nice question.
- 54:47Also, So, the mention on the platform raised want to
- 54:49maintain, as many use cases, we want to make sure that the
- 54:51system is stable. So again, if you go to example
- 54:54of the of the lookup table is a Cassandra database, right?
- 54:57So, as I think the service example, because it allows you
- 54:59the matching their name, practitioner to use, whatever
- 55:01modeling approach, they like, well, the deployment solution is
- 55:05a Cassandra table sensing for the linear model.
- 55:07If whatever modeling approach we're doing ends up in a table
- 55:10of linear coefficient, then I make a java-based linear
- 55:13coefficient engine that only has a lot and I can't afford it,
- 55:16whatever they are. Engineers, right?
- 55:18And then we just go in deeper if you have something like Five
- 55:20Torture tensorflow. They have their own runtime
- 55:23engines, so you can do whatever you like, in tensorflow,
- 55:25sterilize it. And then we maintain tensorflow
- 55:28engine. We do also have, for instance,
- 55:31some stripper owners for python scenes like this over very
- 55:34carefully, applying them in production because those are the
- 55:36ones where you have the least got raised right by this, to try
- 55:40to have something you can somehow serialize.
- 55:42And then you have a separate droning engine that is
- 55:44maintained. So it actually ties into the
- 55:46same logic by Like to support as many use cases, while keeping
- 55:49the stability of the platform. Yeah, I think what I point out
- 55:53there that I hear is if your interfaces are simple, you can
- 55:59solve that problem of maintainability versus
- 56:01generalizability, right, like the Cassandra lookup table.
- 56:05It's a simple interface for any kind of any kind of model or
- 56:09modeling workflow can fit into and I don't know.
- 56:13That's just, that's just kind of the takeaway that I have for it
- 56:16and I just want to thank you Pablo so much for joining us on
- 56:20this awesome, awesome coffee session.
- 56:22I feel very happy. We got through all of the
- 56:25lessons and we got two more. That's eight lessons from
- 56:28booking.com on how to serve. 150, machine learning models.
- 56:31Thank you so much for joining us.
- 56:32Thanks for inviting have a nice day.
- 56:35Alright, that's it for now and we'll hear from you guys and
- 56:38we'll be talking more. I'm a lapse on the next copy
- 56:41session. Thanks for listening.