¿Hay futuro para los programadores que tienen dificultades para aprender ciencia de datos y aprendizaje automático?

Sí, hay un futuro para los programadores que tienen problemas para aprender las matemáticas detrás de la ciencia de datos y el aprendizaje automático. ¿Por qué? Porque no necesita comprender cómo funciona el motor de un automóvil para ir a la tienda.

He trabajado en al menos cuatro proyectos diferentes (varios años de trabajo) relacionados con la ciencia de la información, el aprendizaje automático o ambos en Microsoft y Google. En algunos casos, estaba generando el modelo de datos y seleccionando los algoritmos para analizar los datos. En otros, estaba escribiendo infraestructura para reunir datos y consumir reglas.

He intentado aprender las matemáticas detrás de cosas como la inferencia bayesiana. Incluso tengo una licenciatura en matemáticas, pero es demasiado para mí.

Menos mal que no importa.

No es necesario que entiendas los detalles de las matemáticas detrás del aprendizaje automático más de lo que necesitas para recorrer las entrañas de gcc para escribir un programa en C ++.

Jugar con las bibliotecas de aprendizaje automático. Aprende los modelos y las interfaces, úsalo para familiarizarte con él. Igual que la mayoría de las personas que trabajan en informática para casi todas las tecnologías que aprenden.

Por lo tanto, si desea utilizar el aprendizaje automático para sus programas, no se preocupe por comprender sus agallas. Y si no quiere usarlo, todavía hay muchos otros trabajos que deben realizarse.

Una nota al margen: los sistemas de aprendizaje automático y toda su infraestructura de soporte son bastante grandes, en comparación con las heurísticas simples que utilizaríamos para hacer lo mismo que el modelo que genera el algoritmo ML. La ventaja que obtiene por todo ese trabajo adicional es poder regenerar su modelo para que coincida con los cambios en sus datos. Pero no lo llamaría más pequeño que el código no-ML.

Si tuviera $ 5 por cada vez que lea o escuche sobre el futuro de los programadores, sería inmensamente rico. Habrá mucho trabajo para los programadores. Tenga en cuenta que las personas que trabajan en el campo de datos no son programadores en su núcleo.

Si quieres un razonamiento completo, lee adelante:

Comencé a trabajar en el momento en que la computadora personal ingresaba a los hogares de las personas. En ese entonces, la expectativa era que los mainframes iban a morir rápidamente porque el poder de cómputo se movía de los servidores a las estaciones de trabajo. Se decía que los programadores eran una carrera sin futuro, ya que todos podrían trabajar en sus nuevos sistemas personales.

Bueno … eso no sucedió. De hecho, eso abrió las puertas a mucha más gente programando y con mucha innovación.

No mucho después de la explosión inicial de Internet, los centros de datos comenzaron a proliferar. Linux para sistemas web y de colaboración y la arquitectura de servidor Windows con administración centralizada de usuarios creció. Los programadores no serían necesarios y la administración del sistema era el futuro.

¿No es irónico que la administración del sistema sea automatizada o esté ejecutada por devOps?

Y ahora tenemos la era de los datos. La gente de los datos gobernará el mundo. Nah! ¡Tengo muy poco interés en programar fuera del alcance de mi trabajo! ¡Puedo hacer muchas cosas que no puedes, pero confía en mí, puedes hacer muchas cosas que no puedo!

El aprendizaje automático disminuirá la cantidad de codificación necesaria. Esa es una expectativa y una buena. Sin embargo, la codificación que disminuirá no es un código de propósito general sino un código para producir productos específicos que son inteligentes y controlados por datos.

Los programadores han sido marcados para la extinción muchas veces y, sin embargo, este es el momento en que más existen. A menos que haya un avance extraordinario, los programadores tienen un largo futuro con o sin datos.

Ricardo Vladimiro, como de costumbre, es perfecto.

Lo más probable es que estés bien. El aprendizaje automático, la ciencia de datos y la inteligencia artificial no van a obviar tus habilidades más importantes. Puede haber algún cambio en la forma en que los usas y en lo que percibes que son. Los científicos de datos y similares están, de alguna manera, en tanto o incluso más, “peligro” que usted … más y más tareas de datos están automatizadas.

No sé qué tipo de trabajo hace, pero es más fácil automatizar las tareas de datos que automatizar la depuración de un sistema operativo.

Sin embargo, es probable que esta automatización sea una bendición para los científicos de datos, ya que les permite hacer un trabajo más interesante. Como dijo Ricardo, también, la mayoría de los científicos de datos no pueden hacer muchas cosas que usted probablemente pueda hacer.

E incluso si la automatización de las tareas que comúnmente haces se hace posible a través del aprendizaje automático, bueno, eso te libera de algo de tu trabajo para encontrar cosas más interesantes.

Tu habilidad más importante es y siempre será tu habilidad para pensar. Haber sido entrenado para pensar en cualquier tipo de software en el que esté capacitado lo ayudará a adaptarse, en caso de que ocurran cambios. Las computadoras no pueden pensar, al menos no todavía, y no es probable que lleguen pronto. Así que siempre necesitarán a alguien que pueda pensar en una dirección.

Estoy de acuerdo con las otras respuestas.

La necesidad de mantener la plomería e integrar los componentes no va a ninguna parte, ni la IU, las bases de datos, la lógica empresarial, la arquitectura de varios niveles de la vainilla, etc. es muy probable que les lleve un tiempo llegar al laico hasta el punto en que realmente sientan la diferencia.

Hay más en la industria de la informática y el software que lo que está siendo promocionado por la prensa en este momento. Hace 5 años, usted haría la misma pregunta sobre big data y Hadoop (en serio, había gente que me decía que si no aprendía Hadoop, me volvería irrelevante). Hace 30 años, se suponía que la base de conocimientos expertos AI se apoderaría del mundo.

Sí, hay un futuro. La gran mayoría de los programadores de hoy no trabajan dentro de los parámetros de la ciencia de datos o el aprendizaje automático, y no veo una situación fuera de la burbuja de Silly Valley (es decir, Silicon Valley) que cambiaría esta situación.

Ambos problemas impiden a los programadores realizar trabajos de calidad, ya que los programadores necesitan salidas predecibles para las entradas conocidas. De lo contrario, es imposible hacer pruebas automatizadas.

Es necesario utilizar pequeños conjuntos de datos para realizar pruebas, aunque sí es necesario ampliar la producción. Pero las pruebas contra grandes conjuntos de datos son casi imposibles, y por lo tanto, la adicción de SV a ML y la ciencia de datos es a) sorprendente yb) perjudicial para la informática.

Creo que el futuro del aprendizaje automático a largo plazo es muy brillante (y que finalmente resolveremos la IA, aunque eso es un tema aparte de ML). El aprendizaje automático ya es una herramienta increíblemente poderosa que puede hacer un trabajo sorprendentemente bueno para resolver problemas de clasificación realmente difíciles.