Programmation pour lâIA
Pour comprendre un peu mieux comment autograd
fonctionne, on va sâintĂ©resser au circuit suivante :
Ici seuls a et b ont explicitement été
marqués comme requires_grad=True.
Ătant donnĂ©e un jeu de donnĂ©es \(S = \{(x_1,y_1),\dots,(x_n,y_n)\}\). Proposez une mĂ©thode en Pytorch pour trouver de bonnes valeurs \(a,b,c\) telles que \(y = ax^2+bx+c\) pour \(S\).
On considĂšre le code suivant :
import torch.nn as nn
m = nn.Sequential(
nn.Linear(3,2),
nn.ReLU(),
nn.Linear(2,1),
nn.Sigmoid()
) x que
m.forward(x) peut prendre en entrée ?list(m.parameters()) retourne :[Parameter containing:
tensor([[ 1, 0, 2],
[ 1, 1, 0]], requires_grad=True),
Parameter containing:
tensor([-1, 1], requires_grad=True),
Parameter containing:
tensor([[0.5, 2]], requires_grad=True),
Parameter containing:
tensor([-2], requires_grad=True)]Que renvoie m(t) si t est :