I have a Audio time-series, to which I'm trying to detect the most significant parts of the signal, i.e. the voiced parts and forget the unvoiced parts.
$$ T = [0, 0, 1, 1, .....n] $$
I then compute the Spectral result of the time series, which, gives me a dimensional frequency representation of the input signal.
From this, I would like the determine the most significant elements of this, thus only leaving me with the voiced parts. I know this is possible using Principle component analysis and Independent component analysis, however, I'm trying to compute the following using SVD.
To try and understand the theory and application, I constructed a simple matrix:
$$ S = \begin{bmatrix} 1&0 \\ 0&1 \\ 1&1 \\ 0&2 \\ 1&1 \end{bmatrix} $$
In Python I have the following:
u, s, v = linalg.svd(S);
This therefore gives me three matrices, which, I understand that the following:
"s" -> this matrix is a diagonal matrix which is ordered from singular value to lowest
In order to re-construct the matrix, pick out the largest values of "s" and their corresponding columns in "u" and "v"
Thus meaning that the "s" corresponds to the magnitude which relates to the columns in "u" and "v".
But, I don't know how such can be re-constructed (using Python) and how it actually works..? My question mainly relates to taking a 2-dimensional vector and transforming this into another 2-Dimentsional vector containing only the most significant values.
Any help would be greatly appreciated