Que dois-je étudier pour l'apprentissage automatique?

9

À partir de l'année dernière, j'ai étudié divers sujets afin de comprendre certaines des thèses les plus importantes de l'apprentissage automatique comme

S. Hochreiter et J. Schmidhuber. (1997). Mémoire à court terme à long terme . Neural Computation, 9 (8), 1735-1780.

Cependant, étant donné que je n'ai pas de formation en mathématiques, j'ai commencé à apprendre des sujets comme

  • Calcul
  • Calcul multivarié
  • Anaylsis mathématique
  • Algèbre linéaire
  • Équations différentielles
  • Anaylsis réel (théorie de la mesure)
  • Probabilité élémentaire et statistiques
  • Statistiques mathématiques

Pour le moment, je ne peux pas dire que j'ai fait des études rigoureuses sur ces sujets, mais je sais ce que les sujets ci-dessus veulent traiter. Le fait est que je ne sais pas ce que je dois faire à ce stade. L'apprentissage automatique utilise de nombreux sujets pour résoudre de nombreux problèmes et je ne sais pas comment les utiliser correctement.

Par exemple, l'apprentissage par renforcement est désormais l'un des sujets les plus populaires que des centaines de milliers de chercheurs effectuent actuellement leurs recherches pour faire une percée dans la malédiction de la dimensionnalité. Mais, en tant que futur employé qui va travailler dans des entreprises informatiques, la tâche sur le bureau ne serait pas quelque chose que je m'attendais à faire.

Est-il important d'avoir ma propre expertise pour travailler dans les domaines? Si oui, quels types de sujets dois-je étudier en ce moment?

Pour votre commodité, je veux en savoir plus sur le processus de Markov et le processus de décision de Markov.

Forces de vent
la source
1
Je dirais que si vous avez tout compris dans ce papier LSTM, vous avez plus ou moins déjà tous les "prérequis" pour poursuivre votre carrière en ML. Bien sûr, vous trouverez de nouveaux concepts (tout le monde le fait) sur votre chemin, mais vous pourrez y faire face (en faisant des recherches par vous-même). Les processus Markov et les MDP ne sont pas vraiment un gros problème, si vous avez compris le papier LSTM.
nbro

Réponses:

4

En tant qu'étudiant en master en intelligence artificielle, je vous conseille fortement d'étudier quelques notions de base en Machine Learning.

Pour ce faire, vous pouvez obtenir un bon livre ( Machine Learning , Tom Mitchell, McGraw Hill, 1997) pour la théorie et la pratique en essayant vous-même quelques compétitions Kaggle .

J'ai suggéré le livre de Mitchell parce qu'il est un expert dans le domaine, et beaucoup de cours de Machine Learning utilisent son livre. Vous pouvez également suivre ses vidéolectures en ligne

Sur Kaggle, vous pouvez trouver de nombreux tutoriels utiles (appelés Notebooks) pour commencer à travailler avec les jeux de données disponibles. Quelques tutoriels sur Titanic Challenge ici

Catalin Copil
la source
5

En fait, vous n'avez pas besoin d'une étude rigoureuse de ces sujets pour implémenter des algorithmes d'apprentissage automatique. Seule la théorie des probabilités doit être traitée rigoureusement dans le Machine Learning. Vous pouvez trouver une très bonne série de conférences sur la théorie des probabilités ici:

Introduction à la probabilité - La science de l'incertitude

En outre, un cours de base en calcul suffirait, pour les implémentations de base, vous n'avez pas réellement besoin de comprendre le calcul de haut niveau, sauf si vous voulez créer des schémas de mise à jour de poids ou des réseaux neuronaux sur mesure avec quelque chose de nouveau. Mais pour avoir une intuition sur le calcul, consultez Khan Academy: Calculus

Une idée de base de l'algèbre linéaire est suffisante, juste pour visualiser les choses et acquérir une intuition. L'académie Khan a un excellent cours à ce sujet, je vous suggère de le vérifier: Algèbre linéaire

Comme, pour les langages de programmation, l'apprentissage automatique ou les réseaux NEural sont les meilleurs à implémenter en Python ou R car la visualisation des données et leur programmation sont assez faciles.

La principale chose à propos de la mise en œuvre des réseaux neuronaux et de l'apprentissage automatique est la pratique, plus vous pratiquez, mieux vous obtenez. Vous aurez également une intuition de ce que vous faites avec la pratique. Seule la lecture de la théorie et la compréhension des concepts ne vous aideront pas. Vous devez le mettre en œuvre dans la vraie vie. En ce qui concerne le livre, vous pouvez voir ma réponse ici:

Sources approuvées de la théorie de l'IA / outils / applications pour un programmeur expérimenté nouveau dans le domaine?

DuttaA
la source
3

J'ai trouvé les modèles statistiques très utiles. Cependant, les statistiques à elles seules ne suffisent pas, vous avez également besoin d'une solide expérience en théorie des probabilités.

éruption solaire
la source
1

apprenez d'abord les bases de python. Commencez par le théorème de baye puis passez à 1) les fonctions de densité de probabilité 2) les fonctions de densité cumulative 3) les fonctions continues 4) le théorème de limite centrale.

syam
la source
En plus de cela, pensez-vous qu'il est important d'apprendre la théorie des probabilités au niveau supérieur afin de voir une thèse de niveau avancé de l'apprentissage automatique? Et aussi, supposez que je connais toutes les choses ci-dessus (je ne veux pas être impoli mais, pour être honnête, je sais quelle est la différence entre continuité et continuité uniforme, pdf, cdf, mgf et etc.), pensez-vous Vous pensez qu'il est important d'apprendre le processus Markov pour créer un programme de niveau de production?
Windforces
1

Tout d'abord, un bref aperçu de moi. J'étais un étudiant pré-médical qui a obtenu un diplôme de premier cycle avec un diplôme en biophysique. Après un travail acharné et une prise de décision intelligente, je suis maintenant ingénieur logiciel AI / ML avec une maîtrise en informatique (spécialité en Machine Learning).

Est-il important d'avoir ma propre expertise pour travailler dans les domaines?

Oui, absolument, mais pas nécessairement dans un contexte professionnel. Vous n'avez pas besoin d'avoir été employé en tant qu'ingénieur logiciel d'apprentissage automatique, mais vous devez démontrer votre compétence dans le domaine. Ce qui est une excellente suite à la deuxième partie de votre question ...

Si oui, quels types de sujets dois-je étudier en ce moment?

Ce n'est pas un sujet auquel vous devriez vous concentrer. L'apprentissage automatique est une combinaison de nombreux domaines différents, et il ne serait pas très efficace de se concentrer sur un seul avant de plonger dans une pratique plus approfondie. Au lieu de cela, les tutoriels et la pratique sont le nom du jeu.

  • 3Blue1Brown sur Youtube donne d'excellents tutoriels, en particulier sur les réseaux neuronaux
  • Académie Khan est une aubaine en matière de didacticiels de mathématiques. L'algèbre linéaire et les probabilités / statistiques sont les meilleurs pour commencer, je dirais. Mais le calcul multivariable et les équations différentielles sont finalement également utilisés.
  • Udacity est un excellent site de tutoriel qui propose même des programmes "nanodegree" pour vous donner plus d'expérience pratique en intelligence artificielle et en apprentissage automatique. C'est gratuit si vous voulez juste voir les vidéos.
  • OpenAIGym est un excellent endroit pour pratiquer l'apprentissage par renforcement
  • Kaggle propose d'excellents didacticiels sur l'apprentissage automatique et leurs concours offrent une excellente pratique de l'apprentissage supervisé / non supervisé.

Complétez votre développement théorique et mathématique avec un développement et une pratique pratiques pour obtenir les meilleurs résultats. Vous mentionnez un accent particulier sur les MDP, avec lesquels les tutoriels Udacity et OpenAIGym donneraient tous deux une grande pratique.

Si vous êtes intéressé par une maîtrise, je ne peux pas recommander assez le Master en ligne de Georgia Tech en informatique ( OMSCS ). C'est une excellente éducation et (lorsque j'étais inscrit en 2015) ne nécessitait pas de GRE et ne coûtait qu'environ 8000 $.

SeeDerekEngineer
la source
-1

Apprenez l'apprentissage automatique en 3 mois

Ceci est le curriculum pour "Apprendre l'apprentissage automatique en 3 mois" cette vidéo de Siraj Raval sur Youtube

Mois 1

Semaine 1 Algèbre linéaire

https://www.youtube.com/watch?v=kjBOesZCoqc&index=1&list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/

Calcul de la semaine 2

https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr

Probabilité semaine 3

https://www.edx.org/course/introduction-probability-science-mitx-6-041x-2

Algorithmes de la semaine 4

https://www.edx.org/course/algorithm-design-analysis-pennx-sd3x

Mois 2

Semaine 1

Apprenez python pour la science des données

https://www.youtube.com/watch?v=T5pRlIbr6gg&list=PL2-dafEMk2A6QKz1mrk1uIGfHkC1zZ6UU

Mathématiques de l'intelligence

https://www.youtube.com/watch?v=xRJCOz3AfYY&list=PL2-dafEMk2A7mu0bSksCGMJEmeddU_H4D

Introduction à Tensorflow

https://www.youtube.com/watch?v=2FmcHiLCwTU&list=PL2-dafEMk2A7EEME489DsI468AB0wQsMV

Semaine 2

Introduction à ML (Udacity) https://eu.udacity.com/course/intro-to-machine-learning--ud120

Semaine 3-4

ML Project Ideas https://github.com/NirantK/awesome-project-ideas

Mois 3 (Deep Learning)

Semaine 1

Introduction au Deep Learning https://www.youtube.com/watch?v=vOppzHpvTiQ&list=PL2-dafEMk2A7YdKv4XfKpfbTH5z6rEEj3

Semaine 2

Deep Learning par Fast.AI http://course.fast.ai/

Semaine 3-4

Réimplémenter les projets DL à partir de mon github https://github.com/llSourcell?tab=repositories


Ressources supplémentaires:
- Les gens en ML à suivre sur Twitter

Maheshwar Ligade
la source
1
Oui, je peux vous dire pourquoi j'ai rétrogradé cette réponse. 1) Je ne pense pas que vous puissiez bien apprendre le machine learning en 3 mois, en étudiant également les prérequis. 2) Chacun a son propre rythme d'apprentissage, donc limiter l'apprentissage à 3 mois n'est pas une bonne idée. 3) Vous liez des gens à d'autres sources sans expliquer pourquoi.
nbro
Nous ne pouvons pas être un PRO mais au moins Nuance pour en faire et diriger une compétition ML. Si je mets un lien, j'ai mentionné ce que vous obtiendrez de ce lien. De plus, chacun a son propre rythme d'apprentissage. Je suis également d'accord sur ce point, mais vous pouvez vous salir les mains au cours de ces trois mois. C'est une réponse très générique étant donné que personne ne sait rien, mais ils veulent juste commencer et gagner en confiance après qu'ils peuvent commencer à creuser plus profondément.
Maheshwar Ligade
@nbro Si j'accepte votre point, tout le monde a son propre rythme d'apprentissage, alors au moins peu de gens peuvent profiter de cette réponse
Maheshwar Ligade
Cette réponse est plus applicable aux ingénieurs pas aux chercheurs et scientifiques
Maheshwar Ligade