Apprentissage Automatique et Réseaux Neuronaux - page 36

 

L'intuition derrière la rétropropagation en tant que graphe informatique



L'intuition derrière la rétropropagation en tant que graphe informatique

L'intuition derrière la rétropropagation en tant que graphe de calcul est expliquée dans cette vidéo. L'orateur explique comment une fonction de substitution est utilisée pour estimer la fonction empirique qui mappe les entrées aux sorties, et que l'objectif est de trouver les paramètres qui minimisent la fonction de perte. La rétropropagation permet de calculer le gradient de la fonction de perte par rapport à chaque paramètre par une passe arrière du graphe. Les gradients locaux pour chaque porte du graphique sont calculés et peuvent être utilisés pour calculer le gradient de la sortie finale par rapport à chaque entrée. L'orateur explique également comment gérer les gradients pour les opérations de branchement et de vectorisation et comment s'assurer que la dimensionnalité fonctionne lors du calcul des dérivées.

  • 00:00:00 cette section, la rétropropagation permet à la formation des réseaux de neurones de converger rapidement, et sa compréhension en profondeur peut être bénéfique pour les chercheurs. La conférence commence par expliquer que le but d'un réseau de neurones est de trouver la fonction qui mappe les entrées aux sorties, notée F(x), qui est une fonction empirique qui pourrait ne pas être détectable. La conférence décrit qu'une fonction de substitution G (x, θ) est utilisée pour estimer F, où θ désigne les paramètres du réseau neuronal, et l'objectif est de trouver les paramètres qui minimisent une fonction de perte J. La conférence explique ensuite comment la technique de rétropropagation permet au réseau de trouver les paramètres optimaux en calculant le gradient de la fonction de perte par rapport à chaque paramètre à travers une passe arrière du graphique.

  • 00:05:00 Dans cette section, l'orateur discute de la recherche de la dérivée de G par rapport à thêta, ce qui est crucial dans la formation d'un réseau de neurones. L'exemple utilisé est une fonction simple de X, Y et Z, où la dérivée partielle de F par rapport à X, Y et Z doit être calculée. Le concept de gradients locaux est introduit, qui sont les dérivées de la sortie par rapport à l'entrée pour une opération donnée. Cependant, la règle de la chaîne est nécessaire pour calculer la sortie finale par rapport à la variable distante, qui dans ce cas sont X, Y et Z.

  • 00:10:00 Dans cette section, nous voyons comment trouver les gradients dans le graphe de calcul en utilisant le flux arrière du gradient. Le gradient du nœud de sortie est trivialement 1, et pour calculer le gradient à chaque nœud, nous multiplions le gradient local avec le gradient reçu du nœud précédent. Le programme peut alors calculer les gradients finaux de del F par Del X, del F par Del Y et del F par Del V. Il est crucial de garder à l'esprit que nous calculons toujours le gradient par rapport à la fonction de perte finale, qui dans le cas d'un réseau de neurones, est la fonction de perte J. Enfin, nous apprenons comment un neurone d'un réseau de neurones exécute une fonction simple lors du passage vers l'avant et comment, lors de la rétropropagation, nous pouvons calculer et utiliser localement les gradients.

  • 00:15:00 Dans cette section, l'orateur explique l'intuition derrière la rétropropagation en tant que graphe de calcul pour un neurone. Le gradient local est obtenu en multipliant la fonction arrière par les valeurs del Z par Del X et del Z par Del Y. Le flux arrière va dans le sens de la sortie du neurone, où les autres neurones qui lui envoient des données obtiennent Del J par Del X. La technique du graphe de calcul est également utilisée pour des fonctions plus complexes telles que la fonction sigmoïde où le gradient arrière est calculé numériquement. Le gradient local pour chaque nœud est calculé en prenant la dérivée de la fonction, puis en la multipliant par le flux de gradient.

  • 00:20:00 Dans cette section, l'orateur explique comment calculer les gradients locaux de chaque porte dans un graphe de calcul et comment ils peuvent être utilisés pour obtenir le gradient de la sortie finale par rapport à chaque entrée. L'exemple utilisé dans la vidéo implique un petit graphique de calcul composé de plusieurs portes, telles que des portes d'addition et de multiplication, et l'orateur explique l'intuition derrière l'algorithme de rétropropagation en utilisant cet exemple. L'orateur détaille comment calculer les gradients locaux pour chaque porte du graphique et montre comment ils peuvent être combinés pour calculer le gradient de la sortie finale par rapport à chaque entrée.

  • 00:25:00 Dans cette section, l'orateur discute de l'intuition derrière la rétropropagation en tant que graphe de calcul. Ils expliquent comment les gradients sont calculés pour différents types de portes, telles que les portes d'addition et les portes multiplicatives, et le modèle qui émerge lors du calcul du flux arrière. L'orateur explique également comment définir les fonctions avant et arrière pour chaque porte, et une fois définies, ces fonctions peuvent être utilisées pour n'importe quel graphe de calcul, ce qui rend le processus plus efficace.

  • 00:30:00 Dans cette section, le concept de passes avant et arrière dans la rétropropagation est discuté sous la forme d'un graphe de calcul. La passe avant calcule la sortie qui devient l'entrée du nœud suivant jusqu'à ce que la perte soit atteinte. Dans la passe arrière, DZ est initialement défini sur un et les calculs sont effectués dans le sens inverse. Lorsqu'il s'agit de vecteurs, le gradient local est pris à l'aide de matrices jacobiennes et la multiplication à gauche est utilisée dans la règle de chaîne. Del L par Del X ou Del L par Del Y est calculé à l'aide des deux matrices jacobiennes, del Z par Del X ou del Z par Del Y et del L par Del V.

  • 00:35:00 Dans cette section, l'orateur explique comment calculer la passe avant et la rétropropagation d'une fonction donnée à l'aide du graphe de calcul. À l'aide d'un exemple de fonction, l'orateur parcourt le processus de création de variables intermédiaires et de calcul de la passe avant. Ensuite, l'orateur montre comment calculer la passe arrière en calculant les gradients par rapport à l'entrée et à la sortie de chaque porte. L'orateur insiste sur l'utilité de garder à l'esprit les dérivées de la fonction sigmoïde.

  • 00:40:00 Dans cette section, l'orateur explique comment gérer les gradients pour les opérations de branchement et de vectorisation en rétropropagation. Lorsque la ramification se produit, des gradients sont ajoutés et lors du calcul des gradients pour les fonctions, les gradients intermédiaires précédents peuvent être réutilisés. Les opérations vectorisées, telles que la multiplication matricielle, peuvent être traitées de manière similaire en calculant les gradients par rapport à chaque élément séparément et en utilisant des opérations matricielles pour les combiner. La dimensionnalité des gradients est déterminée par la dimensionnalité de la sortie de l'opération en cours d'exécution.

  • 00:45:00 Dans cette section, l'orateur explique comment s'assurer que la dimensionnalité fonctionne lors du calcul del D/del W et del D/del X dans une fonction, en utilisant l'exemple de la multiplication matricielle dans TensorFlow. Les dimensions de W et DD sont connues, et puisque la seule façon de faire fonctionner la multiplication est d'utiliser W point point point X, c'est une bonne idée de mémoriser cette formule. L'orateur rappelle aux téléspectateurs qu'il est important de comprendre les opérations de graphe de calcul dans TensorFlow, même si des frameworks comme TensorFlow éliminent une telle complexité. Cette connaissance s'avérera utile lorsqu'il s'agit de couches personnalisées, qui obligent l'utilisateur à écrire ses passes avant et arrière.
 

Production de l'apprentissage profond pour la vision par ordinateur



Production de l'apprentissage profond pour la vision par ordinateur

Le directeur technique et scientifique en chef de Jumio, Lavash Patel, explique comment leur entreprise utilise un mélange d'experts en intelligence artificielle et en identification pour établir la confiance en ligne et vérifier l'authenticité des documents d'identité. Le processus de vérification d'identité est difficile en raison de la variété des identifiants et des sous-types, ainsi que de la nécessité de rectifier et de rejeter les images illisibles. Pour maintenir l'exactitude, une approche humaine dans la boucle est adoptée, où les modèles d'IA détectent les problèmes et un humain effectue une vérification de l'intégrité des résultats. Patel explique également comment Jumio produit l'apprentissage en profondeur à l'aide d'un algorithme d'apprentissage actif hybride, qui s'adapte aux nouveaux sous-types et s'améliore en se recyclant. De plus, il souligne l'importance de données propres dans la reconnaissance faciale et le maintien de la conformité PCI lorsqu'il s'agit de traiter des données sensibles à des fins d'apprentissage automatique.

  • 00:00:00 Dans cette section, Lavash Patel, directeur technique et scientifique en chef de Jumio, décrit l'activité de l'entreprise consistant à établir la confiance en ligne grâce à la combinaison d'experts en IA et en ID pour vérifier l'authenticité d'un document d'identité. Le problème avec ce type de processus de vérification est rendu difficile par le fait qu'ils acceptent le trafic de toutes sortes de canaux, y compris les téléphones mobiles, les webcams et les simples appels d'API. Pour résoudre ces problèmes, Jumio utilise un mélange de modèles de classification et de Facemash pour aider à vérifier l'authenticité d'une pièce d'identité et l'identité de la personne devant la caméra.

  • 00:05:00 Dans cette section, l'orateur discute des défis liés à l'utilisation de l'IA pour la vérification d'identité, compte tenu de la variété d'identifiants et de sous-types qui existent. L'importance de la rectification ou de l'alignement des images est soulignée, ainsi que la nécessité de rejeter les images illisibles en raison du flou ou de l'éblouissement. L'approbation des images d'identité est un processus plus strict que le rejet, car chaque composant doit réussir pour être considéré comme valide. Afin de maintenir une précision stricte et de rejeter les utilisateurs frauduleux, une approche humaine dans la boucle est adoptée dans laquelle des modèles d'IA sont utilisés pour détecter les problèmes et un humain est utilisé pour effectuer un contrôle d'intégrité sur les résultats. Cette approche permet une précision de pointe en termes de conversion et de détection des fraudes.

  • 00:10:00 Dans cette section, l'orateur discute de l'aspect classification de la production de l'apprentissage en profondeur pour la vision par ordinateur. Alors que la classification des images a été résolue ces dernières années à l'aide d'un réseau pré-formé comme Inception Version 4 ou Viji 16, le problème est légèrement différent en raison des balises agrégées au lieu des balises granulaires. Avec plus de 100 millions d'images étiquetées, la découverte des différentes classes est devenue un problème de découverte de classe métamorphosé, que l'apprentissage actif peut résoudre. L'apprentissage actif hybride implique une étape d'apprentissage non supervisé ou de regroupement intégré, en commençant par les classes les plus populaires avec des exemples étiquetés pour obtenir une poignée de classes.

  • 00:15:00 Dans cette section, le conférencier explique comment produire un apprentissage profond pour la vision par ordinateur à l'aide d'un algorithme d'apprentissage actif hybride. L'algorithme collecte un grand nombre d'échantillons par classe et forme un classificateur pour classer en toute confiance les images en 50 classes, avec des niveaux de confiance en sortie. L'algorithme regroupe ensuite automatiquement les images dans lesquelles le classificateur n'a pas confiance, et un agent humain les examine pour ajouter de nouvelles classes si nécessaire. Une fois le modèle créé, il est déployé en tant qu'API, et s'il existe des réglementations de conformité, la journalisation, la surveillance et les contrôles de santé peuvent être ajoutés. De plus, l'orateur note que l'algorithme s'adapte aux nouveaux sous-types et continue de s'améliorer en se réentraînant, comme il l'a fait lorsqu'un nouvel identifiant avec une orthographe incorrecte a été détecté et que l'agent humain l'a rejeté.

  • 00:20:00 Dans cette section, l'orateur explique comment ils produisent de nouveaux modèles en ayant toujours un modèle champion en place et en évaluant les nouveaux modèles en fonction de leurs performances par rapport au champion. Cette méthode permet également une amélioration continue à l'aide d'une infrastructure d'apprentissage actif hybride qui récolte et nettoie en continu des ensembles de données. Le pipeline de production est sensible à la propreté des ensembles de données, avec un taux d'erreur cible pour la formation ne dépassant pas 20 %. L'ensemble du processus doit également être conforme aux normes PCI et GDP, ce qui signifie que tout doit être crypté et apporté aux données au lieu des données à la formation. L'orateur présente ensuite une deuxième étude de cas sur l'appariement des visages, où ils utilisent à leur avantage des biais de données sur l'âge, le sexe et l'origine ethnique pour faire correspondre les selfies aux pièces d'identité.

  • 00:25:00 Dans cette section, l'orateur discute d'une approche possible pour résoudre le problème de la détection des utilisateurs frauduleux grâce à l'utilisation d'incorporations de visage et de la fonction de perte de triplet dans un réseau à convolution profonde. Le processus consiste à rogner les visages à l'aide d'un détecteur de visage et à utiliser des ensembles de données publics pour former le modèle, suivi d'un réglage fin des données de production. Le modèle est affiné grâce au processus d'apprentissage actif, qui consiste à utiliser une infrastructure supervisée pour récolter des échantillons informatifs et augmenter continuellement les données. Le conférencier met l'accent sur l'efficacité de l'apprentissage actif dans un large éventail de cas d'utilisation.

  • 00:30:00 Dans cette section, l'intervenant insiste sur l'importance des données propres en vision par ordinateur, notamment en reconnaissance faciale. Il souligne que la production de l'apprentissage en profondeur implique bien plus que la simple modélisation et que même des problèmes simples comme la classification peuvent finir par avoir de nombreuses complexités au stade de la production. L'intelligence collaborative ou les flux de travail humains dans la boucle peuvent également être utiles pour améliorer les algorithmes et sont particulièrement importants dans la reconnaissance faciale, car ils nécessitent des ensembles de données propres. Le conférencier a également mentionné que leur entreprise embauche pour ses équipes de R&D basées à Vienne et à Montréal.

  • 00:35:00 Dans cette section, l'orateur discute des défis liés au maintien de la conformité PCI lorsqu'il s'agit de traiter des données sensibles à des fins d'apprentissage automatique et d'IA. L'orateur explique que les données ne doivent être utilisées qu'aux fins prévues et que des lieux et des procédures hautement sécurisés doivent être en place pour empêcher tout accès non autorisé. L'orateur explique également que les données sont placées dans des compartiments Amazon S3 au sein de la DMZ PCI et que des images obscurcies sont créées à des fins d'apprentissage automatique, qui sont ensuite supervisées à distance pour s'assurer qu'il n'y a pas de fuite de données personnelles.
 

Gail Weiss : Penser comme des transformateurs



Gail Weiss : Penser comme des transformateurs

Gail Weiss aborde le concept des encodeurs à transformateur dans cette vidéo, expliquant leur capacité à traiter des séquences et à les encoder en vecteurs. Weiss met en évidence plusieurs études explorant les forces et les limites des encodeurs de transformateur et introduit un langage de programmation appelé langage de traitement de séquence à accès restreint (RASP) pour représenter les capacités des encodeurs de transformateur. Elle discute également de l'attention à plusieurs têtes, des modèles de sélection et des défis de softmax dans certaines conditions, avant de se plonger dans l'utilisation d'opérateurs de séquence et de fonctions de bibliothèque pour calculer l'inverse et le sélecteur inversé. Weiss donne un aperçu de la création d'un programme optimal pour un transformateur et des idées des transformateurs universels et sandwich, discutant finalement du prédicat sélectionné et des relations binaires par rapport à l'ordre trois.

Il parle également des avantages et des inconvénients potentiels de l'utilisation d'une attention d'ordre supérieur dans les modèles de transformateurs, ainsi que de l'importance des connexions résiduelles dans le maintien des informations à travers les couches. Elle discute également des problèmes potentiels avec des transformateurs très profonds s'écartant du modèle RASP et suggère l'utilisation d'intégrations plus longues pour surmonter le flou des informations.

  • 00:00:00 Dans cette section de la vidéo, Gail Weiss présente le concept d'encodeurs à transformateur, qui font partie d'un réseau de neurones conçu pour traiter des séquences. Elle explique que l'encodeur de transformateur prend une séquence donnée et l'encode dans un ensemble de vecteurs, avec quelques exemples populaires dont BERT. Weiss met ensuite en évidence plusieurs études qui ont exploré les forces et les limites des codeurs à transformateur, y compris leur capacité à reconnaître les langages formels et à effectuer des calculs. Bien que ces études donnent un aperçu des capacités des encodeurs de transformateurs, Weiss note qu'elles n'offrent pas une intuition claire sur la façon dont les transformateurs traitent réellement les tâches.

  • 00:05:00 Dans cette section, Gail Weiss explique que les réseaux de neurones récurrents (RNN) sont similaires à une machine à états finis, qui définit les transitions entre les états en fonction des vecteurs d'entrée, tout en produisant une classification finale en fonction de l'état atteint. En analysant leur pouvoir expressif à l'aide de notre compréhension des automates finis déterministes, ils obtiennent un aperçu de ce qu'il faut faire avec les RNN, permettant la conversion d'un RNN en automates finis pondérés, en automates finis déterministes ou en automates finis déterministes pondérés. Cependant, cette intuition n'existe pas pour Transformers et il est nécessaire de proposer un modèle qui servirait un objectif similaire pour l'encodeur Transformer. Contrairement aux RNN, les encodeurs Transformer prennent l'intégralité de leur entrée en une seule fois et traitent tous les jetons d'entrée en parallèle via un réseau profond qui applique le traitement un nombre fixe de fois. Bien qu'il n'y ait pas d'états dans Transformers, il y a un sens de traitement et de propagation des informations à travers un ensemble d'opérations.

  • 00:10:00 Dans cette section, Gail Weiss explique comment un encodeur de transformateur peut être représenté comme un langage de programmation appelé langage de traitement de séquence à accès restreint (RASP), qui décrit la création d'opérateurs de séquence (S-ops). Les S-ops représentent les couches de l'encodeur du transformateur qui appliquent des opérations à la séquence, créant davantage d'informations traitées. RASP fournit deux constantes, des jetons et des indices, qui créent de nouvelles séquences de caractères et d'indices à partir de n'importe quelle séquence d'entrée, puis applique un réseau d'anticipation élément par élément à chacun des vecteurs qui entrent dans l'entrée de la couche d'encodeur du transformateur. Le programmeur est responsable du calcul logique ou raisonnable des opérations appliquées, car il peut s'agir de n'importe quelle opération élément par élément.

  • 00:15:00 Dans cette section de la vidéo, Gail Weiss présente le concept d'attention multi-têtes, qui fait partie de la couche d'encodeur du transformateur qui n'est pas élément par élément. Elle commence par expliquer l'attention à tête unique et son fonctionnement en appliquant deux transformations linéaires à la séquence de vecteurs, en créant un ensemble de requêtes et un ensemble de clés. La clé décrit les informations qu'elle a à offrir et la requête décrit les informations souhaitées dans chaque position. Grâce au produit scalaire de la requête avec chacune des clés, les poids sont normalisés et la sortie à chaque position est obtenue. Weiss clarifie également une question concernant la transformation intermédiaire des clés et des valeurs qui permettent au modèle d'avoir plus de paramètres.

  • 00:20:00 Dans cette section, l'orateur discute de l'auto-attention à plusieurs têtes et de la manière dont elle peut être utilisée pour compresser plusieurs opérations en une seule couche. Le processus consiste à diviser les vecteurs d'entrée en vecteurs de longueur égale et à faire passer chaque bloc dans différentes têtes. Une fois que les multiples têtes ont été appliquées, elles sont concaténées pour former la sortie de l'auto-attention à plusieurs têtes. Bien qu'il n'y ait pas de dépendance entre les différentes têtes, une seule couche peut effectuer plusieurs opérations car elle possède plusieurs têtes différentes. Ce processus permet au programmeur de se soucier des têtes d'attention au lieu de l'auto-attention à plusieurs têtes, ce qui est un problème pour le compilateur.

  • 00:25:00 Dans cette section, Gail Weiss fournit des exemples d'encodage de certains modèles de sélection pour un transformateur. En utilisant l'exemple de la sélection de positions selon qu'elles se décrivent avec un zéro, un ou deux, Weiss indique que la première position choisit les deux dernières positions, la deuxième position ne choisit rien et la troisième position ne choisit que la première. Weiss explique également que différents types de comparaison peuvent être sélectionnés, tels que supérieur ou égal, inférieur ou égal ou inégal, et que les sélecteurs peuvent être composés ensemble. Cependant, Weiss note que l'abstraction des modèles de sélection aux transformateurs dépend du caractère raisonnable de l'opération en cours d'exécution, et c'est au programmeur de s'en assurer.

  • 00:30:00 Dans cette section, l'orateur discute des défis de l'utilisation de softmax dans certaines conditions, à savoir qu'il y a un léger accent sur les postes restants qui ne répondent pas aux critères de sélection. Pour résoudre ce problème, l'orateur suggère que si la taille de ces incorporations est augmentée, softmax commencera à se rapprocher d'une sélection dure de positions "inférieur ou égal" et "plus". La présentation passe ensuite à l'idée d'agrégation et à la manière dont les jetons peuvent être sélectionnés et pondérés à l'aide d'une moyenne. L'orateur fournit un exemple d'inversion de jeton, et comment ils ont créé un sélecteur d'inversion et agrégé les jetons pour obtenir la séquence d'entrée inversée en utilisant l'exemple du mot "bonjour" pour sortir "olleh".

  • 00:35:00 Dans cette section, l'orateur explique comment l'opérateur de longueur peut être utilisé dans les transformateurs même s'il ne fait pas partie de l'entrée, et comment les décisions de sélection sont par paires pour empêcher des opérations de sélection arbitrairement puissantes qui pourraient masquer une puissance arbitraire. L'orateur parle également d'autres composants du transformateur tels que le saut ou la connexion résiduelle, qui rajoute la valeur des plongements, et les normes de couche, qui ne sont pas présentes dans le modèle RASP. De plus, l'orateur mentionne l'utilisation de fonctions et de sélecteurs de composition pour plus de commodité afin d'éviter de répéter le code.

  • 00:40:00 Dans cette section, l'orateur discute de l'utilisation d'opérateurs de séquence tels que val, min et max pour vérifier quels indices se situent dans une certaine plage. Ils mentionnent également l'utilité des fonctions de bibliothèque telles que la largeur du sélecteur dans la mise en œuvre de fonctions telles que les histogrammes en place et le comptage des jetons dans les séquences d'entrée. De plus, l'orateur décrit comment ils ont calculé la longueur d'une séquence à l'aide d'un sélecteur et d'une fonction d'indicateur, notant que la normalisation des couches pourrait compliquer ces calculs. Enfin, ils suggèrent une solution alternative impliquant un réseau de rétroaction pour calculer l'inverse, mais reconnaissent qu'il peut encore être affecté par la normalisation des couches.

  • 00:45:00 Dans cette section, Gail Weiss explique comment les transformateurs peuvent apprendre à calculer l'inverse et le sélecteur flip, même lorsqu'ils traitent des séquences relativement courtes. Elle explique en outre que l'analyse du programme Ras peut être utilisée pour déterminer quand appliquer le calcul inverse et quand appliquer le sélecteur de retournement, tout en s'assurant que les paires de sélection et d'agrégation ne sont que des têtes d'attention. Enfin, elle explore comment un transformateur réel pourrait effectuer le calcul inverse en deux couches, ce qui a été étayé par les conclusions selon lesquelles le transformateur a réussi à atteindre une précision de 99,6 % lors de l'inversion de séquences d'entrée jusqu'à 100 de longueur après 20 époques.

  • 00:50:00 Dans cette section, Gail Weiss discute de la création d'un programme optimal pour un transformateur, qui nécessite deux couches pour effectuer efficacement la tâche. Même si le programme est réduit à une seule couche et que deux fois les paramètres sont ajoutés ou que deux têtes sont utilisées, il ne parviendra pas à obtenir une grande précision car il ne sait pas comment gérer la longueur de séquence changeante. De plus, les modèles d'attention sont les mêmes dans les deux couches, la première couche utilisant une attention uniforme pour calculer la longueur de la séquence et la deuxième couche utilisant le même modèle d'attention inversé. Plus loin, Weiss présente un histogramme sur place, qui consiste à sélectionner des jetons et à afficher le nombre de fois que ce jeton apparaît dans la séquence d'entrée. En concentrant chaque jeton sur le même jeton que lui-même ou sur la première position au début du jeton de séquence, ils n'utilisent qu'une seule tête d'attention pour entraîner un transformateur, ce qui facilite grandement le calcul de l'inverse et d'autres éléments.

  • 00:55:00 Dans cette section, Gail Weiss parle de la perspicacité qui vient du transformateur universel et du transformateur sandwich, qui affectent tous deux la façon de penser et d'utiliser le modèle de transformateur. Elle explique que chaque opérateur de séquence dans RASP est le résultat d'un nombre fini d'opérations, donc le langage n'est pas infiniment puissant mais un nombre fini de calculs O(n^2). Elle aborde également le coût de calcul d'une tête d'attention dans l'encodeur du transformateur et comment il ne vaut peut-être pas la peine d'utiliser les calculs n ^ 2. La conversation passe ensuite à une discussion autour du prédicat select et des relations binaires contre ordre trois.

  • 01:00:00 ans cette section, Gail Weiss discute de l'augmentation potentielle de puissance d'un modèle de transformateur avec une attention d'ordre supérieur, comme un troisième ordre au lieu d'un deuxième ordre. Elle explique qu'un tel modèle pourrait potentiellement calculer des fonctions avec des opérations supérieures à O(n^2), augmentant ainsi sa puissance. Cependant, cela serait également plus coûteux en termes de calcul. Weiss souligne également l'importance des connexions résiduelles dans le modèle de transformateur comme moyen de conserver et de réutiliser les informations dans toutes les couches, et suggère que leur suppression peut réduire considérablement les performances même si elles n'apparaissent pas comme une opération distincte.

  • 01:05:00 Dans cette section de la vidéo, Gail Weiss discute des problèmes potentiels qui pourraient survenir avec des transformateurs très profonds et comment ils peuvent s'écarter du modèle RASP. Elle mentionne un article qu'elle a lu dans ICML sur l'importance de supprimer certaines informations d'un transformateur, ce qui pourrait entraîner une perte rapide d'informations. Cependant, elle note également que les informations peuvent être conservées si elles sont reconnues comme importantes. Weiss discute également de l'idée d'avoir une intégration très longue pour surmonter les problèmes de flou dans les informations à mesure que le transformateur s'approfondit.
 

Visualiser et comprendre les réseaux de neurones profonds par Matt Zeiler



Visualiser et comprendre les réseaux de neurones profonds par Matt Zeiler

Matt Zeiler discute de la visualisation et de la compréhension des réseaux de neurones convolutionnels (CNN) pour la reconnaissance d'objets dans les images et les vidéos. Il décrit les performances des réseaux de neurones profonds par rapport aux humains et aux primates dans la reconnaissance des objets et montre comment les CNN apprennent à identifier les objets en parcourant les couches. Zeiler explique le processus d'amélioration de l'architecture CNN et discute des limites lors de la formation avec des données limitées. Enfin, il répond aux questions sur l'utilisation des couches inférieures dans les couches supérieures et l'application des convolutions dans les réseaux de neurones.

  • 00:00:00 Dans cette section, Matt Zeiler décrit une technique pour visualiser les réseaux convolutifs utilisés pour reconnaître des objets dans des images et des vidéos, ce qui leur permet de comprendre ce que chaque couche apprend et d'obtenir des informations pour améliorer les performances. Les réseaux de neurones convolutifs existent depuis la fin des années 80, avec de nouvelles approches utilisant à peu près la même architecture qu'auparavant. La percée dans le domaine a été réalisée par l'équipe de Geoff Hinton, car leur réseau de neurones a réduit les taux d'erreur sur la référence commune, ImageNet, de dix pour cent au lieu des vingt-six pour cent habituels, ce qui a conduit à de meilleures performances sur les tâches de reconnaissance.

  • 00:05:00 Dans cette section, Matt Zeiler discute des études récentes qui comparent les performances des réseaux de neurones profonds à celles des primates et des humains dans la reconnaissance des objets. Une étude consistait à enregistrer le déclenchement des électrodes dans le cerveau d'un singe lorsqu'il était présenté avec des images et à comparer sa précision de reconnaissance à celle des réseaux de neurones profonds et des humains. Les résultats ont montré que les humains, les réseaux de neurones profonds et le cortex informatique du singe fonctionnaient presque de la même manière lorsque les images étaient présentées pendant moins de 100 millisecondes. De plus, Zeiler discute des réseaux convolutifs D, qui sont des modèles d'apprentissage non supervisés utilisés pour reconstruire des images tout en réduisant les fonctionnalités de niveau supérieur, dans le but d'apprendre ce qu'un réseau convolutif apprend réellement.

  • 00:10:00 Dans cette section, Matt Zeiler explique l'importance de rendre réversibles les opérations dans les réseaux convolutifs pour obtenir de bonnes reconstructions, en particulier lorsqu'il s'agit de plusieurs couches d'informations. Il démontre comment la couche la plus élevée du réseau est visualisée (à l'aide d'un ensemble de validation de 50 000 images) en sélectionnant la carte d'entités unique avec la plus forte activation à la fois et en l'utilisant comme entrée au sommet du réseau convolutif pour reconstruire les visualisations à partir de le bas vers le haut. La visualisation des cartes de caractéristiques de la première couche montre des filtres comprenant des bords orientés et des bords de couleur à des orientations et des fréquences variables, ce que les chercheurs attendaient auparavant. Cependant, la visualisation des couches supérieures fournit de nouvelles informations sur la façon dont le réseau apprend et classe différents objets en montrant les activations et les invariants les plus forts sur plusieurs images.

  • 00:15:00 Dans cette section, Zeiler explique le développement de la deuxième couche de réseaux de neurones, qui présente un ensemble de modèles beaucoup plus complexe que le premier. Des combinaisons d'arêtes, de lignes parallèles, de courbes, de cercles et de blocs colorés, entre autres structures, sont présentes dans la deuxième couche. Grâce à la mutualisation, il dispose d'un périmètre plus large de ce qu'il peut traiter à partir de l'image. En regardant la troisième couche, Zeiler montre comment il apprend les parties d'objet qui sont cruciales pour construire une représentation d'un objet, comme le visage d'un chien ou un visage humain. Les caractéristiques de regroupement restent présentes dans la troisième couche, mais sous la forme d'un regroupement sémantiquement plus pertinent de grilles ou de structures de visage spécifiques.

  • 00:20:00 Dans cette section, il est expliqué comment le réseau de neurones apprend à identifier des objets spécifiques au fur et à mesure qu'il traverse les couches. Dans la quatrième couche du réseau, les connexions deviennent plus spécifiques à l'objet et les catégories qui ne sont pas explicites dans les tâches, comme l'herbe, deviennent une fonctionnalité. Le modèle apprend également à reconnaître plusieurs caractéristiques telles que différentes races de chiens ou différents types de claviers à différentes orientations. La dernière couche de convolution grossit en raison des effets de frontière sur les convolutions à mesure qu'elle se rapproche de la couche de classification. Le contenu de cette dernière couche devient hautement spécifique à l'objet car le modèle doit prendre une décision sur la classe à laquelle appartient l'image, et seulement 256 caractéristiques existent dans cette couche.

  • 00:25:00 Dans cette section, Matt Zeiler discute d'une expérience pour confirmer que les visualisations se déclenchent sur des parties pertinentes de l'image. Ils ont glissé un bloc de zéros avec un pixel moyen de 128 sur l'image et enregistré les activations ou probabilités du modèle. En bloquant le visage d'un chien de Poméranie, ils ont constaté que la probabilité de Poméranie diminue considérablement, tandis que la classe la plus probable est une balle de tennis lorsque le visage est bloqué. Fait intéressant, ils ont découvert que la cinquième couche a appris un détecteur de texte car elle supprime considérablement la fonctionnalité lors du blocage de tout texte dans une image, ce qui donne l'idée que la couche peut associer du texte à d'autres classes. Enfin, ils ont utilisé le modèle du groupe de Toronto qui a remporté le défi ImageNet en 2012 et a constaté une énorme disparité dans la normalisation des filtres dans la première couche.

  • 00:30:00 Dans cette section de la vidéo, Matt Zeiler discute du processus d'amélioration de l'architecture des réseaux de neurones profonds. Il explique qu'après avoir résolu le problème de la renormalisation, il est devenu évident que les filtres de la première couche étaient trop volumineux, ce qui entraînait des filtres morts. La deuxième couche comportait également de nombreux artefacts de blocage, ce qui lui faisait perdre des informations, les amenant à réduire les progrès de la convolution et à supprimer les artefacts de blocage, et à augmenter la flexibilité de la deuxième couche. Ces modifications les ont aidés à remporter le concours ImageNet 2013, et ces approches ont été réutilisées lors de concours ultérieurs, ce qui a donné de bons résultats. Zeiler discute également des capacités de généralisation et des utilisations de ces réseaux de neurones pour déterminer la saillance.

  • 00:35:00 Dans cette section, Zeiler discute des limites des modèles profonds lorsqu'une petite quantité de données d'entraînement est utilisée, indiquant que les modèles ont du mal à apprendre correctement les fonctionnalités. Il explique que ces modèles sont aptes à reconnaître les caractéristiques qui sont importantes en général pour la reconnaissance d'objets, et cela peut être transféré à d'autres tâches avec seulement quelques exemples, comme indiqué dans divers tableaux et graphiques. De plus, Zeiler examine à quel point il est important de former un modèle approfondi en examinant toutes les couches intermédiaires et différents types de classificateurs. Enfin, Zeiler suggère que l'utilisation d'un modèle formé pour nettoyer les données d'étiquettes recueillies est possible et pourrait potentiellement améliorer les modèles de formation.

  • 00:40:00 Dans cette section, Zeiler répond à la question de savoir si les couches inférieures d'un réseau de neurones, qui ont montré des performances décentes en classification, peuvent être utilisées dans les couches supérieures ou à proximité des sorties de classification. Il explique qu'il peut y avoir plus d'informations dans les couches supérieures en raison de l'extraction répétée, mais différents types d'informations pourraient également aider. La conversation passe ensuite aux performances des différentes couches et aux considérations matérielles pour la formation de grands réseaux de neurones. Zeiler discute également de la capacité des réseaux de neurones à reconnaître des classes moins concrètes, telles que des émotions ou des gestes subtils, et la cartographie de différentes tailles de couches.

  • 00:45:00 Dans cette section, l'orateur explique comment les convolutions sont appliquées sur une image et d'autres couches dans les réseaux de neurones. L'application des convolutions dépend de deux paramètres : la taille du filtre et le pas entre les endroits où le filtre est appliqué. Dans les couches inférieures, l'orateur explique que des pas de deux sont utilisés car il y a trop de contenu spatial et le calcul à chaque emplacement est trop coûteux. Cependant, cela peut entraîner une perte d'informations. L'orateur mentionne également qu'il n'y a pas d'apprentissage non supervisé dans les premières couches du réseau neuronal, et que des mots descriptifs comme "abandonné" sont déjà intégrés au vocabulaire.
 

Comment ChatGPT est formé



Comment ChatGPT est formé

ChatGPT est un système d'apprentissage automatique conçu pour imiter la conversation humaine. Il est d'abord formé à l'aide d'une approche générative de pré-formation qui s'appuie sur des quantités massives de données textuelles non structurées, puis affiné à l'aide de l'apprentissage par renforcement pour mieux s'adapter aux préférences de l'utilisateur.

  • 00:00:00 ChatGPT est un système d'apprentissage automatique conçu pour imiter la conversation humaine. Il est formé à l'aide d'une approche générative de pré-formation qui repose sur des quantités massives de données textuelles non structurées.

  • 00:05:00 ChatGPT est un chatbot formé pour répondre aux demandes des utilisateurs de manière humaine. Pour ce faire, il conditionne d'abord le modèle sur un exemple construit manuellement illustrant le comportement souhaité, puis utilise l'apprentissage par renforcement pour ajuster le modèle aux préférences de l'utilisateur.

  • 00:10:00 ChatGPT est un chatbot formé à l'aide d'un classement sur K sorties pour une entrée donnée. Le modèle de récompense attribuera un score scalaire à chaque membre d'une paire, représentant des logits ou des probabilités logarithmiques non normalisées. Plus le score est élevé, plus grande est la probabilité que le modèle placé sur cette réponse soit préféré. L'entropie croisée standard est utilisée pour la perte en traitant le modèle de récompense comme un classificateur binaire. Une fois formés, les scores scalaires peuvent être utilisés comme récompenses. Cela permettra une formation plus interactive que le cadre purement supervisé. Au cours de la phase d'apprentissage par renforcement, notre modèle de politique qu'est le chat bot sera affiné à partir du modèle supervisé final. Il émet des actions ses séquences de jetons lorsqu'il répond à un humain dans un environnement conversationnel. Étant donné un état particulier qui est un historique de conversation et une action correspondante, le modèle de récompense renvoie la récompense numérique. Les développeurs choisissent d'utiliser l'optimisation de politique proximale ou PPO comme algorithme d'apprentissage par renforcement ici. Nous n'entrerons pas dans les détails du PPO dans cette vidéo, mais cela a été un choix populaire dans différents domaines. Maintenant, le modèle de récompense apprise par rapport auquel nous optimisons ici est une approximation décente du véritable objectif qui nous tient à cœur. Cependant, ce n'est encore qu'une approximation d'un objectif de substitution.
 

Le VRAI potentiel de l'IA générative



Le VRAI potentiel de l'IA générative

L'IA générative a le potentiel de révolutionner la façon dont les produits sont créés, en aidant les développeurs dans le prototypage, l'évaluation et la personnalisation. Cependant, la technologie en est encore à ses débuts et des recherches supplémentaires sont nécessaires pour s'assurer qu'elle est utilisée de manière éthique et sûre.

  • 00:00:00 La vidéo traite des avantages et des défis potentiels de l'utilisation de grands modèles de langage, et explique ensuite comment Human Loop peut vous aider à créer des applications différenciées sur ces modèles.

  • 00:05:00 La vidéo explique comment l'IA générative peut aider les développeurs dans le prototypage, l'évaluation et la personnalisation de leurs applications. Il note que le travail d'un développeur est susceptible de changer à l'avenir, car la technologie de l'IA contribue à augmenter son flux de travail.

  • 00:10:00 La vidéo traite du potentiel de l'IA générative et aborde certains des obstacles à son adoption généralisée. Il note que bien que la technologie ait un grand potentiel, elle en est encore à ses débuts et des recherches supplémentaires sont nécessaires pour garantir qu'elle est utilisée de manière éthique et sûre.

  • 00:15:00 Le potentiel de l'IA générative est vaste, avec de nombreuses utilisations potentielles dans un avenir proche. Les startups doivent être préparées à une explosion cambrienne de nouvelles applications, dont certaines peuvent être difficiles à prévoir.

  • 00:20:00 Cette vidéo traite du potentiel de l'IA générative et de la manière dont elle peut être utilisée pour créer des produits nouveaux et innovants.
 

Vrije Universiteit Amsterdam Machine Learning 2019 - 1 Introduction à l'apprentissage automatique (MLVU2019)



Vrije Universiteit Amsterdam Machine Learning 2019 - 1 Introduction à l'apprentissage automatique (MLVU2019)

Cette vidéo fournit une introduction à l'apprentissage automatique et couvre divers sujets qui s'y rapportent. L'instructeur explique comment se préparer au cours et répond aux préoccupations courantes concernant l'apprentissage automatique intimidant. Il présente les différents types d'apprentissage automatique et le distingue de la programmation traditionnelle basée sur des règles. La vidéo couvre également les bases de l'apprentissage supervisé et fournit des exemples de la façon dont l'apprentissage automatique peut être utilisé pour les problèmes de classification et de régression. Les concepts d'espace des caractéristiques, de fonction de perte et de résidus sont également expliqués.

La deuxième partie de la vidéo fournit une introduction à l'apprentissage automatique et explique son objectif principal de trouver des modèles et de créer des modèles précis pour prédire les résultats à partir d'un ensemble de données. Le conférencier discute de l'importance d'utiliser des algorithmes spécifiques et de diviser les données pour éviter le surajustement et parvenir à la généralisation. Il introduit également le concept d'estimation de la densité et ses difficultés avec des données complexes. L'orateur clarifie la différence entre l'apprentissage automatique et d'autres domaines et fait allusion à une stratégie pour décomposer les grands ensembles de données afin de faire des prédictions précises. La vidéo mentionne également l'augmentation du nombre de personnes travaillant dans l'apprentissage automatique avec le développement de l'apprentissage en profondeur et fournit des conseils aux débutants pour se lancer dans le domaine.

  • 00:00:00 Dans cette section, l'orateur explique comment se préparer au cours d'apprentissage automatique. Ils suggèrent que les étudiants lisent attentivement le matériel principal du cours et se concentrent sur ce qui est nécessaire. De plus, un quiz est disponible pour les étudiants afin de tester leur compréhension et de mémoriser ce que l'instructeur leur dit. Les élèves recevront des devoirs et seront autorisés à utiliser une feuille imprimée avec des formules pour écrire des notes dans la zone restante au stylo.

  • 00:05:00 Dans cette section, l'orateur aborde les préoccupations concernant l'apprentissage automatique effrayant et intimidant, en particulier pour ceux qui n'ont pas de formation en informatique. Il explique que le but du projet est d'aider les individus à se familiariser avec l'apprentissage automatique en fournissant des ensembles de données et des ressources à explorer et à expérimenter. Le conférencier insiste sur l'importance de la collaboration et encourage l'utilisation des feuilles de travail et des outils informatiques fournis pour faciliter l'apprentissage.

  • 00:10:00 Dans cette section, l'orateur discute de l'importance de la dynamique de groupe et des compétences de communication dans le domaine de l'apprentissage automatique. Il souligne que la capacité de travailler et de communiquer efficacement en groupe est tout aussi importante que les compétences en rédaction technique. Le conférencier encourage également les participants à s'inscrire aux séances de groupe et à contacter d'autres personnes du programme pour nouer des relations de travail efficaces. Il conseille aux participants d'utiliser les ressources disponibles, telles que les forums de discussion en ligne, pour se connecter avec d'autres membres du programme et créer des relations de collaboration productives.

  • 00:15:00 Dans cette section, le conférencier présente les différents types de machine learning, en commençant par le machine learning supervisé. Ils expliquent qu'ils passeront en revue deux types d'apprentissage automatique supervisé - la classification et la régression - la régression étant discutée après la pause. L'orateur mentionne également qu'il discutera brièvement de l'apprentissage automatique non supervisé et expliquera pourquoi l'apprentissage automatique est différent des machines ordinaires.

  • 00:20:00 Dans cette section, l'orateur fait la distinction entre la programmation traditionnelle basée sur des règles, qui suit essentiellement un ensemble d'instructions prédéterminées, et l'apprentissage automatique, qui consiste à utiliser de grands ensembles de données pour créer des modèles prédictifs pouvant être utilisés pour prendre des décisions basées sur de nouvelles données. L'apprentissage automatique est utile dans les situations où la prise de décision doit être rapide, fiable et incorruptible. Cependant, il est important de se rappeler que les modèles d'apprentissage automatique ne sont pas parfaits et peuvent échouer de manière inattendue, de sorte que l'intervention humaine est toujours nécessaire pour prendre les décisions finales. L'aide à la décision clinique est un exemple de la façon dont l'apprentissage automatique peut être utilisé pour fournir aux médecins des informations supplémentaires pour les aider dans leur prise de décision.

  • 00:25:00 Dans cette section, le conférencier explique le concept d'apprentissage en ligne ou incrémental dans l'apprentissage automatique. Ils déclarent que l'apprentissage en ligne peut être efficace dans des situations où il y a un flux constant de données, et le modèle doit continuer à mettre à jour et à prédire de nouvelles informations, ce qui est une tâche difficile. Par conséquent, ils recommandent de se concentrer sur l'application de l'apprentissage en ligne en séparant et en reproduisant les données de base pour permettre au modèle de faire des prédictions plus facilement. De plus, l'orateur explique comment les scientifiques des années 1950 et 1960 ont utilisé des cerveaux artificiels simples appelés perceptrons pour explorer comment le cerveau apprend, en utilisant des exemples comme la formation d'un perceptron pour reconnaître la différence entre les hommes et les femmes.

  • 00:30:00 Dans cette section de la vidéo, l'orateur aborde les bases de l'apprentissage automatique et introduit le concept d'apprentissage supervisé, où une machine est entraînée à classer les données dans des catégories spécifiques en fonction des caractéristiques d'entrée. Un exemple est donné de classification des e-mails comme spam ou non spam en mesurant des caractéristiques telles que la fréquence de certains mots. L'objectif est de transmettre ces données à un algorithme d'apprentissage qui crée un modèle, qui peut ensuite prédire avec précision la classe de nouveaux exemples invisibles. Il existe de nombreux algorithmes de classification différents qui peuvent être utilisés pour ce type de problème.

  • 00:35:00 Dans cette section, l'orateur donne deux exemples de la façon dont l'apprentissage automatique peut être utilisé pour des problèmes de classification. Le premier exemple consiste à reconnaître les numéros à plusieurs chiffres dans les contrats de l'Arizona à l'aide de la classification d'images. Ils utilisent des images de 28x28 pixels des chiffres comme caractéristiques et l'objectif est de prédire quel chiffre se trouve dans l'image. Le deuxième exemple consiste à utiliser l'apprentissage automatique pour apprendre à une voiture à conduire, où ils collectent des données via des capteurs dans le volant et les décomposent en cadres et utilisent 960 fonctionnalités pour classer la direction de la voiture.

  • 00:40:00 Dans cette section, l'orateur explique comment construire un algorithme pour résoudre un problème de régression. L'exemple donné consiste à prédire la durée d'un trajet en bus en fonction du nombre de passagers. L'orateur mentionne également qu'il y a une page avec un horaire complet pour le cours, ce qui est important en raison des changements d'heure entre les groupes et des visuels occasionnels qui peuvent changer. Enfin, le conférencier parle de l'utilisation de deux caractéristiques pour prédire la taille d'une personne, ce qui est un exemple de problème d'apprentissage supervisé.

  • 00:45:00 Dans cette section, l'orateur introduit le concept de représentation des données dans un espace de caractéristiques à l'aide d'un axe, ce qui permet la représentation visuelle des éléments et de leurs interfaces. En traçant une ligne dans cet espace, un classificateur peut être créé qui divise l'espace en deux zones où une zone représente tout ce qui se trouve au-dessus de la ligne et l'autre zone représente tout ce qui se trouve en dessous. La sucette logistique est le meilleur choix lors de l'utilisation de lignes, et chaque ligne peut être décrite par trois nombres qui définissent une propriété sur le plan de l'espace 3D. Une fonction de perte, qui est une fonction commutable, permet de calculer le nombre d'exemples qu'un modèle se trompe, et une valeur inférieure signifie un meilleur ajustement du modèle.

  • 00:50:00 Dans cette section, l'orateur donne des exemples d'espaces et comment ils peuvent être utilisés pour créer des modèles. Il explique le concept des arbres de décision et comment ils peuvent être compliqués dans un grand espace. Il démontre également comment le processus de classification peut être rendu simple et puissant, en utilisant quelques variations sur la spécification et la diversification. Enfin, le conférencier aborde la classification multi-classes et multi-étiquettes et comment elles peuvent être utiles dans les cas où les objets ne sont pas mutuellement exclusifs.

  • 00:55:00 Dans cette section, l'orateur explique comment déterminer le score de probabilité de classe et l'espace de sortie appropriés en créant des fonctionnalités basées sur des données importantes. Pour évaluer la ligne thêta et la fonction de perte musculaire, une méthode des résidus est déployée qui mesure la distance entre la valeur prédite du modèle et la valeur de sortie réelle. En utilisant la régression pour tracer le résidu et en calculant la somme des résidus au carré, la précision prédictive peut être améliorée car elle tire la ligne vers les données en fonction de la distance au carré appropriée.

  • 01:00:00 Dans cette section, le conférencier discute de l'importance d'utiliser des algorithmes spécifiques, tels que la régression linéaire multiple, pour analyser les données et créer des modèles. Il explique que ces modèles ne sont pas toujours précis en raison du surajustement, c'est pourquoi les données doivent être divisées en différents morceaux et analysées en conséquence. L'orateur souligne également que la généralisation est l'aspect le plus important lors de la création d'algorithmes d'apprentissage automatique pour garantir que le modèle est capable de prédire avec précision les résultats avec de nouvelles données.

  • 01:05:00 Dans cette section, la vidéo traite de l'apprentissage automatique et de la manière dont il implique l'apprentissage à partir d'une grande quantité de données. Les modèles d'apprentissage automatique sont créés en plaçant des données dans un ensemble de caractéristiques et d'étiquettes, dans le but de trouver des modèles et de créer un modèle capable de prédire avec précision une étiquette basée sur les caractéristiques. Des techniques telles que le clustering k-means peuvent être utilisées pour regrouper des points de données avec des caractéristiques similaires, ce qui peut aider à créer des modèles plus précis. De plus, il est important de comprendre que la recherche d'un modèle optimal nécessite de nombreux essais et erreurs, et qu'il n'existe aucun moyen simple de savoir ce qui fonctionnera le mieux à l'avance.

  • 01:10:00 Dans cette section, l'orateur présente le concept d'estimation de la densité et comment il aide à identifier la distribution de probabilité des données. L'estimation de la densité est effectuée en supposant une distribution d'intérêt et en la capturant sur la base des données de l'échantillon. Le modèle prédit une densité de probabilité pour chaque point dans les entités et attribue un nombre pour représenter la probabilité de taux différents. Cependant, pour des données complexes telles que des images d'êtres humains, l'estimation de la densité devient difficile en raison des caractéristiques de grande dimension, et une approche alternative est nécessaire pour fournir un autre échantillon similaire.

  • 01:15:00 Dans cette section, l'orateur mentionne qu'il existe des domaines autres que l'apprentissage automatique qui peuvent confondre les gens en leur faisant croire qu'ils impliquent des machines, telles que la planification urbaine ou la planification de bains. Cependant, ces domaines ne nécessitent pas nécessairement beaucoup de dépenses ou de temps. L'orateur fait également allusion à une stratégie qui sera discutée plus en profondeur la semaine prochaine, qui consiste à décomposer les grands ensembles de données en groupes plus petits afin de faire des prédictions précises. Cette stratégie est souvent utilisée dans des domaines tels que la reconnaissance vocale ou la reconnaissance de caractères.

  • 01:20:00 Dans cette section, l'orateur discute des différentes façons de penser l'apprentissage automatique et des techniques et modèles existants qui peuvent être utilisés pour cela. Il évoque également la façon dont l'apprentissage en profondeur a contribué à l'augmentation du nombre de saveurs de personnes qui travaillent sur l'apprentissage automatique. En outre, il fournit des conseils aux débutants qui souhaitent se lancer dans l'apprentissage automatique et mentionne la disponibilité de ressources pour les aider dans leur parcours d'apprentissage.
 

2 modèles linéaires 1 : hyperplans, recherche aléatoire, descente de gradient (MLVU2019)



2 modèles linéaires 1 : hyperplans, recherche aléatoire, descente de gradient (MLVU2019)

Cette vidéo couvre les bases des modèles linéaires, des méthodes de recherche et des algorithmes d'optimisation. Les modèles linéaires sont expliqués à la fois en 2 dimensions et en plusieurs dimensions, et le processus de recherche d'un bon modèle par des méthodes telles que la recherche aléatoire et la descente de gradient est discuté. L'importance de la convexité dans l'apprentissage automatique est expliquée et les inconvénients de la recherche aléatoire dans les paysages non convexes sont abordés. La vidéo présente également les méthodes évolutives et la recherche par branchement comme méthodes de recherche. Enfin, l'utilisation du calcul et de la descente de gradient pour optimiser la fonction de perte est expliquée, y compris le processus de recherche de la direction de descente la plus raide pour un hyperplan.

La deuxième partie traite de la descente de gradient et de son application aux modèles linéaires, où l'algorithme met à jour les paramètres en prenant des mesures dans la direction du gradient négatif de la fonction de perte. Le taux d'apprentissage est crucial pour déterminer la rapidité avec laquelle l'algorithme converge vers le minimum, et les fonctions linéaires permettent d'élaborer le modèle optimal sans avoir à chercher. Cependant, des modèles plus complexes nécessitent l'utilisation de la descente de gradient. La vidéo présente également les limites de classification et de décision, où l'objectif est de séparer les points bleus des points rouges en trouvant une ligne qui le fait de manière optimale. Les limites des modèles linéaires incluent leur incapacité à classer des ensembles de données non linéairement séparables, mais ils sont bon marché en termes de calcul et fonctionnent bien dans des espaces de caractéristiques de grande dimension. L'instructeur prévisualise également les futurs sujets qui seront abordés, tels que la méthodologie d'apprentissage automatique.

  • 00:00:00 Dans cette section, l'orateur explique la recette de base de l'apprentissage automatique, qui consiste à résumer un problème, à choisir des instances et des fonctionnalités, à sélectionner une classe de modèle et à rechercher un bon modèle. Ils introduisent ensuite les modèles linéaires comme classe de modèle sélectionnée et discutent de la façon de les écrire en langage mathématique. Ils parlent de méthodes de recherche, notamment de descente de gradient, et soulignent que ces méthodes ne sont pas spécifiques aux modèles linéaires et apparaîtront dans d'autres contextes. La notation pour décrire les ensembles de données est également introduite, en utilisant des exposants pour faire correspondre les instances et les valeurs correspondantes. Enfin, un ensemble de données de régression simple est utilisé comme exemple courant tout au long de la conférence.

  • 00:05:00 Dans cette section, l'orateur discute des modèles linéaires et de la manière dont ils peuvent être utilisés pour mapper un espace à un autre espace. Un modèle linéaire utilise une fonction qui décrit une ligne pour y parvenir. La fonction linéaire a deux paramètres, W et B, qui représentent respectivement la pente et le biais. L'orateur explique que le nombre d'entités dans un ensemble de données peut être arbitraire et que le modèle doit fonctionner avec n'importe quel nombre d'entités. Pour plusieurs entités, chaque instance est représentée sous la forme d'un vecteur utilisant une notation en caractères gras, et chacun de ces vecteurs correspond à une valeur unique.

  • 00:10:00 Dans cette section, l'orateur explique comment étendre le modèle linéaire d'un plan à un hyperplan en attribuant des poids à chaque entité et en conservant une seule valeur B. Cette fonction peut être exprimée comme le produit scalaire de W et X plus B, qui est une simple opération de deux vecteurs de même longueur. Le produit scalaire peut également être exprimé comme la longueur des deux vecteurs dans l'espace multiplié par le cosinus de l'angle entre eux. Le conférencier mentionne également un principe intéressant, à savoir qu'en ajoutant des fonctionnalités simples à un modèle, celui-ci peut devenir plus puissant. Enfin, pour trouver un bon modèle, une fonction de perte est utilisée et un moyen de rechercher dans l'espace de tous les modèles une valeur qui minimise cette fonction de perte.

  • 00:15:00 Dans cette section, l'orateur discute de la fonction de perte d'erreur quadratique moyenne utilisée dans la régression linéaire. La fonction mesure la distance entre la prédiction du modèle et la valeur réelle, élève la distance au carré et additionne tous les résidus pour déterminer la perte. Plus la valeur est faible, meilleur est le modèle. L'orateur explique pourquoi la fonction met les valeurs au carré au lieu d'utiliser des valeurs absolues pour éviter que les valeurs positives et négatives ne s'annulent. Le carré impose également une pénalité supplémentaire aux valeurs aberrantes, les faisant peser davantage dans la fonction de perte. La section aborde également brièvement les espaces de modèles et de caractéristiques et comment la recherche de faibles valeurs de perte dans le paysage des pertes conduit à ajuster un modèle aux données.

  • 00:20:00 modèle simple, la recherche aléatoire peut être utilisée pour trouver les valeurs optimales des paramètres en commençant par un point aléatoire et en utilisant une boucle pour choisir un autre point très proche, en calculant la perte pour les deux points, et si le la perte pour le nouveau point est meilleure, en passant au nouveau point. Le processus se poursuit jusqu'à ce qu'il atteigne les valeurs optimales des paramètres. Ceci est similaire à un randonneur naviguant dans une tempête de neige en faisant de petits pas dans toutes les directions pour déterminer où la pente de la montagne monte le plus et en faisant des pas dans cette direction jusqu'à atteindre la vallée. Cependant, dans les paramètres d'apprentissage automatique, où l'espace est multidimensionnel, il n'est pas possible de voir l'image entière à la fois, de sorte que le processus est analogue à un randonneur dans une tempête de neige, où les petits pas effectués sont à une distance fixe dans une direction aléatoire jusqu'à atteindre les valeurs optimales.

  • 00:25:00 Dans cette section, la vidéo traite du concept de convexité dans l'apprentissage automatique et de son impact sur l'utilisation de la recherche aléatoire comme méthode de recherche de modèle. Une surface de perte convexe, ou en forme de bol lorsqu'elle est représentée mathématiquement, n'a qu'un seul minimum, ce qui permet de trouver un minimum global. Cependant, lorsqu'une surface de perte n'est pas convexe et a plusieurs minima locaux, la recherche aléatoire peut rester bloquée et converger vers un minimum local. Pour résoudre ce problème, le recuit simulé en tant que méthode de recherche est introduit, ce qui permet une probabilité de déplacement vers le haut, permettant au potentiel d'échapper aux minima locaux et de trouver le minimum global.

  • 00:30:00 Dans cette section, la vidéo traite de l'utilisation de méthodes d'optimisation de boîte noire, telles que la recherche aléatoire et le recuit simulé, pour optimiser un espace de modèle continu ou discret en considérant la fonction de perte comme une boîte noire, qui ne nécessite aucun connaissance du fonctionnement interne du modèle. Il est à noter que ces méthodes peuvent également être parallélisées pour exécuter plusieurs recherches simultanément afin d'augmenter les chances de trouver l'optimum global. De plus, la vidéo mentionne que ces méthodes d'optimisation sont souvent inspirées de phénomènes naturels, tels que les algorithmes évolutifs, les particules et les colonies.

  • 00:35:00 Dans cette section, le conférencier présente l'algorithme de base d'une méthode de recherche évolutive qui s'inspire de l'évolution. Cette méthode commence avec une population de modèles, calcule leur perte, les classe, tue la moitié de la population et reproduit l'autre moitié pour créer une nouvelle population. Les nouveaux modèles sont sélectionnés en fonction des propriétés des anciens et une certaine variation est ajoutée à la population en utilisant la mutation. L'orateur explique également une méthode de recherche de branchement, une variante de la recherche aléatoire, où au lieu de choisir une direction aléatoire, K directions aléatoires sont choisies et la direction avec la perte la plus faible est sélectionnée. L'orateur conclut en notant la flexibilité et la puissance des méthodes évolutionnaires, mais met en garde contre leurs coûts de calcul coûteux et les exigences de réglage des paramètres.

  • 00:40:00 Dans cette section, les présentateurs discutent de différentes méthodes de recherche pour trouver le modèle optimal pour un problème donné. À mesure que le nombre de modèles augmente, ils passent plus de temps à explorer la courbure locale, ce qui conduit à une ligne plus directe vers l'optimum. Au lieu de faire un pas au hasard, ils peuvent passer plus de temps à comprendre le quartier local et à déterminer la direction optimale avant de se déplacer. Les auteurs introduisent ensuite la descente de gradient, qui consiste à examiner la fonction de perte et à calculer la direction dans laquelle la fonction diminue le plus rapidement grâce au calcul. Cette méthode nécessite que la fonction soit différentiable, lisse et continue, et n'est plus un modèle de boîte noire.

  • 00:45:00 Dans cette section, l'orateur discute des pentes et des tangentes en relation avec la fonction de perte. La surface de perte n'est pas une fonction linéaire, mais la pente de la ligne tangente, qui représente la dérivée de la fonction de perte, peut donner une indication de la direction et de la vitesse à laquelle la fonction diminue. En dimension supérieure, l'équivalent de la ligne tangente est l'hyperplan tangent, qui peut également nous donner la direction dans laquelle la surface de perte diminue le plus rapidement. Le cours aborde également l'interprétation des vecteurs comme un point dans l'espace ou une direction, ce qui est utile lorsqu'il s'agit de fonctions linéaires telles que les hyperplans.

  • 00:50:00 Dans cette section, l'orateur explique comment généraliser la prise de la dérivée à plusieurs dimensions et comment trouver la direction de descente la plus raide pour un hyperplan. L'équivalent de prendre la dérivée en plusieurs dimensions est de calculer le gradient, qui est un vecteur constitué de la dérivée différentielle partielle par rapport à X, Y et Z. Ces trois valeurs définissent ensemble trois paramètres pour un plan et trois valeurs définissent ensemble un hyperplan. La direction W de descente la plus raide peut être trouvée en maximisant la norme de W multipliée par le cosinus de a, qui est maximisée lorsque la distance entre X et W est égale à l'angle entre X et W ou lorsque X et W sont identiques. Ainsi, la direction de descente la plus raide est W.

  • 00:55:00 Dans cette section, l'orateur explique un algorithme simple pour trouver le minimum d'une fonction de perte appelée descente de gradient. L'algorithme commence par un point aléatoire dans l'espace modèle, calcule le gradient de la perte à ce point, le multiplie par une petite valeur appelée anta, puis le soustrait du modèle. Il n'y a pas de hasard, seulement des étapes purement déterministes. Le dégradé donne à la fois la direction et la taille du pas. L'orateur poursuit ensuite en calculant le gradient d'un paysage de perte à l'aide du calcul, en expliquant les règles de somme et de chaîne, et se termine par le vecteur bidimensionnel de la dérivée de la fonction de perte par rapport à W et B.

  • 01:00:00 Dans cette section, l'orateur discute de l'implémentation de la descente de gradient en Python et comment elle permet un pas dans la direction du vecteur, en suivant la courbure de la surface, pour trouver le minimum et y rester. Pour le démontrer, ils introduisent un site Web appelé playground.tensorflow.org, qui permet aux utilisateurs d'expérimenter un modèle linéaire simple utilisant la descente de gradient. Cependant, l'orateur souligne également que la descente de gradient présente certaines limites, telles que la nécessité de choisir le taux d'apprentissage et la possibilité d'être bloqué dans un minimum local.

  • 01:05:00 Dans cette section, la vidéo traite plus en détail de la descente de gradient et de son application aux modèles linéaires. Avec la descente de gradient, l'algorithme met à jour les paramètres en prenant des mesures dans la direction du gradient négatif de la fonction de perte, et ce processus se répète jusqu'à ce qu'il atteigne un minimum. Le taux d'apprentissage détermine la taille de chaque étape, et il est crucial de trouver un taux d'apprentissage qui ne soit ni trop grand ni trop petit, car il affecte la rapidité avec laquelle l'algorithme converge vers le minimum. Les fonctions linéaires permettent d'élaborer le modèle optimal sans avoir à chercher. Cependant, des modèles plus complexes nécessitent l'utilisation de la descente de gradient. La descente de gradient est rapide, nécessite peu de mémoire et est précise, mais n'échappe pas aux minima locaux et ne fonctionne que sur des espaces modèles continus avec des fonctions de perte lisses. Enfin, la vidéo présente les limites de classification et de décision, où l'objectif est de séparer les points bleus des points rouges en trouvant une ligne qui le fait de manière optimale dans l'espace des caractéristiques.

  • 01:10:00 Dans cette section, l'orateur discute du processus de recherche d'un classificateur pour un ensemble de données de classification simple composé de six instances. Pour ce faire, ils recherchent une fonction de perte qui peut être utilisée pour évaluer les modèles linéaires ou plans potentiels dans l'ensemble de données, dans le but de minimiser le nombre de points mal classés pour obtenir une bonne évaluation. Cependant, la fonction de perte qu'ils utilisent initialement n'est pas adaptée pour trouver le modèle optimal car elle a une structure plate, ce qui rend la recherche aléatoire et l'ascension de gradient inefficaces. L'orateur déclare ensuite que parfois la fonction de perte doit être différente de la fonction d'évaluation et présente une fonction de perte qui a un minimum autour du point souhaité, mais qui est lisse partout.

  • 01:15:00 Dans cette section, le conférencier démontre comment le principe des moindres carrés utilisé dans la régression peut être appliqué à la classification en attribuant des valeurs ponctuelles et en traitant le problème comme un problème de régression. Cette approche fonctionne bien pour regrouper des points linéairement séparables, mais rien ne garantit qu'elle séparera des clusters qui ne sont pas linéairement séparables. Ils montrent comment l'algorithme de descente de gradient fonctionne en prenant des mesures déterminées dans l'espace des caractéristiques pour minimiser la fonction de perte. L'exemple utilisé est un jeu de données avec des points linéairement séparables, et le conférencier souligne également comment les modèles linéaires sont limités dans ce qu'ils peuvent exprimer, comme le montre l'exemple du jeu de données de base qui a des frontières complexes.

  • 01:20:00 Dans cette section, l'instructeur discute des limites des modèles linéaires et de la façon dont ils peuvent échouer à classer des ensembles de données séparables de manière non linéaire, comme un ensemble de données qui a un motif en spirale. Cependant, les modèles linéaires peuvent bien fonctionner dans des espaces de caractéristiques de grande dimension et sont également bon marché en termes de calcul. L'instructeur explique que la descente de gradient stochastique est un outil d'optimisation puissant, mais nécessite une fonction de perte lisse à utiliser comme proxy pour les fonctions de perte discrètes. L'instructeur conclut en prévisualisant les futurs sujets qui seront abordés, tels que la méthodologie d'apprentissage automatique.
 

3 Méthodologie 1 : Aire sous la courbe, biais et variance, pas de repas gratuit (MLVU2019)



3 Méthodologie 1 : Aire sous la courbe, biais et variance, pas de repas gratuit (MLVU2019)

La vidéo couvre l'utilisation de la métrique de l'aire sous la courbe (AUC) dans l'évaluation des modèles d'apprentissage automatique, ainsi que l'introduction des concepts de biais et de variance, et le théorème "pas de repas gratuit". La métrique AUC mesure les performances du modèle de classification en calculant l'aire sous la courbe ROC. De plus, le biais et la variance sont discutés car ils jouent un rôle crucial dans la façon dont le modèle s'adapte aux données de formation et se généralise aux nouvelles données. De plus, le théorème "pas de repas gratuit" souligne la nécessité de sélectionner l'algorithme approprié pour chaque problème spécifique car il n'existe pas d'algorithme universellement applicable pour tous les problèmes d'apprentissage automatique.

Cette vidéo couvre trois concepts importants d'apprentissage automatique : AUC (aire sous la courbe), biais et variance, et le théorème "pas de repas gratuit". L'ASC est une mesure utilisée pour évaluer les modèles de classification binaire, tandis que le biais et la variance font référence aux différences entre les valeurs prédites d'un modèle et les valeurs réelles dans un ensemble de données. Le théorème "pas de repas gratuit" souligne l'importance de sélectionner l'algorithme approprié pour un problème donné, car il n'existe pas d'algorithme unique qui puisse fonctionner de manière optimale sur tous les problèmes et ensembles de données possibles.

  • 00:20:00 Dans cette section, l'orateur discute de la première méthodologie d'évaluation des modèles d'apprentissage automatique, la métrique de l'aire sous la courbe (AUC). L'AUC mesure les performances des modèles de classification en calculant l'aire sous la courbe des caractéristiques de fonctionnement du récepteur (ROC). L'orateur introduit également les concepts de biais et de variance, qui mesurent l'adéquation d'un modèle aux données d'apprentissage et sa généralisation aux nouvelles données, respectivement. Enfin, l'orateur explique le théorème "pas de repas gratuit", qui stipule qu'il n'existe pas d'algorithme unique pour tous les problèmes d'apprentissage automatique et souligne l'importance de sélectionner l'algorithme approprié pour chaque problème spécifique.

  • 01:10:00 Dans cette section, le conférencier présente trois concepts clés de la méthodologie d'apprentissage automatique : l'aire sous la courbe (AUC), le biais et la variance, et le théorème "pas de repas gratuit". L'ASC est une métrique utilisée pour évaluer les performances des modèles de classification binaire et représente la probabilité qu'un modèle classe un exemple positif choisi au hasard plus haut qu'un exemple négatif choisi au hasard. Le biais fait référence à la différence entre la valeur attendue des prédictions d'un modèle et les valeurs réelles dans l'ensemble de données, tandis que la variance fait référence à la variance des prédictions d'un modèle lorsqu'il est formé sur différents ensembles de données. Le théorème "pas de repas gratuit" stipule qu'il n'y a pas un algorithme qui peut fonctionner le mieux sur tous les problèmes et ensembles de données possibles, soulignant l'importance de sélectionner l'algorithme approprié pour un problème donné.
 

4 Méthodologie 2 : Nettoyage des données, Analyse en composantes principales, Eigenfaces (MLVU2019)



4 Méthodologie 2 : Nettoyage des données, Analyse en composantes principales, Eigenfaces (MLVU2019)

Cette première partie de la vidéo couvre divers aspects importants du prétraitement et du nettoyage des données avant d'appliquer des algorithmes d'apprentissage automatique, en commençant par l'importance cruciale de comprendre les biais et le biais des données. L'orateur discute ensuite des méthodes de traitement des données manquantes, des valeurs aberrantes, du déséquilibre des classes, de la sélection des caractéristiques et de la normalisation. La vidéo aborde ensuite le concept de base et la distribution MVN, expliquant comment utiliser le blanchiment pour transformer les données en une distribution normale pour la normalisation, et se termine par l'utilisation de l'analyse en composantes principales (ACP) pour la réduction de la dimensionnalité. De la manipulation de l'ensemble d'apprentissage à l'utilisation de méthodes d'imputation, l'ACP projette les données dans un espace de dimension inférieure tout en conservant les informations des données d'origine.

Cette deuxième partie de la vidéo traite de l'utilisation de l'analyse en composantes principales (ACP) dans le nettoyage des données et la réduction de la dimensionnalité pour l'apprentissage automatique. La méthode implique le centrage moyen des données, le calcul de la covariance de l'échantillon et sa décomposition à l'aide de la décomposition propre pour obtenir les vecteurs propres alignés sur l'axe qui capture le plus de variance. L'utilisation des K premiers composants principaux fournit une bonne reconstruction des données, permettant de meilleures performances d'apprentissage automatique. Le concept d'Eigenfaces est également introduit et l'ACP s'avère efficace pour compresser les données à 30 dimensions tout en conservant la plupart des informations requises pour l'apprentissage automatique. Diverses applications de l'ACP sont discutées, y compris son utilisation en anthropologie et dans l'étude d'ensembles de données complexes tels que l'ADN et les visages.

  • 00:00:00 Dans cette section de la vidéo, le présentateur aborde les bases du nettoyage et du prétraitement des données avant d'appliquer des algorithmes d'apprentissage automatique. L'importance de ne pas prendre les données au pied de la lettre est soulignée en discutant du biais de survie, où se concentrer uniquement sur la population survivante peut conduire à des résultats biaisés. Le présentateur aborde ensuite des techniques telles que le traitement des données manquantes, des valeurs aberrantes, du déséquilibre des classes, de la sélection des caractéristiques et de la normalisation. Enfin, la seconde moitié de la vidéo se concentre sur la discussion de la réduction de la dimensionnalité à l'aide de l'algorithme d'analyse en composantes principales.

  • 00:05:00 Dans cette section, la vidéo présente des conseils pratiques pour le nettoyage des données et la gestion des données manquantes dans un ensemble de données, notamment la suppression des fonctionnalités ou instances manquantes qui ne sont pas significatives et la vérification que la suppression ne modifie pas la distribution des données. Plutôt que de supprimer les valeurs manquantes, il peut être plus utile de les conserver pour les données d'apprentissage et de tester les réponses du modèle. Pour maximiser la quantité de données d'apprentissage, une méthode d'imputation qui remplit les suppositions est disponible pour les données manquantes, comme l'utilisation du mode ou de la valeur moyenne. Le principe directeur pour traiter les données manquantes est de considérer le cas d'utilisation réel, ou l'environnement de production, pour préparer le modèle à traiter les données manquantes attendues de la manière la plus pertinente et la plus pratique.

  • 00:10:00 Dans cette section, l'orateur discute de deux types de valeurs aberrantes dans les données : les valeurs aberrantes mécaniques et naturelles. Les valeurs aberrantes mécaniques se produisent en raison d'erreurs telles que des données manquantes ou des erreurs dans la saisie des données, et doivent être traitées comme des données manquantes à nettoyer. D'autre part, les valeurs aberrantes naturelles se produisent en raison de la distribution non normale de certaines variables et doivent être conservées dans l'ensemble de données pour assurer un meilleur ajustement. Le conférencier fournit des exemples des deux types de valeurs aberrantes, notamment des caractéristiques faciales inhabituelles dans un ensemble de données de visages et des revenus extrêmement élevés dans un ensemble de données sur la répartition des revenus.

  • 00:15:00 Dans cette section, l'importance de vérifier les hypothèses de normalité des données est discutée. La régression linéaire, par exemple, est basée sur ces hypothèses, il est donc important de vérifier la normalité et d'être conscient que les hypothèses peuvent se cacher dans les modèles sans être connues. Les valeurs aberrantes doivent également être prises en compte lors de la modélisation et de la validation des données, et il est important de tester les modèles avec un ensemble d'apprentissage qui représente des situations de production pour s'assurer que les modèles peuvent gérer les valeurs aberrantes de manière appropriée. De plus, l'importance de transformer les données en caractéristiques catégorielles ou numériques pour les algorithmes d'apprentissage automatique et la perte potentielle d'informations impliquées dans de telles transformations sont discutées.

  • 00:20:00 Dans cette section, l'orateur discute de l'importance de sélectionner les bonnes fonctionnalités pour les algorithmes d'apprentissage automatique et de la manière d'extraire des informations significatives des données. Ils expliquent qu'il n'est pas utile d'interpréter simplement des nombres tels que des numéros de téléphone comme des valeurs numériques, et suggèrent plutôt de rechercher des caractéristiques catégorielles telles que les indicatifs régionaux ou le statut de la téléphonie mobile par rapport à la ligne fixe. Dans les cas où un algorithme d'apprentissage automatique n'accepte que des caractéristiques numériques, l'orateur recommande d'utiliser un codage à chaud au lieu d'un codage entier pour éviter d'imposer un ordre arbitraire aux données. L'objectif est d'extraire les informations nécessaires sans perdre aucun détail essentiel et de sélectionner des fonctionnalités qui transmettent avec précision et efficacité les informations nécessaires à la tâche à accomplir.

  • 00:25:00 Dans cette section, l'orateur discute de la valeur des fonctionnalités étendues pour rendre un modèle plus puissant. En utilisant l'exemple d'un ensemble de données pour la classification des spams par e-mail, l'orateur explique comment deux caractéristiques interdépendantes ne peuvent être interprétées sans connaître la valeur de l'autre, ce qui rend impossible pour un classificateur linéaire de tracer des frontières entre les classes. Pour remédier à cette limitation, l'orateur discute de l'ajout d'une caractéristique de produit croisé, qui multiplie les valeurs des caractéristiques existantes, permettant de tracer une limite de classification dans un espace de caractéristiques supérieur, même si elle n'est pas linéairement séparable dans l'espace d'origine. L'orateur donne ensuite un exemple d'une classe de points avec une frontière de décision circulaire pour illustrer davantage l'importance des caractéristiques d'expansion.

  • 00:30:00 Dans cette section, l'orateur explique comment l'ajout de fonctionnalités supplémentaires peut aider un classificateur linéaire à résoudre les problèmes de classification. En ajoutant le carré des coordonnées x et y comme caractéristiques à un problème de frontière de décision, un classificateur linéaire peut être utilisé pour faire la distinction entre deux classes de points. L'orateur montre comment, à l'aide de TensorFlow Playground, la formation du classificateur aboutit à une limite de décision qui, à l'œil humain, semble être circulaire. Les poids des caractéristiques sont également indiqués et il est démontré qu'une seule caractéristique est nécessaire pour résoudre ce problème de classification.

  • 00:35:00 Dans cette section de la vidéo, l'orateur explique comment l'expansion de l'espace des fonctionnalités peut conduire à un modèle plus puissant, même pour la régression. Ils illustrent ce point en montrant comment l'ajout d'une variable au carré à un modèle de régression linéaire donne une parabole qui correspond mieux aux données. L'orateur donne également des conseils sur la gestion du déséquilibre des classes, suggérant de manipuler l'ensemble d'apprentissage par des techniques telles que le suréchantillonnage ou l'augmentation des données. Enfin, ils introduisent le sujet de la normalisation et fournissent un exemple motivant de la façon dont les différences d'unités peuvent affecter les performances d'un modèle de classification K plus proche voisin.

  • 00:40:00 Dans cette section de la vidéo, le conférencier discute de l'importance de la normalisation des données pour les algorithmes d'apprentissage automatique. Ils expliquent trois façons de normaliser les données : la normalisation, la standardisation et le blanchiment. La normalisation consiste à serrer la plage de données dans la plage comprise entre zéro et un, tandis que la normalisation consiste à s'assurer que la moyenne des données est de zéro et que la variance est de un. La troisième méthode, le blanchiment, est une normalisation légèrement plus fine qui prend en compte toutes les corrélations dans les données et les réduit à une sphère dans l'espace des caractéristiques. L'orateur explique que le blanchiment est utile pour la réduction de la dimensionnalité.

  • 00:45:00 Dans cette section, le conférencier explique le concept de blanchiment des données, qui consiste à transformer les données en un ensemble de fonctionnalités non corrélées. L'orateur utilise l'algèbre linéaire pour démontrer comment choisir une base différente pour les données en choisissant deux autres vecteurs pour un nouveau système d'axes. Le point bleu, représenté à l'origine par (3,2) dans le système de coordonnées standard, est recalculé par rapport au nouveau système de base et a de nouvelles coordonnées de (2,5, 0,5). Cela conduit à la notation généralisée consistant à coller les vecteurs de base dans une matrice sous forme de colonnes.

  • 00:50:00 Dans cette section, l'orateur discute du concept de base et de la façon dont il peut être utilisé pour transformer entre différentes bases à l'aide de la transposition matricielle. L'opération inverse de la matrice est coûteuse et numériquement imprécise, de sorte qu'une base orthonormée est préférée lorsque les vecteurs de base ont une longueur et sont orthogonaux les uns aux autres. L'orateur explique ensuite comment la distribution normale multivariée est une généralisation de la distribution normale à plusieurs dimensions et peut aider à interpréter les données. La moyenne de la distribution est un vecteur et la variance devient une matrice de covariance dans une distribution normale multivariée. L'orateur explique également brièvement la formule pour calculer la covariance de l'échantillon pour ajuster une distribution normale multivariée aux données.

  • 00:55:00 Dans cette section, le concept de distribution normale multivariée (MVN) est introduit, qui a une moyenne de zéro, une variance de un dans toutes les directions, aucune corrélation et peut être transformé en n'importe quelle autre distribution MVN. Le processus de blanchiment des données est en outre expliqué dans lequel la transformation d'une distribution MVN est inversée pour transformer les données en une distribution normale pour la normalisation. La section se concentre également sur la réduction de la dimensionnalité des données de grande dimension grâce à l'analyse en composantes principales (ACP), une méthode qui effectue à la fois le blanchiment et la réduction de la dimensionnalité. En trouvant de nouvelles caractéristiques dérivées des caractéristiques originales qui conservent autant d'informations pertinentes que possible, l'ACP projette les données dans un espace dimensionnel inférieur tout en conservant les informations essentielles des données d'origine.

  • 01:00:00 Dans cette section de la vidéo, le présentateur discute de l'analyse en composantes principales (ACP) et de la manière dont elle ordonne les dimensions par variance capturée, permettant une reconstruction utile des données et une réduction de la dimensionnalité. Le présentateur explique les vecteurs propres et comment ils sont des vecteurs spéciaux dont la direction ne change pas sous une transformation, et comment ils peuvent être utilisés pour trouver la variance maximale dans les données d'origine. Le présentateur explique également comment trouver des vecteurs propres pour une matrice diagonale et comment faire pivoter une matrice pour aligner les vecteurs propres le long de l'axe.

  • 01:05:00 Dans cette section, nous apprenons à utiliser l'analyse en composantes principales (ACP) pour prétraiter les données pour les algorithmes d'apprentissage automatique. Nous entendons d'abord centrer les données pour supprimer la traduction, puis calculer la covariance de l'échantillon et la décomposer à l'aide de la décomposition propre. Nous retransformons ensuite les données en un espace normal multivarié standard (MVN) et supprimons toutes les caractéristiques sauf les K premières. Les vecteurs propres obtenus à partir de la décomposition s'alignent sur l'axe, ce qui nous permet de conserver la direction avec le plus de variance. Cela se traduit par une réduction significative de la dimensionnalité, permettant de meilleures performances d'apprentissage automatique.

  • 01:10:00 Dans cette section, le présentateur explique le concept de réduction de la dimensionnalité à l'aide de l'analyse en composantes principales (ACP). L'objectif de la réduction de la dimensionnalité est de maintenir l'invariance tout en conservant autant de données que possible. Maximiser la variance dans la projection revient à minimiser l'erreur de reconstruction, qui est une fonction de perte utilisée pour mesurer la différence entre les données d'origine et projetées. La première composante principale est la ligne qui capture le plus de variance, et les composantes suivantes capturent la variance restante. L'utilisation des K premières composantes principales fournit une bonne reconstruction des données.

  • 01:15:00 Dans cette section, le conférencier discute de l'utilisation de l'analyse en composantes principales (ACP) dans les applications de recherche. Une telle application est dans le domaine de l'anthropologie, où elle peut être utilisée pour quantifier et démontrer les caractéristiques des os fossilisés. En prenant des mesures de différents aspects de l'os et en créant un espace de caractéristiques de grande dimension à des fins de comparaison, l'ACP peut ensuite être utilisée pour réduire les dimensions des données à deux composants principaux, permettant un regroupement visuel et une identification des valeurs aberrantes. De plus, la PCA a été appliquée à l'étude de l'ADN dans les populations européennes, où l'ADN est transformé en un vecteur de caractéristiques de haute dimension, et la PCA peut être utilisée pour révéler des modèles et des grappes dans les données.

  • 01:20:00 Dans cette section, l'orateur explique comment l'analyse en composantes principales (ACP) peut être appliquée à un ensemble de données de caractéristiques de l'ADN et comment elle peut être utilisée pour déterminer la forme approximative de l'Europe. En examinant les deux principales composantes d'un ensemble de données ADN colorées par pays d'origine, on peut déterminer à quelle distance au nord ou à l'ouest/est une personne ou ses ancêtres ont vécu. L'ACP est souvent considérée comme une méthode magique en raison de sa capacité à fournir des informations sur des ensembles de données complexes, tels que les vecteurs propres d'un ensemble de données de visages appliqués dans des faces propres. En calculant la moyenne d'un ensemble de données de visages et en examinant les vecteurs propres de la covariance de cet ensemble de données, l'ACP peut fournir des directions dans un espace à grande dimension d'images de visages.

  • 01:25:00 Dans cette section, l'orateur discute du concept de Eigenfaces et de la manière dont l'analyse en composantes principales (ACP) aide au nettoyage des données. En ajoutant une infime quantité du premier vecteur propre au visage moyen, l'orateur montre comment cela correspond à l'âge dans les traits du visage. Les deuxième et quatrième vecteurs propres correspondent respectivement à l'éclairage et au sexe. Le cinquième vecteur propre indique à quel point la bouche est ouverte ou fermée. Les vecteurs propres agissent comme les bases du nouvel espace et la compression des données à 30 dimensions fournit une bonne représentation du visage d'origine. Le point d'inflexion se produit autour de 30 vecteurs propres, où le reste des détails peut être ignoré, conservant la plupart des informations requises pour l'apprentissage automatique.