Cómo fue estudiar Data Science en 2019


Este artículo es una traducción del artículo de Thomas Nild Cómo se siente aprender ciencia de datos en 2019




Visión del bosque (aleatorio) a través de árboles (decisiones)


Thomas nield Thomas Nield Seguir feb 4
10 minutos para leer

La inspiración para lo siguiente fue un artículo sobre cómo se siente aprender JavaScript en 2016. No te tomes este artículo demasiado en serio. Esto es sátira, así que no la trates como un consejo de vida. Como todos los consejos, algunos de ellos son útiles y otros son estúpidos. Este texto es solo una opinión muy similar a la definición de ciencia de datos.


Escuché eso por consejo, para ti. Gracias por conocerme, y gracias por el café. Sabes ciencia de datos, ¿verdad?


Bueno, si lo se. El año pasado, fui a PyData y O'Reilly Strata (conferencias sobre análisis de datos, aproximadamente por persona). Y en mi cuenta hay un par de modelos.


Sí, escuché que la semana pasada tuvo una gran presentación sobre aprendizaje automático para nuestra empresa. Mi colega dijo que fue muy útil.


Oh, ¿clasificador de fotos de perros y gatos? Si gracias.


En resumen, decidí que ya no puedo ignorar la ciencia de datos , la inteligencia artificial y el aprendizaje automático . Trabajé como analista y consultor durante muchos años, reorganizando números en Excel, creando tablas dinámicas y gráficos. Pero todo el tiempo me encuentro con artículos que dicen que AI tomará empleos, incluso para trabajadores de cuello blanco como yo.



Eso es todo lo que se necesita para convertirse en un científico de datos seguro (a partir de 2013). Bastante alcanzable, ¿eh? ( Fuente: Swami Chandrasekaran )


Busqué en Google cómo convertirme en una cita científica, encontré este "plan" y aprendí sobre la crisis existencial. Permítanme preguntar, ¿realmente tengo que dominar todo en este diagrama para convertirme en una cita científica?


Contestaré brevemente - no. Nadie más usa este plan. El es 2013. Ni siquiera tiene TensorFlow, y algunas rutas simplemente se pueden tachar. Creo que ya en ese momento la "ciencia de datos" se volvió más compleja y especializada. Sería mejor utilizar un enfoque diferente.


De acuerdo, un poco mejor. Entonces, ¿debería volver a la escuela de todos modos? Leí en alguna parte que muchos científicos tienen al menos una maestría. ¿Debo obtener una maestría en ciencia de datos?


Señor, ¿por qué necesitas esto? En general, debe tener cuidado con las áreas de capacitación "ciencia de datos", que en general rediseñan los cursos de "análisis de negocios". Además, los académicos modernos tienden a quedarse atrás de la industria y pueden enseñar tecnología obsoleta. Para mantenerse al día, es mejor que estudie usted mismo en Coursera, Stepik o Khan Academy.


Aquí es cómo.


Aunque si vas a la universidad, ¿quizás entonces a física o métodos matemáticos de operaciones de investigación? Es dificil de decir. Por extraño que parezca, muchos científicos buenos que conozco provienen de estas áreas. Es posible que pueda encontrar un buen programa de capacitación en ciencia de datos. No sé, habla con este doctor en ciencias, él te dirá su posición.


Entonces, ¿cómo se inicia la autoeducación? Alguien en LinkedIn dijo que aquellos interesados ​​en la ciencia de datos deberían comenzar explorando Linux. Luego, en Twitter, leí que otro tipo insistió en la fecha en que los científicos deberían estudiar Scala, no Python o R.


Bueno, este tipo se congeló en LinkedIn. En cuanto al "experto" de Scala, si bucea de cabeza, por favor, pero no en este grupo. Confía en mi Ya 2019 en el patio. Scala no ha existido en la comunidad de ciencia de datos durante mucho tiempo. Y si lo fuera, PySpark no habría aparecido. Y seguramente no escuches a los hipsters como el tipo que siempre habla de Kotlin.


Ok! ¿Qué hay de R? Parece que a la gente le gusta.


R es bueno en modelos matemáticos, y nada más. Con Python, obtendrá mucho más de sus inversiones en capacitación y podrá realizar una gama más amplia de tareas, como recopilar datos y configurar servicios web.


Pero R todavía ocupa un lugar bastante alto en Tiobe , y tiene toneladas de seguidores y recursos. Úsalo, ¿te haces daño?


Mire, puede usar R. Si solo le interesan las matemáticas, es, por supuesto, discutible, pero mejor, pero aún mejor, funciona con Tidyverse . Pero la ciencia de datos sigue siendo mucho, MUCHO más que matemáticas y estadísticas. Créeme, en Python en 2019 puedes ir mucho más lejos.


Ok, entonces ... Aparentemente estoy empezando a aprender Python.


No te arrepentirás.


¿Python es complicado? ¿Me quedaré a flote con él cuando los robots se hagan cargo?


Bueno, por supuesto, Python es un lenguaje bastante simple. Con él, puede automatizar muchas tareas y hacer nishtyaki genial . Pero ni siquiera necesitas Python. La ciencia de datos es mucho más que scripts y aprendizaje automático.


A que te refieres


Bueno, estas son solo herramientas. Utiliza Python para obtener información de los datos. A veces requiere aprendizaje automático, pero en la mayoría de los casos no. La ciencia de datos puede simplemente significar crear un gráfico. De hecho, ni siquiera necesita aprender Python, solo puede usar Tableau. Anuncian que pueden "hacer que todos en su organización sean una cita Científica" si solo usan su producto.



Tableau confía en que pueden resolver el problema del personal de la falta de fecha de los científicos.


¿Detener qué? Entonces, solo estoy comprando una licencia para Tableau, ¿y ahora soy una cita científica? Bueno, hablemos de esta oferta comercial con un toque de escepticismo. Tal vez soy un ignorante, pero sé que la ciencia de datos no solo está creando hermosas visualizaciones. También puedo hacer esto en Excel.


Por supuesto Sin embargo, uno debe admitir que este es un gran marketing. Trazar gráficos es, por supuesto, divertido, pero extrañan todo el dolor y mucho tiempo que lleva limpiar, procesar, modificar y cargar datos.


Sí, y por eso sospecho que hay valor en aprender el código. Hablemos de Python.


Espera un minuto, en realidad. Quizás deberías aprender Alteryx.


Que?


Existe otro software llamado Alteryx que le permite limpiar, procesar, modificar y descargar datos. Esto es genial porque usa Arrastrar y soltar para combinar datos y ...



Alteryx también promete "ciencia de datos" sin código.

Oh Dios, por favor detente. No más arrastrar y soltar. Quiero aprender Python, no Alteryx o Tableau.


De acuerdo, lo siento. Solo intentaba hacerte la vida más fácil, evita la codificación. Quizás hice esto también porque nuestra compañía compró licencias que deberíamos usar. Pero, en cualquier caso, para usar Python, debe estudiar varias bibliotecas, como Pandas para administrar DataFrame y matplotlib para crear gráficos. Generalmente tacha matplotlib. Use Plotly. Utiliza d3.js y generalmente es mucho mejor.


Sé algunas de las palabras que dijiste. Pero, ¿qué es un DataFrame?


Bueno, esta es una estructura de datos en forma de tabla con filas y columnas. Puede hacer todas estas geniales transformaciones, tablas dinámicas y agregaciones con un DataFrame en Python.


Espera, entonces, ¿cómo difiere esto de Excel? He estado haciendo todo esto desde que me gradué de la universidad. ¿Esto significa que ya soy una cita científica?


Si se siente halagado de llamarse así, por supuesto. Declararía públicamente este autoproclamado título cada vez que fuera a una fiesta o escribiera un currículum.


Entonces, ¿qué hace a Python diferente de Excel?


Python es diferente en que todo se puede hacer en una computadora portátil Jupyter . Puede llevar a cabo todas las etapas del análisis de datos y la computadora portátil visualiza cada paso. Es casi como escribir una historia que puedes compartir con otros. Y la comunicación y las historias, después de todo, son una parte muy importante de la ciencia de datos.


Suena como PowerPoint. Ya hago esto Estoy muy confundido


Oh dios no. Las computadoras portátiles son mucho más automatizadas y optimizadas, y esto facilita el seguimiento de cada paso del análisis. Pero si lo piensas bien, acabo de recordar que a algunas personas no les gustan las computadoras portátiles, porque el código que contienen no es muy conveniente para reutilizar. Es más fácil distribuir el código entre módulos fuera de las computadoras portátiles si necesita convertirlo en un producto de software.


Entonces, ¿la ciencia de datos también es desarrollo de software?


Tal vez, pero no nos distraigamos con esto. Hay cosas mucho más urgentes que deben aprenderse al principio. Para hacer ciencia de datos, obviamente necesitas datos, datos.


Por supuesto


Y no hay nada mejor para un principiante que recopilar datos en la red de las mismas páginas de Wikipedia que pueden descargarse en su disco duro.


Espera, ¿qué estamos tratando de lograr de nuevo?


Bueno, estamos tratando de obtener algunos datos para practicar. Raspar páginas web y analizarlas con Beautiful Soup nos dará toneladas de datos de texto no estructurados para trabajar.


Estoy confundido Acabo de terminar de leer un excelente libro SQL de 130 páginas , y pensé en consultar tablas, no desechar Internet. ¿No es SQL una forma típica de acceder a los datos?


Bueno, podemos hacer muchas cosas interesantes con datos de texto no estructurados. Podemos usarlos para clasificar estados de ánimo en mensajes de redes sociales o para otro procesamiento de lenguaje natural. NoSQL es ideal para almacenar este tipo de datos, porque podemos almacenar grandes cantidades de datos sin preocuparnos de que sean adecuados para el análisis.


Escuché el término NoSQL. Entonces, ¿es SQL? Anti-SQL? Espera, creo que esto tiene algo que ver con Big Data, ¿verdad?


Bueno, en primer lugar, "big data" es de 2016. La mayoría de las personas ya no usan este término, por lo que no es bueno decir eso. Al igual que muchas tecnologías exageradas, pasó su pico de popularidad y encontró aplicación en solo unos pocos lugares. Pero NoSQL es esencialmente el resultado del movimiento de "big data" que ha nutrido plataformas como MongoDB.


OK, pero ¿de dónde viene el nombre "NoSQL"?


NoSQL significa "no solo SQL" y admite estructuras de datos fuera de las tablas relacionales. Sin embargo, las bases de datos NoSQL, por regla general, no usan SQL, sino su propio lenguaje de consulta. Aquí está MongoDB en comparación con SQL:



Dios mío, esto es terrible. ¿Entonces dice que cada plataforma NoSQL tiene su propio lenguaje de consulta? ¿Qué hay de malo con SQL?


Te tengo Con SQL, todo está en orden, excepto que ya tiene décadas. La locura por los datos no estructurados se ha convertido en una oportunidad para hacer algo nuevo y escalar ampliamente de formas previamente inaccesibles. Sin embargo, creo que cada vez más personas llegan a la conclusión de que hay un punto en guardar SQL . Esto simplifica enormemente la analítica. Tanto es así que muchas tecnologías NoSQL y "big data" han sido codificadas para agregar alguna forma de SQL . Después de todo, SQL es un lenguaje bastante universal, incluso si es difícil de usar para algunas personas.



Wow, vale Entonces, me di cuenta de que aprender NoSQL para mí, como fecha de un científico, no es crítico, a menos que mi trabajo requiera lo contrario. Parece que estoy seguro conociendo solo SQL.


Cuanto más lo pienso, más creo que sí, tienes razón, pero solo hasta que te atraiga convertirte en ingeniero de datos.


Ingeniero de datos?


Sí, la fecha de los científicos fue como dividida en dos profesiones. Los ingenieros de datos trabajan con sistemas de producción y ayudan a hacer que los datos y modelos sean adecuados para su uso, pero están menos involucrados en el aprendizaje automático y el modelado matemático, que, a su vez, sigue siendo la fecha para los científicos. Esto probablemente fue necesario, ya que la mayoría de los recursos humanos y los reclutadores no ven más allá del título de "Fecha científico" . Piénselo, si quiere ser ingeniero de datos, le prestaría especial atención a aprender Apache Kafka y no NoSQL. Apache Kafka ahora es solo una bomba.
Ahora, este diagrama de Venn te ayudará. Para obtener el título "Científico de citas", debe estar en algún lugar del círculo matemático / estadístico , e idealmente, en la intersección con otra disciplina.



Diagrama de Venn de ciencia de datos

Bueno, ahora no tengo idea si quiero ser un científico de datos o un ingeniero de datos. Sigamos adelante. Entonces, volviendo, ¿por qué analizamos las páginas de Wikipedia?


Bueno, sirven como entrada para el procesamiento del lenguaje natural, y con su ayuda puedes hacer, por ejemplo, bots de chat.


¿Cómo es Tay de Microsoft? ¿Será este robot lo suficientemente inteligente como para predecir las ventas y ayudarme a lanzar nuevos productos con la cantidad correcta de inventario? ¿Existe el riesgo de que inevitablemente se convierta en racista?


Teóricamente, la hay. Si lo alimenta con artículos de noticias, es posible que pueda crear un modelo que defina algunas tendencias y, como resultado, brinde recomendaciones sobre decisiones comerciales. Pero esto es REALMENTE difícil. Piensa con cuidado, esta puede no ser la mejor opción para comenzar.


Entonces, bueno ... ¿el procesamiento del lenguaje natural, los bots de chat y los datos de texto no estructurados pueden no ser para mí?


Tal vez, pero tenga en cuenta que la ciencia de datos está en todas partes ahora. Las compañías de Silicon Valley como Google y Facebook manejan una gran cantidad de datos no estructurados (como publicaciones en redes sociales y artículos de noticias), y obviamente tienen un gran impacto en la definición de "ciencia de datos". Bueno, el resto, como nosotros, utiliza datos de transacciones comerciales en forma de bases de datos relacionales y tecnologías menos inspiradoras como SQL.


Eso suena creíble. Supongo que dedican sus talentos en el campo de los datos no estructurados principalmente para la extracción de mensajes de usuario, correos electrónicos, historias con fines publicitarios y otros fines viles.


Así es Ya sabes, el ingenuo clasificador de Bayes puede parecer interesante y útil para ti. Puede tomar el texto y predecir la categoría para él. Esto es bastante fácil de implementar desde cero:



Categorización de cuerpos de texto usando un ingenuo clasificador de Bayes

Tienes razón, él es genial. Pero aparte de esto, no veo ningún valor en los datos no estructurados.


Entonces sigue adelante. Entonces está trabajando con datos tabulares: hojas de cálculo y un montón de números grabados. Casi parece que quieres hacer predicciones o análisis estadísticos.


¡Sí, finalmente hemos descubierto algo! Finalmente, resolveremos problemas reales. Entonces, ¿ahora comenzará el tema de las neuronas y el aprendizaje profundo?


E-gay, sostén los caballos. Iba a sugerir comenzar con distribuciones normales con desviaciones medias y estándar. Tal vez calcule las probabilidades con una puntuación z y una o dos regresiones lineales.


Pero, de nuevo, ¡puedo hacerlo todo en Excel! No puedo?


Bueno ... um ... sí, es cierto, puedes hacer mucho de lo anterior en Excel. Pero al escribir guiones, obtienes más flexibilidad.


¿Cómo con VBA? Visual básico


Bien, comenzaré de nuevo y fingiré que no dijiste eso. Excel tiene operadores estadísticos realmente excelentes y modelos de regresión lineal decentes. Pero si necesita hacer una distribución o regresión normal separada para cada categoría de elementos, es mucho más fácil escribir un script de Python, en lugar de crear fórmulas infernales, cuya longitud puede convertirse en una métrica de la distancia a la Luna.



Cuando avanzas en Excel, infliges dolor a todos los que trabajan contigo. (Cuando te enfrías en sobresalir, todos a tu alrededor sienten dolor)

Puedes usar la genial biblioteca scikit-learn . Con él, obtendrá oportunidades mucho más potentes para diversas regresiones y aprendizaje automático.


Ok Entonces, parece que ahora la conversación se está moviendo hacia el campo del modelado matemático. Aquí hay un montón de problemas matemáticos frente a mí, ¿por dónde empiezo?


Bueno, en la visión tradicional, el álgebra lineal es la piedra angular de gran parte de la ciencia de datos, y es con ella con lo que debe comenzar. Multiplicación y adición de matrices (el llamado producto escalar): esto es lo que hará todo el tiempo, y hay otros conceptos importantes, como los determinantes y los vectores propios. 3Blue1Brown es casi el único canal donde puedes encontrar una explicación intuitiva del álgebra lineal.



Entonces ... la multiplicación / adición de una matriz a otra, ¿esto es lo que haré principalmente? Suena realmente inútil y aburrido. ¿Puedes dar un ejemplo?


Bueno ... aprendizaje automático! Al hacer una regresión lineal o construir su propia red neuronal, tendrá que realizar multiplicaciones y escalas de matrices con valores de peso aleatorios muchas veces.


Ok, ¿entonces las matrices tienen algo que ver con el marco de datos? Suenan como


Espera un minuto ... lo repensé. Volvamos a esta declaración. En la práctica, no necesitas hacer álgebra lineal.



Oh vamos! Enserio? Entonces, ¿debería estudiar álgebra lineal o no?


En la práctica, probablemente no necesite aprender álgebra lineal. Las bibliotecas como TensorFlow y scikit-learn harán todo por usted. Al final, es realmente agotador y aburrido. Por supuesto, puede comprender y tener una idea de cómo funcionan estas bibliotecas. Pero por ahora, simplemente comience a usar bibliotecas de aprendizaje automático e ignore por completo el álgebra lineal.


Tu inseguridad me preocupa. ¿Puedo confiar en ti?


Mostrar al menos un poco de respeto! Acabo de sacarte de otra piscina. En absoluto


Ooh


Y sin embargo, hasta que lo olvidé. Usted mismo no usa TensorFlow. Úselo con Keras porque TensorFlow es mucho más fácil con él.


Si regresa, ¿la regresión lineal está realmente relacionada con el aprendizaje automático?


Sí, la regresión lineal se incluye en la lista de herramientas de "aprendizaje automático".


Genial, hago esto todo el tiempo en Excel. Entonces, ¿puedo llamarme también un profesional de aprendizaje automático?


* Suspiro * técnicamente, sí. Pero es posible que desee ampliar un poco sus horizontes. Verá, el aprendizaje automático (independientemente de la tecnología) a menudo consta de dos tareas: regresión y clasificación. Técnicamente, la clasificación es regresión. Árboles de decisión, redes neuronales, el método del vector de soporte, regresión logística y sí ... regresión lineal: todos se ajustan a las curvas. Cada modelo tiene pros y contras según la situación.


Espera, ¿el aprendizaje automático es solo una regresión? ?


. , , , , , . — . , , 2-3 , , .



, , . — ?


. . : . , () , , . , , , , , .


.


(!)


, ? ? ?


, , , , data science . “ ” .


, . , ?


, . , . «», , .


?


, , . , . , , , .


, ?


* * - , . , , . , : , , . .


, - , , , ?


, . , . … , « », , , . , .


, — , , ? … ? «», ?


, , ( ) , , . , , .


. , DeepMind , StarCraft! ! , ?


StarCraft ?


( )


, StarCraft ?



StarCraft, - StarCraft? : StarCraft. , , .


, . , … , , -. , , — . .


- Data Science , . , .


, ? «data science», … … . .


, . .


Gracias Necesito dar un paseo y pensarlo. Si entiendo algo, creo que mi trabajo en Excel califica como "ciencia de datos". Aunque no sé si quiero tener un título de fecha de científico. Parece que podría ser cualquier cosa. Puedo pasar mi tiempo en otra cosa. Esperemos que el próximo "Nuevo éxito" que viene después de la ciencia de datos sea menos loco.


¿Quizás deberías trabajar un tiempo en IBM?


Por qué


¿Has oído hablar de la computación cuántica?


Source: https://habr.com/ru/post/478688/


All Articles