Red de conocimiento informático - Material del sitio web - Cómo convertirse en un científico de datos

Cómo convertirse en un científico de datos

Creo que hay varios aspectos importantes

1) Aprende bien Python.

Ahora casi todos los datos de la empresa se pueden proporcionar a través de API, y las capacidades de procesamiento de datos de Python son poderosas y convenientes. Además, Python también es único en muchos algoritmos de aprendizaje automático. Además, es conciso y conveniente para un desarrollo iterativo rápido. Puede ver el efecto después de escribir un algoritmo en 15 minutos.

Además, py tiene una sensación un poco fresca. Cualquier programa se puede escribir usando MATLAB y C++, pero realmente no conozco a nadie que esté dispuesto a meterse en esa caja poco genial:D

El procesamiento de entradas irregulares también le da a Python una gran ventaja. . En términos generales, en mi trabajo diario actual, todos los datos se almacenan en texto plano pero sin formato (texto sin formato, datos no estructurados). El problema es que estos textos no se pueden utilizar directamente como entrada para varios algoritmos. Necesita

segmentación de palabras y segmentación de oraciones

extraer funciones

organizar los datos faltantes. /p> p>

Deshágase de los valores atípicos

En estos tiempos, Python es una herramienta mágica. Puede encontrar las herramientas correspondientes directamente en scikit-learn para los pasos 1 a 4 aquí. Además, incluso si tiene que escribir un algoritmo personalizado para manejar ciertas necesidades especiales, solo se necesitan cien líneas de código.

En resumen, para los desafíos que enfrenta la ciencia de datos, Python le permite resolver el problema en cuestión de manera rápida y rápida, en lugar de preocuparse por demasiados detalles de implementación.

2) Aprenda bien el aprendizaje estadístico

Es un poco difícil de pronunciar. El concepto de aprendizaje estadístico es "método de aprendizaje automático estadístico".

La estadística y la informática han ido paralelas durante décadas, y cada una ha creado una serie de herramientas y algoritmos creados por la otra. Pero hasta hace poco, la gente empezó a darse cuenta de que lo que los informáticos llaman aprendizaje automático es en realidad predicción en estadística. Entonces las dos disciplinas comenzaron a fusionarse nuevamente.

¿Por qué es importante el aprendizaje estadístico?

Porque el aprendizaje automático puro se centra en las capacidades e implementación de predicción de algoritmos, pero las estadísticas siempre han enfatizado la "interpretabilidad". Por ejemplo, si la emisión de acciones de Weibo ha aumentado un 20% hoy, puede aplicar sus dos modelos para predecir si las acciones subirán o bajarán en el ejemplo de Sina y luego mostrárselo a su jefe.

El Modelo-1 tiene una capacidad de predicción del 99%, lo que significa que predice correctamente el 99% de las veces, pero el Modelo-2 tiene un 95%, pero tiene un atributo adicional de excepción: puede decirle por qué. las acciones suben o bajan.

¿Cuál pondría primero tu jefe? Pregúntate ¿cuál elegirías?

Obviamente esto último. Porque aunque el primero tiene un fuerte poder predictivo (aprendizaje automático), no tiene poder explicativo (explicación estadística).

Como científico de datos, el 80% de las veces necesitas explicar a los clientes, equipos o jefes por qué A es factible y B no es factible. Si les dices: "Mi red neuronal actual tiene un poder predictivo muy bueno, pero no puedo explicarlo en absoluto", nadie estará dispuesto a creerte.

Para ser más específicos, ¿cómo aprender estadística?

Aprenda primero la probabilidad básica. Si se lo devolviste al profesor de la universidad (como yo), puedes comenzar con el Libro de texto 1 de teoría de la probabilidad del MIT. Lea y complete todos los ejercicios de los Capítulos 1 al 9. (p.d. Durante una entrevista en Twitter, me hicieron una pregunta sobre la probabilidad posterior de conseguir la pelota, que tomé de este libro).

Comprender las pruebas estadísticas básicas y sus supuestos, y cuándo se pueden utilizar.

Para comprender rápidamente la terminología del aprendizaje estadístico y para qué se utiliza, lea este libro 5.

Aprende ideas estadísticas básicas. Hay estadísticas frecuentistas y estadísticas bayesianas. Las obras representativas del primero son 2 y las del segundo 3.

El primero es el libro sagrado del aprendizaje estadístico, que es más frecuentista, y el segundo es el libro sagrado del reconocimiento de patrones, casi desde una perspectiva puramente bayesiana. Tenga en cuenta que 2 tiene una versión gratuita y el autor la ha puesto toda en línea. Y hay una versión simple, si crees que no puedes ver 2 directamente, puedes comenzar primero con su versión simple. La versión simplificada 4 es un libro de texto popular utilizado por el autor para iniciar cursos en Coursera. Es bastante simple (pero aún tiene muchos aspectos destacados y es fácil de entender). Para 3, al principio es difícil masticarlo directamente, pero te beneficiarás mucho al masticarlo.

Tenga en cuenta que si busca los libros anteriores, casi todos podrá encontrar archivos PDF subidos por otras personas a Internet. Los estudiantes calificados pueden comprar una versión impresa para leer, lo que brindará una mejor experiencia y respaldará al autor. Compré versiones impresas de todos los libros, pero sé lo inconveniente que es comprar un libro en China (y lo cara que es la versión original).

Leer los libros anteriores es un proceso a largo plazo. Pero después de leerlo una vez, personalmente creo que vale la pena. Si solo sabe cómo utilizar algunos paquetes de software, definitivamente no se convertirá en un científico de datos calificado. Porque mientras el problema cambie ligeramente, no sabes cómo solucionarlo.

Si crees que eres un mal científico de datos (yo también), haz las siguientes preguntas. Si no puedes responder 2 de ellas, entonces eres como yo, en realidad sigues siendo un científico de datos. chico malo. Es solo una broma, sigue estudiando.

¿Por qué es necesario estandarizar las características en las redes neuronales en lugar de incluirlas directamente?

¿Se requiere validación cruzada para que Random Forest evite el sobreajuste?

¿Es una mala elección utilizar el bayesiano ingenuo para embolsar? ¿Por qué?

Cuando utilizo el método de conjunto, especialmente el árbol de aumento de gradiente, ¿necesito hacer que la estructura del árbol sea más compleja (alta varianza, bajo sesgo) o más simple (baja varianza, alto sesgo)? ¿Por qué?

No importa si estás empezando, es normal no poder responder a estas preguntas. Si eres una puta, comprende por qué todavía estás muy por detrás de los científicos de datos de primera clase: porque no comprendes cómo funciona cada algoritmo. Cuando quieras utilizar ese algoritmo para resolver tu problema, te enfrentarás a un problema. Tantos detalles que simplemente no puedes comenzar.

Por cierto, admiro un restaurante de sushi llamado Jiro. Su gerente abrió el restaurante más caro del mundo en la estación de metro más discreta de (¿Tokio?). ¿Cómo? Practicando cómo hacer sushi durante 70 años. ¡70 años! Excepto en días festivos que no sean funerales y bodas, el gerente de la tienda debe venir todos los días y continuar practicando la preparación de sushi después de trabajar 8 horas.

De hecho, lo mismo ocurre con el aprendizaje de la ciencia de datos. Simplemente cálmate y practica la artesanía.

3) Aprender procesamiento de datos

Este paso no tiene que realizarse independientemente del 2). Obviamente, a medida que lea estos libros, comenzará a encontrar varios algoritmos y también se mencionarán varios datos en los libros aquí. Pero lo menos valioso en esta era son los datos (por favor, ¿por qué siguen utilizando los "datos de precios de la vivienda de California" de la década de 1980? Lo que es valioso es el valor que se aporta a la toma de decisiones después del análisis de los datos). Entonces, en lugar de insistir en un conjunto de datos tan trágico de la década de 1980, ¿por qué no recopilar algunos propios?

Empiece a escribir un pequeño programa y utilice la API para rastrear tweets aleatorios en Twitter (o Weibo...)

Segmentación del código del texto de estos tweets y ruido del proceso (como como anuncios) )

Utilice algunas etiquetas ya preparadas como etiquetas, como cuántas veces se reenviará este tweet en un tweet

Intente escribir un algoritmo para predecir cuántas veces se reenviará un tweet

Pruebas en conjuntos de datos invisibles

El proceso anterior no ocurre en un día, especialmente cuando recién estás comenzando.

Tómate tu tiempo, la paciencia es más importante que el progreso.

4) Conviértete en un ingeniero completo

En un entorno corporativo, como novato, es poco probable que recibas un trato preferencial cuando necesites escribir una visualización de datos. Cuando llegue el momento , busque un colega que lo haga por usted. Cuando necesite escribir y guardar datos en la base de datos, busque otro colega que lo haga por usted.

Además, incluso si tienes esta condición, cambiar de contexto con frecuencia te hará perder más tiempo. Por ejemplo, le pide a un colega que inserte datos en la base de datos por la mañana, pero él solo lo hace por la tarde. O necesita mucho tiempo para explicarle cuál es la lógica y cuál es el método de almacenamiento.

La mejor manera de cambiar es convertirse en un trabajador integral. No necesitas ser un experto en todos los aspectos, pero sí saber un poco de todo. Consulta la documentación y podrás empezar.

Posibilidad de utilizar NoSQL. Especialmente MongoDB

Aprenda visualización básica, use html y javascript básicos, conozca la biblioteca de visualización d36 y highchart7

Aprenda algoritmos básicos y análisis de algoritmos, y sepa cómo analizar la complejidad de los algoritmos. Complejidad media, peor complejidad. Cada vez que termine de escribir un programa, calcule el tiempo que le llevará (use análisis de algoritmos para predecir). Recomiendo el curso 8 de algoritmo de Princeton (tenga en cuenta que puede comenzar desde el algoritmo 1, que tiene dos versiones)

Escriba un servidor básico y use la plantilla básica de flask9 para escribir una columna vertebral que le permita realizar análisis visuales. .

Aprenda a utilizar un IDE, VIM o pycharm conveniente.

4) ¡Lee, lee, lee!

Además de trabajar a puerta cerrada, también necesitas saber qué están haciendo otros científicos de datos. Con todo tipo de nuevas tecnologías, nuevas ideas y nuevas personas que surgen, necesita comunicarse con ellos y ampliar sus conocimientos para poder afrontar mejor los nuevos desafíos laborales.

Por lo general, los científicos de datos muy poderosos ponen sus blogs en línea para que todos puedan visitarlos y admirarlos. Recomiendo algunos que leo a menudo. Además, hay muchos científicos de datos poderosos en el círculo académico. No tengas miedo de leer artículos. Después de leer algunos artículos, pensarás: ¡Ja! ¡Puedo pensar en esto también!

Uno de los beneficios de leer blogs es que si te lo pasas bien comunicándote con ellos, ¡incluso puedes conseguir una pasantía con ellos!