Fecha Notas del científico: ¿por dónde empezar y es necesario?



TL; DR es una publicación para preguntas / respuestas sobre ciencia de datos y cómo ingresar y desarrollarse en la profesión. En el artículo analizaré los principios básicos y las preguntas frecuentes y estoy listo para responder sus preguntas específicas: escriba en los comentarios (o en forma personal), intentaré responder todo en unos días.
Con la llegada del ciclo de notas "fecha del satanista", han llegado una gran cantidad de mensajes y comentarios con preguntas sobre cómo empezar y por dónde excavar, y hoy analizaremos las principales habilidades y dudas que surgieron tras las publicaciones.



Todo lo mencionado aquí no reclama ninguna verdad última y es la opinión subjetiva del autor. Repasaremos las cosas principales que parecen ser las más importantes en el proceso.



¿Por qué se necesita exactamente esto?



Para que el objetivo se pueda lograr mejor, de modo que al menos parezca concreto de alguna manera, si desea convertirse en DS o investigador científico en Facebook / Apple / Amazon / Netflix / Google, consulte los requisitos, los idiomas y las habilidades necesarias directamente para qué puesto. ¿Cuál es el proceso de contratación? ¿Cómo se desarrolla un día típico en este puesto? ¿Cómo es el perfil medio de la persona que trabaja allí?



A menudo, la imagen general es que una persona no entiende realmente lo que quiere exactamente y no está del todo claro cómo prepararse para esta imagen vaga; por lo tanto, vale la pena tener al menos un plan aproximado de lo que quiere exactamente.

Reducir la vista de su objetivo actual
Incluso si cambia a lo largo del camino, y generalmente es normal cambiar de planes en el transcurso de la jugada, debes tener una meta frente a ti y guiarte por ella, evaluando y repensando periódicamente.



Will o sigue siendo relevante



Para cuando llegues a una posición.



Imagínese que antes de su puesto necesita obtener un doctorado, trabajar durante 2 o 3 años en la industria y, en general, cortarse el pelo mientras medita en un monasterio: ¿habrá la misma situación con la ciencia de datos que antes con los economistas y abogados? No todo cambiará más allá del reconocimiento en el área que quieres hacer.



¿Existe una buena posibilidad de que todos se apresuren allí ahora y veremos una imagen cuando haya una amplia capa de personas que estén tratando de ingresar a la profesión, y habrá solo pocas posiciones para comenzar?



Puede valer la pena considerar las tendencias actuales al elegir un camino, no solo el estado actual del mercado laboral, sino también su idea de cómo está cambiando y dónde está.



Por ejemplo, el autor no planeaba ir a la fecha de los satanistas, pero durante el doctorado vio proyectos paralelos que resonaron fuertemente con DS en términos de habilidades y, después de graduarse de la escuela de posgrado, naturalmente se trasladó al miércoles, viendo una buena posición.



Si en el transcurso de la obra resulta que será necesario ir a otro lugar, porque ahora está el movimiento mismo y se está llevando a cabo toda la acción más interesante, bueno, entonces iremos allí naturalmente.



Desglose de habilidades



Estas son categorías condicionales de habilidades que creo que son clave para un trabajo completo y efectivo en DS. Destacaré por separado el inglés: aprende todo lo que haces en CS. Las siguientes serán las categorías clave.



Programación / Scripting



¿Qué idiomas deberías familiarizarte definitivamente? ¿Pitón? ¿Java? ¿Secuencias de comandos de Shell? Lua? Sql? C ++?



Qué es exactamente lo que necesita poder hacer y por qué en términos de programación: aquí el rango de posiciones es muy diferente.



Por ejemplo, a menudo tengo que implementar lógica compleja, consultas, modelos, análisis y en general desarrollar sistemas interpretados, pero casi nunca hay requisitos para la velocidad del código, excepto los más generales y razonables.



Por lo tanto, mi conjunto de habilidades es muy diferente al de aquellos que escriben la biblioteca de Tensorflow y piensan en optimizar el código para un uso eficiente de la caché l1 y similares, así que vea qué es exactamente lo que necesita y evalúe el camino correcto para aprender.



Por ejemplo, para Python, la gente ya está haciendo un mapa de aprendizaje de idiomas.



Seguramente, para sus necesidades, ya hay consejos experimentados y buenas fuentes: debe decidirse por una lista y comenzar a trabajar en ella.



Comprensión de los procesos comerciales



Sin él, en ninguna parte: debe comprender por qué se lo necesita en este proceso, qué está haciendo y por qué. A menudo, esto es lo que puede ahorrarle mucho tiempo, maximizar sus beneficios y no perder tiempo y recursos en tonterías.



Normalmente hago las siguientes preguntas:



  • ¿Qué estoy haciendo exactamente en la empresa?
  • ¿Para qué?
  • ¿Quién lo usará y cómo?
  • ¿Que opciones tengo?
  • ¿Cuáles son los límites de los parámetros?


Aquí, un poco más sobre los parámetros: a menudo puede cambiar mucho el escenario de trabajo, si sabe que algo se puede sacrificar: por ejemplo, la interpretabilidad o viceversa, un par de por ciento no jugará un papel aquí y tenemos una solución muy rápida, y el cliente la necesita, porque él paga por el tiempo que la canalización se ejecuta en AWS.



Matemáticas



Aquí piensas y entiendes todo tú mismo; sin conocimientos de matemáticas básicas, no eres más que un mono bebé con una granada (perdona el bosque aleatorio), por lo que debes comprender al menos las cosas básicas. Si tuviera que hacer la lista más mínima, incluiría:



  • Álgebra lineal: una gran cantidad de recursos es fácil de buscar en Google, busque lo que más le convenga;
  • Análisis matemático - (al menos en el volumen de los dos primeros semestres);
  • La teoría de la probabilidad está en todas partes en el aprendizaje automático;
  • Combinatoria - en realidad es complementaria al teórico;
  • Teoría de grafos - al menos BÁSICA;
  • Algoritmos: al menos el volumen de los dos primeros semestres (consulte las recomendaciones de Cormen en su libro);
  • Matlogic - al menos básico.


Análisis y visualización de datos prácticos



Una de las cosas más importantes es poder no tener miedo de ensuciarse las manos con los datos y realizar un análisis completo del conjunto de datos, el proyecto y ofrecer una visualización rápida de los datos.



El análisis de datos exploratorio debería convertirse en algo natural, como todas las demás transformaciones de datos y la capacidad de lanzar una tubería simple desde unix tuzles (ver artículos anteriores) o escribir una computadora portátil legible y comprensible.



Mencionaré por separado la visualización: es mejor ver una vez que escuchar cien veces.



Mostrar un gráfico al administrador es cien veces más fácil y más comprensible que un conjunto de números, por lo que matplotlib, seaborn y ggplot2 son tus amigos.



Habilidades blandas



Es igualmente importante poder comunicar sus ideas, resultados e inquietudes (etc.) a quienes lo rodean; asegúrese de poder establecer claramente la tarea en términos técnicos y comerciales.



Puede explicar a sus colegas, gerentes, jefes, clientes y a todos los que necesitan lo que está sucediendo, con qué datos opera y qué tipo de resultados obtiene.



Sus gráficos y documentación deben poder leerse sin usted. Es decir, no es necesario que se acerque a usted para comprender lo que está escrito allí.



Puede hacer una presentación clara para transmitir el mensaje y / o documentar su proyecto / trabajo.



Puede transmitir su posición de una manera razonada y sin emociones, decir sí / no, o cuestionar / apoyar la decisión.



Formación



Hay muchos lugares diferentes donde puedes aprender todo esto. Te daré una lista corta: he probado todo y, para ser honesto, cada elemento tiene sus pros y sus contras. Intenta decidir qué funciona para ti, pero te recomiendo que pruebes varias opciones y no te cuelgues de una.



  • Cursos online: coursera, udacity, Edx, etc;
  • Escuelas nuevas: en línea y fuera de línea: SkillFactory, SHAD, MADE;
  • Escuelas clásicas: másteres universitarios y cursos de actualización;
  • Proyectos: simplemente puede seleccionar tareas que sean de su interés y cortarlas cargándolas en github;
  • Pasantías: es difícil sugerir algo aquí, debes buscar lo que está disponible y encontrar las opciones adecuadas.


¿Es necesario?



En conclusión, quizás agregaré tres principios personales que trato de seguir yo mismo.



  • Debería ser interesante;
  • Para traer placer interior (= al menos no causar sufrimiento);
  • « ».


¿Por qué exactamente ellos? Es difícil imaginar que estarás haciendo algo día a día y no te gustará o no te interesará. Imagine que es médico y odia comunicarse con la gente; esto, por supuesto, puede funcionar de alguna manera, pero se sentirá constantemente incómodo con el flujo de pacientes que quieren preguntarle algo. Esto no funciona a largo plazo.



¿Por qué mencioné específicamente incluso el placer interior? Me parece que esto es necesario para un mayor desarrollo y, en principio, del proceso de aprendizaje. Realmente disfruto cuando logro completar alguna característica compleja y construir un modelo o calcular un parámetro importante. Disfruto cuando mi código es estéticamente agradable y está bien escrito. Por lo tanto, aprender algo nuevo es interesante y no requiere ninguna motivación significativa directamente.



“Ser tuyo” es la sensación de que querías hacer eso. Tengo una pequeña historia. Desde pequeño me gustó la música rock (y el metal, ¡SALMON!) Y cuánta gente quería aprender a tocar, y eso es todo. Resultó que no tenía ni oído ni voz, esto no me molestó en absoluto (y debo decir que esto no molesta a muchos artistas en el escenario), y cuando era un colegial compré una guitarra ... y quedó claro que realmente no me gustaba sentarme durante horas. y jugarlo. Fue difícil, todo el tiempo me parecía que estaba saliendo algún tipo de basura, no obtuve ningún placer con esto y solo me sentí pésimo, estúpido y completamente incapaz. Literalmente me obligué a sentarme para las clases debajo del palo y, en general, no estaba en la alimentación del caballo.



Al mismo tiempo, podía sentarme tranquilamente durante horas desarrollando algún tipo de juguete, animar algo en un flash (o algo más) con la ayuda de un guión, y estaba muy motivado para terminar elementos en el juego o lidiar con la mecánica del movimiento y / o conectando bibliotecas de terceros, complementos y todo lo demás.



Y en algún momento me di cuenta de que tocar la guitarra no es mío y, de verdad, me gusta escuchar, no tocar. Y mis ojos estaban en llamas cuando escribí juegos y código (escuchando todo tipo de metal en ese momento) y esto es lo que me gustaba entonces, y debería haber estado haciendo esto.



¿Todavía tienes preguntas?



Por supuesto, no pudimos pasar por todos los temas y preguntas, así que escriba sus comentarios y en forma personal, siempre me alegra tener preguntas.










All Articles