Búsqueda de incrustación de columnas de características

He estado trabajando con los conjuntos de datos y las columnas de características en tensorflow (https://developers.googleblog.com/2017/11/introducing-tensorflow-feature-columns.html) Veo que tienen características categóricas y una forma de crear características incrustadas a partir de características categóricas. Pero cuando trabajamos en tareas nlp, ¿cómo creamos una búsqueda de incrustación única?

Por ejemplo: considere la tarea de clasificación de texto. Cada punto de datos tendría muchas columnas textuales, pero no serían categorías separadas. ¿Cómo creamos y usamos una búsqueda de incrustación única para todas estas columnas?

A continuación se muestra un ejemplo de cómo estoy usando actualmente las funciones de incrustación. Estoy creando una característica categórica para cada columna y la uso para crear incrustaciones. El problema sería que las incrustaciones para la misma palabra podrían ser diferentes para diferentes columnas.

def create_embedding_features(key, vocab_list=None, embedding_size=20):
    cat_feature = \
        tf.feature_column.categorical_column_with_vocabulary_list(
            key=key,
            vocabulary_list = vocab_list
            )
    embedding_feature = tf.feature_column.embedding_column(
            categorical_column = cat_feature,
            dimension = embedding_size
        )
    return embedding_feature

le_features_embd = [create_embedding_features(f, vocab_list=vocab_list)
                     for f in feature_keys]

Respuestas a la pregunta(1)

Su respuesta a la pregunta