• 카테고리

    질문 & 답변
  • 세부 분야

    딥러닝 · 머신러닝

  • 해결 여부

    해결됨

model.get_weights() 반환되는 가중치의 구조는?

19.10.20 08:31 작성 조회수 611

0

한가지 더 궁금한 점이 있습니다.

model.get_weights() 반환되는 가중치의 구조는 어떻게 될까요?

model.summary()에서 모델이 2개라서

len(model.get_weights())하면 가중치와 바이어스가 각각 들어가나 해서 '2'를 예상했는데

'4'가 반환되는데, 반환된 가중치 shape가 어떻게 된 걸까요? 

답변 2

·

답변을 작성해보세요.

0

안녕하세요? 답을 드리려고 보니 스스로 찾아내셨네요. 대단하십니다!

들으셨겠지만 '케라스 Summary 사용하기'에 보면 Parameter세는 법이 나와 있고

이걸 이해하면 하신 것 처럼 출력해보면 아실 수 있습니다. 

나중에 학습 후 history객체도 비슷한 방식으로 추적해 보시면 다양한 값을 참조할 수 있습니다.

감사합니다.

0

ecomarine님의 프로필

ecomarine

질문자

2019.10.20

model.get_weight()[0][0] ~ [3] 까지 해보니

(784, 512)  (512, )  (512, 10)  (10, )

따라서 레이어 순서대로 각 레이어별 가중치, 바이어스가 각각 나타나네요.

dense_1에 가중치 shape는 784, 512

                       바이어스 shape는 512

dense_2에 가중치  shape는 512, 10

                       바이어스는 10

질문하고 나서 다시 해보니 알게되었습니다. 다음에는 안까먹께네요.