Comment trouver un emploi dans l'intelligence artificielle

Voici le témoignage d’un jeune diplômé qui s’est construit un parcours sur mesure pour intégrer le merveilleux monde de l’intelligence artificielle. Récit à la première personne.

J’aimerais bien donner quelques informations de base sur ma motivation à écrire cet article. J'ai récemment obtenu mon baccalauréat en informatique. Vers la moitié de ma troisième année en Fac, je savais que le seul domaine dans lequel je voulais travailler était l'IA. Mon université n’avait pas de cours spécifiques à l’IA et il n’y avait pas beaucoup de stages en IA à Paris. Mais je suis heureux de dire, qu’en dépit de tout cela, que je travaille actuellement dans une équipe de recherche et développement sur l'IA en tant que diplômé.

Cet article décrira brièvement ce que j'ai fait pour me préparer à un travail en IA sans expérience préalable. Maintenant, aucune de ces informations n’est époustouflante et la plupart de ces astuces sont assez évidentes. Quoique tout à fait comme manger sainement et faire de l’exercice, j’ai constaté que même si tout le monde sait que c’est ce que vous devez faire, beaucoup de gens ne le font pas encore. J'espère que cet article aidera les gens à établir leur propre plan pour se lancer dans le monde passionnant de l'IA. Une autre chose que je tiens à souligner est que ce conseil s’applique à tous les domaines du développement de logiciels en général. Cependant, les directives et les sujets spécifiques seront évidemment axés sur l’IA / ML.

Le conseil à 1000€ : LEC, un cabinet d’expert comptable à Paris recrute, sur Paris, des ingé spécialisés dans l’IA y compris des débutants du moment que ce soient des bosseurs.

L'état de l'IA aujourd'hui

Nvidia fournit une infographique intéressante sur la progression de l’IA au cours des dernières décennies.

ML est un domaine vraiment unique pour les diplômés en logiciel et les développeurs débutants. La région n'a vraiment pris son envol qu'au cours des 5 dernières années et est encore relativement jeune.

Cela constitue un réel problème / opportunité pour les nouveaux développeurs et les employeurs.

  • Diplômés: Ne pas avoir d’informations solides sur le domaine, peu de modules au collège, difficile d’obtenir une expérience pertinente.
  • Employeurs: Il est très difficile de trouver des personnes ayant une expérience pertinente.

C'est un dilemme difficile à surmonter en tant qu'étudiant, mais c'est aussi une excellente opportunité. Il existe actuellement un énorme déficit en nombre de développeurs qualifiés en machine learning (ML). Les entreprises à tous les niveaux recrutent pour ces rôles et ne peuvent pas les combler. Si vous pouvez démontrer que vous avez l'expertise pertinente, vous serez un candidat hautement souhaitable qui se démarquera non seulement du bassin de diplômés, mais également d'embauches expérimentées.

Tout cela sonne bien en théorie, mais ce n’est bien sûr pas aussi simple. Il y a une raison pour laquelle ces personnes sont difficiles à trouver. Il est difficile de maîtriser ce domaine et le domaine se développe à un rythme rapide, avec plus d’avancées à suivre tous les mois. Ci-dessous, je passerai en revue les domaines clés sur lesquels vous devrez travailler afin de développer votre marque en tant qu'expert en machine learning.

  1. Expérience
  2. Compréhension de la théorie
  3. Spécialisation
  4. Université

Expérience

Mais le titre dit pas d'expérience ?? Wtf!

Oui, je sais, mais soyons honnêtes, personne ne va engager quelqu'un qui n'a absolument aucune expérience.

Comme je l’ai dit auparavant, il est très difficile d’acquérir de l’expérience dans une entreprise spécialisée dans le machine learning. Donc, si ce n’est pas une option, vous devez vous procurer l’expérience requise.

Vous trouverez ci-dessous de bons moyens de le faire.

  • Projets personnels
  • Hackathons
  • Défis de codage
  • Projets Open Source
  • Projets personnels

Projets personnels

Vous devez à 100% avoir des projets ML dans votre GitHub. C’est un moyen très rapide d’éliminer les personnes du processus de recrutement et ce sera la première chose que les recruteurs examineront après votre CV. Maintenant, il est peut-être un peu difficile d’essayer de concevoir un projet alors que vous en apprenez toujours plus sur le blanchiment de capitaux, c’est bien. Il n’est pas nécessaire qu’il soit grand, flashy ou novateur, il vous suffit d’exprimer votre compréhension du sujet et d'indiquer aux gens que vous êtes capable de travailler / rechercher seul avec de bonnes normes de codage.

Quelques points sur lesquels vous devez vous concentrer lorsque vous construisez un projet GitHub.

Le projet ne devrait pas durer plus d’un mois.

Assurez-vous que votre code est propre, modulaire et commenté

Fournissez un Read Me et d’autres documents relatifs à votre code, tels que la technologie utilisée, les tutoriels référencés, les dépendances, etc.

Si possible, fournissez des tests unitaires pour les éléments clés de la base de code

La prochaine étape consiste à choisir le projet sur lequel travailler. Vous voulez qu'il soit suffisamment simple pour pouvoir le terminer en un mois et suffisamment pertinent pour que vous acquériez des compétences utiles. Voici quelques exemples:

Classificateur d'images utilisant un CNN.

Il suffit de faire la distinction entre 2 types d’images (c’est-à-dire chien / chat).

Réseau de neurones à retransmission standard pour classer les données. Kaggle.com contient de très nombreux jeux de données. Prenons-en un tel que l'ensemble de données sur l'iris et classifiez les types d'iris qu'une fleur est basée sur les données fournies.

Analyse des sentiments pour les critiques de films. Un autre premier projet populaire consiste à utiliser un réseau de neurones pour classer le sentiment de la critique de film (bon ou mauvais). Vous pouvez utiliser le jeu de données IMDB, également disponible dans kaggle.

Hackathons

Les hackathons sont parfaits pour plusieurs raisons. Cela vous oblige à sortir et à construire quelque chose, à rencontrer des personnes plus expérimentées et à le mettre sur votre CV / portefeuille en croissance. Essayez de trouver des hackathons spécifiques à l'IA, mais allez également aux hackathons logiciels généraux et essayez de donner une tournure d'intelligence artificielle à votre projet.

Défis de codage

Semblables à des hackathons, les problèmes de codage vous obligent à créer une application pratique de ce que vous avez appris, ce qui vaut son pesant d'or lorsque vous postulez pour votre emploi en ML. En prime, ces compétitions sont généralement très amusantes et le sens accru de la concurrence peut être un très bon facteur de motivation. Jetez un oeil à des endroits tels que Kaggle, CodinGame et Halite.io

Projets Open Source

C’est la chose la plus proche de l’expérience du monde réel que vous pouvez obtenir, à moins d’obtenir un emploi en tant que développeur ML. Les projets Open Source vous donnent un aperçu réel du code de niveau de production et vous enseigneront des compétences précieuses telles que le débogage, le contrôle de version, le développement avec d'autres personnes et bien sûr beaucoup de ML (selon le projet).

Comprendre la théorie

OK, l’essentiel est donc d’obtenir des projets et de l’expérience, mais c’est plus que simplement suivre quelques tutoriels et les coller sur GitHub (essayez de ne pas le faire: D) Vous devez comprendre ce que vous construisez. Comme de nombreux étudiants le savent, il y a une grande différence entre étudier et comprendre.

Il existe de très bonnes ressources qui passent clairement par l’importante théorie du BC et de le deep learning. Une autre chose importante à souligner, ne vous concentrez pas sur le deep learning. Je sais que c'est le côté "plus sexy" de l'IA, mais ce n'est qu'un côté. Familiarisez-vous avec les formes plus classiques de ML, telles que les modèles de régression, les machines à vecteurs de support et tous les concepts majeurs de probabilité et de statistique. Celles-ci seront toujours utiles, peu importe le type d'IA que vous construisez.
Voici quelques-unes des meilleures ressources que j'ai trouvées.
Stanford Machine Learning est un cours gratuit sur coursera qui couvre à peu près tout ce que vous devez savoir sur le ML, des modèles de régression à le deep learning.
DeepLearning.ai par Andrew Ng. Comme le cours précédent, Ng donne un aperçu très complet de l'intelligence artificielle, mais ce cours est spécialisé dans le deep learning par opposition au ML en général.

Grokking Deep Learning d’Andrew Trask est probablement le meilleur livre que j’ai trouvé sur le deep learning. Le livre passe par la construction de réseaux neuronaux n’utilisant aucune bibliothèque, à l’exception de Numpy. C’est plus complexe et coûte de l’argent, mais c’est très précieux si vous avez le temps de le parcourir correctement.

La chaîne youtube de Siraj Raval est un excellent endroit pour avoir un aperçu de haut niveau de presque tous les sujets pertinents du ML et est également très amusante à regarder.

Spécialisation

intelligence artificielle machine learning algorithme

C’est un bon moyen pour les employeurs de déterminer les candidats ayant les compétences les plus adaptées à ses projets. Le ML est un domaine scientifique très étendu. Il est impossible pour une personne de maîtriser l’ensemble des domaines. C'est pourquoi les gens se spécialisent et deviennent des experts d’une partie du ML donnée. Si vous pouvez non seulement montrer que vous avez une solide compréhension du machine learning / deep learning en général ET que vous vous êtes spécialisé dans un domaine du ML, vous aurez encore plus de valeur pour les employeurs potentiels. Mais faites attention à ne pas vous enfermer dans une boîte, car vous ne devez pas décider de tout votre futurs parcours professionnel dès maintenant et essayez plutôt de trouver un domaine qui vous passionne vraiment et d’en apprendre plus à ce sujet, quitte à lancer plusieurs projets si vous le pouvez.

Voici quelques exemples de spécialisations.

  • Vision par ordinateur: CNN, segmentation, étiquetage, descriptions, détection d’objets
  • Réseaux récurrents: données de séries chronologiques telles que la bourse et une vidéo, cellules LSTM
  • Apprentissage par renforcement: apprendre à un agent à acquérir des compétences telles que jouer à un jeu vidéo ou à la conduite
  • Traitement du langage naturel: robots de discussion (chatbots), analyse des sentiments, génération de contenu, synthèse de contenu
  • Réseaux adverseriaux génératifs: apprendre à générer du contenu tel que des images, des modèles 3D, des règles d’apprentissage, de l’audio
  • Méta-apprentissage: apprendre à apprendre
  • One Shot Learning: apprendre avec très peu de données
  • Visualisation et mise au point de réseaux neuronaux: vaste domaine de recherche, les réseaux neuronaux sont encore une boîte noire et il nous est difficile de les visualiser et de comprendre pourquoi ils ne fonctionnent pas s’ils sont brisés.

Université, Ecoles d’ingénieurs ou autoformation ?

C’est un point où beaucoup de gens ne sont pas d’accord. Le chemin pour devenir un développeur de logiciels est en train de changer. Le passage en Fac ou en écoles d’ingés n’est plus la condition sine qua non pour accéder à ce secteur d’activité. Les géants de la technologie tels que Google et Apple ont même commencé à renoncer à leur obligation de détenir un baccalauréat. En effet, les entreprises innovantes reconnaissent que les personnes avec lesquelles elles souhaitent travailler sont passionnées, motivées et désireuses de prendre des initiatives. Toutes ces choses ne nécessitent pas explicitement un diplôme et avec la grande quantité de ressources disponibles sur Internet, vous pouvez pratiquement tout apprendre vous-même à la maison, aussi longtemps que vous êtes prêt à en faire l'effort.

Cela dit, réussir à l’université est un avantage considérable et ne doit pas être sous-estimé. Par conséquent, mon conseil est le suivant: si votre situation ne vous permet pas de fréquenter l’université, ne vous attardez pas dessus, de nombreuses autres possibilités s’offrent à vous.

Si vous effectuez toutes les autres tâches mentionnées dans cet article, il y a de fortes chances que vous obteniez un emploi dans l’IA.