Если я выполню прогноз по модели с несколькими категориями, разделятся ли оценки по всем категориям?

Допустим, я создал модель с ~30 элементами для каждой из 10 категорий. Я взял все настройки по умолчанию, которые были предоставлены мне.

Средний балл F1 для модели составляет 0,875 (у меня есть 2 категории, которые очень тесно связаны, так что это немного ухудшает точность).

Если я сделаю прогноз в реальном времени для фрагмента текста, который должен соответствовать положительно для категорий 3 и 8, я получу такой результат:

{
    "Prediction": {
        "details": {
            "Algorithm": "SGD",
            "PredictiveModelType": "MULTICLASS"
        },
        "predictedLabel": "8",
        "predictedScores": {
            "1": 0.002642059000208974,
            "2": 0.010648942552506924,
            "3": 0.41401588916778564,
            "4": 0.02918998710811138,
            "5": 0.008376320824027061,
            "6": 0.009010250680148602,
            "7": 0.006029266398400068,
            "8": 0.4628857374191284,
            "9": 0.04102163389325142,
            "10": 0.01617990992963314
        }
    }
}

Что мне интересно, так это то, что оба из 3 и 8 имели достоверность ~80%, но поскольку они оба соответствовали, достоверность была разделена между двумя. Если вы сложите все predictedScores, вы получаете.999999997, который заставляет меня задаться вопросом, есть ли общий счет 1,0, который распределяется между каждой из доступных категорий...

Если бы я вместо этого установил 10 разных моделей и провел бинарные совпадения с каждой из них независимо, смогу ли я увидеть, что 3 и 8 будут иметь более высокие оценки (например, что-то ближе к 0,8)?

Я предполагаю, что связанный с этим вопрос, на который мне на самом деле не требуется ответ, но который мог бы помочь прояснить общий вопрос, заключается в следующем... Если бы у меня был теоретический фрагмент текста, который определенно соответствовал бы всем 10 категориям, мог бы Amazon Machine Learning ответить с помощью predictedScore значение 1,0 для каждой категории? Или потому что максимум predictedScore равно 1,0, будет ли возвращать 0,1 для каждой категории?

1 ответ

Решение

Amazon ML возвращает вероятности для каждой категории, известной из входного набора. Поскольку они являются истинно смоделированными вероятностями, они должны суммировать до 1. Другими словами, вы правы, когда говорите: "Общая оценка 1,0 делится между каждой из доступных категорий..."

Вот справочная страница, которая отвечает на этот и некоторые другие ваши вопросы: http://docs.aws.amazon.com/machine-learning/latest/dg/reading-the-batchprediction-output-files.html

Другие вопросы по тегам