¿Habilidades difíciles de encontrar en los aprendices de máquina?

71

Parece que la minería de datos y el aprendizaje automático se hicieron tan populares que ahora casi todos los estudiantes de CS saben sobre clasificadores, agrupamiento, PNL estadístico ... etc. Así que parece que encontrar mineros de datos no es algo difícil en la actualidad.

Mi pregunta es: ¿Cuáles son las habilidades que un minero de datos podría aprender que lo harían diferente a los demás? Para convertirlo en una persona no tan fácil de encontrar a alguien como él.

Jack Twain
fuente
66
Si bien es una respuesta a una pregunta diferente, varios de los puntos en una vieja respuesta mía se pueden transferir aquí. Assad hace algunos comentarios similares en su muy buena respuesta a continuación.
cardenal

Respuestas:

62

He visto varias veces que los desarrolladores usan técnicas de ML. Este es el patrón habitual:

  1. descargar biblioteca con nombre elegante;
  2. pasar 10 minutos leyendo cómo usarlo (omitiendo estadísticas, matemáticas, etc.);
  3. alimentarlo con datos (sin preprocesamiento);
  4. mida el rendimiento (por ejemplo, la precisión, incluso si las clases están totalmente desequilibradas) y cuénteles a todos lo increíble que es con su 99% de precisión;
  5. desplegar en producción con resultados de fallas épicas;
  6. encuentre a alguien que entienda lo que está sucediendo para ayudarlo porque el manual de instrucciones no tiene ningún sentido.

La respuesta simple es que (la mayoría) los ingenieros de software son muy débiles en estadísticas y matemáticas. Esta es la ventaja de cualquiera que quiera competir con ellos. Por supuesto, las estadísticas de las personas están fuera de su zona de confort si necesitan escribir un código de producción. El tipo de papel que se vuelve realmente raro es el de Data Scientist. Es alguien que puede escribir código para acceder y jugar con la enorme cantidad de datos y encontrar el valor en ellos.

iliasfl
fuente
14
LOL en "dile a todos lo maravilloso que es con su 99% de precisión"
Jack Twain
2
+1 Estoy de acuerdo con todo. "[...] Data Scientist. Es alguien que puede escribir código para acceder y jugar con la enorme cantidad de datos y encontrar valor en ellos". Lo que para mí sugiere que debería ser naturalmente raro, ya que a la mayoría de los mortales les parece inviable abordar los complejos problemas estadísticos y fundamentales, así como convertir algo en un código de producción. También explica por qué tenemos cirujanos cardiovasculares, anestesiólogos, neurólogos, enfermeras, administradores de hospitales, etc. O ingenieros civiles, aeronáuticos, mineros, químicos, mecánicos, etc.
Thomas Speidel
2
Para mí, esto no es realmente una descripción de lo que alguien necesita para ser un candidato destacado de ML: más bien una fiesta de ML. Parece que está describiendo a alguien que está demasiado concentrado en obtener "la respuesta" antes de que esté seguro de cuál es la pregunta. Básicamente, su persona "típica de LD" es alguien que tiene habilidades de planificación deficientes y alguien que no discute lo que piensa hacer con el "cliente" antes de seguir adelante y volver con "la respuesta". Esto no es algo que se ayude al tener buenas matemáticas / estadísticas, es algo que requiere buenas habilidades de comunicación.
probabilidadislogica
61

De qué se trata

Solo conocer las técnicas es similar a conocer a los animales en un zoológico: puede nombrarlos, describir sus propiedades, tal vez identificarlos en la naturaleza.

Entender cuándo usarlos, formular, construir, probar y desplegar modelos matemáticos en funcionamiento dentro de un área de aplicación, evitando las trampas, estas son las habilidades que distinguen, en mi opinión.

El énfasis debe estar en la ciencia , aplicando un enfoque científico sistemático a los problemas comerciales, industriales y comerciales. Pero esto requiere habilidades más amplias que la minería de datos y el aprendizaje automático, como Robin Bloor argumenta persuasivamente en "A Data Science Rant" .

Entonces, ¿qué se puede hacer?

Áreas de aplicación : conozca varias áreas de aplicación cercanas a su interés o el de su empleador. El área a menudo es menos importante que comprender cómo se construyó el modelo y cómo se usó para agregar valor a esa área. Los modelos que tienen éxito en un área a menudo se pueden trasplantar y aplicar a diferentes áreas que funcionan de manera similar.

Competiciones : pruebe el sitio de competencia de minería de datos Kaggle , preferiblemente uniéndose a un equipo de otros. (Kaggle: una plataforma para competencias de modelado predictivo. Empresas, gobiernos e investigadores presentan conjuntos de datos y problemas y los mejores científicos de datos del mundo compiten para producir las mejores soluciones).

Fundamentos : Hay cuatro: (1) una base sólida en estadística, (2) habilidades de programación razonablemente buenas, (3) comprender cómo estructurar consultas de datos complejas, (4) construir modelos de datos. Si alguno es débil, entonces ese es un lugar importante para comenzar.


Algunas citas a este respecto:

`` Aprendí muy temprano la diferencia entre saber el nombre de algo y saber algo. Puedes saber el nombre de un pájaro en todos los idiomas del mundo, pero cuando hayas terminado, no sabrás absolutamente nada sobre el pájaro ... Así que veamos el pájaro y veamos qué está haciendo, eso es lo que cuenta '' - Richard Feynman, "The Making of a Scientist", p14 en What do you care what what people people think, 1988

Tenga en cuenta:

`` La combinación de habilidades necesarias para llevar a cabo estos proyectos de ciencia empresarial [ciencia de datos] rara vez reside en una persona. De hecho, alguien podría haber obtenido un amplio conocimiento en las áreas triples de (i) lo que hace el negocio, (ii) cómo usar las estadísticas y (iii) cómo administrar los datos y los flujos de datos. Si es así, él o ella podría afirmar ser un científico de negocios (también conocido como "científico de datos") en un sector determinado. Pero esos individuos son casi tan raros como los dientes de gallina '' - Robin Bloor, A Data Science Rant , agosto de 2013, Inside Analysis

Y finalmente:

`` El mapa no es el territorio '' - Alfred Korzybski, 1933, Science & Sanity.

La mayoría de los problemas reales aplicados no son accesibles únicamente desde `` el mapa ''. Para hacer cosas prácticas con el modelado matemático, uno debe estar dispuesto a ensuciarse con detalles, sutilezas y excepciones. Nada puede sustituir el conocimiento del territorio de primera mano.


Assad Ebrahim
fuente
66
+1. Las soluciones listas para usar rara vez funcionan para un problema comercial específico de su organización. Necesita adaptar y mejorar, y para eso necesita comprender lo que hay debajo del capó.
Zhubarb
44
@ Zhubarb: creo que esto solo es parcialmente cierto. Las soluciones "listas para usar" se pueden usar con gran efecto, no solo todo el tiempo, y generalmente tampoco para completar una tarea de principio a fin. El truco es saber cuándo puede salirse con la suya utilizando "soluciones listas para usar" y cuándo se necesita un enfoque más personalizado.
probabilidadislogic
41

Estoy de acuerdo con todo lo que se ha dicho. Lo que se destaca para mí son:

  1. Los pocos "expertos" en aprendizaje automático están realmente interesados ​​en el tema al que desean aplicar el LD
  2. Cuán pocos entienden realmente la precisión predictiva y las reglas de puntuación adecuadas
  3. ¿Qué pocos entienden los principios de validación?
  4. ¿Qué pocos saben cuándo usar un cuadro negro frente a un modelo de regresión tradicional?
  5. Cómo ninguno de los "expertos" parece haber estudiado nunca la decisión óptima de Bayes o las funciones de pérdida / utilidad / costo [esta falta de comprensión se muestra casi cada vez que alguien usa la clasificación en lugar del riesgo previsto]
Frank Harrell
fuente
3
¿Te importaría elaborar sobre 4? No entiendo muy bien lo que quieres decir
17
Pensé que ese artículo era el más fácil de entender. Aquí hay un ejemplo: en un campo de estudio particular, suponga que tenemos experiencia previa de que la mayoría de las variables operan de manera aditiva. El ajuste de un modelo de regresión aditiva que no asume predictores para operar linealmente (por ejemplo, usando splines de regresión) proporcionará un modelo estadístico útil e interpretable. Por otro lado, usar svm o bosques aleatorios será muy difícil de interpretar, no tendrá efectos separables y no predecirá mejor que el modelo aditivo no lineal.
Frank Harrell
77
Sí, en verdad, a la superficialidad del tema. Ni siquiera en el mundo de ML, veo a menudo esta tendencia a querer incorporar datos sin procesar en una caja mágica y tener una maravillosa visión emergente. Lo que estas personas buscan es un cerebro artificial.
DarenW
3
+1 para el artículo 1 especialmente. La evidencia de la falta de interés en el dominio es que aplicar el conocimiento del dominio requerirá saber cómo 'abrir' el cuadro negro y modificarlo. Por caja negra, me refiero a gran parte del nivel de entrada ML, incluso las técnicas básicas de modelado estadístico están en esa caja negra. Si el interés / habilidad no existe, entonces es mucho más difícil aplicar el conocimiento del dominio.
Meadowlark Bradsher
77
@DarenW: La tendencia también se refleja en el nombre: "Aprendizaje automático" con la connotación de que la máquina aprende ... por sí misma ... solo palea datos sin procesar. Contraste el nombre menos glamoroso (pero IMO más preciso) elegido por Hastie, Tibshirani, et.al .: "Aprendizaje estadístico". Diferentes connotaciones, diferentes explicaciones, todas referidas a principios estadísticos.
Assad Ebrahim
11

Aquí hay un par de cosas que te harán destacar entre la multitud:

  • Comprender el dominio o dominios de la aplicación. Es decir, el entorno empresarial u otro contexto.
  • Comprende el panorama general. ¡Esto es muy importante! Las personas que estudian el aprendizaje automático a menudo se pierden en los detalles. Piensa en la imagen general en la que encajarán tus modelos ML. A menudo, la parte ML es solo un pequeño segmento de un sistema mucho más grande. Comprende todo el sistema.
  • Estudie la utilidad y la teoría de la decisión y la inferencia bayesiana, no solo lo que ahora se considera modelos "ML" habituales. La inferencia bayesiana es solo una forma de formalizar la noción de llevar toda la información contextual a un problema. La teoría de la utilidad y la decisión se trata de aportar valores a la imagen.

El mensaje general que se aplica a los tres puntos: mira el panorama general, no te pierdas en los detalles.

Robert Dodier
fuente
4

La habilidad que diferencia a un minero de datos de otros es la capacidad de interpretar modelos de aprendizaje automático. La mayoría construye una máquina, informa el error y luego se detiene. ¿Cuáles son las relaciones matemáticas entre las características? ¿Son los efectos aditivos o no aditivos o ambos? ¿Alguna de las características es irrelevante? ¿Se espera que la máquina bajo la hipótesis nula de que solo hay patrones casuales en los datos? ¿El modelo se generaliza a datos independientes? ¿Qué significan estos patrones para el problema que se estudia? ¿Cuáles son las inferencias? ¿Cuáles son las ideas? ¿Por qué debería emocionarse un experto en dominios? ¿La máquina llevará al experto en dominios a hacer nuevas preguntas y diseñar nuevos experimentos? ¿Puede el minero de datos comunicar efectivamente el modelo y sus implicaciones al mundo?

Jason Moore
fuente
8
+1 de acuerdo, aunque lo que usted describe se llama estadística.
Thomas Speidel
4

Expondría la noción de "habilidades blandas".

  • reconocer quién es el "experto" para el método X y ser capaz de aprovechar sus conocimientos (no se debe o se puede esperar saber todo acerca de todo). La capacidad y la voluntad de colaborar con otros.

  • la capacidad de traducir o representar "el mundo real" con las matemáticas utilizadas en ML.

  • la capacidad de explicar sus métodos de diferentes maneras a diferentes audiencias: saber cuándo centrarse en los detalles y cuándo retroceder y ver el contexto más amplio.

  • pensamiento de sistemas, poder ver cómo su rol se integra en otras áreas del negocio y cómo estas áreas retroalimentan su trabajo.

  • Una apreciación y comprensión de la incertidumbre, y tener algunos métodos estructurados para lidiar con ella. Ser capaz de establecer claramente cuáles son sus suposiciones.

probabilidadislogica
fuente
4

Ser capaz de generalizar bien

Esta es la esencia de un buen modelo. Y es la esencia de lo que hace que los mejores profesionales del arte del aprendizaje automático se destaquen entre la multitud.

Comprender que el objetivo es optimizar el rendimiento en datos no vistos, no minimizar la pérdida de capacitación. Saber cómo evitar el ajuste excesivo y el ajuste insuficiente. Proponer modelos que no sean demasiado complejos pero no demasiado simples para describir el problema. Extrayendo la esencia de un conjunto de entrenamiento, en lugar del máximo posible.

Es sorprendente con qué frecuencia, incluso los profesionales con experiencia en aprendizaje automático, no siguen este principio. Una razón es que los humanos no pueden apreciar dos grandes diferencias de magnitud teoría-práctica :

  • ¿Cuánto más grande es el espacio de todos los ejemplos posibles en comparación con los datos de entrenamiento disponibles, incluso cuando los datos de entrenamiento son muy grandes?
  • ¿Cuánto más grande es el "espacio de hipótesis" completo : número de modelos posibles para un problema, en comparación con el "espacio de solución" práctico: todo lo que pueda pensar y todo lo que su software / herramientas son capaces de representar.

N2N2N

También es lo que la mayoría de las respuestas anteriores dijeron de maneras más específicas y concretas. generalizar bien es la forma más corta que se me ocurre, para decirlo.

arielf
fuente
2

Veo que hay dos partes mientras manejo el aprendizaje automático en la práctica

  1. Ingeniería (que cubre todos los algoritmos, aprendizaje de diferentes paquetes, programación).

  2. Curiosidad / Razonamiento (capacidad de hacer mejores preguntas a los datos).

Creo que 'curiosidad / razonamiento' es la habilidad que distingue a uno de los demás. Por ejemplo, si ve las tablas de clasificación de las finalizaciones de kaggle, muchas personas pueden haber usado algoritmos comunes (similares), lo que hace la diferencia es cómo cuestionar lógicamente los datos y formularlos.

Chitrasen
fuente