Meilleure bibliothèque Julia pour les réseaux de neurones
-
16-10-2019 - |
Question
J'utilise cette bibliothèque pour la construction et l'analyse des réseaux de neurones de base.
Toutefois, il ne prend pas en charge pour la construction de réseaux de neurones à couches multiples, etc.
Alors, je voudrais savoir de toutes les bibliothèques pour faire de belles réseaux de neurones avancés et l'apprentissage en profondeur Julia.
La solution
Mocha.jl - Mocha est un cadre d'apprentissage profond pour Julia, inspiré du C ++ cadre Caffe
Projet avec une bonne et des exemples. Peut être exécuté sur backend CPU et GPU.
Autres conseils
MXNet Julia Package - l'apprentissage en profondeur flexible et efficace Julia
https://github.com/dmlc/MXNet.jl
Plus
- rapide
- Balances à plusieurs processeurs graphiques et distribué avec la mise en parallélisme automatique.
- Léger, mémoire efficace et portable pour appareils intelligents.
- Différenciation automatique
Contre
- n'a pas encore les opérations de bas niveau pour la mise en œuvre algorithme. Mais ils travaillent sur cette question ( https://github.com/dmlc/mxnet/issues/586 )
OCT 2016, est aussi une enveloppe tensorflow pour Julia:
Il suffit d'ajouter une version plus récente (2019). Réponse: Flux
Flux is an elegant approach to machine learning. It's a 100% pure-Julia stack,
and provides lightweight abstractions on top of Julia's native GPU and
AD support. Flux makes the easy things easy while remaining fully hackable.
Par exemple:
model = Chain(
Dense(768, 128, σ),
LSTM(128, 256),
LSTM(256, 128),
Dense(128, 10),
softmax)
loss(x, y) = crossentropy(model(x), y)
Flux.train!(loss, data, ADAM(...))
Une nouvelle bibliothèque à regarder comme il est bien Knet.jl. Il fera des choses comme processeurs graphiques d'utilisation sous le capot.