将Pytorch的数据加载器和转换与sklearn一起使用

s5a0g9ez  于 2022-11-31  发布在  其他
关注(0)|答案(2)|浏览(354)

我一直在使用pytorch,并习惯了他们的数据加载器和转换,特别是当涉及到数据扩增,因为他们是非常用户友好和易于理解。
但是,我需要从sklearn运行一些ML模型。
有没有办法使用pytorch的数据加载器进行sklearn?

niwlg2el

niwlg2el1#

是的,你可以。你可以用sklearnpartial_fit方法来做这件事。请阅读这里。
6.1.3.渐进式学习
最后,对于3.我们在scikit-learn中有许多选项。尽管所有算法都不能增量学习(即,无需一次查看所有示例),实现partial_fit API的所有估计器都是候选估计器。实际上,从小批量示例中增量学习的能力(有时称为“在线学习”)是核外学习的关键,因为它保证在任何给定时间主内存中只有少量的示例。平衡相关性和内存占用量批处理可能涉及一些调优[1]。
然而,并不是所有的算法都能做到这一点。
然后,可以使用pytorchdataloader对数据进行预处理,并将其批量提供给partial_fit

v1l68za4

v1l68za42#

我最近偶然发现了skorch库,它可以帮助你。
“skorch的目标是让PyTorch和sklearn一起使用成为可能.“
来自skorch文档:
skorch.dataset.Dataset(X, y=None, length=None)可与PyTorch DataLoader结合使用的通用数据集 Package 器。
我想你可以使用Dataset类来 Package 你的PyTorch DataLoader,并使用sklearn模型。如果你想使用其他的PyTorch特性,比如PyTorchTensor,你也可以这样做。

相关问题