Mecanismul de Hooks permite atașarea unor funcții回调pe orice modul neuronal sau tensor individual pentru a inspecta sau modifica activările (în timpul forward pass) sau gradientele (în timpul backward pass).
import torch
import torch.nn as nn
activari = {}
def hook_captura(module, input, output):
activari["iesire_strat"] = output.detach().clone()
model = nn.Sequential(nn.Linear(10, 20), nn.ReLU(), nn.Linear(20, 2))
# Înregistrare hook pe primul strat Linear
handle = model[0].register_forward_hook(hook_captura)
# Forward pass normal
x = torch.randn(1, 10)
_ = model(x)
print("Activare capturată:", activari["iesire_strat"].shape)
# Deconectare hook după utilizare
handle.remove()
Hooks-urile sunt esențiale pentru extragerea hărților de activare în Grad-CAM, analiza valorilor intermediare în interpretarea modelelor și depanarea gradientelor nule.
Întrebări & Exemple practice:
Inspectarea Activărilor și Gradientelor cu Forward și Backward HooksAi o întrebare despre Inspectarea Activărilor și Gradientelor cu Forward și Backward Hooks 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.