본문 바로가기
Programming/Deep learning

Weight 초기화를 잘해보도록 합시다.

by OKOK 2018. 1. 17.

4가지 문제중에 하나가 초기값을 멍청하게 넣었습니다. 이것입니다. 시그모이드는 안됩니다. 렐루를 사용합니다. 2번을 실행시켰는데 조금 달라집니다. 오케이요. 같은 코드를 실행시켜도 다른 결과가 나올 수 있습니다. 웨이트를 입력할 때, 랜덤값을 넣어줍니다. 랜덤값에 따라서 결과가 차이가 나는 것입니다. 체인룰이 있습니다. 초기값을 0으로 주자. 더블유 초기값을 넣었씁니다. 오케이요. 더블유가 체인률을 할때 이값이 0이 됩니다. 기울기가 0이 되죠. 초기값을 어떻게 잘 넣을 수 있을까요. 모든 값을 0으로 주면 안됩니다. 학습이 전혀 안됩니다. 딥 믿음 넷을 이해 어떻게 잘 학습시키는가. 여기에 사용한 것이 제한된 볼츠맨 머신입니다. RBM을 사용해서 초기화합니다. 2가지 오퍼레이션의 목적은 입력을 생산해내는 것입니다. 어떤 입력이 있습니다. 엑스원 엑스투 엑스쓰리, 많은 것들이 있습니다. 웨이트를 곱하고, 어떤 값을 내게 됩니다. 이런 것을 포워드라고 합니다. 오케이 각각 만들어냅니다.  이러면서, 값을 보냅니다. 보내고, 2번째는 똑같은 일을 반대로 합니다. 인코더라고도 하고, 디코더라고도 합니다. 암호화 복구화라고 합니다. 엔코더 디코더라고 합니다. 이것을 가지고 웨잇을 초기화시키는 것입니다. 엑스데이터가 있습니다. 2개를 가지고 입출력을 해서 입력과 유사한 값들이 나오는 웨이트 값들을 학습시킵니다 .2개의 레이어만 가지고 앞으로 갔다가 뒤로 갔다가 웨이트 들을 다 학습시킵니다. 계속 진행을 시켜서, 초기화 된 값으로 사용합니다. 실제 레이벨을 가지고 학습시키는 것입니다. 파인 튜닝이라고 합니다. 이미 가지고 있는 웨잇들이 잘. 파인 튜닝입니다. 사이버 2010 논문에 이런것들이 있습니다. 입력이 하나의 노드에 몇개 출력인가 초기값을 선택하면 됩니다. 2015년도 무엇인가 히 초기화 좋은 값을 선택하고 싶다. 팬 인과 팬 아웃을 사용해서 오케이요.  초기화 잘 되더라 결론입니다. 이 분야가 아직도 연구가 활성화된 분야 입니다. 아직, 초기화하는 것에 대해서 끝판왕은 없습니다. 많은 방법들이 있습니다. 오케이요. 


2가지 문제가 해결이 되었기 때문에 잘 학습시킬 수 있습니다. 레노, 초기화문제를 해결하였씁니다.