¿Cómo se puede utilizar una matriz laplaciana gráfica para resolver el corte normalizado de una gráfica?

Aquí está el resumen general de cómo funciona.

Primero, tome un gráfico [math] G = (V, E) [/ math] con una función de peso de borde [math] w: E \ rarr \ mathbb {R} [/ math].

Defina un corte de este gráfico como cualquier partición 2 de los vértices, en conjuntos [matemática] A [/ matemática] y [matemática] B [/ matemática]. El tamaño del corte se define como

[matemáticas] \ text {corte} (A, B) = \ sum_ {u \ en A, v \ en B} w (u, v) [/ matemáticas]

El “corte mínimo” es el corte que minimiza este valor. En la práctica, lo que sucede es que obtienes una partición con un conjunto muy pequeño y uno muy grande, por ejemplo, uno de los conjuntos consta de un vértice único, particularmente aislado.

Así que “normalizamos” el tamaño de corte, en relación con todo el conjunto de vértices. El corte normalizado se define como

[matemáticas] \ text {Ncut} (A, B) = \ frac {\ text {cut} (A, B)} {\ text {cut} (A, V)} + \ frac {\ text {cut} ( A, B)} {\ text {cut} (B, V)} [/ math]

Ahora el problema es encontrar un corte que minimice esta función. Resulta que esto puede reducirse a un problema de valor propio.

Defina dos matrices, [matemáticas] W [/ matemáticas] y [matemáticas] D [/ matemáticas] con

[matemáticas] W_ {ij} = w (i, j) [/ matemáticas]

y D es una matriz diagonal con el peso total del borde para cada vértice a lo largo del dialgonal (Nota administrativa de Quora: no puedo usar \ begin {cases} … \ end {cases})

[math] DW [/ math] es el problema de Laplacian y el valor propio que queremos resolver es

[matemáticas] D ^ {- \ frac {1} {2}} (DW) D ^ {- \ frac {1} {2}} \ vec {x} = \ lambda \ vec {x} [/ matemáticas]

Aquí hay un esquema sólido que encontré en la web, que incluye todos los pasos: http://www.cs.berkeley.edu/~mali…