reader = Reader(line_format='item user rating', sep=',', rating_scale=(1, 5), skip_lines=1) data_train = Dataset.load_from_file(file_path, reader=reader) # %% Best Hyper-parameters Training - NMF alg_NMF = NMF() alg_NMF.biased = False alg_NMF.n_epochs = 50 alg_NMF.n_factors = 35 alg_NMF.reg_pu = 0.1 alg_NMF.reg_qi = 0.1 alg_NMF.verbose = True start = time.time() alg_NMF.fit(data_train.build_full_trainset()) end = time.time() print("***********************************************") print("Exe time:") print(end - start) # %% Best Hyper-parameters Training - SVD alg_SVD = SVD() alg_SVD.biased = True alg_SVD.n_epochs = 50
file.close() # ***************************************************************************** # %% Best Hyper-parameters Training: # Training over whole training dataset, using best hyper-parameters alg = NMF() alg.biased = Train_CV.best_params['rmse']['biased'] alg.n_epochs = Train_CV.best_params['rmse']['n_epochs'] alg.n_factors = Train_CV.best_params['rmse']['n_factors'] alg.reg_pu = Train_CV.best_params['rmse']['reg_pu'] alg.reg_qi = Train_CV.best_params['rmse']['reg_qi'] alg.reg_bu = Train_CV.best_params['rmse']['reg_bu'] alg.reg_bi = Train_CV.best_params['rmse']['reg_bi'] alg.verbose = True alg.random_state = 0 alg.fit(data_train.build_full_trainset()) # ***************************************************************************** # %% Loading Test Data file_path = "Data/sample_submission.csv" data_test = utils.load_data_desired(file_path) # ***************************************************************************** # %% Predicting test data labels Predict_Test = [] for line in data_test: Predict_Test.append(alg.predict(str(line[1]), str(line[0])).est)