请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

训练数据集就是模型?还是kNN是模型?

5a708b89d815d.png

又对这几个说法比较奇怪,怎么训练集就是红色模型,感觉k邻近算法这个过程才是红色模型,然后predict就是把输入样例带进去求到的?

那个蓝色的机器学习算法是不是可以去掉,不是说训练数据集送给fit训练后得到模型,然后模型根据输入样例再进行predict?

正在回答

2回答

liuyubobobo 2018-01-31 02:24:42

在这里,“模型”是一个名词。如你所说,房价预测中,求出的f(x)这个函数就是一个模型,本质其实是一系列theta值;

predict是动作,他的输入是新的样本信息,输出是结果。在房价预测中,把一个新的房产信息x代入f(x)中,计算出f(x)的最终结果,求出具体的预测房价,这个过程就是predict做的事情。


同理,对kNN算法来说,predict的定义是一样的,输入的是新的样本信息,输出的是预测结果。对于kNN来说,中间的计算过程就是把这个新的样本信息和原来的所有样本进行比较得到k近邻最终投票得出结果的过程。原来的训练样本改变了,最终计算的结果就有可能改变。所以原来的训练样本是我们计算的依据,可以把他们看作是“模型”。


在kNN算法中,蓝色的部分确实可以去掉,不过在这里,为了保持我们后面学习的所有的算法的一致性,保留蓝色的部分:)


2 回复 有任何疑惑可以回复我~
  • 提问者 神经旷野舞者 #1
    有些明白了,老师特别提到的theta参数,让想到一个强行类比的解释,就是房价里的模型是一组theta参数,每个参数可以理解为一个点虽然是一维的,predict就是这一组点作用在x上经过函数计算得到的值。
    而knn模型的话是训练集,也正好是一组点,而求临近点的过程也类比为这一组点的一个函数。
    
    蓝色的机器学习算法目前感觉不到必要性,因为模型有了,数据有了,剩下的不就是训练等结果了吗?算法好像没存在的位置了。可能等学到后面就可以理解了
    回复 有任何疑惑可以回复我~ 2018-01-31 02:51:58
  • liuyubobobo 回复 提问者 神经旷野舞者 #2
    赞!依然是,kNN算法比较特殊,蓝色的部分可以没有。依然以房价预测为例,模型的那组theta值是靠输入的训练数据集计算得到的,这个计算过程就是蓝色的机器学习算法做的事情:)
    回复 有任何疑惑可以回复我~ 2018-01-31 03:00:44
  • 提问者 神经旷野舞者 回复 liuyubobobo #3
    感觉比较神奇这个训练集又用来做生成模型,又用来训练模型。发现这个theta既然已经通过算法求到了,那不就不用训练了,模型已经出来了?
    回复 有任何疑惑可以回复我~ 2018-01-31 03:11:36
提问者 神经旷野舞者 2018-01-30 23:40:58

补充下,就是比如预测房价里面,假如f(x)就是训练后的模型,输入x得到预测值predict f(x)。对应过来,kNN的模型是不是也应该包含了计算最近距离排序得到标签那一部分操作,然后输入x到这个模型得到预测值1,而不仅仅是训练集?

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信