采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师能问一个现实应用中的问题吗,在项目中,给出一组数据后,经过预处理后,一般是线性、非线性的模型都拟合下试试分数怎么样吧?那在使用多项式回归模型时不确定degree,是用网格搜索先随便在经验值附近试试吗?而且针对数据的n个特征,如何确定对哪1个或几个特征进行多项式回归呢?
说实话,在实际应用中,在我看来,多项式回归使用的是最少的。我并不习惯使用多项式回归。因为:
1)多项式特征(近乎)完全没有语意。
2)如果特征本身已经很多,多项式回归的特征数将进一步指数级增长。
除非你的特征数比较少,可以尝试一下多项式特征。(比如iris的数据集,这个数据集的数据语意信息,让维度比较低的多项式特征拥有一定的语意。)否则,我不认为多项式特征那么有意义。
是的,再具体调参的时候,使用网格搜索就ok。通常在实际中,degree取的也不会太大,个人认为1-3足以。再高极有可能是过拟合。不过整体,对于任何算法的任何参数的调整,在使用网格搜索的时候,都涉及参数范围选择的问题,通常是先粗后细,逐渐细化获得最终的参数值:)
至于特征选择,多项式回归通常就用全特征。无用的特征在线性回归的过程中,权值会被分配的比较少(在线性回归的假设下。)当然,如果你对特征的语意很清晰,了解某些特征的多项式组合更有可能产生具有更高贡献的特征的话,就去使用他们。这里,我必须强调一下,理解你所需要分析的数据极度重要。很多重要决策都是建立在对自己的数据的理解的基础上的。我们所做的很多分析,探索,本质也是帮助我们更好的理解我们的数据:)
当你面对实际的机器学习问题的时候,你就会意识到:数据的多少和质量,以及特征工程,是极度重要的。请再回忆一下这个课程初始介绍的“没有免费午餐的定理”。更多分析可以参考这里:https://coding.imooc.com/learn/questiondetail/40722.html 注意我在最后说的Kaggle冠军的例子:)
你前面提到的模型选择问题,更多分析可以参考这里:
https://coding.imooc.com/learn/questiondetail/43808.html
加油!:)
登录后可查看更多问答,登录/注册
Python3+sklearn,兼顾原理、算法底层实现和框架使用。
2.5k 19
3.5k 17
3.0k 15
1.6k 15
1.5k 14