Agora, a questão é como lidar com tamanhos de imagem tão grandes, onde não há privilégios de reduzir a amostragem
Suponho que, ao reduzir a amostragem, você queira reduzir a entrada antes de passá-la para a CNN. A camada convolucional permite reduzir a amostra da imagem em uma rede, escolhendo um passo amplo, o que economiza recursos para as próximas camadas. De fato, é isso que tem que fazer, caso contrário, seu modelo não se encaixará na GPU.
1) Existem técnicas para lidar com imagens tão grandes que devem ser treinadas?
Geralmente, as pesquisas dimensionam as imagens para um tamanho razoável. Mas se isso não for uma opção para você, você precisará restringir sua CNN. Além de reduzir a amostragem nas camadas iniciais, eu recomendaria que você se livrasse da camada FC (que normalmente usa a maioria dos parâmetros) em favor da camada convolucional . Além disso, você precisará transmitir seus dados em cada época, porque eles não se encaixam na sua GPU.
Observe que nada disso impedirá uma carga computacional pesada nas camadas iniciais, exatamente porque a entrada é muito grande: a convolução é uma operação cara e as primeiras camadas executam muitas delas em cada passagem para frente e para trás. Em resumo, o treinamento será lento.
2) Qual tamanho de lote é razoável de usar?
Aqui está outro problema. Uma única imagem leva 2400x2400x3x4
(3 canais e 4 bytes por pixel) que é ~ 70Mb, então você dificilmente pode comprar um tamanho de lote 10. Mais realista seria 5. 5. Observe que a maior parte da memória será obtida pelos parâmetros da CNN. Acho que, nesse caso, faz sentido reduzir o tamanho usando valores de 16 bits em vez de 32 bits - dessa forma, você poderá dobrar os lotes.
3) Existem precauções a serem tomadas ou qualquer aumento e diminuição nos recursos de hardware que eu possa fazer?
Seu gargalo é a memória da GPU. Se você puder comprar outra GPU, obtenha-a e divida a rede entre elas. Tudo o resto é insignificante em comparação com a memória da GPU.