Concours Kaggle: Comment et par où commencer?

Introduction

Ai-je les compétences nécessaires pour participer aux compétitions Kaggle ?

Avez-vous déjà été confronté à cette question? Au moins, je l’ai fait, en deuxième année, quand j’avais l’habitude de craindre Kaggle simplement en envisageant le niveau de difficulté qu’il offre. Cette peur était similaire à ma peur de l’eau. Ma peur de l’eau ne me permettrait pas de prendre des cours de natation. Cependant, plus tard, j’ai appris: « Jusqu’au moment où vous n’entrez pas dans l’eau, vous ne pouvez pas comprendre à quelle profondeur il est ». Une philosophie similaire s’applique à Kaggle. Ne concluez pas avant d’essayer!

Kaggle, le berceau de la science des données, fournit une plate-forme mondiale pour les concours, les solutions clients et les offres d’emploi. Voici la capture Kaggle, ces compétitions non seulement vous font penser à la boîte, mais offrent également un beau prix en argent.

Pourtant, les gens hésitent à participer à ces compétitions. Voici quelques raisons principales:

  1. Ils minimisent leur niveau de compétences, de connaissances et de techniques acquises.
  2. Quel que soit leur niveau de compétences, ils choisissent le problème offrant le prix le plus élevé.
  3. Ils ne parviennent pas à faire coïncider leur niveau de compétence avec le niveau de difficulté du problème.

Je pense que ce problème émane de Kaggle lui-même. Kaggle.com ne fournit aucune information pouvant aider les gens à choisir le problème le plus approprié correspondant à leurs compétences. En conséquence, il est devenu une tâche ardue pour les débutants / intermédiaires de décider du problème approprié pour commencer.

Ce que vous apprendrez dans cet article?

Dans cet article, nous avons ouvert l’impasse du choix du problème kaggle approprié en fonction de votre ensemble de compétences, outils & techniques. Ici, nous avons illustré chaque problème de kaggle avec le niveau de difficulté et le niveau de compétences nécessaires pour le résoudre.

Dans cette dernière partie, nous avons défini l’approche correcte pour reprendre un problème de kaggle pour les cas suivants:

Cas 1: J’ai une formation en codage mais je suis nouveau dans l’apprentissage automatique.

Cas 2 : Je travaille dans l’industrie de l’analyse depuis plus de 2 ans, mais je ne suis pas à l’aise sur R / Python

Cas 3: Je suis doué pour le codage et l’apprentissage automatique, j’ai besoin de quelque chose de difficile pour travailler sur

Cas 4: Je suis un débutant à la fois en apprentissage automatique ou en langage de codage, mais je veux apprendre

Liste des problèmes Kaggle

Titanic: l’apprentissage automatique à partir d’une catastrophe

Objectif: Un problème populaire classique pour commencer votre voyage avec l’apprentissage automatique. On vous donne un ensemble d’attributs de passagers à bord et vous devez prédire qui aurait survécu après que le navire a coulé.

Niveau de difficulté

a) Compétences d’Apprentissage automatique – Faciles

b) Compétences de codage – Faciles

c) Acquisition de Compétences de domaine – Faciles

d) Tutoriels disponibles – Très complets

2. Première étape avec Julia

Objectif: Il s’agit d’un problème pour identifier les caractères sur une image Google Street view à l’aide d’un outil à venir Julia.

Niveau de difficulté sur chacun des attributs :

a) Compétences d’apprentissage automatique – Faciles

b) Compétences de codage – Moyennes

c) Acquisition de compétences de domaine – Faciles

d) Tutoriel disponible – Complet

Reconnaissance de chiffres

Objectif: Vous recevez une donnée avec des pixels sur des chiffres manuscrits et vous devez dire de manière concluante de quel chiffre s’agit-il. C’est un problème classique pour le modèle de Markov latent.

Niveau de difficulté sur chacun des attributs :

a) Compétences d’apprentissage automatique – Moyen

b) Compétences de codage – Moyen

c) Acquérir des compétences de domaine – Facile

d) Tutoriel disponible – Disponible mais pas de main

Sac de mots rencontre Sac de Pop-Corn

Objectif: On vous donne un ensemble de critiques de films, et vous devez trouver le sentiment caché dans ces déclarations. L’objectif de cet énoncé de problème est de vous présenter Google Package–Word2Vec.

C’est un package fantastique qui vous aide à convertir des mots en un espace de dimension finie. De cette façon, nous pouvons construire des analogies en ne regardant que le vecteur. Un exemple très simple est que votre algorithme peut faire ressortir des analogies comme: Roi – Mâle + Femelle vous donnera Reine.

Niveau de difficulté sur chacun des attributs:

a) Compétences d’apprentissage automatique – Difficiles

b) Compétences de codage – Moyennes

c) Acquérir des compétences de domaine – Faciles

d) Tutoriel disponible – Disponible mais pas de main

5. Débruitage de documents sales

Objectif: Vous connaissez peut-être une technologie connue sous le nom d’OCR. Il convertit simplement des documents manuscrits en documents numériques. Cependant, ce n’est pas parfait. Votre travail ici consiste à utiliser l’apprentissage automatique pour le rendre parfait.

Niveau de difficulté sur chacun des attributs:

a) Compétences d’apprentissage automatique – Difficiles

b) Compétences de codage – Difficiles

c) Acquérir des compétences de domaine – Difficiles

d) Tutoriel disponible – Non

Classification de la criminalité de San Francisco

Objectif: Prédire la catégorie de crimes survenus dans la ville au bord de la baie.

Niveau de difficulté sur chacun des attributs:

a) Compétences d’Apprentissage automatique – Très difficiles

b) Compétences de codage – Très Difficiles

c) Acquérir des Compétences de domaine – Difficiles

d) Tutoriel disponible – Non

Temps / Emplacement de Prédiction de trajectoire de Taxi

Objectif: Il y a deux problèmes basés sur les mêmes jeux de données. On vous donne le contrôleur d’un taxi, et vous êtes censé prédire où va le taxi ou le temps qu’il faudra pour terminer le voyage.

Niveau de difficulté sur chacun des attributs :

a) Compétences d’Apprentissage automatique – Faciles

b) Compétences de codage – Difficiles

c) Acquérir des Compétences de domaine – Moyennes

d) Tutoriel disponible – Quelques codes de benchmark disponibles

Recrutement Facebook – Humain ou bot

Objectif : Si vous avez un problème pour comprendre une nouvelle domaine, vous devez résoudre celui-ci. On vous donne les données d’enchère et on s’attend à ce que le soumissionnaire soit classé en bot ou en humain. Cela a la source de données la plus riche disponible de tous les problèmes sur Kaggle.

Niveau de difficulté sur chacun des attributs:

a) Compétences d’Apprentissage automatique – Moyennes

b) Compétences de codage – Moyennes

c) Acquérir des compétences de domaine – Moyennes

d) Tutoriel disponible – Aucun support disponible car il s’agit d’un concours de recrutement

Remarque: Je n’ai pas couvert les concours Kaggle offrant des prix en argent dans cet article car ils sont tous liés à un concours spécifique domaine. Faites-moi savoir votre point de vue sur eux dans la section des commentaires ci-dessous.

Nous allons maintenant chercher la bonne approche pour les personnes ayant des compétences différentes à différentes étapes de la vie pour commencer leur voyage Kaggle!

Cas 1: J’ai une formation en codage mais je suis nouveau dans l’apprentissage automatique.

Étape 1: Le premier problème de kaggle que vous devez résoudre est: Prédiction de trajectoire de taxi. La raison en est que le problème a un ensemble de données complexe qui inclut un format JSON dans l’une des colonnes qui indique l’ensemble de coordonnées visitées par le taxi. Si vous êtes en mesure de décomposer cela, obtenir une estimation initiale de la destination ou de l’heure cible n’a pas besoin d’un apprentissage automatique. Par conséquent, vous pouvez utiliser votre force de codage pour trouver votre valeur dans cette industrie.

Étape 2: Votre prochaine étape devrait être de reprendre: Titanic. La raison en est que vous comprendriez déjà comment gérer des ensembles de données complexes. Par conséquent, c’est le moment idéal pour prendre une photo sur les problèmes d’apprentissage automatique pur. Avec une abondance de solutions / scripts disponibles, vous serez en mesure de construire une bonne solution.

Étape 3: Vous êtes maintenant prêt pour quelque chose de grand. Essayez le recrutement Sur Facebook. Cela vous aidera à comprendre comment la compréhension du domaine peut vous aider à tirer le meilleur parti de l’apprentissage automatique.

Une fois que vous avez toutes ces pièces en place, vous êtes bon d’essayer n’importe quel problème sur Kaggle.

Cas 2: Je travaille dans l’industrie de l’analyse depuis plus de 2 ans, mais je ne suis pas à l’aise sur R / Python

Étape 1: Vous devriez commencer par prendre une photo sur Titanic. La raison étant, vous comprenez déjà comment construire un algorithme prédictif. Vous devriez maintenant vous efforcer d’apprendre des langages comme R et Python. Avec l’abondance de solutions / scripts disponibles, vous pourrez créer différents types de modèles sur R et Python. Ce problème vous aidera également à comprendre quelques algorithmes avancés d’apprentissage automatique.

Étape 2: La prochaine étape devrait être le recrutement sur Facebook. Raison pour laquelle, compte tenu de la simplicité de la structure des données et de la richesse du contenu, vous pourrez joindre les bonnes tables et faire un algorithme prédictif sur celle-ci. Cela vous aidera également à comprendre comment la compréhension du domaine peut vous aider à tirer le meilleur parti de l’apprentissage automatique.

Suggestions: Vous êtes maintenant prêt pour quelque chose de très différent de votre zone de confort. Lisez des problèmes tels que la Détection de la Rétinopathie diabétique, les Clics publicitaires dans le contexte Avinto, la Classification des crimes et trouvez le domaine qui vous intéresse. Maintenant, essayez d’appliquer tout ce que vous avez appris jusqu’à présent.

Il est maintenant temps d’essayer quelque chose de plus complexe à coder. Essayez de prédire la trajectoire du Taxi ou de Débruiter des Documents sales. Une fois que vous avez toutes ces pièces en place, vous pouvez maintenant essayer n’importe quel problème sur Kaggle.

Cas 3: Je suis bon avec le codage et l’apprentissage automatique, j’ai besoin de quelque chose de difficile sur lequel travailler

Étape 1: Vous avez de nombreuses options sur Kaggle. La première option est de maîtriser une nouvelle langue comme Julia. Vous pouvez commencer par le premier pas avec Julia. La raison en est que cela vous donnera une exposition supplémentaire à ce que Julia peut faire en plus de Python ou de R.

Étape 2: La deuxième option consiste à développer des compétences avec un domaine supplémentaire. Vous pouvez essayer le contexte Avito, la Pertinence de la recherche ou Facebook – Humain vs Bot.

Cas 4: Je suis un débutant en apprentissage automatique ou en langage de codage, mais je veux apprendre

Étape 1: Vous devriez commencer votre voyage kaggle avec Titanic. La raison en est que la première étape pour vous est d’apprendre des langages comme R et Python. Avec l’abondance de solutions / scripts disponibles, vous pourrez créer différents types de modèles sur R et Python. Ce problème vous aidera également à comprendre quelques algorithmes d’apprentissage automatique.

Étape 2: Vous devriez ensuite vous lancer dans: Recrutement Facebook. Raison pour laquelle, compte tenu de la simplicité de la structure des données et de la richesse du contenu, vous pourrez joindre les bonnes tables et faire un algorithme prédictif sur celle-ci. Cela vous aidera également à comprendre comment la compréhension du domaine peut vous aider à tirer le meilleur parti de l’apprentissage automatique.

Une fois que vous avez terminé avec ceux-ci, vous pouvez ensuite résoudre les problèmes selon votre intérêt.

Quelques hacks pour être une concurrence loyale sur Kaggle

Ce n’est pas une liste complète des hacks, mais destinée à vous fournir un bon départ. Une liste complète mérite un nouveau poste en soi:

  1. Assurez-vous de soumettre une solution (même l’exemple de soumission fera ce travail) avant la dernière date d’inscription, si vous souhaitez participer au concours à l’avenir.
  2. Comprenez le domaine avant d’accéder aux données. Par exemple, dans le bot vs human, vous devez comprendre le fonctionnement de la plate-forme d’enchères en ligne avant de commencer le voyage avec des données.
  3. Créez votre propre algorithme d’évaluation qui peut imiter le score du test Kaggle. Une simple validation croisée 10 fois fonctionne généralement bien.
  4. Essayez de découper autant de fonctionnalités que possible à partir des données du train – l’ingénierie des fonctionnalités est généralement la partie qui vous pousse du centile supérieur 40 au centile supérieur 10.
  5. Un seul modèle ne vous place généralement pas dans le top 10. Vous devez créer de nombreux modèles et les assembler. Cela peut être plusieurs modèles avec différents algorithmes ou différents ensembles de variables.

Notes de fin

Il y a plusieurs avantages que j’ai réalisés après avoir travaillé sur les problèmes Kaggle. J’ai appris R /Python à la volée. Je crois que c’est la meilleure façon d’apprendre la même chose. Interagir également avec des personnes du forum de discussion sur divers problèmes vous aidera à approfondir l’apprentissage automatique et le domaine.

Dans cet article, nous avons illustré divers problèmes de Kaggle et classé leurs attributs essentiels dans le niveau de difficulté. Nous avons également abordé divers cas réels et nous avons trouvé la bonne approche pour participer à Kaggle.

Avez-vous participé à un problème Kaggle? Avez-vous vu des avantages significatifs en faisant de même? Faites-nous part de vos réflexions sur ce guide dans la section commentaires ci-dessous.

Si vous aimez ce que vous venez de lire & souhaitez poursuivre votre apprentissage de l’analytique, abonnez-vous à nos courriels, suivez-nous sur twitter ou aimez notre page facebook.

Vous pouvez également lire cet article sur notre application mobile

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.