Пример #1
0
    private static ITimedRatings readData(string data_file)
    {
        Console.WriteLine("Dataset: " + data_file);
        Console.WriteLine(DateTime.Now);
        var all_data = TimedRatingData.Read(data_file, null, null, TestRatingFileFormat.WITHOUT_RATINGS, true);

        Console.Write(all_data.Statistics());
        Console.WriteLine("Finished dataset read");
        return(all_data);
    }
Пример #2
0
    private static ITimedRatings readDataMapped(string data_file, ref MyMediaLite.Data.Mapping user_mappings, ref MyMediaLite.Data.Mapping item_mappings)
    {
        Console.WriteLine("Dataset: " + data_file);

        Console.WriteLine(DateTime.Now);
        var all_data = TimedRatingData.Read(data_file, user_mappings, item_mappings, TestRatingFileFormat.WITHOUT_RATINGS, true);

        Console.Write(all_data.Statistics());
        Console.WriteLine("Finished dataset read");
        return(all_data);
    }
Пример #3
0
        public void TestRead()
        {
            var reader = new StringReader(@"5951,50,5,2001-01-01
5951,223,5,2001-01-01
5951,260,5,2001-01-01
5951,293,5,2001-01-01
5951,356,4,2001-01-01
5951,364,3,2001-01-01
5951,457,3,2001-01-01
");

            IRatings data = TimedRatingData.Read(reader);

            Assert.AreEqual(7, data.Count);
        }
Пример #4
0
        public void TestTimeStamp()
        {
            var reader = new StringReader(@"# first line
5951,50,5,881250949
5951,223,5,891717742
5951,260,5,878887116
5951,293,5,880606923
5951,356,4,886397596
5951,364,3,884182806
5951,457,3,879270459
");

            IRatings data = TimedRatingData.Read(reader, null, null, TestRatingFileFormat.WITH_RATINGS, true);

            Assert.AreEqual(7, data.Count);
        }
Пример #5
0
        public void TestReadIgnoreLine()
        {
            var reader = new StringReader(@"# first line
5951,50,5,2001-01-01 00:00:00
5951,223,5,2001-01-01 00:00:00
5951,260,5,2001-01-01 00:00:00
5951,293,5,2001-01-01 00:00:00
5951,356,4,2001-01-01 00:00:00
5951,364,3,2001-01-01 00:00:00
5951,457,3,2001-01-01 00:00:00
");

            IRatings data = TimedRatingData.Read(reader, null, null, TestRatingFileFormat.WITH_RATINGS, true);

            Assert.AreEqual(7, data.Count);
        }
Пример #6
0
    protected override void LoadData()
    {
        bool static_data = !online_eval;

        TimeSpan loading_time = Wrap.MeasureTime(delegate() {
            base.LoadData();

            // read training data
            if ((recommender is TimeAwareRatingPredictor || chronological_split != null) && file_format != RatingFileFormat.MOVIELENS_1M)
            {
                training_data = TimedRatingData.Read(training_file, user_mapping, item_mapping);
            }
            else
            {
                if (file_format == RatingFileFormat.DEFAULT)
                {
                    training_data = static_data
                                                ? StaticRatingData.Read(training_file, user_mapping, item_mapping, rating_type)
                                                : RatingData.Read(training_file, user_mapping, item_mapping);
                }
                else if (file_format == RatingFileFormat.IGNORE_FIRST_LINE)
                {
                    training_data = static_data
                                                ? StaticRatingData.Read(training_file, user_mapping, item_mapping, rating_type, TestRatingFileFormat.WITH_RATINGS, true)
                                                : RatingData.Read(training_file, user_mapping, item_mapping, true);
                }
                else if (file_format == RatingFileFormat.MOVIELENS_1M)
                {
                    training_data = MovieLensRatingData.Read(training_file, user_mapping, item_mapping);
                }
                else if (file_format == RatingFileFormat.KDDCUP_2011)
                {
                    training_data = MyMediaLite.IO.KDDCup2011.Ratings.Read(training_file);
                }
            }
            recommender.Ratings = training_data;

            // read test data
            if (test_file != null)
            {
                TestRatingFileFormat test_format = test_no_ratings ? TestRatingFileFormat.WITHOUT_RATINGS : TestRatingFileFormat.WITH_RATINGS;
                if (recommender is TimeAwareRatingPredictor && file_format != RatingFileFormat.MOVIELENS_1M)
                {
                    test_data = TimedRatingData.Read(test_file, user_mapping, item_mapping, test_format);
                }
                else if (file_format == RatingFileFormat.MOVIELENS_1M)
                {
                    test_data = MovieLensRatingData.Read(test_file, user_mapping, item_mapping, test_format);
                }
                else if (file_format == RatingFileFormat.KDDCUP_2011)
                {
                    test_data = MyMediaLite.IO.KDDCup2011.Ratings.Read(test_file);
                }
                else
                {
                    test_data = StaticRatingData.Read(test_file, user_mapping, item_mapping, rating_type, test_format, file_format == RatingFileFormat.IGNORE_FIRST_LINE);
                }

                if (recommender is ITransductiveRatingPredictor)
                {
                    ((ITransductiveRatingPredictor)recommender).AdditionalFeedback = test_data;
                }
            }
        });

        Console.Error.WriteLine(string.Format(CultureInfo.InvariantCulture, "loading_time {0:0.##}", loading_time.TotalSeconds));
        Console.Error.WriteLine("memory {0}", Memory.Usage);
    }