Articulo de referencia

Índice de complejidad

En la informática y la estadística modernas , el índice de complejidad de una función denota el nivel de contenido informativo, lo que a su vez afecta la dificultad de aprender ...

En la informática y la estadística modernas , el índice de complejidad de una función denota el nivel de contenido informativo, lo que a su vez afecta la dificultad de aprender la función a partir de ejemplos . Esto es diferente de la complejidad computacional , que es la dificultad de calcular una función. Los índices de complejidad caracterizan toda la clase de funciones a la que pertenece la que nos interesa. Centrándonos en las funciones booleanas , el detalle de una clasedo{\displaystyle {\mathsf {C}}}En el caso de las funciones booleanas, c denota esencialmente cuán profundamente está articulada la clase.

Definición técnica

Para identificar este índice primero debemos definir una función centinela dedo{\displaystyle {\mathsf {C}}}Centrémonos por un momento en una sola función c , llamémosla un concepto definido en un conjuntoincógnita{\displaystyle {\mathcal {X}}}de elementos que podemos representar como puntos en un espacio euclidiano . En este marco, la función anterior asocia a c un conjunto de puntos que, al estar definidos como externos al concepto, impiden que se expanda en otra función dedo{\displaystyle {\mathsf {C}}}Podemos definir estos puntos de forma dual en términos de proteger un concepto dado c de ser completamente encerrado (invadido) por otro concepto dentro de la clase. Por lo tanto, llamamos a estos puntos centinelas o puntos centinela ; se asignan mediante la función centinela.S{\displaystyle {\boldsymbol {S}}}a cada concepto dedo{\displaystyle {\mathsf {C}}}de tal manera que:

  1. los puntos de vigilancia son externos al concepto c que se va a vigilar e internos a al menos otro que lo incluye,
  2. cada conceptodo{\displaystyle c'}incluyendo c tiene al menos uno de los puntos de centinela de c ya sea en el espacio entre c ydo{\displaystyle c'}o fuerado{\displaystyle c'}y distinto de los puntos de centinela dedo{\displaystyle c'}, y
  3. Constituyen un conjunto mínimo con estas propiedades.

La definición técnica que proviene de ( Apolloni 2006 ) se basa en la inclusión de un concepto aumentado.do+{\displaystyle c^{+}}compuesto por c más sus puntos de centinela por otro(do)+{\displaystyle \left(c'\right)^{+}}en la misma clase.

Definición de la función de centinela

Para una clase conceptualdo{\displaystyle {\mathsf {C}}}en un espacioincógnita{\displaystyle {\mathfrak {X}}}, una función centinela es una función totalS:do{,incógnita}2incógnita{\displaystyle {\boldsymbol {S}}:{\mathsf {C}}\cup \{\emptyset ,{\mathfrak {X}}\}\mapsto 2^{\mathfrak {X}}}que cumplan las siguientes condiciones:

  1. Los centinelas están fuera del concepto de centinela (doS(do)={\displaystyle c\cap {\boldsymbol {S}}(c)=\emptyset }a pesar dedodo{\displaystyle c\in {\mathsf {C}}}) .
  2. Los centinelas están dentro del concepto invasor ( Habiendo introducido los conjuntosdo+=doS(do){\displaystyle c^{+}=c\cup {\boldsymbol {S}}(c)}, un concepto invasordodo{\displaystyle c'\in {\mathsf {C}}}es tal quedodo{\displaystyle c'\not \subsetequ c}ydo+(do)+{\displaystyle c^{+}\subseteq \left(c'\right)^{+}}. Que denotapag(do){\displaystyle \mathrm {arriba} (c)}el conjunto de conceptos que invaden c , debemos tener que sido2pag(do1){\displaystyle c_{2}\in \mathrm {up} (c_{1})}, entoncesdo2S(do1){\displaystyle c_{2}\cap {\boldsymbol {S}}(c_{1})\neq \emptyset }) .
  3. S(do){\displaystyle {\boldsymbol {S}}(c)}es un conjunto mínimo con las propiedades anteriores ( NoSS{\displaystyle {\boldsymbol {S}}'\neq {\boldsymbol {S}}}existe que satisface (1) y (2) y tiene la propiedad de queS(do)S(do){\displaystyle {\boldsymbol {S}}'(c)\subseteq {\boldsymbol {S}}(c)}por cadadodo{\displaystyle c\in {\mathsf {C}}}) .
  4. Los centinelas son guardianes honestos. Puede ser quedo(do)+{\displaystyle c\subseteq \left(c'\right)^{+}}peroS(do)do={\displaystyle {\boldsymbol {S}}(c)\cap c'=\emptyset }de modo quedopag(do){\displaystyle c'\not \in \mathrm {up} (c)}. Sin embargo, esto debe ser consecuencia del hecho de que todos los puntos deS(do){\displaystyle {\boldsymbol {S}}(c)}están involucrados en realmente vigilar c contra otros conceptos enpag(do){\displaystyle \mathrm {up} (c)}y no solo evitando la inclusión dedo+{\displaystyle c^{+}}por(do)+{\displaystyle (c')^{+}}Por lo tanto, si eliminamosdo,S(do){\displaystyle c',{\boldsymbol {S}}(c)}permanece sin cambios ( Siempre quedo1{\displaystyle c_{1}}ydo2{\displaystyle c_{2}}son tales quedo1do2S(do2){\displaystyle c_{1}\subset c_{2}\cup {\boldsymbol {S}}(c_{2})}ydo2S(do1)={\displaystyle c_{2}\cap {\boldsymbol {S}}(c_{1})=\emptyset }, entonces la restricción deS{\displaystyle {\boldsymbol {S}}}a{do1}pag(do1){do2}{\displaystyle \{c_{1}\}\cup \mathrm {up} (c_{1})-\{c_{2}\}}es una función centinela en este conjunto ) .

S(do){\displaystyle {\boldsymbol {S}}(c)}es la frontera de c sobreS{\displaystyle {\boldsymbol {S}}}.

Una visión esquemática de la funcionalidad de vigilancia externa.

Con referencia a la imagen de la derecha,{incógnita1,incógnita2,incógnita3}{\displaystyle \{x_{1},x_{2},x_{3}\}}es una frontera candidata dedo0{\displaystyle c_{0}}contrado1,do2,do3,do4{\displaystyle c_{1},c_{2},c_{3},c_{4}}. Todos los puntos están en el espacio entre undoi{\displaystyle c_{i}}ydo0{\displaystyle c_{0}}. Evitan la inclusión dedo0{incógnita1,incógnita2,incógnita3}{\displaystyle c_{0}\cup \{x_{1},x_{2},x_{3}\}}endo3{\displaystyle c_{3}}, siempre que estos puntos no sean utilizados por este último para protegerse contra otros conceptos. Por el contrario, esperamos quedo1{\displaystyle c_{1}}usosincógnita1{\displaystyle x_{1}}yincógnita3{\displaystyle x_{3}}como sus propios centinelas,do2{\displaystyle c_{2}}usos incógnita2{\displaystyle x_{2}}yincógnita3{\displaystyle x_{3}}ydo4{\displaystyle c_{4}}usos incógnita1{\displaystyle x_{1}}yincógnita2{\displaystyle x_{2}}Análogamente. Puntoincógnita4{\displaystyle x_{4}}no está permitido comodo0{\displaystyle c_{0}}puesto centinela ya que, como cualquier asiento diplomático, debe estar ubicado fuera de todos los demás conceptos solo para asegurar que no esté ocupado en caso de invasión pordo0{\displaystyle c_{0}}.

Definición de detalle

El tamaño de la frontera del concepto más caro que se debe vigilar con la función de vigilancia menos eficiente, es decir, la cantidad

Ddo=sorberS,do#S(do){\displaystyle \mathrm {D} _{\mathsf {C}}=\sup _{{\boldsymbol {S}},c}\#{\boldsymbol {S}}(c)},

se llama detalle dedo{\displaystyle {\mathsf {C}}}. S{\displaystyle {\boldsymbol {S}}}También abarca funciones centinela en subconjuntos deincógnita{\displaystyle {\mathfrak {X}}}En este caso, se vigilan las intersecciones de los conceptos con estos subconjuntos. En realidad, subconjuntos propios deincógnita{\displaystyle {\mathfrak {X}}}pueden albergar tareas centinela que resultan más difíciles que las que surgen conincógnita{\displaystyle {\mathfrak {X}}}sí mismo.

El detalleDdo{\displaystyle \mathrm {D} _{\mathsf {C}}}es una medida de complejidad de clases de conceptos dual a la dimensión VCDVdo{\displaystyle \mathrm {D} _{{\mathsf {V}}C}}El primero utiliza puntos para separar conjuntos de conceptos, el segundo conceptos para particionar conjuntos de puntos. En particular, se cumple la siguiente desigualdad ( Apolloni 1997 ).

DdoDVdo+1{\displaystyle \mathrm {D} _{\mathsf {C}}\leq \mathrm {D} _{{\mathsf {V}}C}+1}

Véase también la complejidad de Rademacher para un índice de complejidad de clases introducido recientemente.

Ejemplo: espacios continuos

Clase C de círculos enR2{\displaystyle \mathbb {R} ^{2}}tiene detallesDdo=2{\displaystyle \mathrm {D} _{\mathsf {C}}=2}, como se muestra en la imagen de la izquierda abajo. De manera similar, para la clase de segmentos enR{\displaystyle \mathbb {R} }, como se muestra en la imagen de la derecha.

Ejemplo: espacios discretos

La clasedo={do1,do2,do3,do4}{\displaystyle {\mathsf {C}}=\{c_{1},c_{2},c_{3},c_{4}\}}enincógnita={incógnita1,incógnita2,incógnita3}{\displaystyle {\mathfrak {X}}=\{x_{1},x_{2},x_{3}\}}cuyos conceptos se ilustran en el siguiente esquema, donde "+" denota un elemento.incógnitaj{\displaystyle x_{j}}perteneciente adoi{\displaystyle c_{i}}, "-" un elemento externodoi{\displaystyle c_{i}}y   un puesto de vigilancia:

Esta clase tieneDdo=2{\displaystyle \mathrm {D} _{\mathsf {C}}=2}Como es habitual, podemos tener diferentes funciones de vigilancia. Un caso S en el peor de los casos , como se ilustra, es:S(do1)={incógnita1,incógnita2},S(do2)={incógnita1},S(do3)={incógnita2},S(do4)={\displaystyle \mathbf {S} (c_{1})=\{x_{1},x_{2}\},\mathbf {S} (c_{2})=\{x_{1}\},\mathbf {S} (c_{3})=\{x_{2}\},\mathbf {S} (c_{4})=\emptyset }Sin embargo, hay uno más barato.S(do1)={incógnita3},S(do2)={incógnita1},S(do3)={incógnita2},S(do4)={\displaystyle \mathbf {S} (c_{1})=\{x_{3}\},\mathbf {S} (c_{2})=\{x_{1}\},\mathbf {S} (c_{3})=\{x_{2}\},\mathbf {S} (c_{4})=\emptyset }:

Referencias

  • Apolloni, B.; Malchiodi, D.; Gaito, S. (2006). Inferencia algorítmica en aprendizaje automático . Serie internacional sobre inteligencia avanzada. Vol.  5 (2.ª  ed.). Adelaida: Magill. Advanced Knowledge International
  • Apolloni, B.; Chiaravalli, S. (1997). "Aprendizaje PAC de clases de conceptos a través de los límites de sus elementos" . Theoretical Computer Science . 172 ( 1–2 ): 91–120 . doi : 10.1016/S0304-3975(95)00240-5 .