"max_iter": args.max_iter, "use_logit": False if args.loss in ["pairwise", "pairwise+utility"] else True, "num_workers": args.num_workers } print("Reading dataset") if args.dataset == "movielens": data_dir = cfg.vals['movielens_dir'] + "/preprocessed_choice/" elif args.dataset == "amazon": data_dir = cfg.vals['amazon_dir'] + "/preprocessed_choice/" else: raise ValueError("--dataset must be 'amazon' or 'movielens'") X_train, X_test, y_train, y_test = read_train_test_dir(data_dir) print("Dataset read complete...") user_item_rating_map = load_dict_output(data_dir, "user_item_rating.json", True) item_rating_map = load_dict_output(data_dir, "item_rating.json", True) stats = load_dict_output(data_dir, "stats.json") print("n users: {}".format(stats['n_users'])) print("n items: {}".format(stats['n_items'])) n_test = get_test_sample_size(X_test.shape[0], k=TEST_BATCH_SIZE) X_test = X_test[:n_test, :] y_test = y_test[:n_test, :]
"lambda": args.lmbda, "seq_len": args.seq_len, "max_iter": args.max_iter, "grad_clip": args.grad_clip } print("Reading dataset") if args.dataset == "movielens": data_dir = cfg.vals['movielens_dir'] + "/preprocessed/" elif args.dataset == "amazon": data_dir = cfg.vals['amazon_dir'] + "/preprocessed/" else: raise ValueError("--dataset must be 'amazon' or 'movielens'") X_train, X_test, y_train, y_test = read_train_test_dir(data_dir, drop_ts=False) user_item_rating_map = load_dict_output(data_dir, "user_item_rating.json", True) item_rating_map = load_dict_output(data_dir, "item_rating.json", True) stats = load_dict_output(data_dir, "stats.json") print("Dataset read complete...") print("n users: {}".format(stats['n_users'])) print("n items: {}".format(stats['n_items'])) interactions = Interactions(user_ids=X_train[:, 0], item_ids=X_train[:, 1], ratings=y_train.flatten(), timestamps=X_train[:, 2], num_users=stats['n_users'],