Intelligence artificielle

12 étapes pour l'IA appliquée – Le démarrage

12 étapes pour l'IA appliquée - Le démarrage


Une feuille de route pour chaque projet de machine learning

Pour ceux qui recherchaient un programme en 12 étapes pour se débarrasser des mauvaises habitudes de données, voici une feuille de route de projet ML / AI pratique. Eh bien, cela devrait être correctement en 13 étapes, nous allons donc commencer à compter à zéro pour le faire fonctionner.

(Les liens vous mèneront à mes articles qui définissent le terme de jargon et vous en disent souvent un peu plus sur l'étape en question. S'il n'y a pas de lien, cela signifie que l'article arrive bientôt. Restez à l'écoute!)

En pratique, vous devrez répéter et revenir en arrière, MAIS vous ne devriez jamais commencer une étape sans au moins essayer chacune des précédentes.

Vérifiez que vous avez réellement besoin de ML / AI. Pouvez-vous identifier de nombreuses petites décisions pour lesquelles vous avez besoin d'aide? L'approche non ML / AI s'est-elle déjà révélée sans valeur? Avez-vous des données à apprendre? Avez-vous accès au matériel? Sinon, ne passez pas GO.

Conseil de pro: en plus de ressembler à un tas d'amateurs déchaînés, les dirigeants qui essaient de pousser AI les approches auxquelles ils n'appartiennent pas aboutissent généralement à des solutions trop coûteuses à maintenir en production. Au lieu de cela, trouvez un bon problème à résoudre et que la meilleure solution l'emporte. Si vous pouvez le faire sans IA, tant mieux - ce sera probablement moins cher à entretenir. ML/AI est pour les situations où les autres approches n'obtiennent pas les performances dont vous avez besoin. C'est utile et c'est là pour rester, mais ce n'est pas pour tout.

Trouvez ma liste de contrôle de réalité de l'IA de 22 articles ici et mon astuce pour trouver un cas d'utilisation ici.

Exprimez clairement ce que signifie le succès pour votre projet. Votre système ML / AI va produire un tas d'étiquettes pour vous: comment noterez-vous ses performances sur la tâche que vous lui avez assignée? À quel point doit-elle être prometteuse pour être mise en production? Quelles sont les performances minimales acceptables pour qu’elles méritent d’être lancées?

Conseil de pro: sauter cette étape ou le faire hors séquence est la principale cause d'échec d'un projet de science des données. Non. Même. Pense. Sur. Saut. Il. Assurez-vous que cette partie est effectuée par quiconque connaît le mieux l'entreprise et possède les compétences de prise de décision les plus pointues, et non la meilleure nerdery d'équation.

Mon guide détaillé de l'étape 1 est ici.

Créez les processus et le code qui collectent les ID d'instance, certaines fonctionnalités qui vont avec ces ID et les étiquettes correctes si vous effectuez un apprentissage supervisé ou semi-supervisé. Ne regardez pas encore les données.

Conseil de pro: pensez à une répétition générale avec des données simulées avant d'acheter des données ou d'aller dans le monde réel pour recueillir les vôtres.

Quelles sont (sont!) Les données de toute façon? Réflexions ici.

Qui fait quel travail dans cet écosystème? Découvrez ici.

Guides de jargon: [1], [2], [3].

Mettez de côté certaines de vos données pour avoir la possibilité de vérifier dans quelle mesure vos recettes basées sur des modèles fonctionnent en dehors des données dans lesquelles vous les avez trouvées. Il est essentiel que vous évaluiez les performances là où elles sont importantes: sur des données fraîches et pertinentes que vous n'avez pas utilisées pour autre chose.

Divisez vos données en 3 ensembles de données: formation, validation et test. (Vous diviserez plus tard votre jeu de données d'entraînement en deux parties pour l'ajustement et le débogage du modèle, mais ne vous inquiétez pas pour le moment.)

Conseil de pro: implémentez le fractionnement au niveau de l'infrastructure si vous le pouvez et disposez d'un contrôle d'accès strict afin que vos données de test ne soient pas mal utilisées accidentellement.

Découvrez pourquoi nous divisons les données ici.

Il est temps pour l'analytique! Regardez certaines (pas toutes!) De vos données. Utilisez votre jeu de données de formation pour tracer des données, effectuer des vérifications d'intégrité et concevoir de nouvelles fonctionnalités. N'oubliez jamais que les données du monde réel sont en désordre, alors ne faites confiance à personne et à rien. Au lieu de cela, considérez votre jeu de données comme un manuel que vous utilisez pour enseigner aux élèves de votre machine. Seul un professeur idiot attribue un manuel qu'il n'a pas regardé à l'intérieur.

Conseil de pro: n'oubliez pas d'appliquer le code que vous écrivez pour nettoyer vos données et créer de nouvelles fonctionnalités à vos jeux de données de validation et de test… sans les fouiller.

Articles sur la nature de l'analyse: [1], [2], [3], [4]

L'exploration vous aide à combattre les biais liés à l'IA. En savoir plus ici.

C'est ici que vous vous liez d'amitié avec votre boîte à outils ML / AI et découvrez tous les algorithmes de recherche de modèles que vous allez essayer d'exécuter. Ne vous attendez pas à ce que vos données soient dans un format que ces packages accepteront. Vous devrez probablement effectuer un tas de configuration et de code pour que ces algorithmes acceptent vos données.

Conseil de pro: essayez toujours d'exécuter des packages existants avant de vous laisser pense de réinventer une roue. C'est l'opposé de l'instinct qu'on vous enseigne dans les cours d'IA destinés à des chercheurs (dont le travail consiste à inventer de nouvelles roues), alors préparez-vous à combattre vos propres habitudes si vous êtes de type professoral.

Comment fonctionnent les algorithmes ML / AI? En savoir plus ici.

Tout le monde semble parler de TensorFlow, mais qu'est-ce que c'est? Répondez ici.

Trouvez et exploitez des modèles dans vos données pour créer des recettes. Divisez vos données d'entraînement et exécutez-les en utilisant les algorithmes que vous avez préparés à l'étape 4 pour adapter certains modèles candidats en trouvant des modèles et en transformant ces modèles en recettes. Évaluez les performances sur le reste de vos données d'entraînement. Bricoler autant que vous le souhaitez, en itérant dans le sens des algorithmes les plus prometteurs et en revenant en arrière pour préparer leurs cousins ​​à recevoir vos données.

Conseil de pro: donner un coup de pouce avec une validation croisée au lieu d'un seul ensemble d'exclusion.

Si vous souhaitez savoir pourquoi votre modèle offre des performances inefficaces sur l'ensemble de blocage (débogage) dans lequel vous venez d'évaluer les performances, passez à des analyses avancées sur votre ensemble de données de débogage. C’est ainsi que vous trouvez l’inspiration pour savoir quoi essayer ensuite. Le signal que vous obtiendrez ici vous indique généralement de revenir en arrière pour concevoir différentes fonctionnalités ou de préparer de nouveaux packages d'algorithmes pour essayer d'exécuter vos données.

Conseil de pro: pensez à l'optimisation des paramètres comme à une sorte de débogage automatisé - c'est pourquoi vous l'aborderez à l'étape 7 avec ses cousins ​​d'amélioration incrémentielle. «L'hyperparamètre est à« algorithme »ce que« cadran de température »est à« grille-pain ». Ne vous inquiétez pas trop de ce cadran la première fois que vous essayez de griller du pain, mais une fois que vous savez que le grille-pain est définitivement pour vous, investissez un peu de temps pour régler ce cadran à son réglage idéal pour vos besoins.

Vous voulez rencontrer un outil de débogage et d'analyse de modèle astucieux appelé l'outil What-If? Cliquez ici.

Le sujet de l'explicabilité et de l'interprétabilité fait également partie de cette étape, alors voici cette entrée de trou de lapin pour vous.

La validation diffère du débogage d'une manière importante: vous êtes autorisé à fouiller dans vos données de validation, car cela érode sa fiabilité en tant que filet de sécurité contre le fait d'être trompé par le sur-ajustement. Vous n'êtes autorisé à consulter la mesure des performances que lors de la validation. Considérez la validation comme un espace sûr pour avoir une idée du déroulement de l'examen final du modèle… mais avec une possibilité de rachat au cas où vous auriez besoin de recommencer. Ne dépassez l'étape de validation que lorsque vous êtes sûr que votre modèle candidat est The One.

Conseil de pro: de nombreux cowboys ML / AI pensent qu’ils font la validation alors qu’ils font le débogage. Cette mauvaise pratique fait monter en flèche la probabilité d'échec du test. C'est mignon pour les projets d'école où rien n'est en jeu, mais c'est pénible lorsque l'ignorance des processus torpille votre projet d'entreprise. Faites attention aux ingénieurs inexpérimentés qui ne comprennent pas que le débogage avec des données de validation revient à jouer à la roulette russe.

La validation est la percée dans l'histoire de la science des données qui a déclenché la révolution ML / AI. En savoir plus ici.

Le moment de vérité! Le test est l'endroit où vous découvrez si votre meilleur est assez bon sur des données 100% vierges. Parce que ni les ingénieurs ni le modèle n'ont jamais vu ces données, il est impossible qu'ils aient triché pour truquer une solution qui bat ces données sans généraliser au monde réel. Un test statistique de performance dans ces données est le signal de qualité le plus propre et le plus fiable que vous puissiez obtenir. L'inconvénient est que vous ne pouvez utiliser les données de test qu'une seule fois. C'est pourquoi vous utilisez d'abord les données de validation comme un signal sale.

Si vous réussissez les tests, vous investirez les ressources d'ingénierie pour créer une version en direct et digne de production de votre modèle prototype. Si vous échouez, c'est baissé.

Conseil de pro: l'échec des tests signifie que vous abandonnez votre projet ML / AI. Pas de sifflement. Ne pleure pas. Pas de mendicité. Tous ces trucs avec un débogage et une validation appropriés étaient là pour vous donner votre chance au rachat, alors fermez et acceptez les résultats du test. La seule exception à cette règle est la situation obscurément privilégiée où il est très bon marché de collecter plus de données. Cela vous permet de poursuivre votre projet avec un tout nouveau jeu de données de test non pollué. Le modèle qui a échoué aux tests doit cependant mourir. Ayez la force de caractère pour le tuer.

Un avertissement sur la confiance accordée aux systèmes ML / AI ici.

Dans cette étape, vous transformerez votre prototype en un système ML / AI qui a la capacité de vivre et de jouer parfaitement avec votre code de production. Cela peut être aussi simple que d'écrire la recette sur une serviette et de l'utiliser pour vous aider à décider et aussi compliqué que de développer un modèle évolutif avec des capacités de recyclage automatisé qui joue bien avec une base de code géante, a des filets de sécurité intégrés et est conçu pour résister aux attaques adversaires. Aucune de ces joies n'a été couverte dans la phase de formation du prototype, donc il reste beaucoup de travail à faire.

Un exemple de filet de sécurité ici.

Une fois que vous avez rendu votre modèle capable de fonctionner en direct, ne le laissez pas sortir des portes d'un coup. Montez en puissance progressivement et faites des expériences pour vérifier que le libérer du monde est une bonne idée. Si l'expérience vous dit de le laisser enfermé, c'est ce que vous devez faire.

Nerveux que tout votre travail soit sur le point d'être perdu? Tu devrais être. Vous avez déjà investi suffisamment d'efforts pour être amoureux de votre projet et les étapes 9 et 11 existent pour écraser vos rêves. Bien. Maintenant, vous serez plus prudent dans toutes les étapes précédentes.

Nous ne voudrions pas que vos sentiments parentaux sans entraves à l’égard de votre système ML / AI nous refilent des déchets toxiques bien-aimés. Ces obstacles sont là pour garantir le maintien de normes de qualité élevées.

Conseil de pro: vous devrez peut-être d'abord créer une infrastructure qui vous permettra d'exécuter en direct statistique expériences, sinon vous ne pourrez pas lancer en toute sécurité. Cela consiste en partie à écrire du code qui vous permet de randomiser les cas servis par votre système ML / AI et ceux qui sont effectués par votre prochaine meilleure alternative (qui pourrait être manuelle).

Après avoir lancé, vous ne pouvez pas simplement vous éloigner et laisser votre système à ses propres appareils. Vous devrez continuer à faire des efforts pour assurer sa sécurité et sa fiabilité à mesure que le temps avance et que l’univers change. C’est le cadeau qui continue de donner (plus de travail).

Un bon début est d'avoir des analyses pour la surveillance du système plus un plan de maintenance, qui comprend une norme de documentation encore meilleure et l'effectif pour garder cette chose fiable pour sa durée de vie.

Conseil de pro: si vous construisez un système de production ML / AI massif, ne faites pas l'erreur de débutant de ne pas embaucher analystes pour surveiller la non-stationnarité d'entrée et d'autres surprises.

La version infographique pour ceux qui les aiment. Ouvrez dans un nouvel onglet pour zoomer.

J'espère que vous pouvez voir qu'il y a bien plus dans l'apprentissage automatique qu'un tas d'algorithmes mathématiques, alors ne vous laissez pas berner par des cours qui n'enseignent que les algorithmes. L'art d'appliquer l'IA pour résoudre des problèmes commerciaux se résume à:

Étape 0–1 Poser les bonnes questions

Étape 2–4 Obtenir et préparer des données utiles

Étape 5–7 Recherche de modèles dans les données jetables

Étape 8–9 Vérifier que les modèles fonctionnent sur les nouvelles données

Étape 10 Construire un système prêt pour la production

Étape 11 S'assurer que le lancement est une bonne idée

Étape 12 Garder un système de production ML fiable dans le temps

Vous souhaitez approfondir ces sujets? Je te couvre! Cette liste se trouve également être une table des matières pour les sujets du blog de plongée profonde que je prioriserai pour mon écriture en 2020 (autrement connu sous le nom de Hindsight Year). Plus vous partagez mes articles de blog avec vos amis, plus je consacre de temps à en écrire de nouveaux pour vous apporter de nouveaux chapitres plus tôt. Restez à l'écoute!

Afficher plus

SupportIvy

SupportIvy.com : Un lieu pour partager le savoir et mieux comprendre le monde. Meilleure plate-forme de support gratuit pour vous, Documentation &Tutoriels par les experts.

Articles similaires

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Bouton retour en haut de la page
Fermer