기본 콘텐츠로 건너뛰기

라벨이 MSELoss인 게시물 표시

[matplotlib]quiver()함수

torch.nn 클래스와 신경망모형

내용 layer building 비선형과 다중 모델 layer building 선형모델의 layer는 nn.Linear 클래스를 사용하여 구축합니다. nn.Linear에 대한 생성자는 입력 특성의 수(feature #), 출력의 수(label #), 선형 모델에 편향이 포함되는지 여부(여기서 기본값은 True)의 세 가지 인수를 허용합니다. nn.Linear(input_size, output_size, bias=True) True는 default import numpy as np import torch import torch.nn as nn x=torch.rand((3, 1)) x tensor([[0.9445], [0.1129], [0.4799]]) model=nn.Linear(1,1) model(x) tensor([[0.2996], [0.5595], [0.4448]], grad_fn=< AddmmBackward >) 위 코드는 torch.nn 클래스 객체(model)를 생성한 것입니다. 그 모델의 인수로서 입력인자 x를 전달한 과정입니다. 신경망에서 순전파(forward)과정입니다. 일반적으로 클래스는 model.forward(x)와 같이 그 클래스의 메서드를 호출한 후 사용합니다. 그러나 위의 경우는 메소드의 호출 과정이 생략되었습니다. 오히려 메소드의 호출은 에러를 발생합니다. y=model.forard(x) : Error 발생 y=model(x) : Right 이것은 nn 클래스에 포함된 __call__ 특벌메소드에 기인합니다. 이 메소드는 지정된 클래스 객체를 자동으로 호출하게합니다. 생성된 모델의 매개변수(들)은 model.parameters() 클래스를 사용하여 호출할 수 있습니다. 또는 가중치와 편차를 각각 wight , bias 속성을 사용하...