<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office"><head><!--[if gte mso 9]><xml><o:OfficeDocumentSettings><o:AllowPNG/><o:PixelsPerInch>96</o:PixelsPerInch></o:OfficeDocumentSettings></xml><![endif]--></head><body><div style="color:#000; background-color:#fff; font-family:verdana, helvetica, sans-serif;font-size:16px"><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr">Hi,</div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr">First at all, I would like to warmly thank the scikit developer community with providing us with such a high quality ML library: it really became an amazing piece of scientific software.</div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr">I have a comment concerning the online documentation on Matrix Factorization Problems.</div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr">(I use this mailing list because I could not find in your online howto, what is the best channel to communicate documentation issues.</div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr"><b id="yui_3_16_0_ym19_1_1499329118907_16464">Apologies if this email is considered as spam in this mailing list !</b>)</div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12722" dir="ltr">On the webpage <a href="http://scikit-learn.org/stable/modules/decomposition.html" class="enhancr2_c1cbc37c-537d-b448-f7fc-4534aff0b7fa" id="yui_3_16_0_ym19_1_1499329118907_12778" style="background-color: rgb(255, 255, 255);">2.5. Decomposing signals in components (matrix factorization problems) — scikit-learn 0.18.2 documentation</a></div><div id="yui_3_16_0_ym19_1_1499329118907_12942"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr">We can read at <i id="yui_3_16_0_ym19_1_1499329118907_14305">2.5.1.5. Sparse principal components analysis</i></div><div id="yui_3_16_0_ym19_1_1499329118907_12942"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr"><img class="ymail-preserve-class inline-image-guid-a6ca75fe-a2a3-d3e7-9baf-a63646c063e3 rte-inline-saved-image" src="cid:f2628065-a0d9-0136-8044-1e1e71ab53eb@yahoo.com" data-id="inline-image-guid-a6ca75fe-a2a3-d3e7-9baf-a63646c063e3" alt="Inline image" style="width:100%;max-width:710px;max-height:120px;" id="yui_3_16_0_ym19_1_1499329118907_13063"><br id="yui_3_16_0_ym19_1_1499329118907_13064">but a bit further, at <i id="yui_3_16_0_ym19_1_1499329118907_14392">2.5.3.2. Generic dictionary learning</i>, we can read</div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr"><img class="ymail-preserve-class inline-image-guid-984ddce3-56d0-7782-0cb7-43ccf715c3f7 rte-inline-saved-image" src="cid:fe84d039-5e0e-0519-a260-a0c7be8840e9@yahoo.com" data-id="inline-image-guid-984ddce3-56d0-7782-0cb7-43ccf715c3f7" alt="Inline image" style="width:100%;max-width:767px;max-height:139px;" id="yui_3_16_0_ym19_1_1499329118907_13546"></div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr">The notations are obviously inconsistent as U and V have been interchanged some how.</div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr">Two extra (less important) corrections could probably improve even further the clarity for the reader:</div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr">1. Sticking to a single upper bound limit (either n_components or n_atoms)</div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr">2. Specifying whether V_k are columns or rows (maybe using a notation à la Matlab/Numpy: V_{:,k} or V_{k,:})</div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr">Kind regards,</div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr"><br></div><div id="yui_3_16_0_ym19_1_1499329118907_12942" dir="ltr">Axel BREUER<br><br></div></div></body></html>