the figure includes of the measurements from for reference as you can seenmf did reasonable job of discovering the original sourceswhile pca failed and used the first component to explain the majority of the variation in the data keep in mind that the components produced by nmf have no natural ordering in this examplethe ordering of the nmf components is the same as in the original signal (see the shading of the three curves)but this is purely accidental there are many other algorithms that can be used to decompose each data point into weighted sum of fixed set of componentsas pca and nmf do discussing all of them is beyond the scope of this bookand describing the constraints made on the components and coefficients often involves probability theory if you are interested in this kind of pattern extractionwe recommend that you study the sections of the sci kit_learn user guide on independent component analysis (ica)factor analysis (fa)and sparse coding (dictionary learning)all of which you can find on the page about decomposition methods manifold learning with -sne while pca is often good first approach for transforming your data so that you might be able to visualize it using scatter plotthe nature of the method (applying rotation and then dropping directionslimits its usefulnessas we saw with the scatter plot of the labeled faces in the wild dataset there is class of algorithms for visualization called manifold learning algorithms that allow for much more complex mappingsand often provide better visualizations particularly useful one is the -sne algorithm dimensionality reductionfeature extractionand manifold learning