machine-learning - 如何将此 keras cnn 模型转换为 pytorch 版本

标签 machine-learning keras artificial-intelligence pytorch conv-neural-network

这是我想要转换为 pytorch 的示例 keras 代码。我的输入数据集是 10000*1*102 (标签的二维)。该数据集包含 10000 个样本。每个样本包含一行 102 个特征。我正在考虑使用 1dcnn 进行回归。

PS:超参数(例如过滤器、kernel_size、stride、padding)可以根据我的 10000*1*102 数据集进行调整。

model = Sequential()
model.add(Conv1D(filters=64, kernel_size=3, activation='relu', input_shape=(n_timesteps,n_features)))
model.add(Conv1D(filters=64, kernel_size=3, activation='relu'))
model.add(Dropout(0.5))
model.add(MaxPooling1D(pool_size=2))
model.add(Flatten())
model.add(Dense(100, activation='relu'))
model.add(Dense(n_outputs, activation='softmax'))

最佳答案

欢迎使用 pytorch。 :) 我真的很高兴您决定从 Keras 切换到 PyTorch。对于我来说,这是更详细地了解神经网络如何工作的重要一步。如果您对代码有任何具体问题或者代码无法正常工作,请告诉我。

import torch.nn as nn
a0 = nn.Conv1D(n_timesteps, 64, 3)
a1 = nn.Relu()
b0 = nn.Conv1D(64, 64, 3)
b1 = nn.Relu()
c0 = torch.nn.Dropout(p=0.5)
d0 = nn.MaxPool1d(2)
e0 = nn.Flatten()
e1 = nn.Linear(32*n_timesteps,100)
e2 = nn.Relu()
e3 = nn.Linear(n_outputs)
f0 = nn.Softmax(dim=1)

model = nn.Sequential(a0,a1,b0,b1,c0,d0,e0,e1,e2,e3,f0)

关于machine-learning - 如何将此 keras cnn 模型转换为 pytorch 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60172607/

相关文章:

machine-learning - sklearn 中的哪些预测模型受训练数据框中列顺序的影响?

tensorflow - tf.space_to_depth() 如何在 tensorflow 中工作?

python - 数组相等但视觉上不一样

python - 处理回归(机器学习)中特征的未分配(空)值?

machine-learning - 关于数据挖掘的基本查询

python - 如何从语料库或查询中获取SentenceTransformer词汇?

algorithm - 区域覆盖的波前算法

machine-learning - 如何处理不代表数量的数字

python - 从history.history Keras顺序绘制模型损失和模型准确性

python - Tensorflow Adam 优化器 vs Keras Adam 优化器