Как считать двоичную переменную в дополнение к последовательности? - PullRequest
0 голосов
/ 17 января 2020

Я хочу добавить двоичную переменную ( x2 ) к каждой выборке, чтобы предсказать y . Итак: x1 + x2 = y

x1 - это последовательность векторов (документ, состоящий из последовательности предложений) и x2 - это просто двоичная переменная. y также является двоичным .

До сих пор я просто рассматриваю x1 для прогнозирования y с использованием keras:

input  = Input(shape=(sentences_per_doc, maximum_sequence_length))
lstm_out = Bidirectional(LSTM(50, activation='tanh', return_sequences=True))(input  )
sent_dense = Dense(100, activation='relu', name='sent_dense')(lstm_out) 
sent_drop = Dropout(0.5,name='sent_dropout')(sent_dense)
prediction = Dense(1, activation='softmax',name='output')(sent_drop)

Но так как входные данные для моей модели являются векторной последовательностью, как мне добавить двоичную переменную x2 в мою модель, чтобы предсказать y?

Я подумывал добавить двоичную переменную в конце каждого вектора-последовательности (например, seq_vec=[1,2,3] + binary_x2_i=[1] = new_seq=[1,2,3,1]), но я не знаю, имеет ли это смысл ... вызывать каждую выборку i затем содержит binary_x2_i

sample_i = [[1,2,3,1],[4,5,6,1],[7,8,9,1]]

1 Ответ

1 голос
/ 17 января 2020

На основании вашего описания теоретически может быть важно, где дополнительная функция x2, говоря лучше, ее значение произошло. Таким образом, вы должны добавить эту особенность внутри любой последовательности, представленной дополнительным значением.

Если значения в последовательностях, которые отображали различные обработки, были обозначены как (0,1,2..n) значения, тогда значение n + 1 будет представлять дополнительную функцию. Кроме того, вам нужно увеличить maximum_sequence_length на 1 , чтобы зарезервировать место для дополнительной функции.

Таким образом, в конце ваши ваши сэмплы должны выглядеть, например, так:

sample_i = [[1,2,3],[4,5,6,10],[7,8,9]]

, если дополнительные функции произошли во время второй последовательности.

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