2017-04-10 3 views
0

400,000 개가 넘는 이미지로 시작 모델을 교육해야합니다.케라 (keras)로 거대한 모델 시작을 훈련하십시오.

너무 커서 메모리에 모두로드 할 수 없다는 것을 알고 있습니다. 그래서, 나는 확실하게 epoch가 아닌 배치를 통해 훈련 할 것입니다. (그래서 디스크에서 모든 배치를로드합니다) 하지만, 매우 느리게됩니다.

다른 방법이 있다면 알고 계십니까?

나는 또한 훈련 도중 이미지에 다른 변형을 적용하려고합니다. dataimagegenerator 클래스를 살펴 보았지만, 가지고있는 모든 이미지와 호환되지 않습니다. 그래서 발전기 없이는 할 수있는 방법이 있습니까?

당신 덕분에!

답변

1

모델의 fit_generator 방법 (https://keras.io/models/model/#fit_generator)을 사용할 수 있습니다. 이렇게해도 메모리에서 이미지가로드되지만 병렬로 처리되기 때문에 오버 헤드가 적습니다. 생성자를 직접 작성하여 원하는 변환을 적용 할 수 있습니다 (https://wiki.python.org/moin/Generators).

더 빠른 메모리 액세스가 필요하면 hdf5를 살펴보십시오. hdf5에 이미지를 저장하여 프로그램의 인덱싱 및로드 속도를 높일 수 있습니다. (http://www.h5py.org/)

관련 문제