Skip to content

pytorch mini batch size

2019.12.19 06:12

WHRIA 조회 수:118

https://stackoverflow.com/questions/52518324/how-to-compensate-if-i-cant-do-a-large-batch-size-in-neural-network/52523847

 

 

4

In pytorch, when you perform the backward step (calling loss.backward() or similar) the gradients are accumulated in-place. This means that if you call loss.backward() multiple times, the previously calculated gradients are not replaced, but in stead the new gradients get added on to the previous ones. That is why, when using pytorch, it is usually necessary to explicitly zero the gradients between minibatches (by calling optimiser.zero_grad() or similar).

If your batch size is limited, you can simulate a larger batch size by breaking a large batch up into smaller pieces, and only calling optimiser.step() to update the model parameters after all the pieces have been processed.

For example, suppose you are only able to do batches of size 64, but you wish to simulate a batch size of 128. If the original training loop looks like:

optimiser.zero_grad()
loss = model(batch_data) # batch_data is a batch of size 128
loss.backward()
optimiser.step()

then you could change this to:

optimiser.zero_grad()

smaller_batches = batch_data[:64], batch_data[64:128]
for batch in smaller_batches:
    loss = model(batch) / 2
    loss.backward()

optimiser.step()

and the updates to the model parameters would be the same in each case (apart maybe from some small numerical error). Note that you have to rescale the loss to make the update the same.

번호 제목 글쓴이 날짜 조회 수
1609 참새 WHRIA 2007.06.20 6455
1608 My parents is away on a journey WHRIA 2007.08.19 6394
1607 워드에서 페이지 번호 매기기 han 2006.04.03 6391
1606 !! Academic Award of CLS !! WHRIA 2007.08.04 6388
1605 어디까지 이야기해야 할까? WHRIA 2007.08.28 6377
1604 Last day WHRIA 2007.08.05 6305
1603 공유기 성능 비교 차트 file WHRIA 2013.02.24 6280
1602 어제 PRK 하다. WHRIA 2007.07.27 6223
1601 멋지네요... 석근이친구... 2000.06.09 6220
1600 whria.net 의 홈페이지 배경 음악 모음 file WHRIA 2005.11.10 6212
1599 Firefox : Session restore WHRIA 2007.08.12 6205
1598 그래 니가 일등 먹어라. 한정규 2000.06.10 6204
1597 휴.. 졸리다. 졸려 WHRIA 2007.06.27 6190
1596 hooking 관련 문서들 file WHRIA 2013.04.10 6174
1595 오늘 내일 han 2007.07.22 6150

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소