这个问题的目标是:由于我是我们小组中唯一的“机器学习人员”,我想得到一个局外人的看法,这是一个理智的检查,我所做的是否至少坚持‘体面的实践’在机器学习(我知道它不是最佳实践:)。
问题设置:我正在研究生物医学信号的分类任务(从血压以外的生理信号中检测高血压)。由于我没有太多高质量的标签数据来训练一个强大的分类器(比如一个更大的conv-net),所以目前我的步骤如下:
现在,由于我目前没有足够的高质量标签,我需要尽快发布一些分类器(另外,由于它是一个医学应用程序,我非常关心稳定性和某种程度上的可解释性),我想我可以选择手动构建的专家系统,即一些基于规则的系统(如果-否则),根据学习到的随机森林或决策树分类器使用最相关的特性。对于功能的裁剪,我可以使用单个决策树学到的值。此外,我将从一个学习的决策树开始,并调整它(因为一些学到的分裂是完全没有意义的,也就是说,我们处于过度适应的状态)。
问题:只要我在看不见的数据上测试我的(手工制作和机器学习启发的)分类器,这个过程好吗?我很高兴听到你在类似情况下的经历!
谢谢
发布于 2019-05-23 16:01:16
我做过一次,和你的一样。
我的限制是,
传统上,这是由专家系统完成的,因此,培训决策树基本上只是进一步的一步。
在我看来,所有的工作都是用Python完成的。我尝试了一些ML模型,有和没有手工制作的特性。一个决策树的性能几乎与我尝试过的任何东西一样好,并且性能优于手工构建的专家系统。然后,我为树中的每个拆分创建了一个“推断模型”,其形式是if-语句,以确认性能与决策树本身相等。我甚至手动忽略了一些低熵分裂,或者没有充分利用单个特性,发现对于相同数量的分支,一棵更大的经过训练的树手动保留更少的节点,比我复制它的一棵小树的性能要好。
其中的一些分裂是不直观的,但这在一定程度上是向它扔模型的意义。一定要深入挖掘每一种选择的失败模式,以帮助每一个参与其中的人对你的工作有信心。
考虑到这些限制因素,这是解决问题的一个很好的办法。
https://datascience.stackexchange.com/questions/52441
复制相似问题