Python 值错误:无法将字符串转换为浮点值:'<';创建带有字符嵌入的CNN-LSTM时

Python 值错误:无法将字符串转换为浮点值:'<';创建带有字符嵌入的CNN-LSTM时,python,deep-learning,conv-neural-network,recurrent-neural-network,Python,Deep Learning,Conv Neural Network,Recurrent Neural Network,我一直在尝试训练一个深度学习模型,通过查看与SVG代码对应的.png图像(64x64x3)来学习图像的SVG代码。我一直在尝试使用Conv2D模型(用于png)和RNN(用于SVG序列)来实现这一点。训练模型时,会出现以下错误:ValueError:无法将字符串转换为float:“CNN希望训练数据是带有颜色值的float数组,而不是字母列表。看到或一个热编码,我正试图将字符输入嵌入层和LSTM层,将图像输入Conv2D层。它不应该是一个浮点数数组,对吗? # Partitioning trai

我一直在尝试训练一个深度学习模型,通过查看与SVG代码对应的.png图像(64x64x3)来学习图像的SVG代码。我一直在尝试使用Conv2D模型(用于png)和RNN(用于SVG序列)来实现这一点。训练模型时,会出现以下错误:
ValueError:无法将字符串转换为float:“CNN希望训练数据是带有颜色值的float数组,而不是字母列表。看到或一个热编码,我正试图将字符输入嵌入层和LSTM层,将图像输入Conv2D层。它不应该是一个浮点数数组,对吗?
# Partitioning training and validation data

print('Loading data...')
x_train, x_test = train_test_split(X, test_size=1/10, random_state=999)
y_train, y_test = train_test_split(Y, test_size=1/10, random_state=999)

# Padding

print('Pad sequences')
y_train = sequence.pad_sequences(y_train, dtype=str, maxlen=821, value="0")
y_test = sequence.pad_sequences(y_test, dtype=str, maxlen=821, value="0")

# Partial Image model

inputA = Input(shape=(64, 64, 3))
A = Conv2D (16, kernel_size = (3,3), strides=(1, 1), padding='same')(inputA)
A = MaxPooling2D(pool_size=(2, 2), strides=None, padding='valid')(A)
A = Conv2D (8, kernel_size = (3,3), strides=(2, 2), padding='same')(A)
A = MaxPooling2D(pool_size=(2, 2), strides=None, padding='valid')(A)

A = Flatten () (A)

A = Dropout(0.5)(A)
A = Dense(256, activation='relu')(A)

# Partial SVG code model
inputB = Input(shape=(820,))
B = Embedding(45, 16, mask_zero=True)(inputB)
B = Dropout(0.5)(B)
B = LSTM(256, return_sequences = False)(B)


# Decoder model
decoder1 = add([A, B])
decoder2 = Dense(256, activation='relu')(decoder1)
outputs = Dense(820, activation='softmax')(decoder2)

# Merge two input models
model = Model(inputs=[inputA, inputB], outputs=outputs)
model.compile (loss='categorical_crossentropy', optimizer='rmsprop', metrics = ['accuracy'])



print('Train...')
history = model.fit([x_train, y_train[:, :-1]], y_train[:, 1:],
                    batch_size=128,
                    epochs=20,
                    verbose=2)