如何解决在构建具有文本和分类特征的模型时,什么时候执行train_test_split?
我正在尝试训练一个结合了数字,分类和文本特征的模型。 我的问题是要向量化我的文本和分类特征,应该执行以下哪一项操作?
- 出于特征矢量化的目的,即使用
train
和cv
,test
,我将数据分为vectorizor.fit(train)
,vectorizor.transform(cv)
和vectorizor.transform(test)
/ li> - 在整个数据上使用
vectorizor.fit
transform
我的目标是hstack(以上所有功能)并应用 NaiveBayes 。我想我应该在此之前将数据拆分为train_test,以便为NB找到最佳的超参数。
请对此发表一些想法。我是数据科学的新手。
解决方法
如果您要为数据拟合诸如Imputer或Standard Scaler之类的数据,我建议在拆分后执行此操作,因为这样可以避免任何测试数据集泄漏到训练集中。但是,应该能够在整个数据集上安全地完成数据的格式化和简单转换,一键编码之类的事情,并且避免了一些额外的工作。
,我认为您应该在整个数据上使用第二个选项,即vectorizer.fit_transform,因为如果您之前拆分过数据,则可能会发生某些正在测试的数据可能不在训练中的情况,因此在某些情况下,某些类可能无法识别
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。