
Hace aproximadamente un año y medio, comencé a participar en hackatones. Durante este período, pude participar en más de 20 eventos de varios tamaños y temas en Moscú, Helsinki, Berlín, Munich, Amsterdam, Zurich y París. En todo caso, participé en el análisis de datos de una forma u otra. Me gusta venir a nuevas ciudades por mí mismo, hacer nuevos contactos, tener nuevas ideas, realizar viejas ideas en un corto período de tiempo y adrenalina durante el desempeño y el anuncio de los resultados.
Esta publicación es la primera de tres publicaciones sobre el tema de los hackatones, en ella te diré qué son los hackatones, por qué deberías comenzar a participar en los hackatones. La segunda publicación será sobre el lado oscuro de estos eventos, sobre cómo los organizadores cometieron errores durante la conducta y a qué llevaron. La tercera publicación estará dedicada a las respuestas a preguntas sobre temas cercanos al hackathon.
¿Qué es un hackathon?
Hackathon es un evento que se lleva a cabo durante varios días, cuyo propósito es resolver un problema. Por lo general, hay varios problemas en el hackathon, cada uno representado como una pista separada. La empresa patrocinadora proporciona una descripción de la tarea, métricas de éxito (las métricas pueden ser subjetivas, como "novedad y creatividad", u objetiva, precisión de clasificación en un conjunto de datos retrasado) y recursos para el éxito (API de la empresa, conjuntos de datos, hardware). Los participantes en el tiempo asignado deben formular un problema, proponer una solución y mostrar un prototipo de su producto. Las mejores soluciones reciben premios de la empresa y la posibilidad de una mayor cooperación.
Etapas de Hackathon
Una vez anunciadas las tareas, los participantes del hackathon se unen en equipos: cada "solitario" recibe un micrófono y habla sobre la tarea seleccionada, su experiencia, idea y especialistas sobre qué tipo de plan necesita implementar. A veces, un equipo puede consistir en una persona que puede realizar todo el trabajo en un proyecto por su cuenta a un nivel bastante alto. Esto es relevante para los hackatones de análisis de datos, pero a menudo está prohibido o no es deseable para eventos de comestibles: los organizadores están destinados a continuar el trabajo en el proyecto, pero ya en la empresa; El equipo formado tiene una serie de ventajas sobre los participantes que querían crear el producto solo. El equipo óptimo generalmente consta de 4 personas e incluye: frontend, backend, fecha del científico y persona de negocios. Por cierto, la separación de datasaens / food hackathons es bastante simple: si tiene un conjunto de datos con una métrica y una tabla de clasificación claras, o puede ganar con un código en el cuaderno jupyter, este es un hackathon de datasens; todo lo demás, donde desea hacer una aplicación, sitio web o algo pegajoso, supermercado.
Por lo general, el inicio del trabajo en un proyecto comienza a las 9 pm del viernes y la fecha límite: 10 am el domingo. Parte de este tiempo se debe tomar para dormir (no para dormir y para codificar; esta es la forma segura de fallar, lo verifiqué), lo que significa que los participantes no tienen mucho tiempo para hacer algo de alta calidad. Para ayudar a los participantes, representantes de la compañía y mentores están presentes en el sitio.
El trabajo en el proyecto comienza con la comunicación con los representantes de la compañía, ya que comprenden mejor los detalles de la tarea, las métricas y, muy probablemente, juzgarán su trabajo al final. El propósito de esta comunicación es comprender qué áreas son más relevantes y en qué vale la pena enfocar su atención y tiempo.
En un hackathon, la tarea de regresión se estableció en un conjunto de datos con datos e imágenes tabulares y una métrica clara: RMSE. Después de hablar con el centro de datos de la compañía, me di cuenta de que no necesitaban regresión, sino clasificación, pero solo alguien de la gerencia decidió que el problema se resuelve mejor de esta manera. Y no necesitan clasificación para obtener un aumento en las métricas de dinero, sino para comprender qué parámetros son más importantes al tomar una decisión y luego procesarlos manualmente. Es decir, la tarea inicial (regresión con RMSE) cambia a clasificación; La prioridad de la evaluación cambia de la precisión obtenida a la posibilidad de explicar el resultado. Esto a su vez elimina la posibilidad de usar algoritmos de apilamiento y caja negra. Tal diálogo me ahorró mucho tiempo y aumentó mis posibilidades de ganar.
Una vez que comprenda lo que necesita hacer, comienza el trabajo directo en el proyecto. Debe establecer un check-pony: el tiempo para el que es necesario completar las tareas; En el camino, es bueno seguir comunicándose con mentores, representantes de la compañía y expertos técnicos, esto es útil para ajustar la ruta de su proyecto. Una nueva mirada al problema puede sugerir una solución interesante.
Dado que una gran cantidad de principiantes participan en hackatones, desde los organizadores, un buen tono es dar conferencias y clases magistrales. Por lo general, hay tres conferencias: sobre cómo presentar su idea como producto, una conferencia sobre temas técnicos (por ejemplo, sobre el uso de API abiertas en el aprendizaje automático, para que no tenga que escribir su discurso2 texto en dos días, pero use uno listo), una conferencia sobre el lanzamiento (cómo presente su producto, cómo agitar los brazos en el escenario correctamente para que los oyentes no se aburran). Hay varias actividades para animar a los participantes: una sesión de yoga, futbolín y tenis, o jugar en la consola.
El domingo por la mañana debe proporcionar los resultados de su trabajo al jurado. En buenos hackatones, todo comienza con la experiencia técnica: ¿lo que usted dice realmente funciona? El propósito de esta prueba es eliminar equipos con una hermosa presentación y palabras de moda, pero sin un producto de chicos que realmente hicieron algo. Desafortunadamente, la experiencia técnica no está presente en todos los hackathons y hay casos en que un equipo con 12 diapositivas y una mentalidad "... blockchain, computación cuántica, y luego la IA lo completará ..." gana el primer lugar. Tales precedentes no son tan frecuentes, pero como se recuerdan mejor, muchas personas piensan que una buena presentación es una victoria del 99% en el hackathon. La presentación, por cierto, es realmente importante, pero su contribución no es más del 30%.
Después de la actuación de los participantes, el jurado decide premiar a los ganadores. Esto completa la parte oficial del hackathon.
Motivación para participar en hackatones.
Experiencia
En términos de experiencia adquirida, un hackathon es un evento único. En la naturaleza, no hay muchos lugares donde pueda realizar la idea de la nada en 2 días y obtener comentarios instantáneos sobre su trabajo. Durante el hackathon, el pensamiento crítico, el trabajo en equipo, la gestión del tiempo, la capacidad de trabajar en una situación estresante, la capacidad de presentar los resultados de su trabajo de una manera comprensible, la habilidad de las presentaciones y muchos otros se impulsan. Es por eso que los hackatones son un gran lugar para las personas con conocimientos teóricos que desean obtener una experiencia real.
Premios
Por lo general, el premio acumulado del hackathon es de aproximadamente 1.5k - 10k euros para el primer lugar (en Rusia - 100-300 mil rublos). El beneficio esperado (valor esperado, EV) de la participación se puede calcular usando una fórmula simple:
EV = Prize * WinRate + Future_Value - Costs
donde
Premio es el tamaño del premio (por simplicidad suponemos que solo hay un premio);
WinRate : probabilidad de victoria (para un equipo novato, este valor se limitará al 10% más arriba, para un equipo más experimentado: 50% o más; conocí a personas que dejaron cada hackathon con un premio, pero es más probable que sea una excepción a la regla y su tasa de ganancia será una larga distancia por debajo del 100%);
Future_Value : un valor que muestra el beneficio futuro de participar en el hackathon: puede ser el beneficio de la experiencia adquirida, las relaciones establecidas, la información recibida, etc. Este valor es casi imposible de determinar exactamente, pero debe recordarse;
Costos : el costo de transporte, alojamiento, etc.
La decisión de participar se toma en base a la comparación del hackathon EV con la actividad EV que le gustaría hacer si no tuviera un hackathon: si quisiera recostarse en el sofá durante el fin de semana y hurgarse la nariz, entonces probablemente debería participar en el hackathon; si pasas tiempo con tus padres o con una niña, llévalos al equipo para un hackatón (es broma, decide por ti mismo), si trabajas por cuenta propia, compara la hora en dólares.
Según mis cálculos, puedo decir que en Rusia para un centro de datos de nivel medio junior medio, participar en hackathons es comparable a ganar dinero de un día normal de trabajo, pero también hay matices (tamaño del equipo, como un hackathon, premio acumulado, etc.). En general, los hackatones en este momento no son una bonanza, pero pueden dar un buen impulso a su presupuesto personal.
Contratación de empresas y redes
Para una empresa, un hackathon es una forma de contratar nuevos empleados. Te resultará mucho más fácil demostrar que eres una persona adecuada y que sabes cómo trabajar en un hackathon que en una entrevista, girando un árbol binario en un tablero (que, por cierto, no siempre se corresponde con lo que harás en un trabajo real de un centro de datos, pero se deben respetar las tradiciones). Tal prueba en condiciones de "combate" puede reemplazar un día de prueba.
Obtuve mi primer trabajo gracias al hackathon. En el hackathon, demostré que se puede extraer más dinero de los datos, y dije cómo lo haré. Comencé el proyecto en el hackathon, lo gané, luego continué el proyecto ya en la empresa patrocinadora. Fue el cuarto hackathon en mi vida.
La capacidad de obtener un conjunto de datos único
Este es un elemento muy relevante para la fecha de los Hackathons, cuya importancia no todos entienden. Por lo general, las empresas patrocinadoras proporcionan conjuntos de datos reales durante el evento. Estos datos son privados, están bajo el NDA, que no deja de mostrarle una prueba de concepto en un conjunto de datos real, y no en un juguete titánico. En el futuro, dichos resultados ayudarán en gran medida a encontrar empleo en esta empresa o en una empresa competidora o en sustanciar proyectos similares. Acuerde que, ceteris paribus, haber completado proyectos que son evaluados positivamente es mejor que no tenerlos. En general, tales proyectos implementados juegan un papel similar con medallas y estados en la tos, pero para la industria su valor es más obvio.
Consejos
En general, trabajar en un hackathon es una experiencia bastante diversa y es difícil formular una lista de reglas. Sin embargo, aquí me gustaría dar una lista de observaciones que pueden ayudar al principiante:
- No tengas miedo de ir a hackathons incluso si no tienes experiencia o un equipo. Piensa en lo que podrías ser útil. Por ejemplo, ¿podrías tener una idea interesante o eres bueno en alguna área? Puede usar su conocimiento de dominio para formular el problema y encontrar soluciones no triviales. ¿O tal vez eres el mejor capaz de googlear? Su habilidad le ahorrará mucho tiempo si puede encontrar implementaciones listas para usar en el github. ¿O eres muy bueno para ajustar los parámetros de lightgbm? En este caso, no vayas al hackathon, sino pruébalo en las competiciones de kagla.
- Las tácticas son más importantes que las maniobras. Tu tarea en el hackathon es resolver el problema. A veces, para resolver un problema, es necesario identificarlo. Verifique que su problema identificado sea realmente relevante para la empresa. Verifique su decisión de cumplimiento del problema, hágase una pregunta sobre la optimización de su solución. Al evaluar su solución, primero verán la relevancia del problema y la idoneidad de la solución propuesta. La arquitectura de su red neuronal, o cuántas manos recibió, es de poco interés para cualquiera.
- Asista a tantos hackatones como sea posible, pero no dude en abandonar eventos mal organizados.
- Agregue los resultados de su trabajo en el hackathon a su currículum y no tenga miedo de escribir sobre él públicamente.
La esencia de los hackathons. Brevemente