Blocuri Complete de Transformare: nn.TransformerEncoder și Layer în PyTorch & Deep Learning Practic

Sintaxă & invocare Python
encoder = nn.TransformerEncoder(encoder_layer, num_layers=6)

PyTorch oferă implementări native complete ale arhitecturii standard Transformer. Clasa nn.TransformerEncoderLayer grupează un mecanism de atenție multi-head (nn.MultiheadAttention), o rețea feed-forward densă, conexiuni reziduale și straturi de LayerNorm.

import torch
import torch.nn as nn

# Definirea unui singur strat encoder cu activare GELU
encoder_layer = nn.TransformerEncoderLayer(
    d_model=512,
    nhead=8,
    dim_feedforward=2048,
    activation="gelu",
    batch_first=True,
    norm_first=True  # Arhitectură Pre-LN pentru stabilitate la scară
)

# Stivuirea a 6 straturi identice
transformer_encoder = nn.TransformerEncoder(encoder_layer, num_layers=6)

# Secvență de intrare: (Batch=4, Lungime=50, D_Model=512)
tokens = torch.randn(4, 50, 512)
encoded = transformer_encoder(tokens)
print("Ieșire Encoder:", encoded.shape)  # torch.Size([4, 50, 512])

Opțiunea norm_first=True (Pre-LayerNorm) este standardul actual în modelele lingvistice mari, facilitând propagarea gradientelor fără a necesita rate mici de învățare la debut.

Învață AI • Comunitate & Q&A

Întrebări & Exemple practice: Blocuri Complete de Transformare: nn.TransformerEncoder și Layer

Ai o întrebare despre Blocuri Complete de Transformare: nn.TransformerEncoder și Layer sau ai descoperit un truc, prompt sau fragment de cod util? Distribuie-l cu ceilalți membri ai comunității!

🤖

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau resurse pentru această pagină. Dacă ai testat un prompt sau ai un snippet util, adaugă-l mai jos pentru comunitate.

Comunitate AI Adaugă o întrebare sau distribuie un cod / prompt

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.