2-Sphere, un diseño de IA con aprendizaje por cálculo predictivo

27 01 2011
Hace unos años diseñé un engendro de cálculo predictivo denominado (módulo “2-Sphere”) y que representó un buen avance para el incremento de calidad y previsión sobre cifras de procesos/evaluaciones de grandes cantidades de datos. Ágil, veloz, consume pocos recursos, etc…tuve pruebas tangibles de su funcionamiento y lo llegué a integrar por ejemplo en algunos trabajos (Basilea, evaluación de empresas, créditos, capital, etc… ) y con grandes resultados. Alertas sobre datos, muy sensibles y a una gran velocidad de respuesta!
Paso a detallaros los conceptos teóricos de esta propuesta predictiva, basada en un intento de mezclar características de inteligencia artificial y sistemas expertos.
El foco de estudio es cualquier variable numérica que pertenezca a un origen de generación evolutivo, supuestamente con origen de alguna función temporal.

1.-  BASE TEÓRICA DEL ANALISTA EXPERTO 2-SPHERE. 

Justo al finalizar cualquier proceso de cálculo sería interesante poder validar
el volumen de cambio producido contra la función teórica ajustada con toda la historia “memorizada” de la variable estudiada.

Con este punto implementado en cualquier sistema informático/estadístico/de control, se podrán añadir las validaciones de cambios bruscos, o de masa que sean necesarias y/o deseadas.

El núcleo de cálculo para predecir la evolución de una variable dada se ha denominado núcleo 2-Sphere, por su funcionalidad de un doble entorno/disco a la hora de aplicarse.
En base a si se cumplen o no las reglas/predicciones anclaremos las medidas de alerta necesarias. En la puesta en marchase generaron alertas vía mail y estadísticas según la gravedad del asunto.

Las predicciones se resumen en el uso de dos “esferas/anillos” concéntricas (2-Sphere), donde se englobarían los valores más o menos aceptados. En caso de no caer el valor en la zona esperada saltarían las alertas deseadas. Zonas o casos: Un anillo interior o de nivel 1 (local) representa el margen más correcto de datos esperados. Un anillo secundario o de nivel 2(global) representa el margen aceptable de datos esperados. Fuera de los dos anillos se considerarán datos no esperados. Por lo tanto, consideraremos tres niveles de alertas: Un nivel de alerta bajo o nulo: caerán la mayoría de casos con menos criticidad (por ejemplo, modelos especificados con mailing de estadisticas descriptivas, etc…) Un nivel de alerta medio (por ejemplo, sobrepasar anillo-1 … ) Un nivel de alerta alto: caerán menos casos pero los de más criticidad (por ejemplo, sobrepasar anillo-2 … ) Explicación gráfica de su uso. El núcleo predictivo calcula un entorno local, en cuyo caso de no cumplirse podríamos alertar con un nivel medio.
El mismo proceso nos devuelve también un entorno global de aceptación, en cuyo caso de no cumplirse podríamos alertar con un nivel alto de alerta.
Se puede pensar también en incluir un nivel-bajo de alerta, donde podrían saltar estadísticas varias, media, moda, cuartiles, etc… dependiendo del modelo, tipologías varias, etc… para estos casos, habría que revisar la incorporación y viabilidad de algún entorno de validaciones poblacionales. Adjunto un ejemplo real de la evolución de las esferas para una variable en el tiempo:
Como se puede observar,  con el tiempo, la situación tiende a estabilizarse, y se asumen ciertos cambios en la tendencia de la curva de la función que dirige la variable de estudio.
Tambien podemos observar como, en base a estos cambios (aceptados) las esferas van aumentando de grosor, ampliando el rango de valores adecuados.

En resumidas cuentas el núcleo predictivo se podría especificar como una base de datos de conocimiento y un módulo de cálculo predictivo que hace uso de esa base de datos de conocimiento y de los valores nuevos para finalmente generar resultados/alertas y actualizar la base de datos de conocimiento.

Es como un “autómata” que entrenamos para que “aprenda” y después reconozca extraños comportamientos en variables y así nos diga si pasa o no algo raro en alguna variable de algún cálculo dado. 

También se puede incluir la posibilidad de manipular los datos de la BBDD de forma supervisada, mediante transaccionales por ejemplo. Mínimo serán necesarios unos mecanismos de rollback de 1 a N estados atrás (queda concretar la profundidad de dicha restauración, solo limitado por los recursos).

Algo así como unos procesos de supervisión para los 3 casos de alerta GRAVE que se nos puedan dar:


Caso 1) – el modelo matemático en el que se basa una variable ha cambiado radicalmente. ACCION: “reseteo” de la memoria para esa variable y los casos que estén impactados.

Caso 2) – Solo algunos casos responden a alguna medida de cambio GRAVE. No tenemos más información para poder conocer si es ERROR o no de toma de datos. ACCION: se sigue adelante.

Caso 3) – Hay casos de ERROR de toma de datos o de proceso. ACCIÓN: se anula el último aprendizaje de los casos afectados.


El diagrama E-R de la BBDD de conocimiento para 2-Sphere es el siguiente:
De este modo, podríamos considerar la entidad(tabla) de conocimiento como un cubo 3D (OLAP) donde el alto y ancho se definen como una malla de variables por persona y el largo serían las versiones de referencia, y la más cercana siempre se considerará como la última válida.

 

Sea
Con este sistema y el software adecuado, en base a un nuevo valor
Por ejemplo,
Y tenemos a evaluar el nuevo valor i=7, con F(7) = 8
 
Se denominan MIN_GRAVE, MAX_GRAVE, MIN_leve y MAX_leve.

Cada una de estas cotas se calculan únicamente en base a 5 elementos, el máximo y mínimo global de la muestra, el valor predicho por la tangente “impulsada”, y los valores máximo y mínimo locales calculados en base a la desviación estándar con respecto a la media aritmética de la muestra.
Estos 5 valores conforman
Estos 2 factores son de índole descriptiva, es decir, se basan en parámetros de estadística descriptiva como son la media y la desviación típica/estándar de la muestra. Como nuestro objetivo es que la predicción sea rápida y eficiente, será necesario trabajar con el menor número de recursos posible, solo una malla, de modo que para calcular la media de los valores y el desvío estándar, no tenemos disponible toda la muestra, iremos reevaluando dichos cálculos en cada iteración.
p { margin-bottom: 0.21cm; }
me = 1/n * ∑ ( x) = E(x)   
(2)
(3)
б
Estos 2 factores se definen como el rango de valores aceptados de la muestra. Esto es, el marco o entorno de valores recibidos hasta el momento.
m = min (y
El último componente del núcleo predictivo es el valor de predicción, basado en una función de ajuste lineal usando tangentes y un factor de impulso histórico (
En nuestro estimador, la pendiente

La
La
el nuevo valor i=7, con F(7) = 8 ¿Como de bueno es este valor para nuestro sistema? “
8
Para resumir, finalmente este sistema nos permite tener una visión muy rápida y sensible de como ha ido el proceso. 

IMPORTANTE: no olvidar que aun siendo un sistema inteligente con auto-aprendizaje, etc… merece la pena una supervisión periódica para indicarle si está bien o no su evaluación, es algo así como darle o no un caramelo por lo bien que lo ha hecho, reconducirlo a la forma correcta de evaluación. Si no, podemos encontrarnos con que el sistema se ha desfasado perdiendo su eficacia.



Anuncios

Acciones

Información

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

w

Conectando a %s




A %d blogueros les gusta esto: