investigaciones y aplicaciones de sistemas inteligentes en ...forma que se logre minimizar el...

Post on 10-Mar-2020

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Investigaciones y aplicaciones de sistemas inteligentes en el Perú

Expositor: Ing. Samuel Oporto Díaz (Ms) 23-Nov-2007

22 /82/82

El expositor• Magíster en Inteligencia Artificial - Instituto Tecnológico de Monterrey.• Ingeniero de Sistema - Universidad Nacional de Ingeniería, Lima-Perú.

• Docente en Inteligencia Artificial y Minería de Datos - UNI.• Docente en Inteligencia Artificial - USMP.• Docente en Sistemas Inteligentes y Simulación de Sistemas - UPC.

• Investigador Principal del Instituto de Investigación de la FIIS-UNI.

• Investigador en Ciencias de Computación con publicaciones en:– IJCNN-2007 of August 2007 Orlando, FL, USA.– ICAIPR of July 2007 Orlando, FL, USA.– ICIAR2005, Toronto – Canada.– LNCS-2005, Springer Journal – Canada.– CLEI2004 Lima-Perú y CLEI2006 Santiago de Chile.

• Consultor en Sistemas Inteligentes y Sistemas Autónomos.

33 /82/82

Temario• Inteligencia Artificial. 5

• Proyectos de Investigación. 11

• Proyectos de Desarrollo. 46

• Proyectos Futuros. 77

44 /82/82

INTELIGENCIA ARTIFICIALSistemas Inteligentes

55 /82/82

Inteligencia NaturalEs la capacidad de:• Entender y comprender el entorno.• Aprender de la experiencia.• Pensar y actuar con cierta intención.• De resolver problemas.

¿los animales son inteligentes?¿el libre albedrío es inteligencia?¿la conciencia de si mismo es inteligencia?¿puede existir la inteligencia sin creatividad?

66 /82/82

Inteligencia Artificial• Es una ciencia que intenta la

construcción de algoritmospara imitar el comportamiento y el razonamiento de los humanos.

Pienso y luego actuó

77 /82/82

Inteligencia Artificial¿Cómo piensan-razonan

los humanos?

No se sabe, solo pensamos.

¿Cómo actúan los humanos?

Test de turing

88 /82/82

¿Cómo podemos hacer IA si no sabemos cómo pensamos ni podemos

demostrar qué software actúa como humano?

99 /82/82

Agentes• Un agente es todo aquello que percibe su

ambiente mediante sensores y que responde o actúa en tal ambiente por medio de efectores.

1010 /82/82

Sistemas InteligentesSistemas inteligentes

Agentes• Autónomo.• Usa conocimiento (patrones)

• Aprende• Lógica difusa.• O(kn), O(n!)

Sistemas de Información

• Requiere del humano• Usa información (relaciones)

• Memoriza.• Lógica booleana• O(nk)

1111 /82/82

PROYECTOS DE INVESTIGACIÓN

1212 /82/82

Pronóstico diario de la energía eléctrica en días feriados usando

redes neuronales

Universidad Nacional de Ingeniería

XX International Joint Conference on Neural Networks -2007 Orlando, USA

International Conference on Artificial Intelligence and Pattern Recognition

Definición del Problema1. ¿Cómo pronosticar la demanda en días feriados?2. Los productores de energía requiere pronosticar la

demanda de la energía eléctrica para planificar su operación y mantenimiento

3. La demanda de energía es más compleja los días feriados.

holiday holiday

Jule 2003 Jule 2004

1414 /82/82

Soluciones Anteriores• Neural networks• ARIMA• Fuzzy Logic• Fuzzy Neural Network

1515 /82/82

Solución Propuesta• Se diseña tres modelos de pronóstico de demanda

de energía eléctrica para días feriados y para días no feriados.

• Se usa redes neuronales y se compara con el ARIMA.

• Es necesario un enfoque global para tratar con la demanda de la energía en días feriados tan bien como en días no feriados.

1616 /82/82

Solución Propuesta• Neural Network.• Codificación de los días, considerando el día

precedente y el día siguiente como días feriados.

Afterholiday

Jule 2003

Beforeholiday

Jule 2004

1717 /82/82

Modelo de Pronóstico

INPUT SELECTION

PARAMETERS TUNING

INPUT ENCODING

DATA TRANSFORMATION

FORECASTING

INPUT SELECTION

•Year Y

•Month M

•DayOnMonth DoM

•DayOnWeek DoW

•Holiday H

INPUT ENCODING (holiday input)

Method 1 M1: hol=1

Method 2 M2: hol=sun=1

Method 3 M3: hol=3 before&after=1,3

Method 4 M4: hol=sun=3 before&after=1,2

1818 /82/82

Red Neuronal•Year Y

•Month M

•DayOnMonth DoM

•DayOnWeek DoW

•Holiday H

1919 /82/82

Medición de resultados• Medidas de la bondad de ajuste (intentan medir en

cuánto se desvía el nivel pronósticado del nivel real).

Siendo:Es el valor de la serie de tiempo en el momento tEs el valor pronosticado en el momento tEs el error pronosticado en el momento tNúmero de puntos pronosticados.

Nombre Unidad medida Fórmula

MAPEMean Average Percentage Error %

NYENt

t tt∑ =

=1*%100

tY

tF

ttt FYE −=

N

2020 /82/82

Experimentos• Los resultados para días feriados, día anterior y

día siguiente de acuerdo al MAPE es:

2121 /82/82

Comparación de cuatro técnicas de selección de características envolventes para procesos de

clasificación.

V JPC (Jornadas Peruanas de Computación 2006) – Arequipa - Perú

CLEI2006 (Congreso Latino Americano de Computación) – Santiago de Chile

Universidad Nacional de Ingeniería

2222 /82/82

Planteamiento del ProblemaDado una base de datos con Sm características, cómo encontrar un subconjunto de características Sm’ tal que logren minimizar el error de un clasificador. Cómo eliminar aquellas variables que no contribuyen en la clasificación.

erro

r del

cla

sific

ador

número de características

número deejemplos

2323 /82/82

Selección de Características• Si se evalúa todo el espacio de posibles combi-

naciones, el costo computacional es muy alto.• Si m es la cantidad de características identificadas

y n es la cantidad de características deseadas, el número total de posibles subconjuntos a evaluar es:

n 2n

10 1,02420 1,048,57630 1,073,741,82440 1,099,511,627,776

Si n = m; 2n

2424 /82/82

Proceso de Selección de Características

FiltroEnvolventeHíbrido

e: error del clasificador

B. OptimaB. Sub-optimaB. AleatoriaB. Heurística

Clasificador

2525 /82/82

Generación del Sub-Conjunto• Búsqueda exhaustiva

• Búsqueda secuencial hacia delante.• Búsqueda secuencial hacia atrás.

• Búsqueda Aleatoria (BA).• Búsqueda Aleatoria Optimizada (BAO)

• Búsqueda Mejor Primero (BMP)• Búsqueda Genética (BG)

Optima

Sub-optima

Aleatoria

Heurística

2626 /82/82

Evaluación del Sub-Conjunto• Filtro. Independientes del algoritmo de

aprendizaje.• Componente principal, entropía.

• Envolvente. Usan el mismo algoritmo para escoger el sub-conjunto como para el aprendizaje.

• Búsqueda Aleatoria, Búsqueda Aleatoria Optimizada, Búsqueda Mejor Primero, Búsqueda Genética.

• Híbridos. Filtro + Envolvente.

2727 /82/82

Criterio de Paro¿Cuándo detener la búsqueda? :

error del clasificador

2828 /82/82

Algoritmos de Clasificación

Desarrollado por Quinlan. Es un árbol de regresión.Es recursivo, y se basa en la estrategia "divide y vencerás“Mejora del ID3.

Árbol de Decisión C4.5 Naive Bayesian

Aprendizaje probabilístico:Incremental: Cada ejemplo puede incrementar / decrementar la probabilidad de que una hipótesis sea correcta.La predicción probabilística predice múltiples hipótesis ponderadas

Tiempo P N Humedad P Nsoleado 2/9 3/5 alta 3/9 4/5cubierto 4/9 0 normal 6/9 1/5lluvia 3/9 2/5Temperatura Vientocalor 2/9 2/5 si 3/9 3/5suave 4/9 2/5 no 6/9 2/5fresco 3/9 1/5

2929 /82/82

Algoritmos de Clasificación

Presentadas en 1992. Vapnik y Chervonenkis.Crea nuevas características linealmente separables.Busca un hiperplano que puede separar el espacio en dos partes

Maquinas de Vector Soporte

Red de Retropropagación

Trabaja con datos continuos o discretosLa salida puede ser vector de valores reales o discretos.Aprende por modificación de los pesos.Largo tiempo de entrenamiento Es difícil entender el significado de los pesos.

3030 /82/82

Diseño de ExperimentosDATOS

ALG

OR

ITM

O

DE

BU

SQU

EDA

CLA

SIFICA

DO

RES

ADULT, BANDS, MUSHROOM

• Árbol de Decisión C4.5

• Naive Bayesian

• Maquinas de Vector Soporte

• Red de Retropropagación

• Búsqueda Aleatoria

• Búsqueda Aleatoria Optimizada

• Búsqueda Mejor Primero

• Búsqueda Genética

48experimentos

K-fold

K = 10

Validación cruzadaANOVAVoting

3131 /82/82

Resultados Experimentales

3232 /82/82

Conclusión VotingReducción del error• No se puede concluir quién es el peor (2BA y 1BG)• No se puede concluir quién es el mejor (2 BAO y 1BG)

Reducción de la dimensionalidad.• El peor es BAO para la data usada (3 BAO)• No se puede concluir quién es el mejor (2 BG, 1 BA)

3333 /82/82

Conclusión ANOVAReducción del error• El peor es el BG para la data usada• Los mejores son BAO y BA para la data usada,

pero entre los no se de puede concluir una diferencia.

Reducción de la dimensionalidad.• El peor es el BAO para la data usada• Los mejores son BA y BG para la data usada,

pero entre los no se de puede concluir una diferencia.

3434 /82/82

Detección de microcalcificaciones en imágenes

de mamografías usando diferencia de filtros gaussianos

optimizados.

IV JPC (Jornadas Peruanas de Computación 2005) – Arequipa - Perú

Second International Conference, ICIAR 2005, Toronto, Canada 2005

Instituto Tecnológico y de Estudios Superiores de Monterrey - México

3535 /82/82

El problema• Dada una BD de mamografías, cómo procesar las

imágenes para detectar microcalcificaciones de tal forma que se logre minimizar el número de falsos negativos y el número de falsos positivos.

F(-): Siendo realmente (+), el sistema los declara (-)F(+): Siendo realmente (-), el sistema los declara (+)

F(-): La enfermedad puede progresar.F(+): Falsas alarmas e intervenciones innecesarias

3636 /82/82

Modelo de solución

Señales

3737 /82/82

1. PRE-PROCESAMIENTO

Filtro mediana.Es un filtro no lineal, usado para eliminar el ruido de alta frecuencia sin eliminar las características significativas de la imagen.

3838 /82/82

1.2. Corte Automático

Corte automático.Se recorta la imagen para incluir sólo la región de interés, y por lo tanto reducir el tiempo total de procesamiento, en el 90% de las imágenes de la BD de la MIAS la mama ocupa menos del 49 %.

3939 /82/82

2. DETECCION DE SEÑALES• El filtro DoG es un filtro pasabandas, en el dominio

del espacio, construido a partir de dos Filtros Gaussianos simples.

• Estos dos filtros deben tener varianzas diferentes.

4040 /82/82

2.1. Filtro DoG

σ = 0.7618 σ = 0.8226

4141 /82/82

2.1. Filtro DoG.σ = 0.7618

σ = 0.8226

4242 /82/82

2.2. SegmentaciónExtrae ventanas cuadradas de 9x9, cuyo centro corresponde al centro de masa de cada uno de los puntos seleccionados en la etapa anterior.

Señal CalcificaciónImagen

DoG, Binary, Label, Area, Segment, Gray, Binary

4343 /82/82

3. EXTRACCION DE CARACTERISTICAS

4444 /82/82

4. CLASIFICACION

Área

Gris promedio

Compacidad

Gris del fondo calcificación (+, -)

capaentrada

capaintermedia

capasalida

Contraste Relativo

Una red neuronal de retro-propagación de tres capas es usada. La función de transferencia en todos los nodos es la tangente hiperbólica sigmoidal y la función de medida de performance es el error cuadrático medio.

4545 /82/82

Resultados Obtenidos

4646 /82/82

PROYECTOS DE DESARROLLO

4747 /82/82

Desarrollo de un algoritmo para la estructuración de datos de

direcciones proporcionados en formato libre

2007

4848 /82/82

Formato Libre - Estructurado• Datos de direcciones en formato libre, no pueden

ser manipulados por sistemas de DB.

• Para que un sistema de DB manipule los datos requiere una representación interna mediante un modelo de datos.

• La representación cumple reglas gramáticales.

4949 /82/82

Planteamiento del Problema• El problema consiste en cómo hacer para

convertir un texto en formato libre en una representación interna dadas ciertas reglas gramáticales.

5050 /82/82

Procedimiento de Soluciónaddess_un-format

parsing(index)

find_word(phonetic)word_for_revision

domain_definition

load_domain

domain_element

gramatic_rules find_elements

addess_format

word

domain_token

token

rules

parsing andfind words load domain

token

gramaticfind elements

2

1

3 4

5151 /82/82

Procedimiento de Soluciónaddess_un-format

parsing(index)

find_word(phonetic)word_for_revision

domain_definition

load_domain

domain_element

gramatic_rules find_elements

addess_format

word

domain_token

token

rules

5252 /82/82

1.1. Parsing and Find WordsAnalizador sintáctico (parsing)• El analizador sintáctico tiene como propósito

identificar las palabras (cadenas) que componen una dirección sin formato.

• Las palabras pueden están separadas por delimitadores.

• El resultado es una secuencia de palabras.

delimiteraddress_unformatparsing(index)

{word}

, ; :

- _

. .. +

1

5353 /82/82

1.1. Parsing and Find Wordsadress_id address_unformat

1 GERENAL MENDIBURU 1149 F SANTA CRUZ

2 AV LARCO 345 TDA 10 SOTANO

3 CALLE SHELL 285 TDA 1 LADO DE TIENDA DEL

4 SHELL 285 TDA 7 GALERIA FAROLES

word adress_id1 310 2

1149 1285 3285 4345 27 4

AV 2CALLE 3CRUZ 1

DE 3DEL 3

F 1FAROLES 4GALERIA 4GERENAL 1

LADO 3LARCO 2

MENDIBURU 1SANTA 1SHELL 3SHELL 4

SOTANO 2TDA 2TDA 3TDA 4

TIENDA 3

Analizador sintáctico(parsing)

1

, ; :- _. .. +

{word}

delimiter

5454 /82/82

1.2. Parsing and Find WordsBúsqueda de palabras (find words)• Verifica si la palabra identificada es palabra valida.• Se busca en una tabla de dominio de palabras (conjunto

de palabras válidas pertenecientes a la(s) ciudad(s) donde se va ha trabajar).

• Una palabra válida pasa a ser un token, el resto de palabras se revisan (pueden ser nuevas o inválidas)

find_word(phonetic)word_for_revision

word

domain_token

token

1

5555 /82/82

1.2. Parsing and Find WordsBúsqueda de palabras (find words)Búsqueda exacta.• Si la palabra se encuentra exactamen en el

dominio de palabras

Búsqueda fonética (similaridad fonética)• Si la palabra se pronuncia similarmente a alguna

palabra del dominio de palabras.

Búsqueda por distancia (similaridad métrica)• Si la palabra se escribe similarmente a alguna

palabra del dominio de palabras.

1

5656 /82/82

1.2. Parsing and Find WordsBúsqueda de palabras (find words)Búsqueda exacta.

Búsqueda fonética

Búsqueda por distancia

• Arequipa Arequipa• CANADA Canada

• Focet Faucet• Focep Faucet• Cayao Callao

• Lincee Lince• Coma Comas

1

5757 /82/82

2.1. Token ClasificationBase de datos del dominio de trabajo Corresponde a todas las tablas del modelo.• Los tipos de elementos pueden ser:

– Tipo de urbanizacion – Urbanizacion– Tipo de via – Via– Tipo de hito – Hito– Tipo de vivienda – Vivienda– Tipo de interior

– Zona– Manzana– Lote

2

5858 /82/82

3. Gramatic• La gramática corresponde a las reglas que definen la

estructura de cada dirección.• Se refiere a la presencia o no de un tipo de elemento y al

orden en que los tipos de elementos se pueden presentar en una dirección.

• Una regla es una estructura conformada por huecos, cada hueco pertence a un tipo de elemento.

• Cuando una dirección es descompuesta en sus tipos de elementos, se intenta que buscar los casos en los que exista coincidencia.

3

gramatic_rules rules

5959 /82/82

3. Gramaticejemplo de reglas gramáticales

3

direccion

nombre viatipo_via

via urbanizacion

tipo urbaniz nombre urbnúmero

númerotipo interior

direccion

nombre viatipo_via

via hito

tipo hito nombre hitonúmero

6060 /82/82

4. Find elements• Intenta hacer coincidir las secuencias de tipos de

elementos (conformadas por tokens) con algunas de las reglas gramaticales diseñadas.

• Entrega todos los posibles casos donde exista coincidencia o cercania.

domain_elementfind_elements

addess_format

token

rules

4

6161 /82/82

4. Find elements• Recibe una secuencia de tokens, cada uno de los

cuales tiene asignado una lista de tipos de elementos.

• Identifica todas las posibles conbinaciones de secuencias de tipos de elementos que se pueden formar.

• Intenta hacer coincidir las secuencias de tipos de elementos con algunas de las reglas gramaticales disenadas.

4

6262 /82/82

4. Find elementsdirección no estructurada avenida rosa toro 124 - A edificio el polo

tipo_via via via via separador via tipo_vivienda irrelevante viaurbanizacion urbanizacion numero interior hito hito

hito hito vivienda

tipo_via via via separador via hito viviendaUrbanizacion numero Interior tipo_vivienda via

Dirección estructurada tipo_via via numero tipo_vivienda vivienda

elementos

tokens

4

direccion

nombre viatipo_via

via vivienda

tipo_vivienda viviendanúmero

número tipo interior

6363 /82/82

Pronóstico sub-horario de la Demanda Eléctrica

2007

6464 /82/82

Alcances Funcionales_Sistema para el Pronóstico de Demanda a Corto Plazo_Modelo de Pronóstico con Redes Neuronales

configuration

transformation optimization

train ann

data access

run ann

configuration_

modeling

program next day

reporting

control program

program holiday

data input

Sistema Inteligente Sistema de Información

1

2 3

4

5

6565 /82/82

Transformación de datos• Los datos de la demanda histórica (Y) tienen una

estructura que relaciona la fecha y hora del día y el valor de la demanda total ejecutada.

• Se preparan los datos para ingresarlos al modelo.

fechaferiadohorademanda (Y)

demanda_historicaannomesquincenasemanadíadía semanaferiadohorademanda (Yt-1)demanda (Yt-2)demanda (Yt-3)demanda (Y)

demanda_modelo

6666 /82/82

Modelado1. Pronóstico de la demanda sub-horaria para el día

siguiente (PD1), 48 puntos, espaciados cada 30 minutos, haciendo uso de datos hasta el día anterior.Se pretende usar los datos del dia anterior, el dia que estáuna, dos y tres semanas atrás y otras combinaciones.

Demanda MW

0

500

1000

1500

2000

2500

3000

3500

4000

00:3

0

01:3

0

02:3

0

03:3

0

04:3

0

05:3

0

06:3

0

07:3

0

08:3

0

09:3

0

10:3

0

11:3

0

12:3

0

13:3

0

14:3

0

15:3

0

16:3

0

17:3

0

18:3

0

19:3

0

20:3

0

21:3

0

22:3

0

23:3

0

6767 /82/82

Modelado2. Pronóstico de la demanda sub-horaria para el resto del

día (PD2), haciendo uso de los datos del día anterior y de lo ocurrido en el día. El uso de datos de día anteriores se evaluara en la etapa de optimización del modelo.

3. Pronóstico de la demanda sub-horaria para las siguientes 2 horas (PD3), haciendo uso de los datos del día anterior y de lo ocurrido en el día. Dependiendo de la infraestructura de computo se definirá la frecuencia de entrenamiento de la red.

6868 /82/82

Técnicas de PronósticoRedes Neuronales Fuzzy Logic

• Se utiliza cuando la complejidaddel proceso es muy alta y no existen modelos matemáticos precisos, para procesos no lineales y cuando lasdefiniciones no estan definidas (impreciso o subjetivo).

.

.

W(1)

W(2)

L (t,d)

F (t,d)

DW (t,d)

DM (t,d)

M (t,d)

L (t,d-1)

L (t,d-7)

L (t,d-14)

L (t,d) : demanda en hora t en día d

M (t,d) : mes del día d

DM (t,d) : #día en mes del día d

DW (t,d) : #día en semana de día d

F (t,d) : indicador de feriado de día d

ARIMA• Es una generalización del

modelo autorregresivo de media móvil (ARMA). Ajusta los datos de series temporales con la finalidad de predecir puntos futuros de la serie.

6969 /82/82

Optimización de los modelos• En número de modelos a

diseñar es muy grande. • Dependen de la cantidad

de parámetros y sus valores.

• Es necesario búscar el mejor modelo.

• Se usan criterios de medición de resultados.

ALGORITMOS GENÉTICOS• Es una técnica de optimización

no lineal multivariada.• Es un método sistemático para

la resolución de problemas de búsqueda y optimización que usan los mismos métodos de laevolución biológica: selecciónbasada en la población, reproducción sexual y mutación.

Esta actividad puede consumir fuertes recursos de hardware y tiempo, dado que el procedimiento implica probar el comportamiento de tantos modelo como combinaciones

diferentes de parámetros se puedan hacer.

7070 /82/82

Medición de resultados• Medidas de la bondad de ajuste (intentan medir en cuánto

se desvía el nivel pronósticado del nivel real).

Siendo:Es el valor de la serie de tiempo en el momento tEs el valor pronosticado en el momento tEs el error pronosticado en el momento tNúmero de puntos pronosticados.

Nombre Unidad medida

Fórmula Valor actual Valor máximo

aceptable

MAPEMean Average Percentage Error

%

MAEMean Absolute Error

de la serie

RMSERoot Mean Square Error

de la serie

NYENt

t tt∑ =

=1*%100

NENt

t t∑ =

=12

NENt

t t∑ =

=1

tY

tF

ttt FYE −=

N

7171 /82/82

Pronóstico de dinero en efectivo para agencias bancarias y

cajeros electrónicos

2006

7272 /82/82

Planteamiento del Problema• Cómo pronosticar el monto (stock) de dinero en

efectivo que se va ha tener en los siguientes periodos de tiempo (horas, días, semanas, etc.), de tal manera que puede mantener un nivel óptimo de efectivo en todo momento.

7373 /82/82

Objetivo del Proyecto• Para calcular el nivel óptimo de efectivo para

agencias y cajeros electrónicos se debe de tomar en consideración los siguientes aspectos, no necesariamente medibles.

Minimizar Costo Financiero + Costo Transporte Caudales

Maximizar Satisfacción del Cliente + Seguridad contra robos

7474 /82/82

Modelo para CajerosS(t) : Stock actual o saldo actual en el dia td (t) : demanda de dinero en el dia th : dias de aviso P (t) : monto abastecido en el dia tN : Dias extras de pronóstico

7575 /82/82

Modelo para cajeros

7676 /82/82

Modelo para cajeros

días extras de pronóstico

S/.

1 2 3

N-1 NN’

Costo de Transporte (CT)

Interes (I)Óptimo

CT(1)

CT(2)

I(0)

CT(N)=I(N’)

… …

7777 /82/82

PROYECTOS FUTUROS

7878 /82/82

Proyectos de Investigación1. Detección del Fraude Bancario.2. Determinación del Riesgo Crediticio.3. Análisis de fuentes de información documental

abierta – extensible a radio y TV.4. Identificación del idioma desde la voz.5. Planificación de movimientos en robots

autoconfigurables.

7979 /82/82

Proyectos de Desarrollo

Constitución de K&S Peru

Knowledge and Systems

8080 /82/82

Libros• Metodología de la Investigación en Computación.

• Sistemas Inteligentes – Agentes Lógicos

• Sistemas Inteligentes – Agentes de Búsqueda

• Sistemas Inteligentes – Agentes Conexionistas

• Introducción a la Visión Computacional.

8181 /82/82

Ing. Samuel Alonso, Oporto Díaz (Ms)

soporto@wiphala.nethttp://www.wiphala.net/oporto

UNIVERSIDAD NACIONAL DE INGENIERIA

8282 /82/82

GRACIAS

top related