def test_from_provided(): data_file = './tests/data.txt' data = Reader.read_uir_triplets(data_file) try: BaseMethod.from_provided(train_data=None, test_data=None) except ValueError: assert True try: BaseMethod.from_provided(train_data=data, test_data=None) except ValueError: assert True bm = BaseMethod.from_provided(train_data=data, test_data=data) assert bm.total_users == 10 assert bm.total_items == 10
train_path = DownloadItem( url='http://files.grouplens.org/datasets/movielens/ml-100k/u1.base', relative_path='u1.base', sub_dir='datasets/ml_100k').download_if_needed(True) test_path = DownloadItem( url='http://files.grouplens.org/datasets/movielens/ml-100k/u1.test', relative_path='u1.test', sub_dir='datasets/ml_100k').download_if_needed(True) # Load data using Reader train_data = Reader.read_uir_triplets(train_path) test_data = Reader.read_uir_triplets(test_path) # Construct base evaluation method with given data eval_method = BaseMethod.from_provided(train_data=train_data, test_data=test_data, exclude_unknowns=False, verbose=True) # Model mf = cn.models.MF(k=10, max_iter=25, learning_rate=0.01, lambda_reg=0.02, use_bias=True, early_stop=True, verbose=True) # Metrics mae = cn.metrics.MAE() rmse = cn.metrics.RMSE()