【发布时间】:2021-03-22 13:45:42
【问题描述】:
这是我使用 conv1d 的模型
模型有一个 5000 类所以,我如何使用 tensorflow 或 keras 创建图层 如果我增加 epoch,我的系统就会被加载并挂起。在这里我应用了亚当优化器和 mean_square_error 损失函数,所以我得到了非常低的精度。我该如何解决 ''' 时代 = 3 batch_size = 35
model = Sequential()
print(x_train.shape[1],1)
model.add(Conv1D(16, 3, padding='same', activation='relu', input_shape=(128,1)))#x.shape[1:])) # Input shape: (96, 96, 1)
model.add(MaxPooling1D(pool_size=1))
model.add(Conv1D(32, 3, padding='same', activation='relu'))
model.add(MaxPooling1D(pool_size=1))
model.add(Dropout(0.25))
model.add(Conv1D(64, 3, padding='same', activation='relu'))
model.add(MaxPooling1D(pool_size=1))
model.add(Conv1D(128, 3, padding='same', activation='relu'))
model.add(MaxPooling1D(pool_size=1))
model.add(Conv1D(256, 3, padding='same', activation='relu'))
model.add(MaxPooling1D(pool_size=1))
# Convert all values to 1D array
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.2))
model.add(Dense(5823))
##checkpointer = ModelCheckpoint(filepath='checkpoint1.hdf5', verbose=1, save_best_only=True)
# Complie Model
model.compile(optimizer='adam', loss='mean_squared_error', metrics=['accuracy'])
history=model.fit(x_train, y_train_binary,
batch_size=batch_size,
epochs=epochs,
verbose=1,
validation_data=(x_test, y_test_binary))
'''
【问题讨论】:
-
嗨,请问您能告诉输入的大小吗?这是什么类型的数据,你想预测什么?
-
写下有关数据的更多详细信息。一个建议是删除所有打印语句并使用 model.summary() 来获取模型层和编号。每一层的参数与输入和输出数据的形状。 model.summary() 将非常有帮助。至于损失函数,使用分类交叉熵进行多类分类。对于 5000 多个课程,请确保您有足够的数据以获得不错的准确性。
-
我是从图像中提取数据的。数据集有 128 列和 16000 行
标签: python python-3.x tensorflow keras deep-learning