采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
我理解参数学习和非参数学习的区别是有没有预设数据符合某个函数,参数学习最重要就是训练得到这个函数的相应参数,之后预测的过程就只是将数据和参数代入函数得到预测值。而非参数则各有不同,像是KNN的训练只是把训练数据集存储下来,而决策树的训练过程就是构建一颗二叉树的过程,之后的预测就把预测的数据代入二叉树找到其应该所在的叶子节点。
我的疑惑就在于决策树训练过程中所构建的这颗二叉树里面本身就包含了很多参数,比如每个非叶子节点上的划分值,既然有参数为什么不叫参数学习呢。
如你所说,参数学习和非参数学习的关键区分是:数据是否符合某个预设的函数。这个函数长什么样子,是在看到数据之前就确定了的。
在你后面的叙述中,相当于再说决策树的这个树结构就是这个函数。你这么理解没有问题(恩深就拓展了数学中的“函数”的概念)。但关键在于,这个函数是什么样子(这棵树的形态),是不能提前确定的?
在决策树算法中,这个树的形态,是有可能根据数据而发生变化的。数据不同,这棵树的深度,每个节点左右子树的形态,都会发生变化。注意,我在强调结构的变换,而不仅仅是每个节点上参数的变化。
而相对应的,参数学习的模型结构是固定的,比如线性回归,就是 y = theta * x + b,这个“结构”是在看数据之前就能确定的。数据只决定了其中的参数的大小。
继续加油!:)
登录后可查看更多问答,登录/注册
Python3+sklearn,兼顾原理、算法底层实现和框架使用。
3.3k 19
4.3k 17
3.7k 15
2.1k 15
2.0k 14
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号