簡體   English   中英

自動編碼器:輸入形狀不正確

[英]Autoencoder: input shape not ok

我有一個扁平化的圖像列表(50*45->2250)。 我想用它作為自動編碼器的輸入。 當我“安裝”自動編碼器時,出現以下錯誤:

“檢查輸入時出錯:預期 input_4 的形狀為 (2250,),但數組的形狀為 (1,)”

為什么輸入形狀是 (1,)?

train_images2 =[]

for im in train_images:
    im = transform.resize(im,(50,45),mode='constant',anti_aliasing=True)
    im = im[:,:,0]
    im = im/255.0
    im = im.flatten()
    train_images2.append(im)

train_images = train_images2.copy()
print(np.asarray(train_images).shape) #(792, 2250)
print(train_images[0].shape) #(2250,)


# Dimensie van de hidden encoding layer
encoding_dim = 64  
# Placeholder voor input
input_img = Input(shape=(2250))
# "encoded" representation
encoded = Dense(encoding_dim, activation='relu')(input_img)
# "decoded" representation
decoded = Dense(2250, activation='sigmoid')(encoded)

# Creëer de autoencoder 
autoencoder = Model(input_img, decoded)

autoencoder.summary()

解決方案:“train_images”是一個列表。 我不得不將其更改為數組。

train_images = np.array(train_images)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM