<p>See <a href="https://arxiv.org/pdf/1707.09725.pdf#page=73" rel="nofollow noreferrer">my masters thesis, page 59</a> for some of the reasons why to choose a bigger batch size / smaller batch size. You want to look at</p>

<ul>
<li>epochs until convergence</li>
<li>time per epoch: higher is better</li>
<li>resulting model quality: lower is better (in my experiments)</li>
</ul>

<p>A batch size of 32 was good for my datasets / models / training algorithm.</p>
how to choose batch size in caffe
<p>I understand that bigger batch size gives more accurate results from <a href="https://stackoverflow.com/questions/33684648/what-is-batch-size-in-caffe-or-convnets">here</a>. But I'm not sure which batch size is "good enough". I guess bigger batch sizes will always be better but it seems like at a certain point you will only get a slight improvement in accuracy for every increase in batch size. Is there a heuristic or a rule of thumb on finding the optimal batch size?</p>

<p>Currently, I have 40000 training data and 10000 test data. My batch size is the default which is 256 for training and 50 for the test. I am using NVIDIA GTX 1080 which has 8Gigs of memory.</p>