如果我针对具有多个类别的模型进行预测,那么得分是否在所有类别中分开?

时间:2016-12-10 23:37:23

标签: amazon-machine-learning

假设我已经为10个类别中的每个类别创建了一个包含约30个项目的模型。我已经采用了提供给我的所有默认设置。

该模型的平均F1分数是0.875(我有两个非常密切相关的类别,因此有点伤害准确性。)

如果我对一个应该与第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&两者都有效率约为80%,但因为它们两者的确定性相互匹配。如果你对所有predictedScores求和,你会得到.999999997,这让我质疑是否有1.0分在每个可用类别中得分......

如果我改为设置10个不同的模型,并且每个模型独立进行二元匹配,我会看到3& 8会得分更高(例如接近0.8)?

我想一个相关的问题,我不是真的需要回答,但可能有助于澄清整体问题,是......如果我有一个绝对适合所有10个类别的理论文章,可以亚马逊机器学习每个类别的predictedScore值为1.0?或者,因为最大predictedScore是1.0,每个类别会返回0.1吗?

1 个答案:

答案 0 :(得分:2)

Amazon ML返回输入集中已知的每个类别的概率。因为它们是真实的建模概率,所以它们必须总计为1.换句话说,当你说"总共1.0得分在每个可用类别中分开时,你是正确的...&# 34;

以下是一个参考页面,可以回答这个以及您的其他一些问题: http://docs.aws.amazon.com/machine-learning/latest/dg/reading-the-batchprediction-output-files.html#interpreting-the-contents-of-batch-prediction-files-for-a-multiclass-classification-ml-model