以下の内容はhttps://htn20190109.hatenablog.com/entry/2025/11/30/155553より取得しました。


LayerNorm

import torch
import torch.nn as nn

# --- モデル定義 ---
class Model(nn.Module):
    def __init__(self, input_size, hidden_size, output_size):
        super().__init__()
        self.linear1 = nn.Linear(input_size, hidden_size)
        self.layer_norm1 = nn.LayerNorm(hidden_size)
        self.linear2 = nn.Linear(hidden_size, hidden_size)
        self.layer_norm2 = nn.LayerNorm(hidden_size)
        self.linear3 = nn.Linear(hidden_size, output_size)
        self.layer_norm3 = nn.LayerNorm(output_size)
    
    def forward(self, x):
        out = self.linear1(x)
        out = self.layer_norm1(out)
        out = torch.relu(out)
        
        out = self.linear2(out)
        out = self.layer_norm2(out)
        out = torch.relu(out)
        
        out = self.linear3(out)
        out = self.layer_norm3(out)
        return out

torch.manual_seed(42)

# 入力(バッチサイズ: 4, 入力次元: 8)
x = torch.randn(4, 8)

# モデル作成
model = Model(input_size=8, hidden_size=16, output_size=4)

# 順伝播
out = model(x)

print("入力 shape:", x.shape)
print("出力 shape:", out.shape)
print("出力テンソル:\n", out)

 




以上の内容はhttps://htn20190109.hatenablog.com/entry/2025/11/30/155553より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14