我在 R 中构建了一个多类 SVM 模型,并使用从 azure 创建 R 模型模块来训练和预测我的测试数据集。这是教练和分数 R 脚本。
培训师 R 脚本:
library(e1071)
features <- get.feature.columns(dataset)
labels <- as.factor(get.label.column(dataset))
train.data <- data.frame(features, labels)
feature.names <- get.feature.column.names(dataset)
names(train.data) <- c(feature.names, "Class")
model <- svm(Class ~ . , train.data)
分数 R 脚本:
library(e1071)
classes <- predict(model, dataset)
classes <- as.factor(classes)
res <- data.frame(classes, probabilities = 0.5)
print(str(res))
print(res)
scores <- res
请注意,在我的代码中,我对概率值进行了硬编码以简化代码。
这是我在 Azure 中的组件设计:
当我运行实验时,所有组件都工作正常。但是,在评分模型中,评分数据集端口不显示预测值。它仅显示测试数据集中的特征值。我检查了Score 模型的输出日志,我可以看到该模型很好地预测了测试数据(注意我在 Scores R 脚本中添加了打印命令)。但这还不够,我需要从分数模型返回的预测,以便我可以通过 API 传递它。
有没有人遇到过这个问题?