/// protected override void RetrainItem(int item_id) { base.RetrainUser(item_id); if (UpdateItems) { for (int i = 0; i <= MaxItemID; i++) { correlation[item_id, i] = Pearson.ComputeCorrelation(ratings, EntityType.ITEM, item_id, i, Shrinkage); } } }
[Test()] public void TestComputeCorrelation() { // create test objects var ratings = new Ratings(); ratings.Add(0, 1, 0.3); ratings.Add(0, 4, 0.2); ratings.Add(1, 2, 0.6); ratings.Add(1, 3, 0.4); ratings.Add(1, 4, 0.2); // test Assert.AreEqual(0, Pearson.ComputeCorrelation(ratings, EntityType.USER, 0, 1, 0)); }
[Test()] public void TestComputeCorrelation() { // create test objects var ratings = new Ratings(); ratings.Add(0, 1, 0.3f); ratings.Add(0, 4, 0.2f); ratings.Add(1, 2, 0.6f); ratings.Add(1, 3, 0.4f); ratings.Add(1, 4, 0.2f); // test var p = new Pearson(ratings.AllUsers.Count, 0f); Assert.AreEqual(0, p.ComputeCorrelation(ratings, EntityType.USER, 0, 1)); }