machine_learning_4.jpg

Récemment, un article de K. Gao et al. est paru dans Computer Science Revue [1], qui présente une vue d'ensemble des algorithmes, applications et questions ouvertes relatifs à l'usage du langage Julia dans le domaine de l'apprentissage machine.

Voici le résumé associé à cet article téléchargeable au format PDF.

L'apprentissage machine est le moteur du développement dans de nombreux domaines des sciences et de l'ingénierie. Un langage de programmation simple et efficace pourrait accélérer les applications de l'apprentissage machine dans divers domaines. Actuellement, les langages de programmation les plus couramment utilisés pour développer des algorithmes d'apprentissage machine sont Python, MATLAB et C/C ++. Cependant, aucun de ces langages ne permet de concilier efficacité et simplicité. Julia est un langage de programmation rapide, facile à utiliser et open source qui a été conçu à l'origine pour le calcul haute performance et qui trouve un juste équilibrer entre efficacité et simplicité. Ce document résume les travaux de recherche et les développements connexes dans les applications de Julia relative à l'apprentissage machine. Il passe d'abord en revue les algorithmes d'apprentissage machine les plus populaires qui sont développé en Julia. Ensuite, il étudie les applications des algorithmes d'apprentissage automatique mis en œuvre avec Julia. Enfin, il aborde diverses questions ouvertes et les orientations futures possibles associée à l'utilisation de Julia dans l'apprentissage machine.

Table des matières

  1. Introduction
  2. Brève introduction à Julia
  3. Julia et l'apprentissage machine: algorithmes
    1. Survol
    2. Algorithmes d'apprentissage supervisés développé en Julia
    3. Algorithmes d'apprentissage non supervisés développé en Julia
    4. Autres algorithmes principaux
    5. Liste des paquets usuellement utilisés en Julia
  4. Julia et l'apprentissage machine: applications
    1. Survol
    2. Analyse des données Internet des Objets (IdO/IoT)
    3. Vision par ordinateur
    4. Traitement des langues naturelles (NLP)
    5. Conduite autonome
    6. Analyse de graphes
    7. Traitement de signal
    8. Reconnaissance de formes
  5. Julia et l'apprentissage machine: questions en suspens
    1. Survol
    2. Un langage en développement
    3. Absence d'outils de développement stables
    4. Interface avec d'autres langages
    5. Nombre limité de paquets tiers
  6. Conclusions

[1] Kaifeng Gao, Gang Mei, Francesco Piccialli, Salvatore Cuomo, Jingzhi Tu et Zenan Huo, Computer Science Revue, 37 (2020) 100254