Method of processing signal data on the basis of prinicipal component transform, apparatus for performing the method

Abstract: A method is proposed for determining approximations of eigenvectors of a covariance matrix associated with signal data on the basis of the Principal Component Transform. Successive iterations on estimates enhance the development into the direction of the principal component considered. The method is applicable to the Singular Value Decomposition of data matrices. The operations to be performed are similar to those required in a neural net for adapting the synaptic coefficients. Apparatus are proposed for performing the method.

Description: The invention relates to a method of processing signal data on a data processing apparatus, the method comprising determining an approximation to a most significant eigenvector of a covariance matrix associated with the signal data represented as vectors in a vector space, and to an apparatus for executing the method. BACKGROUND TO THE INVENTION Principal Component Analysis (PCA) is a strategy based on the statistical properties of a signal, that is, coherent data representing, for example, an image pattern or a speech pattern. In general, such data are mutually strongly correlated, which is expressed by way of a so-called covariance matrix. By definition, this covariance matrix is positive symmetric. This implies the existence of a set of mutually orthogonal eigenvectors (principal components). A representation of the covariance matrix on the base, determined by its eigenvectors, is a diagonal matrix, the on-diagonal components being the respective eigenvalues (variances) associated with the eigenvectors, the off-diagonal components being equal to zero. The mapping of the covariance matrix onto the base of its eigenvectors is commonly referred to as Principal Component Transform, Eigenvector Transform, Hotelling Transform or Karhunen-Loève Transform (see for instance: Digital Image Processing, R.C. Gonzalez and P. Wintz, Second Edition, Addison-Wesley Publishing Company, 1987, pages 122-130). The diagonal form expresses the fact that the accordingly transformed data now are uncorrelated, since the off-diagonal components are equal to zero. This transformation is applied especially in data compression, feature extraction and encoding. By decomposing the data into a set of uncorrelated components of decreasing statistical significance data compression is accomplished by selecting those components of greatest statistical significance and discarding the rest. Another application of this transform is for example the execution of image rotation in image processing (see pages 125-130 of the above cited book). PRIOR ART Principal Component Analysis is dealt with, for instance, by Y. Chauvin in "Principal Component Analysis by Gradient Descent on a constrained linear Hebbian Cell", IEEE and INNS International Joint Conference On Neural Nets, 1989, pages 1373-1405. In this prior art the behaviour of a linear computing unit is examined during learning by gradient descent of a cost function equal to the sum of a variance maximization term and a weight normalization term. This cost function has a global minimum aligned with the principal components of the patterns that are input into the linear computing unit. The learning trajectory will converge towards this global minimum provided some particular conditions are met. Also, one of the assumptions made for guaranteeing the validity is that the covariance matrix has distinct eigenvalues. Document "Principal Component Analysis" by I.T. Joliffe, Springer-Verlag 1986, pages 235-246, describes the use of the so-called power method and SAS software implementing the power method for determining the largests eigenvalue and eigenvector of a matrix and the principal component. Under certain conditions, the eigenvector emerges by iteratively multiplying the matrix with an initial vector. The SAS software offers options such as assigning different weights to different observations and using a correlation or covariance matrix rather than the matrix of observations. OBJECT OF THE INVENTION The iterations performed during the gradient descent require substantial calculations. The iterations performed during the power method require a matrix multiplication, which may be executed using a dedicated, complex computer instruction or, on a conventional computer, may be broken down in a long sequence of multiplications and additions. It is therefore an object of the invention to perform the Principal Component Analysis needing fewer and simpler calculations per iteration, while admitting degenerate eigenvalues. SUMMARY OF THE INVENTION To this end, a method according to the invention is characterized in that, for increasing the speed of the processing on the apparatus, the determining comprises: taking an initial vector  1 in said vector space as a first estimate c 1 ; performing an iteration with following steps for each next estimate c k+1 : taking a next vector  k+1 in said vector space; determining at least a polarity of a scalar product c k • k+1 of a preceding estimate with the next vector; taking as the next estimate c k+1 a sum of the preceding estimate and the next vector, wherein the next vector is weighted by a factor dependent on the scalar product, for increasing the next estimate in the direction of the preceding estimate; upon termination of the iteration taking the most significant eigenvector parallel to a last obtained one c k+1 of the next estimates. By enhancing the next estimate's component in the direction of the preceding estimate, the estimates develop into the direction of the most significant eigenvector, that is, the eigenvector associated with the largest eigenvalue. For determining approximations of further eigenvectors, in principle the same steps as cited above may be traversed, but now using vectors in a subspace orthogonal to the approximations of the respective eigenvectors calculated previously. Per iteration a s = <vector scalar> (inproduct) calculation, a scalar vector multiplication and a vector addition are required. In case eigenvalue-degeneracy is met, the orthogonal-subspace-construction guarantees that the approximations of the associated eigenvectors are found. In general, the eigenvectors are approximated according to the invention in order of decreasing statistical significance, that is, in order of decreasing eigenvalue. Preferably, for determining a further approximation of a further eigenvector of the covariance matrix, the method according to the invention includes the step of: taking as a first further estimate an initial further vector that lies in a region of the vector space that is determined by vectors that have an absolute inproduct value with each previously determined respective approximation smaller than a predetermined respective value; for each next further estimate determining a linear combination of the preceding further estimate and a next further region vector, said next further region vector being weighted with a factor estimate and the next further vector, for enhancing the next further estimate into a direction of the preceding further estimate; upon termination of determining next further estimates orthogonalizing the last obtained further estimate with respect to each previously determined approximation; taking the further approximation parallel to said orthogonalized last obtained further estimate. Instead of orthogonalizing each further vector with respect to the already obtained approximations, the orthogonalization now is executed only for the last obtained estimate, thereby saving substantial calculation time. An additional advantage is that the inproduct values of the vectors and each of the previously determined and normalized approximations are required anyway for producing the associated eigenvalues, thus allowing for an efficient strategy. Preferably the factor for weighting the next vector or the next further vector is the sign-function operating on the inproduct, giving rise to only an inversion in case the sign function delivers a minus. For taking into account only vectors that contribute substantially to the determining of the next estimate or the next further estimate, preferably said factor is the sign-function operating on the inproduct when the inproduct has a value outside a predetermined interval around zero, and equals zero when the inproduct has a value within the interval. This could also be accomplished by selecting vectors, that were discarded in a previous determination of an approximation because of their insufficient inproduct values. The associated eigenvalues are found by: normalizing the last obtained estimate, associated with the particular eigenvector, onto unity, determining a summation of squares of the inproducts, each respective inproduct involving the normalized estimate and the respective vector, used for producing a respective estimate, and averaging a summation result. It is particularly advantageous to implement the method on a (digital) neural-net-like structure, since the required operations (inproduct, scalar-vector multiplication and vector addition) reflect the constituents of the majority of calculations for updating the synaptic coefficients. These rules can be recapitulated as: C ij (new) = C ij (present) + Δ i V j Equation (a) expresses the non-linear dependence of the output S i of neuron i on the vector inproduct of the i-th row of the synaptic coefficient matrix C and the vector V, the components thereof consisting of the outputs of the neurons j that are coupled with the input of neuron i across synaptic coefficients C ij . Equation (b) indicates the updating of each synaptic coefficient according to some learning rule of a general type, involving a neuron output V j and a correction factor Δ i . The steepest descent strategy, for example, complies with the general updating rule according to equation (b). When executed in parallel with respect to index i or index j or both equation (b) indicates a vector-addition. APPLICATION TO THE SINGULAR VALUE DECOMPOSITION The method according to the invention explained above can successfully be incorporated in signal data manipulations related to the Singular Value Decomposition. The expression "Singular Value Decomposition" indicates a generalization of the eigenvector-eigenvalue representation for square data matrices as referred to hereinabove. According to Matrix Theory for each rectangular mxn matrix there exist transformation matrices that produce a generalized diagonal matrix having components on the generalized diagonal that represent the so-called singular values and having components off the generalized diagonal equal to zero. Within the field of signal processing Singular Value Decomposition (SVD) is applied in adaptive filtering, linear prediction estimation, modal analysis in dealing with multiple-sinusoidal signals, adaptive modelling, etcetera. Numerous technical applications are extensively examined in: "SVD and Signal Processing: Algorithms, Applications and Architectures", Edited by Ed. F. Deprettere, North-Holland, 1988. For extracting information out of the signal data processing system under consideration, according to the SVD, it is assumed that it is well described with a linear model. That is, the system incorporates a linear transformation as the input-output relationship. The matrix that substantiates this linear transformation often is unknown. It is further assumed here that information relating to this matrix can be derived from measurements of particular input vectors and the associated output vectors of the system. According to the invention one proceeds as follows. A collection of input vectors is established having a random and uniform distribution in the input space, that is, its input covariance matrix is a unity matrix. This implies that the output covariance matrix of the output vectors in the output space comprises only components related to the matrix sought for. Diagonalizing the output covariance matrix according to the method as described hereinbefore with reference to the Principal Component Analysis leads to a set of base vectors in the output space that defines a first transformation matrix. An associated second transformation matrix comprising the base vectors for the input space is determined in parallel therewith. These transformation matrices define the Singular Value Decomposition together with the set of generalized eigenvalues that can be deduced from both the base vectors and the measurements as will be described hereinafter. BRIEF DESCRIPTION OF THE DRAWINGS The invention will be described hereinafter by way of example and with reference to the accompanying diagrammatic drawing in which: Figure 1 visualizes an example of a Gaussian probability density function of two correlated stochastic variables; Figure 2 gives formulae related to the diagram of Figure 1; Figure 3 visualizes the construction of the successive estimates for producing an eigenvector; Figure 4 gives the formulae related to the construction visualized in Figure 3; Figure 5 gives the formula for determining the eigenvalues; Figure 6 shows examples of weighting functions for determining the inproduct-dependent factor; Figure 7 shows a first example of an embodiment of an apparatus according to the invention; Figure 8 shows a second example of an embodiment of an apparatus according to the invention; Figure 9 gives the formulae related to the Singular Value Decomposition (SVD) in general; Figure 10 gives the formulae for determining successive estimates for the eigenvectors playing a part in the SVD; Figure 11 gives the formula for determining approximated singular values; Figure 12 outlines a third exemplary apparatus according to the invention; and Figure 13 outlines a fourth exemplary apparatus according to the invention. GAUSSIAN PROBABILITY DENSITY Figure 1 shows an example of a Gaussian probability density function of stochastic variables x and y, that have expected or mean values E(x) and E(y), respectively. The closed contours represent curves of constant probability density. The probability of the variables x and y taking values belonging to a particular region in the x-y plane equals the integral of f over this region. The deviations of these stochastic variables with respect to their expected values E(x) and E(y), that is: x-E(x) and y-E(y), are mutually correlated as can be derived from the diagram in Figure 1. An increase of the value x-E(x) statistically leads towards an increase of the value y-E(y) in this example. A quantity representative of this dependence or correlation is the covariance of x and y: cov(x,y), defined as the value of the product (x-E(x))(y-E(y)) averaged over the probability density. The expressions cov(x,x) and cov(y,y) give the so-called variances or standard-deviations of x and y, respectively, that are measures for the expected values for the quadratic deviation from the respective mean values E(x) and E(y), respectively. The smaller the variance, the more pronounced the probability density in the neighbourhood of the mean value. When the ordered pair (x,y) is looked upon as a vector v , represented on the base with unit vector e x and unit vector e y , the covariance matrix is defined as E(( v -E( v ))( v -E( v )) , having on-diagonal components cov(x,x) and cov(y,y), and off-diagonal components cov(x,y) and cov(y,x). Since this covariance matrix is positive symmetric it has an orthonormal set of eigenvectors that defines another base e p and e q for therein expressing each vector or matrix that can be expressed on the basis e x and e y . The covariance matrix takes the form of a diagonal matrix when mapped onto its eigenvector base, that is, it then has off-diagonal components equal to zero. This diagonal representation of the covariance matrix visualizes the fact that the accordingly transformed representations of vectors v now relate to new stochastic variables p and q, that are linear combinations of the x and y variables and that now are uncorrelated. Moreover, since the covariance matrix is positive definite, the on-diagonal components, being the eigenvalues of the covariance matrix, now represent the respective variances cov(p,p) and cov(q,q) commonly denoted as σ 2 / p and σ 2 / q , respectively. As has already been mentioned the transformation for diagonalizing the covariance matrix is known under the names: Principal Components Transforms, Hotelling Transform, Eigenvector Transform or Karhunen-Loève Transform. In signal processing this transformation is used, for instance, for removing dependence-related redundancies in the signal for encoding purposes, or for concentrating the signal-energy into a small number of coefficients, which then can be used advantageously in data compression. Moreover, since the transformation actually is a rotation, it can be used for performing rotations in image processing. GAUSSIAN FORMULAE In practice, the often unknown probability function is assumed to be well approximated by a Gaussian function which can be viewed as a first-order term in a series expansion. The Gaussian density is completely defined by the covariance matrix and the mean values of the stochastic variables. Moreover, the Gaussian character of the probability density is not affected by a linear transformation. The general expression for an N-dimensional Gaussian probability density is given by formula (i) in Figure 2. Therein, N indicates the dimension of the stochastic-vector space, C stands for the appropriate covariance matrix and C -1 for its inverse (both C and C -1 are symmetric), assuming that the determinant of C, denoted by |C|, does not vanish. The vectors x and µ represent the stochastic vector and its expected value, respectively. In equation (i) of Figure 2, the argument of the exponential function comprises a quadratic function ( x - µ ).C -1 .( x - µ ) . Mapping the vector x - µ onto the base on which C -1 (and C as a consequence) takes a diagonal form transforms the argument into a summation of homogeneous quadratic terms. Due to the properties of the exponential function, the joint probability density now can be separated into factors, each representing a one-dimensional Gaussian probability density of the form given in formula (ii) in Figure 2, and each with an appropriate variance σ 2 / i and mean value µ i . Geometrically, the Principal Component Transform represents a rotation of a surface, on which the quadratic function ( x - µ ).C -1 .( x - µ ) takes a constant value, into an orientation, wherein its axes of symmetry coincide with the (new) coordinate axes. This also holds good with respect to the Gaussian density function, since it is a function of the above quadratic expression itself. GEOMETRIC CONSTRUCTION The invention now proposes a method of determining approximations of the eigenvectors and eigenvalues of the covariance matrix, in an order of decreasing statistical significance. This will be explained with reference to Figure 3. The contours in the diagram of Figure 3 again indicate the surfaces on which both the quadratic expression related to the covariance matrix and hence the Gaussian probability density assume constant values. The origin of the coordinate axes x and y has been translated to the mean value location E(x) and E(y) with respect to Figure 1. The construction by vector addition as will be explained hereinbelow is therefore to be performed while taking the mean value location as the origin. The object is now to find approximations of the directions of the axes of symmetry, indicated by p and q, as related to the coordinate system x and y, of the quadratic function, and hence, of the Gaussian density function. This will be accomplished as follows. As a first estimate c 1 for an eigenvector an initial vector  1 is chosen on the basis of some criterion or at random. A second estimate c 2 is built by first choosing a second vector  2 and by thereupon combining linearly the first estimate c 1 and the second vector  2 , the latter being weighted by a factor equal to the sign-function operating on the inproduct: ( c 1 .  2 ). In the given example, this implies adding the vector minus-  2 to the first estimate c 1 for producing c 2 . A third estimate c 3 and a fourth estimate c 4 are constructed similarly upon choosing a third vector  3 and a fourth vector  4 , respectively. The formulae that summarize the above construction are presented in Figure 4. It can be deduced from the diagram in Figure 3, that each next estimate c k+1 tends to produce a smaller angle with the p-axis, that is the axis having a direction parallel to the eigenvector associated with the largest eigenvalue. This eigenvector is referred to as the statistically most significant eigenvector. (It should be noticed that the ratio between the respective eigenvalues corresponds to the ratio between the lengths of the respective principal axes of the drawn contours.) Thus, by enhancing each next estimate c k+1 into the direction of its predecessor c k by way of the weighting factor that incorporates the sign-function operating on said inproduct, each next estimate c k+1 is developped further into the direction of the principal axis. Upon termination of this iterative process, the last obtained estimate is taken as an approximation for the most significant eigenvector. Although the above does not present a rigorous mathematical proof it lends support to the idea. For approximating the other eigenvectors, the vectors  k taken into account therefor, should lie in the subspace orthogonal to the already obtained approximations, that is, the orthoplement. Therefore, a chosen vector  k chosen is stripped of its components that lie in the other subspace spanned by the already obtained approximations. According to another version of the proposed method, vectors  k for use in the iteration process preferably should have absolute inproduct values with already obtained and normalized approximations that are smaller than a predetermined upper bound. The orthogonalization therefore is postponed until the last estimate is obtained. Thus, the stripping of the above-mentioned components is avoided during each iteration step but the last one. For each vector  k there should be performed an inproduct calculation in order to decide whether it should be taken into account or not. In addition, these inproduct results are preferably used for calculating the variance associated with each approximation, thus utilizing efficiently already determined results for another purpose, which will be explained with reference to Figure 8. In this way, the above strategy produces the approximations of the eigenvectors successively, namely in the order of decreasing statistical significance. The approximation of the eigenvalue belonging to a particular eigenvector is determined according to the well known rules of statistics. That is, the sample variance s 2 as an approximation of the variance σ 2 associated with a particular eigenvector with respect to the mean value origin is given by the formula of Figure 5,  k each time indicating the k-th vector used for determining that particular eigenvector as has been set forth hereinabove and in the formulae of Figure 4. INPRODUCT FACTORS Instead of using the (binary) sign function (Figure 6(a)) for by operating on the inproduct inp producing the weight factor wf, the (ternary) modified sign function of Figure 6(b) preferably is used for taking into account only those vectors that give rise to a substantial improvement of the current estimate, thus reducing the number of operations. In other words, only those vectors are considered relevant for the current approximation, that result in the inproduct having an absolute value greater than a predetermined lower bound B. During the current process for determining the approximation of a particular eigenvector, some vectors  are discarded on account of their inproducts in this process being too small and therefore on account of a slow development when used. These discarded vectors  , however, lie in a region of the vector space that would deliver vectors  giving rise to substantial inproduct values when used in the process for developping the approximations of the further eigenvectors. FIRST EXEMPLARY APPARATUS Figure 7 represents a diagram of a first example of an apparatus ( 70 ) for processing signal data for successively determining estimates for a particular principal component or eigenvector. The apparatus 70 comprises a vector generator 72 for successively producing vectors  k . For k=1, the produced vector  1 is routed via routing device 74 towards memory 76 for being stored therein as a first estimate for the most significant eigenvector approximation. Each next produced vector  k+1 is routed via the routing device 74 towards register 78 for being stored therein. The vector stored in register 78 and the preceding estimate c k stored in memory 76 are fed into inproduct means 80 for calculation of the inproduct value. The calculated inproduct value is operated upon by function means 82, for example through the sign function according to Figure 6a or the modified sign function according to Figure 6b. The output of function means 82 delivers the factor for weighting the current vector  k+1 stored in register 78. To this end, multiplying means 84 receives both the factor and the current vector  k+1 for producing the weighted vector that is to be added in adder 86 to the preceding estimate c k stored in memory 76. The adding result c k+1 is thereupon stored in memory 76 to replace the former estimate c k . Preferably, the inproduct operations in inproduct means 80, the multiplications in multiplying means 84 and the summing operations in adder 86 each are performed in parallel with respect to the relevant vector components. Preferably, the memory 76 is of a type allowing for parallel writing and parallel reading the vector components. It should be noticed in case function means 82 performs the sign function operation, either the vector  k+1 is simply to be inverted in multiplying means 84, or it is to be fed directly into adder 86. In this case the multiplying means is a single inverter inverting the contents of register 78. The vectors  produced for each iterative process in order to calculate the approximation of a particular eigenvector should be orthogonal to the already determined approximation. SECOND EXEMPLARY APPARATUS In Figure 8 a second diagrammatic example of an apparatus according to the invention is shown. Like reference numerals indicate parts identical to or corresponding with those of the apparatus of Figure 7. The shown apparatos 90 has been extended with respect to the apparatus 70 according to Figure 7 by addition of a decision means 100 for deciding whether a current vector  k+1 produced by vector generator 72 should play a part in the vector construction according to Figure 3 that leads towards an approximation of the relevant eigenvector. For determining the approximation of the eigenvector of highest rank (most significant eigenvector), decision means 100 is left out of consideration, the apparatus 90 operating similarly to apparatus 70 of the previous Figure 7. Upon having determined the last obtained estimate of the first eigenvector, it is normalized onto unity and stored as a first base vector in base memory 102. For determining each next approximation the apparatus 90 operates as follows. A first vector  1 produced is examined in decision means 100 for determining whether it leads towards inproduct values with the previously determined base vectors small enough for taking it into account for the vector construction. In case the inproduct values are small enough, the vector  1 fed directly into memory 76 via routing device 74. In case vector  1 does not stand the test, it is discarded for the vector construction and a next vector is produced. Each next produced vector  k+1 that has stood the test is loaded into register 78 from whereon the process proceeds as has been explained with reference to Figure 7. Upon having obtained the last estimate for the current eigenvector, it is orthogonalized with respect to the base vectors stored in memory 102 and normalized onto unity for storing into base memory 102. In case the set of vectors  produced by vector generator 72 differs for each iterative process leading towards the associated approximation, the variance according to the formula in Figure 5 is calculated by re-introducing the particular set into inproduct means 104 together with the just determined associated base vector. The input of squaring device 106 is coupled with the output of inproduct means 104 for squaring each inproduct value. Thereupon these squared values are summed and divided by the number of vectors  k produced during the iterative process, both the exemplars that have been taken into account for the vector construction and the exemplars being left out of consideration due to their too small inproduct values. In case the same set of vectors is used for each iterative process several operations related to the inproduct value test and the calculation of the variance may be interwoven as follows. The inproduct value test is conducted via the inproduct means 104 squaring device 106 and comparator 108. The squared inproduct values are stored in an ancillary memory (not shown) for use in the variance calculations. During each iterative process only the new inproduct values are to be calculated, that is, only the inproduct values with respect to the last obtained base vector are to be determined. These results, together with the values stored in the ancillary memory (not shown) establish the criteria for deciding whether or not the current vector  may pass to the vector construction stage. However, these new inproduct values are exactly the ones required for calculation of the variance associated with the previously (last) obtained base vector. Therefore, the variance associated with base vector c k is determined in the vector construction stage for base vector c k+1 . Only upon terminating the quest for the next base vector, the last one obtained has to be re-introduced into the inproduct means 104 for producing the associated variance. SINGULAR VALUE DECOMPOSITION The Singular Value Decomposition (SVD) of an mxn data matrix according to the inventive method that incorporates the PCA already dealt with hereinabove will now be explained. It should be borne in mind that within the field of signal processing numerous applications utilize SVD as has already been stated hereinabove. The relationship to start with is formula (i) in Figure 9, x being an input vector in the n-dimensional input space and giving rise to an output vector y in the m-dimensional output space that is related to x by a linear transformation substantiated by matrix A. Because the matrix A is unknown in general, measurements are conducted in order to produce exemplary pairs ( x µ , y µ ) of input vectors x µ associated with pertaining output vectors y µ . It is assumed that the exemplary input vectors x µ are randomly and uniformly distributed in such a region of the input space, that the input vector components of different ranks are uncorrelated, while the pertaining variances equal unity. This characterization is expressed by formula (ii) of Figure 9. Herein, the input covariance matrix 〈 xx 〉 takes the form of a unity diagonal matrix. Consequently, the output covariance matrix 〈 yy 〉 takes the form presented in formula (iii) of Figure 9. That is, 〈 yy 〉 equals a symmetric matrix AA T composed of the matrix product of matrix A and its transposed version A T . The symmetric matrix is diagonalized using a transformation matrix V 1 , the columns thereof constituting a representation of the eigenvectors v of the symmetric matrix (formula (iv)). Here, the eigenvectors v of matrix AA T lie in the output space. The matrix AA T is of rank r, that is, it has a number of r eigenvalues larger than zero. The same holds good for the symmetric matrix A T A to be diagonalized in the input space, on the understanding that the diagonal form now is obtained via an nxr transformation matrix U 1 , that consists of the eigenvectors u of A T A in the input space (formula (v)). It can be deduced that the matrix A can be written as the right-hand side expression in formula (vi) in Figure 9. The matrix Σ 1 comprises the so-called singular values associated with the eigenvalues incorporated in Σ 1 2 . The expression of formula (vi) is commonly referred to as the Singular Value Decomposition. Thus, on the basis of the measurements an output covariance matrix is constructed that is symmetric and that contains information about the assumed linearity of the system under consideration. According to the method already discussed hereinabove with reference to Figure 3, the eigenvectors of this symmetric matrix are approximated successively, normalized versions thereof constituting the columns of the transformation matrix V 1 . However, as can be visualized by formula (vii) in Figure 9, in each iterative step for generating a next estimate for a particular eigenvector v in the output space, the associated input vector has to be transformed accordingly in order to produce eventually a pertaining eigenvector u in the input space. It should be noticed that, due to the uniform character of the distribution of the exemplary input vectors, the input covariance matrix is already on diagonal form (formula (ii) in Figure 9) As a consequence any additional base in the input space would keep the input covariance matrix in its unity diagonal form. However formula (vii) of Figure 9 represents the constraint for selecting the input space base. The above construction for the successive estimates of a particular output eigenvector v and the pertaining input eigenvector u is formulated in Figure 10, the notation c k being reserved for the k-th estimate for output eigenvector v , the notation b k being reserved for the pertaining k-th estimate of the associated input eigenvector u . For all exemplary input-output pairs the relation of formula (i) is valid, reflecting the linear relationship between input vector x k and associated output vector y k . As a first estimate c 1 for v a particular output vector y k is chosen, and as a first estimate for u the associated input vector x 1 is chosen. The derivation of each next estimate c k+1 is stated in formula (iii) of Figure 10, and is similar to the derivation as has been explained with reference to Figure 4. In order to maintain the relation of formula (iv) in Figure 10, that is, the linear relationship between the corresponding estimates as justified by formula (vii) of Figure 9, the next estimate b k+1 is to be determined according to formula (v) in Figure 10. The sign fuction operating on the inproduct can also be replaced by the modified sign function as explained with reference to Figure 6. Upon termination of the iterative process, each estimate c k+1 and b k+1 is normalized onto unity for representing the respective unit length base vectors. The singular values themselves are determined as will be explained with reference to the formulae of Figure 11. In formula (i) of Figure 11 the linear relationship between input vector x and output vector y is written down in index notation, each index occurring twice in a particular term representing a summation over this index. Formula (ii) represents in this way the index notation version of formula (vi) in Figure 9, v and il and û jl being the respective components of the matrices V 1 and U 1 , respectively. Substituting expression (ii) of Figure 11 into formula (i) of Figure 11 delivers the expression (iii), the right hand side now comprising an inproduct involving the vector x and the unit length input base vector u 1 of rank 1. Upon multiplying both sides with the unit length output base vector v 1 , the pertaining singular value σ 1 is determined by the quotient of the inproducts ( y . v 1 ) and ( x . u 1 ). Averaging over all exemplary pairs ultimately delivers the approximation for the eigenvalue σ 1 , as indicated in formula (iv) in Figure 11. THIRD EXEMPLARY APPARATUS In fact the output base vectors in the SVD are calculated in the same way as the eigenvectors in the PCA. Therefore, the apparatus as proposed for implementing the PCA is incorporated in an appartus for implementing the SVD. Further calculation means for calculating the input base vectors accordingly and the singular values are to be added then. This has been represented in the appartus according to Figure 12. The shown exemplary apparatus 120 performs the above explained SVD. To this end it includes a vector generator 122 for producing output vectors y and input vectors x , each output vector y being linearly related to a respective input vector x . The respective output vectors y are fed into the output base calculator 124, which for instance includes an apparatus as is shown in Figure 7 or Figure 8 and has been reviewed previously. Output base calculator 124 calculates the respective output base vectors, that is, the columns of matrix V 1 in formula (vi) of Figure 9. The input vectors x are fed into input calculator 126 for calculating the input base vectors, that is, the columns of matrix U 1 in formula (vi) of Figure 9. The respective parts of input calculator 126 have been indicated by the same numerals as are used in Figures 7 and 8 and they perform the same tasks as has been described accordingly. Thus, for calculating a particular input base vector a first estimate x 1 is loaded via routing device 74 into memory 76. For each next estimate a next input vector x k+1 is input into multiplying means 84 via routing device 74 for being multiplied by the relevant factor received from output base calculator 124. The multiplying result is thereupon loaded into adder 86 for being added to the preceding estimate stored in memory 76. Upon termination of this iterative process as regards the particular input vector, the last obtained estimate is normalized onto unity for being used as the respective base vector. FOURTH EXEMPLARY APPARATUS It should be noticed that in an apparatus according to the invention the following parts may be present singularly for being used both in the calculation of the output estimate and in the calculation of the input estimate: the routing device 74; the multiplying means 84; the adder 86. This has been outlined in Figure 13. Figure 13 represents a fourth exemplary apparatus 130 according to the invention. The reference numerals refer to like parts as have been indicated in the Figures 7, 8 and 12. The vector generator 122, which may comprise for instance the combination of parts 72 and 100 of Figure 8, feeds vectors into routing device 74, that now sends the respective output vectors y either directly to memory 76 or to register 78 as explained with reference to Figures 7 and 8, and sends the respective input vectors x either directly to memory 76 or to multiplying means 84, as explained with reference to Figure 12.

Claims: A method of processing signal data on a data processing apparatus, the method comprising determining an approximation to a most significant eigenvector of a covariance matrix associated with the signal data represented as vectors in a vector space, characterized in that, for increasing the speed of the processing on the apparatus, the determining comprises: taking an initial vector  1 in said vector space as a first estimate c 1 ; performing an iteration with following steps for each next estimate c k+1 : taking a next vector  k+1 in said vector space; determining at least a polarity of a scalar product c k • k+1 of a preceding estimate with the next vector; taking as the next estimate c k+1 a sum of the preceding estimate and the next vector, wherein the next vector is weighted by a factor dependent on the scalar product, for increasing the next estimate in the direction of the preceding estimate; upon termination of the iteration taking the most significant eigenvector parallel to a last obtained one c k+1 of the next estimates. The method of claim 1, comprising determining of a further approximation to a further eigenvector, wherein the determining of the further approximation comprises: taking as a first further estimate an initial further vector in a subspace of said vector space, the subspace being substantially transverse to all eigenvectors previously determined; performing an iteration with following steps for each next further estimate: taking a next further vector in said subspace; determining at least a polarity of a further scalar product of a preceding further estimate with the next further vector; taking as the next further estimate a sum of the preceding further estimate and the next further vector, wherein the next further vector is weighted by a factor dependent on the further scalar product, for increasing the next further estimate in the direction of the preceding further estimate; upon termination of the iteration taking the further eigenvector parallel to a last obtained one of the next further estimates. The method of claim 1, comprising: making the factor equal to unity if the polarity is positive, or minus unity if the polarity is negative. The method of claim 1 or 3, including: determining if the scalar product has an absolute value smaller than a predetermined threshold; making the factor zero if the absolute value is smaller than the threshold. The method of claim 1 or 2, used for data compression wherein at least the most significant one of the eigenvectors is stored or transmitted as a representation of the signal data. The method of claim 1, 2 or 5, applied to the processing of the signal data including image data or speech data. The method of claim 1, 2, 5 or 6 applied to data compression. A data processing apparatus operative to process signal data using determining at least an approximation to a most significant eigenvector of a covariance matrix associated with the signal data represented as vectors in a vector space, characterized in that, in order to increase the processing by the apparatus, the apparatus comprises: a memory (76) for storing an initial vector of said vector space as a first estimate; means for performing (78, 80, 82, 84, 86) an iteration with following steps for each next estimate: taking a next vector in said vector space; determining a scalar product of a preceding estimate with the next vector; determining as the next estimate a sum of the preceding estimate and the next vector, the latter multiplied by a weight factor dependent on a value of the scalar product; storing the next estimate in the memory; means for providing the most significant eigenvector parallel to a last obtained one of the next estimates upon termination of the iteration. The apparatus of claim 8, wherein the means for performing comprises: a register (78) for storing the next vector; polarity means (80, 82) coupled to the register and the memory for determining a polarity of the scalar product; summing means (84, 86) for determining the sum under control of the polarity means.

Inventors: SIRAT JACQUES-ARIEL, ZWIERSKI DIDIER E, SIRAT, JACQUES-ARIEL, ZWIERSKI, D. E., Zwierski, D. E. c/o Int. Octrooibureau B.V.
Applicants: KONINKL PHILIPS ELECTRONICS NV, PHILIPS ELECTRONIQUE LAB, KONINKLIJKE PHILIPS ELECTRONICS N.V., LABORATOIRES D'ELECTRONIQUE PHILIPS S.A.S.
Application year: 1990
Main classification: G06F17
IPC codes: G06F15, G06G7, G06N3, G06F17, G06K9, G06N99