SINGULAR VALUE Decomposition SVD and AI-recommender systems

Enter an NxM matrix in the field 'Matrix A' - row by row, separating the elements with spaces /or tabs/. The resulted matrices U, S and V, such that A = UxSxV (P is a Singular value Decomposition), will appear respectively in fields 'Matrix U', 'Matrix S' and 'Matrix V'.

Note: The javascript does not work with INTEGERS ! .

SVD brief explanation:

1° the matrix is the ‘knowledge’ input of the system

Suppose one column is a book with words, a machine problem with a symptoms , a person with an assets, a company with opportunities, a consumer article with properties…

Create the matrix in a spreadsheet, and copy and paste the matrixdata in this nifty tool.
Example 3 camera’s
Cam1 Cam2 Cam3
Iso 2400 .0 3600.0 1200.0
Zoom 10 .0 24.0 10.0
stabile 1.0 1.0 0.0
fps 150.0 30.0 30.0

2° the matrix Query is the ‘properties you want’

Suppose you fill in the query matrix with these data

Iso 1200.0
Zoom 10.0
Stabile 1.0
Fps 30.0

What camera matches best my criteria ???

The answer comes
Cam1 54%
Cam2 82%
Cam3 100%

The math behind
1° do a singular value decomposition of the matrix
2° divide the first two rows of the U-matrix with the two singular values to calculate the vector space coordinates
3° multiply the Query matrix with the previous matrix, to obtain the coordinates of the query in the vector space
4° calculate the directional similarity with the formula (if x,y are the coordinates)
similarity(query,camera) = qx*cx+qy*cy / ( sqrt(qx*qx+qy*qy)*sqrt(cx*cx+cy*cy) )
a good reference