
Learning Data Mining with Python
Robert Layton
- Editorial
- Packt
- Año
- 2015
- Páginas
- ~344
- Nivel
- Básico
De qué trata
Guía técnica y práctica escrita por Robert Layton y publicada por Packt Publishing en 2015. El libro enseña a aplicar técnicas de minería de datos y aprendizaje automático utilizando el ecosistema de Python (Python 2.7 y 3.4 junto a Jupyter/IPython Notebook). Está dirigido a programadores y analistas de nivel principiante en ciencia de datos que ya tienen nociones básicas de sintaxis de Python y desean resolver problemas reales de extracción de información y predicción estadística, sin necesidad de dominar demostraciones matemáticas complejas de antemano.
El texto se sumerge de lleno en las librerías imprescindibles del análisis de datos en Python: scikit-learn, pandas, NumPy, NLTK y NetworkX. Comienza con implementaciones manuales del algoritmo OneR (One Rule) y análisis de afinidad básico para afianzar conceptos, para luego explotar las clases maestras de scikit-learn (fit, predict, Pipeline y transformadores personalizados). Enseña algoritmos de clasificación supervisada como K-Nearest Neighbors (KNN), árboles de decisión, Random Forests y Naive Bayes; reglas de asociación y minería de conjuntos frecuentes con el algoritmo Apriori; extracción, escalado y selección de características; procesamiento de lenguaje natural y análisis de sentimientos sobre publicaciones de redes sociales consumidas vía la API de Twitter; minería de grafos para redes sociales; visión computacional con redes neuronales simples; atribución de autoría mediante Support Vector Machines (SVM); y agrupamiento no supervisado con k-means.
El libro adopta una metodología de aprendizaje guiada por casos de uso y proyectos del mundo real: pronosticar resultados de partidos de baloncesto de la NBA a partir de estadísticas históricas, construir un motor de recomendación de películas sobre MovieLens, capturar y clasificar tuits en tiempo real, segmentar y descifrar caracteres de imágenes CAPTCHA con redes neuronales, atribuir la autoría de correos del dataset de Enron mediante estilometría y agrupar noticias de la web recolectadas con la API de Reddit. Su principal fortaleza radica en su orientación directa al código ejecutable y a flujos de trabajo funcionales. Como punto en contra, al estar publicado en 2015, varias librerías han evolucionado y requieren actualizar métodos deprecados para su ejecución actual. Conviene contar con agilidad en el uso de estructuras de datos y manejo de ficheros en Python.
- Python
- scikit-learn
- pandas
- NumPy
- Jupyter Notebook
- Árboles de decisión
- Random Forest
- Reglas de asociación (Apriori)
- Naive Bayes
- Clustering k-means
- Minería de texto (NLTK)
- NetworkX
¿Cómo enseña?
Con proyectos
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Predicción de resultados deportivos de la NBA
Modelo predictivo para pronosticar ganadores de partidos de la NBA utilizando estadísticas históricas procesadas con pandas y clasificadas mediante árboles de decisión y Random Forests en scikit-learn.
Sistema de recomendación de películas
Motor de recomendaciones basado en afinidad que utiliza el algoritmo Apriori sobre el conjunto de datos MovieLens para descubrir patrones de consumo y generar reglas de asociación de películas.
Análisis de sentimiento en redes sociales
Clasificador de opiniones que captura publicaciones en tiempo real a través de la API de Twitter y aplica técnicas de procesamiento de lenguaje natural con NLTK y Naive Bayes para determinar polaridad y temática.
Reconocimiento y resolución de CAPTCHAs
Herramienta de visión computacional que segmenta imágenes de CAPTCHAs generados sintéticamente y entrena una red neuronal artificial para clasificar caracteres individuales con apoyo de un diccionario.
Atribución estilométrica de autoría de textos
Clasificador que analiza frecuencias de palabras funcionales y n-gramas de caracteres en el corpus de correos de Enron para determinar la autoría de documentos mediante máquinas de vectores de soporte (SVM).
Agrupamiento y descubrimiento de noticias web
Flujo de trabajo que extrae artículos de noticias a través de la API de Reddit, limpia el texto de páginas web y aplica clustering k-means para descubrir temas emergentes de forma no supervisada.

