El análisis y la programación de datos son las habilidades más importantes que puedes aprender en la universidad que te ayudarán a convertirte en un gran científico de datos. Si toma las clases a continuación y trabaja en proyectos de investigación que involucran conjuntos de datos complejos y proyectos de ingeniería, debe estar muy bien preparado para un trabajo de ciencia de datos.
Tomé todas las clases a continuación con la excepción de Bases de datos y Diseño e implementación de software (¡y lamento no haber tomado esas dos!). Utilizo directamente el conocimiento del resto de estas clases casi todos los días y los recomiendo a todos.
Estadística
- ¿Cuáles son las principales diferencias entre Python y R para la ciencia de datos?
- ¿Cómo es tomar CS 229 (Machine Learning) en Stanford?
- ¿Es necesario tener un conocimiento profundo de Java y SQL para aprender big data?
- ¿Cómo es el MTech en Data Science en SEAS, Universidad de Ahmedabad?
- ¿Cuál es su opinión sobre el Programa Insight Data Science Fellows?
- Análisis de regresión: manejo de conjuntos de datos reales, comunicación y visualización de esos datos.
- Aprendizaje automático: teoría detrás de varios modelos de aprendizaje automático utilizados en la práctica; implementar algunos algoritmos básicos; aplicar estos modelos a un problema real de aprendizaje automático. Aunque es posible que no tenga que implementar estos modelos, ya que están disponibles en varios paquetes de estadísticas, es importante comprender los modelos básicos, cómo y por qué funcionan, los contextos que funcionan mejor con un modelo que otro y las compensaciones de los diferentes modelos.
- Estadísticas – Base matemática de las estadísticas frecuentistas y bayesianas; también aprenderá R. básica. Es importante tener cierta comprensión teórica de las estadísticas, ya que la aplicará todos los días.
- Probabilidad: base matemática de la teoría de la probabilidad; pre-requisito para estadísticas.
Ciencias de la Computación
- Bases de datos: se ocupará de las bases de datos y las consultará todos los días como científico de datos, por lo que sería realmente útil comprender cómo funcionan las bases de datos, cómo diseñarlas y cómo escribir consultas SQL.
- Diseño e implementación de software: como científico de datos, es probable que no trabaje en un entorno de codificación R / IPython aislado todo el tiempo. Deberá escribir un código comprensible y reutilizable, y adaptarlo a lo que podrían ser sistemas complejos. Esta clase basada en proyectos le enseñará patrones de diseño, git, desarrollo de API y otros temas que lo ayudarán a convertirse en un mejor desarrollador.
- Estructuras de datos y algoritmos: es importante comprender las estructuras de datos básicas y cuándo usarlas. Esta clase es fundamental para comprender cualquier clase de CS intermedia / avanzada. También aprenderá sobre la complejidad básica, que es importante para escribir código eficiente.
- Diseño y análisis de algoritmos: aprenderá técnicas clásicas para resolver problemas difíciles: algoritmos gráficos, programación dinámica, división y conquista, programación lineal, algoritmos codiciosos. Estudiarás los problemas clásicos de NP-hard, que te ayudarán a identificar nuevos problemas que posiblemente sean intratables, y también algoritmos de aproximación que dan la respuesta correcta dentro de un cierto límite.
- (opcional) Economía computacional: problemas de optimización resueltos como programas enteros lineales / mixtos. También elección social y diseño de mecanismos. Útil para comprender problemas en el espacio publicitario.