일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 딥러닝
- #영어 명언
- tensorflow update
- #프로젝트
- #opencv
- tokenizing
- 완전탐색
- python list
- 이미지 생성
- #Android
- word embedding
- python 알고리즘
- convexhull
- Convolution Neural Network
- python __init__
- findContours
- #English
- #영어
- #실생활 영어
- opencv SURF
- 영어
- 영어명언
- keras
- object detection
- TensorFlow
- c언어
- #실생활영어
- #1일1영어
- #일상영어
- text2img
- Today
- Total
When will you grow up?
fit_generator with multiple inputs 본문
Keras를 사용할때 어떠한 모델을 커스텀해서 사용 할 경우가 있다.
예를들어, input을 두개의 종류를 받고 따로따로 학습시켜서 합치거나 더하는 경우도 있을꺼고....
자신만의 모델을 만드는건 차후 블로그 포스팅을 할예정..
그런데 input을 두개 넣어야 될 경우가 있다.
위 그림과 같은 모델을 설계 하였을 경우,
input이 2개가 되는데, 그냥 넣으면 되겠지 하고 넣었다가
[Error]
Error when checking model input: the list of Numpy arrays that you are passing to your model is not the size the model expected. Expected to see 2 array(s), but instead got the following list of 1 arrays: [array([[[[0.75686276, 0.75686276, 0.75686276], [0.75686276, 0.75686276, 0.75686276], [0.75686276, 0.75686276, 0.75686276], ..., [0.65882355, 0.65882355, 0.65882355...
이러한 오류를 발견하게 될 수 있다.
오류가 나는 코드는 생략하겠다.
간단하게 input의 형태를 바꿔 맞춰주면 된다!
%이것때매 몇시간 삽질을 했다....ㅠㅠㅠ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | """ 모델 설계 제외 """ seed=1 generator = ImageDataGenerator(rotation_range=15, width_shift_range=0.2, height_shift_range=0.2, shear_range=0.2, zoom_range=0.2, horizontal_flip=True, fill_mode='nearest') def generator_two_img(X1, X2, Y,batch_size): genX1 = generator.flow(X1, Y, batch_size=batch_size, seed=seed) genX2 = generator.flow(X2, Y, batch_size=batch_size, seed=seed) while True: X1 = genX1.next() X2 = genX2.next() yield [X1[0], X2[0]], X1[1] """ ................................. """ hist = model.fit_generator(generator_two_img(x_train, x_train_2, y_train, batch_size), steps_per_epoch=len(x_train) // batch_size, epochs=nb_epoch, callbacks = callbacks, validation_data=generator_two_img(x_val, x_val_2, y_val, batch_size), validation_steps=x_validation.shape[0] // batch_size, verbose=1) #hist = model.fit([x_train, x_train_2], y_train, batch_size = batch_size, epochs = 100) | cs |
reference : https://stackoverflow.com/questions/49404993/keras-how-to-use-fit-generator-with-multiple-inputs
'02. Study > Keras' 카테고리의 다른 글
keras model 저장 및 callback (0) | 2019.08.07 |
---|---|
model name exchange (0) | 2018.03.22 |
Keras Visualization (0) | 2018.03.17 |
Keras Update(Window10 Conda) (0) | 2018.03.14 |
VGG+ResNet(Fashion_MNIST) (0) | 2017.12.10 |