【发布时间】:2017-02-21 11:16:31
【问题描述】:
正如标题所说,我在训练数据上使用fit_transform 和CountVectorizer .. 然后我只在测试数据上使用tranform ... 这会给我与使用@ 相同的效果吗987654324@ 仅用于训练数据,tranform 仅用于测试数据?
【问题讨论】:
标签: python scikit-learn
正如标题所说,我在训练数据上使用fit_transform 和CountVectorizer .. 然后我只在测试数据上使用tranform ... 这会给我与使用@ 相同的效果吗987654324@ 仅用于训练数据,tranform 仅用于测试数据?
【问题讨论】:
标签: python scikit-learn
如果您只在训练数据上使用fit 而在测试数据上使用transform,您将不会得到正确的结果。
当在训练数据上使用fit_transform 时,这意味着机器正在从特征空间中的参数中学习,同时也在变换(缩放)训练数据。另一方面,您应该只在测试数据上使用transform,以根据从训练数据中学习到的参数对其进行缩放。
【讨论】:
答案是是:
fit_transform 等价于fit 后跟transform,但实现效率更高。 See documentation
fit 和 fit_transform 都使您的分类器适合您的数据集。然后,您可以使用相同的分类器来转换任何其他数据集(在您的情况下为测试集)。
【讨论】:
transform 从原始训练数据生成测试特征吗?还是应该只使用fit_transform 的结果作为训练和测试功能?
transform() 方法转换您的test_train