/// public override void LearnAttributeToFactorMapping() { this.factor_bias = new float[num_factors]; for (int i = 0; i < num_factors; i++) { factor_bias[i] = MatrixExtensions.ColumnAverage(item_factors, i); Console.Error.WriteLine("fb {0}: {1}", i, factor_bias[i]); } this.attribute_to_factor = new Matrix <float>(NumItemAttributes, num_factors); MatrixExtensions.InitNormal(attribute_to_factor, InitMean, InitStdDev); for (int i = 0; i < num_iter_mapping; i++) { IterateMapping(); } _MapToLatentFactorSpace = Utils.Memoize <int, float[]>(__MapToLatentFactorSpace); }