Классификация с CNN (conv_1d)

У меня есть вопрос о tflearn и использовании CNN с ним. У меня проблема с классификацией n переменные данных (float) и m классы. Я попытался реализовать это, используя https://github.com/tflearn/tflearn/blob/master/examples/nlp/cnn_sentence_classification.py это только с моим набором данных. Но они использовали вложение, которое не работает для меня (у меня есть бесчисленное множество возможных значений для входных значений, так как они являются плавающими). Если я просто уйду network = tflearn.embedding(network, input_dim=10000, output_dim=128)У меня нет трехмерного тензора в качестве входных данных для следующего слоя conv_1d. Кто-нибудь может мне помочь? Итак, как я могу привести свои данные в правильную форму, чтобы применить некоторые свертки?

Спасибо!!

1 ответ

Решение

Добавьте дополнительное измерение в конце, ему нужно измерение канала, например, так (изменили второе, например, первое и третье, которые я скопировал для облегчения понимания):

network = input_data(shape=[None, 100], name='input')
network = tf.expand_dims(network, 2)
branch1 = conv_1d(network, 128, 3, padding='valid', activation='relu', regularizer="L2")
Другие вопросы по тегам