我想用keras训练一个神经网络,但是训练没有开始,而且它发生在非常奇怪的情况下。在
以下是我的部分代码:model = Sequential()
model.add(Convolution2D(8, 7, 7, border_mode='valid', input_shape=(1, 31, 31), activation='tanh'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Convolution2D(16, 5, 5, border_mode='valid', activation='tanh'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Convolution2D(32, 3, 3, border_mode='valid', activation='relu'))
model.add(Flatten())
model.add(Dense(23))
model.add(Activation('tanh'))
model.add(Dropout(0.1))
model.add(Dense(11))
model.add(Activation('sigmoid'))
model.add(Dropout(0.1))
model.add(Dense(1))
model.add(Activation('sigmoid'))
optimizer = SGD(lr=0.01, decay=1e-6, momentum=0.9, nesterov=True)
print("optimizer done")
model.compile(loss='binary_crossentropy', optimizer=optimizer)
print("compile done")
sys.stdout.flush()
model.fit(dataset, labels, batch_size=batch_size, nb_epoch=nb_epoch, shuffle=True, validation_split=0.1, verbose=2)
如果我在终端中使用python mynn.py运行这段代码,一切都会很好,培训就开始了。在
但是如果我在终端中使用python mynn.py &,python mynn.py > results.txt,或者如果我重定向代码sys.stdout = open('Outputs.txt', 'w')中的输出,那么fit方法的程序会暂停,所以学习不会开始。显示compile done,但没有其他内容,没有训练。在
我看了一下,程序似乎一直在调用这个函数clock_gettime(CLOCK_MONOTONIC_RAW, {,}) = 0
你知道为什么当我重定向输出时它不启动吗?在
博主使用Keras训练神经网络,代码在终端正常运行时训练能开始,但重定向输出后,fit方法程序暂停,训练无法开始,程序似乎一直在调用clock_gettime函数,博主寻求重定向输出时训练不启动的原因。
2157

被折叠的 条评论
为什么被折叠?



