2017-11-17 7 views
0

ケラを持つCNNを作成して、600x600の大きな画像から20x20パッチを処理しようとしています。大きな画像からパッチを入力してKerasに入力するとCNNがエラー 'Tensor'オブジェクトに '_keras_history'属性がありません*

私はエラーはAttributeError受け取る以下のコードを実行しよう:「テンソル」オブジェクトは、以下のコードはアウトのみ最初の20×20のパッチを見てすることを意図して何の属性「_keras_history」

を持っていませんが合計900のうち、私は入力画像全体をループする前に、この機能を実現しようとしています。

各層がケラ層で生成され、テンソルに他の操作を適用していないため、エラーが返される理由を理解できませんか?

私はtensorflow 1.3とkeras 2.0.6を使用しています。スライシング操作Input_1R[:,0]がKeras層で行われていないため

nb_filters=16 

input_image=Input(shape=(600,600,3)) 
Input_1R=Reshape((900,20,20,3))(input_image) 
conv1=Convolution2D(nb_filters,(5,5),activation='relu',padding='valid')(Input_1R[:,0]) 
conv4=Convolution2D(1,(6,6),activation='hard_sigmoid',padding='same')(conv1) 
dense6=Dense(1)(conv4) 
output_dense=dense6 
model = Model(inputs=input_image, outputs=output_dense) 

答えて

1

エラーが発生します。 Lambdaレイヤーにラップすることができます。

sliced = Lambda(lambda x: x[:, 0])(Input_1R) 
conv1 = Convolution2D(nb_filters, (5,5), activation='relu', padding='valid')(sliced) 
関連する問題