我正在构建一个 NLP 应用程序。我的数据集有 0.6M 数据点,每个 0.15M 维度。我的特征向量是高度稀疏的——在任何特征向量中大部分是 0,最多 20 个 1。我在 AWS 上使用 32 GB 的机器。
由于大小,无法在内存中一次性加载整个数据集。我正在寻找一个基于 python 的神经网络库,它支持(如果不是全部,那么至少有一些)以下[由于数据集的大小和维度,我定义了下面提到的能力]:
- 能够在小批量上训练网络
- 能够利用底层多核架构的库(如果可用)
- 一种直接以压缩表示形式提供特征向量的方法(如 scipy.sparse)[在我的情况下
我仔细查看了以下库 - PyBrain、Pylearn2、NeuroLab、FANN。据我了解,它们都没有任何所需的能力(Pybrain 有助于批量学习。即使这需要接近 55 小时)。
有什么建议 ?(不能减少维度)或者如果我的理解存在缺陷并且上述任何库都具有(某些)上述功能,您能否指出一些实现/利用相同功能的示例代码?