我正在尝试使用Keras和TensorFlow建立我的深度学习模型。我的模型需要输入一个矩阵作为特征。
矩阵太大,无法装入内存。但是,幸运的是,矩阵非常稀疏。所以我用scipy.sparse.dok_matrix()
来存储它。
问题是Keras不支持稀疏矩阵作为输入(也许TensorFlow可以吗?)。我在互联网上进行搜索,找到了解决此问题的一些方法,就像这样一个Keras, sparse matrix issue。它使用.todense()
函数将稀疏矩阵转换为密集矩阵。
但是这些解决方案只是愚蠢的。它们实际上是“伪解决方案”,因为如果我可以将稀疏矩阵的密集版本放入内存中,为什么还要使用稀疏矩阵?
那么有人对这个问题有“真正的解决方案”吗?