2入力モデル
データの準備ができたら、いよいよ2入力のモデルアーキテクチャを構築します!そのために、次のメソッドを持つモデルクラスを用意します。
.__init__():レイヤーをまとめてサブネットワークを定義します。ここで2つの入力を処理するための2つのレイヤーと、各クラスに対する分類スコアを返す分類器を定義します。forward():それぞれの入力を対応する事前定義のサブネットワークに通し、出力を連結してから分類器に渡します。
torch.nn はすでに nn としてインポートされています。さっそく始めましょう!
この演習はコースの一部です
PyTorchによる中級ディープラーニング
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
class Net(nn.Module):
def __init__(self):
super().__init__()
# Define sub-networks as sequential models
____ = ____(
nn.Conv2d(1, 16, kernel_size=3, padding=1),
nn.MaxPool2d(kernel_size=2),
nn.ELU(),
nn.Flatten(),
nn.Linear(16*32*32, 128)
)
____ = ____(
nn.Linear(30, 8),
nn.ELU(),
)
____ = ____(
nn.Linear(128 + 8, 964),
)