机器学习数据处理与模型选择全流程指南
1. 数据预处理基础
1.1 稀疏矩阵与类别编码
在处理数据时,我们可能会遇到稀疏矩阵,它大部分元素为零,但使用方式和普通二维数组类似。若要将其转换为密集的 NumPy 数组,可调用 toarray() 方法,示例如下:
>>> housing_cat_1hot.toarray()
array([[1., 0., 0., 0., 0.],
[1., 0., 0., 0., 0.],
[0., 0., 0., 0., 1.],
...,
[0., 1., 0., 0., 0.],
[1., 0., 0., 0., 0.],
[0., 0., 0., 1., 0.]])
我们还可以通过编码器的 categories_ 实例变量获取类别列表:
>>> cat_encoder.categories_
[array(['<1H OCEAN', 'INLAND', 'ISLAND', 'NEAR BAY', 'NEAR OCEAN'],
dtype=object)]
当分类属性有大量可能的类别时,独热编码会产生大量输入特征,可能会减慢训练速度并降低性能。此时,可将分类输入替换为与类别相关的有用数值特征,例如用与海洋的距离替换
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



