정규화한 후에도 학습이 잘되고 성능이 좋다는 점이 이해가 가질 않는데요
정규화가 입력 데이터가 매우 클 경우 0~1사이로 줄여주는 것이 맞는건가요?
이게 맞다면 실제 데이터값과 달라지는데 어떻게 더 좋은 성능을 보여줄수있는건가요
책이랑 인터넷 이것저것 뒤지면서 보고있는데
그냥 더 좋다라고만 말하지 왜 더 좋은지와 문제점 같은건 알려주질 않네요 ㅠㅠ
12개의 댓글
무분별한 사용은 차단될 수 있습니다.
정규화한 후에도 학습이 잘되고 성능이 좋다는 점이 이해가 가질 않는데요
정규화가 입력 데이터가 매우 클 경우 0~1사이로 줄여주는 것이 맞는건가요?
이게 맞다면 실제 데이터값과 달라지는데 어떻게 더 좋은 성능을 보여줄수있는건가요
책이랑 인터넷 이것저것 뒤지면서 보고있는데
그냥 더 좋다라고만 말하지 왜 더 좋은지와 문제점 같은건 알려주질 않네요 ㅠㅠ
ㄱㄹㄷ
정규화를 하면 데이터 분포가 균일해져서 경사하강법으로 학습할때 짤 같은경우 w축이랑 b축의 변경값이 일장해져서 원하는 목표로 최단거리로 갈수있음
그리고 짤에 왼쪽같은 경우보다 극단적인 경우도 나올수 있는데 이럴경우 학습률이 조금만 높아져도 목표값으로 수렴하지 않고 발산하게됨
데이터값을 조정해야하긴 하지만 그만큼 기준도 조정하면 되니 문제없음
ㄱㄹㄷ
그리고 왼쪽처럼 정규화 안한 경우에 발산 안하는 학습률으로 학습한다 해도 b축으로는 목표값으로 비교적 금방 가겠지만 w축으로는 한참걸릴거임
대전모범시민
만약 학습할 데이터가 영화의 평점인데 네이버는 점수가 10점까지 있고 다음은 5점까지 있는 데이터들을 정규화해서 학습한다면 어떻게 되나요??
ㄱㄹㄷ
다음 점수를 두배 하든가 네이버 점수를 반으로 해도 될거임
작년에 배운거라 이론적인거만 기억나는데 실제로 해봤을때 기억으로는 그냥 두 값의 분포만 비슷하게 해주는것만으로도 잘못된 결과 나오던거 해결됐음
대전모범시민
만약 두배한다고 했을 경우에 네이버 10점, 다음 5점짜리가 있을경우 네이버는 20점, 다음은 10점이 되는데 둘다 0점인 데이터도 있을텐데 이러면 차이가 더 커지는거 아니에요??
ㄱㄹㄷ
다음만 두배하는거임 네이버는 그대로 쓰고
대전모범시민
답변 감사합니다. 어렵네요 ㅠㅠ
0ㅅ0
너가 영화점수를 예로들었는데 네이버의 5점과 다음의 10점은 의미는 같지만 표기가 다르므로 다른 공간에 있다고 볼수있지
근데 여기서 네이버의 점수를 5로 나누고 다음의 점수를 10으로 나누면 결과가 양쪽 다 0~1범위에 들어가고 표기와 의미가 동일해지는걸 볼 수 있는데 이런걸 정규화한다고 생각하면될듯
그렇게 얻어진 0~1사이에서 뭔일을 해서 값을 얻더라도 그게 영화점수라는 의미를 알고있으니 다음이나 네이버의 점수로 다시 바꿀수도 있겠지
대전모범시민
만약에 유튜브 같이 좋아요, 싫어요 처럼 이진수식으로 된 데이터면 어떻게 하나요?
잉텔
정규화를 하게 되면 분산이 줄어들어 tv loss가 준다다러
잉텔
근데 이미 잘 알려진 몇몇 신경망은 배치 정규화를 하지 않아도 스스로 배치 정규화를 한다더라.. 그래서 배치 정규화를 통해 얻는 성능이 의미가 없다고..
그래서 일단 구조를 설계해보고 loss 값 판별후에 정규화를 도입해야되
Curriculum
개신기하다 이제 머신러닝은 왠만한 사람 다 아나?? 전문가들 많네ㄷㄷㄷ