python - 使用 Python 和 Keras 的 CNN

标签 python keras conv-neural-network

我是机器学习和 Keras 的新手。我用 Keras 制作了一个用于回归的神经网络,如下所示:

model = Sequential()
model.add(Dense(57, input_dim=44, kernel_initializer='normal', 
activation='relu'))
model.add(Dense(45, activation='relu'))
model.add(Dense(35, activation='relu'))
model.add(Dense(20, activation='relu')) 
model.add(Dense(18, activation='relu'))
model.add(Dense(15, activation='relu'))
model.add(Dense(10, activation='relu'))
model.add(Dense(5, activation='relu'))
model.add(Dense(5, activation='relu'))
model.add(Dense(1, activation='linear'))

我的数据经过预处理后有 44 个维度,所以请给我一个例子,我如何制作 CNN。

最初看起来像这样:https://scontent.fskp1-1.fna.fbcdn.net/v/t1.0-9/40159383_10204721730878434_598395145989128192_n.jpg?_nc_cat=0&_nc_eui2=AeEYA4Nb3gomElC9qt0kF6Ou86P7jidco_LeHxEkmCB0-oVA9YKVe9VAh41SF25YomKTqKdkS96E18-sTCBidxJdbml4OV7FvFuAOWxI4mRafQ&oh=e81f4f56ebdf15e9c6eefbb078b8a982&oe=5BFD4157

最佳答案

卷积神经网络在这种情况下不是最佳选择。顺便说一句,您可以使用 Conv1d 轻松完成此操作:

model = keras.Sequential()
model.add(keras.layers.Embedding(44, 100))
model.add(keras.layers.Conv1D(50, kernel_size=1, strides=1))
model.add(keras.layers.GlobalAveragePooling1D())
# model.add(keras.layers.Dense(10, activation=tf.nn.relu))
model.add(keras.layers.Dense(1, activation=tf.nn.sigmoid))

关于python - 使用 Python 和 Keras 的 CNN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52036950/

相关文章:

python - 有没有办法为 pandas groupby 对象保留每个组的子集?

python - Keras CNN 图像和内核大小不匹配,即使在图像转换以适应后也是如此

python - 如何在单独的python脚本中使用经过python训练的模型

python - 我如何编写装饰器来将某些内容包装在带参数的上下文管理器中?

python - Docker 上的 Airflow 出现错误 "ModuleNotFoundError: No module named ' google' "

python - 在 Keras 中使用 Adam 优化器恢复训练

keras - 使用 Keras 预训练的 InceptionV3/Xception 模型时预测不正确

python - 使用 keras 自定义层时构建错误

python - 在 Keras 中获得预测

python - 如何找到非卷积模型tensorflow python的概率