首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >一种具有近机会最优性能问题的机器学习算法

一种具有近机会最优性能问题的机器学习算法
EN

Data Science用户
提问于 2020-06-25 12:50:19
回答 2查看 105关注 0票数 2

我刚开始机器学习,所以我将用两个例子来总结我的问题,而不需要技术(因为我不能)。

狗和猫分类的例子是可以解决的,因为人类可以肯定地告诉你它是狗还是猫。许多机器学习算法能够复制人类的性能,并且几乎可以肯定地识别狗或猫。

对于我的问题,没有确定性,只有一个略好于随机预测。我正试图预测最近从监禁中释放出来的人是否会在明年内犯罪。假设再犯的可能性是50/50。如果我能用机器学到的东西比随机预测稍微好一点,那对我来说将是一场巨大的胜利。更具体地说,如果50/50是随机猜测,那么如果我能达到55%60%的成功率,那就被认为是非常成功的。

我知道这个任务是可能的,因为我使用了一个数据集(大约有50个特性和10万个观察)来建立一个“人工”线性回归,从样本中获得了大约52%的结果。

我尝试过SKLearn的logistic回归和XGBoost,但它们的性能都低于我的man-made尝试。我认为这是因为这些算法并不是为了处理大多数随机事件的预测。

考虑到我所处理的是一个大部分是随机事件的预测,而且我只希望获得比随机预测略好的结果,那么有什么机器学习算法/策略可以推荐来最好地解决这个问题吗?

EN

回答 2

Data Science用户

发布于 2020-06-25 18:46:58

很抱歉,这不是一个具体的答案,但我可以提供一些建议。

听起来你有很多脆弱关系的问题。在这种情况下,我认为xGBoost或RandomForest会产生比Logistic回归更好的结果。

另外,请记住,预处理数据和创建新功能可能比选择不同的算法更有帮助。考虑将分类变量编码为数字的不同选项。查看python的category_encoders,并尝试离开-一出、响应编码和其他。考虑一下您对丢失数据的估算策略--使用-99999来处理缺失可能对xgBoost很好,但在回归时不会很好地工作。考虑使用日志丢失作为优化度量,或者至少使用AUC。(不仅是准确性)

最重要的是--看看你能不能找到更多的数据。例如-

  • 加入其他免费提供的数据:也就是说,如果你的数据有邮政编码,你能通过压缩加入经济数据来增加更多的功能吗?
  • 利用你“忽略”的数据:即你有自由形式的文本数据吗?尝试使用TF将其解析为稀疏矩阵。

最后,xGBoost模型的整体表现是否很差,还是它们对你的表现过于合适,表现不佳?寻找诸如CrossFold验证之类的技术。

票数 1
EN

Data Science用户

发布于 2020-06-25 13:39:49

听起来你有很好的数据-- 50列和100,00行!

我会做探索性数据分析(EDA),并寻找变量(列)是相关的响应变量(重犯),但没有相互关联。如果你能找到其中的几个(~10),那么你就可以建立一个很好的回归模型。

其他尝试的技术可以包括随机森林和聚类分析。这两者都可以在Python中快速完成,因此您可以比较许多不同的超参数迭代。

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

https://datascience.stackexchange.com/questions/76658

复制
相关文章

相似问题

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