/* Y' (Cu -I) Y by outer products */
for (Element e : userRatings.nonZeroes()) {
for (Vector.Element feature : Y.get(e.index()).all()) {
Vector partial = CuMinusIY.get(e.index()).times(feature.get());
YtransponseCuMinusIY.viewRow(feature.index()).assign(partial, Functions.PLUS);
}
}
/* Y' (Cu - I) Y + λ I add lambda on the diagonal */
for (int feature = 0; feature < numFeatures; feature++) {