spectral clustering lecture 16
play

Spectral Clustering Lecture 16 David Sontag New York - PowerPoint PPT Presentation

Spectral Clustering Lecture 16 David Sontag New York University Slides adapted from James Hays, Alan Fern, and Tommi Jaakkola Spectral clustering K-means Spectral clustering twocircles, 2


  1. Spectral ¡Clustering ¡ Lecture ¡16 ¡ David ¡Sontag ¡ New ¡York ¡University ¡ Slides adapted from James Hays, Alan Fern, and Tommi Jaakkola

  2. Spectral ¡clustering ¡ K-means Spectral clustering twocircles, 2 clusters two circles, 2 clusters (K − means) 5 5 5 4.5 4.5 4.5 4 4 4 3.5 3.5 3.5 3 3 3 2.5 2.5 2.5 2 2 2 1.5 1.5 1.5 1 1 1 0.5 0.5 0.5 0 0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 1 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 [Shi & Malik ‘00; Ng, Jordan, Weiss NIPS ‘01]

  3. Spectral ¡clustering ¡ nips, 8 clusters lineandballs, 3 clusters fourclouds, 2 clusters 5 5 5 4.5 4.5 4.5 4 4 4 3.5 3.5 3.5 3 3 3 2.5 2.5 2.5 2 2 2 1.5 1.5 1.5 1 1 1 0.5 0.5 0.5 0 0 0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 squiggles, 4 clusters threecircles − joined, 3 clusters twocircles, 2 clusters threecircles − joined, 2 clusters 5 5 5 5 4.5 4.5 4.5 4.5 4 4 4 4 3.5 3.5 3.5 3.5 3 3 3 3 2.5 2.5 2.5 2.5 2 2 2 2 1.5 1.5 1.5 1.5 − 1 1 1 1 − 0.5 0.5 0.5 0.5 − 0 0 0 0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 [Figures from Ng, Jordan, Weiss NIPS ‘01]

  4. Spectral ¡clustering ¡ ¡ ¡Group ¡points ¡based ¡on ¡links ¡in ¡a ¡graph ¡ B A [Slide from James Hays]

  5. !"# � $" � %&'($' � $)' � *&(+) � , • -$ � ./ � 0"11"2 � $" � 3/' � ( � *(3//.(2 � 4'&2'5 � $" � 0"1+3$' � /.1.5(&.$6 � 7'$#''2 � "78'0$/ � � � � • 92' � 0"35: � 0&'($' � – ; � <3556 � 0"22'0$': � =&(+) – 4 � 2'(&'/$ � 2'.=)7"& � =&(+) � >'(0) � 2":' � ./ � "256 � 0"22'0$': � $" � .$/ � 4 � 2'(&'/$ � 2'.=)7"&/? B A [Slide from Alan Fern]

  6. Spectral ¡clustering ¡for ¡segmenta>on ¡ [Slide from James Hays]

  7. Can ¡we ¡use ¡minimum ¡cut ¡for ¡ clustering? ¡ ���� �� � ���� ����� ������� ��� ����� � ��� ���������� [Shi & Malik ‘00]

  8. Graph � partitioning

  9. Graph � Terminologies • Degree � of � nodes • Volume � of � a � set

  10. Graph � Cut • Consider � a � partition � of � the � graph � into � two � parts � A � and � B • Cut(A, � B) : � sum � of � the � weights � of � the � set � of � edges � that � connect � the � two � groups • An � intuitive � goal � is � find � the � partition � that �� minimizes � the � cut

  11. Normalized � Cut • Consider � the � connectivity � between � groups � relative � to � the � volume � of � each � group cut ( A , B ) cut ( A , B ) A � � Ncut ( A , B ) Vol ( A ) Vol ( B ) B � Vol ( A ) Vol ( B ) � Ncut ( A , B ) cut ( A , B ) Vol ( A ) Vol ( B ) Minimized � when � Vol(A) � and � Vol(B) � are � equal. � Thus � encourage � balanced � cut

  12. Solving � NCut • How � to � minimize � Ncut ? � Let W be the similarity matrix, W ( i , j ) W ; i , j � � Let D be the diag. matrix, D ( i , i ) W ( i , j ); j � � � � N Let x be a vector in { 1 , 1 } , x ( i ) 1 i A . • With � some � simplifications, � we � can � show: � T y ( D W ) y � min Ncut ( x ) min x y T y Dy Rayleigh � quotient 1 � y T D 0 ( y takes discrete values ) Subject � to: NP � Hard!

  13. Solving � NCut • Relax � the � optimization � problem � into � the � continuous � domain � by � solving � generalized � eigenvalue � system: ��� � � � � � � � subject � to � � � �� � � • Which � gives: � � � � � ��� • Note � that � � � � � � � , � so � the � first � eigenvector � is � � � � � with � eigenvalue � � . • The � second � smallest � eigenvector � is � the � real � valued � solution � to � this � problem!!

  14. 2 � way � Normalized � Cuts 1. Compute � the � affinity � matrix � W, � compute � the � degree � matrix � (D), � D � is � diagonal � and � ��� 2. Solve � , � where � is � called � the � Laplacian matrix 3. Use � the � eigenvector � with � the � second � smallest � eigen � value � to � bipartition � the � graph � into � two � parts.

  15. Creating � Bi � partition � Using � 2 nd Eigenvector • Sometimes � there � is � not � a � clear � threshold � to � split � based � on � the � second � vector � since � it �� takes � continuous � values • How � to � choose � the � splitting � point? � a) Pick � a � constant � value � (0, � or � 0.5). b) Pick � the � median � value � as � splitting � point. Look � for � the � splitting � point � that � has � the � minimum � Ncut c) value: Choose � n possible � splitting � points. 1. Compute � Ncut value. 2. 3. Pick � minimum.

  16. Spectral clustering: example 6 6 5 5 4 4 3 3 2 2 1 1 0 0 − 1 − 1 − 2 − 2 − 3 − 2 − 1 0 1 2 3 4 5 − 4 − 2 0 2 4 6 Tommi Jaakkola, MIT CSAIL 18

  17. Spectral clustering: example cont’d 0.5 0.4 0.3 0.2 0.1 0 − 0.1 − 0.2 − 0.3 − 0.4 − 0.5 0 5 10 15 20 25 30 35 40 Components of the eigenvector corresponding to the second largest eigenvalue Tommi Jaakkola, MIT CSAIL 19

  18. K � way � Partition? • Recursive � bi � partitioning � (Hagen � et � al.,^91) – Recursively � apply � bi � partitioning � algorithm � in � a � hierarchical � divisive � manner. – Disadvantages: � Inefficient, � unstable • Cluster � multiple � eigenvectors – Build � a � reduced � space � from � multiple � eigenvectors. – Commonly � used � in � recent � papers – A � preferable � approach` � its � like � doing � dimension � reduction � then � k � means

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend