System information
- OS version/distro: .Net 4.8
- .NET Version (eg., dotnet --info): ML.Net 1.5.1
Issue
-
What did you do?
I called LocalizeRootCause with a RootCauseLocalizationInput that included an aggregation symbol and dimension values of type long.
-
What happened?
I got no root cause results. I get results when the dimension values are strings.
-
What did you expect?
I expected to get some results based on earlier prototypes using this dataset.
Source code / logs
Please paste or attach the code or logs or traces that would be helpful to diagnose the issue you are reporting.
Repro: RCARepro.zip
Below I have two different RootCauseLocalizationInputs as json strings
Returned no results
private static string jsonT =
@"{
""AnomalyTimestamp"": ""1998-02-02T00:00:00"",
""AnomalyDimension"": {
""[__Sandbox.Customers.ContactTitle__]"": -1
},
""Slices"": [
{
""TimeStamp"": ""1998-02-02T00:00:00"",
""Points"": [
{
""Value"": 16387.5,
""ExpectedValue"": 2187.2416694295504,
""IsAnomaly"": true,
""Dimension"": {
""[__Sandbox.Customers.ContactTitle__]"": 54
},
""Delta"": 14200.25833057045
},
{
""Value"": 723.15,
""ExpectedValue"": 800.1415610472596,
""IsAnomaly"": false,
""Dimension"": {
""[__Sandbox.Customers.ContactTitle__]"": 34
},
""Delta"": -76.99156104725967
},
{
""Value"": 17110.65,
""ExpectedValue"": 2193.535,
""IsAnomaly"": true,
""Dimension"": {
""[__Sandbox.Customers.ContactTitle__]"":-1
},
""Delta"": 14917.115000000002
}
]
}
],
""AggregateType"": 0,
""AggregateSymbol"": -1
}";
Returned results
private static string jsonString =
@"{
""AnomalyTimestamp"": ""1998-02-02T00:00:00"",
""AnomalyDimension"": {
""[__Sandbox.Customers.ContactTitle__]"": ""-1""
},
""Slices"": [
{
""TimeStamp"": ""1998-02-02T00:00:00"",
""Points"": [
{
""Value"": 16387.5,
""ExpectedValue"": 2187.2416694295504,
""IsAnomaly"": true,
""Dimension"": {
""[__Sandbox.Customers.ContactTitle__]"": ""54""
},
""Delta"": 14200.25833057045
},
{
""Value"": 723.15,
""ExpectedValue"": 800.1415610472596,
""IsAnomaly"": false,
""Dimension"": {
""[__Sandbox.Customers.ContactTitle__]"": ""34""
},
""Delta"": -76.99156104725967
},
{
""Value"": 17110.65,
""ExpectedValue"": 2193.535,
""IsAnomaly"": true,
""Dimension"": {
""[__Sandbox.Customers.ContactTitle__]"":""-1""
},
""Delta"": 14917.115000000002
}
]
}
],
""AggregateType"": 0,
""AggregateSymbol"": ""-1""
}";
static void Main(string[] args)
{
var mlContext = new MLContext(0);
var rcaInputString = JsonConvert.DeserializeObject<RootCauseLocalizationInput>(jsonString);
var rcaInputLong = JsonConvert.DeserializeObject<RootCauseLocalizationInput>(jsonLong);
// one root cause item returned
var rcaString = mlContext.AnomalyDetection.LocalizeRootCause(rcaInputString).Items.OrderByDescending(e => e.Score).ToList();
// no root cause items returned
var rcaLong = mlContext.AnomalyDetection.LocalizeRootCause(rcaInputLong).Items.OrderByDescending(e => e.Score).ToList();
}
System information
Issue
What did you do?
I called LocalizeRootCause with a RootCauseLocalizationInput that included an aggregation symbol and dimension values of type long.
What happened?
I got no root cause results. I get results when the dimension values are strings.
What did you expect?
I expected to get some results based on earlier prototypes using this dataset.
Source code / logs
Please paste or attach the code or logs or traces that would be helpful to diagnose the issue you are reporting.
Repro: RCARepro.zip
Below I have two different RootCauseLocalizationInputs as json strings
Returned no results
Returned results