M.L (p.116)

mini batch : 거대한 데이터셋을 다 계산해보는 건 시간적, 비용적으로 부담이 크기 때문에 적절히 어느정도 양의 데이터를 골라  그 값을 이용해 근사치를 구한다.

예를 들어 60,000장의 훈련 데이터가 있으면 그 중 100장을 무작위로 뽑아 그 100장만을 사용하여 학습하는 것이다.

내 생각 : mini batch는 모집단을 대표할 수 있는가? 일단 각 데이터 값들이 독립적인지 확인하기 조차 힘들다.  independent 이지 않은 데이터들은 variance가 매우커져 수렴하는 값이 매우 넓어져 불확실하게 된다. 그럼 데이터들이 각각 독립적인지도 모르는 상태인데 이 방법을 어떻게 신뢰하고 사용하는 것일까?

 

소스 코드 내용은 x_train.shape[0] : 0차원 인덱스값으로 (60000,784) 에서 60000을 가리킨다. np.random.choice 함수로 60000개 데이터중 10개를 랜덤으로 뽑는다. 랜덤으로 뽑힌 값들을 인덱스로하는 변수에 저장한다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다