Skip to content

pytorch mini batch size

2019.12.19 06:12

WHRIA 조회 수:82

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.

번호 제목 글쓴이 날짜 조회 수
1714 인생의 기회 WHRIA 2009.02.22 8127
1713 I am busy preparing this coming symposium WHRIA 2007.08.26 8121
1712 미래는 어떤 모습일까? WHRIA 2013.01.12 8104
1711 frame WHRIA 2009.01.01 8096
1710 !!!!`홈페이지 문명의 새 장이 도래`!!!!! 최은경 2000.06.08 8091
1709 IMF WHRIA 2008.10.21 8076
1708 타이 WHRIA 2007.11.06 8060
1707 chunje chunjae 2000.06.08 8059
1706 Valiant WHRIA 2008.01.03 8053
1705 OpenVPN 성공 WHRIA 2007.10.07 8045
1704 adobe flash 안써도 웹서핑이 쾌적 WHRIA 2012.02.09 8037
1703 MedicalPhoto 1.0.3 Final WHRIA 2008.05.04 8025
1702 기로 WHRIA 2008.01.24 8000
1701 싱가폴 다녀옴 WHRIA 2008.07.17 7976
1700 Illustration file WHRIA 2007.08.15 7954

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소