작성
·
90
·
수정됨
0
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
6장.ipynb 받은 파일에 있는 소스코드로 학습 진행 후, 시각화를 해보는데
결과가 너무 안 좋게 나옵니다...
(위 2회 실행 결과)
6장.ipynb에 따로 코드를 수정하지는 않았고 강의 영상 보면서 순서대로 실행만 시켜본 상태인데..
(추가) 바로 밑에 딥러닝을 적용한 추천시스템 학습에 대한 결과 그래프도 안좋아요.
(추가)딥러닝에 변수 추가하기
어디 잘못된거나, 사전에 뭔가 따로 처리해줘야 하는게 있나요?
답변 2
0
안녕하세요.
죄송합니다. 해당 질문글을 제가 놓쳤네요.
일단 질문에 대한 답변을 드리자면,
해당건은 혹시 이전에 실행한 코드 부분과 혼재가 되어서 혹시나 결과가 안좋게 나올 수 있을 것 같습니다.
그런게 아니라면,
혹시 코드 그대로 한번 올려주실 수 있으실까요?
안녕하세요.
저도 다시 코드 결과를 돌려보니,
학습자님과 동일한 결과가 발생합니다.
이는 최근 TensorFlow나 Keras 라이브러리의 버전이 변경되면서, 내부의 초기 weight 설정 방식, 최적화 함수의 기본 learning rate, 정규화의 기본 강도 등이 바뀐 데에 기인할 수 있습니다.
특히, SGD
옵티마이저나 Embedding
레이어의 초기화 전략은 버전에 따라 수렴 속도나 안정성에 상당한 차이를 만들 수 있어요. 예전에는 잘 작동했던 코드라도, 라이브러리 업데이트로 인해 수렴하지 않거나, 성능이 오히려 퇴화하는 경우가 실제로 발생합니다.
이런 현상은 머신러닝 모델 개발 시 매우 일반적인 경우라,
학습에 대한 플로우정도만 고려해주시면 좋을 것 같습니다.
감사합니다.
알겠습니다. 답변 감사합니다.
라이브러리 버전별로, 내부 라이브러리 작동과 하이퍼 파라미터 등 큰 변화가 생길 수 있으니, 지속적으로 검토해봐야 한다는 내용으로 받아들이고, 말씀하신대로 학습 플로우 일단 이해해보도록 하겠습니다!
혹시 저 코드로 수행하시던 당시에
텐서플로와 케라스 라이브러리 버전을 기억하고 계시다면 알려주실수 있나요?
*추가로
강의 따라 실습 진행중에, 결과가 심히 다르게 나와 잘못한게 있나 여러번 체크하게 되었습니다. 다른 학습자들도 같은 케이스로 혼란스러울 수 있으니, 코멘트 정도 남겨주시면 좋을것 같습니다!
0
위 수행 결과가 나오는 코드입니다.
6장.ipynb 코드 그대로 사용했습니다.
데이터 파일은 강의에서 안내한 경로에서 다운받은, u.data, u.user 파일 그대로 사용했습니다!
학습 진행 중 출력 수치 캡쳐입니다.
***제공 코드를 그대로 사용 했습니다. 약간의 수정한 부분이 있다면,
그래프 시각화 부분에서
학습 결과에서 키값이 소문자로 찍혀서, 대문자로 인식이 안되어 소문자로 수정했습니다.
plt.plot(result.history['RMSE'],label="Train RMSE") plt.plot(result.history['val_RMSE'],label='Test RMSE')
plt.plot(result.history['rmse'],label="Train RMSE") plt.plot(result.history['val_rmse'],label='Test RMSE')