Knowledge-aware

Summary

kaHFM.kahfm.KaHFM(data, config, params, …)

Knowledge-aware Hybrid Factorization Machines

kaHFM_batch.kahfm_batch.KaHFMBatch(data, …)

Knowledge-aware Hybrid Factorization Machines (Tensorflow Batch Variant)

kahfm_embeddings.kahfm_embeddings.KaHFMEmbeddings(…)

Knowledge-aware Hybrid Factorization Machines (Tensorflow Embedding-based Variant)

KaHFM

class elliot.recommender.knowledge_aware.kaHFM.kahfm.KaHFM(data, config, params, *args, **kwargs)[source]

Bases: elliot.recommender.recommender_utils_mixin.RecMixin, elliot.recommender.base_recommender_model.BaseRecommenderModel

Knowledge-aware Hybrid Factorization Machines

Vito Walter Anelli and Tommaso Di Noia and Eugenio Di Sciascio and Azzurra Ragone and Joseph Trotta “How to Make Latent Factors Interpretable by Feeding Factorization Machines with Knowledge Graphs”, ISWC 2019 Best student Research Paper For further details, please refer to the paper

Vito Walter Anelli and Tommaso Di Noia and Eugenio Di Sciascio and Azzurra Ragone and Joseph Trotta “Semantic Interpretation of Top-N Recommendations”, IEEE TKDE 2020 For further details, please refer to the paper

Parameters
  • lr – learning rate (default: 0.05)

  • bias_regularization – Bias regularization (default: 0)

  • user_regularization – User regularization (default: 0.0025)

  • positive_item_regularization – regularization for positive (experienced) items (default: 0.0025)

  • negative_item_regularization – regularization for unknown items (default: 0.00025)

  • update_negative_item_factors – Boolean to update negative item factors (default: True)

  • update_users – Boolean to update user factors (default: True)

  • update_items – Boolean to update item factors (default: True)

  • update_bias – Boolean to update bias value (default: True)

To include the recommendation model, add it to the config file adopting the following pattern:

models:
  KaHFM:
    meta:
      hyper_max_evals: 20
      hyper_opt_alg: tpe
      validation_rate: 1
      verbose: True
      save_weights: True
      save_recs: True
      validation_metric: nDCG@10
    epochs: 100
    batch_size: -1
    lr: 0.05
    bias_regularization: 0
    user_regularization: 0.0025
    positive_item_regularization: 0.0025
    negative_item_regularization: 0.00025
    update_negative_item_factors: True
    update_users: True
    update_items: True
    update_bias: True

KaHFM Batch

class elliot.recommender.knowledge_aware.kaHFM_batch.kahfm_batch.KaHFMBatch(data, config, params, *args, **kwargs)[source]

Bases: elliot.recommender.recommender_utils_mixin.RecMixin, elliot.recommender.base_recommender_model.BaseRecommenderModel

Knowledge-aware Hybrid Factorization Machines (Tensorflow Batch Variant)

Vito Walter Anelli and Tommaso Di Noia and Eugenio Di Sciascio and Azzurra Ragone and Joseph Trotta “How to Make Latent Factors Interpretable by Feeding Factorization Machines with Knowledge Graphs”, ISWC 2019 Best student Research Paper For further details, please refer to the paper

Vito Walter Anelli and Tommaso Di Noia and Eugenio Di Sciascio and Azzurra Ragone and Joseph Trotta “Semantic Interpretation of Top-N Recommendations”, IEEE TKDE 2020 For further details, please refer to the paper

Parameters
  • lr – learning rate (default: 0.0001)

  • l_w – Weight regularization (default: 0.005)

  • l_b – Bias regularization (default: 0)

To include the recommendation model, add it to the config file adopting the following pattern:

models:
  KaHFMBatch:
    meta:
      hyper_max_evals: 20
      hyper_opt_alg: tpe
      validation_rate: 1
      verbose: True
      save_weights: True
      save_recs: True
      validation_metric: nDCG@10
    epochs: 100
    batch_size: -1
    lr: 0.0001
    l_w: 0.005
    l_b: 0

KaHFM Embeddings

class elliot.recommender.knowledge_aware.kahfm_embeddings.kahfm_embeddings.KaHFMEmbeddings(data, config, params, *args, **kwargs)[source]

Bases: elliot.recommender.recommender_utils_mixin.RecMixin, elliot.recommender.base_recommender_model.BaseRecommenderModel

Knowledge-aware Hybrid Factorization Machines (Tensorflow Embedding-based Variant)

Vito Walter Anelli and Tommaso Di Noia and Eugenio Di Sciascio and Azzurra Ragone and Joseph Trotta “How to Make Latent Factors Interpretable by Feeding Factorization Machines with Knowledge Graphs”, ISWC 2019 Best student Research Paper For further details, please refer to the paper

Vito Walter Anelli and Tommaso Di Noia and Eugenio Di Sciascio and Azzurra Ragone and Joseph Trotta “Semantic Interpretation of Top-N Recommendations”, IEEE TKDE 2020 For further details, please refer to the paper

Parameters
  • lr – learning rate (default: 0.0001)

  • l_w – Weight regularization (default: 0.005)

  • l_b – Bias regularization (default: 0)

To include the recommendation model, add it to the config file adopting the following pattern:

models:
  KaHFMEmbeddings:
    meta:
      hyper_max_evals: 20
      hyper_opt_alg: tpe
      validation_rate: 1
      verbose: True
      save_weights: True
      save_recs: True
      validation_metric: nDCG@10
    epochs: 100
    batch_size: -1
    lr: 0.0001
    l_w: 0.005
    l_b: 0