
346
2
fastai 애플리케이션 계층 이해하기
self.y_range = y_range
def forward(self, x):
users = self.user_factors[x[:,0]]
movies = self.movie_factors[x[:,1]]
res = (users*movies).sum(dim=1)
res += self.user_bias[x[:,0]] + self.movie_bias[x[:,1]]
return sigmoid_range(res, *self.y_range)
그리고
DotProductBias
를 활용해서 학습을 진행하여 앞 절에서와 같은 결과를 얻을 수 있는
지 확인합니다.
model = DotProductBias(n_users, n_movies, 50)
learn = Learner(dls, model, loss_func=MSELossFlat())
learn.
fit_one_cycle(5, 5e-3, wd=0.1)
epoch train
loss valid
loss time
0 0
.
962146 0
.
936952 00
:
14
1 0
.
858084 0
.
884951 00
:
14
2 0
.
740883 0
.
838549 00
:
14
3 0
.
592497 0
.
823599 00
:
14
4 0
.
473570 0
.
824263 00
:
14
이번에는 모델이 무엇을 학습했는지를 확인해보겠습니다. ...