DéveloppeurWeb.Com
    DéveloppeurWeb.Com
    • Agile Zone
    • AI Zone
    • Cloud Zone
    • Database Zone
    • DevOps Zone
    • Integration Zone
    • Web Dev Zone
    DéveloppeurWeb.Com
    Home»AI Zone»Les 10 commandements pour réaliser un projet de science des données
    AI Zone

    Les 10 commandements pour réaliser un projet de science des données

    novembre 26, 2021
    Les 10 commandements pour réaliser un projet de science des données
    Share
    Facebook Twitter Pinterest Reddit WhatsApp Email

    Lors de la conception d’un projet de science des données, il est essentiel d’établir ce que nous, ou les utilisateurs pour lesquels nous construisons des modèles, voulons réaliser, mais cette compréhension ne fournit qu’un modèle de réussite. Pour vraiment répondre à un brief bien établi, les équipes de science des données doivent suivre les meilleures pratiques dans l’exécution du projet. Pour aider à établir ce que cela pourrait signifier, j’ai proposé dix points pour fournir un cadre qui peut être appliqué à n’importe quel projet de science des données.

    1. Comprendre le problème

    La partie la plus fondamentale de la résolution de tout problème est de savoir exactement quel problème vous résolvez. Assurez-vous de bien comprendre ce que vous essayez de prédire, les contraintes et quel sera le but ultime de ce projet. Posez des questions dès le début et validez votre compréhension avec des pairs, des experts du domaine et des utilisateurs finaux. Si vous trouvez que les réponses correspondent à votre compréhension, vous savez que vous êtes sur la bonne voie.

    2. Connaissez vos données

    En sachant ce que signifient vos données, vous serez en mesure de comprendre quels types de modèles fonctionnent bien et quelles fonctionnalités utiliser. Le problème derrière les données affectera le modèle qui aura le plus de succès et le temps de calcul influencera le coût du projet. En utilisant et en créant des fonctionnalités significatives, vous pouvez imiter ou améliorer la prise de décision humaine. Comprendre ce que signifie chaque champ est important pour le problème, en particulier dans les industries réglementées, où les données peuvent devoir être rendues anonymes et donc pas tout à fait claires. Vérifiez auprès d’un expert du domaine si vous n’êtes pas sûr de ce que quelque chose signifie.

    3. Divisez vos données

    Comment votre modèle fonctionnera-t-il sur des données invisibles ? Peu importe ses performances sur les données qui vous sont fournies s’il ne peut pas être généralisé à de nouvelles données. En ne laissant pas votre modèle voir une partie des données pendant l’entraînement, vous pouvez valider ses performances sur des inconnus. Cette méthode est cruciale pour choisir l’architecture de modèle et les paramètres de réglage appropriés pour obtenir les meilleures performances.

    Pour les problèmes d’apprentissage supervisé, vous devrez diviser vos données en deux ou trois parties. Les données d’apprentissage – les données à partir desquelles le modèle apprend – représentent généralement 75 à 80 % des données d’origine, choisies au hasard. Les données de test – les données par lesquelles vous évaluez votre modèle – sont les données restantes. Selon le type de modèle que vous créez, vous aurez peut-être également besoin d’un troisième ensemble de retenue appelé ensemble de validation, qui est utilisé pour comparer plusieurs modèles d’apprentissage supervisé qui ont été réglés sur les données de test. Dans ce cas, vous devrez diviser les données hors formation en deux ensembles de données, le test et la validation. Vous souhaitez comparer les itérations du même modèle à l’aide des données de test et comparer les versions finales de différents modèles à l’aide des données de validation.

    En Python, le moyen le plus simple de diviser correctement vos données consiste à utiliser la fonction train_test_split de Scikit-learn.

    4. Ne pas divulguer les données de test

    Il est important de ne pas introduire d’informations à partir des données de test dans votre modèle. Cela peut être aussi évident que l’entraînement sur l’ensemble de votre ensemble de données ou aussi subtil que l’exécution de transformations – telles que la mise à l’échelle – avant le fractionnement. Par exemple, si vous normalisez vos données avant le fractionnement, le modèle obtient des informations sur l’ensemble de données de test puisque le minimum ou le maximum global peut se trouver dans les données conservées.

    5. Utilisez les bonnes mesures d’évaluation

    Puisque chaque problème est différent, la méthode d’évaluation appropriée doit être choisie en fonction du contexte. La mesure de classification la plus naïve – et peut-être dangereuse – est la précision. Considérez le problème de la détection du cancer. Si nous voulons un modèle assez précis, nous devrions toujours prédire « pas de cancer » puisque plus de 99 % du temps, nous aurons raison. Cependant, ce modèle n’est pas très utile puisque nous voulons en fait détecter le cancer. Prenez soin de déterminer quelle métrique d’évaluation utiliser dans vos problèmes de classification et de régression.

    6. Restez simple

    Lorsqu’on aborde un problème, il est important de choisir la bonne solution pour le travail, pas le modèle le plus compliqué. La direction, les clients et même vous voudrez peut-être utiliser les « derniers et meilleurs ». Vous devez utiliser le modèle le plus simple qui répond à vos besoins, un principe appelé Razor d’Occam. Non seulement cela offrira plus de visibilité et réduira les temps de formation, mais cela peut réellement améliorer les performances. En bref, ne tirez pas sur une mouche avec un bazooka ou n’essayez pas de tuer Godzilla avec une tapette à mouches.

    7. Ne sur-ajustez pas (ou sous-ajustez) votre modèle

    Le surajustement, également appelé variance, entraîne de mauvaises performances sur des données que le modèle n’a pas vues. Le modèle mémorise simplement les données d’entraînement. Le sous-ajustement, également connu sous le nom de biais, donne au modèle trop peu d’informations pour apprendre une représentation correcte du problème. Équilibrer ces deux éléments – communément appelé « compromis biais-variance » – est une partie importante du processus de science des données, et différents problèmes nécessitent un équilibre différent.

    Prenons un simple classificateur d’images comme exemple. Sa tâche est de classer s’il y a un chien dans une image ou non. Si vous surdimensionnez ce modèle, il ne pourra pas identifier une image en tant que chien à moins qu’il n’ait déjà vu cette image exacte auparavant. Si vous sous-estimez le modèle, il se peut qu’il ne reconnaisse pas une image en tant que chien, même s’il a déjà vu cette image particulière auparavant.

    8. Essayez différentes architectures de modèles

    La plupart du temps, il est avantageux de considérer différentes architectures de modèles pour un problème. Ce qui fonctionne le mieux pour un problème peut ne pas l’être pour un autre. Essayez un mélange d’algorithmes simples et compliqués. Par exemple, si vous exécutez un modèle de classification, essayez des choses aussi simples qu’une forêt aléatoire et aussi complexes qu’un réseau de neurones. Fait intéressant, l’amplification de gradient extrême (XGBoost) surpasse souvent de loin un classificateur de réseau neuronal. Un problème simple est souvent mieux résolu avec un modèle simple.

    9. Réglez vos hyperparamètres

    Les hyperparamètres sont des valeurs utilisées dans le calcul du modèle. Par exemple, un hyperparamètre d’un arbre de décision est la profondeur de l’arbre, c’est-à-dire le nombre de questions qu’il posera avant de décider d’une réponse. Les hyperparamètres par défaut d’un modèle sont ceux qui, en moyenne, offrent les meilleures performances. Mais il est très peu probable que votre modèle se trouve juste à cet endroit idéal ; votre modèle peut fonctionner beaucoup mieux si différents paramètres sont sélectionnés. Les méthodes les plus courantes pour régler les hyperparamètres sont la recherche par grille, la recherche aléatoire et la recherche optimisée bayésienne, mais il existe un certain nombre d’autres techniques plus avancées.

    10. Comparez correctement les modèles

    Le but ultime de l’apprentissage automatique est de développer un modèle qui se généralise bien. C’est pourquoi il est si important de comparer et de sélectionner correctement le meilleur modèle. Comme mentionné ci-dessus, vous souhaiterez utiliser un ensemble de rétention différent de celui avec lequel vous avez entraîné vos hyperparamètres pour l’évaluation. De plus, vous voudrez utiliser des tests statistiques appropriés pour évaluer les résultats.

    Maintenant que vous disposez de principes directeurs pour réaliser un projet de science des données, essayez-les lors de votre prochain projet de science des données. Je serais intéressé de savoir s’ils vous ont aidé, alors faites-moi savoir s’ils l’ont fait ou s’ils ne l’ont pas fait. Veuillez ajouter l’un de vos propres commandements dans les commentaires ci-dessous !

    Share. Facebook Twitter Pinterest LinkedIn WhatsApp Reddit Email
    Add A Comment

    Leave A Reply Cancel Reply

    Catégories

    • Politique de cookies
    • Politique de confidentialité
    • CONTACT
    • Politique du DMCA
    • CONDITIONS D’UTILISATION
    • Avertissement
    © 2023 DéveloppeurWeb.Com.

    Type above and press Enter to search. Press Esc to cancel.