Me preguntan todo el tiempo:
“¿Qué proyecto debería construir?”
La pregunta está llena de gran intención, pero es fundamentalmente defectuosa.
Más de 100 solicitudes y portafolios, y solo unas pocas veces el proyecto de alguien me ha cautivado lo suficiente como para pasar a la etapa de entrevista.
Entonces, en este artículo, le brindaré el marco exacto que desarrollé y seguí para encontrar el proyecto de aprendizaje automático perfecto que le permitirá conseguir un trabajo.
¡Entremos en ello!
Por qué fracasan la mayoría de los proyectos de aprendizaje automático
Déjame decirte algo que todos los gerentes de contratación piensan en todas las empresas para las que he trabajado.
Cuando vemos un modelo de predicción del precio de la vivienda o un clasificador de supervivencia del Titanic, no pensamos en “fundamentos sólidos”. Pensamos en “lo siguiente”.
Ni siquiera estoy bromeando.
Estos proyectos los he hecho tantas veces que no me dicen nada sobre la persona.
Solo me dice que pueden seguir un tutorial estándar y replicar los resultados.
Un proyecto que consigue que te contraten tiene cuatro cosas clave:
Es personal: realmente te importa lo que predice. Es novedoso; no lo había visto cien veces antes. Es relevante: se conecta con el tipo de trabajo que desea realizar. Está en vivo: la gente puede verlo en acción.
Si haces bien los cuatro, tu proyecto hará que el gerente de contratación te recuerde, y esto proviene de mi experiencia personal en la contratación.
El problema es que nadie puede entregarte un proyecto como ese. Tiene que venir de ti.
Entonces, en lugar de darte una idea, te daré un marco a seguir para desarrollar un proyecto como este.
También convertí este marco en un libro de trabajo en PDF descargable de 7 páginas que puede consultar en la descripción a continuación para trabajar y encontrar el proyecto adecuado que lo contratará.
Marco de construcción del proyecto
Roba el marco EXACTO de ideas de proyectos que utilizo para conseguir ofertas de más de 100.000 dólares y unirme a más de 8000 solicitantes de empleo de datos hoy.projects.egorhowell.com
Proyecto de ejemplo
Antes de profundizar en el marco, permítanme darles un ejemplo de un proyecto de un candidato que contratamos.
En una de mis empresas anteriores, estábamos contratando a un científico de datos junior para trabajar en problemas de optimización e investigación de operaciones.
El candidato que contratamos se destacó por una razón principal: tenía un proyecto muy relevante y profundamente personal que se adaptaba mucho al puesto.
Les apasionaba el fútbol de fantasía de la NFL y querían mejorar la forma en que construían sus selecciones de equipo semanales.
Entonces, desarrollaron su propio motor de optimización para asignar jugadores de manera más efectiva dentro de las limitaciones del programa.
No fue sólo el motor en sí; leyeron artículos académicos sobre estrategias de optimización y estudiaron cómo otros abordaban el mismo problema.
Este proyecto aborda los cuatro puntos que mencionamos anteriormente:
Es personal. Era un problema personal que les interesaba. Es novedoso. Era único y no habíamos visto nada parecido antes ni después. Es relevante: mostró su pasión e interés en la optimización y la investigación de operaciones, que era exactamente para lo que estábamos contratando. Está en vivo: era directamente relevante para el trabajo que estaban solicitando.
Permítanme ahora desglosar el marco exacto que puede seguir para construir un proyecto exactamente como este.
Comience con sus intereses
Cuando las personas buscan un proyecto para construir, abren una lista de conjuntos de datos de ML, probablemente en Kaggle, e intentan encontrar algo interesante.
Eso es al revés.
Empiece por usted mismo y sus intereses.
Más específicamente, escriba cinco cosas que realmente le interesen fuera del trabajo y fuera de los datos y el aprendizaje automático.
Concéntrate en tus aficiones, obsesiones y otras cosas de las que felizmente hablarías durante una hora sin problema.
Cuando hice esto, mi lista era algo como:
Invertir Hockey Gimnasio/fitness Películas Youtube
¿Por qué necesitamos elegir algo que nos interese?
Porque un proyecto que te importa y que te interesa es un proyecto que terminarás.
No puedo enfatizar lo suficiente lo más fácil que es hacer un proyecto que realmente te motive en lugar de uno que “piensas” que deberías hacer.
Una vez que tenga sus cinco intereses, escriba cinco preguntas para cada interés que realmente desee que se respondan.
Por ejemplo, “¿Qué jugadores de fútbol de fantasía tienen precios más bajos esta semana?” es una pregunta, mientras que “Estadísticas de fútbol” no lo es.
No lo pienses demasiado y simplemente escribe las cosas.
Ahora tendrás potencialmente 25 ideas de proyectos, que probablemente serán completamente únicas o al menos no las habrá visto mucha gente.
Filtra tus mejores opciones
Ahora tenemos que reducir esa lista a nuestras mejores opciones.
El primer paso es eliminar las preguntas o ideas que obviamente no sean problemas de ML. Por ejemplo, “¿Por qué disfruto las películas?” Es una gran pregunta, pero no es un proyecto de aprendizaje automático.
El aprendizaje automático a un nivel realmente alto y crudo se puede dividir en 5 áreas clave:
Predecir un número: regresión. Predecir una categoría: clasificación. Previsión a lo largo del tiempo: series temporales. Recomendar cosas: sistemas de recomendación. Agrupar cosas: agrupar.
Revise sus 25 preguntas o menos y encuentre las que se ajusten a una de esas 5 áreas y elimine las que no.
Esto debería dejarnos con alrededor de 10 a 15 ideas factibles que podemos resolver usando ML.
Ahora debe elegir una, y la forma de hacerlo es calificar individualmente estas ideas según los siguientes criterios:
¿Qué tan personal es? ¿Qué tan novedoso es? ¿Qué tan relevante es para los roles que estoy buscando? ¿Qué tan difícil es obtener los datos? ¿Qué tan difícil es construir?
Califica cada uno de 5, resúmelos todos y el que tenga la puntuación más alta será el que construirás.
Validar el proyecto
Antes de que dediques semanas a construir este proyecto, quiero que realices tres comprobaciones rápidas.
Primero: ¿de dónde provienen exactamente sus datos? Nombra una fuente real: una API, un conjunto de datos públicos o cualquier otra fuente única. Si no puede nombrar uno, encontrar los datos es su primer trabajo.
Segundo: ¿podría conseguir una primera versión aproximada que funcione en unos dos meses, suponiendo una o dos horas al día? Si es más grande que eso, redúcelo. Un proyecto pequeño que realmente terminas supera a uno grande que abandonas, siempre.
Tercero: ¿Qué tan común es en realidad? Nada es realmente original, pero si este proyecto es algo que has visto varias veces antes, quizás reconsidereslo y elijas tu segunda opción.
Pase las tres comprobaciones y listo.
¡Bien hecho! Tienes un proyecto que es tuyo, que un gerente de contratación no ha visto cientos de veces y que realmente puedes terminar.
Hazlo vivir
Como la mayoría de las personas, probablemente realizará la investigación inicial y la creación de prototipos de este proyecto en un Jupyter Notebook.
Sin embargo, hoy en día las empresas quieren personas que puedan implementar sus soluciones para generar impacto empresarial.
Incluso si su modelo es lo mejor desde el transformador, es inútil si está atrapado dentro de una computadora portátil.
En realidad, implementar un modelo no es tan complejo como la gente piensa. He entrenado a varios de mis clientes para construir su primer modelo de aprendizaje automático de un extremo a otro sin experiencia previa utilizando el siguiente proceso y pila tecnológica:
Cree la solución prototipo en un Jupyter Notebook. Divida ese Jupyter Notebook en archivos Python individuales que sigan los estándares de código de producción, implementando funciones como escritura, formateadores y cadenas de documentos. Agregue sus archivos Python a un repositorio de git y cree un excelente README que explique el proyecto. Agregue todas las herramientas y conceptos clave de ingeniería de software, incluidas pruebas unitarias, gestión de dependencias de poesía, Makefiles y PyEnv. Cree un panel de Streamlit para mostrar sus resultados e impleméntelo en la nube de la comunidad Streamlit. Configure su repositorio para que se ejecute diariamente usando GitHub Actions.
Bish. Intento. Tonterías.
Acaba de implementar su modelo de un extremo a otro utilizando herramientas estándar de la industria, que he estado usando como ingeniero de aprendizaje automático en las principales empresas de tecnología durante años.
Puedo apreciar que puede parecer completamente abrumador para alguien nuevo en esto, sin nadie a tu lado que te guíe, así que he creado un repositorio de plantilla con todo el código repetitivo para configurar esto.
GitHub – egorhowell/ML-Project-Starter
Contribuya al desarrollo de egorhowell/ML-Project-Starter creando una cuenta en GitHub.github.com
¡Otra cosa!
Si realmente quieres conseguir un trabajo con datos o máquinas, he abierto algunos espacios en mi programa de coaching.
Trabajará personalmente con mi equipo y conmigo durante 12 meses en este programa diseñado específicamente para ayudarlo no solo a solicitar, sino también a conseguir el trabajo de datos/ML de sus sueños.
Solicite y reserve su llamada gratuita aquí.
Consiga el trabajo de datos de sus sueños
Consiga el trabajo de ciencia de datos de sus sueños y aumente su salario hasta en $ 150 000 coaching.egorhowell.com