Latest / Agentic Conversations (formally mlops.community) / The Godfather Of MLOps // D. Sculley // MLOps Coffee Sessions #32
Transcript
- 0:16I've been excited for this one all week to tell you the truth.
- 0:21I was just telling D that we jumped on here and before the
- 0:28actual recording. Happened.
- 0:31I was talking to my wife and I was like, wow, I get to
- 0:34interview The Godfather of ml Ops himself today.
- 0:39This is like the biggest let me just put this into a little bit
- 0:44of perspective. But for most of us that are on
- 0:48this call even realize that we wanted to be doing things around
- 0:53machine learning or ml Ops D had already written the biggest
- 0:58papers in the space. Ace so that tells you a little
- 1:02bit about who we have on today D Scully.
- 1:06Thank you for joining us. I really appreciate you taking
- 1:08the time especially because you don't do this much.
- 1:13And so that just makes it 10 times more and honor for us to
- 1:17have the pleasure to of interviewing you.
- 1:20Well, that's that's very kind and little bit embarrassing but
- 1:23I'm really happy for the conversation.
- 1:26Well, I think we can start it off with one thing that Is top
- 1:31of mind for me and that is you've written these papers
- 1:35which are very instrumental in the ml Ops World.
- 1:38And for those who don't know the papers that I'm talking about
- 1:42and you probably have even if you don't know the name dese
- 1:46Kelly you've read his papers because these are the papers
- 1:49that everyone gets told to go read when you start learning
- 1:52about ml Ops. One of them is the high interest
- 1:58technical debt of machine learning.
- 2:00And then you have the other one which is the ml test score and
- 2:05both of these have aged really nicely being that it's already
- 2:102021 you wrote them in 2015 and 2017 and they're still the top
- 2:18papers that you need to go out and read.
- 2:20So my question to start out with is what's changed since you
- 2:26wrote those papers. Yeah, so first of all, thanks
- 2:30for the kind words that you know, if the papers are still
- 2:33relevant. That's that's really nice to
- 2:34hear or maybe maybe that's good news.
- 2:38Maybe it's bad news. I'm not sure.
- 2:42So yeah, I mean, obviously the world has changed a lot in the
- 2:46last four five six years in terms of machine learning the
- 2:50importance of machine learning across the world.
- 2:52The number of people who are doing machine learning the
- 2:54number of folks who are working on MLS.
- 2:58Send Em on infrastructure and things like that.
- 3:00Like it's it's night and day, you know, in terms of the the
- 3:05broader world compared to what we saw then I think some of the
- 3:10things that are different in a number one.
- 3:13There is an ml Ops Community. That's really good, you know in
- 3:18many ways the papers that we put out, you know at that time.
- 3:23We're sort of CO2 fighing as best.
- 3:25We could the experiences that we've had, you know working.
- 3:28As teams and groups within Google for many years about you
- 3:31know, sort of what we were finding were, you know the
- 3:36issues with machine learning systems that didn't appear in
- 3:38traditional applications and it was a little bit hard to get
- 3:43those noticed and attended to and really in the last, you know
- 3:47several years, you know, whether it's because these papers are
- 3:49because you know, folks have hit those problems themselves and
- 3:52and are solving them in good ways.
- 3:55I think there's much much more awareness now.
- 3:58That these are fundamental issues that you know, having
- 4:04system-level reliability is different than having model
- 4:10accuracy that you know model accuracy is important and good
- 4:14but the model accuracy by itself does not guarantee system-level
- 4:19reliability. And so looking at the unique
- 4:22role that that machine learning based systems have within
- 4:26larger. Well larger production
- 4:29pipelines. Yeah, that's something that
- 4:32really is now I think and it doesn't need doesn't require me
- 4:35to go around saying it a whole lot anymore like those folks
- 4:38know they're working on it. There are lots of folks who are
- 4:41now much more expert than I am and it's really neat to see
- 4:45Jesse question on that. You mentioned that it like now
- 4:49it seems like we like that's more obvious but actually feel
- 4:52that people are still need to hear.
- 4:54These old best practices things that Maybe we've been repeating
- 4:59over and over. Why do you think that I guess
- 5:02recently that's become more obvious.
- 5:04Is it in light of more tools or more communities growing around
- 5:09these sorts of problems, or is it just the research as well
- 5:11that has changed and shifted the direction of things.
- 5:15So I think first and foremost, they're just more people doing
- 5:17it. And so, you know, when you have
- 5:18the lived experience everyday becomes more a part of the
- 5:24conversation whether it's folks in industry or wherever else And
- 5:28I mean the fact that you know, there are jobs titled.
- 5:31Ml Ops like this is this is different than it was about six
- 5:35years ago. The fact that there are you know
- 5:38podcast about envelopes like yeah that's different than it
- 5:41was several years ago. So so, you know, these are
- 5:46obviously important issues. They're obviously not something
- 5:48where you're going to you know have the up Sapphire that will
- 5:52you know be the one little thing that you had to system and solve
- 5:54everything right. These are deep, you know
- 5:57complex. Choose the many ways, you know,
- 6:00you're never going to flat out solve.
- 6:02You're really going to manage different ways.
- 6:03And so that requires, you know judgment it requires making an
- 6:07important trade offs. And so you need a community
- 6:10around that one question I have is as as Demetrius set of the
- 6:17top these papers are still classic just reading the high
- 6:20interest credit card or paper this morning as a refresher and
- 6:24it felt like you were talking to my team for some of the issues.
- 6:28Is that you know, we still need to kind of think through in
- 6:30terms of specifically, I think in that mention that paper or
- 6:33the test score paper, you mentioned tight integration
- 6:35between engineers and researchers on a team level is
- 6:38really is really useful. I guess my kind of question to
- 6:41you Demetrius Crassus what's changed?
- 6:46Do you feel that machine learning systems are more easily
- 6:49capable of being system-level reliable a system-level now than
- 6:52before or still are we still in from your perspective?
- 6:55So grappling with some of the same sort of educational just
- 6:58that people need to understand how they design these systems is
- 7:02a to I'm tools Advanced we feel like yes, like we absolutely
- 7:06it's also Advanced, you know, I mean, you know back in the day,
- 7:12you know, every pipeline was a one-off adventure and some type
- 7:16lines were really well engineered, you know, or been
- 7:19around for you know, some number of years, but but there wasn't
- 7:25the level of General infrastructure that was looking
- 7:27to To offer these sort of, you know, large-scale Integrated
- 7:30Solutions that are maybe you know, I mean TurnKey is probably
- 7:34too strong a word in my opinion, but there are you know, many
- 7:37different platforms that are attempting this right now and
- 7:40with the think reasonable success in a lot of cases, you
- 7:44know, the idea that you could say go to the cloud and have a
- 7:46production pipeline up and running that at least, you know
- 7:51has reasonable ways of addressing many of the issues in
- 7:54the detected paper or on the on the test scores.
- 7:58I think the greatest house for sure.
- 8:00So I'm gonna throw David under the bus right now because And
- 8:08all I'll preface this with David has a huge fan of the ml test
- 8:13score and I know he's like an advocate at his company for
- 8:17using it but there have been some people that said they don't
- 8:24quite agree with it and W can give more color around it, but
- 8:29I'm wondering If you feel like what you were writing was for
- 8:35the general public or was it your experience and you just
- 8:41want to make sure that others knew that this is a thing and
- 8:47David maybe you can jump in and tell us where people were given
- 8:50you some slack on what the test score was and I think it was
- 8:56around automating stuff, right? Yeah.
- 8:58Yeah. Yeah, and it was it was Was well
- 9:01received by the way just to preface that too.
- 9:03But yeah, there's definitely some not concerns but some
- 9:07caution because you know, we work in a drug Discovery Space.
- 9:10So it's a little bit high stakes and when you're in that when
- 9:13you're in that situation automating everything isn't
- 9:15always the best. Sometimes it could actually be
- 9:17it can actually be problematic and so for when I was what I did
- 9:22was I decided to do a research project on one particular model,
- 9:26which I looked at as like a mini system and I went through the
- 9:28criteria and evaluated it used it.
- 9:30Come up with an actionable recommendations and a lot of
- 9:33them were focused towards let's say people that were in a
- 9:38production system where maybe they needed updates in
- 9:40real-time. Maybe they needed to have
- 9:43automated triggers or events that trigger a retraining job.
- 9:47So they were looking for you know an environment that is as
- 9:50automated as possible. And I think that's actually a
- 9:53good thing right because it reduces error in some cases.
- 9:56It can actually catch it again and windows manual intervention.
- 9:59Sometimes things get messy. But in a very, you know, I guess
- 10:03high stakes in you know domain sometimes you need those manual
- 10:07interventions to part like to actually curate the results.
- 10:10Does this make sense from a scientific point of view and in
- 10:14those situations, they found it a little bit more like more it's
- 10:16like overhead to try to implement some of these things
- 10:19and I think I've heard that elsewhere like trying to
- 10:20automate things and make everything continuous
- 10:23continuously integrated and continuously to put can actually
- 10:26add more overhead to your system and make things a little bit
- 10:29trickier, so you At need all that but that was just to enter
- 10:32you know, what Demetrius was talking about that you was just
- 10:35a little bit of push back on, you know, all the over
- 10:39automating things and and trying to make everything just like
- 10:43this in a fully automated system.
- 10:45Yeah. I think that those whole you
- 10:47know, really totally reasonable right?
- 10:48I mean if you're in a drug Discovery domain, you know or
- 10:53something like that, you know, it is unreasonable to have a
- 10:57model that's just going to go off and discover drugs without
- 10:59human intervention it right. Like that's not how the world
- 11:01works. And what's what's useful in that
- 11:06situation is that you'll have you know in the end the
- 11:10downstream validation is going to be looking at one particular
- 11:12drug and it's going to go through, you know, all kinds of
- 11:15validation, you know, whether it's the FDA or whatever else
- 11:18that's going to show whether that specific output.
- 11:21You know, one one prediction essentially is good or not.
- 11:25Right? The test score was really
- 11:27written for situations where you don't care about one prediction
- 11:29you care about Millions or billions of predictions per day.
- 11:33And in that case, you're probably not going to go full
- 11:35FDA on each one of those individual predictions.
- 11:38I think that makes a lot of sense and that was one thing.
- 11:41I actually really like though that we got from that is we
- 11:44realized we needed to improve our coverage over at basic
- 11:47things like the data Transformations the except what
- 11:50what do you have in a schema on the inputs that go into our
- 11:53model and that seems kind of obvious but when we went through
- 11:56that I realized we're actually missing a lot of these things
- 11:59and we could do better and that's That's what I really
- 12:01loved about it. Is it actually by evaluating it?
- 12:04I was actually able to see areas of improvement and come up with
- 12:08some action items what I can actually do to pay that debt
- 12:11down and improve the system to make it more robust, which what
- 12:14I think the goal of it is right to measure the production
- 12:18Readiness of the system, but I do agree makes if you have like
- 12:21a system that has like millions of outputs in that there's all
- 12:23these things going on. It's so much more important to
- 12:25do things in an automated fashion, right because manually
- 12:28keeping track of all those things just Get super messy now
- 12:32that that's great to hear that. You know it just using the
- 12:34checklist, you know, like in the end.
- 12:36It's not so much about you know, if you don't score 17 out of 20
- 12:40or whatever it is then the ml police are going to come and
- 12:42take you somewhere. It's really about the process of
- 12:44asking the questions making sure that each of the important
- 12:47questions that you're asking yourself that you have a good
- 12:49answer to and the good answer might be.
- 12:51Oh, you know, we need to fix something or the good answer
- 12:53might be actually we've done a great job here.
- 12:55The good answer might be we thought about this careful and
- 12:57it's not needed here all very small, but I think it's
- 13:00important to us. Each of those questions and I'm
- 13:03wondering since we are talking about the ml a test score a
- 13:06little bit. Now.
- 13:09Is there anything that you would add on to it that you feel like?
- 13:12Okay, we've we've seen Parts significantly evolved in the
- 13:18ecosystem. What else need is needed or do
- 13:21you feel like it's still good? Let's see.
- 13:25So I don't think there's anything that I would take away
- 13:28from from the test. But yeah, the world has
- 13:34certainly evolved. Yeah, there's some some
- 13:37interesting pieces there one is if I remember right and I could
- 13:44be wrong but I believe this is true that the an old test score
- 13:47paper was one of the first papers that made a key point of
- 13:52looking for inclusion. You know what we might think of
- 13:55as fairness issues or bias issues and that you know models.
- 14:00Should be explicitly tested for things of that sort.
- 14:04And that was you know, like two paragraphs and an eight-page
- 14:07paper. I think that it's fair to say
- 14:09there's an awful lot more that you could say about that now and
- 14:13many people have and they're they're much better, you know
- 14:16sources for that kind of work than this paper, but certainly
- 14:20expanding on issues of bias and representation, especially for
- 14:26models that interact with data that deal with you.
- 14:30There is are humans are people is super super important.
- 14:36It's the other stuff. If I remember right and you
- 14:42know, like you'll forgive me but like the I had to go back and
- 14:47remember what was in these papers myself there.
- 14:49So if I remember right we talked about stratified testing in that
- 14:54paper where or sliced analysis where it's really useful to make
- 15:03sure that you're not just looking at one Aggregates a
- 15:06accuracy metric or goodness metric 98% Oh good.
- 15:11But breaking that down into subcategories of the data and
- 15:16what those subcategories are is going to depend problem to
- 15:18problem. Maybe it's looking at
- 15:19performance per country or you know background color or
- 15:23whatever. It might be.
- 15:27I still believe that that's a really important thing.
- 15:29It can help you identify areas where maybe your model isn't
- 15:33going to be performing as well. But we've also found that there
- 15:38are other forms of domain shift that are useful to think about
- 15:43this is what I mean by domain shift is you know, what happens
- 15:45when the data that your model is deployed on out in the world is
- 15:50different in some way than the model that was is trained on.
- 15:54You know, this is the sort of gotcha.
- 15:57Scenario that machine learning papers tend to sort of look past
- 16:00a little let's assume that they're all IID and you know as
- 16:03we all know in practice this sort of problem.
- 16:05It happens every single day and every single model we've ever
- 16:07heard of so putting together useful tests for these domains
- 16:14shift problems. I think is really really
- 16:17important and so two additional kinds of tests that I can think
- 16:20of one is, you know, explicitly looking at shifted data where
- 16:28You're finding some source of data that is a little bit
- 16:34different than the data that was trained on.
- 16:36You know, I'm okay data was trained on you know a stream
- 16:38from North America. All right, let's let's try it on
- 16:40data from South America or images came all from iPhones.
- 16:45Okay, let's make sure that it we tested on Androids or in these
- 16:51images, you know, all of the key, you know, objects of
- 16:55Interest are nicely centered. You know, what If they're
- 16:57slightly rotated, whatever it might be not again problems are
- 17:00problems Pacific but assessing data on that especially models
- 17:05on that Shifty data, I think is gives a much better sense of
- 17:09robustness. That's super important for
- 17:12deployed models. The second form of shift is what
- 17:18we have called contrastive what might better be thought of as
- 17:21like counterfactual testing. So this is done by men.
- 17:26Keep you waiting little bits of individual samples to seeing how
- 17:32performance changes. So this is done a lot in the in
- 17:34all fairness literature. So things like you know what
- 17:37happens if you have a sentence where the doctor did his thing
- 17:42and switch it to her thing, you know, so it's a small
- 17:45counterfactual intervention with the words in that example.
- 17:50Hopefully, the model doesn't go crazy.
- 17:52And if it does it'd be really good to know and you seen some
- 17:57Things with there's a neat papers where you know folks will
- 18:00do like Photoshop copy and paste it images onto different
- 18:03backgrounds or things like that. So anything that we can do to
- 18:07intervene on our data to create specific counterfactual examples
- 18:13these allowance for like a nice example by example way of
- 18:17analyzing where the edge cases for our models might be lets see
- 18:23other stuff. I would add and I guess Dave is
- 18:26going to tell me that the more stuff I add the more stuff you
- 18:28can get Flack for so sorry about that.
- 18:31I think well one last thing maybe two last things so I think
- 18:38that it's it's often the case that we we don't push our models
- 18:43to the limits of their capabilities when we're
- 18:45verifying them and and finding, you know, like what are the edge
- 18:50cases? What are the real boundaries,
- 18:51you know, if a model gives good performance when predicting on
- 18:54an image, that's 32 by 32 In terms of resolution what happens
- 18:58if the resolution gets halved but happens if it gets cut to a
- 19:01quarter what happens if it's just one pixel, you know for an
- 19:07audio model what happens, you know, as we degrade the sound
- 19:10more and more or lower the volume or whatever.
- 19:12It might be, you know, really understanding what are the
- 19:15boundaries of our models and you know where the performance
- 19:19limits I guess the other major category to think about is You
- 19:27know something that's happened between 2015 or you know, as we
- 19:31call it now the Dark Ages and now is there's a lot more
- 19:36deployment platforms. Then there were then and this is
- 19:42true, you know, whether you're training in the cloud and
- 19:46deploying on mobile devices or whether you know, like things
- 19:48are getting shipped off to little stuff in the web or
- 19:52whether you're training on CPUs and serving on fancy special.
- 19:57Hardware whatever it might be and each of those paths is a
- 20:03unique path that needs to be tested.
- 20:05And so, you know as we get more and more options there that you
- 20:08know, there comes a combinatorial explosion that
- 20:11really does need need full integration testing.
- 20:13I think that that you post Harvest regret you go first.
- 20:17Yeah that piece of being across platforms across the plumbing
- 20:20platforms, you know machine learning in the browser is
- 20:25something that appears to be something that's popular.
- 20:27ER now on device that's certainly a use case that I
- 20:30actually work on in the cloud. You know one question.
- 20:33I kind of have jumping off that point in particular is As an
- 20:39engineering lead that's very familiar with building machine
- 20:41learning systems for reliability.
- 20:43How do you try and triage the technical debt that could occur
- 20:46from all these sort of like cross-platform interactions?
- 20:49What advice would you give to other people?
- 20:50That might be in your shoes thinking about that kind of
- 20:52cross-platform work? Yeah.
- 20:55Let's just say there's a wonderful phrase.
- 20:57I didn't come up with this phrase.
- 20:58But it's Google internal around. When when should you test and
- 21:02you the phrase was something like test until fear turns to
- 21:06boredom and That's a good one in general.
- 21:11We probably need to be testing more than we'd like to you know,
- 21:15in terms of triage like yes absolutely start with the you
- 21:17know, the quote unquote most important ones.
- 21:21But you know, I think one thing that the last several years has
- 21:24shown is that reliability is really really important.
- 21:28There are no small mistakes and if there are errors they're
- 21:35going to get spotted and they're going to get publicized.
- 21:38And and they're going to you know, impact users lives.
- 21:42So, you know, I think that the bar is really really high and
- 21:45that you know, it's worth spending the effort to to ensure
- 21:49really strong reliability. I think that I think that makes
- 21:52a ton of sense. I think the key and doing any of
- 21:55this triage or thinking about reliability understanding the
- 21:59risks of what what it is you're trying to do and I think early
- 22:03on your your papers about, you know, the test score and the
- 22:07high interest credit card. We're really about pointing out.
- 22:09Okay, these are the risks when you try to put machine learning
- 22:12into production in it in a way that doesn't pay attention to
- 22:15all the details and I think you're right in particular that
- 22:19there's a risk now that your models failures are publicly
- 22:22spotlighted a lot more or that they have more impact on a
- 22:25larger scale because more people are interacting with machine
- 22:27Learning Systems David. What do you think?
- 22:31Yeah. I just I read your most recent
- 22:34paper and under specification and I see that you have at you.
- 22:37It's like you extended some Concepts in the ml test score
- 22:41and I just wanted to talk about the stress test a little bit
- 22:44more of which I thought was really cool because I did that
- 22:47first time. I think I saw something along
- 22:49those lines as there was this paper on NLP and they were
- 22:51showing like counterfactuals and like the impact that that could
- 22:54happen a model and I thought that was really good because I
- 22:57haven't seen many tests that go that deep into what's actually
- 23:00going on or what the model was learning or what the outputs of
- 23:03the model are. How do you how did you go about,
- 23:06you know coming up with stressed?
- 23:08Because I find that that can be a bit difficult.
- 23:10Like right like you said if I need to consider all these risks
- 23:13there's they can be so many especially when your models to
- 23:16put out in production, right you there's so many is even the risk
- 23:19of people messing with your model right getting it to like
- 23:21learn something and I shouldn't learn so there's like all these
- 23:24issues. Like, how do you how do you how
- 23:27do you get how do you build that into your stress test without
- 23:29you know coming up with every combination?
- 23:31That's possible. Yeah.
- 23:36Let's see so that paper. The under specification paper,
- 23:40you know, I think it had 37 39 authors something like that.
- 23:44Right? There was it was a lot of others
- 23:47that there was some mean that got put out like seven seven
- 23:50thousand authors, you know, but one of these weather were so
- 23:54many authors on that paper is because you know, the approach
- 23:58that we took in that paper was to ask domain experts, you know,
- 24:01we looked at, you know, whatever it was six or seven different
- 24:04domain areas to sort of see if we saw the same phenomenon
- 24:07occurring Each of those two main areas, but in each one, we
- 24:10needed the domain experts to guide us in terms of like what
- 24:14are the most Salient stress tests?
- 24:16You know, what's what are the sort of you know, what you might
- 24:20think of as a sort of causal structures that you'd want to
- 24:23see preserved. So I don't think that we have a
- 24:27full answer, you know, like, you know, as good of an expert is
- 24:30really, you know, I think it's true, but it's a little bit
- 24:33flip. I would like there to be a more
- 24:40automated system. Sorry Zoom keeps close my
- 24:45screen. Okay, I'd like there to be a
- 24:47more automated system for coming up with stress tests.
- 24:54I believe that this is going to look like a useful way to encode
- 25:00expert knowledge about domain areas and there are probably
- 25:04some you know. Some people probably have really
- 25:08good ideas about, you know, the right way to take like a
- 25:10knowledge graph or something like that and turn that into
- 25:12into stress tests. I haven't done that yet.
- 25:16But I think that that's probably the right direction to be
- 25:18pushing. But yeah, you know like in the
- 25:22end each of these issues as a problem specific issue and so,
- 25:26you know, like it's difficult to sort of sit back and say, you
- 25:29know always test for this kind of counterfactual that kind of
- 25:31counterfactual but I do think you should least always ask the
- 25:33question of like, what are the the right counterfactual
- 25:36thinking about Yeah, I was just going to say even if there is
- 25:40always some element of domain expertise that's required to
- 25:43really evaluate this. There's still some general
- 25:45things that apply like I looked at I was reading this book and
- 25:48resilience engineering or KS engineering.
- 25:51I've seen someone and I think they're really cool because this
- 25:53is the idea of how do I bring robustness or how do I make my
- 25:55system robust is something that's not just specific to
- 25:58software like a lot of systems are trying to built in build in
- 26:01robustness. And I think in machine learning
- 26:03it's not you know, it's a girl so trying to figure out how do
- 26:06we do that? Yeah, I still think it's a very
- 26:09hard problem. Even when I'm just trying I was
- 26:11trying to write tests for like a model.
- 26:12I was just saying what do I do? Like it's like I always default
- 26:15to the basic stuff like data types or the range of value
- 26:18something that that's not really, you know, evaluating it
- 26:21as it should be, you know, and that's where I find there's not
- 26:25much help. I've seen like online when I try
- 26:27to find it. How do I really make this model
- 26:29robust? I'm it's something that I'm
- 26:30learning right now and it sounds like we're there is definitely
- 26:33some room for improvement in that area.
- 26:35Yeah. I mean in the End the reason why
- 26:39it's a hard problem isn't because you know people aren't
- 26:41really smart people are really smart.
- 26:43But the issue is that you know, we use machine learning to solve
- 26:49problems that we don't know how to solve with traditional code.
- 26:54You know, that's why we have them it's it's because we don't
- 26:59know how to specify the behavior in advance and because we don't
- 27:03know how to specify the behavior of advanced testing that we have
- 27:06the Here that we wanted to you know have is a you know, a
- 27:12fundamentally hard problem. It's not just one where people
- 27:14haven't thought about enough, you know for for our listeners.
- 27:17I think a lot of people have had the chance to read the credit
- 27:21card debt and and read the test score papers under specification
- 27:26paper, you know, we read it and it was great.
- 27:28I would love to know when your words, you know, maybe how you
- 27:31would you know, what the lesson you took away from the
- 27:35experience of writing that paper is and and And you know, I need
- 27:38them to specification paper. Yeah, the under specification
- 27:40tape is like how has it impacted your thinking about engineering
- 27:43and all systems now. Yeah, so for folks who haven't
- 27:47read that paper, you know for me the key takeaway was let's see,
- 27:53so For a long time people, you know worried about you and
- 27:58especially being back in the Dark Ages when we went from sort
- 28:01of, you know models that were trained with convex, you know
- 28:05loss functions to you know, all bets are off deep learning, you
- 28:10know, non-convex blah blah blah. There's a lot of worry about
- 28:14like well wait a minute are the results going to be reproducible
- 28:17things like that and empirically what's happened.
- 28:21Is that Folks have found by and large the results on I I detest
- 28:28train splits for deep learning models tend to be really pretty
- 28:31repeatable. I mean not exactly not bite for
- 28:34bite, you know not to six decimal places for each
- 28:38prediction, but really pretty pretty repeatable and what this
- 28:44paper looked at was what happens when you do an evaluation of
- 28:48repeatability in training deep Networks.
- 28:53And you look not at an IID test range.
- 28:55But but you look at one of these stress tests that's explicitly
- 28:59from a slightly different distribution.
- 29:01And their what we found was that actually a lot of that
- 29:05repeatability went away when we look at out of distribution
- 29:09performance. And so this was just with like
- 29:12the the minimal possible changes that you could have from model
- 29:16train of only training. It was just, you know, varying
- 29:17the random seed that was used to start the models everything else
- 29:20remained constant. We saw you know, pretty large
- 29:24variation, you know amongst different versions of the model
- 29:28where each version was trained with a different random seed on
- 29:32things like, you know, perturbed versions of imagenet or
- 29:36interesting genomics use cases or stuff like that.
- 29:41And the the range of that variation was was often larger
- 29:45than the range of variation between say a good model and a
- 29:48not-so-good model and like some ml competition on that task so
- 29:53So, you know qualitatively quite large.
- 29:56Now for me that this is, you know, a really interesting and
- 30:00be a little bit worrying because if a given random seed changes
- 30:06your performance on out of distribution data.
- 30:11And we believe that out of the distribution data is something
- 30:13that we encounter every single day in the real world.
- 30:17Exactly. It's so it's so messy.
- 30:21Yeah, then then we maybe do have some issues on repeatability
- 30:25there. So I think that there are some
- 30:28reasonable Solutions, you know in one of our other recent
- 30:31papers, you know, we found that model ensembles like just taking
- 30:38and copies of the same model but maybe with just with different
- 30:41random seeds and installing them together gives a lot of
- 30:44robustness in these dimensional shift settings.
- 30:47Like obviously there's a Additional cost to be paid in
- 30:52terms of both inference time and in terms of system complexity,
- 30:56but there is there does seem to be some really nice robustness
- 31:00benefits that are consistent across domains and across
- 31:06application areas. So that's one takeaway, but my
- 31:10main takeaway from this is just that you know, well, it really
- 31:14is important to be evaluating models on these out of domain
- 31:18stress tests and to make sure that we understand the oceans of
- 31:21of what we're thinking about when we're in deployment lent.
- 31:26I was just going to say yeah, that's that's definitely the
- 31:28case right that real-life data is a lot messier than we train
- 31:30them. But I one thing I just wanted to
- 31:32ask a little bit deeper you mentioned if I recall correctly
- 31:34in the paper that you're not just referring to like
- 31:39overfitting right? Like you're you're you're you're
- 31:41you're getting data that's like your model is it's not it can't
- 31:45generalize to this is something a little bit different right
- 31:47you're referring to if I just change like the random seed like
- 31:51It's from 1 2 3 2 1 2 for my results vary so much when
- 31:55they're really shouldn't make much of a difference right like
- 31:57the random seed should be something that I don't know.
- 32:00Maybe it's like a parameter to but often that's not something I
- 32:02would like to in a hyper parameter tuning super like
- 32:07that. But you know, but I guess the
- 32:09paper shows that that had an impact and like you said that's
- 32:12worrying because the real life scenario is your data is not ID
- 32:16independent and identically distributed right?
- 32:18It's messy it's full of all these other things.
- 32:21And also now this is other element that I've been thinking
- 32:23about more is like someone can mess with it.
- 32:25Right like someone could actually like mess up my model.
- 32:27So it starts learning all these bad things.
- 32:30So now I don't know I just feel like there's so many interesting
- 32:32things to talk about but I want to I wanted to kind of shift
- 32:35towards I guess the future I want to just hear your thoughts
- 32:38and what you think about ml Ops and the space and where that's
- 32:41heading. So one question I have is what
- 32:43do you see as being some of the principal challenges that we
- 32:46have right now in production eyes in machine learning and in
- 32:49particular, what are those challenges?
- 32:51In comparison to 2015 when you first started writing some of
- 32:54these papers. Are you mentioned a little bit
- 32:56of this earlier? But yeah, just what are your
- 32:58thoughts on that? Where is this where we headed?
- 33:00Yeah, super interesting stuff. So, you know, I will say, you
- 33:03know, I like I used to work in this field a lot and you know,
- 33:09I'm certainly happy to give my thoughts but there are likely
- 33:12people who are more in the day to day to day of it right now
- 33:15than I am who will have better thoughts than I do.
- 33:18But so with that said looking forward to its one of the very
- 33:25obvious trends of the last couple of years has been that
- 33:28models keep getting bigger and open AI has these really nice
- 33:32papers on like, you know, scaling laws of large language
- 33:34models and stuff like that. But basically, you know show a
- 33:40exponentially increasing model size over time and that carries
- 33:48with it a couple of interesting challenges, you know, I think
- 33:50it's very reasonable to assume that models are going to keep
- 33:52getting bigger until they just Can't for you know, whatever
- 33:56reason we're like, you know just resources become inconceivable
- 34:02for larger models. So they're going to keep getting
- 34:04bigger for a while in my in my opinion.
- 34:08What's interesting about scale and scaling up is sort of like
- 34:12what why is this happening and the reason and in my read of the
- 34:19situation, is that basically you know as we get more and more
- 34:24data and more and more parameters for the most of the
- 34:26bottles, it's not that we're doing a better and better job of
- 34:30learning on the common data, right like the common data, you
- 34:33know, like the typical data, you know getting more and more of
- 34:36that isn't that much more useful than just taking many more
- 34:40gradient steps on the same basis that they already have instead
- 34:44as we get larger and larger datasets what we get is more and
- 34:46more exploration of the fringes and sort of rare edge cases and
- 34:53A typical data, you know, so like you can think of gathering
- 34:56a huge data set as a slightly inefficient way to gather, you
- 35:01know, smaller data sets that are sprinkled all around the
- 35:04interesting areas of the day space that you haven't already
- 35:06covered. What is interesting from an MLs
- 35:10perspective. Well, it's because as we expose
- 35:14our models to more and more Educators or try and you know,
- 35:17cover more and more specifics, I think that this means that there
- 35:21are more and more potential places Has where our models
- 35:24might be exhibiting unexpected or undesirable behavior.
- 35:28And so our need for stress testing.
- 35:30I think also grows with the the scale of the data that we're
- 35:35talking about. And if you look at those graphs
- 35:42and you know, look at that log linear scale over or whatever it
- 35:45is, like, you know, it's certainly something to think
- 35:50about, you know for MLS perspective.
- 35:52Maybe that's great. Maybe it's job security.
- 35:54I don't know but it's certainly something that's that's going to
- 35:58require a lot of attention as models keep getting larger and
- 36:00larger. See other things that are
- 36:03interesting I think Federated learning is super interesting
- 36:06from now in the labs perspective.
- 36:08So Federated learning, you know, this is the area where it's a
- 36:13great privacy-preserving mechanism, you know, you could
- 36:15imagine data is stored on, you know, lots of devices, you know,
- 36:19maybe people's phones or whatever.
- 36:22We don't want to take the data off the device, but we're able
- 36:25to sort of do this very very distributed Federated training
- 36:29where model training is done sort of little bits at a time.
- 36:32I'm on the individual devices the data never leaves each
- 36:34device and sort of anonymized very highly private highly
- 36:38secure updates get sent back back and forth.
- 36:42It's fascinating. It's fantastic.
- 36:43I have no idea how to make that operational from a nmls
- 36:49perspective. What is what does
- 36:51reproducibility in that situation look like what does
- 36:56data testing look like in that regime?
- 36:59I'm not working on Federated learning.
- 37:00There are people who are really smart and Are working on that
- 37:02they probably have great answers, but just in terms of
- 37:05like thinking of the future, I think that you know, the ml Ops
- 37:08Community would do well to focus on that a little bit at least
- 37:13we've talked a little bit about the proliferation of devices.
- 37:17I think that there's just going to be more and Yeah, I really
- 37:24hope that we get more and better abstractions that help us deal
- 37:29with that over time. But but for the time being
- 37:31there's does seem to be a lot of the classic, you know, right
- 37:34once debug everywhere kind of framework that we've often seen
- 37:39and similar situations like, you know web pages in the 1990s or
- 37:43whatever. They might have been.
- 37:46Let's see. How about you were with what are
- 37:50your thoughts you guys doing this every day?
- 37:55You've definitely given us a difference is going to be honest
- 37:57a lot to talk about. You know, I think at least from
- 37:58my perspective my experience as a machine learning engineering a
- 38:04startup company has really been realizing that a lot of the
- 38:07problem is defining the problem more so than it is writing the
- 38:11models even writing software right?
- 38:13It's like, okay, we work on retinal images, which is
- 38:16actually one of the interesting things that you guys talked
- 38:18about in your understood. Under specification paper and a
- 38:21lot of my time is spent. Well, what are the ways an image
- 38:23can be bad? How do I go gather and
- 38:25understanding of that and think about what that means
- 38:27algorithmically and also just even from The annotation
- 38:30standpoint. How do I make sure that my
- 38:32annotations reliable? It's actually it is for the
- 38:36machine learning engineer. It's almost like a lot more
- 38:39meaningful to spend time thinking about your labels and
- 38:40making sure your labels are have that sanctity than it is to
- 38:43actually spend writing tons and tons of lines of code.
- 38:45Oh that is so true. I mean, you know like the amount
- 38:48of bang for your buck that you Get you know, either a spending
- 38:51your time like trying to think of a slightly different
- 38:53mathematical formulation for your model or be spending time
- 38:58making your Raider guidelines more specific like I mean being
- 39:02wins every day, right? Yeah, that's exactly right.
- 39:06And I think the nice thing to see is that there's interesting
- 39:08tooling that's coming out for that, you know companies like
- 39:10Label Box and you know, I think there's one called a superb that
- 39:14AI they're proposing new ways of basically making the whole
- 39:17process more efficient based on some Stretch that's coming out
- 39:21and I think that could be really promising from animal of stamp
- 39:23because really if it's a lot easier to make if it makes my
- 39:25life easier when it comes to annotations and you know getting
- 39:28fewer and fishes with being able to have a higher level of
- 39:30confidence in them. That's mean that's that's the
- 39:33Holy Grail right for any kind of assembling any kind of data set.
- 39:37What about you David? So I'm like my interests are
- 39:41more in the in for side of things thinking about like you
- 39:43mentioned like the models are getting larger and larger.
- 39:45How do we have sufficient, you know inference and I think that
- 39:50problem still needs some work. Like I look at them as some of
- 39:52the things that I would love to work on like a better scheduler
- 39:57the ability to share resources more efficiently and hopefully
- 40:01abstractions that make it a less like I don't know like using a
- 40:05spit like specialized Hardware isn't always trivial.
- 40:08Sometimes you have to make sure you have all of these drivers.
- 40:10They're just there's a lot of things that make it tricky.
- 40:13I would hope that that gets better and I do think that that
- 40:17that's that's so important. You know, it's Infrastructure is
- 40:20what everything runs on and when that's not working.
- 40:21Well, everything gets slowed down.
- 40:23So I think that that's something that we all realize it's just
- 40:26not talked about much but there is definitely some cool work
- 40:29being done on improving that and I would love to see more of
- 40:32that. I guess I envisioned that being
- 40:34also pretty but another thing you kind of are talking about
- 40:37was like security. There's this I think it's called
- 40:40multi-party Computing or secure multi-party Computing which
- 40:47seems similar to Federated. Ting but like you said, how do
- 40:50we actually do that at scale like how it how do we actually
- 40:53make that you know doable and I think that you know spending
- 40:56more time understanding that from an Mo perspective is going
- 40:59to be what we're going to invest more in more time again, also
- 41:02the I gay I'm saying like the same answers but the data it's
- 41:05always about the data labels in particular is also really
- 41:08interesting area finding ways to do that in an automated way.
- 41:11So I definitely see more more focus on you know, actually in
- 41:16like making some of these these jobs feasible from a Including
- 41:19point of view that we can do it where our resources are not
- 41:22spending so much money that's yet.
- 41:24So I'm thinking that the GPU sharing a way to make the most
- 41:26out of what we have and then definitely security making some
- 41:29of these secure methods more mainstream or more popular
- 41:34because I see them as kind of small little areas of research
- 41:38rather than something that everyone's doing in production.
- 41:40Yeah. I'm so maybe there's ways to
- 41:41make that simpler make that more available.
- 41:44These are things that I can and as an m/l s/m and m/l engineer.
- 41:47I didn't really worry about too much but now now security is
- 41:49becoming so much more important fairness and bias and addressing
- 41:52some of these issues that it's less model-specific less about
- 41:55the algorithm and more about everything else that's going in
- 41:58this environment. It's going into the group.
- 42:01That's something I'm glad we're on the same page David because I
- 42:07was going to mention security to and talking about also
- 42:12everything that you mentioned, but then you said it beforehand
- 42:15like when people start playing with your models and people Are
- 42:20trying to train them in a nefarious way.
- 42:23Like, how do you prepare for that?
- 42:25What are you doing in those cases?
- 42:27And and is this the job of the ml Ops or the machine learning
- 42:33engineer the infrastructure team?
- 42:36Like the only it's not my job to find.
- 42:38Yeah. Exactly.
- 42:40Exactly. I don't think I buy that one.
- 42:44That's that's exactly it like well, is it is it is there a new
- 42:50I mean Vishnu and I have talked about this quite at length of
- 42:53the like splintering of the ml engineer.
- 42:56And how is there going to be like you've seen devops go into
- 43:00Dev set cops, right? And is there going to be a ml?
- 43:04I don't even know how we could put it.
- 43:06Ml SEC cops come about in the future too.
- 43:10So that's something that I just wanted to tack on to the end of
- 43:14what you were saying, but D. I'd love to hear your thoughts
- 43:18on all of Hey, I think all of these things are you know, very
- 43:26very plausible very likely. I was looking back.
- 43:33I got to read the section that paper this morning and try to
- 43:37remember what was in it. So, you know the old figure one
- 43:41there that's like the figure with the little you know little
- 43:45bit of machine learning code in the middle and then like the
- 43:47different system pieces on the outside and that's a paper that
- 43:50I've seen that's a figure that I've seen crop up and allegedly,
- 43:53you know a wide variety of corners of the internet.
- 43:55So that's been pretty fun. But looking at that figure
- 44:01again. what I noticed in terms like what's missing from that
- 44:07there's likely, you know, some pieces that are missing in terms
- 44:12of there's a I think there was a box for data validation, but the
- 44:17sort of like the full-on security and other words spam
- 44:19filtering or like, you know, kicking Bad actors out of your
- 44:22feedback pipeline or whatever don't like that's a really big
- 44:25deal in a lot of cases and then on the output side You know,
- 44:31it's often the case that you know, for example, like for a
- 44:36lot of models are used in different production settings.
- 44:38Like you don't necessarily want to take the raw output of a
- 44:41model and feed it into your production setting unfiltered.
- 44:47And we've all seen you know, high-profile cases of you know,
- 44:50like chat Bots or whatever else like maybe needing some
- 44:52filtering or stuff like that. Right?
- 44:56And you know, I think that those kinds of pre and post, you know,
- 45:04parts of the system are really important.
- 45:07They're also places where you could absolutely a crew, you
- 45:10know, a fair bit of technical debt and your system or like
- 45:13something that gets like really hard to change your gets sort of
- 45:15like In two particular version of a model or things like that
- 45:20and looking forward to think that those are areas that could
- 45:22have, you know, like whole communities around themselves in
- 45:25terms of like best practices and infrastructure development all
- 45:28the rest of it when Dad won't question also is a father that
- 45:31like sort of like how in your opinion you've seen a bunch of
- 45:35communities come up, you know, go away.
- 45:37How does that affect this like the space like the community is
- 45:40that you know, I don't know me. I haven't been around long
- 45:43enough to think of other communities that have Like
- 45:46accelerated the development of things or maybe I don't know
- 45:49maybe not a made it worse. But I know I feel like
- 45:52communities do have they play an important role like a look at a
- 45:55project that cute flow or maybe one of these other ones that
- 45:57open source where if there is a lot of people actively working
- 46:00on it actually makes the tool more likely to be adopted by
- 46:03another team. I know when we were evaluating
- 46:05our infrastructure in which willing to you is that was a big
- 46:07big thing. Like is there a community around
- 46:09this that if we have a question we can ask is there are there
- 46:12people that are actively working on this and it started going
- 46:15back to Mike? Question is how does that shape
- 46:18the development of the MLF sphere I guess in this like and
- 46:21maybe if it doesn't have to be able out some other community
- 46:24that you seen and maybe how that affects that on a research or
- 46:27whatever area. You've seen.
- 46:29Yeah, I so just like, you know having dramatically more
- 46:33training data gives you more information at the edges.
- 46:38I think that having a larger Community, you know, it's it's
- 46:41one way of, you know, having better faith. if that you are
- 46:46getting stress tests in a wide variety of important education
- 46:49has you know where those stress tests are probably, you know
- 46:52from different, you know, domains or different companies
- 46:56whatever dance but it's much better to have one large
- 47:00community than three smaller communities because of those
- 47:02Edge effects and and sort of the ability to learn from people who
- 47:07are doing something that's a little bit, you know different
- 47:10than what you might be doing or what might be standard practice
- 47:14at the current time that A ton of sense you're very talented at
- 47:18analogies. You should have heard his was
- 47:22sorry to butt in Vishnu but guys it recording with software
- 47:26engineer daily and he did a spamming one in the north.
- 47:30What was it Norway Norway and Sweden about spam as in and you
- 47:36probably don't even remember doing this.
- 47:37You probably came up with it off the cuff, but it was for me.
- 47:41I was laughing. Like how did he just come up
- 47:44with that analogy? and this example, so anyway, go
- 47:48ahead Vishnu start over to know I'll have to have to go back and
- 47:51listen to that one specifically then for that analogy and my
- 47:57question kind of is it's almost about idea communication and how
- 48:00you how you think about that right this concept of technical
- 48:05debt in machine learning, you know, I see that the 2015 paper
- 48:10was you know, one of the first time I think really really
- 48:12pushing that term really helping people understand that this is
- 48:15the concept You need to keep in mind.
- 48:18As you sort of hear about perhaps this new idea like under
- 48:22specification and stress tests. How do you think about or how do
- 48:25you go about the process of like maybe formalizing this idea and
- 48:29then communicating it to the people that you work with?
- 48:31I'm just curious how you think about it.
- 48:32Maybe it's organic. Maybe it's a little bit more,
- 48:36you know structured as the way I've maybe I'm applying too much
- 48:38structure to it. But I'm curious how you think
- 48:39about communicating some of the ideas that you have about how to
- 48:42engineer systems properly. Yeah.
- 48:44I mean, I do think it's one of the reasons to write papers and
- 48:47publish papers, you know, I I think it's a really good
- 48:49practice, you know the for myself the best thing about
- 48:53writing papers is to like actually try and figure out what
- 48:58I think or what what is true to the best the best that I can or
- 49:03we can I think that to First approximation science is what
- 49:09happens when you write stuff down and without writing it's
- 49:15very very difficult to really have something that's so so that
- 49:18they can be put up for debate or for inspection can be disagreed
- 49:22with can be critiqued. So that's step one.
- 49:27You know. Well once Things are Written
- 49:32then you know, there's a little bit of publication and things
- 49:34like that. You know, I imagine that you
- 49:39guys are probably better at that than I am but You know, I think
- 49:44that good ideas tend to make their way into the community if
- 49:48they're in a form that people can can digest and share.
- 49:51So, you know, I don't think that you know, we need to like Rangel
- 49:56our way into 60 minutes to talk about Emma laughs or technical
- 49:59credit. I think that you know, making
- 50:01sure that your number one there are good papers out there number
- 50:04two where we can create useful pieces of infrastructure whether
- 50:10it's an open source or other shareable or usable things.
- 50:14That can help a lot for adoption.
- 50:15If we have some best practices that can be adopted that way and
- 50:19then things like this if just having conversations and talk
- 50:22with people I think is really really useful.
- 50:24Are we going to see a book anytime soon now from you know
- 50:28book I don't think that's very likely for me.
- 50:35Well amazing sitting down or Zoom or whatever.
- 50:40We're doing here across the internet.
- 50:43Set and talking with you. I really thank you for taking
- 50:46the time to do this because I know that it is very valuable
- 50:53for everyone that is out there listening.
- 50:55And if anyone wants to get in touch with you, I think we can
- 51:00direct them to your website which is incredible website to
- 51:05will leave it in the links below.
- 51:07There is an FAQ section and this is how I knew it was going to be
- 51:11great chat because I think the FAQ one of the Students in the
- 51:14FAQ section was is your name really D and the answer was yes
- 51:18it is. That might be the only affect
- 51:22you. Thank you.
- 51:24I really appreciate the chat and it's great to hear about your
- 51:28Visa work. So thanks so much.
- 51:29Yeah. Thanks again D and we will see
- 51:32everyone later. Yeah, these are guys.