Здание Логисти c Регрессия с Керасом - PullRequest
0 голосов
/ 08 марта 2020

Я пытаюсь создать вложение слова, но когда я подгоняю данные к модели (которая представляет собой регрессионную модель логистики c со слоем внедрения), я получаю следующую ошибку

Ошибка, когда проверка цели: ожидается, что плотность__3 имеет 3 измерения, но получен массив с формой (59568180, 1)

Я не понимаю, почему последний модуль денсора ожидает 3 измерения в выводе, когда я просто хочу предсказать вероятность .

Входной массив X имеет форму (59568180, 1, 2), а выходной Y имеет форму (59568180,)

Вот мой код

def BuildModel(vocab_size, emb_size, window_size):
    model = Sequential([
        Flatten(input_shape=(1,2)),
        Embedding(output_dim=emb_size, input_dim=vocab_size),
        Dense(1, input_shape=(2,))])
    return model

def TrainModel(X_train, Y_train, vocab_size, emb_size = 300, window_size = 3, epochs = 1, optimizer = 'adam'):
    model = BuildModel(vocab_size, emb_size, window_size)
    model.compile(optimizer= optimizer,
                  loss='binary_crossentropy',
                  metrics=['accuracy'])
    model.fit(X_train, Y_train, epochs=epochs)

TrainModel(X_train, Y_train, len(word2index_vocab))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...