Skip to content

Latest commit

 

History

History
85 lines (52 loc) · 5.74 KB

nJuliaML.md

File metadata and controls

85 lines (52 loc) · 5.74 KB
author tags
emchateau
julia, machine learning

Julia ML

Julia est un langage informatique de calcul scientifique. Il est particulièrement bien positionné pour les applications d’apprentissage machine (Machine learning). Si le langage offre un écosystème moins développé que Python il reste néanmoins une option particulièrement viable pour les applications habituelles dans ce domaine.

Quelques concepts-clefs en apprentissage machine

apprentissage supervisé (Supervised Learning) @todo

apprentissage non-supervisés (Unsupervised Learning) @todo

apprentissage par renforcement (Reinforcement Learning) @todo

évaluation de modèles (Model Evaluation) @todo

Débuter avec Julia pour l’apprentissage machine

  • Installer Julia
  • Apprendre les bases du langage : vous familiariser avec la syntaxe, les structures et les types.
  • Explorer la manipulation de données et les outils de visualisation
  • Explorer les algorithmes simples
  • Construire et évaluer des modèles
  • Explorer des sujets avancés

Nazarathy, Yoni, et Hayden Klok. 2021. Statistics with Julia: Fundamentals for Data Science, Machine Learning and Artificial Intelligence. Springer Series in the Data Science. Cham Springer.

Purpose Python Julia
Linear algebra Numpy Built in arrays, LinearAlgebra package
Work with datasets Pandas DataFrames.jl
Data visualization Matplotlib Plots.jl
Classic Machine learning SciKit-Learn MLJ.jl, ScikitLearn.jl, BetaML.jl
Neural Networks TensorFlow or Pytorch Flux.jl, BetaML.jl, Lux.jl

Machine Learning

https://fr.wikipedia.org/wiki/Apprentissage_automatique

modèles courants tels que la Logistic Regression, Decission Tree ou Random Forest

ScikitLearn.jl

ScikitLearn.jl implements the popular scikit-learn interface and algorithms in Julia. It supports both models from the Julia ecosystem and those of the scikit-learn library (via PyCall.jl).

Would you rather use a machine-learning framework specially-designed for Julia? Check out MLJ.jl, from the Alan Turing institute.

https://github.com/cstjean/ScikitLearn.jl

https://cstjean.github.io/ScikitLearn.jl/dev/

A Machine Learning Framework for Julia

MLJ (Machine Learning in Julia) is a toolbox written in Julia providing a common interface and meta-algorithms for selecting, tuning, evaluating, composing and comparing about 200 machine learning models written in Julia and other languages.

https://github.com/alan-turing-institute/MLJ.jl

https://alan-turing-institute.github.io/MLJ.jl/dev/

Packages utiles

  • Distances.jl, A Julia package for evaluating distances (metrics) between vectors. Notamment la similarité cosinus (Cosine distance)

La similarité cosinus donne la similarité de deux vecteurs à n dimensions en déterminant le cosinus de leur angle. Ce score est fréquemment utilisée en fouille de textes.

En règle générale, pour mesurer finement la similarité entre des séquences de texte, les vecteurs sont construits d'après un calcul de type TF-IDF (term frequency–inverse document frequency) qui permet d'estimer l'importance d'un mot par rapport au document qui le contient, en tenant compte du poids de ce mot dans le corpus complet.

Sur le softMax Bendersky, Eli. 2016. « The Softmax function and its derivative - Eli Bendersky’s website ». Eli Bendersky’s website (blog). 18 octobre 2016. https://eli.thegreenplace.net/2016/the-softmax-function-and-its-derivative/

Références