¿Cómo ser bueno en la programación de Python si quiero aprender el aprendizaje automático? ¿Son estos problemas diferentes de la programación competitiva?

En lo que respecta a Python, un conocimiento decente del lenguaje, poder jugar con listas y diccionarios debería ser suficiente. Un curso simple en Python sería suficiente para esto.

Para comenzar con , el aprendizaje automático es diferente en comparación con la programación competitiva. A diferencia de allí, en Machine learning se trata de aprovechar los mejores resultados mediante el uso de herramientas ya accesibles para usted en forma de varias bibliotecas. Permítanme detallar eso, todos los algoritmos clave ya se han codificado y empaquetado en bibliotecas como scikit-learn, numpy, etc. Su trabajo es identificar los mejores algoritmos para usar junto con los mejores parámetros e implementarlos en sus datos. Aunque no puedo enfatizar lo suficiente, cuánto peso comprenderán los algoritmos en sus resultados.

Ahora, por supuesto, necesitaría tener muy buenos conocimientos sobre las bibliotecas relacionadas con el aprendizaje automático. Aquí hay un enlace que contiene una lista de bibliotecas importantes: las mejores bibliotecas de aprendizaje automático en Python

Suponiendo que conozca bien los conceptos fundamentales de programación, sugeriría la siguiente ruta:

  1. Conozca bien las estructuras de datos: lista, tupla, diccionario, conjunto
  2. Aprende a escribir el código “Pythonic”
  3. Aprenda Numpy, Pandas y un paquete de visualización de datos
  4. Aprender scikit aprender
  5. Aprende a escribir código vectorizado
  6. Tome un curso exploratorio de análisis de datos con Numpy, Pandas y un paquete de datos.

Y luego practique mucho en el área de especialización de Machine Learning que le interese.

Solo la práctica te hará perfecto. Debe comenzar con lo básico y avanzar para obtener temas más avanzados en Python que cubran la POO y las técnicas de programación funcional. Además de esto, las bibliotecas de ML comúnmente utilizadas en python podrían explotarse para el aprendizaje inicial. Por ejemplo, hay paquetes de python con problemas específicos disponibles para visión por computadora, PNL, etc. Creo que los problemas en la programación competitiva se correlacionan con los problemas que apunta ML.