PyTorchでニューラルネットワークモデルを作成する方法は何ですか?

PyTorchでニューラルネットワークモデルを作成する際には、通常、torch.nn.Moduleクラスを継承したカスタムクラスを定義する必要があります。以下は簡単な例です:

import torch
import torch.nn as nn

class SimpleNN(nn.Module):
    def __init__(self):
        super(SimpleNN, self).__init__()
        self.fc1 = nn.Linear(784, 128)  # 定义一个全连接层
        self.relu = nn.ReLU()  # 定义一个激活函数
        self.fc2 = nn.Linear(128, 10)  # 定义另一个全连接层

    def forward(self, x):
        x = self.fc1(x)
        x = self.relu(x)
        x = self.fc2(x)
        return x

上記の例では、私たちは2つの全結合層と1つのReLU活性化関数を含む単純なニューラルネットワークモデルSimpleNNを定義しました。__init__メソッドはモデルの構造を定義するために使用され、forwardメソッドはモデルのフォワードプロパゲーションプロセスを定義するために使用されます。

このモデルを使用するには、オブジェクトをインスタンス化して入力データを渡し、フォワードプロパゲーション計算を行います。

model = SimpleNN()
input_data = torch.randn(1, 784)  # 创建一个输入数据张量
output = model(input_data)  # 进行前向传播
print(output)

PyTorchで簡単なニューラルネットワークモデルを作成することができます。より複雑なモデル構造やフォワードプロセスを定義することも可能です。

bannerAds