为什么我们需要不断的开发不同的机器学习模型 —— Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?

 

引用:

作者:xyzh

https://www.zhihu.com/question/26726794/answer/151282052

 

写给懒得看的人:

没有最好的分类器,只有最合适的分类器。

随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。

SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。

神经网络(13.2%)和boosting(~9%)表现不错。

数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。

数据量越大,神经网络就越强。




 -----------------------------------------------------------------

 

 

多年前读书的时候问过师兄这样一个问题,那就是为什么现在已经有了这么多的机器学习模型我们还要继续研究开发新的机器学习模型,这个问题估计也是很多刚接触机器学习的小白会问到的问题,当时师兄给我解释说其实不同的模型对不同的任务和数据其性能表现不同的,我们需要不断的研究新的模型来解决新的任务和数据;这个或许是我最早对这个问题的思考。

 

其实,早就有论文在理论层面给出过解释,那就是每个模型都有“归纳偏置”,即“inductive bias”,说的直白些就是如果一个模型对所有假设都采用同样的偏好,那么这个模型将不具备任何泛化能力,也就是说任何一个模型其实都是有着自身的假设偏好的,这也说明对于一个任务和数据来说不同的模型会有着不同的性能表现的,所以不存在一个适用于所有环境的模型,对于不同的任务都会有更适合的模型。

 

对于传统的机器学习任务来说可供选择的模型还是比较少的,就如论文《Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?》给出的那些算法模型那样,可以说存在某类问题上平均表现最好的模型,但是不存在说某个模型一定在某类问题上比另个模型表现更好。

 

可以说这篇论文《Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?》以实证的角度进行用实验数据说明的方法来解释了这样一个问题,你就是不存在最后的模型算法,只存在最适合的算法模型,这也是为什么存在“算法模型研究”这个方向的原因。

 

 

 

 

==========================================

 

 

论文:

《Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?》

 

 

论文地址:

https://jmlr.org/papers/volume15/delgado14a/delgado14a.pdf

 

 

 

 

 

 

 

 

=============================================

 

 

参考:

https://www.zhihu.com/question/26726794/answer/151282052

https://zhuanlan.zhihu.com/p/25327755

 

 

 

=============================================

 

posted on 2023-10-12 12:03  Angry_Panda  阅读(47)  评论(0)    收藏  举报

导航