Mémoire temporelle hiérarchique

  • par

La HTM est la composante algorithmique de la théorie des mille cerveaux de l’intelligence de Jeff Hawkins. Ainsi, les nouvelles découvertes sur le néocortex sont progressivement intégrées au modèle HTM, qui évolue au fil du temps en réponse. Les nouvelles découvertes n’invalident pas nécessairement les parties précédentes du modèle, de sorte que les idées d’une génération ne sont pas nécessairement exclues de la génération suivante. En raison de la nature évolutive de la théorie, il y a eu plusieurs générations d’algorithmes HTM, qui sont brièvement décrites ci-dessous.

Première génération : zeta 1Edit

La première génération d’algorithmes HTM est parfois appelée zeta 1.

FormationEdit

Pendant la formation, un nœud (ou une région) reçoit en entrée une séquence temporelle de motifs spatiaux. Le processus d’apprentissage se compose de deux étapes :

  1. La mise en commun spatiale identifie (dans l’entrée) les motifs fréquemment observés et les mémorise en tant que « coïncidences ». Les motifs qui sont significativement similaires les uns aux autres sont traités comme une même coïncidence. Un grand nombre de motifs d’entrée possibles sont réduits à un nombre gérable de coïncidences connues.
  2. Le pooling temporel partitionne les coïncidences qui sont susceptibles de se suivre dans la séquence de formation en groupes temporels. Chaque groupe de motifs représente une « cause » du motif d’entrée (ou « nom » dans On Intelligence).

Les concepts de pooling spatial et de pooling temporel sont encore assez importants dans les algorithmes HTM actuels. Le pooling temporel n’est pas encore bien compris, et sa signification a changé au fil du temps (au fur et à mesure de l’évolution des algorithmes HTM).

Modification de l’inférence

Pendant l’inférence, le nœud calcule l’ensemble des probabilités qu’un motif appartienne à chaque coïncidence connue. Puis il calcule les probabilités que l’entrée représente chaque groupe temporel. L’ensemble des probabilités attribuées aux groupes est appelé « croyance » du noeud sur le modèle d’entrée. (Dans une implémentation simplifiée, la croyance d’un nœud consiste en un seul groupe gagnant). Cette croyance est le résultat de l’inférence qui est transmise à un ou plusieurs nœuds « parents » au niveau supérieur suivant de la hiérarchie.

Les motifs « inattendus » pour le nœud n’ont pas une probabilité dominante d’appartenir à un groupe temporel mais ont des probabilités presque égales d’appartenir à plusieurs des groupes. Si les séquences de motifs sont similaires aux séquences d’apprentissage, alors les probabilités assignées aux groupes ne changeront pas aussi souvent que les motifs sont reçus. La sortie du nœud ne changera pas autant, et une résolution dans le temps est perdue.

Dans un schéma plus général, la croyance du nœud peut être envoyée à l’entrée de n’importe quel(s) nœud(s) à n’importe quel(s) niveau(x), mais les connexions entre les nœuds sont toujours fixes. Le nœud de niveau supérieur combine cette sortie avec la sortie des autres nœuds enfants formant ainsi son propre modèle d’entrée.

Puisque la résolution dans l’espace et le temps est perdue dans chaque nœud comme décrit ci-dessus, les croyances formées par les nœuds de niveau supérieur représentent une gamme encore plus grande d’espace et de temps. Ceci est censé refléter l’organisation du monde physique tel qu’il est perçu par le cerveau humain. Les concepts les plus grands (par exemple, les causes, les actions et les objets) sont perçus comme changeant plus lentement et se composent de concepts plus petits qui changent plus rapidement. Jeff Hawkins postule que les cerveaux ont évolué ce type de hiérarchie pour correspondre, prédire et affecter l’organisation du monde extérieur.

Plus de détails sur le fonctionnement de Zeta 1 HTM peuvent être trouvés dans l’ancienne documentation de Numenta.

Deuxième génération : les algorithmes d’apprentissage corticalEdit

La deuxième génération d’algorithmes d’apprentissage HTM, souvent appelée algorithmes d’apprentissage cortical (CLA), était radicalement différente de zeta 1. Elle s’appuie sur une structure de données appelée représentations distribuées éparses (c’est-à-dire une structure de données dont les éléments sont binaires, 1 ou 0, et dont le nombre de bits 1 est faible par rapport au nombre de bits 0) pour représenter l’activité cérébrale et un modèle de neurones (souvent aussi appelé cellule, dans le contexte de HTM) plus réaliste sur le plan biologique. Il y a deux composants centraux dans cette génération de HTM : un algorithme de pooling spatial, qui produit des représentations distribuées éparses (SDR), et un algorithme de mémoire de séquence, qui apprend à représenter et à prédire des séquences complexes.

Dans cette nouvelle génération, les couches et les minicolonnes du cortex cérébral sont abordées et partiellement modélisées. Chaque couche HTM (à ne pas confondre avec un niveau HTM d’une hiérarchie HTM, comme décrit ci-dessus) est constituée d’un certain nombre de minicolonnes fortement interconnectées. Une couche HTM crée une représentation distribuée éparse à partir de son entrée, de sorte qu’un pourcentage fixe de minicolonnes est actif à tout moment. Une minicolonne est un groupe de cellules ayant le même champ récepteur. Chaque minicolonne comporte un certain nombre de cellules capables de se souvenir de plusieurs états antérieurs. Une cellule peut être dans l’un des trois états suivants : actif, inactif et prédictif.

Mise en commun spatialeEdit

Le champ réceptif de chaque minicolonne est un nombre fixe d’entrées qui sont sélectionnées aléatoirement parmi un nombre beaucoup plus important d’entrées de nœuds. Sur la base du modèle d’entrée (spécifique), certaines minicolonnes seront plus ou moins associées aux valeurs d’entrée actives. La mise en commun spatiale sélectionne un nombre relativement constant de minicolonnes les plus actives et inactive (inhibe) d’autres minicolonnes à proximité de celles qui sont actives. Des modèles d’entrée similaires ont tendance à activer un ensemble stable de minicolonnes. La quantité de mémoire utilisée par chaque couche peut être augmentée pour apprendre des modèles spatiaux plus complexes ou diminuée pour apprendre des modèles plus simples.

Cellules actives, inactives et prédictivesEdit

Comme mentionné ci-dessus, une cellule (ou un neurone) d’une minicolonne, à tout moment, peut être dans un état actif, inactif ou prédictif. Initialement, les cellules sont inactives.

Comment les cellules deviennent-elles actives ?

Si une ou plusieurs cellules de la minicolonne active sont dans l’état prédictif (voir ci-dessous), elles seront les seules cellules à devenir actives dans le pas de temps actuel. Si aucune des cellules de la minicolonne active n’est dans l’état prédictif (ce qui se produit pendant le pas de temps initial ou lorsque l’activation de cette minicolonne n’était pas attendue), toutes les cellules sont rendues actives.

Comment les cellules deviennent-elles prédictives ?

Lorsqu’une cellule devient active, elle forme progressivement des connexions avec les cellules voisines qui ont tendance à être actives pendant plusieurs pas de temps précédents. Ainsi, une cellule apprend à reconnaître une séquence connue en vérifiant si les cellules connectées sont actives. Si un grand nombre de cellules connectées sont actives, cette cellule passe à l’état prédictif en anticipant l’une des quelques prochaines entrées de la séquence.

La sortie d’une minicolonneEdit

La sortie d’une couche comprend des minicolonnes dans les deux états, actif et prédictif. Ainsi, les minicolonnes sont actives sur de longues périodes de temps, ce qui conduit à une plus grande stabilité temporelle vue par la couche parentale.

Inférence et apprentissage en ligneEdit

Les algorithmes d’apprentissage corticaux sont capables d’apprendre en continu à partir de chaque nouveau modèle d’entrée, donc aucun mode d’inférence séparé n’est nécessaire. Pendant l’inférence, HTM essaie de faire correspondre le flux d’entrées à des fragments de séquences précédemment apprises. Cela permet à chaque couche HTM de prédire en permanence la suite probable des séquences reconnues. L’indice de la séquence prédite est la sortie de la couche. Comme les prédictions ont tendance à changer moins fréquemment que les modèles d’entrée, cela conduit à une stabilité temporelle accrue de la sortie dans les niveaux hiérarchiques supérieurs. La prédiction aide également à combler les motifs manquants dans la séquence et à interpréter les données ambiguës en biaisant le système pour qu’il déduise ce qu’il a prédit.

Applications du CLAsEdit

Les algorithmes d’apprentissage cortical sont actuellement proposés sous forme de SaaS commercial par Numenta (comme Grok).

La validité du CLAsEdit

La question suivante a été posée à Jeff Hawkins en septembre 2011 à propos des algorithmes d’apprentissage cortical : « Comment savez-vous si les modifications que vous apportez au modèle sont bonnes ou non ? » À quoi Jeff a répondu :  » Il y a deux catégories pour la réponse : l’une consiste à regarder les neurosciences, et l’autre les méthodes de l’intelligence artificielle. Dans le domaine des neurosciences, nous pouvons faire de nombreuses prédictions, et celles-ci peuvent être testées. Si nos théories expliquent un large éventail d’observations neuroscientifiques, cela signifie que nous sommes sur la bonne voie. Dans le monde de l’apprentissage automatique, on ne se préoccupe pas de cela, mais seulement de savoir si cela fonctionne bien sur des problèmes pratiques. Dans notre cas, cela reste à voir. Dans la mesure où vous pouvez résoudre un problème que personne n’était capable de résoudre auparavant, les gens y prêteront attention. »

Troisième génération : inférence sensorimotriceEdit

La troisième génération s’appuie sur la deuxième génération et ajoute une théorie de l’inférence sensorimotrice dans le néocortex. Cette théorie propose que les colonnes corticales à chaque niveau de la hiérarchie peuvent apprendre des modèles complets d’objets au fil du temps et que les caractéristiques sont apprises à des endroits spécifiques sur les objets. La théorie a été élargie en 2018 et désignée comme la théorie des mille cerveaux.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *