@sumalaika's webex 9:58 am - 11:04 am Thursday, July 13, 2023 | (UTC-04:00) Eastern Time (US & Canada) Soumi Das (External) Shubhadip Nag (External) Aalap Tripathy HPE (External) Vijay Arya (IBM) Martin Foltin (External) Annmary (External) Cong Xu (External) Rodolfo Gabe Esteves Intel (External) Suparna Bhattacharya (External) Ashish (External) Ali Hashmi (IBM) Susan Malaika (IBM) Arpit (External) Adrian (External) Jigisha Mavani (IBM) Gyanaranjan Nayak (External) Sourangshu (External) Tarun Kumar (External) WEBVTT 1 Suparna Bhattacharya (External) 00:00:01.599 --> 00:00:02.680 Yeah, please go ahead. 2 Suparna Bhattacharya (External) 00:00:03.960 --> 00:00:22.240 So we talked about CMF in the previous presentation, but I know a PJ, you, I do not know if you have gone through that before, so we have a very brief recap, and then maybe we can discuss, did you want to say, cover something with you? 3 Vijay Arya (IBM) 00:00:22.520 --> 00:00:41.080 I was saying that you could probably get into the discussion sooner because I have, I need to, I want to sort of, you know, I meant have little time for the meeting, so I need to... Yeah, so if you can get to the crux of the matter sooner, it'll be good for me. 4 Suparna Bhattacharya (External) 00:00:41.120 --> 00:00:46.200 Okay, you need to have you looked CMF presentation? 5 Suparna Bhattacharya (External) 00:00:48.760 --> 00:00:53.640 OK. yeah, so then we'll go through it quickly so how much time do you have. 6 Vijay Arya (IBM) 00:00:54.160 --> 00:01:00.280 Maybe if you could finish in like, half an hour or forty minutes and I, I have to get back to work. Okay. 7 Suparna Bhattacharya (External) 00:01:00.280 --> 00:01:02.200 Yeah, I think that should work. 8 Vijay Arya (IBM) 00:01:02.200 --> 00:01:06.040 Yeah, maybe you could spend like ten minutes to go over the deck and then we could. 9 Suparna Bhattacharya (External) 00:01:06.720 --> 00:01:07.320 And you may have. 10 Suparna Bhattacharya (External) 00:01:07.600 --> 00:01:09.240 Questions, right, yeah, if you have. 11 Suparna Bhattacharya (External) 00:01:10.520 --> 00:01:31.000 So let's, yeah, let's go ahead then. So, and if you would do it in slide share mode. So anyway, I think the, the goal here was we, you know, we have this framework for common metadata, framework, tracking lineage and metrics from the iplines and the question was, how could we combine. 12 Suparna Bhattacharya (External) 00:01:31.680 --> 00:01:53.400 With AI three hundred sixty in various ways and maybe are the new things that we could do with it. So, just the recap of what we are trying to look at here why we, we have this framework, so we, you know, there is a model centric, you know, and you have this AI pipelines, we've talked about this before that, there is the original model centric development view. 13 Suparna Bhattacharya (External) 00:01:53.480 --> 00:02:13.880 You have a data set, maybe, and you are kind of iterating on that and you're trying to, you know, do various experiments and, you know, change a various things and, you know, and that is what typically experiment tracking tools and many of them focus on, but with this focus on data centric, you know, app. 14 Suparna Bhattacharya (External) 00:02:14.520 --> 00:02:34.360 Where you say, okay, I have the model architecture kind of fix, but you want to see if I can improve the data. I can improve the pipeline and the data centric aspect, you know, all of these things could happen both the during training and there could be such iterations also during inference as we can see with these foundation model. 15 Suparna Bhattacharya (External) 00:02:34.840 --> 00:02:54.840 The whole prompt selection loop and ultimately, of course you, you have these complex, some complex pipelines where you may, you know, have, you know, training inference data preprocessing one model, leading to another, and so, you know, if you really want to optimize or you any, any metrics and especially if you're looking at trust. 16 Suparna Bhattacharya (External) 00:02:55.120 --> 00:03:11.360 Iness or explanations, you know, our view is that we should be able to look at it from all of these points of view, and that's kind of what, you know, we're trying to achieve here so we can move on to the next slide. So our agenda was to have this brief. 17 Suparna Bhattacharya (External) 00:03:13.400 --> 00:03:17.120 Recap, and are you moving to the next slide? 18 Suparna Bhattacharya (External) 00:03:19.160 --> 00:03:36.440 Yeah, so yeah, this is a quick recap, so, and, you know, you might jump into it, you know, recap of MF and then we'll show one example of the CMF with AX three sixty and then jump into some brainstorming on what we could do together. Okay, yeah. 19 Annmary (External) 00:03:36.440 --> 00:03:56.920 Who would the slides quickly since it's a recap, but please feel free to stop me anytime and ask questions. So let me start with the, what are the challenges involved in tracking metadata for distributed AI pipelines. So there are different moving pages as we all know, like you need to track the. 20 Annmary (External) 00:03:57.360 --> 00:04:17.400 You need to track the data. You need to track the code. You need to track the model. The hyper parameters that you're used in the model. So all these three D- all these aspects have to be tracked and all of them has different source of truth. So that is just for a single stage in your pipeline, but that pipeline could involve multiple different. 21 Annmary (External) 00:04:17.480 --> 00:04:37.880 Stages and each stage could be executed independently by a different team. Usually you have a data team different from a modeling team who does the pre- processing for the data and both the teams could be totally like, not aware of each other of what other is doing. So there is a dependency on the previous stage. 22 Annmary (External) 00:04:37.920 --> 00:04:58.360 On the subsequent stage, for your model and that dependency has to be tracked and you also need that entire lineage chain. It's just not the training stage that needs to be tracked. You need to, you also know how the data was pre- processed so that you can explain why the model behaves in a certain way and what, what was the distribution. 23 Annmary (External) 00:04:58.400 --> 00:05:18.840 Of the data set that was used to train the model. All these becomes very important for your model explainability. So the existing tools that we've seen that do not track end to- end lineage for a model training for a distributed environment, and that is where we try to come in so that we can create pipelines that are reproducable auditable repeatable traceable. 24 Annmary (External) 00:05:19.080 --> 00:05:39.320 Leading to trustworthy outcomes moving on to the next slide. So this slide gives a brief overview of the architect architecture of the CMF. So we have built CMF on top of existing open source tools and we have built it on top of the three pillars achieve the Reproduc. 25 Annmary (External) 00:05:39.800 --> 00:05:59.800 Which is the, you need to track the code. You need to track the data set. You need to have drag the hyperparameters that is used and you need to stitch all of them together, and that is what we try to do and that, that core that dependencies between each other is stored in CMF and we stored in the back end store, which is MLM. 26 Annmary (External) 00:06:00.480 --> 00:06:20.280 And so we track our hyperparameters we track which version of the artifact is used, which version of the code is used. Those metadata gets tracked in MLMD in this format, that is like in Cmf's format and the artifact itself gets to versioned in artifact store, which is DVC and. 27 Annmary (External) 00:06:20.320 --> 00:06:41.400 The code gets versioned and stored in kit and we connect all the three together, so you would know exactly for this, which model was trained on which version of your code, which version of your artifact and what hyper parameters was used. So we also have a query layer, which, by which you can query the metadata. 28 Annmary (External) 00:06:41.520 --> 00:07:01.880 That is stored in CMF and we have a- and since CMF tracks, the lineages between the artifacts, the relationship between the artifacts between them, the executions, these are all like the first class citizens and so we have a relational database, which is NEOFOJ that we track these relationships, so it has, and all this gets enabled through. 29 Annmary (External) 00:07:01.960 --> 00:07:05.960 Logging engine, which is a Python API by which we can. 30 Annmary (External) 00:07:07.040 --> 00:07:27.480 Log the metadata. So the end result of that is you get this end to end lineage chains, like you have the, you would know what, how the outcome was produced, like which input data set. What was the pre processing involved? What was the test data set? What was the train data set? 31 Annmary (External) 00:07:28.280 --> 00:07:47.960 What are the different versions of the model that was produced, which of which model got deployed in the production and what was the inference result and if there is a retraining loop, what is, what was the retraining data set? So it tries to track this across the different sites that you have a different data centers. You would be doing and pro- stitch together. 32 Annmary (External) 00:07:48.160 --> 00:08:08.440 Lineage chain so that you get that end to- end visibility, So it also provides collaboration across the different users for a modeling pipeline. We know that different user profiles gets involved. You will have a data engineer. You have a data scientist. You have a performance engineer. So each. 33 Annmary (External) 00:08:08.600 --> 00:08:28.920 Of them working independently, but with CMF with the, which is backed by this data store, which is DVC and the code repository, which is get, you'll be able to collaborate among all these different users and be able to share the metadata that is produced from each location. 34 Annmary (External) 00:08:28.960 --> 00:08:49.400 So that everybody gets visibility across the global lineage chain. So you have your, the initial data coming into the system that gets ingested. That might go through a pre- processing stage and then gets into the system, which can be with, with its metadata can be pulled locally by data scientist work. 35 Annmary (External) 00:08:49.600 --> 00:08:51.320 The data augmented. 36 Suparna Bhattacharya (External) 00:08:51.560 --> 00:09:00.280 Could I just interrupt for a minute, Susan, there are several people actually who are in the lobby waiting, including Sharangshu and I see some post on. 37 Suparna Bhattacharya (External) 00:09:02.320 --> 00:09:03.480 Okay, they're there. Okay. 38 Susan Malaika (IBM) 00:09:03.600 --> 00:09:06.040 Yeah, everyone's in. Yeah, yeah, yeah. 39 Suparna Bhattacharya (External) 00:09:06.040 --> 00:09:07.600 Okay, thanks. 40 Annmary (External) 00:09:08.480 --> 00:09:28.440 So this can be pushed back and so now this metadata is visible on all the different locations. There is, if it's an another team that is involved in modeling, they can pull this metadata see about the data. Okay, what, what was the, what is the data characteristics that are there? What is the statistical distribution of this data? start a modeling process? Create the model push. 41 Annmary (External) 00:09:28.600 --> 00:09:47.960 That back to the repository so that everybody involved gets visibility throughout on the, how that data get used. What model was trained on that? What was the metrics that got was update all this information Now get shared across the different users that are there. 42 Vijay Arya (IBM) 00:09:48.560 --> 00:09:54.880 Yeah, yeah, so okay, maybe you, do you want to go over the explainability. 43 Vijay Arya (IBM) 00:09:57.000 --> 00:10:04.280 Supernam in the part where you said that you've already applied explainability to one use case, maybe we could discuss that. 44 Suparna Bhattacharya (External) 00:10:05.760 --> 00:10:10.000 Be just, I think it'll help to just see the kind of things that are recorded and nothing. 45 Vijay Arya (IBM) 00:10:10.040 --> 00:10:10.640 Okay. 46 Annmary (External) 00:10:11.480 --> 00:10:31.760 Exist conclude in like a couple of minutes. So just to give you an outline of how we try like how we enable this tracking this logging this metadata. So we provide Apis by which the users can track the metadata, so we don't prescribe what this, the metadata that needs to be tracked, it is up to. 47 Annmary (External) 00:10:32.400 --> 00:10:52.240 So you have these custom properties by which you can provide whatever metadata that is that you feel, it will be useful for your system and the kind of stitch together different executions that are there different stages in the pipeline that could be executed in different sites and stitch all them together to, to have a, you have a global pipeline, um. 48 Annmary (External) 00:10:52.560 --> 00:11:12.720 Under it, you can have stages under it. You have executions each with its own dependency chain, so that dependencies is what that we would track. So these are the kind of Apis that we provide, you have the data set, you have it, we have an L- seven obstraction of data slice which kind of helps you to slice and dice your data. 49 Annmary (External) 00:11:13.440 --> 00:11:33.200 Again, the custom properties is driven by the user. The user decides what custom properties he would want to enter. So we don't prescribe it and we also track the metrics that are there in your experiment. So we look at the, at both at the experiment centric view where we track the metrics and what goes. 50 Annmary (External) 00:11:33.600 --> 00:11:47.600 What goes out for each individual experiment. We also look at the global pipeline as a whole on what are the difference stages in the pipeline and what are the dependencies across these changes? So with that, I'll hand it over to Superna. 51 Suparna Bhattacharya (External) 00:11:49.200 --> 00:12:09.040 And this is a very early example, which is, it's not like we were just playing with AI three hundred sixty so we can, you know, see what's possible, but I think that's the idea of the discussion here, but really what you could see is, you know, the idea here was to say that can we now get the full pipeline centric view. 52 Suparna Bhattacharya (External) 00:12:11.680 --> 00:12:29.520 Not just explainability. I know you can look at the explainability in terms of the model, the input to the model, but then it kind of goes all the way backwards and can we actually compare, you know, so this particular example we're looking at the example of pipeline centric view so that you can, you know, visual. 53 Suparna Bhattacharya (External) 00:12:30.200 --> 00:12:50.000 Various pipelines, their stages, what results they have, you can compare and analyze them, and then, you know, correlate them with the explanations and so there's a very simple example that Yana was experimenting with where he's looking at, you know, example from, yeah, f- three sixty. 54 Suparna Bhattacharya (External) 00:12:50.000 --> 00:13:10.480 And, you know, that already had some explainability in it, but to see that what happens if you record this with CMF and you can correlate the fairness metrics and the explanation measures, so you can compare things across parts and then you can also eventually also, I mean we do not have it right now in the example, but you can also look at different stages of the pipeline. So if, you know, there. 55 Suparna Bhattacharya (External) 00:13:11.480 --> 00:13:30.960 Application or mitigation happening. You would be able to see that, and maybe you would be able to connect it with the various explanations and eventually the idea is that we can combine these different kinds and process or Angshu is here he has some, you know, ideas on the data centric explanations that could be added here. 56 Suparna Bhattacharya (External) 00:13:31.000 --> 00:13:43.760 And so, you know, you saw the data slice notion, so with the status centric and marl centric and pipeline centric explanations, then a lot more global, you know, sophisticated kinds of analysis can be done because. 57 Suparna Bhattacharya (External) 00:13:44.400 --> 00:13:49.520 You do this at scale, then, you know, maybe we can even apply, you know, some of the. 58 Suparna Bhattacharya (External) 00:13:49.560 --> 00:13:50.160 Techniques. 59 Vijay Arya (IBM) 00:13:51.520 --> 00:14:10.640 Right, yeah, so I... yeah, I kind of get this, so, I mean, broadly, right, I mean, there are two, there are two types of, I mean, a kind of explanations, right? You could say, so one, one concept is, you know, this end to- end kind of giving telling. 60 Vijay Arya (IBM) 00:14:10.720 --> 00:14:19.720 The user, you know, in an end to end manner that, you know, perhaps, you know. 61 Vijay Arya (IBM) 00:14:20.920 --> 00:14:29.200 You could have done something else in the intermediate steps and therefore you're yarn getting high accuracy and so on, right? 62 Vijay Arya (IBM) 00:14:29.200 --> 00:14:49.680 So those are, so that is one kind of. So there, I mean, technically, you're not training an AI model itself to get your explanation, but you're correlating information from different pieces because you're, you're, you're collecting a lot of data about the different things that the user is doing right in. 63 Vijay Arya (IBM) 00:14:49.720 --> 00:15:06.680 The whole in the whole prime because lot of metadata, so you could, you could in principle, you know, mind that data or, you know, just scan and, you know, correlate information to sort of, you know, give information to the user that, you know. 64 Vijay Arya (IBM) 00:15:08.920 --> 00:15:14.320 Something, you know, something, you know, is, is. 65 Vijay Arya (IBM) 00:15:17.200 --> 00:15:21.040 Could be done et cetera. So that is, so that is one one... 66 Suparna Bhattacharya (External) 00:15:21.400 --> 00:15:21.680 That is. 67 Suparna Bhattacharya (External) 00:15:21.920 --> 00:15:37.040 Pipeline and you can also look across pipeline. So the example here was, yeah, it was with and without bias mitigation and then correlating it, and this was a standard example that is there in af three sixty, but it is showing, you know, yeah. 68 Suparna Bhattacharya (External) 00:15:37.840 --> 00:15:38.960 Then associated explor. 69 Suparna Bhattacharya (External) 00:15:39.680 --> 00:15:43.440 And then you look at before after, right? And, you know, yeah, that's. 70 Vijay Arya (IBM) 00:15:43.600 --> 00:16:03.920 Type of, so these type of explanations, I think you will AI extressive will not be able to help much in these type of explanations because here you are. I mean, the other, you know, potential option could be, you know, something like this could be developed and it could be contributed to AX two sixty or, you know. 71 Vijay Arya (IBM) 00:16:05.200 --> 00:16:24.400 So I, I was, I was, so, so in this would fall in that category, right? Where you, you kind of have this lot of a lot of metadata collected from different stages, et cetera, and then you are trying to tell the users, some useful piece of information, which is an explanation to the user, right? So, so that is. 72 Vijay Arya (IBM) 00:16:25.240 --> 00:16:44.880 One, one angle here. So here existing methods, which are already put in aix three sixty, right? They will probably help you in, you know, getting any insights, we don't have a, we don't have a use case on, you know, on, on metadata et cetera and the tool. 73 Vijay Arya (IBM) 00:16:45.320 --> 00:16:49.360 Perhaps there could be scope to put a use case there once. 74 Suparna Bhattacharya (External) 00:16:49.520 --> 00:16:59.600 And we are also proposing that combining these two because basically that's what we are showing here that when you combine these two things, you can get that kind of global view. 75 Vijay Arya (IBM) 00:16:59.720 --> 00:17:00.240 So you. 76 Suparna Bhattacharya (External) 00:17:02.000 --> 00:17:04.079 You know, the example is really showing here. 77 Suparna Bhattacharya (External) 00:17:09.439 --> 00:17:29.680 Give us sense, right? Let's, let's just look at this. So then you get a, get an intuition of what we mean. Yeah, so you can see this, this, I think you get recording both the, you know, for this example, recording both the FI and the bias metrics, and then you're also looking the explanations like you say, right? These are all basically metrics, right? And. 78 Suparna Bhattacharya (External) 00:17:29.680 --> 00:17:47.600 And so the next slide is kind of showing that, you know, what happens when you, you know, in the top pipeline and the bottom pipeline, right? One was with SPIOUS mitigation, another was without bias mitigation and so you're seeing these, you know, already these graphs are becoming complicated because they are before, after various different models and then. 79 Suparna Bhattacharya (External) 00:17:48.720 --> 00:18:08.720 You know, there are these parts, right? That you pick and you can see now you can start to compare these parts and it's very interesting here like what you see here is, right, If you look at the metrics and then you try to say, okay, was, you know, biased, you know, you look at the biased measures and then you look at the, you know, the race attribute and you. 80 Suparna Bhattacharya (External) 00:18:09.760 --> 00:18:19.600 In the next slide you can kind of see that as you do this, you know, different examples are different, right? Some cases, the race matters and other examples, It doesn't matter. 81 Suparna Bhattacharya (External) 00:18:20.240 --> 00:18:38.800 What's more interesting is if you go to the next slide, if you look at it, and you see that overall like you see, there is a significant reduction in the disparate impact, but if you just look at the race feature, like in just averaging over thousand samples, and that's gana, just, you know, summed up the feature contribution for cross thousand. 82 Suparna Bhattacharya (External) 00:18:40.080 --> 00:18:47.760 See it's not that much of a difference. So which probably means that there must be other attributes which are really, you know. 83 Suparna Bhattacharya (External) 00:18:48.400 --> 00:19:06.920 Might have been causing bias. Yeah, this is just simple, right? This is just one or two pipelines, but then, you know, you can get that at least just combining these things as is, can give us a bit more of a global view on which, as you can say, like, you're saying like we could develop further analysis. 84 Vijay Arya (IBM) 00:19:08.240 --> 00:19:28.720 So one thing, okay, so that is one aspect right now. Now what I was also suggesting the previous call, et cetera and what he was also shown here is when we have. So, so like I'm kind of mentally classifying two categories, right? One is. 85 Vijay Arya (IBM) 00:19:29.360 --> 00:19:49.200 Possibly develop new use cases. Maybe we can contribute to X to sixty. The other, other approach is, you know, can we use something from AX to sixty for revealing, you know, helping the user while they are using CMF in some manner. So this later this later thing. 86 Vijay Arya (IBM) 00:19:49.320 --> 00:19:56.080 That I was trying to say was Essent was in this category. So imagine that. 87 Vijay Arya (IBM) 00:19:56.880 --> 00:20:17.360 You have a lot of data, right? So you had, let's say, you know, tons and tons of data about, you know, different versions of data set being used to train a model and perhaps even I'm just taking an example of, you know, just you. 88 Vijay Arya (IBM) 00:20:18.340 --> 00:20:38.820 In metadata about the, what data was used, what model was used for training and so on, but you could also think of running the analysis that I'll explain even on. Let's say you capture a lot of, you know, bias metrics or explainability metrics per sample and so on and so forth, right? So. 89 Vijay Arya (IBM) 00:20:38.820 --> 00:20:59.300 As you are collecting a lot of this information right now, so there is tons of information right now. The question is because you're collecting a lot of this information. What is the, what could be some examples of meaningful. 90 Vijay Arya (IBM) 00:20:59.380 --> 00:21:12.660 Insights that you could show to the user based on a lot of this metadata that you have collected right now because you've collected so much data. It's manually. 91 Suparna Bhattacharya (External) 00:21:13.740 --> 00:21:14.660 Exactly, yeah. 92 Vijay Arya (IBM) 00:21:15.300 --> 00:21:30.660 To eyeball a lot of this data and so on, right, so in that, in that case could could, so one particular explainability approach that, you know, an existing algorithm that could be applied. 93 Vijay Arya (IBM) 00:21:32.580 --> 00:21:40.260 Is to hunt for prototypes in this entire data. So. 94 Vijay Arya (IBM) 00:21:41.540 --> 00:22:01.380 So imagine think of this as more like a clustering kind of thing. So you have a lot of data on, you know, some things which work somethings which didn't work and so on. So there will be a bunch of data where the model works reasonably, well, or the model produces certain type of bias metrics or the model produces certain type of expirations and so on. So. 95 Vijay Arya (IBM) 00:22:01.460 --> 00:22:09.660 Would be a cluster of samples, perhaps where, you know, you would say, okay in this, in this cluster, perhaps, you know. 96 Vijay Arya (IBM) 00:22:10.980 --> 00:22:23.140 You know, the model works like this. So is it possible to, in this entire? is it possible to give some prototypical samples out of this full data? 97 Vijay Arya (IBM) 00:22:23.140 --> 00:22:28.900 So let's say, for example, I want five prototypical samples out of the entire metadata, collect. 98 Suparna Bhattacharya (External) 00:22:30.020 --> 00:22:35.940 Samples prototypical pipeline or, you know, the distinguishing ones, right? Or something like that. 99 Suparna Bhattacharya (External) 00:22:37.460 --> 00:22:37.860 Some things... 100 Suparna Bhattacharya (External) 00:22:38.700 --> 00:22:39.780 Something which are really bad. 101 Suparna Bhattacharya (External) 00:22:39.940 --> 00:22:40.420 Right, yeah. 102 Vijay Arya (IBM) 00:22:40.620 --> 00:23:00.900 There would be, so among the, among the, among the different runs, et cetera. There's some runs which are very similar perhaps, right? And if, if, if for example, if you could think of this as, you know, each metadata, somewhat, like, let's say, for example, a large imagine that you're thinking. 103 Vijay Arya (IBM) 00:23:00.940 --> 00:23:21.380 Of a large image data set. Okay, now let's say you've got MNS data set. Okay, you've got like, you know, tons and tons and different types of zeros, your tons and tons of different types of ones, different types of tools and so on. Now if some, if I were to tell, you know, pick the most prototypical zeros in this, in this data SE. 104 Vijay Arya (IBM) 00:23:21.500 --> 00:23:41.860 So, which is the most common type of zero that occurs in this data, right? That information if you pick up, right? So you could, you ha, maybe a different runs in your system. Each run gave you different results and so on, but some runs will be very similar. Some runs will be very, very distinct and so on. So out of this entire. 105 Vijay Arya (IBM) 00:23:42.500 --> 00:24:02.340 Set if we could identify like, let's say, you know, K prototypical examples out of it, then that gives insight to the user that okay, these are the top ones in the data set, which are kind of repeating, you know, multiple times, but these are some more like cluster centers you could say, or, you know, just a prototypical Sam. 106 Vijay Arya (IBM) 00:24:02.740 --> 00:24:22.820 The most typical case that occurs, so that is an insight to the user because the user maybe sees one run etcetera, but, you know, over time, multiple users have run different things, the user itself modifies different things if forgets what he has done earlier and so on. So when a lot of this data is available, you could point out. 107 Vijay Arya (IBM) 00:24:23.620 --> 00:24:27.260 Examples and you could also point out criticisms. 108 Vijay Arya (IBM) 00:24:28.580 --> 00:24:49.060 So you could point, so the criticisms will be in the world, it will be in a, what is a weird type of zero that exists in the, in the MNS data set. What is a weird one shape? So here, for example, what is a weird case that existed right? That weird case might end up telling the user that, you know, the model might not work in certain con. 109 Vijay Arya (IBM) 00:24:50.340 --> 00:25:09.540 Such things could such information could be revealed from that, that type of information, perhaps, so that was so that, so here there's a direct application of using mapping the pro problem to a- to such an explanation method, which gives you a typical samples from the. 110 Vijay Arya (IBM) 00:25:11.260 --> 00:25:12.740 This is fine. 111 Martin Foltin (External) 00:25:12.780 --> 00:25:33.220 This is great idea and we should definitely pursue it. We are actually pursuing idea, which is a little bit different, but somewhat similar and that is to find these prototypical samples, rather than from parallel experiments by repeatedly retraining the model by starting with a model that is STRA. 112 Martin Foltin (External) 00:25:33.380 --> 00:25:53.700 From small number of samples and getting from the inference, what that initial model syncs the most party because samples are, and then retraining the model because the concepts that are now observed are not. 113 Martin Foltin (External) 00:25:54.980 --> 00:26:14.180 Completely captured by the previous version of the model and so we are basically interactively retraining the model, like in the active learning type of a loop, adding samples did not only, you know, improve the accuracy and other metrics, but also potentially improve the explainability. 114 Martin Foltin (External) 00:26:14.820 --> 00:26:34.660 Adding samples that the model that the local explainability is the worst read the previous iteration model to improve the locally explainability in the next situation, alongside with other metrics. So in this case we capture with the CMF, the data slices that are. 115 Martin Foltin (External) 00:26:35.940 --> 00:26:55.140 For each successive iteration of these recurrent type of pipeline, now the model is evolving what you are proposing is slightly different because you're kind of proposing to get that view from multiple parallel experiments to understand to give the user idea about. 116 Martin Foltin (External) 00:26:55.140 --> 00:27:16.260 Which concepts are contributing to different metrics and different outcomes, but what we are also doing is to applying it in, in serious to do things like reduce, you know, labeling effort, reduce training time and I think we could potentially extend it along the same way that. 117 Martin Foltin (External) 00:27:16.900 --> 00:27:36.740 Saying to use this data slices and corresponding insights after every iteration to tell the user, why the, the process chose these successive iteration or selection of the samples to get to. 118 Martin Foltin (External) 00:27:37.460 --> 00:27:42.500 More optimal metrics, as well as. 119 Vijay Arya (IBM) 00:27:43.060 --> 00:28:02.980 I mean, yeah, I think you had applied a different levels. Yes, absolutely many if you could do it at a data slice level, etc. That could also be a, because it's a kind of a general approach, so, you know, you could apply, I mean, since I don't know the exact details, you know, of. 120 Vijay Arya (IBM) 00:28:03.820 --> 00:28:17.500 Of CMF, you know, at different points, but, you know, you, since you, you guys are the experts at CMF, this concept could be potentially, you know, applied a different levels in, in CMF I guess. 121 Martin Foltin (External) 00:28:19.620 --> 00:28:31.140 Yeah, but what you are proposing is gonna makes perfect sense. I think to do it based on the parallel experiments and, and get these insights about what clusters contribute to, to. 122 Suparna Bhattacharya (External) 00:28:31.300 --> 00:28:51.620 And I think it's not just about the, I mean, I think it's almost like a meta approach, right? It's really saying that when we are looking at all this metadata and providing an explanation for what happened, whether it's data pipeline stages, I think what Vijay is suggesting is we use the proto, you know, protect and criticism, you know, that. 123 Suparna Bhattacharya (External) 00:28:51.620 --> 00:28:58.020 Approach to come up with maybe those prototypical trajectories in the metadata, right? or... 124 Suparna Bhattacharya (External) 00:28:58.820 --> 00:29:06.540 Prototypical parts and sub- you know, subsets within that, and that will help the explanations of what's going on. 125 Vijay Arya (IBM) 00:29:08.900 --> 00:29:28.100 Yeah, absolutely, yeah, I mean you can apply that trajectory level. Yeah, depending on what kind of lineage data you're collecting, right? For different model, runs et cetera, right? You could, yeah, so that could, this could be one and since there are algorithms which are available, right? 126 Vijay Arya (IBM) 00:29:30.020 --> 00:29:48.580 One simple thing could be to start off with is that, you know, if there is data sets available for this, right, then, you know, we could directly apply, you know, an algorithm, like sixty or even other algorithms available for prototypes, right? You know, and see. 127 Vijay Arya (IBM) 00:29:48.580 --> 00:30:08.820 If, if, you know, one of the, one of the other things that Prodush does, is, it actually captures the diversity as well. So when you typically want Protypical, you want to capture some aspect of diversity and some aspect of commoness, right? So you want to get. 128 Vijay Arya (IBM) 00:30:09.060 --> 00:30:29.540 You want to show to the user that. Okay, even such data set exists and, you know, this other diverse case also exists. So it's a balance of those two things, you know, diversity and communists, so that information could be, could could be sort of a first step for a user. 129 Vijay Arya (IBM) 00:30:31.560 --> 00:30:43.840 Of a lot of metadata that has been collected, you know, for different runs, et cetera in the, by CMF, I guess, right? So that. 130 Vijay Arya (IBM) 00:30:45.240 --> 00:30:56.120 The data set is available could be readily applied and we could check, you know, if the results that the algorithm producing makes sense and, you know, what to do next and, and they could be more things to do. 131 Sourangshu (External) 00:30:56.160 --> 00:30:56.760 I mean. 132 Vijay Arya (IBM) 00:30:56.840 --> 00:31:16.600 It could be also because one aspect is just to show, okay, look, these are the kind of typical runs, but then even to that information itself can be quite large for a user, right? So even to summarize that information, there could be other ways of using the other explainability methods, but this could be a starting point. I think. 133 Suparna Bhattacharya (External) 00:31:16.600 --> 00:31:20.440 So, professor, I'm sure is here he has been his group has been. 134 Suparna Bhattacharya (External) 00:31:22.080 --> 00:31:28.120 Data centric explanations and, you know, maybe other other kinds of techniques also, I mean it's. 135 Sourangshu (External) 00:31:29.040 --> 00:31:29.400 Hi. 136 Sourangshu (External) 00:31:31.320 --> 00:31:41.800 Yeah, yeah, hi everyone. So I... yeah, in the, a few meetings back, I think we, so, so I'm just sharing my screen now. I, I hope that is. Okay. 137 Sourangshu (External) 00:31:43.520 --> 00:31:45.040 Is it visible? 138 Vijay Arya (IBM) 00:31:45.400 --> 00:31:46.520 Yeah. 139 Sourangshu (External) 00:31:48.000 --> 00:32:07.160 So, yeah, so, so thanks Vijay for, you know, Yeah, I was just looking at the excellent world that you guys did with the, the AIEF aix three sixty. So, so I, I sort of... yeah, I, I just jotted down some point. 140 Sourangshu (External) 00:32:07.840 --> 00:32:27.640 About that, and maybe it would be nice to have a discussion, you know, about these points. So basically, yeah, so, so just to make it clear, I mean, I think this is already clear to everyone, but so what our data centric explanation. So these are basically important data points, right? 141 Sourangshu (External) 00:32:27.640 --> 00:32:48.120 As opposed to feature centric explanation. So, so nowadays we are thinking of so many other types of explanations. So one of them, which is which Superna and others talked about are these explanations which are sort of the, the workflow centric Explan. 142 Sourangshu (External) 00:32:49.560 --> 00:33:08.600 But at a very low level, at a very simplistic level one can think of data centric explanations, which are important data points and feature centric explanations, which are important features, right? So, and as I understand AI X three sixty has this protodash algorithm. of course. 143 Sourangshu (External) 00:33:09.360 --> 00:33:29.080 Was talking about, which shows the important data points representing the data points in a test set and the metric used here is maximum main descrepancy, and I'm not sure if so, so. 144 Sourangshu (External) 00:33:29.080 --> 00:33:49.200 So, so then there are obviously ways to sort of change it, you know, to, so, so one can change the representation of a data point to make it work, probably for a particular context, but in general, the. 145 Sourangshu (External) 00:33:49.560 --> 00:33:56.800 The concept of task is not intrinsic probably to the protodation algorithm, if I'm not wrong. 146 Vijay Arya (IBM) 00:33:58.120 --> 00:34:17.720 Metric is, is what is used, right? I mean, and depending on, so when, when we want to say any kind of, so the MO- the equivalent thing is doing some kind of clustering, right? So when we, when we want to show some typical examples, we need to def. 147 Vijay Arya (IBM) 00:34:19.000 --> 00:34:25.399 Any kind of, you know, some kind of distance function between, between the data points that's like the, without that nothing is possible, right? 148 Vijay Arya (IBM) 00:34:26.679 --> 00:34:34.360 So, so once so here MMD metric is used, but depending on the context, I guess different metrics could be used. 149 Vijay Arya (IBM) 00:34:35.280 --> 00:34:52.280 Then in that case, the algorithm will have to be modified because the way because these, these aspects also impact the complexity of the algorithm and how much time and how much computation is required and so on and what kind of, you know, we use a quadratic program solver, but, you know. 150 Vijay Arya (IBM) 00:34:53.040 --> 00:34:54.200 A lot of steps involve. 151 Vijay Arya (IBM) 00:34:56.879 --> 00:35:11.640 I don't know if in the use case that's Supernow was mentioning, you're saying that particular use case, whether so this is what we need to experiment and figure out, you know, if this metric make sense for that use case or, you know, what kind of results are we getting. 152 Sourangshu (External) 00:35:13.400 --> 00:35:20.440 As a thing, it is kind of the obvious thing to try out, right BEC, and that's like, so. 153 Vijay Arya (IBM) 00:35:20.600 --> 00:35:26.760 Would be scope to develop new metrics and, you know, get the algorithm to, you know, work for other. 154 Sourangshu (External) 00:35:26.840 --> 00:35:28.120 Yeah, so we'll come to that. 155 Vijay Arya (IBM) 00:35:28.760 --> 00:35:30.680 That aspect as well. Yeah. 156 Sourangshu (External) 00:35:31.360 --> 00:35:34.560 So basically, so, so, so. 157 Sourangshu (External) 00:35:35.920 --> 00:35:52.440 Like, you already know, obviously, and so another way to talk about this MMD metric is also, you know, the object. So, so this maximum discrepancy is also the objective function in facility location objectives used in. 158 Suparna Bhattacharya (External) 00:35:52.760 --> 00:35:53.720 I mean. 159 Sourangshu (External) 00:35:53.880 --> 00:36:14.200 Kind of similar objective and yes, it is, if, if you want to optimize it, you know, very rigorously, it's kind of expensive. So there are some papers starting with around two thousand seventeen, which have talked about. 160 Sourangshu (External) 00:36:14.840 --> 00:36:34.680 Basically, online, subset selection, which try to approximate this in an online manner and those are probably slightly less expensive and we can go into that, but there is a bit of literature on this site, and we also have some papers. 161 Sourangshu (External) 00:36:35.000 --> 00:36:55.160 Which build on that, and even though we don't explicitly say that we are using MD metric, but we use metric, which is dependent on the, the facility location objective and in our case, what we do is we also learn that metric. So. 162 Vijay Arya (IBM) 00:36:55.240 --> 00:36:59.080 Yeah, yeah, I mean, I mean the, the, to the problem. 163 Vijay Arya (IBM) 00:37:00.520 --> 00:37:07.960 Very different from the K median kind of problem, right? So in facility location, so obviously, yeah, I mean you could. 164 Sourangshu (External) 00:37:08.600 --> 00:37:09.880 But what we do is. 165 Sourangshu (External) 00:37:10.600 --> 00:37:17.560 Learn the distance function. So the objective is Chemedian, but Kedian in which distance function, right? 166 Sourangshu (External) 00:37:18.200 --> 00:37:19.480 We learned. 167 Vijay Arya (IBM) 00:37:20.320 --> 00:37:35.960 Okay, so there at least, like if I set up, you know, the first net comes at top of the head is, you know, yes, I mean these things could be, so one thing that Rodash is good at, right Is to balance this diversity. 168 Vijay Arya (IBM) 00:37:36.800 --> 00:37:44.440 Imagine that there are these different type of clusters in the data so that we do not know about, right? 169 Vijay Arya (IBM) 00:37:45.080 --> 00:37:46.360 So, so. 170 Sourangshu (External) 00:37:46.520 --> 00:37:49.560 As we talk about diversity also, yeah, yeah, yeah. 171 Vijay Arya (IBM) 00:37:49.600 --> 00:37:58.520 Cool, cool, so, yeah, I mean there, I guess there are, yeah, I mean we don't have to be restricted to Prodush, but yes, I mean the same concept could probably be implemented through. 172 Sourangshu (External) 00:37:58.840 --> 00:38:19.000 It's the same concept. So what we are trying to, so I'll come to that. So let me just go through. So, so we'll come to what we mean by that, but yes, at the very basic level, the protodiash algorithm is like the kind of thing that you would want to do and. 173 Sourangshu (External) 00:38:19.040 --> 00:38:39.480 You can make it faster and you can make make it other things, so you can incur. So, so one thing that we are kind of proposing is that can we sort of, you know, bring in the concept of task, which is like the actual AI task that you are doing into this prototype. 174 Sourangshu (External) 00:38:39.520 --> 00:38:59.960 Selection and it's not us, which is doing basically, there have been papers on data valuation, which do this though. Not always be the same objective, but we do it with the same objective. So sim very similar objective as maximum main discrepancy. Yeah, so. 175 Sourangshu (External) 00:38:59.960 --> 00:39:20.440 So, so actually I saw these other methods also for, so I think deep VA is classified under data explanations in the ex- three sixty documentation, but this really learns like. 176 Sourangshu (External) 00:39:21.880 --> 00:39:28.120 Representations and sort of that is useful for visualization is what I could figure out. 177 Vijay Arya (IBM) 00:39:28.320 --> 00:39:44.760 We need to, so here, right, we need to distinguishment two aspects is the availability of an AI model and non- availability of an AI model. So we have data, but have we trained the model to do something? So if we will be useful when we have a model that we have trained. 178 Vijay Arya (IBM) 00:39:45.560 --> 00:40:05.880 For example, we actually train the model on a data. So, so if we have a lot of data and we don't have a definition of what is the, what is the ML problem? We are trying to solve at that time. The PA will not be useful, but if we have a definition of an ML problem that we want to solve at that time, you can use the late interpresentation to, you know. 179 Vijay Arya (IBM) 00:40:07.600 --> 00:40:10.360 Meaningful insights and concepts, et cetera. 180 Vijay Arya (IBM) 00:40:11.160 --> 00:40:31.480 Classified render under data activation because it gives the, IT helps you figure out, you know, what concepts are there and, and we've given a use case there on the, on the medical imaging, you know, let's say somebody's trying to figure out melanoma et cetera and then, you know, the doctor has. 181 Vijay Arya (IBM) 00:40:33.800 --> 00:40:53.000 That, you know, typically, this is how, you know, they would determine if something is cancerous or non- cancer is skin lesions et cetera. So, at that time, how could the, how could we get some concept out of the, out of the images. 182 Vijay Arya (IBM) 00:40:53.920 --> 00:40:58.120 Match that with the concept of the, the domain or the doctor has. 183 Vijay Arya (IBM) 00:40:58.960 --> 00:41:19.240 The model is already trained and therefore you can go to lead into presentation and get some information, so that is the use case for the pay. So in this case, if we, if we have like tons of data on the, on the, let's say on the, on the lineage and, you know, metadata and then somebody actually trains a model to do a particular task. 184 Vijay Arya (IBM) 00:41:19.880 --> 00:41:25.640 Right, let's say I don't know. I mean, there could be some, you actually need to train an AI model there. 185 Vijay Arya (IBM) 00:41:26.960 --> 00:41:33.320 Time you could, you could, you can, you could come back to the data and say, Okay, you can look at the latent presentation, say okay... 186 Vijay Arya (IBM) 00:41:33.960 --> 00:41:37.160 There's some aspects which could, that's the. 187 Sourangshu (External) 00:41:38.440 --> 00:41:47.400 So would it be like, fair to say that this good for like, latent feature visualization? Something like that, right? 188 Vijay Arya (IBM) 00:41:48.680 --> 00:42:08.880 You could not just visualization, but the latent features visualization definitely useful. Yes, but it's beyond that, so it's latent feature. You, you want your latent features to match a concept that a domain expert might know. 189 Vijay Arya (IBM) 00:42:09.800 --> 00:42:10.440 Right? 190 Sourangshu (External) 00:42:11.720 --> 00:42:12.360 So, for example. 191 Vijay Arya (IBM) 00:42:12.640 --> 00:42:24.080 Say that the doctor had a- had a concept, you know, to that, you know, the shape of the. 192 Vijay Arya (IBM) 00:42:26.640 --> 00:42:34.080 An image right, on, on a cancerous skin image, right? It should be a circle out of a certain shape. 193 Vijay Arya (IBM) 00:42:34.760 --> 00:42:39.840 Right, right, that concept needs to match a latent representation. 194 Vijay Arya (IBM) 00:42:41.560 --> 00:42:50.760 Representation matches that concept then yeah, visualization, yes, but it tries to identify different concepts such concepts in the. 195 Sourangshu (External) 00:42:53.360 --> 00:43:10.880 Yeah, late in concepts. Yeah, yeah, yeah, yeah, so right, so yeah, and also there are these two others and I'll not, So, so what I could figure out from this is that. 196 Sourangshu (External) 00:43:13.200 --> 00:43:33.000 Probably currently no methods which are like task specific like what, you know, Vijay, you were saying that the VA can be actually used with a trained AI model kind of thing. So either trained or untrained, you know, so either way, so you can either train the. 197 Sourangshu (External) 00:43:33.280 --> 00:43:53.480 Beforehand or you can train the model and also the train, the explainer along with the model training, either way, like it is task specific, So the PA is, for example, task specific, so it's when you have already AI model, you are trying to find out explanations, but. 198 Sourangshu (External) 00:43:55.040 --> 00:44:13.960 What I could figure out is that currently there are probably no methods which are both task specific and also data centric in the sense that they are giving out important data points and also, you know, taking. 199 Sourangshu (External) 00:44:14.600 --> 00:44:34.120 Of the task at hand, right? And so what I was thinking basically there is this whole class of methods called Data Valuation Methods and there are, so these are not, so these are. 200 Sourangshu (External) 00:44:34.920 --> 00:44:54.920 Published by others, influence functions, data shapely tracking, you would have, I mean, many of you would know about these methods and what happens is these methods can be used for such applications and what here, and we also have some follow- up. 201 Sourangshu (External) 00:44:54.960 --> 00:45:15.400 Methods, which I'm, I'm not going to talk about here because I've already discussed earlier a little bit, but what I wanted to discuss here is like, some, some analysis that can be done if we provide such a functionality and what should to the left, what I am showing here. 202 Sourangshu (External) 00:45:17.320 --> 00:45:36.520 So, so there are- there are some examples which have been selected. So in this case, a lot of examples have been selected, but that's a controllable parameter, so you can only select a few, very few examples and then these examples are selected according to a value function, right? So. 203 Sourangshu (External) 00:45:36.840 --> 00:45:57.000 In this case, the value function happens to be validation errors. So these are the examples which are most important towards reducing validation error in a given validation data set, right? So, so that way this is task specific and here, basically this is from. 204 Sourangshu (External) 00:45:57.880 --> 00:46:17.480 And we are just plotting the classes here. So each dot is an image and the color represents the class and left and right, are two different methods and we are seeing, you know, which method gives importance to training data points from which class, right? 205 Sourangshu (External) 00:46:17.560 --> 00:46:25.320 So this is one kind of analysis that we can do. It's just that in this particular case, we are not. 206 Sourangshu (External) 00:46:27.720 --> 00:46:46.920 Comparing two different models, but comparing two different data valuation methods, but one could imagine, we are doing a similar analysis with two different model and given sort of data valuation method and this is what we mean by supervised data center explanation. So. 207 Sourangshu (External) 00:46:48.200 --> 00:47:07.400 The supervision is kind of coming from the value function, which is that what we are saying is that we want to find important data points, which are important for reducing the validation error, right? So, so that's the, that's. 208 Sourangshu (External) 00:47:08.200 --> 00:47:27.880 And in the middle we are showing the same thing, but with a different value function. here it is randomization error. So what, what we are saying is basically that we have, we have suppose, we have. 209 Sourangshu (External) 00:47:29.160 --> 00:47:32.920 The value function a bit and then. 210 Sourangshu (External) 00:47:34.560 --> 00:47:54.760 Part of the image a bit and then we are saying how, how robust is our classifier to this to this, and that's how we are measuring our error, right? So this is robustness error. Sorry, this should be robustness error and so again, we are showing some selected example. 211 Sourangshu (External) 00:47:54.760 --> 00:48:11.280 Examples, so here we have selected about twenty examples from each of the methods, right? And one can compare and we can also do the same thing, but with selected augmentation. So in case of. 212 Sourangshu (External) 00:48:13.320 --> 00:48:32.520 You know, when we are, when we are training like these robust classifiers, we, we use different types of data augmentations and we are kind of visualizing here, which data augmentation is important. So here. 213 Sourangshu (External) 00:48:33.240 --> 00:48:54.280 This is probably brightness augmentation. This is Zoom blood. This is glass blur, and this is probably impulse noise, right? I n is impulse noise and so on and so forth, and so we are kind of showing the distribution across different. 214 Sourangshu (External) 00:48:54.280 --> 00:49:14.760 Augmentation, so, so my point here is that we can do such analysis with supervised data center explanations, which might be useful in certain context. So yeah, I will be very curious to, you know, for. 215 Sourangshu (External) 00:49:16.800 --> 00:49:18.600 You know what you think. 216 Suparna Bhattacharya (External) 00:49:19.440 --> 00:49:23.080 I think Vijay had to drop off so, you know, he. 217 Suparna Bhattacharya (External) 00:49:24.400 --> 00:49:26.920 Part of it, but the recording will be there. 218 Susan Malaika (IBM) 00:49:27.120 --> 00:49:35.320 So I'll share the recording right away as sooner, which I'll get an hour and I'll share with him, but he may not see it until tomorrow. 219 Sourangshu (External) 00:49:36.520 --> 00:49:42.200 Sure, okay, okay, I will, I will probably, I'll ping him in the Slack or something. 220 Susan Malaika (IBM) 00:49:43.600 --> 00:50:00.360 Although he's not very good at. I don't, I don't see him often on the LFAI Slack, so you may find that difficult. So what I'll do is I'll share the recording with him and I'll send an email as well with you to say that you, you welcome his feedback on this last part of the session. 221 Sourangshu (External) 00:50:00.840 --> 00:50:02.760 Yes, yes, that will be great. Yeah, yeah. 222 Susan Malaika (IBM) 00:50:03.000 --> 00:50:03.400 Okay. 223 Sourangshu (External) 00:50:05.960 --> 00:50:07.920 Okay, I'll stop. 224 Susan Malaika (IBM) 00:50:11.120 --> 00:50:16.920 Are you satisfied with what you've got out of today's call? 225 Suparna Bhattacharya (External) 00:50:18.160 --> 00:50:29.640 Yeah, I think we got some good discussion, Some good ideas for what we could do. I think we have to then maybe figure out what could be the concrete next steps that we could do. 226 Suparna Bhattacharya (External) 00:50:30.520 --> 00:50:40.360 Got some good brainstorming. I don't know, GAB, you, you know, you wanted to be part of the... do you see anything that. 227 Rodolfo Gabe Esteves Intel (External) 00:50:43.220 --> 00:51:03.060 You say a lot of useful, a lot of useful things and this in, in my mind, this is a little bit beyond. So, in, in, in the way, I think about this, like the, the, so we collect, we collect the, the anciliary data to like, how model is. 228 Rodolfo Gabe Esteves Intel (External) 00:51:03.380 --> 00:51:23.540 Or what a pipeline or a pipeline is, is, can be reproduced or can be explained by then with somehow attach this to either pipeline like a serialized version of the pipeline or the model, and then we make this information available in a query, but what this discussion or discussion today has center on is. 229 Rodolfo Gabe Esteves Intel (External) 00:51:23.700 --> 00:51:25.460 What do you do after? 230 Suparna Bhattacharya (External) 00:51:26.420 --> 00:51:26.740 Information. 231 Rodolfo Gabe Esteves Intel (External) 00:51:28.020 --> 00:51:45.300 So in my mind, at least for my purposes, like the main thing is not to interfere or to present the data in such a way that can be consumed by this post process, like post- processing method. 232 Martin Foltin (External) 00:51:47.220 --> 00:52:05.780 Application, which is very related to what Vijay was proposing and that's to help detect the gifts in the model. Let's assume that you have an O and X model and through the metadata you linked it to the lineage. So basically you. 233 Martin Foltin (External) 00:52:06.180 --> 00:52:26.260 To CMF lineage and that CMF lineage also includes references to drift detection models that do capture these concepts. The different clusters in a data that VJ was talking about now you deployed it on the next model in a production, let's say. 234 Martin Foltin (External) 00:52:26.260 --> 00:52:46.740 For industrial quality control and such, and in the production, it runs in a huge volume of data volume of data that includes new concepts, not represented in the training data for that model. So how do you know that the drift occur? Well, the CRF helps you to do is you. 235 Martin Foltin (External) 00:52:47.420 --> 00:53:07.220 Now have the link to what were the concepts in the training data suited lineage that includes not just a references to the model itself, but can be traced to a different, you know, different stage that produces this clusters. This latent representation. 236 Martin Foltin (External) 00:53:07.340 --> 00:53:27.700 And then you can compare the liter presentation to what, what is in your production data and detect the draft. So basically it makes it on, on an X model more robust in a sense because it gives you a direct references to what to do to compare against the new data that high volume of production data, and so you can do it. 237 Martin Foltin (External) 00:53:27.980 --> 00:53:48.180 Draft you can do it for explainability as, as VJ kind of highlighted, and so basically what it gives, the next model is that the linkage to the pipeline that was used to produce that model. In addition to unciliarly in information like that, that abstraction of the data to give you those concepts present in the data, right? 238 Martin Foltin (External) 00:53:48.180 --> 00:54:08.660 And in addition, it can also gives you a link to different variants of the model, maybe that were, that were retrained for different hardware implementations using different quantitizations and such alongside, of course, the metrics that those different adaptation. 239 Martin Foltin (External) 00:54:09.060 --> 00:54:29.140 Different retrainings of the model had in, in a, in different use cases, right? So it kind of gives you that overall view of how the model was prepared wherever the characteristics of the data, so you can compare against true live data during the inference and it gives you also the linkage to how the model actually performs. 240 Martin Foltin (External) 00:54:29.220 --> 00:54:35.300 Different hardware with different quantizations. So it kind of gives you that overall view, you know. 241 Rodolfo Gabe Esteves Intel (External) 00:54:36.820 --> 00:54:56.660 Martin, I was convinced of the value of all these, all this work. I'm doubly convinced now after that, I, I would love to steal your example of, of concept drift if that's okay with you, but I'm, I'm changing the only the proposal to the, to attaching. 242 Rodolfo Gabe Esteves Intel (External) 00:54:57.020 --> 00:55:14.580 Data to add like the, the conversations we had on the Annex committee meet up and follow- ups. So I would, I would, I would love to, to use as a motivating example concept. So, so if, if you don't mind, I'll, I'll steal this. 243 Martin Foltin (External) 00:55:14.580 --> 00:55:20.660 Yeah, yeah, let me talk a little bit internally because there's some other people working on that, but absolutely. 244 Rodolfo Gabe Esteves Intel (External) 00:55:20.980 --> 00:55:22.900 Good, good, thank you. 245 Ali Hashmi (IBM) 00:55:24.300 --> 00:55:39.540 From IBM, I just wanted to jump in Sabana. You were talking about, you know, this is a very good discussion. I absolutely agree, but as far as concrete concrete like next steps, I don't know if we have those. Can I just propose maybe that. 246 Ali Hashmi (IBM) 00:55:41.460 --> 00:55:58.740 A room here to actually start, you know, defining an experiment trying to define, you know, something that we can, you know, proof of concept to try to build perhaps with this integrating all of these pieces together, like. 247 Ali Hashmi (IBM) 00:55:59.500 --> 00:56:19.860 Coming up with something we have excellent use cases on both sides. Now we have to come up with at least one or few perhaps to, to view the, in the nuts and bolts of the integration. I think conceptually, I agree with what Gabe was just saying that, you know, these tools are amazing. I inclu. 248 Ali Hashmi (IBM) 00:56:20.020 --> 00:56:32.660 Myself as among those convinced of their value absolutely, but answering some of these questions might maybe we're now at that stage to try to get something hands on and maybe demonstrate it. 249 Suparna Bhattacharya (External) 00:56:33.340 --> 00:56:49.300 So we have played like we have played with this, you know, as you said, we played with AX three, Sixty and CMF at least recording and, you know, combining that too, and, you know, same, but they have three sixty and maybe something with on, on an X, is that what you're thinking, like, if he. 250 Ali Hashmi (IBM) 00:56:49.380 --> 00:57:09.780 Yeah, even even taking what, you know, taking what you've already gotten underway, you know, bringing it to this group at a more detailed level, so that, all right, we, I don't want to say do a walkthrough. That's a takes a long period of time, but, you know, designating one of these experiments as. 251 Ali Hashmi (IBM) 00:57:11.100 --> 00:57:28.340 Case to demonstrate the utility and integrate well, the ability to integrate these capabilities together. I don't know, I, I feel like that's, maybe we, where we are, there's still a lot of discussion that will be generated by doing such a. 252 Ali Hashmi (IBM) 00:57:29.620 --> 00:57:37.300 But maybe putting something practical in front of all of our eyeballs might help steer the conversation just a thought. 253 Suparna Bhattacharya (External) 00:57:37.420 --> 00:57:41.140 So any ideas on what we should use as a use case. 254 Suparna Bhattacharya (External) 00:57:42.100 --> 00:57:44.340 To really drive that because if we wanted. 255 Suparna Bhattacharya (External) 00:57:45.220 --> 00:57:52.020 Video was saying, right? You need to actually record a lot of metadata and then look at this telling down. 256 Ali Hashmi (IBM) 00:57:52.580 --> 00:57:53.300 That's correct. 257 Suparna Bhattacharya (External) 00:57:55.260 --> 00:57:57.140 Which comes a little further along, right? We. 258 Ali Hashmi (IBM) 00:58:00.180 --> 00:58:20.180 If you run like the next crucial question is, how do we select this? We have to actually define this experiment before even attempting anything, so defining that the nuts and volts of that experiment the use case itself is critical and probably we're talking about multiple use cases to try to highlight certain different things, You know, you have. 259 Ali Hashmi (IBM) 00:58:20.820 --> 00:58:32.980 Structured on structured data who knows that will elevate different aspects of, of all of these frameworks, anyway not that we're gonna accomplish that at the moment. 260 Ali Hashmi (IBM) 00:58:34.300 --> 00:58:54.100 But I think that we're looking towards another working session perhaps along these lines and we have multiple frameworks already on the table CMF aix three hundred sixty on X and really trying to figure out how we can, you know, build something. 261 Ali Hashmi (IBM) 00:58:54.300 --> 00:59:01.660 We'll start to give us an opportunity to ground these discussions, maybe with some practical examples. 262 Suparna Bhattacharya (External) 00:59:03.060 --> 00:59:09.460 Yeah, and maybe the, the larger group can also give us feedback on like you're saying, right? Which examples or what. 263 Suparna Bhattacharya (External) 00:59:10.740 --> 00:59:12.020 So we can do that. 264 Susan Malaika (IBM) 00:59:15.220 --> 00:59:32.500 So how, how would you like to proceed Sapana? Do we need like someone just to propose two options to use cases and then just put that in a Slack channel and maybe. 265 Suparna Bhattacharya (External) 00:59:32.580 --> 00:59:35.700 Yeah, that's a good, good idea. I mean, if people can propose. 266 Suparna Bhattacharya (External) 00:59:36.620 --> 00:59:44.020 Channel, that'll be good. And then we can, when we have the ten minute update at the next call, we can also call for. 267 Suparna Bhattacharya (External) 00:59:44.820 --> 00:59:45.940 Suggestions and change. 268 Suparna Bhattacharya (External) 00:59:46.580 --> 00:59:53.620 We've had these sessions and we have both of these, you know, and now the question is how do we proceed to the next step? 269 Susan Malaika (IBM) 00:59:54.260 --> 01:00:03.980 And, and I think we should encourage people to listen today's recording. I'll try and get that out very quickly because, you know, sort of brought things together. 270 Susan Malaika (IBM) 01:00:06.420 --> 01:00:13.460 It should, I suggest that people listen to one of the earlier on X recordings or do you think this would be enough? 271 Ali Hashmi (IBM) 01:00:14.100 --> 01:00:19.860 It's fire, I'd recommend that. Susan, the, the prior discussions on Alex were also. 272 Ali Hashmi (IBM) 01:00:20.500 --> 01:00:22.420 Yeah, okay, nicely with us. Yeah, that was. 273 Susan Malaika (IBM) 01:00:23.700 --> 01:00:39.820 Okay, I'll do that. Okay, well it was very exciting and sorry, if people were sadly waiting in the waiting room lobby for a bit, I do apologize, but you all need it in and. 274 Susan Malaika (IBM) 01:00:41.100 --> 01:00:49.940 We should any, any other remarks upon her or anyone gave, or anyone else, what's wrong? 275 Sourangshu (External) 01:00:51.720 --> 01:01:00.440 Thanks everyone for your time once again, and yeah, hoping to, you know, interact and if we can do something nice together. 276 Susan Malaika (IBM) 01:01:00.760 --> 01:01:11.560 Yes, yes, but I will tell you in IBM, we seem to be doing double the work. That's why Apple, we're all very rushed. I don't know if you agree Ali in anyone else has left on. 277 Susan Malaika (IBM) 01:01:12.400 --> 01:01:15.400 PM, but like they seem to be working as very hard. 278 Ali Hashmi (IBM) 01:01:19.040 --> 01:01:22.440 Exciting things get capturing or attention enthus. 279 Susan Malaika (IBM) 01:01:23.240 --> 01:01:25.000 Yeah, so, but this is. 280 Ali Hashmi (IBM) 01:01:25.160 --> 01:01:27.560 This is a very worthy one. This is a. 281 Susan Malaika (IBM) 01:01:28.480 --> 01:01:31.400 I agree, but we don't answer quickly it's because. 282 Ali Hashmi (IBM) 01:01:31.480 --> 01:01:32.040 Somehow. 283 Susan Malaika (IBM) 01:01:32.680 --> 01:01:34.600 We worked very hard. 284 Ali Hashmi (IBM) 01:01:36.040 --> 01:01:38.440 I'm, I'm sure if everybody else is as well. 285 Suparna Bhattacharya (External) 01:01:39.800 --> 01:01:40.360 Opportunity. 286 Susan Malaika (IBM) 01:01:43.640 --> 01:01:44.200 Okay. 287 Suparna Bhattacharya (External) 01:01:46.760 --> 01:01:48.680 Okay, thanks, thanks. 288 Ali Hashmi (IBM) 01:01:48.800 --> 01:01:49.320 Everybody. 289 Susan Malaika (IBM) 01:01:49.480 --> 01:01:51.240 Thank you everybody. Thank you.