Top 10 bibliothèques d'apprentissage automatique pour Python

Top 10 bibliothèques d'apprentissage automatique pour Python

Que voulez-vous créer? La question importante!

Vous êtes venu ici pour utiliser l'apprentissage automatique (ML) . Avez-vous réfléchi soigneusement quoi pour? Lorsque vous choisissez une bibliothèque d'apprentissage automatique, vous devez commencer par la façon dont vous allez l'utiliser. Même si vous êtes simplement intéressé à apprendre, vous devez considérer où l'apprentissage automatique est utilisé et qui est le plus proche de votre intérêt principal. Vous devez également considérer si vous souhaitez vous concentrer sur la diffusion de quelque chose sur votre machine locale ou si vous êtes intéressé à diffuser votre informatique sur de nombreux serveurs.

Au début, commencez par faire fonctionner quelque chose.

Où l'apprentissage automatique est utilisé

Vous pouvez trouver de nombreux projets qui utilisent ML, en fait, tant que chaque catégorie est longue. La version courte est `` partout '', ce n'est pas vrai mais on commence à se demander. Les évidents sont les moteurs de recommandations, la reconnaissance d'image et la détection des spams. Étant donné que vous programmer déjà à Python, vous serez également intéressé par le logiciel de complétion du code de kite. Il s'agit d'autres utilisations pour détecter les erreurs de la saisie manuelle des données, du diagnostic médical et de la maintenance pour les grandes usines et autres industries

Les bibliothèques en bref:

  1. Scikit-apprend, De Scikit; Routines et bibliothèques au-dessus de Numpy, Scipy et Matplotlib. Cette bibliothèque s'appuie directement sur les routines sur les bibliothèques mathématiques originaires de Python. Vous installez Scikit-Learn avec votre gestionnaire de packages Python ordinaire. Scikit-Learn est petit et ne prend pas en charge les calculs de GPU, cela peut vous mettre, mais c'est un choix conscient. Ce paquet est plus petit et plus facile à démarrer avec. Cela fonctionne toujours assez bien dans des contextes plus grands pour faire un gigantesque cluster de calculs, vous avez besoin d'autres packages.
  2. Scikit-image Spécial pour les images! Scikit-Image a des algorithmes pour l'analyse et la manipulation d'images. Vous pouvez l'utiliser pour réparer les images endommagées ainsi que la manipulation de la couleur et d'autres attributs de l'image. L'idée principale de ce package est de rendre toutes les images disponibles pour Numpy afin que vous puissiez faire des opérations sur eux en tant que ndarray. De cette façon, vous avez les images disponibles sous forme de données pour exécuter des algorithmes.
  3. Chagrin: Base C ++ avec interfaces API claires à Python, Java, Scala, etc. Beaucoup, peut-être la plupart des algorithmes disponibles pour expérimenter. Celui-ci est écrit en C ++ pour l'efficacité, il existe également un moyen de l'essayer dans le cloud. Shogun utilise SHIG pour s'interfacer avec de nombreux langages de programmation, y compris Python. Shogun couvre la plupart des algorithmes et est largement utilisé dans le monde académique. Le package dispose d'une boîte à outils disponible sur https: // www.shogun-toolbox.org.
  4. Spark Mllib: Est principalement pour Java mais est disponible via la bibliothèque Numpy pour les développeurs Python. Le Spark Mllib est développé par l'équipe Apache, il s'adresse donc aux environnements informatiques distribués et doit être exécuté avec un maître et des travailleurs. Vous pouvez le faire en mode autonome, mais la véritable puissance de Spark est la possibilité de distribuer les travaux sur de nombreuses machines. La nature distribuée de Spark le rend populaire auprès de nombreuses grandes entreprises, comme IBM, Amazon et Netflix. Le but principal est d'exploiter les «mégadonnées», ce qui signifie toutes ces chapelure que vous laissez derrière vous lorsque vous surfez et magasinez en ligne. Si vous voulez travailler avec l'apprentissage automatique, Spark Mllib est un bon point de départ. Les algorithmes qu'il supporte est réparti sur toute la gamme. Si vous commencez un projet de passe-temps, ce n'est peut-être pas la meilleure idée.
  5. H2O: S'adresse aux processus métier, il soutient donc les prédictions pour les recommandations et la prévention de la fraude. The Business, H20.L'IA vise à trouver et à analyser les ensembles de données à partir de systèmes de fichiers distribués. Vous pouvez l'exécuter sur la plupart des systèmes d'exploitation conventionnels, mais l'objectif principal est de prendre en charge les systèmes basés sur le cloud. Il comprend la plupart des algorithmes statistiques, il peut donc être utilisé pour la plupart des projets.
  6. Cornac: Est conçu pour les algorithmes d'apprentissage automatique distribués. Il fait partie d'Apache en raison de la nature distribuée des calculs. L'idée derrière Mahout est que les mathématiciens mettent en œuvre leurs propres algorithmes. Ce n'est pas pour un débutant, si vous apprenez, vous mieux utiliser autre chose. Cela dit, Mahout peut se connecter à de nombreux back-end, donc lorsque vous avez créé quelque chose, regardez si vous voulez utiliser Mahout pour votre frontend.
  7. Cloudera Oryx: Principalement utilisé pour l'apprentissage automatique sur des données en temps réel. Oryx 2 est une architecture qui superpose tout le travail pour créer un système qui peut réagir aux données en temps réel. Les couches fonctionnent également dans différentes délais, avec une couche de lot qui construit le modèle de base et une couche de vitesse qui modifie le modèle à mesure que de nouvelles données arrivent. Oryx est construit sur Apache Spark et crée une architecture entière qui implémente toutes les parties d'une application.
  8. Theano: Theano est une bibliothèque Python qui est intégrée à Numpy. C'est le plus proche de Python que vous pouvez obtenir. Lorsque vous utilisez Theano, il est conseillé de faire installer GCC. La raison en est que Theano peut compiler votre code dans le code le plus approprié possible. Alors que Python est génial, dans certains cas, C est plus rapide. Ainsi, Theano peut se convertir en C et compiler pour que votre programme fonctionne plus rapidement. Facultativement, vous pouvez ajouter la prise en charge du GPU.
  9. Tensorflow: Le tenseur du nom pointe vers un tenseur mathématique. Un tel tenseur a des lieux dans une matrice, cependant, un tenseur est un tableau multidimensionnel. Tensorflow a des algorithmes pour faire des calculs pour les tenseurs, d'où le nom, vous pouvez les appeler à partir de Python. Il est construit en C et C ++, mais a un front-end pour Python. Cela facilite l'utilisation et la course rapide. TensorFlow peut fonctionner sur CPU, GPU ou distribué sur les réseaux, ceci est réalisé par un moteur d'exécution qui agit comme une couche entre votre code et le processeur.
  10. Matplotlib: Lorsque vous avez rencontré un problème que vous pouvez résoudre avec l'apprentissage automatique, vous voudrez probablement visualiser vos résultats. C'est là que Matplotlib arrive. Il est conçu pour montrer les valeurs de tous les graphiques mathématiques et est fortement utilisé dans le monde académique.

CONCLUSION

Cet article vous a donné une idée de ce qui est disponible pour programmer dans l'apprentissage automatique. Pour obtenir une image claire de ce dont vous avez besoin, vous devez commencer par faire quelques programmes et voir comment ils fonctionnent. Pas avant que vous sachiez comment les choses peuvent être faites, pouvez-vous trouver la solution parfaite pour votre prochain projet.