Revolución IA

La Inteligencia Artificial está llamada a protagonizar la próxima Revolución tecnológica

Inicio Sobre Revolucionia Temas Para saber más Contacto

Clasificadores: definición básica

Fernando P.    02/08/2017

Temas:  Fundamentos

En un artículo anterior ya indrodujimos el concepto de clasificador, que es una idea bastante intuitiva y que encaja muy bien con muchos problemas que se presentan en la vida real, pero que no son triviales de resolver mediante máquinas. También vimos algunos ejemplos sencillos de problemas que se pueden resolver usando clasificadores.

En este artículo vamos a dar una definición formal de lo que, a efectos prácticos, vamos a entender por clasificador en Inteligencia Artificial. No se trata de abarcar la totalidad del concepto de clasificador, sino de definir bien los tipos de clasificadores que vamos a poder construir fácilmente con técnicas de Inteligencia Artificial.

Conjunto de entrada
Partimos de un conjunto X que contiene una serie de casos que son el objeto de nuestro problema de clasificación. Decimos que X es el conjunto de entrada.
Funcion clasificador
Los elementos de X pueden ser de muy diversa naturaleza. En aplicaciones reales pueden ser imágenes, sonidos, grupos de variables que representan a un individuo ...

Pero los elementos del conjunto X deben tener alguna relación entre sí para poder establecer una clasificación sobre ellos. No pueden ser una colección arbitraria de cosas.

Por ejemplo, el conjunto de entrada puede ser una colección de imágenes de caras de personas, o imágenes en las que puede haber caras de personas, pero, por ejemplo, no tiene sentido mezclar imágenes con sonidos en el conjunto de entrada.

En general, los elementos del conjunto X se representarán mediante un vector finito de números reales.

También podemos tener como elementos de X matrices de números reales o construcciones de dimensión superior (como un cubo), pero que vamos a considerar siempre como vectores reales (por ser finitos) sin perder generalidad.

Es decir:

Si xX, entonces  x={x1, x2 ... xn}
siendo n un número entero fijo y siendo xi valores reales

Por ejemplo, en el caso de que tengamos como conjunto de entrada una serie de imágenes, cada imágen no deja de ser una matriz de valores (pixels), que podemos considerar como varios vectores columna que concatenados nos dan un vector que tiene tantos elementos como pixels tiene la imagen.

El tamaño del conjunto X no está restringido, puede ser infinito (numerable o no numerable). En aplicaciones reales vendrá a ser finito pero potencialmente muy grande.

Clases de salida
El objetivo de nuestro clasificador consiste en diferenciar cada elemento del conjunto de entrada en una clase distinta, todas las clases posibles constituyen el conjunto de clases de salida.

Es decir, tenemos un conjunto C que contiene todas las posibles clases que nos podemos encontrar a la hora de clasificar los elementos de X

En una versión sencilla de clasificador, los elementos de C los representaremos mediante números naturales, es decir:

Si cC, entonces  c ∈ {1,2,3,4 ... }

Digamos que ponemos una etiqueta (un número entero) a cada clase del conjunto de salida y eso es lo que manejamos.

El conjunto C debe ser finito y, desde el punto de vista práctico, no debe tener un tamaño excesivo.

Clasificador
A partir de los conjuntos de entrada y de clases de salida, podemos definir nuestro clasificador como una aplicación fc entre X y C, es decir:

fc : XC

xX,  fc(x) ∈ C

En general, la aplicación fc será sobreyectiva, no tiene sentido tener clases sin usar en el conjunto C

Por otro lado, la aplicación fc no debe ser biyectiva, si es así no tenemos un problema de clasificación para Inteligencia Artificial, tenemos otra cosa más sencilla. En general ocurrirá más bien lo contrario, es decir, la imagen inversa por fc de cada elemento de C será un subconjunto bastante grande de X. Habrá muchos casos en X que se asignen a una clase determinada en C.

Clasificadores en Inteligencia Artificial
A la vista de la definición de clasificador que hemos dado, no parece que se trate de algo muy complicado. Pero lo cierto es que esta definición nos permite modelizar problemas que son bastante difíciles de resolver. La dificultad puede venir por una de estas vías:

Un ejemplo de problema de clasificación que está plagado de este tipo de dificultades es la clasificación de animales por especie en base a imágenes de los individuos. Es un problema realmente complicado de resolver porque ni siquiera conocemos aún todas las especies animales que existen.

El caso es que, con esta definición precisa de clasificador que tenemos, podemos usar técnicas de Inteligencia Artificial que aproximen la función fc que nos interesa, siendo nuestro objetivo conseguir una aproximación lo más exacta posible.

Complicaciones con los clasificadores
La definición que hemos dado aquí es bastante simple y cubre los casos más sencillos, aunque ya hay margen para que representen problemas difíciles.

Pero existen varios refinamientos a esta definición que resultan de utilidad en aplicaciones prácticas y que complican bastante nuestra definición básica. Esto se tratará en sucesivos artículos


Para saber más:

Esta página de la Wikipedia proporciona una descripción diferente, menos precisa (aunque equivalente) a lo que hemos visto aquí como clasificador, pero contiene numerosas complicaciones del concepto básico que aquí hemos descrito.

Actualizado: 08/08/2017

 

Inicio Powered by NetBSD
 
HTML5
 
En general, todo el contenido de este sitio web es original, salvo referencias o enlaces a otros sitios web y citas o reproducciones expresamente presentadas como tales.

No está permitida la reproducción ni la copia del contenido de este sitio web sin el permiso expreso de la propiedad del mismo.

Este sitio web no utiliza cookies ni ningún otro mecanismo para almacenar información en los navegadores de los visitantes ni para realizar seguimiento de los mismos.

2017,2018 Revolucionia.net
Sobre Revolucionia
Temas
Para saber más
Contacto