Fermer×
11 février 2026

Un cours sur l’intelligence artificielle en Sciences de la nature

Dans le cadre de la refonte du programme de Sciences de la nature, au cégep de La Pocatière, nous enseignons ensemble (Jean, un enseignant de mathématiques, et Pascal, un enseignant de physique) depuis l’hiver 2025 un cours original sur l’intelligence artificielle (IA). Dans ce récit, nous tenterons de démontrer que l’IA peut plutôt aisément être enseignée vers la fin du cheminement des élèves en Sciences de la nature. Un cours sur l’IA, concomitant à l’épreuve synthèse de programme, peut en quelque sorte être le point d’exclamation final des élèves qui se dirigent vers des études en sciences et génie à l’université.

Contexte et genèse du cours

C’est dans les 1ers mois de l’implantation du nouveau programme de Sciences de la nature en 2022 que nous avons échangé sur la possibilité d’offrir un cours d’IA aux étudiantes et étudiants de Sciences de la nature. La prémisse de notre réflexion était de briser l’enseignement en silo qui caractérise trop souvent les cours de ce programme et d’offrir aux élèves un cours combinant les mathématiques et la physique appliquée.

Les discussions ont été brèves (et amusantes!). Nous avons conclu qu’il était tout à fait possible et pertinent d’intégrer les mathématiques et la physique dans un même cours sur l’IA. Les échanges subséquents ont rapidement abouti à 2 principes directeurs pour l’organisation du cours:

  1. s’adresser aux élèves qui veulent poursuivre des études universitaires en sciences naturelles et en génie, et qui seront d’éventuels utilisateurs et utilisatrices de l’IA
  2. étudier soigneusement les fondements des réseaux de neurones (partie mathématique) avant d’aborder leurs applications dans des situations réelles (partie physique)

Malgré leur apparente complexité, les bases de l’IA peuvent être enseignées assez facilement au niveau collégial à des étudiants et étudiantes de Sciences de la nature qui ont complété avec succès les cours suivants:

  • Algèbre linéaire et géométrie vectorielle
  • Calcul différentiel
  • Probabilités et statistiques
  • Programmation en Python

Nous avons convenu que le contenu du cours devait être sélectionné afin de récupérer un maximum de notions vues par les élèves lors de leur parcours. D’une certaine manière, cela ferait du cours un cours intégrateur.

Le projet d’enseigner l’IA en Sciences de la nature a chaudement été accueilli par les membres du comité programme, tout comme par la Direction des études. Dans la foulée, nous avons mis en place le cours plutôt rapidement et sans grande difficulté.

Les mathématiques nécessaires

La révolution de l’IA repose en grande partie sur les réseaux de neurones profonds.

Lorsqu’une image est passée dans un réseau de neurones (après avoir été aplatie), cela correspond, d’un point de vue mathématique, à une série de produits de matrices dans lesquels il y a autant de produits qu’il y a de couches. L’entraînement d’un réseau de neurones repose sur un algorithme en 2 étapes : la descente en gradient et la rétropropagation des erreurs.

  1. La descente en gradient consiste essentiellement à dériver la fonction de perte d’un réseau par rapport aux paramètres de ce dernier. Étonnamment, même si ces paramètres peuvent aisément être au nombre de quelques millions, symboliquement, les équations représentant les dérivées sont accessibles à des élèves de sciences de la nature.
  2. La rétropropagation des erreurs correspond à la manipulation d’équations linéaires qui, elles aussi, sont accessibles aux élèves.

D’autres concepts importants doivent être abordés :

  • la régression linéaire et polynomiale
  • les fonctions de pertes
  • les fonctions d’activation

Cependant, aucune de ces notions ne présente de difficulté particulière pour des élèves de Sciences de la nature. En fait, ces éléments sont généralement enseignés dans les cours de mathématiques, ce qui implique que peu ou pas de changements doivent être apportés à ces cours afin de rendre possible l’enseignement de l’IA.

Le langage Python

Depuis la réforme du programme de Sciences de la nature, un cours d’initiation à la programmation fait partie du cursus obligatoire. Au cégep de La Pocatière, c’est le langage de programmation Python qui est enseigné. Ce choix de langage est particulièrement judicieux, car, en plus d’être simple et élégant, Python est le langage qui est principalement employé en IA et dans la science des données.

De plus, comme Python est librement distribué et immensément populaire, une quantité quasi infinie de ressources éducatives existent en ligne. Cela facilite son enseignement et offre la chance aux élèves d’être autonomes dans leur apprentissage.

Jeux de données

L’entraînement de réseaux de neurones nécessite une importante quantité de données. Par exemple, pour qu’un réseau parvienne à réaliser une tâche simple comme déterminer si une image représente un chat ou un chien, des milliers de photos doivent être utilisées lors de l’entraînement. L’accumulation fastidieuse de données peut facilement être évitée en exploitant celles accessibles sur le site Kaggle [en anglais]. Ce site regroupe des centaines de milliers de jeux de données couvrant une multitude de domaines comme :

  • l’imagerie médicale
  • le climat et l’environnement
  • la bourse

Sur Kaggle, la plupart des jeux de données sont accompagnés d’exemples de scripts Python pour les modéliser, ce qui peut être formateur.

Capacités de calculs

Pour les capacités de calculs, l’environnement Colab [en anglais], proposé gratuitement par Google, permet d’entraîner des réseaux de neurones sur des unités de traitement graphique (GPU) performantes. Pour quelques dollars par mois, des unités de traitement de tenseur (TPU) encore plus efficaces peuvent être exploitées. Colab est disponible en ligne, ne nécessite aucune installation logicielle et est indépendant des performances de l’ordinateur utilisé. Colab possède également l’avantage notable d’offrir une distribution de Python accompagnée d’une multitude de modules spécifiques installés par défaut. De plus, l’IA générative qui accompagne Colab facilite grandement l’écriture et le débogage de scripts Python. Finalement, c’est l’environnement que les étudiants et étudiantes au cégep de La Pocatière utilisent lors de leur cours de programmation, ce qui facilite grandement son emploi dans le cours d’IA.

Objectif et structure du cours

Le cours compte 60 heures, divisées en 2 heures de théorie et 2 heures de laboratoire chaque semaine. Lors des 5 premières semaines, Jean a utilisé toutes les heures en classe pour introduire les notions de mathématiques essentielles. Pour les 5 semaines suivantes, le temps était partagé à parts égales entre les 2 disciplines. Finalement, les 4 heures de cours des 5 dernières semaines ont été mises à profit par Pascal pour étudier des exemples concrets.

Nous avons privilégié l’enseignement direct tout au long de la session. Les présentations offertes aux élèves reconstruisaient, étape par étape, les tâches que les élèves auraient à accomplir. De nombreux carnets Colab ont été utilisés. Au fur et à mesure que les élèves progressaient dans leur apprentissage, des tâches de plus en plus complexes leur étaient demandées par l’entremise d’exercices guidés, puis autonomes.

L’objectif fondamental du cours est d’étudier la structure et le fonctionnement des réseaux de neurones, puis de les mettre en application dans une situation concrète et réelle.

La mise en place d’un réseau et son entraînement sont tout d’abord réalisés en utilisant essentiellement les fonctions du module NumPy [en anglais], sans recourir à un autre module dédié à l’IA. Autrement dit, c’est en construisant l’ensemble de la structure à partir de la base que l’élève acquiert une compréhension fine et complète de tous les concepts. À ce stade, les images traitées sont celles du légendaire jeu de données MNIST.

Ensuite, les élèves apprennent à utiliser les modules Keras [en anglais] et PyTorch [en anglais] et travaillent à un projet de vision numérique avec une caméra d’OpenMV [en anglais] et EdgeImpulse [en anglais]. Nous étudions le fonctionnement de Keras en détail. Nous étudions également les réseaux convolués, de même que les subtilités de leur l’entraînement. À la fin, un autoencodeur simple est présenté. Cela donne la chance aux étudiants et aux étudiantes d’aborder l’IA générative et nous permet d’ouvrir le cours sur des perspectives plus larges.

Tout au long du cours, nous faisons des liens entre nos parties respectives. Par exemple, dans la portion mathématique, lorsqu’un réseau est construit à partir de la base, Jean explique que cette façon de faire, quoique pertinente pour la compréhension des concepts, est peu efficace pour traiter de gros volumes de données. Toutefois, il explique aux élèves que, lors de la 2e partie de la session, ils et elles découvriront avec Pascal l’efficacité de Keras dans la modélisation de gros jeux de données. Ces va-et-vient entre les 2 parties du cours sont essentiels à la cohérence du cours et permettent de mettre en place un enseignement interdisciplinaire authentique.

Bilan

À l’hiver 2025, le cours s’est très bien déroulé. Pendant toute la session, les élèves ont manifesté un bel enthousiasme et ont affirmé avoir grandement apprécié l’expérience.

Grâce à mes enseignants motivés, M. Jean Poulin et M. Pascal Larouche, j’ai exploré les bases de l’intelligence artificielle, des fondements mathématiques à la création de mon propre réseau de neurones avec Python et Keras, une expérience que j’ai grandement appréciée.

Ce cours m’a permis de comprendre en profondeur une technologie omniprésente et d’acquérir des connaissances utiles tant sur le plan personnel que pour mes études en génie logiciel, ainsi que pour tout domaine lié au génie, à l’informatique ou aux mathématiques.

Savoir concevoir une IA, ça fait bonne impression sur un CV 😉

–Un étudiant ayant suivi le cours de Pascal et de Jean

Ajouts possibles

Comme le cours se donnait en même temps que l’épreuve synthèse du programme (ÉSP), les étudiants et étudiantes pouvaient choisir un sujet d’ÉSP mettant à profit les connaissances qu’ils et elles développaient parallèlement dans le cours. Dans les prochaines années, des projets d’ÉSP impliquant l’IA seront proposés aux élèves pour créer et entretenir la synergie entre les 2 cours.

Un ajout intéressant serait d’aborder l’éthique et l’impact de l’IA sur la société. Ce problème est particulièrement criant et constitue un sujet à part entière dans la communauté de recherche. Aborder ce thème permettrait de faire le pont entre les cours de sciences et les cours de la formation générale, notamment les cours de philosophie. Inviter un enseignant ou une enseignante de philosophie pour au moins une séance serait une façon simple d’accentuer encore plus le caractère interdisciplinaire et intégrateur du cours.

Mot de la fin

Pour nous, enseigner l’IA et les réseaux de neurones en Sciences de la nature a été une réussite complète. Le sujet a enthousiasmé les élèves et ils et elles se sont réellement engagés dans leur apprentissage.

(Soulignons, pour terminer, que l’IA générative, aussi efficace et pertinente soit-elle, n’a pas été employée pour rédiger cet article!)

Remerciements

Nous tenons à remercier Cécile Viel et Marie-El Domingue pour les commentaires justes et pertinents qui ont rendu cet article meilleur.

Pour en apprendre plus sur le sujet

 

Une myriade d’ouvrages existe sur les réseaux de neurones (sans compter le nombre encore plus grand de blogues et vidéos de toutes sortes). Voici quelques ressources que nous avons consultées et appréciées.

Glassner, A. (2021). Deep Learning : A Visual Approach. No Starch Press. [en anglais]

Livre magnifiquement illustré. Toutes les figures sont disponibles sur le GitHub de l’auteur, ce qui facilite considérablement l’élaboration des notes de cours

Chollet, F. (2017). Deep Learning with Python. Manning Publications. [en anglais]

Le manuel de référence sur Keras rédigé par l’auteur du module lui-même. Référence incontournable.

Bishop, C. (2024). Deep learning. Foundations and concepts. Springer. [en anglais]

Liquet, B., Moka, S. et Nazarathy, Y. (2024). Mathematical engineering of deep learning. Chapman & Hall/CRC

À propos des auteurs

Pascal Larouche

Après des études doctorales en physique, Pascal Larouche se tourne vers l’enseignement dans le réseau collégial en 2007, au Collège Laflèche de Trois-Rivières. Depuis 2013, il enseigne au Cégep de La Pocatière dans les programmes de Sciences de la nature et de Technologie du génie physique. Au cours des dernières années, il a développé un vif intérêt pour l’intelligence artificielle et son intégration dans l’enseignement collégial.

Jean Poulin

Jean Poulin est détenteur d’un doctorat en mathématiques de l’Université de Toronto. Il s’intéresse notamment aux fondements mathématiques de l’apprentissage automatique.

S’abonner
Notification pour
guest

2 Commentaires
Commentaires en ligne
Afficher tous les commentaires
Julie Mercier
Julie Mercier
17 février 2026 9h59

Récit inspirant. Merci!

Valérie Lévesque
Valérie Lévesque
18 février 2026 9h56

Merci pour votre partage et félicitations à vous deux pour ce cours novateur offert en coenseignement, une approche au bénéfice des étudiantes et étudiants.