2017-05-11 3 views
0

Keras 1.x.x에 대해 작성된 프로그램이 있는데이 프로그램을 Keras 2.x.x에 다시 실행하려고합니다. 그러나 그것은 다음과 같은 오류를 보여주고있다어떻게 병합 함수를 Keras 2에서 읽을 수 있도록 변환 할 수 있습니까?

from keras.layers import Input, merge 

up2 = merge([UpSampling2D(size=(2, 2))(conv5), conv4], mode='concat', concat_axis=1) 

,이 지점에 도달했을 때 : 난 아무것도 변경하지 않은

UserWarning: The `merge` function is deprecated and will be removed after 08/2017. Use instead layers from `keras.layers.merge`, e.g. `add`, `concatenate`, etc. 
    up1 = merge([UpSampling2D(size=(2, 2))(conv3), conv2], mode='concat', concat_axis=1) 
/usr/local/python/3.5.2-gcc4/externalmodules/lib/python3.5/site-packages/keras/legacy/layers.py:456: UserWarning: The `Merge` layer is deprecated and will be removed after 08/2017. Use instead layers from `keras.layers.merge`, e.g. `add`, `concatenate`, etc. 
    name=name) 

, 심지어 데이터가 동일합니다. Keras 2.x.x에서 읽을 수 있도록 병합 기능을 어떻게 변환 할 수 있습니까? 감사합니다.

답변

0

경고가 취소되었습니다. merge 대신 kears.layers.merge.Concatenate을 사용해야합니다.

from keras.layers.merge import Concatenate 
up2 = Concatenate([UpSampling2D(size=(2, 2))(conv5), conv4], axis=1) 
+1

귀하의 의견에 감사드립니다. 나는 당신의 제안을 시도하고 그것이 나에게 다음과 같은 오류를 보여주고있다 :'TypeError : __init __() 인수 'axis''에 대해 여러 개의 값이있다. –