Я использую Keras (бэкэнд тензор потока) и мне интересно, как добавить несколько слоев Embedding в последовательную модель Keras.
В частности, в моем наборе данных есть несколько столбцов, которые имеют категориальные значения, и я рассмотрелиспользуя горячее кодирование, но определили, что количество категориальных элементов исчисляется сотнями, что приводит к большому и слишком редкому набору столбцов.После поиска решений я обнаружил, что слой Keras 'Embedding, кажется, решает проблему очень элегантно.Тем не менее, большинство примеров (и документация Keras) иллюстрируют очень простую ситуацию с одним слоем Embedded.
К сожалению, я не знаю, как интегрировать несколько слоев Embedding в качестве входных данных в одну модель.
Мой код выглядит так, но он не работает, и я предполагаю, чтонесколько слоев внедрения действуют последовательно (первый слой внедрения является вторым и т. д.), а не являются несколькими входными источниками для модели:
model = Sequential()
model.add(Embedding(500, 64, input_length=10)) # categorical col 1
model.add(Embedding(100, 64, input_length=10)) # categorical col 2
model.add(Embedding(500, 64, input_length=10)) # categorical col 3
model.add(Flatten...
model.add(Dense...
Мой вопрос заключается в том, как мне установить модель Keras Sequential, такуючто я смогу использовать три слоя Embedded, показанные выше.Что конкретно находится между первым и последним слоями:
model = Sequential()
#
# What goes here?
#
model.add(Dense...
Я на правильном пути, или мой подход неверен, и мне нужно установить модель другим способом?Любые предложения / примеры приветствуются!