Skip to content

Commit

Permalink
Updated readme
Browse files Browse the repository at this point in the history
  • Loading branch information
MaurizioFD committed Jul 17, 2019
1 parent 1664755 commit 094d543
Show file tree
Hide file tree
Showing 8 changed files with 48 additions and 48 deletions.
2 changes: 1 addition & 1 deletion Base/Similarity/Compute_Similarity_Euclidean.py
Expand Up @@ -53,7 +53,7 @@ def __init__(self, dataMatrix, topK=100, shrink = 0, normalize=False, normalize_
elif similarity_from_distance_mode == "log":
self.similarity_is_log = True
else:
raise ValueError("Compute_Similarity_Euclidean: value for paramether 'mode' not recognized."
raise ValueError("Compute_Similarity_Euclidean: value for parameter 'mode' not recognized."
" Allowed values are: 'exp', 'lin', 'log'."
" Passed value was '{}'".format(similarity_from_distance_mode))

Expand Down
2 changes: 1 addition & 1 deletion Base/Similarity/Compute_Similarity_Python.py
Expand Up @@ -89,7 +89,7 @@ def __init__(self, dataMatrix, topK=100, shrink = 0, normalize = True,
elif similarity == "cosine":
pass
else:
raise ValueError("Cosine_Similarity: value for paramether 'mode' not recognized."
raise ValueError("Cosine_Similarity: value for parameter 'mode' not recognized."
" Allowed values are: 'cosine', 'pearson', 'adjusted', 'asymmetric', 'jaccard', 'tanimoto',"
"dice, tversky."
" Passed value was '{}'".format(similarity))
Expand Down
2 changes: 1 addition & 1 deletion Base/Similarity/Cython/Compute_Similarity_Cython.pyx
Expand Up @@ -132,7 +132,7 @@ cdef class Compute_Similarity_Cython:
elif similarity == "cosine":
pass
else:
raise ValueError("Cosine_Similarity: value for paramether 'mode' not recognized."
raise ValueError("Cosine_Similarity: value for parameter 'mode' not recognized."
" Allowed values are: 'cosine', 'pearson', 'adjusted', 'asymmetric', 'jaccard', 'tanimoto',"
"dice, tversky."
" Passed value was '{}'".format(similarity))
Expand Down
Expand Up @@ -97,7 +97,7 @@ class EvaluatorModelLoss(object):
def __init__(self):
pass

def evaluateRecommender(self, recommender_object, paramether_dictionary = None):
def evaluateRecommender(self, recommender_object, parameter_dictionary = None):

average_loss = recommender_object.model._average_loss_evaluation

Expand Down
4 changes: 2 additions & 2 deletions ParameterTuning/SearchAbstractClass.py
Expand Up @@ -12,7 +12,7 @@ class SearchInputRecommenderParameters(object):


def __init__(self,
# Dictionary of paramethers needed by the constructor
# Dictionary of parameters needed by the constructor
CONSTRUCTOR_POSITIONAL_ARGS = None,
CONSTRUCTOR_KEYWORD_ARGS = None,

Expand Down Expand Up @@ -93,7 +93,7 @@ def __init__(self, recommender_class,
self.recommender_class = recommender_class

self.results_test_best = {}
self.paramether_dictionary_best = {}
self.parameter_dictionary_best = {}

if evaluator_validation is None:
raise ValueError("{}: evaluator_validation must be provided".format(self.ALGORITHM_NAME))
Expand Down
2 changes: 1 addition & 1 deletion ParameterTuning/SearchBayesianSkopt.py
Expand Up @@ -162,7 +162,7 @@ def search(self, recommender_constructor_data,
self.hyperparams_single_value[name] = hyperparam

else:
raise ValueError("{}: Unexpected paramether type: {} - {}".format(self.ALGORITHM_NAME, str(name), str(hyperparam)))
raise ValueError("{}: Unexpected parameter type: {} - {}".format(self.ALGORITHM_NAME, str(name), str(hyperparam)))



Expand Down
68 changes: 34 additions & 34 deletions ParameterTuning/run_parameter_search.py
Expand Up @@ -83,8 +83,8 @@ def runParameterSearch_Hybrid(recommender_class, URM_train, ICM_object, ICM_name
similarity_type_list = ['cosine', 'jaccard', "asymmetric", "dice", "tversky"]


hyperparamethers_range_dictionary = {}
hyperparamethers_range_dictionary["ICM_weight"] = Real(low = 1e-2, high = 1e2, prior = 'log-uniform')
hyperparameters_range_dictionary = {}
hyperparameters_range_dictionary["ICM_weight"] = Real(low = 1e-2, high = 1e2, prior = 'log-uniform')

recommender_parameters = SearchInputRecommenderParameters(
CONSTRUCTOR_POSITIONAL_ARGS = [ICM_object, URM_train],
Expand All @@ -95,7 +95,7 @@ def runParameterSearch_Hybrid(recommender_class, URM_train, ICM_object, ICM_name


run_KNNCFRecommender_on_similarity_type_partial = partial(run_KNNRecommender_on_similarity_type,
parameter_search_space = hyperparamethers_range_dictionary,
parameter_search_space = hyperparameters_range_dictionary,
recommender_parameters = recommender_parameters,
parameterSearch = parameterSearch,
n_cases = n_cases,
Expand Down Expand Up @@ -143,31 +143,31 @@ def run_KNNRecommender_on_similarity_type(similarity_type, parameterSearch,

original_parameter_search_space = parameter_search_space

hyperparamethers_range_dictionary = {}
hyperparamethers_range_dictionary["topK"] = Integer(5, 800)
hyperparamethers_range_dictionary["shrink"] = Integer(0, 1000)
hyperparamethers_range_dictionary["similarity"] = Categorical([similarity_type])
hyperparamethers_range_dictionary["normalize"] = Categorical([True, False])
hyperparameters_range_dictionary = {}
hyperparameters_range_dictionary["topK"] = Integer(5, 800)
hyperparameters_range_dictionary["shrink"] = Integer(0, 1000)
hyperparameters_range_dictionary["similarity"] = Categorical([similarity_type])
hyperparameters_range_dictionary["normalize"] = Categorical([True, False])

if similarity_type == "asymmetric":
hyperparamethers_range_dictionary["asymmetric_alpha"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparamethers_range_dictionary["normalize"] = Categorical([True])
hyperparameters_range_dictionary["asymmetric_alpha"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparameters_range_dictionary["normalize"] = Categorical([True])

elif similarity_type == "tversky":
hyperparamethers_range_dictionary["tversky_alpha"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparamethers_range_dictionary["tversky_beta"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparamethers_range_dictionary["normalize"] = Categorical([True])
hyperparameters_range_dictionary["tversky_alpha"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparameters_range_dictionary["tversky_beta"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparameters_range_dictionary["normalize"] = Categorical([True])

elif similarity_type == "euclidean":
hyperparamethers_range_dictionary["normalize"] = Categorical([True, False])
hyperparamethers_range_dictionary["normalize_avg_row"] = Categorical([True, False])
hyperparamethers_range_dictionary["similarity_from_distance_mode"] = Categorical(["lin", "log", "exp"])
hyperparameters_range_dictionary["normalize"] = Categorical([True, False])
hyperparameters_range_dictionary["normalize_avg_row"] = Categorical([True, False])
hyperparameters_range_dictionary["similarity_from_distance_mode"] = Categorical(["lin", "log", "exp"])

if similarity_type in ["cosine", "asymmetric", "euclidean"] and allow_weighting:
hyperparamethers_range_dictionary["feature_weighting"] = Categorical(["none", "BM25", "TF-IDF"])
hyperparameters_range_dictionary["feature_weighting"] = Categorical(["none", "BM25", "TF-IDF"])


local_parameter_search_space = {**hyperparamethers_range_dictionary, **original_parameter_search_space}
local_parameter_search_space = {**hyperparameters_range_dictionary, **original_parameter_search_space}

parameterSearch.search(recommender_parameters,
parameter_search_space = local_parameter_search_space,
Expand Down Expand Up @@ -395,10 +395,10 @@ def runParameterSearch_Collaborative(recommender_class, URM_train, metric_to_opt

if recommender_class is P3alphaRecommender:

hyperparamethers_range_dictionary = {}
hyperparamethers_range_dictionary["topK"] = Integer(5, 800)
hyperparamethers_range_dictionary["alpha"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparamethers_range_dictionary["normalize_similarity"] = Categorical([True, False])
hyperparameters_range_dictionary = {}
hyperparameters_range_dictionary["topK"] = Integer(5, 800)
hyperparameters_range_dictionary["alpha"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparameters_range_dictionary["normalize_similarity"] = Categorical([True, False])

recommender_parameters = SearchInputRecommenderParameters(
CONSTRUCTOR_POSITIONAL_ARGS = [URM_train],
Expand All @@ -412,11 +412,11 @@ def runParameterSearch_Collaborative(recommender_class, URM_train, metric_to_opt

if recommender_class is RP3betaRecommender:

hyperparamethers_range_dictionary = {}
hyperparamethers_range_dictionary["topK"] = Integer(5, 800)
hyperparamethers_range_dictionary["alpha"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparamethers_range_dictionary["beta"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparamethers_range_dictionary["normalize_similarity"] = Categorical([True, False])
hyperparameters_range_dictionary = {}
hyperparameters_range_dictionary["topK"] = Integer(5, 800)
hyperparameters_range_dictionary["alpha"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparameters_range_dictionary["beta"] = Real(low = 0, high = 2, prior = 'uniform')
hyperparameters_range_dictionary["normalize_similarity"] = Categorical([True, False])

recommender_parameters = SearchInputRecommenderParameters(
CONSTRUCTOR_POSITIONAL_ARGS = [URM_train],
Expand All @@ -429,8 +429,8 @@ def runParameterSearch_Collaborative(recommender_class, URM_train, metric_to_opt

if recommender_class is PureSVDRecommender:

hyperparamethers_range_dictionary = {}
hyperparamethers_range_dictionary["num_factors"] = Integer(1, 250)
hyperparameters_range_dictionary = {}
hyperparameters_range_dictionary["num_factors"] = Integer(1, 250)

recommender_parameters = SearchInputRecommenderParameters(
CONSTRUCTOR_POSITIONAL_ARGS = [URM_train],
Expand All @@ -444,10 +444,10 @@ def runParameterSearch_Collaborative(recommender_class, URM_train, metric_to_opt

if recommender_class is SLIMElasticNetRecommender:

hyperparamethers_range_dictionary = {}
hyperparamethers_range_dictionary["topK"] = Integer(5, 800)
hyperparamethers_range_dictionary["l1_ratio"] = Real(low = 1e-5, high = 1.0, prior = 'log-uniform')
hyperparamethers_range_dictionary["alpha"] = Real(low = 1e-3, high = 1.0, prior = 'uniform')
hyperparameters_range_dictionary = {}
hyperparameters_range_dictionary["topK"] = Integer(5, 800)
hyperparameters_range_dictionary["l1_ratio"] = Real(low = 1e-5, high = 1.0, prior = 'log-uniform')
hyperparameters_range_dictionary["alpha"] = Real(low = 1e-3, high = 1.0, prior = 'uniform')

recommender_parameters = SearchInputRecommenderParameters(
CONSTRUCTOR_POSITIONAL_ARGS = [URM_train],
Expand All @@ -462,7 +462,7 @@ def runParameterSearch_Collaborative(recommender_class, URM_train, metric_to_opt

## Final step, after the hyperparameter range has been defined for each type of algorithm
parameterSearch.search(recommender_parameters,
parameter_search_space = hyperparamethers_range_dictionary,
parameter_search_space = hyperparameters_range_dictionary,
n_cases = n_cases,
output_folder_path = output_folder_path,
output_file_name_root = output_file_name_root,
Expand Down
14 changes: 7 additions & 7 deletions run_RecSys_18_SpectralCF.py
Expand Up @@ -58,12 +58,12 @@ def runParameterSearch_SpectralCF(recommender_class, URM_train, earlystopping_pa

if recommender_class is SpectralCF_RecommenderWrapper:

hyperparamethers_range_dictionary = {}
hyperparamethers_range_dictionary["batch_size"] = Categorical([1024])
hyperparamethers_range_dictionary["embedding_size"] = Categorical([4, 8, 16, 32])
hyperparamethers_range_dictionary["decay"] = Real(low = 1e-5, high = 1e-1, prior = 'log-uniform')
hyperparamethers_range_dictionary["learning_rate"] = Real(low = 1e-5, high = 1e-2, prior = 'log-uniform')
hyperparamethers_range_dictionary["k"] = Integer(low = 1, high = 6)
hyperparameters_range_dictionary = {}
hyperparameters_range_dictionary["batch_size"] = Categorical([1024])
hyperparameters_range_dictionary["embedding_size"] = Categorical([4, 8, 16, 32])
hyperparameters_range_dictionary["decay"] = Real(low = 1e-5, high = 1e-1, prior = 'log-uniform')
hyperparameters_range_dictionary["learning_rate"] = Real(low = 1e-5, high = 1e-2, prior = 'log-uniform')
hyperparameters_range_dictionary["k"] = Integer(low = 1, high = 6)

recommender_parameters = SearchInputRecommenderParameters(
CONSTRUCTOR_POSITIONAL_ARGS = [URM_train],
Expand All @@ -76,7 +76,7 @@ def runParameterSearch_SpectralCF(recommender_class, URM_train, earlystopping_pa
#########################################################################################################

parameterSearch.search(recommender_parameters,
parameter_search_space = hyperparamethers_range_dictionary,
parameter_search_space = hyperparameters_range_dictionary,
n_cases = n_cases,
output_folder_path = output_folder_path,
output_file_name_root = output_file_name_root,
Expand Down

0 comments on commit 094d543

Please sign in to comment.