¿Qué cosas interesantes has aprendido sobre el aprendizaje automático la semana pasada?
Durante los últimos 7 meses he estado trabajando como Ingeniero de Machine Learning. En los pocos proyectos en los que he estado involucrado, siempre surgen algunas cosas.
Por supuesto, debido a que los datos son diferentes, la situación no es la misma. Pero los principios de un problema a menudo pueden aplicarse a otro.
Aquí hay algunas cosas que debo recordar cada vez que empiezo a trabajar con un nuevo conjunto de datos.
A) Observar los datos. No, de verdad, depende de los datos.
Cuando obtienes un conjunto de datos por primera vez, lo primero que debes hacer es revisarlo y hacer una serie de preguntas.
No busque respuestas de inmediato; hacerlo demasiado pronto puede descarrilar su proceso de descubrimiento.
"¿De qué trata esta columna?
"¿Hará esto alguna diferencia?
"¿Debería saber más sobre esta variable?
"¿Por qué estos números son así?
"¿Estas muestras son siempre así?"
Puedes empezar a responder estas preguntas la segunda vez que mires la información. Si no puede responder estas preguntas usted mismo, hable con un experto.
B) Habla con expertos
Los datos son datos. No miente. Los datos son datos. Pero eso no significa que algunas de las conclusiones que saques no estén sesgadas por tu propia intuición.
Supongamos que desea predecir los precios de la vivienda. Hay algunas cosas que probablemente ya sepas. Los precios de las viviendas cayeron en 2008, las casas con vallas blancas tenían ingresos más altos, y así sucesivamente.
Pero es importante no tomar esto como suposiciones estrictas. Antes de comenzar a construir el mejor modelo de vivienda del mundo, es posible que desee hacer algunas preguntas a alguien con experiencia.
¿Por qué?
Porque te ahorra tiempo. Después de hacer una lista de preguntas para la Parte A, preguntarle a un experto en la materia puede ahorrarle horas de preparación.
"Oh, ya no usamos esta métrica, puedes ignorarla.
Los números que ves en realidad se relacionan con otras cosas.
C ) Asegúrate de responder las preguntas correctas
Cuando comiences a construir el modelo, asegúrate de tener una imagen mental del problema que estás tratando de resolver.
Esto debe ser coherente con el. cliente, hable con el director del proyecto y con cualquier otro colaborador clave.
¿Cuáles son los resultados esperados de este modelo?
Por supuesto, los objetivos pueden cambiar a medida que itera sobre diferentes opciones. pero tener objetivos siempre es un buen comienzo.
Lo peor que puede pasar es que pases dos semanas construyendo un modelo con una precisión del 99% y luego falles cuando llegue el momento de mostrar tu trabajo a un cliente. Resulta que el modelo que creaste es incorrecto.
Mida dos veces. Esta afirmación no se aplica realmente al aprendizaje automático porque necesitas crear muchos modelos.
D) Ingeniero de funciones, codificación de funciones y preprocesamiento de datos
¿Qué tipo de datos?
¿Son solo datos numéricos? ¿Existen características categóricas que se puedan incorporar al modelo?
Es importante tener en cuenta que las características categóricas pueden considerarse cualquier tipo de datos que no estén disponibles inmediatamente en forma numérica. En su problema de intentar predecir los precios de la vivienda, podría tener el número de baños como una característica numérica y el suburbio de la casa como una característica categórica (categoría no numérica) de los datos.
Hay. diferentes formas de manejar esto. En ambos casos.
Para las características numéricas, el enfoque principal es garantizar que todo esté en el mismo formato. Por ejemplo, imagine el año de producción de un automóvil.
) es cuatro veces mayor que 18' (2018)?
Es posible que quieras cambiarlos a 1999 y 2018 para asegurarte de que el modelo capture qué tan cerca están realmente esos dos números.
p>
El objetivo de las características categóricas es convertirlas en números.
¿Cómo se convierten las casas suburbanas en números?
Supongamos que tiene Park Ridge, Greenville y Ascot.
¿Puedes decir Park Ridge = 1, Greenville = 2 y Ascot = 3?
¿Pero eso no significa que Park Ridge Greenville = Ascot?
Esto no tiene sentido.
Una mejor opción es la codificación en caliente de una sola vez. Esto significa que a lo que sea se le asigna un valor de 1 y a lo que no se le asigna un valor de 0.
Hay muchas otras opciones para convertir variables categóricas en números y encontrar las partes más interesantes.
E) Pruebe, itere y actualice rápidamente
¿Podría crear un indicador más simple para empezar?
Quizás estés trabajando en un escenario ideal, pero ¿podrías construir un modelo más simple para probar tu idea?
Comience con el modelo más simple y aumente gradualmente la complejidad.
No tengas miedo de cometer errores y cometelos una y otra vez. Es mejor cometer errores en las pruebas que en la producción.
En caso de duda, ejecuta el código. Al igual que los datos, el código no miente. Hará lo que le pidas.
Cuanto más rápido descubras lo que no funciona, más rápido podrás descubrir lo que sí funciona.
F) Sigue repasando los objetivos principales
El principal problema que surge en los proyectos de aprendizaje automático no suele ser los datos ni el modelo, sino la comunicación entre los participantes.
La comunicación siempre es clave.
La resolución de problemas puede terminar llevándote a una madriguera de conejo. Quieres probar una cosa, luego quieres probar otra y ahora ni siquiera sabes qué problema estás resolviendo.
Esto no es necesariamente malo; algunas de las mejores soluciones se encuentran de esta manera.
Pero recuerda, no todo el mundo entenderá tu proceso de pensamiento. Si tiene alguna pregunta, comuníquese más.