improving performance and accuracy of local pca
play

Improving Performance and Accuracy of Local PCA C. Bouville, M. - PowerPoint PPT Presentation

Improving Performance and Accuracy of Local PCA C. Bouville, M. Ribardire University of Rennes 1, France, and Charles University, Czech Republic Pacific Graphics 2011 PG 2011 (Pacific Graphics 2011) will be held on September 21 to 23, 2011


  1. Improving Performance and Accuracy of Local PCA C. Bouville, M. Ribardière University of Rennes 1, France, and Charles University, Czech Republic Pacific Graphics 2011 PG 2011 (Pacific Graphics 2011) will be held on September 21 to 23, 2011 in Kaohsiung, Taiwan. The 19th Pacific Conference on Computer Graphics and Applications V. Gassenbauer, J. K ř ivánek, K. Bouatouch,

  2. Objective Pacific Graphics 2011 Precomputed Radiance Bidirectional Texture Function Transfer (PRT) (BTF) compression Image courtesy of Hongzhi Wu • Need to compress large data set Kaohsiung, Taiwan 2 | 25

  3. Precomputed Radiance Transfer Pacific Graphics 2011 • Relighting as a matrix-vector multiply     P  T T T   1 1 Μ 11 12   L   1   P  T T T     2 Μ 2 21 22 L       2  P T T T 3 Μ   31 32  3                  L        M T T T   P N Μ N1 N2 4 • Matrix T(x, ω i ) - Billions of elements • Infeasible multiplication • Compression (wavelet, Local PCA ) Kaohsiung, Taiwan 3 | 25

  4. Related Work Pacific Graphics 2011 • Precomputation-based rendering [Liu et al. 04], [Sloan et al. 02,03] [Xu et al. 08] [Huang et al. 10] Low-freq shadows, Dynamic scene, High-freq shadows, inter-reflections BRDF editing inter-reflections • Still use slow and inaccurate LPCA ! Kaohsiung, Taiwan 4 | 25

  5. Related Work Pacific Graphics 2011 • BTF compression • [Müller et al. 03], [Filip et al. 09] • Simpler LPCA: k -means problem • Better performance [Phillips 02], [Elkan 03], [Hamerly10] • Better accuracy [Arthur et al. 07], [Kanugo et al. 02] Kaohsiung, Taiwan 5 | 25

  6. Compression Problem Pacific Graphics 2011 • Input • Output • High-dimensional • Find k clusters – i.e. points (rows of T ) low-dimensional subspaces • Number of clusters k x 13 x 14 x 104 x 960 Kaohsiung, Taiwan 6 | 25

  7. LPCA – The Algorithm Pacific Graphics 2011 • Guess k clusters (i.e. subs.) Generate seeds • Initialize by randomly selected centers Until converge • Repeat until convergence Classification • Assign each point to the nearest cluster Update • Update PCA in the cluster Kaohsiung, Taiwan 7 | 25

  8. Motivation Pacific Graphics 2011 • Inefficient Generate seeds • For each point compute distance to all clusters a i Until converge x Classification a k a 1 a 2 Update • Inaccurate • Prone to get stuck in a local optimum Kaohsiung, Taiwan 8 | 25

  9. Our Contribution Pacific Graphics 2011 • Inefficient Generate seeds • For each point compute distance • SortCluster LPCA (SC-LPCA) to all clusters a i Until converge x Classification a k a 1 a 2 Update • Inaccurate • Prone to get stuck in a local • SortMeans++ optimum Kaohsiung, Taiwan 9 | 25

  10. Outline Pacific Graphics 2011 • Im Improvi ving ng P Perfor orma manc nce • SortCluster-LPCA (SC-LPCA) • Improving Accuracy • SortMeans++ • Results Kaohsiung, Taiwan 10 | 25

  11. Accelerated k -means Pacific Graphics 2011 • ∆ - inequality [Phillips 02] x If d (c a ,c b ) ≥ 2 d ( x ,c a ) → d ( x ,c b ) ≥ d ( x ,c a ) → d ( x ,c b ) not necessary c a c b to compute ! Kaohsiung, Taiwan 11 | 25

  12. How does it work ? Pacific Graphics 2011 We know: potentially nearest cluster to x We know: Distances of other cluster w.r.t. c a x c a c b c c Compute d ( x ,c b ) Check d (c a ,c b ) ≥ 2 d ( x ,c a ) Compute d ( x ,c a ) c b becomes a new nearest cluster Check d (c a ,c c ) ≥ d ( x ,c a )+ d ( x ,c b ) Kaohsiung, Taiwan 12 | 25

  13. Our Contribution: From k -means to LPCA Pacific Graphics 2011 k -means LPCA Piecewise Piecewise reconstruction in reconstruction low-dimensional subspaces d ( x , a b ) x x a a a b c a c b d ( a a , a b ) Kaohsiung, Taiwan 13 | 25

  14. Pacific Graphics 2011 ∆ -inequality for LPCA • Distance between subspaces • d (a a ,a b ) = inf { ║ p - q ║; p in a a , q in a b } • ∆ -inequality for subspaces x d ( x , a b ) If d ( a a , a b ) ≥ 2 d ( x , a b ) → d ( x,a b ) ≥ d ( x , a b ) a a a b → d ( x , a b ) not necessary to d ( a a , a b ) compute ! Kaohsiung, Taiwan 14 | 25

  15. Our SortCluster-LPCA Pacific Graphics 2011 Generate seeds • When assigning x • Start from a j Until converge • Proceed a i in increasing order of distances w.r.t. a j Classification • Check ∆ -inequality using ∆ -ineq. • For all a i precompute Update • Distances to each others Precompute • Ordering distances Kaohsiung, Taiwan 15 | 25

  16. Outline Pacific Graphics 2011 • Improving Performance • SortCluster-LPCA (SC-LPCA) • Impro roving A Accurac acy • SortMeans++ • Results Kaohsiung, Taiwan 16 | 25

  17. LPCA Accuracy Pacific Graphics 2011 • LPCA prone to stuck in local optimum • Observation • Error comes from poor selections of cluster centers Kaohsiung, Taiwan 17 | 25

  18. Generation of Seeds Pacific Graphics 2011 • Some heuristic Generate seeds • Farthest first [Hochbaum et al. 85] • Sum based [Hašan et al. 06] Until converge • k -means++ [Arthur and Vassil. 07] Classification • … using ∆ -ineq. • Our approach: SortMeans++ Update • Based on k -means++ Precompute distances • Faster Kaohsiung, Taiwan 18 | 25

  19. Our SortMeans++ Pacific Graphics 2011 • Select initial seeds Select 1 st seed at random Take 2 nd seed with probability equal distances Recluster using ∆ -inequality Take 3 rd seed with probability equal distances Recluster … Kaohsiung, Taiwan 19 | 25

  20. Outline Pacific Graphics 2011 • Improving Performance • SortCluster-LPCA (SC-LPCA) • Improving Accuracy • SortMeans++ • Resu sults ts Kaohsiung, Taiwan 20 | 25

  21. Results Pacific Graphics 2011 • Evaluate method with different parameters • Scalability with the subspace dimension • More than 5x speed-up Kaohsiung, Taiwan 21 | 25

  22. Overall Performance Pacific Graphics 2011 • Did several iterations of (SC)LPCA up to 24 basis Model Vertices [#] LPCA SC-LPCA Speed Up PRT Horse 67.6k 3h 48m 11m 20.3x 22.5 s Dragon 57.5k 3h 1m 28m 6.4x 25.5 s Buddha 85.2k 4h 38m 50m 5.6x 31.6 s Disney 106.3k 5h 50m 1h 8m 5.1x 46.5 s Kaohsiung, Taiwan 22 | 25

  23. Improving Accuracy Pacific Graphics 2011 • Latency and accuracy of seeding algs: • Our SortMeans++ • Generally lowest error & fast • Improve performance of SC-LPCA ! Kaohsiung, Taiwan 23 | 25

  24. Conclusion Pacific Graphics 2011 • SC-LPCA (accelerated LPCA) Generate seeds SortMeans++ • Avoid unnecessary distance comp. • Speed-up of 5 to 20 on our PRT data • Without changing output ! Until converge • Improve accuracy (SortMeans++) Classification using ∆ -ineq. • More accurate data approximation Update • Future work Precompute • Test on other CG data distances • GPU acceleration Kaohsiung, Taiwan 24 | 25

  25. BTF Compression Pacific Graphics 2011 • Try several data sets • SC-LPCA speed-up of about only 1.5x • Reason: Small number of subspaces Kaohsiung, Taiwan 25 | 25

  26. The End Pacific Graphics 2011 • Acknowledgement • European Community • Marie Curie Fellowship PIOF-GA-2008-221716 • Ministry of Education, Czech Republic • Research program LC-06008. • Anonymous reviewers Thank You for your attention Kaohsiung, Taiwan 26 | 25

Recommend


More recommend