Download ZISC: Zero Instruction Set Computer Introducción

Document related concepts

Aprendizaje de cuantificación vectorial wikipedia , lookup

ART (RNA) wikipedia , lookup

Mapa autoorganizado wikipedia , lookup

Redes neuronales probabilísticas wikipedia , lookup

Propagación hacia atrás wikipedia , lookup

Transcript
ZISC: Zero Instruction Set
Computer
Introducción
Nelson Acosta & Lucas Leiva
2010
ZISC
Vectores de datos de 64
Opera en modo RBF o KNN
Permitr hasta 127 subredes
Arquitectura paralela
Permite encadenamiento de dispositivos
1
ZISC vs. PC
PC
1 procesador para
muchas entradas de
memoria
ZISC
processor
processor
processor
El reconocimiento
se realiza hasta
identificar el patrón
processor
1 procesador para
cada entrada de
memoria
El reconocimiento
se realiza en tiempo
constante
processor
processor
Procesamiento serial (PC)
¿Sos Juan ?
No
2
Procesamiento serial (PC)
¿Sos
Juan?
No
Procesamiento serial (PC)
¿Sos
Juan?
Si
3
ZISC: Arquitectura
Vector de entrada
Hasta 64 componentes de 1
byte
PARALELISMO TOTAL
Neurona
#1
Neurona
#2
Neurona
#3
Neurona
#4
Expansion de red
sin perdida de
velocidad
Neurona
#5
Hasta 16283 categorías
Procesamiento Paralelo (ZISC)
¿Qúién
es Juan ?
Yo
4
Estructura neuronal
Memoria para almacenar
prototipo
Registros de almacenamiento de
contexto, norma y categoría
Campo de influencia activo (AIF)
Procesador para el cálculo de la
distancia entre el vector de
entrada y el prototipo
Memoria
Procesador
Norma
Contexto
Distancia
Categoría
AIF
Normas de cálculo de distancia
Norma L1 =∑
∑|Vi-Pi|
P1
Norm Lsup=MAX|Vi-Pi|
P1
5
Cálculo de distancia
Vector #1
Vector #2
Distancia L1
L1 norm = Sum | V1- V2 |
Diferencia entre todos los
componentes
Distancia Lsup
L1 norm = Max | V1- V2 |
Máxima diferencia entre 2 componentes
Resultados de decisión
Identificado
–
Incierto
–
Identificado con una o mas neuronas degeneradas
No clasificado
–
Todas las neuronas activas corresponden a la misma
categoría
Las neuronas activas poseen diferentes categorías
asociadas
No identificado
–
No existen neuronas activas
6
Proceso de aprendizaje
Contexto
Set Context
Vector
Put vector
Vector yace en el AIF
del prototipo?
Si
Posee la misma
categoría?
Si
No
No
Crear prototipo (neurona)
Nada
Set Category
Category
AIF = Min (Maximum Influence Field and
distance to closest prototype with a different category
Proceso de operación
Contexto
Set Context
Vector
Put vector
Si
El vector yace en el AIF
de algún prototipo?
No
Construir lista de categorías y
distancias de los prototipos activos
Categorías
No
La lista contiene
diferentes categorías
Identificado
Si
Incierto
Desconocido
7
Activación de múltiples neuronas
Cada neurona calcula su distancia con el vector de entrada
Si la distancia es menor que el AIF de la neurona, ésta se
activa y transmite su distancia
Las distancias son ordenadas de incrementalmente
Cálculo de menor distancia
Los 14 bits del registro de distancia está conectado a un bus
comun en en pull-up
Considerando un ejemplo con 4 líneas
1
Line 1
Line 2
Line 3
Line 4
8
Orden de 3°línea
En la tercer línea, 2 neuronas vuelven 0 la línea
Todas las neuronas examinan el bus para detereminar si sus 3
primeras líneas coinciden con el bus. Si no, su distancia es
mayor que el menor valor, y se descarta.
out
out
1
1
0
Line 1
Line 2
Line 3
Line 4
Orden de la 4°línea
Ganadora
out
1
1
0
0
Line 1
Line 2
Line 3
Line 4
9
Extracción de características
Es una reducción de la cantidad de
información
Contiene información relevante de los
patrones
Ejemplo: un histograma de intensidades
puede reducir 1MB en 256 valores
significantes
Radial Basis Function
10
Regiones de decisión en espacios
característicos
Regiones no lineales
en un espacio
característico 2D
Separación de las regiones:
Umbralado
El umbral no es
aplicable con
regiones no
lineales
11
Separación de las regiones:
Perceptrón
B
A
B
La division del
espacio puede
ser muy
compleja
B
Separación de las regiones: RBF
1
RBF permite
mapear
cualquier forma
0
1
12
Proceso de aprendizaje
20
Reconocimiento y entrenamiento de
objeto usando 2 características con
valores entre o y 20
Inicialización:
Creación de un espacio de características
de 2 dimensiones vacío
7
10
0
20
Proceso de aprendizaje
20
Vector de entrada V1 con categoría A
y coordenadas (7,10).
V1
7
Respuesta ZISC : no
identificado
0
10
20
13
Proceso de aprendizaje
20
Se crea una región con categoría A,
con el máximo campo de influencia.
Máximo campo de influencia
V1
7
A
0
10
20
Proceso de aprendizaje
20
Vector de entrada B con categoría B, cayendo
dentro del campo de influencia de A
V2
V1
7
Respuesta ZISC:
Identificado como "A"
0
10
20
14
Proceso de aprendizaje
20
La región de la categoría A se ajusta
para excluir a V2 de su campo de
influencia.
V2
V1
7
10
0
20
Proceso de aprendizaje
20
Se crea una región B.
Su campo de influencia excluye al centro de la
región A.
V2
7
V1
A
B
0
10
20
15
Proceso de Aprendizaje
20
Vector de entrada de categoría B, con posicion en la
intersección de las regiones A y B.
7
V3
Respuesta ZISC:
Incierto
0
10
20
Proceso de aprendizaje
20
La region A se contrae para excluir a V3.
No se crea una nueva región porque V3 ahora
pertenece solo a la región B.
7
V3
A
B
0
10
20
16
Proceso de aprendizaje
20
Vector de entrada V4 con categoría C, y situado
en las regiones A y B
V4
7
Respuesta ZISC:
Incierto
0
10
20
Proceso de entrenamiento
20
Las regiones A y B se contraen para excluir de
sus regiones a V4.
V4
7
0
10
20
17
Proceso de aprendizaje
20
Se crea la región C.
C
B
7
A
10
0
20
Proceso de aprendizaje
20
Se completa el mapeo del espacio
característico.
7
A
B
C
0
10
20
18
Campo de influencia mínimo
B
B
A
Los AIF no pueden contraerse más allá
del Minif
Minimum Influence Field
Neuronas degeneradas en el área
incierta (Minif pequeño)
B
A
Rango de incerteza
19
Neuronas degeneradas en área incierta
(Minif grande)
B
A
Rango de incerteza
Ajuste de Minif
Identificado
Incierto
No identificado
Incremento de Minif
Identificado
Incierto
No identificado
Decremento de Minif
20
Presición y rendimiento
Presición: mide la efectividad de la
clasificacion
Rendimiento: mide la seguridad de la
red en una clasificación
Presición y rendimiento
Precisión
Incremento de
Minif
Más conservativo
0
Decremento de
Minif
Más liberal
Rendimiento
21
Mejorando la curva de aprendizaje
Precisión
Conocimieto inicial
Entrenamiento adicional
0
Rendimiento
Salida de la red
Patrón de entrada
Patrones identificados (con errores?)
80% Identificados con 1% de error
Precisión 99%
Rendimiento 80%
Patrones rechazados
(inciertos o no identificados)
20% rechazados
22
Representacion de múltiples
espacios de características
Píxeles
Transformada
de
Wavelet
ZISC
Network
#1
Histograma
de
Color
ZISC
Network
#2
Análisis
de
forma
ZISC
Network
#3
Arquitectura cooperativa (Serial)
Patrones de entrada (100)
Color
Rendimiento =
80% E=1%
80 clasificados, 1 error
Textura
Rendimiento =
90% E=1%
18 patrones clasificados
2 patrones rechazados
23
Cooperative architecture (Parallel)
Patrones de entrada (100)
Rendimiento = 80%
Error=1% Color
Forma
Rendimiento = 90%
Error=1%
Si el número de aceptación = 2
Rendimiento global <80%
Error global <1%
Metodología
Usar patrones para evaluar la calidad de las
características
–
–
Si el numero de neuronas es igual al numero de muestras,
la caracteristica es debil
Si existe un gran número de incertezas, las áreas de
desición están sobrelapadas con las características
seleccionadas
Si el número de neuronas es pequeño, con respecto
al número de patrones, la característica es
considerada como buena.
24
ZISC en reconocimiento de
imágenes
Los problemas de imágenes son
–
–
No lineales (iluminación, rotacion)
Complejos y difusos
ZISC opera como un sistema biológico
–
–
Aprende ejemplos con diferentes condiciones
Reconoce objeto por similitud
Construcción de sistema de
reconocimiento de imágenes
1) Elegir patrones de entrenamiento a
entrenar.
2) Construir uno o más motores de
clasificación para clasificar los
objetos en diferentes espacios
característicos.
3) Reconocer objetos idénticos o
similares en nuevas imágenes.
25
Areas de aplicación
Corruptos Imprecisos Color, textura, densidad,
Identificación de formas irregulares,
etc.
Datos
Dimensión, diámetro,
número de hoyos, etc.
Exactos Fácil de
describir
Proceso
Imposible
de describir
Inspección de partes
Aprender características de
aceptación
–
Forma, posicion, color, textura
Aprender características inaceptables
–
Control de calidad,
ordenamiento, alineación
mezclas, roturas, defectos
Salidas
–
–
Mostrar objetos identificados
Mostrar objetos no identificados
Detección de anomalías
y mantenimiento predictivo
26
Clasificación de textura y
superficie
Clasificación difusa
–
–
–
Detacción de defectos en
superficies
Calidad en maderas
Diagnóstico médico
Aprender muchos ejemplos
ZISC puede diferenciar
similitudes
Seguimiento
Aprender uno o más
objetivos
Detectar patrones similares
en el siguiente cuadro
Re alimentar el
entrenamiento
Realizar barrido inteligente
Control de tráfico vehicular, vigilancia aérea,
seguimiento de humanos
27
Biometría
Autentificación de
personas
Reconocimiento de
expresiones faciales
Vigilancia
Permitir al sistema decidir
que transmitir
–
–
,
Coordenadas de el objetivo
Señal de alarma
Seguridad, monitoreo de pacientes,
monitoreo de ambientes hostiles
Suprimir cuellos de botella
en transmisiones
Evitar falsas alarmas y
errores humanos
28
Plantillas
Aprender un patrón “de oro”
Localizar y cuantificar variaciones con
respecto al patron de oro
Impresiones textiles
Inspección de máscaras
Inspección de obleas
Aproximación con herramientas
convencionales
Secuencias de filtros y
mejora de imágenes
Umbralado crítico para
aislar regiones de
objetos del fondo
Problema: detectar
cuando el umbral es
suficiente sin ser escaso
29
Aproximación con sistema de
clasificación
Aprender la suficiente
cantidad de ejemplos
de diferentes “bolas”
bajo diferentes
condiciones de
iluminación
Aprender ejemplos del
fondo, de manera de
definir el límite entre
entre patrones
similares
Metodología
3- TEACH
the engine
2- ANNOTATE
Objects of interest
with a category
Feature and
other parameters
4- VALIDATE
the engine
1- IMAGE
COLLECTION
more images
Recognition
engine
more annotations
No
Validation OK?
Yes
5- RECOGNIZE
Action/Communication
30
1) Colección de imágenes
–
Deben ser muestras representativas
Incluyendo
–
casos comunes, como aislados
Número de muestras significantes
Tanto
para entrenamiento como validación
2) Anotación de imágenes
–
–
–
Identificar componentes
Identificar subcomponentes
Evaluar necesidad de entrenar con muestras del fondo
31
2) Anotación de imágenes
Cañon de
tanque
Torreta de
tanque
Ruedas de
tanque
Tanque
Vector característico
Distribución de
píxeles por
valores de
intensidad
Un mismo objeto puede
ser representado
mediante diferentes
características
Se puede combinar
varias características
para producir un
Promedio de
clasificador robusto intensidades
en
eje vertical
Promedio de
intensidades en
eje horizontal
32
3) Aprendizaje
Que vectores característicos calcular por
objeto?
–
–
Representativos de forma, color, textura,
contraste de bordes, etc.
Invariantes a sombras, geometrías, etc
Usar un contador de ejemplos?
Construir un clasificador moderado, o
conservativo?
Espacios de característicos
múltiples
Vector característico de color
Recognition
Engine #1
Vector característico de textura
Recognition
Engine #2
Vector característico de forma
Recognition
Engine #3
33
Integrando características múltiples
Regla de decisión
Engine #1
Engine #2
Engine #3
Arbol de decisión
Engine #1
no
identified
Engine #2
Consolidation
rule
no
identified
Engine #3
OK
no
identified category
identified
unknown category
Barrido de imágen
Raster
Concentric
Adaptativo
34
Sistemas convencionales Vs
Inteligentes en Imágenes
Convencionales
Usuario = experto en
imágenes o
programador
Requiere de
programación y
entendimiento del
problema
Costo de U$S 3-5K
Inteligentes
Usuario = experto en
su dominio
No requiere
programación
Bajo costo
35