Cómo empezar con big data
Big Data
La ciencia de datos no tiene un sistema temático independiente, estadísticas, aprendizaje automático, minería de datos, bases de datos, computación distribuida, computación en la nube, visualización de información y otras tecnologías o métodos para tratar con datos.
Pero en un sentido estricto, creo que la ciencia de datos debe resolver tres problemas:
1.Preprocesamiento de datos (preprocesamiento de datos)
2. interpretación de datos; (interpretación de datos)
3.modelado y análisis de datos (modelado y análisis de datos)
Estos son los tres pasos principales de nuestro trabajo con datos:
1. Los datos sin procesar deben pasar por una serie de procesos de preprocesamiento de recolección, extracción, limpieza, clasificación, etc. para formar datos de alta calidad.
2. "a largo plazo" de los datos "Qué tipo", cuáles son las características y reglas;
3 según sus propias necesidades, como etiquetar y clasificar datos, hacer predicciones o extraer datos valiosos y difíciles. -Buscar información a partir de una gran cantidad de datos complejos. Para toda la información, los datos deben modelarse para obtener el resultado.
Estos tres pasos pueden no ser rigurosos. Cada gran paso puede tener diferentes pequeños pasos según el problema, pero según mi experiencia en los últimos años, si sigues esta idea general, los datos son generales. no habrá desviación.
Desde este punto de vista, la ciencia de datos es en realidad una tecnología compuesta. Dado que es una tecnología, comencemos con los lenguajes de programación. En aras de la simplicidad, solo hablaré de R y Python. Pero como estoy recomendando libros sobre ciencia de datos, no mencionaré aquí libros como los conceptos básicos de la programación R/Python, sino que iré directamente a libros relacionados con la ciencia de datos.
Programación R
Si solo desea obtener una comprensión preliminar del lenguaje R y su aplicación en el análisis de datos, también puede leer estos dos libros:
R en acción: Mi lenguaje R big data 101. De hecho, para una persona sin conocimientos básicos de programación, aprender este libro desde el principio puede suponer una curva de aprendizaje pronunciada. Pero si se combina con algunos materiales auxiliares, como los conceptos básicos oficiales de R (página web que muestra sus trabajos de visualización de datos), este libro le indica qué tipo de herramientas de visualización elegir y luego le explica cómo visualizar datos relacionales, series de tiempo y datos espaciales. , etc., y finalmente puede usar datos para contar historias. Si solo desea sentir qué es la visualización de datos, puede hacer clic en el enlace a continuación para experimentarlo. ¡Un recorrido por el zoológico de visualización! )
Aprendizaje automático y minería de datos
No diré mucho sobre esta parte, no porque no sea importante, sino porque es demasiado importante, por lo que recomiendo dos libros para Esta parte son todos "libros mundialmente famosos", son difíciles de leer y requieren un poco de lectura. De hecho, son una extensión y profundización del aprendizaje automático, los modelos gráficos probabilísticos (PGM) y el aprendizaje profundo. ) también es digno de estudio, especialmente porque este último es extremadamente popular ahora. Sin embargo, PGM es difícil, requiere demasiado cerebro e innecesario para leer la obra maestra de K. Daphne, y su aplicación en el campo de datos no es muy amplia. Actualmente, el aprendizaje profundo está avanzando más en la industria que en el mundo académico y sus aplicaciones en diversos campos están en pleno apogeo. Sin embargo, pasará algún tiempo hasta que estén disponibles materiales didácticos reconocidos, por lo que no se recomiendan PGM ni el aprendizaje profundo. libros.
El elemento del aprendizaje estadístico: si quieres aprender aprendizaje automático, si solo recomiendo un libro, te recomendaría esta obra maestra.
Los tres expertos, Hastie, Tibshirani y Friedman, han escrito con mucho cuidado. El edificio es lo suficientemente alto y grande, y la estructura es muy rigurosa e incluye mucho contenido de vanguardia. No sólo una revisión de libros de texto sobre sexo. (Los gráficos también están muy bien hechos y deberían crearse usando ggplot2 en lenguaje R.) Este libro se centra en explicar el modelo y el algoritmo en sí, por lo que es necesario tener una base matemática sólida para no ser demasiado agotador. lee este libro. De hecho, es muy importante dominar los principios de los modelos y algoritmos. Las bibliotecas de aprendizaje automático (aprendizaje estadístico) son ahora muy abundantes. Incluso si no comprende completamente los principios y procesos de un determinado modelo o algoritmo, aún puede realizar aprendizaje automático siempre que sepa cómo utilizar esas bibliotecas. Pero descubrirá que si ingresa los datos, el efecto nunca será bueno. Sin embargo, cuando comprende a fondo el modelo y el algoritmo en sí, cuando llama a esas bibliotecas, su estado de ánimo es completamente diferente y el efecto también es diferente.
Minería de datos: conceptos y técnicas, por Jiawei Han y Micheline Kamber Hay muchos libros de texto sobre minería de datos. La razón por la que recomiendo este libro de Han Jiawei es porque, aunque el punto de partida de su libro es la aplicación. , en principio no falta nada de contenido y el contenido es muy completo. Además se mantiene al día y se actualiza muy rápidamente. La que leí fue la segunda edición, que ya incluía análisis de redes sociales y otros contenidos de vanguardia en su momento. Ahora hay una tercera edición. Aún no la he leído, pero debería tener mucho contenido nuevo. De hecho, este libro no es difícil de leer, pero es bastante largo y lleva tiempo leerlo.
De hecho, un solo contenido de estos dos libros puede basarse en el ritmo de varios libros, como el método bayesiano. No es exagerado sacar dos o tres libros para hablar. Yo personalmente lo uso. Hay bastantes y, de hecho, hay muchos buenos libros. Pero no todos los científicos de datos necesitan usarlo, por lo que no entraré en detalles sobre este.
También hay algunos libros impresionantes:
Glosario de Big Data: explica principalmente la tecnología y las herramientas de procesamiento de big data, que cubren NoSQL, MapReduce, almacenamiento, servidores, bibliotecas de PNL y kits de herramientas. kits de herramientas de aprendizaje automático, kits de herramientas de visualización de datos, limpieza de datos, guías de serialización y más. En resumen, es una guía introductoria al big data al estilo de un diccionario.
Minería de conjuntos de datos masivos: este libro es una nota de conferencia sobre minería web en la Universidad de Stanford. Muchos de los contenidos se superponen con el libro de minería de datos de Han Jiawei, pero este libro explica los principios de diseño de MapReduce en detalle. (El algoritmo de clasificación central de Google durante su período de fundación, que ahora se optimiza y actualiza continuamente) también se explica con más detalle.
Desarrollo del talento analítico: el autor es un geek que se ha dedicado al trabajo con datos durante más de diez años. La redacción de blogs técnicos tiene un estilo muy personal y el contenido escrito es relativamente poco convencional. La experiencia relevante en procesamiento de datos puede Por experiencia, no tiene en cuenta los sentimientos de los principiantes en absoluto. Por ejemplo, hablará sobre qué hacer cuando el flujo de datos se actualiza demasiado rápido o cuando MapReduce no es útil, independientemente de si comprende los principios básicos. Por lo tanto, este libro no es adecuado para que lo lean principiantes. Este libro es en realidad una colección de las publicaciones del blog del autor, que utiliza la lógica de cómo convertirse en un científico de datos para conectar las publicaciones de su blog en los últimos años.
Pasado, Presente y Futuro de la Ciencia Estadística: Este libro es un libro conmemorativo publicado por el COPSS (Comité de Presidentes de Sociedades de Estadística, compuesto por líderes de las principales sociedades estadísticas internacionales) en el 50 aniversario de cada una de las. 50 estadísticos contribuyeron con uno o dos artículos. Algunos recordaron cómo se embarcaron en el camino de la estadística, algunos discutieron algunas cuestiones fundamentales de la estadística y algunos hablaron sobre su trabajo en estadística involucrados en investigaciones de vanguardia y algunos escribieron mensajes a los más jóvenes. generación. Un libro muy cariñoso.
Otra información
Harvard Data Science: Este es un curso de ciencia de datos online de H University. No lo he tomado, pero tiene buena reputación. Este curso cuesta alrededor de 8.000 dólares, que es el doble que el curso en línea de ciencia de datos de la Universidad de Washington, de 4.000 dólares, pero casi la mitad más barato que los 14.000 dólares de Stanford (y el de Stanford está más centrado en la informática). Si quieres aprender por tu cuenta, algunas personas amables ya han compartido diapositivas: (/folderview?id=0BxYkKyLxfsNVd0xicUVDS1dIS0kamp; usp=sharing) y tareas y soluciones: (/cs109/content)
PyData: PyData viene De varios dominios, las personas que usan Python para generar datos organizan una reunión cada año. Durante este período, varios expertos llevarán a cabo algunos seminarios o talleres a pequeña escala. Algunas personas amables han subido el video a github. (DataTau/datascience-anthology -pydata · GitHub)
Herramientas
R/Python/MATLAB (esencial): si está realizando análisis de datos y desarrollo de modelos, según mi observación, utilice estos tres La mayoría de las herramientas. R nació como un software desarrollado por estadísticos y, naturalmente, lo que hace gira en torno a la estadística. Aunque MATLAB no es una herramienta de análisis de datos profesional, debido a que muchas personas no son profesionales en el procesamiento de datos, todavía procesan datos para su propia experiencia en el dominio (especialmente informática científica, procesamiento de señales, etc.), y MATLAB es un dominio de experiencia extremadamente poderoso. Herramientas, mucha gente deja que MATLAB también asuma el trabajo de procesamiento de datos, aunque a veces parezca ineficiente. Aunque Python no es un software profesional para el análisis de datos, como lenguaje dinámico de alto nivel orientado a objetos, su ecosistema de código abierto permite que Python tenga una biblioteca extremadamente rica para que Numpy y Scipy implementen operaciones matriciales/cálculos científicos, lo que equivale a realizar operaciones matriciales/cálculos científicos. Las funciones de MATLAB, Pandas permiten que Python procese marcos de datos como R, y scikit-learn implementa el aprendizaje automático.
SQL (esencial): aunque ahora se dice que las bases de datos relacionales tradicionales como Oracle y MySQL son cada vez más incapaces de adaptarse al desarrollo de big data, para muchas personas procesan los datos que necesitan todos los días, pero pueden nunca tendrán la oportunidad de entrar en contacto con terabytes de datos durante su vida. En cualquier caso, ya sea que esté utilizando una base de datos relacional o no relacional, el lenguaje SQL es una habilidad que debe dominarse y qué base de datos utilizar depende de la situación específica.
MongoDB (opcional): Una de las bases de datos no relacionales más populares, NoSQL, mucha gente cree que MongoDB puede reemplazar completamente a mySQL. Es cierto que MongoDB es fácil de usar, altamente escalable y una necesidad en la era Web 2.0.
Hadoop/Spark/Storm (opcional): MapReduce es actualmente el marco informático distribuido más famoso y utilizado, establecido por Google.
Hadoop/Spark/Storm son todos sistemas informáticos distribuidos basados en el marco MapReduce. La diferencia entre ellos es que Hadoop usa discos duros para almacenar datos, Spark usa memoria para almacenar datos y Storm solo acepta flujos de datos en tiempo real sin almacenar datos. . En pocas palabras, si los datos están fuera de línea, si los datos son complejos y los requisitos de velocidad de procesamiento son promedio, use Hadoop, si necesita velocidad, use Spark, si los datos están en línea, transmita datos en tiempo real, use Storm;
OpenRefine (opcional): una herramienta de limpieza de datos fácil de operar desarrollada por Google que puede implementar algunas funciones básicas de limpieza.
Tableau (opcional): una herramienta de visualización de datos interactiva que es fácil de operar y se puede utilizar de inmediato. Y todos los gráficos están muy bien diseñados. La versión profesional cuesta 1.999 dólares y se puede utilizar de por vida. Se utiliza más en medios y relaciones públicas.
Gephi (opcional): Similar a Tableau, son herramientas de visualización interactiva que no requieren conocimientos de programación. Los gráficos generados además son estéticos y están diseñados con mucho esfuerzo. Mejor en la visualización de redes complejas.