Как получить оценку прогноза в HttpResponseMessage, предоставляемом веб-службой Azure ML?

Поэтому в настоящее время я работаю над экспериментом машинного обучения Azure. Я смог создать модель и опубликовать ее как веб-сервис. Я также смог получить ответ, используя образец кода запроса/ответа на C#, представленный в документации API, которая была создана при создании веб-службы.

Моя проблема в том, что ответ, предоставленный веб-службой, содержит много информации (длинную строку информации), включая оценку прогноза, которая является единственным, что мне нужно для моего приложения C#. Единственное, что приходит на ум, это использовать методы манипулирования строками, чтобы извлечь нужную мне информацию. Но я думаю, что есть лучший способ, чем этот. Я новичок в HTTP-запросе/ответе, поэтому, пожалуйста, разработайте ответы и пояснения по этому поводу.

Вот мой код:

HttpResponseMessage response = await client.PostAsJsonAsync("", scoreRequest);

if (response.IsSuccessStatusCode)
{
    string result = await response.Content.ReadAsStringAsync();
    Console.WriteLine("Result: {0}", result);
}

else
{
    Console.WriteLine(string.Format("The request failed with status code: {0}", response.StatusCode));

    // Print the headers - they include the requert ID and the timestamp, which are useful for debugging the failure
    Console.WriteLine(response.Headers.ToString());

    string responseContent = await response.Content.ReadAsStringAsync();
    Console.WriteLine(responseContent);
}

Вот ответное сообщение:

{"Results":{"output1":{"type":"table","value":{"ColumnNames":["clump_thickness","size_uniformity","shape_uniformity","marginal_adhesion","epithelial_size","bare_nucleoli","bland_chromatin","normal_nucleoli","mitoses","Scored Labels","Scored Probabilities"],"ColumnTypes":["Int32","Int32","Int32","Int32","Int32","Nullable`1","Int32","Int32","Int32","Double","Double"],"Values":[["10","10","4","8","1","8","3","10","1","1","0.979712069034576"],["10","10","4","8","1","8","3","10","1","1","0.979712069034576"]]}}}}

Мне нужно только значение в «Значениях»:[[...]], в данном случае это 9-й индекс или «1».


person Harvey Oroceo    schedule 22.02.2016    source источник


Ответы (2)


Вам необходимо использовать столбцы проекта в эксперименте по борьбе с отмыванием денег. В настоящее время у вас есть модуль, подключенный к выходу веб-службы. Используйте модуль project columns перед web service output, чтобы выбрать только столбцы, которые вы хотите вместо этого отправить на наш вывод.

person Dan Ciborowski - MSFT    schedule 22.02.2016
comment
О да, эта мысль промелькнула у меня в голове. Спасибо! Это решает мою проблему. - person Harvey Oroceo; 23.02.2016

Кроме того, вы можете снять отметку с свойства «добавлять столбцы» модуля оценки, как показано ниже. Затем будут генерироваться только метки и столбец вероятности.

Модуль оценки только с метками оценок и вероятностями

person neerajkh    schedule 23.02.2016