关于本节课程开始的第三个assert 我认为应该是X_train.shape[1]==x.shape[1]

来源:4-2 scikit-learn中的机器学习算法封装

慕田峪8518916

2018-01-05

shape[1]应该查询的是列数才对啊(即特征数),如果是x.shape[0]那不就是查询的是目标点的个数吗?

写回答

2回答

liuyubobobo

2018-01-05

在这一小节这里的小x传进去的是一个向量也就是只代表一个样本。这个函数是通过X_train和y_train的信息判断一个样本x所属的类别。因此x的shape只有一个元素所以是x.shape[0]。


不过在这个课程的后面我们会按照sklearn的接口定义改成传入的是一个大X


在这个课程中编码规范上小写字母变量均表示一维向量大写字母变量均表示二维矩阵。所以我们叫大X_train因为是一个矩阵小y_train因为y是一个向量

1
0

神经旷野舞者

2018-01-31

觉得x可以理解为列向量吧,然后shape0就是行数,shape1就是列数,这样就对应起来了。

老师说的是一维向量只有一个元素,所以是shape0

0
0

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5839 学习 · 2437 问题

查看课程