Cómo llegar al nivel de investigación de aprendizaje automático en Google

Okay. En primer lugar, aprenda Python en lugar de C y Java. Si logró aprender C y Java, eso debería ser muy simple, ya que Python es un lenguaje de scripting muy fácil de usar y tiene muchas bibliotecas que pueden evitar rehacer algunos de los conceptos básicos, por ejemplo, numpy, scipy, sci-kit y flujo tensorial. Armado con Python, podrá experimentar rápidamente con diferentes algoritmos de aprendizaje automático sin la molestia de escribir código complicado usando C y Java. Eventualmente, es posible que desee transcribir su código a Java, pero eso vendrá más tarde, después de que haya aprendido su camino en ML. Por ahora, el enfoque debería ser “ponerse en marcha” y Python es excelente para eso.

Segundo, y esto es lo importante: debes ser paciente y diligente en el siguiente sentido. NO salte directamente al trabajo en reconocimiento de imagen / voz o tal. Si lo hace, todo lo que aprenderá son recetas de libros de cocina que se volverán obsoletas en un par de años. Comience aprendiendo la teoría y los algoritmos subyacentes en profundidad. Por ejemplo, aprenda qué es una descomposición de valores singulares y cómo se relaciona con las máquinas de vectores de soporte, el análisis semántico latente y los problemas generales de clasificación linealmente separables. Luego, asegúrese de comprender el contenido (no la prueba, en el nivel de matemáticas de la escuela secundaria no está preparado para ello) del teorema de aproximación universal y cómo se relaciona con las redes neuronales. A partir de ahí, intente comprender los métodos del núcleo. Una vez que hayas hecho todo esto, ¡el aprendizaje profundo se convertirá en una cuestión de solo agregar capas de neuronas!

Ahora, entiendo que la lista que acabo de hacer parece desalentadora, pero en realidad no lo es: muchas palabras grandes para cosas bastante simples. Sin embargo, es necesario adquirir un dominio razonable de ciertos conceptos matemáticos en álgebra lineal, optimización y aprendizaje estadístico. Estos creo que serán el principal obstáculo. Si obtiene estos, el resto fluirá sin problemas.

En primer lugar, creo que todas estas cosas están cerca de la ciencia, no solo de la programación. Pero estuve en ese tipo de lugar una vez, no estoy muy avanzado, incluso ahora.

Así que tengo la siguiente lista de lo que habría hecho si volviera a comenzar,

  1. Tener habilidades básicas como python, matlab, matemáticas y computación.
  2. Lea todo sobre conceptos básicos: clasificación, regresión, predicción, procesamiento del lenguaje natural (desde el procesamiento hasta la representación morfológica)
  3. Lea sobre los famosos algoritmos existentes: Naive Bayes, regresión lineal, red neuronal, aprendizaje profundo (para PNL: diferentes técnicas de preprocesamiento, modelos: modelo de Markov, modelo de ngram …)
  4. Implemente ligeramente todos los algoritmos con fines educativos (depende de su interés), pero realmente ayuda a comprender cualquier biblioteca, cómo tomar la decisión correcta, calibrar con los parámetros correctos y extraer características. (No te molestes si no sabes estas cosas. Lo aprenderás cuando leas los algoritmos enumerados)
  5. Pruebe las bibliotecas famosas. Recomiendo Python para este propósito, hay algunas bibliotecas muy interesantes como – (flujo de tensor, sklearn, numpy, pandas y nltk (para PNL), también CoreNLP (de Stanford es mejor una vez que tenga toda la idea de PNL)
  6. Luego, disfruta resolviendo algunos problemas bastante básicos, no con fines comerciales (no te ayuda a pensar bien)

Simplemente diríjase al sitio de Ravindra Babu ravula y obtendrá su respuesta

http://ravindrababuravula.com/