211service.com
Une nouvelle conception radicale de réseau de neurones pourrait surmonter de grands défis en IA
David Duvenaud et al.
David Duvenaud collaborait sur un projet impliquant des données médicales lorsqu'il s'est heurté à une lacune majeure de l'IA.
Chercheur en IA à l'Université de Toronto, il voulait construire un modèle d'apprentissage en profondeur qui prédirait la santé d'un patient au fil du temps. Mais les données des dossiers médicaux sont un peu désordonnées : tout au long de votre vie, vous pouvez consulter le médecin à différents moments pour différentes raisons, générant une poignée de mesures à des intervalles arbitraires. Un réseau de neurones traditionnel a du mal à gérer cela. Sa conception lui impose d'apprendre à partir de données avec des étapes d'observation claires. C'est donc un outil médiocre pour modéliser des processus continus, en particulier ceux qui sont mesurés de manière irrégulière dans le temps.
Le défi a conduit Duvenaud et ses collaborateurs de l'université et de l'Institut Vecteur à repenser les réseaux de neurones tels que nous les connaissons. La semaine dernière, leur papier a été parmi quatre autres couronné meilleur article à la conférence Neural Information Processing Systems, l'un des plus grands rassemblements de recherche sur l'IA au monde.
Les réseaux de neurones sont la machinerie de base qui rend l'apprentissage en profondeur si puissant. Un réseau neuronal traditionnel est composé de couches empilées de nœuds de calcul simples qui fonctionnent ensemble pour trouver des modèles dans les données. Les couches discrètes sont ce qui l'empêche de modéliser efficacement les processus continus (nous y reviendrons).
En réponse, la conception de l'équipe de recherche supprime entièrement les couches. (Duvenaud s'empresse de noter qu'ils n'ont pas eu cette idée. Ils n'ont été que les premiers à l'implémenter de manière généralisable.) Pour comprendre comment cela est possible, passons en revue ce que font les couches en premier lieu.

Comment un réseau neuronal traditionnel transforme l'image d'un lion en nom de 'lion'. Jeff Clune/Capture d'écran
Le processus le plus courant pour former un réseau de neurones (alias apprentissage supervisé) consiste à lui fournir un ensemble de données étiquetées. Disons que vous vouliez construire un système qui reconnaît différents animaux. Vous alimenteriez un réseau neuronal d'images d'animaux associées aux noms d'animaux correspondants. Sous le capot, il commence à résoudre un puzzle mathématique fou. Il examine toutes les paires image-nom et trouve une formule qui transforme de manière fiable l'une (l'image) en l'autre (la catégorie). Une fois qu'il a résolu ce puzzle, il peut réutiliser la formule encore et encore pour catégoriser correctement toute nouvelle photo d'animal, la plupart du temps.
Mais trouver une formule unique pour décrire l'ensemble de la transformation image en nom serait trop large et aboutirait à un modèle peu précis. Ce serait comme essayer d'utiliser une seule règle pour différencier les chats et les chiens. On pourrait dire que les chiens ont des oreilles tombantes. Mais certains chiens ne le font pas et d'autres chats faire, donc vous vous retrouveriez avec beaucoup de faux négatifs et positifs.
C'est là qu'interviennent les couches d'un réseau de neurones. Elles divisent le processus de transformation en étapes et permettent au réseau de trouver une série de formules décrivant chacune une étape du processus. Ainsi, la première couche peut contenir tous les pixels et utiliser une formule pour sélectionner ceux qui sont les plus pertinents pour les chats par rapport aux chiens. Une deuxième couche peut en utiliser une autre pour construire des motifs plus grands à partir de groupes de pixels et déterminer si l'image a des moustaches ou des oreilles. Chaque couche suivante identifierait des caractéristiques de plus en plus complexes de l'animal, jusqu'à ce que la couche finale décide du chien sur la base des calculs accumulés. Cette décomposition étape par étape du processus permet à un réseau de neurones de construire des modèles plus sophistiqués, qui à leur tour devraient conduire à des prédictions plus précises.
L'approche par couches a bien servi le domaine de l'IA, mais elle présente également un inconvénient. Si vous souhaitez modéliser tout ce qui se transforme de manière continue au fil du temps, vous devez également le découper en étapes discrètes. En pratique, si nous revenions à l'exemple de la santé, cela reviendrait à regrouper vos dossiers médicaux en périodes finies comme des années ou des mois. Vous pouviez voir à quel point ce serait inexact. Si vous êtes allé chez le médecin le 11 janvier et de nouveau le 16 novembre, les données des deux visites seraient regroupées sous la même année.
Donc, la meilleure façon de modéliser la réalité aussi près que possible est d'ajouter plus de couches pour augmenter la granularité. (Pourquoi ne pas diviser vos enregistrements en jours ou même en heures ? Vous auriez pu aller chez le médecin deux fois en une journée !) À l'extrême, cela signifie que le meilleur réseau de neurones pour ce travail aurait un nombre infini de couches pour modéliser l'infinitésimal. changements d'étape. La question est de savoir si cette idée est même pratique.
Si cela commence à vous sembler familier, c'est parce que nous sommes arrivés exactement au type de problème que le calcul a été inventé pour résoudre. Calculus vous donne toutes ces belles équations pour calculer une série de changements sur des étapes infinitésimales - en d'autres termes, il vous évite le cauchemar de modéliser un changement continu en unités discrètes. C'est la magie de l'article de Duvenaud et de ses collaborateurs : il remplace les couches par des équations de calcul.
Le résultat n'est même plus un réseau ; il n'y a plus de nœuds et de connexions, juste une dalle continue de calcul. Néanmoins, conformément à la convention, les chercheurs ont nommé cette conception un réseau ODE - ODE pour les équations différentielles ordinaires. (Ils doivent encore travailler sur leur image de marque.)
Si votre cerveau vous fait mal (croyez-moi, le mien aussi), voici une belle analogie que Duvenaud utilise pour lier le tout. Considérez un instrument de musique continu comme un violon, où vous pouvez faire glisser votre main le long de la corde pour jouer la fréquence que vous voulez ; considérez maintenant un piano discret comme un piano, où vous avez un nombre distinct de touches pour jouer un nombre limité de fréquences. Un réseau de neurones traditionnel est comme un piano : essayez comme vous pourriez, vous ne pourrez pas jouer une diapositive. Vous ne pourrez approcher la diapositive qu'en jouant une gamme. Même si vous réaccordiez votre piano pour que les fréquences des notes soient très proches les unes des autres, vous vous rapprocheriez toujours de la diapositive avec une échelle. Passer à un réseau ODE, c'est comme passer de votre piano à un violon. Ce n'est pas forcément toujours le bon outil, mais il est plus adapté à certaines tâches.
En plus de pouvoir modéliser le changement continu, un réseau ODE modifie également certains aspects de la formation. Avec un réseau de neurones traditionnel, vous devez spécifier le nombre de couches que vous souhaitez dans votre réseau au début de la formation, puis attendre que la formation soit terminée pour connaître la précision du modèle. La nouvelle méthode vous permet de spécifier d'abord la précision souhaitée, et elle trouvera le moyen le plus efficace de s'entraîner dans cette marge d'erreur. D'un autre côté, vous savez dès le départ combien de temps il faudra à un réseau neuronal traditionnel pour s'entraîner. Pas tellement lors de l'utilisation d'un réseau ODE. Ce sont les compromis que les chercheurs devront faire, explique Duvenaud, lorsqu'ils décideront quelle technique utiliser à l'avenir.
Actuellement, le papier offre une preuve de concept pour le design, mais ce n'est pas encore prêt pour les heures de grande écoute, dit Duvenaud. Comme toute technique initiale proposée sur le terrain, elle doit encore être étoffée, expérimentée et améliorée jusqu'à ce qu'elle puisse être mise en production. Mais la méthode a le potentiel de bouleverser le domaine, de la même manière que Ian Goodfellow l'a fait lorsqu'il a publié son article sur les GAN .
Bon nombre des principales avancées dans le domaine de l'apprentissage automatique sont survenues dans le domaine des réseaux de neurones, explique Richard Zemel, directeur de recherche au Vector Institute, qui n'a pas participé à l'article. Le document stimulera probablement toute une gamme de travaux de suivi, en particulier dans les modèles de séries chronologiques, qui sont fondamentaux dans les applications d'IA telles que les soins de santé.
N'oubliez pas que lorsque les filets ODE explosent, vous lisez d'abord ici.
Corrections : Une version antérieure de l'article sous-titrait à tort l'image en haut de l'article comme une équation différentielle ordinaire. Il montre les trajectoires des équations différentielles ordinaires neurales. L'article a également été mis à jour pour faire référence à la nouvelle conception en tant que 'réseau ODE' plutôt que 'solveur ODE', afin d'éviter toute confusion avec les solveurs ODE existants d'autres domaines.
__
Cet article a été initialement publié dans notre newsletter AI The Algorithm. Pour le recevoir directement dans votre boîte de réception, inscrivez-vous ici gratuitement.