Les tentatives de conception de machines plus intelligentes que les humains ne sont pas nouvelles.

L'une des toutes premières attaques de l'informatique contre « l'intelligence » humaine a eu lieu à travers le jeu d'échecs. Les échecs sont (ou devrions-nous dire, étaient ?) considérés par beaucoup comme le test ultime de l'intelligence et de la créativité humaines, et dans les années 1960-70, il y avait différentes écoles de pensée au sein de l'informatique.

Certains ont soutenu que ce n'était qu'une question de temps avant que les ordinateurs ne dépassent les humains en jouant aux échecs, tandis que d'autres pensaient que cela n'arriverait jamais.

Kasparov vs. Deep Blue

L'événement le plus sensationnel mettant en scène l'homme contre la machine dans la bataille de la pensée a été le match d'échecs de 1996 entre le champion du monde de l'époque Garry Kasparov (et sans doute, le meilleur joueur d'échecs de tous les temps) et Deep Blue, un supercalculateur conçu par IBM pour cet événement.

Crédit d'image: Wikipedia

Pour faire court, Kasparov a remporté le match de 1996 de manière convaincante (4-2) mais a perdu le match revanche de 1997 (4.5-3.5) au milieu de beaucoup de controverse et les allégations de triche directe de Kasparov contre IBM.

Quoi qu'il en soit, l'ère des échecs et de l'informatique était révolue. Les ordinateurs avaient le droit d'être plus intelligents que n'importe quel humain vivant possible. IBM, heureux de la vengeance, a démantelé Deep Blue et est passé à autre chose.

Aujourd'hui, il est impossible pour un grand maître de battre un moteur d'échecs ordinaire fonctionnant sur du matériel de base.

What isn't Machine Learning?

Avant d'examiner plus en profondeur l'apprentissage automatique, éliminons certaines idées fausses. L'apprentissage automatique n'est pas, par aucun effort d'imagination, une tentative de reproduction du cerveau humain. Malgré les croyances sensationnalistes d'Elon Musk, les chercheurs en informatique affirment qu'ils ne sont pas à la recherche de ce grain sacré et certainement pas à proximité.

En termes simples, l'apprentissage automatique consiste à appliquer des processus d'apprentissage par exemple aux ordinateurs. Cela contraste avec l'approche traditionnelle consistant à compter sur un programmeur humain pour imaginer tous les scénarios possibles et les règles de codage en dur pour eux dans un système.

Honnêtement, c'est à peu près ce qu'est l'apprentissage automatique : fournir des tonnes et des tonnes et des tonnes de données à un ordinateur afin qu'il puisse apprendre à partir d'exemples (essai → erreur → comparaison → amélioration) plutôt que de s'appuyer sur le code source.

Applications of Machine Learning

Donc, si l'apprentissage automatique n'est pas de la magie noire et qu'il n'y a pas non plus quelque chose qui va engendrer des Terminators, à quoi sert-il ?

L'apprentissage automatique aide dans les cas où la programmation traditionnelle tombe à plat, et ces cas tombent généralement dans l'une des deux catégories.

  • Classification
  • Prédiction

Comme son nom l'indique, la classification concerne l'étiquetage correct des choses, tandis que la prédiction vise à corriger les projections futures, étant donné un ensemble de données suffisamment important de valeurs passées.

Certain applications intéressantes du Machine Learning sont:

Filtre anti-spam

Courrier électronique est omniprésente, mais essayer de l'arrêter peut être un cauchemar. Comment le spam est-il défini ? Est-ce la présence de mots-clés spécifiques ? Ou peut-être la façon dont c'est écrit? Il est difficile d'imaginer un ensemble exhaustif de règles, par programme.

C'est pourquoi nous utilisons l'apprentissage automatique. Nous montrons au système des millions de spams et de messages non-spam et le laissons comprendre le reste. C'était le secret derrière les excellents filtres anti-spam de Gmail qui ont secoué les e-mails personnels au début des années 2000 !

Conseils

Toutes les grandes entreprises de commerce électronique disposent aujourd'hui de puissants systèmes de recommandation. Parfois, leur capacité à recommander des choses que nous «pourrions» trouver utiles est incroyablement précise, bien que nous n'ayons jamais cliqué sur cet élément auparavant.

Coïncidence? Pas du tout!

L'apprentissage automatique travaille dur ici, engloutissant des téraoctets après des téraoctets de données et essayant de prédire nos humeurs et préférences volatiles.

Chatbots

Avez-vous rencontré un support client de premier niveau qui semblait étrangement robotique et qui était pourtant capable de faire des discussions intéressantes?

Eh bien, alors vous avez été pwned par Machine Learning !

Apprendre des conversations et déterminer quoi dire quand est un domaine à venir et passionnant de application chatbot.

Élimination des mauvaises herbes

Dans l'agriculture, des robots alimentés par Machine Learning sont utilisés pour pulvériser de manière sélective les mauvaises herbes et autres plantes indésirables parmi les cultures.

Sinon, cela devrait être fait à la main ou serait un gaspillage énorme car le système pulvériserait également le produit avec le liquide tueur !

La recherche vocale

Interaction vocale avec des systèmes informatiques n'est plus de la science-fiction. Aujourd'hui, nous avons des assistants numériques comme Alexa, Siri et Google Home qui peuvent prendre des commandes verbalement et ne pas gâcher (enfin, presque !).

Certains pourraient dire qu'il s'agit d'une invention qu'il vaut mieux éviter car elle rend la race humaine plus paresseuse que jamais, mais vous ne pouvez pas contester l'efficacité.

Le diagnostic médical

Nous sommes sur le point de révolutionner le diagnostic médical, car les systèmes basés sur l'apprentissage automatique commencent à surpasser les médecins expérimentés dans diagnostic par rayons X, etc.

Veuillez noter que cela ne signifie pas que les médecins ne seront bientôt plus nécessaires, mais que la qualité des soins médicaux augmentera considérablement, tandis que les coûts vont plonger (à moins que les cartels commerciaux n'en décident autrement!).

Ce n'était qu'un exemple de ce à quoi le Machine Learning est utilisé. Des voitures autonomes, des robots de jeu de stratégie, des machines à plier des t-shirts, des cassures de captcha et des photos en noir et blanc à colorier se produisent ces jours-ci.

Types of Machine Learning

Les techniques d'apprentissage automatique sont de deux types.

Apprentissage supervisé, dans lequel le système est dirigé par le jugement humain, et Apprentissage non supervisé, dans lequel le système doit apprendre tout seul. Une autre façon de dire la même chose serait que dans l'apprentissage supervisé, nous avons un ensemble de données contenant à la fois les entrées et la sortie attendue, que le système utilise pour comparer et s'autocorriger. Dans l'apprentissage non supervisé, cependant, il n'y a pas de sortie existante à mesurer, de sorte que les résultats peuvent varier énormément.

Une application passionnante et effrayante de l'apprentissage automatique non supervisé?

Il s'agirait de robots jouant à des jeux de société, dans lesquels le programme apprendrait les règles du jeu et les conditions de gain, puis serait laissé à lui-même. Le programme joue alors des millions de parties contre lui-même, apprenant de ses erreurs et renforçant les décisions avantageuses.

Si vous êtes sur un ordinateur suffisamment puissant, une IA de jeu de classe mondiale peut être préparée en quelques heures !

Les images suivantes illustrent succinctement ces idées (source: moyen):

Resources for getting started in Machine Learning

Alors, maintenant que vous êtes tous passionnés par l'apprentissage automatique et comment il peut vous aider à conquérir le monde, par où commencer ?

Ci-dessous, j'ai répertorié quelques ressources fantastiques sur le Web qui peuvent vous aider à maîtriser l'apprentissage automatique sans obtenir de doctorat. en informatique ! Si vous n'êtes pas un chercheur en apprentissage automatique, vous trouverez le domaine de l'apprentissage automatique aussi pratique et agréable que la programmation en général.

Alors, ne vous inquiétez pas, peu importe votre niveau actuel, vous pouvez, comme un bon programme de Machine Learning, apprendre par vous-même et vous améliorer. 😛

# 1. Programmation

La première condition pour entrer dans le Machine Learning est d'apprendre à programmer. En effet, les systèmes d'apprentissage automatique se présentent sous la forme de bibliothèques pour divers langages de programmation.

Python est le plus recommandé, en partie parce qu'il est incroyablement agréable à apprendre et en partie parce qu'il possède un écosystème massif de bibliothèques et de ressources.

Le officiel Le Guide du débutant est un excellent point de départ, même si vous êtes un peu familier avec Python. Ou, prends ça Cours Bootcamp devenir un héros à partir de zéro.

# 2. Pensez aux statistiques

Une fois que vous avez terminé avec les bases de Python, ma deuxième recommandation serait de parcourir deux livres exceptionnels. Ils sont 100% gratuit et disponible en téléchargement au format PDF. Pensez aux statistiques  Pensez Bayes sont deux classiques modernes que tout futur ingénieur en apprentissage automatique devrait intérioriser.

# 3. Udemy

À ce stade, je vous recommande de suivre quelques cours de Udemy. Le format interactif à votre rythme vous aidera à entrer dans le vif du sujet et à renforcer votre confiance.

Assurez-vous de consulter l'aperçu du cours, les critiques (en particulier les moins bonnes !) et la sensation générale du cours avant de commencer.

Vous pouvez également trouver gratuitement des tutoriels incroyables sur YouTube. Indice d'envoi est l'une de ces chaînes que je peux recommander, où il y a toujours beaucoup de plaisir, mais son approche n'est pas adaptée aux débutants.

# 4. Andrew Ng

Cours enseigné par Andrew Ng sur Coursera est sans doute la ressource d'apprentissage la plus populaire pour les principes fondamentaux de l'apprentissage automatique.

Bien qu'il utilise le langage de programmation R, il reste inégalé dans son traitement du sujet et ses explications lucides. Grâce à ce cours, Andrew Ng a atteint une stature divine dans les cercles ML, et les gens l'admirent pour la sagesse ultime (je ne plaisante pas !).

Ce n'est pas un cours pour les débutants, mais si vous êtes déjà doué pour la gestion des données et que vous ne craignez pas de faire des recherches parallèles au fur et à mesure, ce cours est la meilleure recommandation.

# 5. Udacity

Devenez ingénieur en apprentissage automatique en passant ce nanodiplôme en Udacity.

Il faudra environ 3 mois pour terminer et à la fin du cours, vous devez avoir une bonne idée des algorithmes d'apprentissage automatique, de la façon de les modéliser et de les déployer en production.

Conclusion

Il n'y a pas de fin aux ressources sur Internet, et vous pouvez facilement vous perdre au début. La plupart tutoriels et les discussions là-bas sont mathématiquement difficiles ou manquent de structure et peuvent briser votre confiance avant même de commencer.

Donc, j'aimerais vous mettre en garde contre l'autodestruction : gardez votre objectif modeste et avancez par étapes minimales. L'apprentissage automatique n'est pas quelque chose avec lequel vous pouvez vous familiariser en un jour ou deux, mais très bientôt, vous commencerez à vous amuser, et qui sait, peut-être même créer quelque chose d'effrayant!

S'amuser! 🙂