you're not going to miss this episode of the ai show where tony xing takes us through what's
new to anomaly detector multivariate capabilities make sure you tune in
hello and welcome to this episode of the ai show we're learning all about what's new
in anomaly detector multivariate capabilities tony sheen is with us how you doing my friend want to
tell us who you are and what you do uh very good how are you yes uh so um yeah i am the product pm
of azure cleaning service uh so specifically working on an army detector matrix fighter
fantastic so let's start with for those that don't know what anomaly detector
is can you give us a little bit of an overview of what the service does
yes so anomaly deck there basically is the ai service which help people to
identify the anomaly in the time series data and then so this new capability is actually
advancement of the ai that we could use a group of signal to identify a system level uh issues i
see so so the new stuff so before uh the anomaly detector what it does is it takes a signal of
stuff and it tells you when things are out of the ordinary basically is that right that is correct
fantastic so the new thing multivariable anomaly detection what does that mean yeah multivariate
is basically multiple signals so previously the existing feature basically tell you based on one
single signal and tell you hey there's something goes wrong but there's actually a broader use case
that for example the equipment house you basically you have probably more than 100 signals you need
to make sense of uh and you know let me give you a quick example for example you have a refrigerator
which has three sensors temperature vibration lights but each of those sensors won't tell you
too much about whether that refrigerator is working a healthy mode or not
but holistically if you look at all those sensors together you can pretty much say hey this one is
not working or it's working correctly so that is the basically multivariate anomaly action that's
cool so before the the service would tell you if there was a single signal that was anomalous
but now if you have multiple signals together they can tell you if they're anomalous even though one
of them by themselves might not be anomalous is that right yeah and that is perfect yeah all
right so can you show us how it works sure sure uh so let me switch to the jupiter notebook um
so before i uh you know go to this uh more code level things i just want to
show you the visuals because i know people love visuals and it's more easier to understand
so here is a very simple use case we have five time series and all of them
are pretty much random right so uh if you look at those five signals together so those are
basically some real production signal before taken from some real use case in sensors
if you look at those pretty much you cannot really make sense of those but with the state-of-art ai
we can you know look at these things holistically and use long history to train and to learn what
the normal pattern will be like and then as a result you can see hey you know those uh the
spikes here is basically the output uh generated from this model so those are basically the markers
that we say hey at this time stand uh we see that this group of signal has a problem meaning that
from system level this equipment has a problem and then so this is a pretty much can tell you
uh you know whether a system level there's an issue and you can actually do some fine-tuning
uh with the output for example with the you know the severity parameters
you can tune the model performance and as a result you can see more or less anomaly being marked here
so let me scroll to the top and give you uh overview about the api first
got it yeah so here uh the api so we introduced about seven new apis list models training models
gather model delete model so those things but most important things that so this is a bit
two phase approach right so you first based on the history of the data you train a model
and the training is you basically unsupervised approach uh you don't need a label specifically
so what you uh you know input is a series of time series and then uh
the after the training uh you get a model id and then you can use that model to do the inferencing
and then use the output result to do the uh you know alarm detection and
the not only you get a non-detection result the more beautiful thing is that you also get a you
know the contributor ranking for example that is very useful for example you can say hey you know
we detect this anomaly and we know which sensor is top contributor and how relevant they are
in terms of contributing to these anomalies and in this case it would be instead of a single signal
it's multiple signals i'm looking at the api here and there's a whole new you know rest api for
multivariate so it's multiple signals now that can actually together tell you if there's a problem
that is correct yeah and then to use that this reservoir api is very easy uh so you basically
uh you know create a resource and get your endpoint and get your key and you know after that
so then you can start to use those models so let me just quickly run through
so we have trains on models so previously you can see this run successfully and list all the
models so this is a the result is a little bit messy but uh you know here's the you know the
sample response a more clean structure so you can pretty much see hey this model is created
at this time and what is model id whether it's status and how many variable you know has been
used to train this model so here is 18 variables uh and then after that uh
you can actually do the training so i will not do the training here because this takes some time
um but what it does uh is that it will you know basically taking in a zip file in that zip file
you put that in azure blog and in that zip file you have a bunch of csvs each csv file represent
one variables and then so you basically you know provide those as input of the api and then
this is basically the sample request and as a response you will get a model id you can use
in the future uh you know for the you know status quoring because the model training will take some
time the result itself will you know reply uh back uh with the you know some of the additional
you can use additional api for example this one to get a model status because the training will
take some time can you go back one second i want to i want to see i want to make sure that i'm
understanding it right the part where you submit the model training you're basically giving it a
blob file is that right yes that is correct can you scroll up to that part because i want to make
sure that that everyone sees that part because that's the part that that i was like well how
do you give it all of the data because you it has a bunch of there it is so basically when you post
you're telling it exactly what data you want it to look at and since it's multi-variable you're gonna
have a bunch of series in different csv files that have been zipped up is that is that right
that is very correct okay cool okay cool cause that was a part that was a little confusing to me
initially it's like well how does it get all the data this makes perfect sense i'm sorry keep going
yeah no problem uh so when the training happens you may want to
you know get the status of the training and then you here you use the monitor model status api
and then as a result so here's this is very important this apple id so you will return
from 10 to 100. so this one will pretty much tell you about you know uh what's the percentage
uh this model training are progressing so it's a henry epoch in total so you know use this and the
latency in second you will pretty much predict when this model changing will probably complete
um so once it is complete um you can use that for the inferencing with the you know detection
api so here you are again uh you know use the new data uh you want to inference and put that
in a similar fashion at the blog file uh and then uh you know post that to the inferencing
so now that the model's done if you wanted to actually do the predictions then you give
it another blob file and say hey predict on this new data is that right yeah that is correct cool
and then so the result of this api uh you know it is
a result id the result id uh is the one you will be using uh you know to get
the final detection result the more detailed detection results so this one is uh you know
very useful and interesting because the output of this prediction result
there's a lot of information you can use to do either the visualization and
you know also like i mentioned earlier about the contribution factors uh so for example you know
which variables which sensors actually contribute more to these anomalies and how you rank that
um yeah so this is obviously the you know the response of this this one
and then let me see uh the what is the yeah the uh here in this section the response part is very
most useful part so whether this time stem is an army uh and what is severity what is the raw score
and then you can hear in this part the contribution ranking score you can use to
basically see you know how those variables ranked among this group uh and you can use that as a kind
of um you know root cause analysis because you may want to understand hey this system level
anomalies actually contribute more by these you know vibration sensors that's cool
yeah um yeah so everything else you basically can you know based on all those rich information
to you know do some plot and visualizations so here is obviously we are going back to the
previous visualization i show you at the start of the show and then so here's the basically the
five variables and whether that is the nominee and you know the raw score and the severity
severities yeah so so basically once you send the data the one thing i didn't understand is once
you send the data to do the inference how does the data come back is the data stored somewhere
because i saw the response type and the response type is basically telling you
where the anomalies are and that's what you're plotting there at the bottom is that right
yeah that is right i all the information are in the response body got it this is cool so who's
used is there anybody using this and how is it working for them right it's a great information
a great question so we have in our prior preview working with some of the well-known companies like
siemens airbus so they have done the early piloting so everything looks good and they
have you know very accurate result for example siemens use that in uh medical equipment testing
uh you know their scenario is pretty much you know in pre-production they do intensive testing on
their you know machines and then you can imagine on that machine there's a lot of sensors so uh you
they use that sensor data to make sense of whether you know this equipment is uh good too good to go
or not uh airbus uh you know is in a similar uh scenarios for example there's uh you know
potentially hundreds of signals from satellite or you know the air airplanes so they are you know
doing these predicted maintenance uh things through the multivariate anoma detection
well this is really cool where can people go to find out more
um yeah so there's uh we have a few links uh you know posted here so people can read blogs
and you know find out additional information about how to write code and you know how to
uh construct a more complicated solution out of it well this has been awesome my friend uh
thanks so much for spending some time with us and thank you so much for watching we're
learning about all about what's new to anomaly detector multivariate capabilities thank you
so much thank you so much for watching and hopefully we'll see you next time take care
you