Advertisement
Rodrigo_Moraes

user knn

Nov 17th, 2021
1,148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.26 KB | None | 0 0
  1. import time
  2.  
  3. from caserec.recommenders.rating_prediction import userknn as userknn_prediction
  4. from caserec.recommenders.item_recommendation import userknn as userknn_recommendation
  5. from caserec.evaluation.item_recommendation import ItemRecommendationEvaluation
  6. from caserec.evaluation.rating_prediction import RatingPredictionEvaluation
  7. from caserec.utils.split_database import SplitDatabase
  8.  
  9. if __name__ == '__main__':
  10.     print("Iniciando Recommender")
  11.  
  12.     n_splits = 5
  13.     time_to_split_database = time.time()
  14.     SplitDatabase(
  15.         input_file="files/1000_itens.txt",
  16.         dir_folds="files",
  17.         n_splits=n_splits,
  18.         sep_read='\t',
  19.         sep_write='\t'
  20.     ).k_fold_cross_validation()
  21.  
  22.     print("Tempo decorrido para dividir o banco de dados: " + str(time_to_split_database))
  23.     print("Iniciando UserKNN")
  24.     time_to_compute_UserKNN = time.time()
  25.     for fold in range(n_splits - 1):
  26.        
  27.         print("Iniciando fold: " + str(n_splits))
  28.        
  29.         print("User Knn recommendation.")
  30.         userknn_recommendation.UserKNN(
  31.             train_file="filesfolds/" + str(fold) + "/train.dat",
  32.             test_file="filesfolds/" + str(fold) + "/test.dat",
  33.             output_file="files/output_recommendation.txt",
  34.             sep='\t',
  35.             output_sep='\t',
  36.             as_similar_first=True).compute()
  37.  
  38.         print("User Knn prediction.")        
  39.         userknn_prediction.UserKNN(
  40.             train_file="filesfolds/"+str(fold)+"/train.dat",
  41.             test_file="filesfolds/"+str(fold)+"/test.dat",
  42.             output_file="files/output_prediction.txt",
  43.             sep='\t',
  44.             output_sep='\t',
  45.             as_similar_first=True).compute()
  46.        
  47.         print("User Knn recommendation evaluation.")
  48.         ItemRecommendationEvaluation().evaluate_with_files(
  49.             prediction_file="files/output_recommendation.txt",
  50.             test_file="filesfolds/"+str(fold)+"/test.dat")
  51.  
  52.         print("User Knn prediction evaluation.")
  53.         RatingPredictionEvaluation().evaluate_with_files(
  54.             prediction_file="files/output_prediction.txt",
  55.             test_file="filesfolds/" + str(fold) + "/test.dat")
  56.  
  57.     print("Tempo decorrido para computar o UserKnn: " + str(time_to_compute_UserKNN))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement