Comment construire un réseau de neurones de cette structure?avec les différents nœuds se connecte à différents nombre de nœuds dans la couche suivante

0

La question

Je sais seulement comment utiliser le réseau intégré comme RNN de LSTM dans PyTorch. Mais ils ont tendance à traiter avec chaque nœud de la couche précédente qui va donner de l'information à tous les nœuds dans la couche suivante.

Je veux faire quelque chose de différent, mais ne sais pas comment le coder moi-même. Comme dans cette figure: le nœud de l' une des cartes à tous les [d, e, f] trois nœuds dans la couche 2, alors que le nœud b cartes de [e,f] et le nœud c seulement des cartes à [f]. En conséquence, le nœud d ne contiennent des informations à partir d'un, tandis que e contient des informations à partir de [a, b]. Et f contient les informations à partir de tous les nœuds dans la couche précédente. Personne ne sait comment le code de cette structure? PLS me donner un aperçu, je serai très reconnaissant :D

Structure

1

La meilleure réponse

1

Lorsque vous avez une couche qui ressemble Entièrement Connecté couche, mais avec la connexion personnalisée, utiliser un masque avec une bonne structure.

Disons x = [a, b, c] est votre 3-dim d'entrée et de W désigne la matrice de connectivité.

>> x
tensor([[0.1825],
        [0.9598],
        [0.2871]])
>> W
tensor([[0.7459, 0.4669, 0.9687],
        [0.9016, 0.4690, 0.0471],
        [0.5926, 0.9700, 0.5222]])

alors W[i][j] les points de raccordement poids entre jth d'entrée et de iième neurone de sortie. Pour construire la structure similaire à votre jouet exemple, nous voudrions faire un masque comme ça

>> mask
tensor([[1., 0., 0.],
        [1., 1., 0.],
        [1., 1., 1.]])

Ensuite, vous pouvez simplement le masque de la W

>> (mask * W) @ x
tensor([[0.1361],
        [0.6147],
        [1.1892]])

Note: @ est la matrice de la multiplication et de la * est ponctuellement en multiplication.

2021-11-21 18:17:35

Donc, si mon entrée dim est 3, sortie dim est 3. Mon réseau de neurones de la structure comme {entrée 3 dim, LSTM_layer(3, 64), Entièrement connected_layer(64, 3), * triangulaire inférieure du masque de la matrice(3, 3), sortie dim 3}. Ce travail comme à mon habitude de la connectivité, de faire les trois derniers nœuds se fait l'information? Ou dois-je mettre le masque de la matrice entre la couche d'entrée(3,1) et LSTM couche(3,64)
Aioku Takume

Est votre entrée séquentielle (vous avez LSTM entre les deux) ? Votre figure ne montre que Entièrement connecté couches. La solution que j'ai fourni est uniquement pour masquer le FC couche.
ayandas

Désolé, j'ai fait la figure simple. Mon entrée est le temps de la série de valeurs(valeurs, hour_index, week_index) et je veux utiliser un LSTM couche pour en extraire des informations entre l'entrée(3 dim) et de sortie(3 dim). Donc, si j'utilise un masque après LSTM couche, la sortie de trois nœuds être: d seulement nœud contient de l'information sur la semaine de, e nœud contient de la semaine et de l'heure, f nœud contient les valeurs, l'heure, l'information sur la semaine?
Aioku Takume

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................