Я использую sklearn MultiLabelBinarizer для классификации текста по нескольким меткам с помощью keras.
У меня есть девять категорий 'SEARCH', 'VOLUME', 'OPTIONS_QUANTITY', 'PORTION', 'WEIGHT', 'SIZE',' КОНЦЕНТРАЦИЯ ',' КОНТЕНТ ',' ПРОИЗВОДИТЕЛЬ '.
x_train = tokenizer.texts_to_sequences(train_df)
x_test = tokenizer.texts_to_sequences(test_df)
maxlen = 43036
vocab_size = len(tokenizer.word_index) + 1
x_train = pad_sequences(x_train, padding='post', maxlen=maxlen)
x_test = pad_sequences(x_test, padding='post', maxlen=maxlen)
mlb_label_train = MultiLabelBinarizer()
y_train = mlb_label_train.fit(label_train.values)
y_train_tags = mlb_label_train.fit_transform(label_train.values)
mlb_label_test = MultiLabelBinarizer()
y_test = mlb_label_test.fit(label_test.values)
y_test_tags = mlb_label_test.fit_transform(label_test.values)
model = Sequential()
model.add(Embedding(input_dim=vocab_size, output_dim=200, input_length=maxlen))
model.add(Dropout(0.3))
model.add(Conv1D(filter_length, 3, padding='valid', activation='relu'))
model.add(GlobalMaxPooling1D())
model.add(Dense(200))
model.add(Activation('sigmoid'))
И я ожидал разбить свою последовательность на девять категорий.