¿Cuáles son las diferencias, si las hay, entre un "científico de datos" y un "ingeniero de aprendizaje automático"?
Durante el año pasado, el "ingeniero de aprendizaje automático" comenzó a aparecer mucho en las ofertas de trabajo. Esto es particularmente notable en San Francisco, que es posiblemente el origen del término "científico de datos". En un momento dado, el "científico de datos" superó al "estadístico", y me pregunto si lo mismo está comenzando a sucederle lentamente al "científico de datos".
El asesoramiento profesional aparece como fuera de tema en este sitio, pero considero que mi pregunta es muy relevante ya que estoy preguntando sobre las definiciones; No estoy preguntando acerca de las recomendaciones dada mi propia trayectoria profesional o circunstancias personales como otras preguntas fuera del tema.
Esta pregunta es sobre el tema porque algún día podría tener implicaciones significativas para muchos usuarios de este sitio. De hecho, este sitio de intercambio de pila podría no existir si la evolución "estadístico" versus "científico de datos" no hubiera ocurrido. En ese sentido, esta es una pregunta bastante pertinente, potencialmente existencial.
fuente
Data scientist
Suena como una designación con poca claridad sobre cuál será el trabajo real, mientras quemachine learning engineer
es más específico. En el primer caso, su empresa le dará un objetivo y usted necesita averiguar qué enfoque (aprendizaje automático, procesamiento de imágenes, red neuronal, lógica difusa, etc.) utilizaría. En el segundo caso, su compañía ya se ha reducido a qué enfoque debe usarse.Respuestas:
Buena pregunta. En realidad, hay mucha confusión sobre este tema, principalmente porque ambos son trabajos bastante nuevos. Pero si nos centramos en la semántica, el verdadero significado de los trabajos se vuelve claro.
De antemano es mejor comparar manzanas con manzanas, hablando de un solo tema, los datos. El aprendizaje automático y su subgénero (aprendizaje profundo, etc.) son solo un aspecto del mundo de datos, junto con las teorías estadísticas, la adquisición de datos (DAQ), el procesamiento (que puede ser impulsado por el aprendizaje no automático), el interpretación de los resultados, etc.
Entonces, para mi explicación, ampliaré el rol de Ingeniero de Aprendizaje Automático al de Ingeniero de Datos.
La ciencia se trata de experimentos, ensayos y fracasos, construcción de teorías, comprensión fenomenológica. La ingeniería se trata de trabajar en lo que la ciencia ya sabe, perfeccionarlo y llevarlo al "mundo real".
Piensa en un proxy: ¿cuál es la diferencia entre un científico nuclear y un ingeniero nuclear?
El científico nuclear es el que conoce la ciencia detrás del átomo, la interacción entre ellos, el que escribió la receta que permite obtener energía de los átomos.
El ingeniero nuclear es el tipo encargado de tomar la receta del científico y llevarla al mundo real. Por lo tanto, su conocimiento sobre la física atómica es bastante limitado, pero también sabe sobre materiales, edificios, economía y cualquier otra cosa útil para construir una planta nuclear adecuada.
Volviendo al mundo de los datos, aquí hay otro ejemplo: los chicos que desarrollaron las redes neuronales convolucionales (Yann LeCun) son científicos de datos, el tipo que implementa el modelo para reconocer caras en imágenes es un ingeniero de aprendizaje automático. El responsable de todo el proceso, desde la adquisición de datos hasta el registro de la imagen .JPG, es un ingeniero de datos.
Entonces, básicamente, el 90% de los Data Scientist de hoy son en realidad Ingenieros de Datos o Ingenieros de Aprendizaje Automático, y el 90% de las posiciones abiertas como Data Scientist realmente necesitan Ingenieros. Una verificación fácil: en la entrevista, se le preguntará sobre cuántos modelos de ML desplegó en producción, no sobre cuántos documentos sobre los nuevos métodos que publicó.
En cambio, cuando vea anuncios sobre "Ingeniero de Aprendizaje Automático", eso significa que los reclutadores son conscientes de la diferencia, y realmente necesitan a alguien capaz de poner algún modelo en producción.
fuente
Data Engineer
orientación profesional?Los términos son nebulosos porque son nuevos.
Al estar en medio de una búsqueda de empleo en el campo de la 'ciencia de datos', creo que hay dos cosas que suceden aquí. Primero, los trabajos son nuevos y no hay definiciones establecidas de varios términos, por lo que no se acuerda comúnmente la coincidencia de los términos con las descripciones de los trabajos. Compare esto con 'desarrollador web' o 'desarrollador de back-end'. Estos son dos trabajos similares que han sido razonablemente bien acordados y descripciones distintas.
En segundo lugar, muchas personas que realizan el trabajo y las entrevistas iniciales no saben muy bien para qué están contratando. Esto es particularmente cierto en el caso de las pequeñas y medianas empresas que contratan reclutadores para encontrar candidatos para ellos. Son estos intermediarios los que publican las descripciones de trabajo en CareerBuilder o en cualquier foro. Esto no quiere decir que muchos de ellos no saben lo que hacen, muchos de ellos conocen bastante bien las empresas que representan y los requisitos del lugar de trabajo. Pero, sin términos bien definidos para describir diferentes trabajos específicos, los títulos de trabajo nebulosos son a menudo el resultado.
Hay tres divisiones generales del campo.
En mi experiencia, hay tres divisiones generales del "espacio de trabajo" de la ciencia de datos.
El primero es el desarrollo de las técnicas matemáticas y computacionales que hacen posible la ciencia de datos. Esto cubre cosas como la investigación estadística de nuevos métodos de aprendizaje automático, la implementación de estos métodos y la construcción de infraestructura computacional para emplear estos métodos en el mundo real. Esta es la división más alejada del cliente y la división más pequeña. Gran parte de este trabajo lo realizan académicos o investigadores de las grandes empresas (Google, Facebook, etc.). Esto es para cosas como el desarrollo de TensorFlow de Google, las redes neuronales SPSS de IBM o lo que sea la próxima gran base de datos de gráficos.
La segunda división está utilizando las herramientas subyacentes para crear paquetes específicos de la aplicación para realizar cualquier análisis de datos que deba hacerse. Las personas son contratadas para usar Python o R o lo que sea para crear capacidad de análisis en algún conjunto de datos. Gran parte de este trabajo, en mi experiencia, implica hacer la "limpieza de datos", convirtiendo los datos sin formato en cualquier forma en algo utilizable. Otra gran parte de este trabajo es la base de datos; averiguar cómo almacenar los datos de manera que se pueda acceder a ellos en cualquier línea de tiempo en la que los necesite. Este trabajo no consiste tanto en tomar herramientas, sino en usar bases de datos, estadísticas y bibliotecas de análisis gráfico existentes para producir algunos resultados.
La tercera división está produciendo análisis a partir de los datos recientemente organizados y accesibles. Este es el lado más orientado al cliente, dependiendo de su organización. Debe generar un análisis que los líderes empresariales puedan utilizar para tomar decisiones. Esta sería la menos técnica de las tres divisiones; Muchos trabajos son híbridos entre la segunda y la tercera división en este momento, ya que la ciencia de datos está en su infancia. Pero en el futuro, sospecho firmemente que habrá una división más limpia entre estos dos trabajos, con la gente que gane el segundo trabajo que necesita una educación técnica, informática o estadística, y este tercer trabajo solo necesita una educación general.
En general, los tres podrían describirse a sí mismos como "científicos de datos", pero solo los dos primeros podrían describirse razonablemente como "ingenieros de aprendizaje automático".
Conclusión
Por el momento, tendrá que descubrir qué implica cada trabajo. Mi trabajo actual me contrató como 'analista' para hacer algunas cosas de aprendizaje automático. Pero cuando nos pusimos a trabajar, se hizo evidente que la base de datos de la empresa era inadecuada, y ahora probablemente el 90% de mi tiempo lo paso trabajando en las bases de datos. Mi exposición de aprendizaje automático ahora solo está ejecutando rápidamente todo lo que sea el paquete scikit-learn que parezca más apropiado, y filmando archivos csv a los analistas de la tercera división para hacer presentaciones de powerpoint para el cliente.
El campo está en flujo. Muchas organizaciones están tratando de agregar la toma de decisiones de ciencia de datos a sus procesos, pero sin saber claramente lo que eso significa. No es su culpa, es bastante difícil predecir el futuro, y las ramificaciones de una nueva tecnología nunca son muy claras. Hasta que el campo esté más establecido, muchos trabajos serán tan nebulosos como los términos utilizados para describirlos.
fuente
[Completamente una opinión personal]
Cuando el término 'Científico de datos' superó a 'Estadístico', se trata más de sonar genial, en lugar de cualquier diferencia importante. Del mismo modo, el término 'Aprendizaje profundo'. Son solo redes neuronales (que es otro algoritmo de Machine Learning) con un par de capas más. Nadie puede explicar cuándo una red neuronal particular puede llamarse DL, en lugar de ML, porque la definición en sí es confusa. Entonces, es el término 'Data Scientist'.
Sin embargo, a medida que las empresas adoptan la mentalidad de DevOps para la ciencia de datos, el término ML Engineer evolucionó.
¿Cuál es la mentalidad de DevOps para la ciencia de datos?
Aquí es donde construye el modelo, lo implementa y también espera mantenerlo en producción. Esto ayuda a evitar mucha fricción en los equipos de software.
[PD: DevOps es una forma de hacer software, más como una filosofía. Entonces, usarlo como designación, nuevamente me confunde].
Por lo tanto, se supone que los ingenieros de ML deben conocer los matices de la ingeniería de sistemas, ML y las estadísticas (obviamente).
Una generalización vaga sería Data Engineer + Data Scientist = ML Engineer.
Dicho esto, las designaciones en este espacio se están volviendo vagas día a día, y el término 'Estadístico' se está volviendo cada vez más relevante (¡la ironía!).
fuente
Puede variar de una compañía a otra, pero Data Scientist como designación ha existido desde hace algún tiempo y generalmente está destinado a extraer conocimiento e ideas de los datos .
He visto a científicos de datos haciendo
La ciencia de datos , sin embargo, es un super-dominio de aprendizaje automático
El ingeniero de aprendizaje automático parece ser una designación en la que su empleador ya se ha reducido a
extraer conocimiento o ideas de los datos mediante el aprendizaje automático y su trabajo consistirá en diseñar e implementar algoritmos de aprendizaje automático para ofrecer lo mismo .
fuente
Los ingenieros de aprendizaje automático y el científico de datos enfocado en ingeniería son iguales, pero no todos los científicos de datos están enfocados en ingeniería. Hace aproximadamente 5 años, casi todos los Data Scientist estaban enfocados en la ingeniería, por ejemplo, tenían que escribir código de producción. Ahora, sin embargo, hay muchos roles de Data Scientist que son en su mayor parte: jugar en el cuaderno Jupyter, comprender los datos, hacer gráficos bonitos, explicar a los clientes, gerentes, analistas ... No hacen ninguna ingeniería. Y creo que el término Ingenieros de Aprendizaje Automático llegó a subrayar que se trata de una posición de ingeniería.
fuente
TL; DR: Depende de quién pregunta.
La respuesta a esta pregunta depende en gran medida de las expectativas, el conocimiento y la experiencia de quien pregunta. Una pregunta análoga con una respuesta tan confusa es:
Para algunas personas, particularmente las personas que estudian o enseñan ciencias de la computación e ingeniería de software, existe una gran diferencia definida entre estos campos. Pero para el trabajador de recursos humanos, el reclutador técnico o el gerente promedio, estos son solo "personas informáticas".
Me encanta esta cita de Vincent Granville , énfasis mío:
fuente
Machine Learning es más específico y en el campo deberá dominar lo siguiente:
fuente
No estoy en desacuerdo con ninguna de las respuestas dadas. Sin embargo, creo que hay un papel de Data Scientist que se pasa por alto en casi todas las respuestas aquí. La mayoría de estas respuestas dicen algo en el sentido de "Bueno, un ingeniero simplemente escribe y despliega el modelo ...". Espera un segundo: ¡hay MUCHO trabajo en esos dos pasos!
Mi definición principal de un científico de datos es alguien que aplica el método científico para trabajar con datos. Así que estoy constantemente pensando en las hipótesis, diseñando pruebas, recolectando mis datos y ejecutando esas pruebas, verificando mis resultados de validación cruzada, probando nuevos enfoques, transformando mis datos, etc. Eso es esencialmente lo que entra "solo escribe e implementa el modelo "en un entorno profesional.
Entonces, para su respuesta, creo que "el diablo está en los detalles" porque no puede pasar por alto algunos de estos pasos / términos. Además, si está buscando trabajo, debe tener cuidado porque el "ingeniero de datos" y el "científico de datos" pueden tener escalas salariales lamentablemente diferentes: ¡no desea ser un científico de datos con un salario de ingeniero de datos!
Siempre me destaqué como científico de datos, les digo a las empresas que trabajo en modelos predictivos (no solo analíticos) y que no soy un jinete de Excel: escribo en lenguajes de programación (R, Python, etc.). Si puede encontrar una posición que le permita hacer ambas cosas, entonces está en camino de convertirse en un científico de datos.
fuente