Qu’est-ce qu’une incorporation dans Keras?

La documentation de Keras n’est pas claire sur ce que c’est réellement. Je comprends que nous pouvons l’utiliser pour compresser l’espace d’entités en entrée. Mais comment cela se fait-il dans une perspective de conception neuronale? Est-ce un autoenocder, RBM?

    Pour autant que je sache, le calque Incorporation est une simple multiplication masortingcielle qui transforme les mots en leurs mots incorporés.

    Les poids du calque Embedding sont de la forme (vocabulary_size, embedding_dimension). Pour chaque échantillon d’apprentissage, ses entrées sont des entiers, qui représentent certains mots. Les entiers sont dans la gamme de la taille du vocabulaire. Le calque Embedding transforme chaque entier i dans la ligne de la masortingce de pondérations d’incorporation.

    Pour ce faire rapidement en tant que multiplication masortingcielle, les entiers en entrée ne sont pas stockés en tant que liste d’entiers mais en tant que masortingce unique. Par conséquent, la forme d’entrée est (nb_words, vocabulary_size) avec une valeur non nulle par ligne. Si vous multipliez cela par les poids d’incorporation, vous obtenez la sortie dans la forme

    (nb_words, vocab_size) x (vocab_size, embedding_dim) = (nb_words, embedding_dim) 

    Ainsi, avec une simple multiplication masortingcielle, vous transformez tous les mots d’un échantillon en mots incorporés.

    Pour mieux comprendre n’importe quelle fonction, il est recommandé de regarder le code source. Voici pour l’ incorporation Donc, en gros, c’est une table de consultation pouvant être formée.

    Dans Keras, la couche d’ Embedding n’est PAS une simple couche de multiplication de masortingce, mais une couche de table de consultation (voir la fonction d’appel ci-dessous ou la définition d’ origine).

     def call(self, inputs): if K.dtype(inputs) != 'int32': inputs = K.cast(inputs, 'int32') out = K.gather(self.embeddings, inputs) return out 

    Ce qu’il fait est de mapper chacun des nombres entiers n en inputs à un vecteur d’entité pouvant être entraîné, W[n] , dont la dimension est la longueur de caractéristique incorporée.