Algoritmo de multitud


El algoritmo in-crowd es un método numérico para resolver la búsqueda de base rápidamente; más rápido que cualquier otro algoritmo para problemas grandes y dispersos. [1] Este algoritmo es un método de conjunto activo , que minimiza iterativamente los subproblemas de la eliminación de ruido de búsqueda de base global:

donde es la señal observada, es la señal escasa a recuperar, es la señal esperada bajo , y es el parámetro de regularización que equilibra la fidelidad y la simplicidad de la señal. La simplicidad se mide aquí usando la escasez de la solución , medida a través de su norma. Las estrategias de conjuntos activos son muy eficientes en este contexto, ya que se espera que solo unos pocos coeficientes sean distintos de cero. Por lo tanto, si se pueden identificar, la solución se resuelve resolviendo el problema restringido a estos coeficientes. Aquí, las características se seleccionan con avidez en función del valor absoluto de su gradiente en la estimación actual.

Otros métodos de conjuntos activos para la eliminación de ruido de búsqueda básica incluyen BLITZ, [2] donde la selección del conjunto activo se realiza utilizando la brecha de dualidad del problema, y ​​The Feature Sign Search, [3] donde las características se incluyen en función de la estimación de su signo.

Dado que cada vez que el algoritmo in-crowd realiza una búsqueda global, agrega componentes al conjunto activo, puede ser más rápido que los mejores algoritmos alternativos cuando esta búsqueda es computacionalmente costosa. Un teorema [1] garantiza que se alcanza el óptimo global a pesar de la naturaleza de muchos a la vez del algoritmo de multitud.