【发布时间】:2016-05-04 08:29:08
【问题描述】:
我正在使用 h2o 对数据进行异常检测。数据包含几个连续的分类特征,标签可以是 0 或 1。现在,因为 1 的计数小于 1%,我正在尝试异常检测技术,而不是使用通常的分类方法。但是,最后我得到了每行数据的 MSE,我不确定如何解释它才能说实际标签为 0,但因为它是异常情况,应该为 1。
我目前使用的代码:
features <- names(train.df)[!names(train.df) %in% c("label")]
train.df <- subset(train.df, label==0)
train.h <- as.h2o(train.df)
mod.dl <- h2o.deeplearning(
x=features,
autoencoder=TRUE,
training_frame=train.h,
activation=c("Tanh"),
hidden=c(10,10), epochs=20, adaptive_rate=FALSE,
variable_importances=TRUE,
l1=1e-4, l2=1e-4,
sparse=TRUE
)
pred.oc <- as.data.frame(h2o.anomaly(mod.dl.oc, train.h.oc))
head(pred.oc):
Reconstruction.MSE
1 0.012059304
2 0.014490905
3 0.011002231
4 0.013142910
5 0.009631915
6 0.012897779
【问题讨论】:
标签: r deep-learning h2o