Article original : We're Building Data Science Courses with Advanced Mathematics and Machine Learning
Nous développons des cours approfondis de Data Science et de Machine Learning. Ces cours feront un usage intensif de Python. Ils vous enseigneront toutes les mathématiques de niveau universitaire dont vous avez besoin pour commencer à faire vos propres recherches et construire vos propres modèles.
Actuellement, ces compétences en data science ne sont enseignées que dans quelques universités à travers le monde. Notre objectif est que quiconque, où qu'il soit, puisse apprendre ces concepts avancés de mathématiques et de machine learning que les data scientists utilisent sur le terrain. Gratuitement. Et de manière amusante et interactive.
Mise à jour du 25 octobre 2022 : Nous avons fait des progrès considérables sur ces cours. 🏑
Nous avons une liste complète des 40 cours que nous développons dans le cadre de nos licences et diplômes associés gratuits. Vous pouvez en savoir plus sur ces cours et le travail à venir.
Mise à jour du 15 juillet 2021 : Nous avons atteint notre objectif de donation. 🎉
Je suis ravi d'annoncer que la communauté a réussi à atteindre notre objectif de collecte de fonds pour le programme de Data Science. Nous avons récolté 156 667 $ de 2 519 donateurs.
J'ai rencontré Darrell Silver aujourd'hui, et il m'a remis un chèque géant pour son don de contrepartie. Cela a effectivement doublé les dons que tout le monde avait faits, et a porté le total à 306 667 $.
Un énorme merci à tous ceux qui ont contribué à la collecte de fonds. Nous avons déjà commencé à utiliser ces fonds.
Tout d'abord, nous avons accueilli deux nouveaux membres dans l'équipe.
Edward Patrowski a près de deux décennies d'expérience dans l'enseignement des mathématiques et de l'informatique, tant au niveau du lycée que de l'université.
Il a déjà commencé à concevoir le programme et à créer des Jupyter Notebooks. Nous les utiliserons pour enseigner le calcul, les statistiques, l'algèbre linéaire et d'autres concepts qui sous-tendent la data science et le machine learning.
Kylie Ying est une étudiante en master d'informatique au MIT, travaillant sur des recherches en machine learning et en physique des particules.
Elle crée une série de cours vidéo qui accompagneront les Jupyter Notebooks qui constituent le programme de Data Science.
Ed, Kylie et d'autres contributeurs ont déjà commencé à planifier une grande partie de ce programme avec l'aide du monde universitaire et de data scientists travaillant sur le terrain.
_L'une des nombreuses feuilles de notre document de planification de programme publiquement consultable._
Nous avons également construit une preuve de concept de Jupyter Notebook utilisant SymPy – avec des cas de test automatisés fonctionnels. Nous allons affiner cela davantage au cours des prochains mois avant de publier la première version du programme.
Que couvrira le programme de Data Science ?
Vous pourrez coder votre chemin à travers une série de centaines de projets Python pour obtenir des certifications en :
- Calcul Scientifique avec Python
- Mathématiques Fondamentales (Arithmétique, Algèbre, Géométrie, Trigonométrie)
- Résolution de Problèmes Algorithmiques (Structures de Données, Force Brute, Diviser pour Régner, Plus Court Chemin, Algorithmes Gloutons, Programmation Dynamique)
- Statistiques Descriptives
- Ingénierie des Données (Pipelines, ETL, Stockage, Nettoyage des Données + Méthodes de Détection d'Anomalies)
- Analyse Exploratoire des Données
- Calcul à une et plusieurs variables
- Statistiques Inférentielles et Probabilité
- Algèbre Linéaire et Algèbre Matricielle
- Algorithmes d'Apprentissage Supervisé (Classification, Régression)
- Algorithmes d'Apprentissage Non Supervisé (Clustering, Réduction de Dimension)
- Algorithmes d'Apprentissage par Renforcement (Réseaux de Neurones)
Vous pourrez construire ces projets dans votre navigateur ou hors ligne dans votre système d'exploitation. Vous utiliserez des Jupyter Notebooks remplis de graphiques interactifs, de jeux de données et de tests automatisés pour vérifier votre code. Et vous utiliserez des outils comme :
- SQL
- NumPy
- SciPy
- SymPy
- Matplotlib
- Pandas
- TensorFlow
- Keras
- et scikit-learn
Imaginez pouvoir apprendre des concepts avancés de mathématiques et d'informatique gratuitement en seulement quelques milliers d'heures. C'est ce que nous allons accomplir en utilisant ces outils de l'écosystème Python à la pointe de la technologie.
Regardez la vidéo de démonstration (28 minutes)
Cela semble ambitieux. La communauté freeCodeCamp peut-elle y parvenir ?
Nous avons déjà enseigné beaucoup de ces sujets à travers des cours sur la chaîne YouTube de la communauté freeCodeCamp (abonnez-vous si ce n'est pas encore fait 😉). Le principal défi sera de tisser ces sujets dans un programme cohésif et linéaire, et de le rendre interactif avec des tests automatisés.
Si vous n'êtes pas familier avec le bilan de notre organisation à but non lucratif en général, lisez notre rapport annuel 2020. Nous avons fourni plus de 1 300 000 000 minutes de contenu éducatif l'année dernière avec un budget de seulement 498 000 $. (Cela représente ~50 heures d'apprentissage par dollar donné.)
Les gens utilisent beaucoup freeCodeCamp. Nous croissons d'environ 60 % par an en minutes d'utilisation.
Comment allez-vous enseigner les mathématiques, la data science et le machine learning dans le navigateur ?
Ces sujets ne sont pas faciles à apprendre. Mais nous avons des stratégies pour décomposer ce corpus de connaissances en composants gérables.
La décision de conception la plus importante est la suivante : optimiser pour les développeurs. Au lieu de concevoir le programme en pensant aux écoles, nous nous concentrons sur des apprenants adultes motivés qui ont déjà une compréhension de base du développement web. (S'ils ne l'ont pas encore, ils peuvent simplement compléter la première moitié du programme de freeCodeCamp. C'est le seul prérequis pour ce travail de cours de Data Science.)
Puisque nous pouvons supposer que les apprenants savent déjà coder, nous pouvons enseigner les mathématiques d'une manière entièrement nouvelle. Au lieu d'utiliser des conférences traditionnelles ou des exercices à la maison – des outils comme des crayons, du papier et des calculatrices graphiques – nous pouvons incorporer Python.
Cette approche pratique donne un nouveau sens de pertinence aux tâches ancestrales de résolution d'équations et de preuve de théorèmes.
Et si je connais déjà certains de ces sujets ? Puis-je toujours obtenir les certifications ?
Comme pour le programme de développement web de freeCodeCamp, la plupart des travaux de cours sont entièrement optionnels.
Si vous avez déjà appris certains de ces sujets dans le passé, vous pouvez sauter en avant et construire les projets de certification. Une fois que vous avez prouvé vos connaissances, vous pouvez revendiquer la certification.
Le programme de freeCodeCamp restera une ligne droite sans options. Mais vous pouvez choisir où vous voulez commencer sur cette ligne, et vous pouvez toujours revenir en arrière si vous avez besoin de réviser.
freeCodeCamp ne couvre-t-il pas déjà tous ces sujets sur la chaîne YouTube de la communauté ?
Oui. Nous avons des cours complets gratuits sur presque tous ces sujets sur notre chaîne YouTube communautaire.
Les vidéos sont beaucoup plus faciles à produire que des programmes intégrés et interactifs. Elles ne sont que la première étape vers notre objectif d'enseigner et de certifier pleinement les data scientists.
Ces vidéos resteront une solide ressource d'apprentissage complémentaire. Elles sont idéales pour apprendre en déplacement, et elles approfondissent certains concepts que notre programme plus pratique n'aborderait que brièvement.
Et si je suis à mi-chemin du programme actuel de freeCodeCamp ?
Pas de problème. Vous ne perdrez aucun de vos progrès.
Nous transformerons certaines de nos certifications en certifications héritées (comme la certification actuelle de Visualisation de Données) en une certification héritée. Mais vous la posséderez toujours, et vous pourrez toujours la revendiquer même après que nous ayons publié les nouvelles certifications.
Quelle est la feuille de route de publication ?
Notez que la communauté freeCodeCamp ne fixe pas de dates de lancement publiques. Au lieu de cela, nous déployons les nouveaux travaux de cours dès qu'ils sont prêts, puis nous les maintenons et les affinons en continu.
Voici ce que nous prévoyons de publier :
Étape #1 : Nous publierons les projets de certification, que vous pourrez compléter afin d'obtenir chacune de ces certifications en data science. Nous publierons également des cours vidéo que vous pourrez utiliser – en combinaison avec d'autres ressources d'apprentissage – pour apprendre les concepts.
Étape #2 : Nous publierons les projets de pratique optionnels pour chaque certification. Ceux-ci remplaceront les vidéos, que nous déplacerons vers la section des ressources d'apprentissage complémentaires de freeCodeCamp.
Nous pensons pouvoir accomplir la plupart de cela dans les deux premières années. Ensuite...
Étape #3 : Nous ajouterons des projets de pratique optionnels supplémentaires pour offrir encore plus de pratique et de répétition. Notre objectif final est d'avoir plus de pratique de programmation qu'un seul humain ne pourrait raisonnablement compléter en une vie. (On pourrait dire que nous avons déjà cela grâce à notre implémentation côté client de Project Euler et Rosetta code, mais il y a encore des millénaires de connaissances mathématiques que nous pouvons éventuellement couvrir.)
L'apprentissage est un effort de toute une vie. Et le programme de freeCodeCamp continuera d'évoluer pour refléter cela.
Tout cela sera-t-il Open Source ?
Oui. Comme pour tout le reste du code de freeCodeCamp, il sera licencié sous la licence extrêmement permissive BSD-3. (Elle est similaire à la licence MIT mais protège également notre organisation à but non lucratif contre l'usurpation d'identité.)
Et comme pour le reste du programme de freeCodeCamp, tous nos travaux de cours seront sous licence Creative Commons. La CC-BY-SA 4.0 pour être exact. Cette licence est permissive et n'a pas de restrictions commerciales. C'est exact. Vous pourriez construire une entreprise autour de freeCodeCamp si vous le souhaitiez.
Comment puis-je m'impliquer dans ce nouveau programme de Data Science ?
Si vous êtes enseignant, data scientist pratiquant ou passionné de mathématiques, nous accueillerions volontiers vos commentaires.
Et pour tous les autres, vous devriez soutenir notre collecte de fonds. Aidez-nous à financer un programme de data science gratuit et open source pour vous, votre famille et vos voisins dans le monde entier. Faites un don ici.
Comment puis-je en savoir encore plus sur le programme de Data Science et les certifications ?
Vous avez de la chance. Je suis passé sur le podcast The Changelog (un podcast populaire sur l'open source) pour parler de ces nouvelles certifications que nous construisons. Vous pouvez l'écouter dans le lecteur de podcast intégré ci-dessous. (1 heure d'écoute) :
Appuyez sur play pour m'entendre parler du programme de Data Science sur The Changelog podcast
Merci d'avoir lu, et bon codage.