基于多个输入的文本相似度

时间:2019-08-08 07:51:05

标签: tensorflow keras tf.keras

我有一些与人相关的字段,例如姓名,地址,城市和州。我想获得两个人在所有相关领域的相似度。

我尝试为单个字段名称使用Bi LSTM模型。这是行不通的,因为我们需要地址,城市和州来获得相似度的高精度。

这是单个名称字段。

lstm_layer = Bidirectional(LSTM(self.number_lstm_units, dropout=self.rate_drop_lstm, recurrent_dropout=self.rate_drop_lstm))    
sequence_1_input = Input(shape=(self.max_sequence_length,), dtype='int32')
        embedded_sequences_1 = embedding_layer(sequence_1_input)
        x1 = lstm_layer(embedded_sequences_1)
sequence_2_input = Input(shape=(self.max_sequence_length,), dtype='int32')
        embedded_sequences_2 = embedding_layer(sequence_2_input)
        x2 = lstm_layer(embedded_sequences_2)
 merged = concatenate([x1, x2, leaks_dense])
        merged = BatchNormalization()(merged)
        merged = Dropout(self.rate_drop_dense)(merged)
        merged = Dense(self.number_dense_units, activation=self.activation_function)(merged)
        merged = BatchNormalization()(merged)
        merged = Dropout(self.rate_drop_dense)(merged)
        preds = Dense(1, activation='sigmoid')(merged)
        model = Model(inputs=[sequence_1_input, sequence_2_input, leaks_input], outputs=preds)
        model.compile(loss='binary_crossentropy', optimizer='nadam', metrics=['acc'])
        model.summary()
        early_stopping = EarlyStopping(monitor='val_loss', patience=3)

根据所有相关字段获得两个人的相似性。我希望根据所有输入得出两个人的相似性。

0 个答案:

没有答案
相关问题