SlideShare a Scribd company logo
EIGENVALUES
         AND
EIGENVECTORS
OF SYMMETRIC
     MATRICES
        Ivan Mateev




        19/03/2013
LINEAR TRANSFORMATIONS:
                            RECAP
A linear transformation




                           Matrix




                                     19/03/2013
LINEAR TRANSFORMATIONS:
                   “UNDER THE HOOD”
Shapes can be viewed as collections of points




            Lots of points*


                                                 *Infinitely many
                                                     19/03/2013
LINEAR TRANSFORMATIONS:
                     VECTOR SPACES
Each two points define a vector




                                     19/03/2013
LINEAR TRANSFORMATIONS:
                      VECTOR SPACES
Each two points define a vector




Instead of a collection of points*, a shape can be seen as a collections of
vectors*




                                                                        *Infinitely many
                                                                               19/03/2013
LINEAR TRANSFORMATIONS:
                      VECTOR SPACES
Each two points define a vector




Instead of a collection of points*, shapes can be seen as collections of
vectors*




“Vector spaces”!


                                                                             19/03/2013
                                                                        *Infinitely many
LINEAR TRANSFORMATIONS:
                      VECTOR SPACES
A linear transformation a function, which transform one vector space
into another.




                                                                        19/03/2013
LINEAR TRANSFORMATIONS


Scaling




Shearing




                             19/03/2013
SCALING AS A VECTOR
              TRANSFORMATION

Scaling




                                 19/03/2013
SCALING AS A VECTOR
   TRANSFORMATION




                      19/03/2013
SCALING AS A VECTOR
   TRANSFORMATION




                      19/03/2013
SCALING AS A VECTOR
                             TRANSFORMATION




The   red and blue vectors didn’t change (much)!
                                                    19/03/2013
SCALING AS A VECTOR
                               TRANSFORMATION




The   red and blue vectors didn’t change (much)!
They are   actually parallel to the vectors (1,0) and (0,1)   19/03/2013
SHEARING AS A VECTOR
                            TRANSFORMATION
Shearing




The   red vectors are preserved
Actually all   vectors, parallel to (1,0) are preserved   19/03/2013
EIGENVECTORS & EIGENVALUES

 A non-zero vector, which doesn’t change
direction in the transformation (except for
it’s sign) is called an Eigenvector.
 Each eigenvector has a number associated
with it, which is called an Eigenvalue.
 Literally means “own vector” and “own
value” from German.
 Historically eigenvalues were first used in
differential equations and later found many
applications in matrix theory.
 But how do we find them?

                                                19/03/2013
EIGENVECTORS & EIGENVALUES:
            A HOW-TO GUIDE




                              19/03/2013
EIGENVECTORS & EIGENVALUES:
            A HOW-TO GUIDE




                              19/03/2013
EIGENVECTORS & EIGENVALUES:
              CLARIFICATION




                              19/03/2013
EIGENVECTORS & EIGENVALUES:
              CLARIFICATION
The   equation:




                              19/03/2013
EIGENVECTORS & EIGENVALUES:
 (SOME SCIENCY) APPLICATIONS
   Differential equations

   Quantum Physics
      Basic QP is all about matrices and rotations




   Other areas of mathematics
      A bit more on this later 




                                                      19/03/2013
EIGENVECTORS & EIGENVALUES:
        (SOME) APPLICATIONS
Computer   Graphics/Physics:
    Signal processing (filtering)
    Rigid body dynamics
    LOD Optimizations
    Continuum and Fracture Mechanics (realistic
   destruction/tearing)
    Fractal Object Generation (Fractional Brownian Motion)
 Pathinding/Spacial partitioning:
    Spectral partitioning of graphs
    Graph theory (matrix representation of graphs)
 Computer Vision/AI:
                                                         19/03/2013
    Geometric Data Analysis, Face recognition.
FACE RECOGNITION:
                   IMFRE




Ivan’s Magical Face Recognition
         Extravaganza



                                  19/03/2013
IMFRE:
                             HIGH-LEVEL IDEA
IMFRE  is an idea for a two step Pseudo-Algorithm
   Step 1: Learning Phase
             Machine takes 100 photos of a person’s face;
            Resolves a method for storing the person’s face;

  Step   2: Recognition Phase
            Takes a picture and tests it against the method;




                                                               19/03/2013
IMFRE:
LEARNING PHASE




                 19/03/2013
IMFRE:
LEARNING PHASE




                 19/03/2013
IMFRE:
                             LEARNING PHASE
 Assume   that one picture is a linear transformation of the other




By   analogy:


                                                               19/03/2013
IMFRE:
                            LEARNING PHASE




 Keep taking pictures!
 After each picture taken, repeat the step from previous slide with
every new picture against every old picture!
                                                             19/03/2013
IMFRE:
                                                MAGIC

 Afterall the pictures have been taken, we should have about
100000 transformation matrices.

The   “magic” is that we already have functionality to mix all
100000 transformations. And the result of that mix should be a
linear transformation that can map 1 image to every one of the
others.



                           Magic

                                                             19/03/2013
IMFRE:
                                                 MAGIC




                       Magic




After   all of that T is our new mixed transformation
                                                         Fly, matrix!
                                                         *Fly,Fly!
                                                               matrix! Fly!
                                                              19/03/2013
IMFRE:
EIGENFACES

   This  is what the
  eigenvectors of T look like.
   It’s called an eigenface
   In the Recognition Phase,
  IMFRE will take a picture,
  transform it using T and
  compare how much it looks
  like one of he stock photos.




                    19/03/2013
FACE RECOGNITION:
                            BUT SERIOUSLY

 The actual eigenface algorithm was developed
in 1987

 Two   steps like IMFRE.

 But is actually quite inaccurate for faces and
couldn’t handle lighting very well.

 On the other hand it’s ok for general object
recognition: boxes, triangles, etc…

                                                   19/03/2013
PART 2
COMPUTING




       19/03/2013
EIGENVALUES & EIGENVECTORS:
                     RECAP




                              19/03/2013
EIGENVALUES & EIGENVECTORS:
             COMPUTING (2D)
 Lets say you have a 2D transformation that you need to find the
eigenvalue of:




The   solution in code would be quite simple:




                                                           19/03/2013
19/03/2013
“But I wanna do
the cool stuff!!!”




                     19/03/2013
BRUTE FORCE EIGENVALUES:
                 CONSIDERATIONS

We’ve   seen earlier that the characteristic
equation is a polynomial of degree n. Let
that polynomial be C(x).

 We   can use an iteration method to find
the roots of C(x), but we need to know:
     The range, in which the roots are
     What is a usefull iteration method
    or our problem?


                                                19/03/2013
BRUTE FORCE EIGENVALUES:
GERSHGORIN CIRCLE THEOREM




                             19/03/2013
BRUTE FORCE EIGENVALUES:
               BISECTION METHOD
   Board time!!!




 Problem! Your program might get stuck…
 Furthermore, you have to compute C(x) on every step…




 So it turns out that brute force is not good idea… (fo’ real)
 But we can still take Bisection and GCT and look for a diferent
solution!

                                                           19/03/2013
EIGENVALUE COMPUTING:
ENTER TRIDIAGONAL MATRICES




                             19/03/2013
TRIDIAGONAL MATRICES:
     STURM SEQUENCES




                        19/03/2013
TRIDIAGONAL MATRICES:
HOUSEHOLDER TRANSORMATION




                              19/03/2013
TRIDIAGONAL MATRICES:
STURM SEQUENCES + BISECTION




                              19/03/2013
EIGENVALUES + EIGENVECTORS:
     PUTTING IT ALL TOGETHER




                               19/03/2013
OPTIMIZATIONS
 As   it is, this stuff is slow!!!




                                                      19/03/2013
OPTIMIZATIONS
 As   it is, this stuff is slow!!!

   Mathematical optimizations
     Bisection over each GCs
     Newton’s method or Runge-Khutta, instead of Bisection
     Use Sturm’s sequence to find a closed form characteristics
     equation (if you dare) + Newton’s method




                                                            19/03/2013
 As   it is, this stuff is slow!!!
                                      OPTIMIZATIONS

   Mathematical optimizations
     Bisection over each GCs
     Newton’s method or Runge-Khutta, instead of Bisection
     Use Sturm’s sequence to find a closed form characteristics
     equation (if you dare) + Newton’s method

   Hardware+Mathematical optimization:
      Calculating GCs can be done in parallel
      Bisection over each GCs + threading
      Householder Reduction is the biggest bottleneck
        Crunch inner body of the loop into one expression and..
        Look for a large-scale solution: OpenCL, CUDA 19/03/2013
LINKS/REFERENCES/EXTRA
                           READING
*Note: Articles, other than [1] and [2] were used as sources of other p.o.vs
 [1] NUMERICAL RECIPES IN FORTRAN 77: THE ART OF SCIENTIFIC
COMPUTING, “Reduction of a Symmetric Matrix to Tridiagonal Form: Givens and
Householder Reductions” pages 462 – 469 available @ http://www.mpi-
hd.mpg.de/astrophysik/HEA/internal/Numerical_Recipes/f11-2.pdf
 [2] Technische Universiteit Eindhoven CASA – “Iterative Techniques For Solving
Eigenvalue Problems” @
http://www.win.tue.nl/casa/meetings/seminar/previous/_abstract051109_files/presentatio
n_full.pdf
 Numerische Mathematik 9 (1967), W. BARTH, R. S. MARTIN and J. H.
WILKINSON, “Calculation of the Eigenvalues of a Symmetric Tridiagonal Matrix by
the Method of Bisection” Pages 386 - 393 @
http://www.maths.ed.ac.uk/~aar/papers/bamawi.pdf
 Johns Hopkins University Department of Physics & Astronomy - "Lecture 10:
Eigenvectors and eigenvalues (Numerical Recipes, Chapter 11)" @
http://www.pha.jhu.edu/~neufeld/numerical/lecturenotes10.pdf
 UC Berkley College of Engineering, "A New O(n^2) Algorithm for the Symmetric
Tridiagonal Eigenvalue/Eigenvector Problem“ (1997), Inderjit Singh Dhillon @
http://www.eecs.berkeley.edu/Pubs/TechRpts/1997/5888.html                    19/03/2013

More Related Content

What's hot

Morphological image processing
Morphological image processingMorphological image processing
Morphological image processing
Vinayak Narayanan
 
image enhancement
 image enhancement image enhancement
image enhancement
Rajendra Prasad
 
Fuzzy Logic Based Edge Detection
Fuzzy Logic Based Edge DetectionFuzzy Logic Based Edge Detection
Fuzzy Logic Based Edge Detection
Dawn Raider Gupta
 
Color image processing
Color image processingColor image processing
Color image processing
Madhuri Sachane
 
Essence of Soft Computing in Healthcare
Essence of Soft Computing in HealthcareEssence of Soft Computing in Healthcare
Essence of Soft Computing in Healthcare
ijtsrd
 
Applications of linear algebra in computer science
Applications of linear algebra in computer scienceApplications of linear algebra in computer science
Applications of linear algebra in computer science
Arnob Khan
 
Fundamentals of Image Processing & Computer Vision with MATLAB
Fundamentals of Image Processing & Computer Vision with MATLABFundamentals of Image Processing & Computer Vision with MATLAB
Fundamentals of Image Processing & Computer Vision with MATLAB
Ali Ghanbarzadeh
 
Spatial enhancement techniques
Spatial enhancement techniquesSpatial enhancement techniques
Spatial enhancement techniques
AakanchaAnand
 
Point processing
Point processingPoint processing
Point processing
panupriyaa7
 
03.Scan Conversion.ppt
03.Scan Conversion.ppt03.Scan Conversion.ppt
03.Scan Conversion.ppt
RobinAhmedSaikat
 
Anti- aliasing computer graphics
Anti- aliasing computer graphicsAnti- aliasing computer graphics
Anti- aliasing computer graphics
Safayet Hossain
 
Lect 06
Lect 06 Lect 06
Lect 06
Moe Moe Myint
 
06 spatial filtering DIP
06 spatial filtering DIP06 spatial filtering DIP
06 spatial filtering DIP
babak danyal
 
Raster Scan Graphics, Line Drawing Algorithm and Circle Drawing Algorithm
Raster Scan Graphics, Line Drawing Algorithm and Circle Drawing Algorithm Raster Scan Graphics, Line Drawing Algorithm and Circle Drawing Algorithm
Raster Scan Graphics, Line Drawing Algorithm and Circle Drawing Algorithm
Aparna Joshi
 
Raster scan displays ppt
Raster scan displays pptRaster scan displays ppt
Raster scan displays ppt
ABHISHEK KUMAR
 
2D Transformation
2D Transformation2D Transformation
2D Transformation
ShahDhruv21
 

What's hot (20)

Morphological image processing
Morphological image processingMorphological image processing
Morphological image processing
 
image enhancement
 image enhancement image enhancement
image enhancement
 
Fuzzy Logic Based Edge Detection
Fuzzy Logic Based Edge DetectionFuzzy Logic Based Edge Detection
Fuzzy Logic Based Edge Detection
 
Color image processing
Color image processingColor image processing
Color image processing
 
Essence of Soft Computing in Healthcare
Essence of Soft Computing in HealthcareEssence of Soft Computing in Healthcare
Essence of Soft Computing in Healthcare
 
Applications of linear algebra in computer science
Applications of linear algebra in computer scienceApplications of linear algebra in computer science
Applications of linear algebra in computer science
 
Histogram processing
Histogram processingHistogram processing
Histogram processing
 
Fundamentals of Image Processing & Computer Vision with MATLAB
Fundamentals of Image Processing & Computer Vision with MATLABFundamentals of Image Processing & Computer Vision with MATLAB
Fundamentals of Image Processing & Computer Vision with MATLAB
 
Unit ii
Unit iiUnit ii
Unit ii
 
Spatial enhancement techniques
Spatial enhancement techniquesSpatial enhancement techniques
Spatial enhancement techniques
 
Point processing
Point processingPoint processing
Point processing
 
Spatial filtering
Spatial filteringSpatial filtering
Spatial filtering
 
03.Scan Conversion.ppt
03.Scan Conversion.ppt03.Scan Conversion.ppt
03.Scan Conversion.ppt
 
Anti- aliasing computer graphics
Anti- aliasing computer graphicsAnti- aliasing computer graphics
Anti- aliasing computer graphics
 
Lect 06
Lect 06 Lect 06
Lect 06
 
06 spatial filtering DIP
06 spatial filtering DIP06 spatial filtering DIP
06 spatial filtering DIP
 
Clipping
ClippingClipping
Clipping
 
Raster Scan Graphics, Line Drawing Algorithm and Circle Drawing Algorithm
Raster Scan Graphics, Line Drawing Algorithm and Circle Drawing Algorithm Raster Scan Graphics, Line Drawing Algorithm and Circle Drawing Algorithm
Raster Scan Graphics, Line Drawing Algorithm and Circle Drawing Algorithm
 
Raster scan displays ppt
Raster scan displays pptRaster scan displays ppt
Raster scan displays ppt
 
2D Transformation
2D Transformation2D Transformation
2D Transformation
 

Recently uploaded

UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 

Recently uploaded (20)

UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 

Eigenvalues and eigenvectors of symmetric matrices

  • 1. EIGENVALUES AND EIGENVECTORS OF SYMMETRIC MATRICES Ivan Mateev 19/03/2013
  • 2. LINEAR TRANSFORMATIONS: RECAP A linear transformation Matrix 19/03/2013
  • 3. LINEAR TRANSFORMATIONS: “UNDER THE HOOD” Shapes can be viewed as collections of points Lots of points* *Infinitely many 19/03/2013
  • 4. LINEAR TRANSFORMATIONS: VECTOR SPACES Each two points define a vector 19/03/2013
  • 5. LINEAR TRANSFORMATIONS: VECTOR SPACES Each two points define a vector Instead of a collection of points*, a shape can be seen as a collections of vectors* *Infinitely many 19/03/2013
  • 6. LINEAR TRANSFORMATIONS: VECTOR SPACES Each two points define a vector Instead of a collection of points*, shapes can be seen as collections of vectors* “Vector spaces”! 19/03/2013 *Infinitely many
  • 7. LINEAR TRANSFORMATIONS: VECTOR SPACES A linear transformation a function, which transform one vector space into another. 19/03/2013
  • 9. SCALING AS A VECTOR TRANSFORMATION Scaling 19/03/2013
  • 10. SCALING AS A VECTOR TRANSFORMATION 19/03/2013
  • 11. SCALING AS A VECTOR TRANSFORMATION 19/03/2013
  • 12. SCALING AS A VECTOR TRANSFORMATION The red and blue vectors didn’t change (much)! 19/03/2013
  • 13. SCALING AS A VECTOR TRANSFORMATION The red and blue vectors didn’t change (much)! They are actually parallel to the vectors (1,0) and (0,1) 19/03/2013
  • 14. SHEARING AS A VECTOR TRANSFORMATION Shearing The red vectors are preserved Actually all vectors, parallel to (1,0) are preserved 19/03/2013
  • 15. EIGENVECTORS & EIGENVALUES  A non-zero vector, which doesn’t change direction in the transformation (except for it’s sign) is called an Eigenvector.  Each eigenvector has a number associated with it, which is called an Eigenvalue.  Literally means “own vector” and “own value” from German.  Historically eigenvalues were first used in differential equations and later found many applications in matrix theory.  But how do we find them? 19/03/2013
  • 16. EIGENVECTORS & EIGENVALUES: A HOW-TO GUIDE 19/03/2013
  • 17. EIGENVECTORS & EIGENVALUES: A HOW-TO GUIDE 19/03/2013
  • 18. EIGENVECTORS & EIGENVALUES: CLARIFICATION 19/03/2013
  • 19. EIGENVECTORS & EIGENVALUES: CLARIFICATION The equation: 19/03/2013
  • 20. EIGENVECTORS & EIGENVALUES: (SOME SCIENCY) APPLICATIONS  Differential equations  Quantum Physics  Basic QP is all about matrices and rotations  Other areas of mathematics  A bit more on this later  19/03/2013
  • 21. EIGENVECTORS & EIGENVALUES: (SOME) APPLICATIONS Computer Graphics/Physics:  Signal processing (filtering)  Rigid body dynamics  LOD Optimizations  Continuum and Fracture Mechanics (realistic destruction/tearing)  Fractal Object Generation (Fractional Brownian Motion)  Pathinding/Spacial partitioning:  Spectral partitioning of graphs  Graph theory (matrix representation of graphs)  Computer Vision/AI: 19/03/2013  Geometric Data Analysis, Face recognition.
  • 22. FACE RECOGNITION: IMFRE Ivan’s Magical Face Recognition Extravaganza 19/03/2013
  • 23. IMFRE: HIGH-LEVEL IDEA IMFRE is an idea for a two step Pseudo-Algorithm  Step 1: Learning Phase Machine takes 100 photos of a person’s face; Resolves a method for storing the person’s face; Step 2: Recognition Phase Takes a picture and tests it against the method; 19/03/2013
  • 24. IMFRE: LEARNING PHASE 19/03/2013
  • 25. IMFRE: LEARNING PHASE 19/03/2013
  • 26. IMFRE: LEARNING PHASE  Assume that one picture is a linear transformation of the other By analogy: 19/03/2013
  • 27. IMFRE: LEARNING PHASE  Keep taking pictures!  After each picture taken, repeat the step from previous slide with every new picture against every old picture! 19/03/2013
  • 28. IMFRE: MAGIC  Afterall the pictures have been taken, we should have about 100000 transformation matrices. The “magic” is that we already have functionality to mix all 100000 transformations. And the result of that mix should be a linear transformation that can map 1 image to every one of the others. Magic 19/03/2013
  • 29. IMFRE: MAGIC Magic After all of that T is our new mixed transformation Fly, matrix! *Fly,Fly! matrix! Fly! 19/03/2013
  • 30. IMFRE: EIGENFACES  This is what the eigenvectors of T look like.  It’s called an eigenface  In the Recognition Phase, IMFRE will take a picture, transform it using T and compare how much it looks like one of he stock photos. 19/03/2013
  • 31. FACE RECOGNITION: BUT SERIOUSLY  The actual eigenface algorithm was developed in 1987  Two steps like IMFRE.  But is actually quite inaccurate for faces and couldn’t handle lighting very well.  On the other hand it’s ok for general object recognition: boxes, triangles, etc… 19/03/2013
  • 32. PART 2 COMPUTING 19/03/2013
  • 33. EIGENVALUES & EIGENVECTORS: RECAP 19/03/2013
  • 34. EIGENVALUES & EIGENVECTORS: COMPUTING (2D)  Lets say you have a 2D transformation that you need to find the eigenvalue of: The solution in code would be quite simple: 19/03/2013
  • 36. “But I wanna do the cool stuff!!!” 19/03/2013
  • 37. BRUTE FORCE EIGENVALUES: CONSIDERATIONS We’ve seen earlier that the characteristic equation is a polynomial of degree n. Let that polynomial be C(x).  We can use an iteration method to find the roots of C(x), but we need to know:  The range, in which the roots are  What is a usefull iteration method or our problem? 19/03/2013
  • 38. BRUTE FORCE EIGENVALUES: GERSHGORIN CIRCLE THEOREM 19/03/2013
  • 39. BRUTE FORCE EIGENVALUES: BISECTION METHOD  Board time!!!  Problem! Your program might get stuck…  Furthermore, you have to compute C(x) on every step…  So it turns out that brute force is not good idea… (fo’ real)  But we can still take Bisection and GCT and look for a diferent solution! 19/03/2013
  • 41. TRIDIAGONAL MATRICES: STURM SEQUENCES 19/03/2013
  • 43. TRIDIAGONAL MATRICES: STURM SEQUENCES + BISECTION 19/03/2013
  • 44. EIGENVALUES + EIGENVECTORS: PUTTING IT ALL TOGETHER 19/03/2013
  • 45. OPTIMIZATIONS  As it is, this stuff is slow!!! 19/03/2013
  • 46. OPTIMIZATIONS  As it is, this stuff is slow!!!  Mathematical optimizations Bisection over each GCs Newton’s method or Runge-Khutta, instead of Bisection Use Sturm’s sequence to find a closed form characteristics equation (if you dare) + Newton’s method 19/03/2013
  • 47.  As it is, this stuff is slow!!! OPTIMIZATIONS  Mathematical optimizations Bisection over each GCs Newton’s method or Runge-Khutta, instead of Bisection Use Sturm’s sequence to find a closed form characteristics equation (if you dare) + Newton’s method  Hardware+Mathematical optimization:  Calculating GCs can be done in parallel  Bisection over each GCs + threading  Householder Reduction is the biggest bottleneck Crunch inner body of the loop into one expression and.. Look for a large-scale solution: OpenCL, CUDA 19/03/2013
  • 48. LINKS/REFERENCES/EXTRA READING *Note: Articles, other than [1] and [2] were used as sources of other p.o.vs  [1] NUMERICAL RECIPES IN FORTRAN 77: THE ART OF SCIENTIFIC COMPUTING, “Reduction of a Symmetric Matrix to Tridiagonal Form: Givens and Householder Reductions” pages 462 – 469 available @ http://www.mpi- hd.mpg.de/astrophysik/HEA/internal/Numerical_Recipes/f11-2.pdf  [2] Technische Universiteit Eindhoven CASA – “Iterative Techniques For Solving Eigenvalue Problems” @ http://www.win.tue.nl/casa/meetings/seminar/previous/_abstract051109_files/presentatio n_full.pdf  Numerische Mathematik 9 (1967), W. BARTH, R. S. MARTIN and J. H. WILKINSON, “Calculation of the Eigenvalues of a Symmetric Tridiagonal Matrix by the Method of Bisection” Pages 386 - 393 @ http://www.maths.ed.ac.uk/~aar/papers/bamawi.pdf  Johns Hopkins University Department of Physics & Astronomy - "Lecture 10: Eigenvectors and eigenvalues (Numerical Recipes, Chapter 11)" @ http://www.pha.jhu.edu/~neufeld/numerical/lecturenotes10.pdf  UC Berkley College of Engineering, "A New O(n^2) Algorithm for the Symmetric Tridiagonal Eigenvalue/Eigenvector Problem“ (1997), Inderjit Singh Dhillon @ http://www.eecs.berkeley.edu/Pubs/TechRpts/1997/5888.html 19/03/2013

Editor's Notes

  1. David Hillbert coined “Eigenwert” in 1904
  2. David Hillbert coined “Eigenwert” in 1904
  3. David Hillbert coined “Eigenwert” in 1904
  4. David Hillbert coined “Eigenwert” in 1904
  5. David Hillbert coined “Eigenwert” in 1904
  6. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  7. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  8. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  9. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  10. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  11. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  12. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  13. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  14. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  15. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  16. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  17. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  18. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  19. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  20. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  21. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  22. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  23. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  24. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  25. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  26. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  27. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  28. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  29. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  30. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  31. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  32. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  33. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds
  34. David Hillbert coined “Eigenwert” in 1904;LOD Optimizations – Eigenalues can be used to represent/reconstruct surfaces from point clouds