Cours 9: Intro à l’apprentissage machine et la Neuro-IA Flashcards

1
Q

comment s’appelle l’IA qui a battu le meilleur joueur au monde au jeu GO? Quel type de IA etait-ce?

A

AlphaGo est une intelligence artificielle basée sur l’apprentissage profond (Deep Learning) et l’apprentissage par renforcement (Reinforcement Learning).

Elle utilise :
* Réseaux de neurones convolutifs (CNN) pour analyser le plateau de jeu.
* Apprentissage par renforcement pour améliorer ses performances grâce à des millions de parties contre elle-même et d’autres joueurs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Quels sont les liens temporels et les distinctions entre trois concepts clés : l’intelligence artificielle (IA), l’apprentissage machine (Machine Learning) et l’apprentissage profond (Deep Learning).

A

1950s : Émergence de l’IA générale.

1980s : Avènement du Machine Learning avec des progrès algorithmiques.

2010s : Révolution du Deep Learning grâce au Big Data et à la puissance de calcul.

l’IA englobe le Machine Learning, qui englobe le Deep Learning.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Nomme des synonymes (3) du mot “apprentissage machine”

A

apprentissage automatique ou
apprentissage statistique ou
machine learning (en anglais)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Qu’est-ce que l’apprentissage machine?

A

Algorithmes informatiques qui analysent un ensemble de données afin de déduire des règles qui constituent de nouvelles connaissances permettant d’analyser de nouvelles situations
* prédire
* classifier

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Quel est la différence entre l’apprentissage supervisé vs non-supervisé?

A

Apprentissage supervisée = les données sont labélisées: classes prédeterminées

Apprentissage non-supervisée = les données ne sont pas labélisées: Les classes/catégories seront déterminées par
l‘algorithme à partir des données

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Explique le problème de classification à 2 classes

A

Un classifieur binaire (à 2 classes) peut être
formalisé comme une fonction de décision qui associe chaque observation (vecteur de dimension N) à une des deux classes, donc à la valeur 1 ou -1.

Si la fonction est linéaire, elle crée un hyperplan (une droite en 2D ou un plan en 3D) pour séparer les observations selon leurs caractéristiques.

Le modèle est entraîné sur un ensemble de données d’entraînement étiquetées (training set), où les classes sont déjà connues. L’apprentissage consiste à déterminer les paramètres de la fonction de décision pour classer correctement les données.

Généralisation :
Le modèle est testé sur de nouvelles données (test set) pour évaluer sa capacité à généraliser, c’est-à-dire à classer correctement des échantillons jamais vus auparavant. L’objectif final est de minimiser les erreurs de classification pour que le modèle généralise efficacement à de nouvelles données.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Dans le problème de classification à 2 classes, comment choisit-on la fonction de décision? Quels sont les 2 types de classification possibles?

A

Le choix de la fonction de décision se limite à une famille de fonctions fixée par le chercheur.

dépend du type de données et nombre d’attributs (N)

  • fonction de décision linéaire: la fonction f correspondra à la séparation de l’espace des attributs par un hyperplan (dans un espace de dimension N). Les observations se trouvant de chaque côté de l’hyperplan sera classifié 1 ou -1. Cet hyperplan devient une droite si N=2, et un plan si N=3.
  • Si les données ne sont pas linéairement séparables, des fonctions non linéaires sont utilisées, comme dans les SVM avec noyau (Kernel Trick).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Comment l’apprentissage peut être formalisé?

A

L’apprentissage peut être formalisé comme étant le processus de sélection des paramètres de la fonction de décision.

Plus précisément, à partir d’un sous-ensemble de données d’entrainement (training set, labels connus), nous cherchons à déterminer les paramètres de la fonction de décision qui permettront une classification correcte dans le cas d’autres échantillons (données test « test set » – labels inconnus).

objectif: généraliser

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Quelles sont les 2 approches pour traiter des données non-linéairement séparables ?

A

Utiliser des algorithmes non linéaires

Transformer les données dans un espace de dimension supérieure comme z
z1 = x1 au carré
z2 = racine carré de x1 et x2
z3 = x2 au carré
Transformation de données en 3D: points séparable avec un plan, maintenant linéairement séparable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Comment fonctionne l’apprentissage supervisé en machine learning? décrit les différentes étapes.

A

Phase de training
a) Entrainer un algorithme avec une partie des données (la majorité, ex: 80%): on test à quel point elle performe bien
b) Mettre de côté le reste des données (environ 20%)
-> Ces informations vont dans un classificateur comme LDA, SVM, KNNm NB, etc.

Phase de test
on va utiliser les données te qu’on avait mis de côté pour tester l’algorythme après et estimer la performance de l’algorythme (performance : à quel point il a des bonnes réponses sur les données test, donc sa capacité à généraliser, c’est ce qui nous interesse = %)

Validation croisée
Pour s’assurer que ce n’est pas de la chance (ou biais d’échantillonnage), prendre un autre % des données, et le faire plein de fois : en variant la partie que j’ai pris sur le training vs ceux que je laisse pour tester

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

comment fonctionnent les techniques de clustering dans l’apprentissage non-supervisé? Donne 2 exemple de techniques de clustering

A

L’apprentissage non-supervisé = l’algorithme n’utilise pas d’étiquettes prédéfinies pour les données et cherche à identifier des structures cachées ou des groupements naturels dans les données.

Dans le clustering, l’algorithme regroupe les données en clusters (ou sous-groupes) selon leur similarité. Il vérifie si on voit émerger des nuages de points (pas nécessairement des couleurs différentes) (sur 2 dimensions). Il identifie un point centroide et compare la distance entre celui-ci et les nuages de points.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Quelle est la différence entre les techniques de clustering K-means et Hierarchical Clustering?

A

K-means :
Divise directement les données en K clusters (nombre fixé à l’avance). Rapide et adapté aux grands ensembles, mais sensible aux valeurs aberrantes.

Hierarchical Clustering : Crée une structure en hiérarchie (dendrogramme) en fusionnant ou divisant les clusters.
Ne nécessite pas de spécifier le nombre de clusters à l’avance, mais plus lent pour de grands ensembles de données.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Explique les deux méthodes à base de voisinage dans les algorithmes de classification

A

kNN (k-Nearest Neighbors): L’idée est de faire voter les voisins du point de test. Pour une observation, on examine leskvoisins les plus proches (kpoints les plus proches dans l’espace). La classe majoritaire parmi ces voisins est ensuite assignée à l’observation.
* ex: Un K = 9, p.ex: j’ai 7points rouge proche du point blanc et 2 bleus, donc je juge que le point blanc appartient à la classe rouge pcq il est majoritaire

k-means: on calcule la distance entre un nouveau point et les centres des différentes classes. Le point est ensuite assigné à la classe dont le centre est le plus proche.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

nomme des algorithmes de classification des méthodes d’apprentissage supervisé et leur point en commun.

A

K-th Nearest Neighbours (KNN) : Classification basée sur la proximité avec les voisins les plus proches.

Linear Discriminant Analysis (LDA) : Séparation des classes par des frontières linéaires.

Support Vector Machine (SVM) : Trouve un hyperplan optimal pour séparer les classes.

Decision Trees (Arbres de décision) : Arbre hiérarchique de décisions basé sur les caractéristiques des données.

Random Forests (Forêts aléatoires) : Ensemble de plusieurs arbres de décision pour améliorer la performance.

Artificial Neural Networks (ANN) : Réseaux inspirés du cerveau humain pour modéliser des relations complexes dans les données.

Ces méthodes nécessitent des données étiquetées pour entraîner un modèle à prédire des classes (classification) ou des valeurs (régression).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Qu’est-ce qu’un arbre de décision et comment fonctionne-t-il? Quel type d’apprentissage utilise-t-il?

A

Un arbre de décision est un algorithme de classification ou de régression utilisé en apprentissage supervisé.

Il fonctionne par une série de questions successives pour diviser les données jusqu’à une prédiction finale (ce ne sont pas nécessairement les mêmes question à chaque niveau) Il s’adapte aux problèmes de classification (étiquettes discrètes) et de régression (valeurs continues).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Quelle est la différence entre un sous-apprentissage et un sur-apprentissage?

A

Underfitting = sous-apprentissage = trop de généralisation = plus d’erreurs

Overfitting = surapprentissage = modèle de décision qui prend tout trop en considération et ne généralise pas assez (sur les données training, il va avoir une performance proche de 100%, pcq il trouve une fonction qui s’adapte fortement à ces données précises, mais en réalité il s’adapte parfaitement à des changements de bruits peu important, donc si les données de la vraies vie ne s’identifient pas parfaitement à ca, c’est la qu’il va y avoir bcp d’erreurs et une très moins bonne performance)

Il faut donc vraiment un milieu, un good model.

17
Q

Quelle est la différence entre classification et régression?

A

Classification: Prédiction de classes discrètes
* Objectif : Prédire à quelle classe appartient un point donné.
* Indicateurs de performance :
Classification Accuracy (précision),
Logarithmic Loss,
Area Under ROC Curve,
Confusion Matrix.

Régression : Prédiction de valeurs continues
* Objectif : Prédire une valeur numérique basée sur les variables d’entrée.
* Indicateurs de performance :
Mean Absolute Error (erreur absolue moyenne),
Mean Squared Error (erreur quadratique moyenne),
R² (coefficient de détermination).

18
Q

À quoi sert une matrix de confusion en IA?

A

elle permet de comparer l’étiquette prédite par l’IA vs l’étiquette réelle, en créant un % d’accuracy global de l’algorithme en code de couleur (rouge = 100%).

Le taux de précision global de l’algorithme (decoding accuracy) est calculé comme la moyenne des valeurs sur la diagonale (prédictions correctes).

19
Q

Comment calculer le seuil de chance?

A

c’est par rapport au nombre de classe.

Dans un problème de classification à 2 classes, le seuil de chance est de 50 % (prédictions aléatoires).

Pour N classes, ce seuil devient 1/N (ex. : 25 % pour 4 classes).

20
Q

Pour évaluer la validité statistique (significativité) de la précision de décodage (Decoding accuracy, DA) obtenue (par exemple suite à la validation croisée), deux approches sont souvent utilisées, lesquelles?

Laquelle est la plus utilisée et pourquoi?

A

Méthode avec permutations
(non-paramétrique = +++ conseillées car moins d’hypothèse sur la distribution des données)
-> En mélangeant les étiquettes de façon aléatoire, on donne à l’algorythme des données «bousillées» et on regarde la performance de l’algorythme. En théorie, si on donne ces «fausses» images ou labels, le % de réussite de l’algorythme devrait être d’environ 50% (si 2 classe) pcq il n’y a pas de structure dans les données. On le fait plusieurs fois. On regarde la différence de % quand il y a une structure vs non. Puis on compare les distributions avec une valeur p.

Loi binominale
Déterminer le seuil de % de prédiction à dépasser en fonction de la valeur p et du nombre d’observation N

-> En fonction du seuil p voulu et la taille de l’échantillon, dit si les données sont de distribution normale le seuil à dépasser de nbr de participants ou données ok pour être au dessus de p = 0.05.

Moins utilisé car prend pour acquis une forme de distribution x

21
Q

Quelle est la différence entre le Shallow Learning et le Deep Learning?

A

Shallow Learning
* les caractéristiques des données (hand-crafted features) sont définies manuellement par les humains. Ce sont les chercheurs ou experts qui choisissent, en fonction de leurs connaissances, les éléments pertinents pour l’analyse, puis l’algorithme utilise ces caractéristiques pour résoudre le problème.
* ne contient pas de couches cachées ni de réseau complexe,
* peu utilisé

Deep Learning
* réseaux de neurones artificiels à plusieurs couches qui apprennent automatiquement les représentations pertinentes des données.
* apprentissage appelé representation learning, permet à l’algorithme d’extraire directement des caractéristiques à partir des données brutes, sans intervention humaine
* souvent critiqué pour son aspect “boîte noire” : souvent d’excellents résultats mais difficile d’expliquer comment il parvient à ses conclusions et laisser l’algorithme déterminer ce qui est pertinent comporte une marge d’erreur.

22
Q

Qu’est-ce qu’un réseau de neurones convolutionnels (CNN) ?

A

Un réseau de neurones convolutionnels (CNN) est un type de réseau neuronal profond particulièrement efficace pour le traitement des images. Il extrait automatiquement des caractéristiques pertinentes (features) à travers plusieurs couches de convolution, qui filtrent et détectent progressivement des détails allant des formes simples aux structures complexes.

ex: image d’entrée = “7”
1. La première couche détecte des bords et des motifs simples.
2. Les couches suivantes identifient des structures complexes (comme des intersections et contours).
3. Les caractéristiques extraites sont utilisées pour prédire l’étiquette (ici, “7”), avec un niveau de confiance.

23
Q

Comment l’intelligence artificielle (IA) peut-elle améliorer la neuroscience

A

Brain-Inspired AI (BRAI)
L’IA s’inspire du fonctionnement du cerveau humain pour développer des algorithmes plus efficaces et performants.
-> Ex: Les réseaux de neurones artificiels imitent les connexions neuronales biologiques pour résoudre des tâches complexes.

AI-powered Brain Science
L’IA est utilisée comme un outil pour mieux comprendre le fonctionnement et les dysfonctionnements cérébraux.
-> Ex: L’apprentissage machine analyse les données cérébrales (IRM, EEG, etc.) pour détecter des patrons liés aux maladies neurologiques.

Data-mining
aller analyser plus d’infos dans les données

Reserve-engineering
Utiliser des méthodes de l’IA comme les réseaux de neurones artificiels comme modèle de fonctionnement de traitement d’infos dans le cerveau
-> Comparer humain vs activations des différentes couches du réseau de neurones artificiels + Matrices de similarité: regarder à travers les pairs de stimulis la similarité de la réponse cérébrale (ex: corrélation):