borch

배우기 · 3

모듈

nn.Module 이 파라미터를 들고 순방향을 안다. 이름은 torch 의 것이고, 다른 것은 model.call(x) 로 부른다는 것뿐이다 — 자바스크립트는 객체를 그냥 부를 수 없다.

층 하나

nn.Linear(in, out)weight(출력, 입력) 이다. torch 와 같은 배치라 체크포인트가 전치 없이 건너간다.

쌓기

nn.Sequential 이 모듈을 잇는다. parameters() 는 옵티마이저가 밟아야 할 텐서를 모은다 — 거기 빠진 파라미터가 있으면 학습은 돌고 그 층만 안 배운다. 예외는 안 난다.

직접 만들 때

nn.Module 을 물려받고 forward 를 쓴다. 직접 만든 파라미터는 claim 으로 세워야 parameters() 에 나온다 — 안 하면 조용히 안 배우므로, 밑 클래스가 그것을 말하게 한다.

손실

손실도 같은 이름 공간에 있고 부르는 꼴도 같다. CrossEntropyLoss 는 logits 와 int64 정답을 받는다 — torch 와 똑같이, 원-핫이 아니다.