
Machine Learning in Java
Bostjan Kaluza
- Editorial
- Packt
- Año
- 2016
- Páginas
- ~258
- Nivel
- Intermedio
De qué trata
Guía práctica escrita por Boštjan Kaluza y publicada por Packt que orienta a desarrolladores en el diseño e implementación de flujos de aprendizaje automático dentro del ecosistema Java (Java 8). Está dirigida a programadores e ingenieros de software con nivel intermedio a avanzado en Java que desean aprovechar sus conocimientos del lenguaje e incorporar analítica predictiva en sus sistemas empresariales sin tener que migrar hacia entornos basados en Python o R.
El contenido introduce el ciclo de vida del aprendizaje automático aplicado y examina exhaustivamente las principales librerías Java del área: Weka para flujos de minería de datos y clasificación; Apache Mahout para motores de recomendación a escala; Deeplearning4j (DL4J) para la construcción de redes neuronales profundas; MALLET para minería de texto y procesamiento de lenguaje natural (NLP); y herramientas auxiliares como Java-ML y Encog. A través de estas tecnologías, se abordan técnicas de preprocesamiento, selección de atributos, validación cruzada y evaluación mediante matrices de confusión y curvas ROC.
El aprendizaje se organiza a través de problemas prácticos de negocio: detección de fraudes y anomalías financieras, predicción de deserción de clientes (churn) mediante métodos de ensamble, un recomendador de productos con Mahout, clasificación de imágenes con redes convolucionales en Deeplearning4j y reconocimiento de actividades físicas a partir de datos de sensores móviles. Su mayor aportación es demostrar que Java posee un ecosistema maduro para machine learning empresarial con alto rendimiento; sin embargo, al datar de 2016, varias de las librerías tratadas (como los módulos originales de Mahout basados en MapReduce) han cedido terreno frente a frameworks modernos como Spark o TensorFlow Java.
- Java 8
- Weka
- Apache Mahout
- Deeplearning4j
- MALLET
- Clasificación
- Regresión
- Clustering
- Sistemas de recomendación
- Detección de anomalías
- NLP
¿Cómo enseña?
Con proyectos
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Detector de deserción de clientes (churn)
Modelo predictivo para retención de clientes implementado con ensambles de clasificadores en Weka para identificar perfiles en riesgo de abandono.
Motor de recomendación y análisis de afinidad
Sistema de recomendación de productos basado en filtrado colaborativo escalable desarrollado con Apache Mahout.
Reconocimiento de actividad física con sensores móviles
Clasificador en Java orientado a aplicaciones de eHealth que interpreta señales del acelerómetro de un smartphone para identificar la actividad del usuario.
Clasificador visual con redes neuronales
Red neuronal profunda implementada mediante Deeplearning4j orientada al reconocimiento y categorización de imágenes.
Detector de spam y modelado de tópicos
Pipeline de procesamiento de texto con MALLET que aplica técnicas de procesamiento de lenguaje natural para filtrar mensajes no deseados y segmentar temáticas.

