Python 稀疏矩阵与keras
我知道这类问题已经得到了回答(或),但所有答案对我都不适用: 我的X是一个大小为5000的向量 <每一个席是一个稀疏矩阵的大小(19000,42) y是大小为5000的向量,每个yi是大小为190000的向量(稀疏) 我得到了这个错误:Python 稀疏矩阵与keras,python,deep-learning,keras,sparse-matrix,Python,Deep Learning,Keras,Sparse Matrix,我知道这类问题已经得到了回答(或),但所有答案对我都不适用: 我的X是一个大小为5000的向量
ValueError: Error when checking model input: expected timedistributed_input_1 to have 3 dimensions, but got array with shape (191483, 42)
谢谢你的帮助你能澄清一下其他答案是如何对你不起作用的吗?因为上一个问题的问题是处理一个大的稀疏矩阵。我的问题是不同的,因为每个矩阵不是很大,但是5000的向量很大,我必须将每个矩阵转换成稀疏矩阵来存储它。你的问题是不同的,因为错误是关于输入形状,而不是输入是稀疏矩阵。
def build_model():
model = Sequential()
model.add(TimeDistributed(Dense(1, bias=0, W_regularizer=regularizers.l1(0.01)), input_shape=(191483, 42)))
model.add(Activation("softmax"))
model.compile(loss="categorical_crossentropy", optimizer="adam", metrics=["accuracy"])
return model
print ('load model')
model = build_model()
def batch_generator(X, y):
for i in range(len(X)):
X_array = X[i].toarray()
y_array = y[i].toarray()
yield (X_array,y_array)
model.fit_generator(generator=batch_generator(X, y), samples_per_epoch=10000, nb_epoch=10)
ValueError: Error when checking model input: expected timedistributed_input_1 to have 3 dimensions, but got array with shape (191483, 42)