首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于二分类的不平衡训练样本(90%与10%) - Tensorflow

用于二分类的不平衡训练样本(90%与10%) - Tensorflow
EN

Stack Overflow用户
提问于 2018-09-22 02:08:48
回答 1查看 65关注 0票数 0

我有一个100,000的训练样本(有5个特征) (90,000分类为'0‘,其余分类为'1')

我得到了98%的准确率,但精确率/召回率为55%

对提高查准率/召回率有什么建议吗?使用tensorflow

代码语言:javascript
复制
#Loss function after sigmoid applied on yy_
loss = tf.losses.log_loss(yy_, scores, scope="loss")
optimizer = tf.train.GradientDescentOptimizer(learning_rate=.01)
train_op = optimizer.minimize(loss)
prediction = (scores > 0.5)
EN

回答 1

Stack Overflow用户

发布于 2018-09-26 20:59:54

我没有使用过Tensorflow,但这里是我的建议

  1. 当您有不平衡的数据时,不要使用accuracy作为度量。相反,在learning_rate
  2. If上使用confusion matrix
  3. Do超参数调优你太关心正类了,然后使用像Precision, Recall, F1 score这样的指标。你也可以尝试ROC &但你也可以使用这些参数,即使你不太关心正值,因为这些值会给出一些关于模型行为的感觉。如果required.
  4. Remove从data
  5. No Free Lunch .i.e复制,
  6. 会正确处理missing values和标准化数据,没有固定的算法可以解决所有问题。你必须尝试不同的型号。尝试不同的特性等。同样,请确保您在任何可能的情况下都会泄漏数据
  7. Do Feature Engineering。这是

中最重要的部分

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52449043

复制
相关文章

相似问题

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