Java Data Mining

El Data Mining (podría traducirse por "Mínería de Datos") es el proceso de encontrar patrones y relaciones en un conjunto de datos mediante el desarrollo de un modelo que permita representarlos.  

Este modelo se desarrolla en función de muestras de datos y permitirá aplicar los patrones y relaciones sobre nuevos datos para predecir comportamientos individuales (clasificación y regresión) así como segmentar las muestras (clustering), determinar las relaciones e identificar características que pueden alterar una determinada predicción. Así, el término por el que también se refiere a estas técnicas es el de análisis predictivo.

Java Data Mining (JDM) es el estándar de Java para el desarrollo de aplicaciones de Data Mining basado en la especificación JSR 247. En este estándar se describe la API para las herramientas que permiten a los desarrolladores concluir satisfactoriamente el desarrollo de aplicaciones de Data Mining.

El objetivo de la especificación es proveer de una interfaz en Java que facilite el acceso al mundo de las aplicaciones de Data Mining, ya que las APIS existentes (hasta el momento de la publicación de la JSR) son privadas.  El uso de JDM permitirá que las aplicaciones de Data Mining en Java sean comprensibles por todos los desarrolladores en este lenguaje.

Componentes en la arquitectura de JDM 
Consta de tres componentes lógicos:

Application Program Interface, API

Es el componente visible por el desarrollador. Básicamente se trata de la definición de los métodos y objetos que un desarrollador de una aplicación de Data Mining deberá conocer.

Data Mining Engine (DME)

Es el componente que provee los servicios solicitados por los clientes de la API. En la arquitectura cliente - servidor, se conocerá como el Data Mining Server, una instancia del sistema de información general.

Mining Object Repository (MOR)

Es el componente que permite hacer persistentes los objetos al DME, el meta - modelo. Típicamente ficheros o bases de datos relacionales.

Términos y conceptos del Data Mining 

Los conceptos descritos en la especificación son:

Data Mining Functions: Las funciones de Data Mining se clasifican como supervisadas y no supervisadas. Las supervisadas son utilizadas típicamente para la predicción y necesitan de una respuesta conocida o un objetivo para cada caso en el proceso de generación del modelo. Las no supervisadas, no necesitan dicho objetivo y son usadas normalmente para la descripción de la estructura interna, relaciones o afinidades en el cuerpo de los datos. Otro punto de vista por lo tanto es la predicción o la descripción. JDM describe las siguientes Mining Functions
Clasificación
Regresión
Importancia de los atributos
Extracción de características
Detección de anomalías
Series temporales
Clustering
Asociación
Data Mining Tasks: Las tareas principales en el desarrollo con JDM son
Construcción del modelo
Prueba del modelo
Aplicación del modelo a los datos
Cálculo de estadísticas
Exportación e importación de objetos de mining
Data Mining Objects: JDM proporcióna la descripción de los principales objetos que intervienen en el código de una aplicación JDM que son clases relativas a:
Conexiones
URI
Tareas
Manejo de ejecución y estado
Objetos de datos físicos
Elementos de datos
Preferencias de construcción
Algoritmos
Preferencias de los Algoritmos
Modelos
Firmas de modelos
Detalles de modelos
Atributos lógicos
Datos lógicos
Conjuntos de datos estadísticos
Preferencias de aplicación (de modelos)
Matrices de confusión (para describir la fiabilidad de las predicciones de un modelo)
Restos
Matrices de costes
Mayores Probabilidades (facilitando la búsqueda de las características que intervienen en mayor medida sobre una predicción)
Agrupación de valores
Taxonomía de datos
Comparación de modelos
Reglas
Informes de verificación
Interfaz de configuración genérica
Transformaciones
Comandos
Representación física de datos
Mapeo de atributos
Creación de objetos de datos físicos
Persistencia
Referencias a objetos
Reflexión e introspección

 

Plataforma Java