Soy programador, ¿cómo entro en el campo de la ciencia de datos?

13

En primer lugar, este término suena muy oscuro.

De todos modos ... Soy un programador de software. Uno de los idiomas que puedo codificar es Python. Hablando de datos, puedo usar SQL y puedo hacer Data Scraping. Lo que descubrí hasta ahora después de leer tantos artículos en los que Data Science es bueno es:

1- estadísticas

2- álgebra

3- Análisis de datos

4- Visualización.

5- Aprendizaje automático.

Lo que sé hasta ahora:

1- Programación Python 2- Desguace de datos en Python

¿Pueden los expertos guiarme o sugerir una hoja de ruta para repasar la teoría y la práctica? Me he dado alrededor de 8 meses de tiempo a mí mismo.

Volatil3
fuente
Por favor sea específico sobre lo que quiere "meterse". No solo el campo, sino también a qué nivel. Por ejemplo: "minero de texto médico profesional" o "examinador aficionado del universo astrofísico"
Pete
Estoy dispuesto a convertirme en algo que pueda funcionar como consultor o empleado que pueda ser contactado para que las compañías busquen sus datos y obtengan información sobre ellos.
Volatil3
(1) Curso de Andrew Ng sobre Machine Learning; (2) curso de Yaser Abu-Mostafa sobre el aprendizaje de los datos; Ambos son accesibles (el tiempo no está incluido) y le proporcionarán un buen nivel de comprensión.
Vladislavs Dovgalecs
El término ciencia de datos es muy amplio. Tal vez podría pensar en qué tipo de trabajos le gustaría y en qué compañía desea trabajar, ver sus requisitos y responsabilidades. Entonces sabría si el trabajo cumple con sus expectativas y la brecha de su capacidad. Aquí hay un requisito para el científico de datos en GOOGLE. ! [Requisitos del científico de datos de Google ] ( i.stack.imgur.com/5KSN6.png )
Octoparse

Respuestas:

18

Concéntrese menos en adquirir habilidades y más en adquirir experiencia. Intenta resolver algunos problemas y publica tu trabajo en github. Aprenderá más en el proceso y podrá demostrar conocimiento y experiencia a los empleadores, lo cual es mucho más valioso que tener una comprensión supuestamente profunda de un tema o teoría.

Data Science es un campo bastante cargado en estos días, por lo que no estoy seguro de qué tipo de trabajo desea realizar específicamente, pero suponiendo que el aprendizaje automático sea un componente de él, entonces kaggle.com es un buen lugar para comenzar. En términos de objetivos, si puede trabajar con los datos en pandas / numpy / scipy, cree modelos en sci-kit learn y haga algunos gráficos bonitos en seaborn, ggplot o incluso matplotlib, entonces no tendrá problemas para obtener un trabajo desde una perspectiva de habilidades, especialmente si tiene ejemplos de código y ejemplos para demostrar sus habilidades. Si te quedas atascado, stackexchange tendrá la respuesta o puedes publicar una pregunta y tendrás una respuesta en breve. Una vez que esté haciendo el trabajo para ganarse la vida, aprenderá aún más, probablemente de un miembro del equipo que lo asesore.

La mejor de las suertes.

David
fuente
7

Me gusta el curso de Berkeley sobre ciencia de datos, dará una buena base y gusto por la ciencia de datos, después de pasar a udacity y coursera y muchos más recursos. Entonces, si tiene habilidades de programación, necesitará matemáticas, estadísticas y mucha visualización. También será genial acostumbrarse a IPython porque es esencial ver cada paso (visualizar) cómo funciona en lugar de escribir un script completo y probar después (anaconda es fácil de instalar y trabajar). El curso se enumera a continuación: bcourses.berkeley.edu/courses/1267848/wiki también la estadística que encuentro es un buen curso gratuito de SAS: Estadísticas 1: Introducción a ANOVA, Regresión y Regresión logística support.sas.com/edu/schedules.html ? ctry = us & id = 1979

Comenzando con ML recomendará: www.kaggle.com/c/titanic/details/getting-started-with-python

en el lado izquierdo también es para Excel usando tablas dinámicas y R. DataCamp ha lanzado el tutorial sobre cómo usar R. Una vez que complete estos pasos, habrá más competencias en kaggle (recientemente lanzada una para la Clasificación de Crímenes de San Francisco) y finalmente increíbles tutoriales en video de www.dataschool.io

Espero eso ayude ...

n1tk
fuente
Gracias por tu respuesta. ¿Como aprendiste?
Volatil3
1
Libros, tutoriales en línea y muchos códigos prácticos relacionados con el juego con datos. Prueba el kaggle.com y prueba a través de competiciones. Es genial para comenzar a aprender ML.
n1tk
y, en última instancia, intente encontrar una comunidad de científicos de datos y participe en los proyectos, obtendrá tanta experiencia compartida en los proyectos que lo que ningún libro puede enseñar.
n1tk
Pero no soy bueno en teoría como estadísticas, matemáticas, etc. Los
estudié
En mi caso particular, consideré regresar a la escuela y pasar al programa de doctorado en análisis y ciencia de datos ... que requiere cálculo 1,2, álgebra lineal, álgebra lineal numérica, SAS, R, matemáticas para grandes datos, teoría de gráficos y mucho más ...
n1tk
4

No está de acuerdo con David, un verdadero científico de datos es un estadístico aplicado que codifica y sabe cómo usar algoritmos de aprendizaje automático por las razones correctas. La estadística es la base de toda la ciencia de datos. Es el "pastel" per se. Todo lo demás es solo hielo.

La pregunta es qué tipo de científico de datos quieres ser. ¿Quieres ser un maestro en el tema (conocimiento de cómo, por qué, cuándo y cuándo no aplicar un algoritmo o técnica) o un Kaggle Script Kiddie usando Scipy y pensando que él es un científico de datos?

1 - Estadísticas

2- todo lo demás

Modelo oculto de Markov
fuente
2
No estoy seguro de entender lo que estás diciendo. Nunca dije que conocer las "estadísticas aplicadas" no es importante: simplemente hice la distinción de que adquirir experiencia aplicando métodos es más importante que obtener conocimiento teórico sobre los métodos en sí.
David
1
David, ese fue exactamente mi punto de desacuerdo. Sin tener un conocimiento teórico de los métodos en sí mismos, simplemente somos guiones infantiles. La experiencia es importante, pero es un subproducto del conocimiento teórico, no al revés.
Modelo oculto de Markov
2
No lo es. Existe una gran diferencia entre la experiencia aplicada y el conocimiento teórico, con frecuencia es la diferencia entre lo que se gana en la industria y en el aula. Por ejemplo, es más valioso saber cómo verificar efectivamente que un modelo no se ha sobreajustado usando un método aplicado como la validación cruzada que conocer los fundamentos teóricos de la regularización. Además, deje de mencionar "script kidies": nadie aboga por el uso de la nueva y horrible funcionalidad de un clic para enviar de kaggle.
David
1
Si lo que está diciendo es cierto, ¿por qué las compañías prefieren los doctorados y las personas con maestrías en lugar de las personas que simplemente tienen licenciaturas? Es porque tienen conocimiento teórico de las técnicas que impulsan los algoritmos. Son los constructores de motores per se. El conocimiento teórico es un conocimiento más profundo. Kaggle es un tanque de retención para niños de guiones.
Modelo oculto de Markov
1
Si bien puedo ver los puntos que ambos están tratando de hacer, creo que tal vez esté fuera de contexto. La pregunta original era '¿cómo puede un programador hacer la transición a un trabajo en ciencia de datos?' Si la respuesta es "deje todo, pase algunos años obteniendo un PH.D en estadísticas, luego haga algunos proyectos por su cuenta y luego comience a aplicar", ese es un obstáculo bastante oneroso y también puede decirles que no se molesten en una práctica sentido. Por el contrario, dada la cantidad de estadísticas PHD (o incluso maestrías) y la cantidad de personas que buscan, los empleadores pueden considerar personas que pueden demostrar experiencia sin un título.
chrisfs
4

Si quieres ser un hombre práctico con verdadero conocimiento, comienza con las matemáticas (cálculo, probabilidad + estadística, álgebra lelinear). En cada paso, intente implementar todo con la programación, python es bueno para esto. Cuando consigas un buen terreno, juega con datos reales y resuelve problemas

Cursos Álgebra lineal - edx Laff o codificación de la matriz Stat - edx stat 2x Barkley Calculus - lee ... es simple

Amanuel Negash
fuente
2

David tiene un buen punto, te sugiero que te concentres en lo que sea que impulse más tu interés. Es la única forma de tener éxito en todo tipo de esfuerzo. Si quieres construir algo genial, comienza con él. Si quieres leer un libro, eso también es bueno. El punto de partida no importa. Unos días antes tendrá una mejor comprensión de lo que quiere y debe hacer a continuación.

Piriko
fuente
1

La ciencia de datos es tan amplia que hay muchos caminos diferentes para ingresar. Por lo general, se divide en 4 o 5 tipos diferentes, por ejemplo:

ingrese la descripción de la imagen aquí

Puede ver en las otras publicaciones de este tema a personas que provienen de un fondo de Estadísticas aplicadas (aplicando el algoritmo correcto), Fondo de programación (participando en Kaggle) y otros que lo aplican a un fondo de negocios

Las compañías inteligentes podrían referirse a una persona sesgada de programación como un "Ingeniero de Datos". Las grandes compañías también usan cada tipo para su equipo de ciencia de datos, por lo que demostrar buenas habilidades en forma de T sería algo bueno.

user46958
fuente
0

Si usted es un programador, puede comenzar con un clasificador de árbol de decisión, centrarse en comprender las matemáticas detrás de la entropía y la ganancia de información. Es esencial comprender que ML se trata solo de la compresión de datos.

Estoy muy en desacuerdo con algunas de las otras respuestas sobre el valor de los cursos prácticos. Lo más valioso para ML es la matemática: teoría de números, álgebra lineal y teoría de probabilidad.

Si no te enfocas en las matemáticas, lo único que aprenderás es cómo usar alguna biblioteca para hacer magia, eso no es aprendizaje automático ni ciencia en absoluto.

Eugen
fuente