小编gra*_*uit的帖子

'EarlyStopping'对象没有属性'on_train_batch_begin'

我想在训练模型时保存最佳检查点,但是回调无法按我预期的那样工作。根据在Keras中保存最佳模型,此代码应该有效。

model = Sequential()
model.add(Conv1D(filters=32, kernel_size=8, input_shape=(X_train.shape[1], 4)))
model.add(MaxPooling1D(pool_size=4))
model.add(Flatten())
model.add(Dense(16, activation='relu'))
model.add(Dense(2, activation='softmax'))

model.compile(loss='binary_crossentropy', optimizer='adam', 
              metrics=['accuracy'])
model.summary()

stop = EarlyStopping(monitor='val_loss', patience=15, verbose=1, mode='min')
save = ModelCheckpoint('./my_model.hdf5', save_best_only=True, monitor='val_loss', mode='min')
reduce_lr = ReduceLROnPlateau(monitor='val_loss', factor=0.1, patience=10, verbose=1, epsilon=1e-4, mode='min')

history = model.fit(X_train, y_train, epochs=25, verbose=0, callbacks=[stop, save, reduce_lr], validation_split=0.25)
Run Code Online (Sandbox Code Playgroud)

但是它不断给我以下错误:

AttributeError                            Traceback (most recent call last)
<ipython-input-28-f86f439eae5a> in <module>()
     17 reduce_lr_loss = ReduceLROnPlateau(monitor='val_loss', factor=0.1, patience=7, verbose=1, epsilon=1e-4, mode='min')
     18 
---> 19 history = model.fit(X_train, y_train, batch_size=batch_size, epochs=50, verbose=0, callbacks=[earlyStopping, …
Run Code Online (Sandbox Code Playgroud)

python-3.x deep-learning keras

6
推荐指数
1
解决办法
5149
查看次数

如果一行的长度小于数字,则追加到其上一行

我有一个如下所示的文件:

ABCDEFGH
ABCDEFGH
ABC
ABCDEFGH
ABCDEFGH
ABCD
ABCDEFGH
Run Code Online (Sandbox Code Playgroud)

大多数行的固定长度为 8。但中间有一些行的长度小于 8。我需要一行简单的代码,将这些短行中的每一行附加到其前一行。

我尝试过以下代码,但在处理大文件时会占用大量内存。

cat FILENAME | awk 'BEGIN{OFS=FS="\t"}{print length($1), $1}' | tr 
'\n' '\t' | sed 's/8/\n/g' | awk 'BEGIN{OFS="";FS="\t"}{print $2, $4}'
Run Code Online (Sandbox Code Playgroud)

我期望的输出:

ABCDEFGH
ABCDEFGHABC
ABCDEFGH
ABCDEFGHABCD
ABCDEFGH
Run Code Online (Sandbox Code Playgroud)

bash

5
推荐指数
2
解决办法
703
查看次数

标签 统计

bash ×1

deep-learning ×1

keras ×1

python-3.x ×1