Explorer AutoML : meilleurs outils disponibles [Ce que vous devez savoir]

Publié: 2020-12-07

Le cycle de vie de l'apprentissage automatique est un ensemble de processus qui incluent la collecte de données, le nettoyage des données, l'ingénierie des fonctionnalités, la sélection des fonctionnalités, la création de modèles, le réglage des hyperparamètres, la validation et le déploiement de modèles.

Bien que la collecte de données puisse prendre de nombreuses formes telles que des enquêtes manuelles, la saisie de données, le scraping Web ou les données générées au cours d'une expérience, le nettoyage des données consiste à transformer les données en un formulaire standard pouvant être utilisé à d'autres étapes du cycle de vie. .

La récente montée en puissance de l'apprentissage automatique a également incité de nombreuses entreprises à adopter une solution basée sur l'IA pour leurs produits grand public et, par conséquent, un nouveau chapitre d'AutoML est arrivé sur le marché. Cela peut être un excellent outil pour configurer rapidement des solutions basées sur l'IA, mais il reste encore des facteurs préoccupants à prendre en compte.

Table des matières

Qu'est-ce qu'AutoML ?

C'est cet ensemble d'outils qui automatise certaines parties de l'apprentissage automatique, qui est lui-même un processus automatisé de génération de prédictions et de classifications menant à des résultats exploitables. Bien qu'il ne puisse automatiser que l'ingénierie des fonctionnalités, la création de modèles et parfois les étapes de déploiement, la plupart des outils AutoML prennent en charge plusieurs algorithmes d'apprentissage automatique et presque autant de métriques d'évaluation.

Lorsqu'un tel type d'outil est lancé, il exécute le même ensemble de données sur tous les algorithmes, teste diverses métriques associées au problème, puis présente un rapport détaillé. Explorons quelques outils célèbres disponibles sur le marché et largement utilisés.

H2O.ai

L'une des principales solutions d'AutoML est H2O.ai qui offre des solutions prêtes pour l'industrie aux problèmes des entreprises en ne codant rien à partir de zéro. Cela permet à n'importe qui de n'importe quel domaine d'extraire des informations significatives des données sans avoir besoin d'avoir une expertise en apprentissage automatique.

Le H2O est une source ouverte qui prend en charge tous les modèles d'apprentissage automatique et les approches statistiques largement utilisés. Il est conçu pour fournir des solutions extrêmement rapides car les données sont réparties sur des clusters, puis stockées dans un format en colonnes en mémoire, permettant des opérations de lecture parallèles.

Les versions plus récentes de ce projet prennent également en charge le GPU, ce qui le rend plus rapide et efficace. Voyons comment cela peut être effectué en utilisant Python (exécutez le code dans le cahier jupyter pour une meilleure compréhension) :

!pip install h2o # exécutez ceci si vous ne l'avez pas installé

importer de l'eau

h2o.init()

depuis h2o.automl importer H2OAutoML

df = h2o.import_file() # Indiquez ici le chemin du fichier

y = 'étiquette_cible'

x = df.remove(y)

X_train, X_test, X_validate = df.split_frame(ratios=[.7, .15])

model_obj = H2OAutoML(max_models = 10, seed = 10, verbosity=”info”, nfolds=0)

model_obj.train(x = x, y = y, training_frame = X_train, validation_frame=X_validate)

résultats = model_obj.leaderboard

Cela stockera les résultats de tous les algorithmes affichant leurs métriques respectives en fonction du problème.

Lire : Outils d'apprentissage automatique

Pycaret

Il s'agit d'une bibliothèque relativement nouvelle lancée cette année, qui prend en charge un large éventail de fonctionnalités AutoML avec seulement quelques lignes de code. Qu'il s'agisse de traiter les valeurs manquantes, de transformer des données catégorielles en format de modèle, de réglage d'hyperparamètres ou même d'ingénierie de fonctionnalités, PyCaret automatise tout cela en arrière-plan lorsque vous pouvez vous concentrer davantage sur les stratégies de manipulation de données.

Il s'agit davantage d'un wrapper Python pour tous les outils et bibliothèques d'apprentissage automatique disponibles tels que NumPy, pandas, sklearn, XGBoost, etc. Voyons comment vous pouvez résoudre un problème de classification à l'aide de Pycaret :

!pip install pycaret # exécutez ceci si vous ne l'avez pas installé

à partir de pycaret.datasets importer get_data

à partir de l'importation pycaret.classification *

df = get_data('diabète')

paramètre = configuration (diabète, cible = 'variable de classe')

compare_models() # Cette fonction affiche simplement la comparaison de tous les algorithmes !

selected_model = create_model() # passez le nom de l'algorithme que vous souhaitez créer

prédire_modèle(modèle_sélectionné)

modèle_final = finaliser_modèle(modèle_sélectionné)

save_model(final_model , 'file_name')

chargé = load_model('file_name')

Voilà, vous venez de créer un pipeline de transformation qui a effectué l'ingénierie des fonctionnalités, formé un modèle et l'a enregistré !

Google Data Prep

Nous avons examiné deux bibliothèques qui automatisent la sélection de fonctionnalités, la création de modèles et leur réglage pour obtenir les meilleurs résultats, mais nous n'avons pas expliqué comment le nettoyage des données peut être automatisé. Ce processus peut être automatisé à coup sûr, mais il nécessite une vérification manuelle pour savoir si les bonnes données sont transmises ou si les valeurs ont un sens ou non.

Plus de données est un avantage pour la construction du modèle, mais il doit s'agir de données de qualité pour obtenir des résultats de qualité. Google DataPrep est un outil de préparation de données intelligent proposé sous forme de plate-forme en tant que service qui permet le nettoyage visuel des données des données, ce qui signifie que vous pouvez modifier les données sans coder même une seule ligne et en sélectionnant simplement les options.

Il offre une interface graphique interactive, ce qui facilite la sélection des options pour exécuter les fonctions que vous souhaitez appliquer. La meilleure partie de cet outil est qu'il affichera toutes les modifications apportées à l'ensemble de données dans un panneau latéral dans l'ordre dans lequel elles ont été effectuées et n'importe quelle étape peut être modifiée. Cela aide à garder une trace des changements. Vous serez invité avec des suggestions à faire, qui sont pour la plupart correctes.

Le fichier résultant peut être exporté vers un stockage local ou, comme ce service est fourni dans Google Cloud Platform, vous pouvez directement transférer ce fichier vers n'importe quel bucket Google Storage ou tables BigQuery où vous pouvez effectuer des tâches d'apprentissage automatique directement dans l'éditeur de requête. Le principal inconvénient de cela peut être ses coûts récurrents, il ne s'agit pas d'un projet open source mais plutôt d'une solution industrielle à part entière.

Cela peut-il remplacer les Data Scientists ?

Absolument pas! L'AutoML est génial et peut aider le Data Scientist à accélérer un cycle de vie particulier, mais des conseils d'experts sont toujours nécessaires. Par exemple, il faudra beaucoup de temps pour obtenir le bon modèle pour un énoncé de problème particulier à partir d'un AutoML qui exécute tous les algorithmes qu'à partir d'un expert qui l'exécutera sur des algorithmes spécifiques qui conviennent le mieux au problème.

Les scientifiques des données devront valider les résultats de ces types d'automatisation, puis fournir une solution réalisable aux entreprises. Les experts du domaine trouveront cette automatisation très utile car ils n'ont peut-être pas beaucoup d'expérience dans l'extraction d'informations à partir des données, mais ces outils les guideront de la meilleure façon.

Si vous souhaitez maîtriser l'apprentissage automatique et apprendre à former un agent à jouer au tic tac toe, à former un chatbot, etc., consultez le cours de diplôme PG d'apprentissage automatique et d'intelligence artificielle d'upGrad.

Menez la révolution technologique basée sur l'IA

CERTIFICATION AVANCÉE EN APPRENTISSAGE MACHINE ET CLOUD DE L'IIT MADRAS & UPGRAD
Apprendre encore plus