En matemáticas, una función de conjunto submodular (también conocida como función submodular ) es una función de conjunto que, informalmente, describe la relación entre un conjunto de entradas y una salida, donde añadir más de una entrada tiene un beneficio adicional decreciente ( rendimientos decrecientes ). La propiedad natural de rendimientos decrecientes las hace adecuadas para muchas aplicaciones, incluidos algoritmos de aproximación , teoría de juegos (como funciones que modelan las preferencias del usuario) y redes eléctricas . Recientemente, las funciones submodulares también han encontrado utilidad en varios problemas del mundo real en aprendizaje automático e inteligencia artificial , incluyendo resumen automático , resumen de múltiples documentos , selección de características , aprendizaje activo , ubicación de sensores, resumen de colecciones de imágenes y muchos otros dominios. [ 1 ] [ 2 ] [ 3 ] [ 4 ]
Definición
Sies un conjunto finito , una función submodular es una función de conjunto, dóndedenota el conjunto potencia de, que satisface una de las siguientes condiciones equivalentes. [ 5 ]
- Por cadacony cadatenemos eso.
- Por cadatenemos eso.
- Por cadayde tal manera quetenemos eso, o equivalentemente,.
Una función submodular no negativa también es una función subaditiva , pero una función subaditiva no tiene por qué ser submodular.Si no se asume que es finito, entonces las condiciones anteriores no son equivalentes. En particular, una función definido porsies finito ysies infinito satisface la primera condición anterior, pero la segunda condición falla cuandoyson conjuntos infinitos con intersección finita.
Tipos y ejemplos de funciones submodulares
Monótono
Una función de conjuntoes monótono si para cadatenemos esoEjemplos de funciones submodulares monótonas incluyen:
- Funciones lineales (modulares)
- Cualquier función de la formase denomina función lineal. Además, sientonces f es monótona.
- Funciones que se suman al presupuesto
- Cualquier función de la formapara cadayse denomina aditivo presupuestario. [ 6 ]
- Funciones de cobertura
- Dejarser una colección de subconjuntos de algún conjunto base. La funciónparaSe denomina función de cobertura. Esta puede generalizarse añadiendo ponderaciones no negativas a los elementos.
- Entropía
- DejarSea un conjunto de variables aleatorias . Entonces, para cualquiertenemos esoes una función submodular, dondees la entropía del conjunto de variables aleatorias, a fact known as Shannon's inequality.[7] Further inequalities for the entropy function are known to hold, see entropic vector.
- Matroidrank functions
- Let be the ground set on which a matroid is defined. Then the rank function of the matroid is a submodular function.[8]
Non-monotone
A submodular function that is not monotone is called non-monotone. In particular, a function is called non-monotone if it has the property that adding more elements to a set can decrease the value of the function. More formally, the function is non-monotone if there are sets in its domain s.t. and .
Symmetric
A non-monotone submodular function is called symmetric if for every we have that . Examples of symmetric non-monotone submodular functions include:
- Graph cuts
- Let be the vertices of a graph. For any set of vertices let denote the number of edges such that and . This can be generalized by adding non-negative weights to the edges.
- Mutual information
- Let be a set of random variables. Then for any we have that is a submodular function, where is the mutual information.
Asymmetric
A non-monotone submodular function which is not symmetric is called asymmetric.
- Directed cuts
- Let be the vertices of a directed graph. For any set of vertices let denote the number of edges such that and . This can be generalized by adding non-negative weights to the directed edges.
Continuous extensions of submodular set functions
Often, given a submodular set function that describes the values of various sets, we need to compute the values of fractional sets. For example: we know that the value of receiving house A and house B is V, and we want to know the value of receiving 40% of house A and 60% of house B. To this end, we need a continuous extension of the submodular set function.
Formally, a set function with can be represented as a function on , by associating each with a binary vector such that when , and otherwise. A continuous extension of is a continuous function , that matches the value of on , i.e. .
Several kinds of continuous extensions of submodular functions are commonly used, which are described below.
Lovász extension
This extension is named after mathematician László Lovász.[9] Consider any vector such that each . Then the Lovász extension is defined as
where the expectation is over chosen from the uniform distribution on the interval . The Lovász extension is a convex function if and only if is a submodular function.
Multilinear extension
Consider any vector such that each . Entonces la extensión multilineal se define como [ 10 ] [ 11 ].
Intuitivamente, x i representa la probabilidad de que el elemento i sea elegido para el conjunto. Para cada conjunto S , los dos productos escalares representan la probabilidad de que el conjunto elegido sea exactamente S. Por lo tanto, la suma representa el valor esperado de f para el conjunto formado al elegir cada elemento i al azar con probabilidad xi, independientemente de los demás elementos.
Cierre convexo
Consideremos cualquier vectorde tal manera que cadaEntonces, el cierre convexo se define como.
La clausura convexa de cualquier función de conjunto es convexa sobre.
Cierre cóncavo
Consideremos cualquier vectorde tal manera que cadaEntonces, el cierre cóncavo se define como.
Relaciones entre extensiones continuas
Para las extensiones analizadas anteriormente, se puede demostrar quecuandoes submodular. [ 12 ]
Propiedades
- La clase de funciones submodulares es cerrada bajo combinaciones lineales no negativas . Consideremos cualquier función submodular.y números no negativos. Luego la funcióndefinido pores submodular.
- Para cualquier función submodular, la función definida pores submodular.
- La función, dóndees un número real , es submodular siempre quees monótono submodular. Más generalmente,es submodular, para cualquier función cóncava no decreciente.
- Consideremos un proceso aleatorio donde un conjuntose elige con cada elemento enestar incluido enindependientemente con probabilidadEntonces, la siguiente desigualdad es verdadera.dóndees el conjunto vacío . De forma más general, consideremos el siguiente proceso aleatorio donde un conjuntose construye de la siguiente manera. Para cada uno deconstruiral incluir cada elemento enindependientemente encon probabilidadAdemás, dejemos que...Entonces, la siguiente desigualdad es verdadera..
Problemas de optimización
Las funciones submodulares poseen propiedades muy similares a las de las funciones convexas y cóncavas . Por ello, un problema de optimización que consista en optimizar una función convexa o cóncava también puede describirse como el problema de maximizar o minimizar una función submodular sujeta a ciertas restricciones.
Minimización de funciones de conjuntos submodulares
La dificultad de minimizar una función de conjunto submodular depende de las restricciones impuestas al problema.
- El problema sin restricciones de minimizar una función submodular es computable en tiempo polinomial , [ 13 ] [ 14 ] e incluso en tiempo fuertemente polinomial . [ 15 ] [ 16 ] Calcular el corte mínimo en un grafo es un caso especial de este problema de minimización.
- El problema de minimizar una función submodular con una cota inferior de cardinalidad es NP-difícil , con cotas inferiores de factor polinomial en el factor de aproximación. [ 17 ] [ 18 ]
Maximización de la función de conjunto submodular
A diferencia del caso de minimización, maximizar una función submodular genérica es NP-difícil incluso en el contexto sin restricciones. Por lo tanto, la mayoría de los trabajos en este campo se centran en algoritmos de aproximación de tiempo polinomial, incluidos algoritmos voraces o algoritmos de búsqueda local .
- El problema de maximizar una función submodular no negativa admite un algoritmo de aproximación 1/2. [ 19 ] [ 20 ] Calcular el corte máximo de un grafo es un caso especial de este problema.
- El problema de maximizar una función submodular monótona sujeta a una restricción de cardinalidad admite unaalgoritmo de aproximación. [ 21 ] [ 22 ] El problema de cobertura máxima es un caso especial de este problema.
- El problema de maximizar una función submodular monótona sujeta a una restricción de matroide (que engloba el caso anterior) también admite unaalgoritmo de aproximación. [ 23 ] [ 24 ] [ 25 ]
Muchos de estos algoritmos pueden unificarse dentro de un marco de algoritmos basado en diferencias semi-diferenciales. [ 18 ]
Problemas de optimización relacionados
Además de la minimización y maximización submodular, existen otros problemas de optimización naturales relacionados con funciones submodulares.
- Minimizar la diferencia entre dos funciones submodulares [ 26 ] no solo es NP difícil, sino también inaproximable. [ 27 ]
- La minimización/maximización de una función submodular sujeta a una restricción de conjunto de nivel submodular (también conocida como optimización submodular sujeta a una cobertura submodular o restricción de mochila submodular) admite garantías de aproximación acotadas. [ 28 ]
- La partición de datos basada en una función submodular para maximizar el bienestar promedio se conoce como el problema del bienestar submodular, que también admite garantías de aproximación limitadas (véase maximización del bienestar ).
Aplicaciones
Las funciones submodulares aparecen de forma natural en diversas aplicaciones del mundo real, como en economía , teoría de juegos , aprendizaje automático y visión artificial [ 4 ] [ 29 ] , así como en inteligencia artificial general [ 30 ] . Debido a la propiedad de rendimientos decrecientes, las funciones submodulares modelan de forma natural los costes de los artículos, ya que suele haber un mayor descuento al aumentar la cantidad de artículos comprados. Las funciones submodulares modelan las nociones de complejidad, similitud y cooperación cuando aparecen en problemas de minimización. En los problemas de maximización, por otro lado, modelan las nociones de diversidad, información y cobertura.
Véase también
Citas
- ↑ H. Lin y J. Bilmes, Una clase de funciones submodulares para la generación de resúmenes de documentos, ACL-2011.
- ↑ S. Tschiatschek, R. Iyer, H. Wei y J. Bilmes, Aprendizaje de mezclas de funciones submodulares para la generación de resúmenes de colecciones de imágenes, NIPS-2014.
- ↑ A. Krause y C. Guestrin, Valor de información casi óptimo y no miope en modelos gráficos, UAI-2005.
- 1 2 A. Krause y C. Guestrin, Más allá de la convexidad: submodularidad en el aprendizaje automático, Tutorial en ICML-2008
- ↑ (Schrijver 2003 , §44, pág. 766)
- ↑ Buchbinder, Niv; Feldman, Moran (2018). "Problemas de maximización de funciones submodulares" . En Gonzalez, Teofilo F. (ed.). Manual de algoritmos de aproximación y metaheurísticas, segunda edición: metodologías y aplicaciones tradicionales . Chapman and Hall/CRC. doi : 10.1201/9781351236423 . ISBN 9781351236423.
- ↑ "Procesamiento de la información y aprendizaje" (PDF) . cmu.
- ^ Fujishige (2005) p.22
- ↑ Lovász, L. (1983). "Funciones submodulares y convexidad". Programación matemática: estado del arte . págs. 235–257 . doi : 10.1007/978-3-642-68874-4_10 . ISBN 978-3-642-68876-8. S2CID 117358746 .
- ↑ Vondrak, Jan (17 de mayo de 2008). «Aproximación óptima para el problema de bienestar submodular en el modelo de oráculo de valor» . Actas del cuadragésimo simposio anual de la ACM sobre Teoría de la Computación . STOC '08. Nueva York, NY, EE. UU.: Association for Computing Machinery. págs. 67–74 . doi : 10.1145/1374376.1374389 . ISBN 978-1-60558-047-0. S2CID 170510 .
- ^ Calinescu, Gruia; Chekuri, Chandra; Pál, Martín; Vondrák, Jan (enero de 2011). "Maximización de una función submodular monótona sujeta a una restricción matroide" . Revista SIAM de Computación . 40 (6): 1740–1766.doi : 10.1137 / 080733991 . ISSN 0097-5397 .
- ↑ Vondrák, Jan. "Técnicas poliédricas en optimización combinatoria: Lección 17" (PDF) .
- ↑ Grötschel, M. ; Lovasz, L. ; Schrijver, A. (1981). "El método del elipsoide y sus consecuencias en la optimización combinatoria". Combinatorica . 1 (2): 169– 197. doi : 10.1007/BF02579273 . hdl : 10068/182482 . S2CID 43787103 .
- ↑ Cunningham, WH (1985). "Sobre la minimización de funciones submodulares". Combinatorica . 5 (3): 185– 192. doi : 10.1007/BF02579361 . S2CID 33192360 .
- ↑ Iwata, S.; Fleischer, L.; Fujishige, S. (2001). "Un algoritmo combinatorio fuertemente polinomial para minimizar funciones submodulares". J. ACM . 48 (4): 761– 777. doi : 10.1145/502090.502096 . S2CID 888513 .
- ↑ Schrijver, A. (2000). "Un algoritmo combinatorio que minimiza funciones submodulares en tiempo fuertemente polinomial" . J. Combin. Theory Ser. B. 80 ( 2): 346–355 . doi : 10.1006/jctb.2000.1989 .
- ↑ Z. Svitkina y L. Fleischer, Aproximación submodular: algoritmos basados en muestreo y límites inferiores, SIAM Journal on Computing (2011).
- 1 2 R. Iyer, S. Jegelka y J. Bilmes, Optimización de funciones submodulares basada en semidiferenciales rápidos, Proc. ICML (2013).
- ↑ U. Feige , V. Mirrokni y J. Vondrák, Maximizing non-monotone submodular functions, Proc. of 48th FOCS (2007), pp. 461–471.
- ↑ N. Buchbinder, M. Feldman, J. Naor y R. Schwartz, Una aproximación lineal ajustada en tiempo (1/2) para la maximización submodular sin restricciones, Actas de la 53.ª FOCS (2012), págs. 649-658.
- ↑ Nemhauser, George ; Wolsey, LA; Fisher, ML (1978). "Análisis de aproximaciones para maximizar funciones de conjuntos submodulares I". Mathematical Programming . 14 (14): 265– 294. doi : 10.1007/BF01588971 . S2CID 206800425 .
- ↑ Williamson, David P. "Uniendo la optimización continua y discreta: Lección 23" (PDF) .
- ↑ G. Calinescu, C. Chekuri, M. Pál y J. Vondrák, Maximizing a submodular set function subject to a matroid constraint, SIAM J. Comp. 40:6 (2011), 1740-1766.
- ↑ M. Feldman, J. Naor y R. Schwartz, Un algoritmo unificado continuo y voraz para la maximización submodular, Actas de la 52.ª FOCS (2011).
- ↑ Y. Filmus, J. Ward, Un algoritmo combinatorio ajustado para la maximización submodular sujeta a una restricción de matroide, Actas de la 53.ª FOCS (2012), págs. 659-668.
- ↑ M. Narasimhan y J. Bilmes, Un procedimiento submodular-supermodular con aplicaciones al aprendizaje de estructuras discriminativas, En Proc. UAI (2005).
- ↑ R. Iyer y J. Bilmes, Algoritmos para la minimización aproximada de la diferencia entre funciones submodulares, En Proc. UAI (2012).
- ↑ R. Iyer y J. Bilmes, Optimización submodular sujeta a restricciones de cobertura submodular y de mochila submodular, en Advances of NIPS (2013).
- ↑ J. Bilmes, Submodularidad en aplicaciones de aprendizaje automático, Tutorial en AAAI-2015.
- ↑ Bilmes, Jeff (31 de enero de 2022). "Submodularidad en aprendizaje automático e inteligencia artificial". arXiv : 2202.00132 [ cs.LG ].
Referencias
- Schrijver, Alexander (2003), Optimización combinatoria , Springer , ISBN 3-540-44389-4
- Lee, Jon (2004), Un primer curso de optimización combinatoria , Cambridge University Press , ISBN 0-521-01012-8
- Fujishige, Satoru (2005), Funciones submodulares y optimización , Elsevier , ISBN 0-444-52086-4
- Narayanan, H. (1997), Funciones submodulares y redes eléctricas , Elsevier, ISBN 0-444-82523-1
- Oxley, James G. (1992), Teoría de los matroides , Oxford Science Publications, Oxford: Oxford University Press , ISBN 0-19-853563-5, Zbl 0784.05002
Enlaces externos
- http://www.cs.berkeley.edu/~stefje/references.html contiene una bibliografía más extensa.
- http://submodularity.org/ incluye más material sobre el tema.
- Optimización combinatoria
- Algoritmos de aproximación
- teoría de los matroides