首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何评价R中的多项式分类模型?

如何评价R中的多项式分类模型?
EN

Stack Overflow用户
提问于 2017-04-22 07:59:33
回答 1查看 1.9K关注 0票数 1

我目前正试图建立一个多类预测模型来预测26个英文字母中的字母。目前,我已经建立了几个模型,使用神经网络,支持向量机,集成和nB。但我仍然坚持评估这些模型的准确性。虽然混乱矩阵向我展示了字母表的正确和错误的预测,我只能得到每个模型的整体准确性。是否有一种方法来评估模型的准确性,类似于二项式分类的ROC和AUC值。注意:我目前正在使用H2o包运行模型,因为它节省了更多的时间。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-22 19:21:49

一旦您在H2O中训练了一个模型,如果您只需要:print(fit),它将向您展示该模型类型的所有可用指标。对于多类,我推荐h2o.mean_per_class_error()

R虹膜数据集上的代码示例:

代码语言:javascript
复制
library(h2o)
h2o.init(nthreads = -1)

data(iris)
fit <- h2o.naiveBayes(x = 1:4, 
                      y = 5, 
                      training_frame = as.h2o(iris), 
                      nfolds = 5)

一旦您拥有了模型,我们就可以使用h2o.performance()函数来评估模型的性能,以查看所有指标:

代码语言:javascript
复制
> h2o.performance(fit, xval = TRUE)
H2OMultinomialMetrics: naivebayes
** Reported on cross-validation data. **
** 5-fold cross-validation on training data (Metrics computed for combined holdout predictions) **

Cross-Validation Set Metrics: 
=====================

Extract cross-validation frame with `h2o.getFrame("iris")`
MSE: (Extract with `h2o.mse`) 0.03582724
RMSE: (Extract with `h2o.rmse`) 0.1892808
Logloss: (Extract with `h2o.logloss`) 0.1321609
Mean Per-Class Error: 0.04666667
Hit Ratio Table: Extract with `h2o.hit_ratio_table(<model>,xval = TRUE)`
=======================================================================
Top-3 Hit Ratios: 
  k hit_ratio
1 1  0.953333
2 2  1.000000
3 3  1.000000

或者您可以查看特定的度量,比如mean_per_class_error

代码语言:javascript
复制
> h2o.mean_per_class_error(fit, xval = TRUE)
[1] 0.04666667

如果要查看测试集的性能,则可以执行以下操作:

代码语言:javascript
复制
perf <- h2o.performance(fit, test)
h2o.mean_per_class_error(perf)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43556802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档