Value-aware Recommendation based on Reinforcement Profit Maximization
This is an implementation of the Value-aware Recommendation based on Reinforcement Profit Maximization research, which direclty maximizes the profit of recommendation lists based on reinforcement learning. For dataset used in this work, please refer to the "Dataset" tab above.
We appriciate your citing the following paper if you plan to use it for your project. Email Changhua Pei for questions or comments concerning this software or methodology. Please checkout the source code at the GitHub page (https://github.com/rec-agent/rec-rl).
References:
[1] Changhua Pei, Xinru Yang, Qing Cui, Xiao Lin, Fei Sun, Peng Jiang, Wenwu Ou and Yongfeng Zhang. Value-aware Recommendation based on Reinforcement Profit Maximization. In Proceedings of the Web Conference 2019 (WWW 2019), May 13 - 17, 2019, San Francisco, USA. [PDF]
Conversational Search and Recommendation: System Ask, User Respond
This is an implementation of the conversational search and recommendation model based on the "system ask - user respond" paradigm. The code can be downloaded by clicking here (download). To download the dataset used in this work, please refer to the "Dataset" tab above. We appriciate that you cite the following paper if you find the software useful to your research or project. Email Xu Chen or Yongfeng Zhang for questions or comments concerning this software or model.
References:
[1] Yongfeng Zhang, Xu Chen, Qingyao Ai, Liu Yang, and W. Bruce Croft. Towards Conversational Search and Recommendation: System Ask, User Respond. In Proceedings of the 27th ACM International Conference on Information and Knowledge Management (CIKM 2018), October 22 - 26, 2018, Turin, Italy. [PDF]
Learning Heterogeneous Knowledge Base Embeddings for Explainable Recommendation
This is an implementation of the Knowledge Base Embedding for Explainable Recommendation (KBE4ER) model, which conducts reasoning over knowledge base embeddings to provide both recommendations and explanations. Explanations are provided as a path from the user entity and an item entity in the knowledge graph. The package includes an interactive toolkit to explore the explanations for each user-item pair by displaying the paths of the highest confidence score.
We appriciate your citing the following paper if you plan to use it for your project. Email Qingyao Ai for questions or comments concerning this software or methodology. Please checkout the source code at the GitHub page (https://github.com/evison/KBE4ExplainableRecommendation).
References:
[1] Qingyao Ai, Vahid Azizi, Xu Chen, Yongfeng Zhang. Learning Heterogeneous Knowledge Base Embeddings for Explainable Recommendation. Algorithms. 2018, 11(9). Special Issue Collaborative Filtering and Recommender Systems. [PDF]
Joint Representation Learning for Top-N Recommendation
This is an implementation of the Joint Representation Learning (JRL) model for recommendation based on heterogeneous information sources. The JRL is a deep neural network model that jointly learns latent representations for users and items based on reviews, images, and ratings. The model can jointly or independently learn latent representations for users and items based on different information. The probability (which is also the rank score) of an item being purchased by a user can be computed with their concatenated latent representations from different information sources. This deep recommendation model has achieved 2~3 times of improvment against traditional shallow models for top-N recommendation (N=10), in terms of NDCG, Precision, Recall, and Hit-Ratio, on several product domains of a standard Amazon dataset.
We appriciate your citing the following paper if you plan to use it for your project. Additional references relating to this methodology are listed in the README.txt file in this release. Email Qingyao Ai for questions or comments concerning this software or methodology. Please checkout the source code and installations of the package at CIIR software page (download), or you can also checkout the GitHub page (download) for the package that includes both the implementation of our model and the baselines.
The properly splited dataste used in this paper can be downloaded from here: https://www.dropbox.com/s/th672ttebwxhsfx/CIKM2017.zip?dl=0
References:
[1] Yongfeng Zhang, Qingyao Ai, Xu Chen, and W. Bruce Croft. Joint Representation Learning for Top-N Recommendation with Heterogenous Information Sources. In Proceedings of the 26th ACM International Conference on Information and Knowledge Management (CIKM 2017), November 6 - 10, 2017, Singapore. [PDF][slides][code]
Hierarchical Embedding Model for Personalized Product Search
This is an implementation of the Hierarchical Embedding Model (HEM) for personalized product search. The HEM is a deep neural network model that jointly learns latent representations for queries, products and users. It is designed as a generative model and the embedding representations for queries, users and items in the HEM are learned through optimizing the log likelihood of observed user-query-item purchases. The probability (which is also the rank score) of an item being purchased by a user with a query can be computed with their corresponding latent representations. Details on HEM and its use can be found in the paper listed below. We appriciate your citing the paper if planning to use it for your project. Additional references relating to this methodology are listed in the README.txt file in this release. Email Qingyao Ai for questions or comments concerning this software or methodology. Checkout the source code and installations of the package at CIIR software page (download).
References:
[1] Qingyao Ai, Yongfeng Zhang, Keping Bi, Xu Chen, and W. Bruce Croft. Learning a Hierarchical Embedding Model for Personalized Product Search. In Proceedings of the 40th International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR 2017), August 7 - 11, 2017, Tokyo, Japan. [PDF][slides][code]
ER-Surplus: Economic Recommendation with Surplus Maximization
This package contains two versions of implication for the Economic Recommendation (ER) algorithm based on social surplus maximization [1], one version is in R language, another in C++ (more efficient). This package can also be used in a more general purpose for Online Service Allocation (OSA) -- a very basic economic problem in an online setting, which tries to find the best consumer-producer matching in the online economy. Basic components of the package include 1) personalized utility estimation of online items for users, 2) surplus estimation based on utility, price, and cost, and 3) resource allocation (i.e., matching and quantity distribution) based on social surplus maximization for social good. Checkout the source code of the package at Github (download).
References:
[1] Yongfeng Zhang, Qi Zhao, Yi Zhang, Daniel Friedman, Min Zhang, Yiqun Liu, and Shaoping Ma. Economic Recommendation with Surplus Maximization. In Proceedings of the 25th International World Wide Web Conference (WWW 2016), April 11 - 15, 2016, Montreal, Canada. [PDF][slides][code]
Multi-Product Utility Maximization and Recommendation
This package contains the implication of multiple product utility estimation, i.e., estiamting the utility of a set of products based on economic complimentary and substutive relationships of products, which are atomatically mined from comsumer trasactions. By estimating and maximizing the joint utility of a set of products, we can provide new recommendations to users that best matches their previous purchases. Checkout the source code of the package at Github (download).
References:
Qi Zhao, Yongfeng Zhang, Yi Zhang, and Daniel Friedman. Multi-Product Utility Maximization for Economic Recommendation. In Proceedings of the 10th International Conference on Web Search and Data Mining (WSDM 2017), February 6 - 10, 2017, Cambridge, UK. [PDF][slides][code]
Explicit Factor Model for Explainable Recommendation
This is an implementation of the Explicit Factor Model (EFM) for Explainable Recommendation [1], which provides personalized recommendations and personalized explanations at the same time. Begining May 2017, the EFM model has been integrated into the latest version of the libRec recommendation package (https://www.librec.net), you can download the package and use the EFM recommender therein directly. Except for this, another opensource implementation of the algorithm contributed by Yue Zhang can also be accessed on Github (download), many thanks for the contribution!
Maybe you will also need the sentiment analysis toolkit to extract feature-opinion-sentiment triplets from your own dataset, which the EFM model will depend on. We can provide Chinese or English versions of the toolkit, which process Chinese or English texts, respectively. If you do need this toolkit, please refer to the "Sentires: Phrase-level Sentiment Analysis toolkit" section on this page for further information.
References:
[1] Yongfeng Zhang, Guokun Lai, Min Zhang, Yi Zhang, Yiqun Liu and Shaoping Ma. Explicit Factor Models for Explainable Recommendation based on Phrase-level Sentiment Analysis. In Proceedings of the 37th Annual International ACM SIGIR Conference on Research and Development on Information Retrieval (SIGIR 2014), July 6 - 11, 2014, Gold Coast, Australia. [PDF][slides]
[2] Xu Chen, Zheng Qin, Yongfeng Zhang, and Tao Xu. Learning to Rank Features for Recommendation over Multiple Categories. In Proceedings of the 39th Annual International ACM SIGIR Conference on Research and Development on Information Retrieval (SIGIR 2016), July 17 - 21, 2016, Pisa, Italy. [PDF][slides]
[3] Yongfeng Zhang. Incorporating Phrase-level Sentiment Analysis on Textual Reviews for Personalized Recommendation. The 8th International Conference on Web Search and Data Mining (WSDM 2015), Feb. 2 - 6, 2015, Shanghai, China. [PDF]
LMF: Localized Matrix Factorization
This is an ANSI C implementation of the Localized Matrix Factorization (LMF) framework as presented in [1] and [2], which has been applied to a practical system in a commercial search engine company, and achieved good results. Click here (download) for the package (updated 2015-01-27 for speed optimization), or checkout the latest version at Github (download).
References:
[1] Yongfeng Zhang, Min Zhang, Yiqun Liu, Shaoping Ma and Shi Feng. Localized Matrix Factorization for Recommendation based on Matrix Block Diagonal Forms. In Proceedings of the 22nd International Conference on World Wide Web (WWW 2013), May 13 – 17, 2013, Rio de Janeiro, Brazil. [PDF]
[2] Yongfeng Zhang, Min Zhang, Yiqun Liu and Shaoping Ma. Improve Collaborative Filtering Through Bordered Block Diagonal Form Matrices. In Proceedings of the 36th Annual International ACM SIGIR Conference on Research and Development on Information Retrieval (SIGIR 2013), July 28 - August 1, 2013, Dublin, Ireland. [PDF][slides]
Sentires: Phrase-level Sentiment Analysis toolkit
This is a Java implemented toolkit for phrase-level sentiment analysis, it extracts 'feature-opinion-sentiment' entries to construct a context-sensitive sentiment lexicon from large scale online textual user reviews based on both statistical and machine learning techniques. For exmple, in the product domain of mobile phone, sampled entries include 'picture-clear-positive', 'battery life-short-negative', 'quality-high-positive', or 'noise-high-negative'. It further contains a module that is capable of matching the entries contained in a piece of review, and another module that contructs feature-level profiles for online items according to the user reviews made towards a specific product.
Key techniques of this toolkit are presented in our paper [1-3], and two demos of feature-level online product comparison can be visited at http://tv.thuir.org and http://mobile.thuir.org. This toolkit was used for explainable recommendation in [4-6], and time-aware recommendation in [7]. It has also been applied to a practical system in a commercial company and achieved good results.
We provide executable jar balls in two versions, one for processing English texts, and the other for Chinese. To obtain this toolkit, just email zhangyf07@gmail.com with the subject line Sentires: Phrase-level Sentiment Analysis toolkit, and indicate the version (English or Chinese, or both) that you need (see below). We appreciate if you cite one or more of the following publications that are related to your research.
Note: Starting from the year 2021 you no longer need to email me to obtain this toolkit. We have shared it on GitHub, please visit https://github.com/evison/Sentires for downloading and usage instructions of the package.
References:
[1] Yongfeng Zhang, Haochen Zhang, Min Zhang, Yiqun Liu and Shaoping Ma. Do Users Rate or Review? Boost Phrase-level Sentiment Labeling with Review-level Sentiment Classification. In Proceedings of the 37th Annual International ACM SIGIR Conference on Research and Development on Information Retrieval (SIGIR 2014) (short paper), July 6 - 11, 2014, Gold Coast, Australia. [PDF][poster]
[2] Yunzhi Tan, Yongfeng Zhang, Min Zhang, Yiqun Liu and Shaoping Ma. A Unified Framework for Emotional Elements Extraction based on Finite State Matching Machine. In Proceedings of the 2nd CCF Conference on Natural Language Processing and Chinese Computing (NLP&CC 2013), Nov. 15 - 19, 2013, Chongqing, China. [PDF]
[3] Yongfeng Zhang, Min Zhang, Yiqun Liu and Shaoping Ma. Boost Phrase-level Polarity Labelling with Review-level Sentiment Classification. arXiv Preprint 2015. arXiv:1502.03322. [PDF]
[4] Yongfeng Zhang, Guokun Lai, Min Zhang, Yi Zhang, Yiqun Liu and Shaoping Ma. Explicit Factor Models for Explainable Recommendation based on Phrase-level Sentiment Analysis. In Proceedings of the 37th Annual International ACM SIGIR Conference on Research and Development on Information Retrieval (SIGIR 2014), July 6 - 11, 2014, Gold Coast, Australia. [PDF][slides]
[5] Xu Chen, Zheng Qin, Yongfeng Zhang, and Tao Xu. Learning to Rank Features for Recommendation over Multiple Categories. In Proceedings of the 39th Annual International ACM SIGIR Conference on Research and Development on Information Retrieval (SIGIR 2016), July 17 - 21, 2016, Pisa, Italy. [PDF][slides]
[6] Yongfeng Zhang. Incorporating Phrase-level Sentiment Analysis on Textual Reviews for Personalized Recommendation. The 8th International Conference on Web Search and Data Mining (WSDM 2015), Feb. 2 - 6, 2015, Shanghai, China. [PDF]
[7] Yongfeng Zhang, Min Zhang, Yi Zhang, Guokun Lai, Yiqun Liu, Honghui Zhang, Shaoping Ma. Daily-Aware Personalized Recommendation based on Feature-Level Time Series Analysis. In Proceedings of the 24th International World Wide Web Conference (WWW 2015), May 18 - 22, 2015, Florence, Italy. [PDF][slides]
Code
Most of the source codes of our work can be downloaded in the following GitHub pages:
Value-aware Recommendation based on Reinforcement Profit Maximization
This is an implementation of the Value-aware Recommendation based on Reinforcement Profit Maximization research, which direclty maximizes the profit of recommendation lists based on reinforcement learning. For dataset used in this work, please refer to the "Dataset" tab above.
References:We appriciate your citing the following paper if you plan to use it for your project. Email Changhua Pei for questions or comments concerning this software or methodology. Please checkout the source code at the GitHub page (https://github.com/rec-agent/rec-rl).
Conversational Search and Recommendation: System Ask, User Respond
This is an implementation of the conversational search and recommendation model based on the "system ask - user respond" paradigm. The code can be downloaded by clicking here (download). To download the dataset used in this work, please refer to the "Dataset" tab above. We appriciate that you cite the following paper if you find the software useful to your research or project. Email Xu Chen or Yongfeng Zhang for questions or comments concerning this software or model.
References:Learning Heterogeneous Knowledge Base Embeddings for Explainable Recommendation
This is an implementation of the Knowledge Base Embedding for Explainable Recommendation (KBE4ER) model, which conducts reasoning over knowledge base embeddings to provide both recommendations and explanations. Explanations are provided as a path from the user entity and an item entity in the knowledge graph. The package includes an interactive toolkit to explore the explanations for each user-item pair by displaying the paths of the highest confidence score.
References:We appriciate your citing the following paper if you plan to use it for your project. Email Qingyao Ai for questions or comments concerning this software or methodology. Please checkout the source code at the GitHub page (https://github.com/evison/KBE4ExplainableRecommendation).
Joint Representation Learning for Top-N Recommendation
This is an implementation of the Joint Representation Learning (JRL) model for recommendation based on heterogeneous information sources. The JRL is a deep neural network model that jointly learns latent representations for users and items based on reviews, images, and ratings. The model can jointly or independently learn latent representations for users and items based on different information. The probability (which is also the rank score) of an item being purchased by a user can be computed with their concatenated latent representations from different information sources. This deep recommendation model has achieved 2~3 times of improvment against traditional shallow models for top-N recommendation (N=10), in terms of NDCG, Precision, Recall, and Hit-Ratio, on several product domains of a standard Amazon dataset.
We appriciate your citing the following paper if you plan to use it for your project. Additional references relating to this methodology are listed in the README.txt file in this release. Email Qingyao Ai for questions or comments concerning this software or methodology. Please checkout the source code and installations of the package at CIIR software page (download), or you can also checkout the GitHub page (download) for the package that includes both the implementation of our model and the baselines.
The properly splited dataste used in this paper can be downloaded from here: https://www.dropbox.com/s/th672ttebwxhsfx/CIKM2017.zip?dl=0
References:Hierarchical Embedding Model for Personalized Product Search
This is an implementation of the Hierarchical Embedding Model (HEM) for personalized product search. The HEM is a deep neural network model that jointly learns latent representations for queries, products and users. It is designed as a generative model and the embedding representations for queries, users and items in the HEM are learned through optimizing the log likelihood of observed user-query-item purchases. The probability (which is also the rank score) of an item being purchased by a user with a query can be computed with their corresponding latent representations. Details on HEM and its use can be found in the paper listed below. We appriciate your citing the paper if planning to use it for your project. Additional references relating to this methodology are listed in the README.txt file in this release. Email Qingyao Ai for questions or comments concerning this software or methodology. Checkout the source code and installations of the package at CIIR software page (download).
References:ER-Surplus: Economic Recommendation with Surplus Maximization
This package contains two versions of implication for the Economic Recommendation (ER) algorithm based on social surplus maximization [1], one version is in R language, another in C++ (more efficient). This package can also be used in a more general purpose for Online Service Allocation (OSA) -- a very basic economic problem in an online setting, which tries to find the best consumer-producer matching in the online economy. Basic components of the package include 1) personalized utility estimation of online items for users, 2) surplus estimation based on utility, price, and cost, and 3) resource allocation (i.e., matching and quantity distribution) based on social surplus maximization for social good. Checkout the source code of the package at Github (download).
References:Multi-Product Utility Maximization and Recommendation
This package contains the implication of multiple product utility estimation, i.e., estiamting the utility of a set of products based on economic complimentary and substutive relationships of products, which are atomatically mined from comsumer trasactions. By estimating and maximizing the joint utility of a set of products, we can provide new recommendations to users that best matches their previous purchases. Checkout the source code of the package at Github (download).
References:Explicit Factor Model for Explainable Recommendation
This is an implementation of the Explicit Factor Model (EFM) for Explainable Recommendation [1], which provides personalized recommendations and personalized explanations at the same time. Begining May 2017, the EFM model has been integrated into the latest version of the libRec recommendation package (https://www.librec.net), you can download the package and use the EFM recommender therein directly. Except for this, another opensource implementation of the algorithm contributed by Yue Zhang can also be accessed on Github (download), many thanks for the contribution!
Maybe you will also need the sentiment analysis toolkit to extract feature-opinion-sentiment triplets from your own dataset, which the EFM model will depend on. We can provide Chinese or English versions of the toolkit, which process Chinese or English texts, respectively. If you do need this toolkit, please refer to the "Sentires: Phrase-level Sentiment Analysis toolkit" section on this page for further information.
References:LMF: Localized Matrix Factorization
This is an ANSI C implementation of the Localized Matrix Factorization (LMF) framework as presented in [1] and [2], which has been applied to a practical system in a commercial search engine company, and achieved good results. Click here (download) for the package (updated 2015-01-27 for speed optimization), or checkout the latest version at Github (download).
References:Sentires: Phrase-level Sentiment Analysis toolkit
This is a Java implemented toolkit for phrase-level sentiment analysis, it extracts 'feature-opinion-sentiment' entries to construct a context-sensitive sentiment lexicon from large scale online textual user reviews based on both statistical and machine learning techniques. For exmple, in the product domain of mobile phone, sampled entries include 'picture-clear-positive', 'battery life-short-negative', 'quality-high-positive', or 'noise-high-negative'. It further contains a module that is capable of matching the entries contained in a piece of review, and another module that contructs feature-level profiles for online items according to the user reviews made towards a specific product.
Key techniques of this toolkit are presented in our paper [1-3], and two demos of feature-level online product comparison can be visited at http://tv.thuir.org and http://mobile.thuir.org. This toolkit was used for explainable recommendation in [4-6], and time-aware recommendation in [7]. It has also been applied to a practical system in a commercial company and achieved good results.
We provide executable jar balls in two versions, one for processing English texts, and the other for Chinese.
To obtain this toolkit, just email zhangyf07@gmail.com with the subject line Sentires: Phrase-level Sentiment Analysis toolkit, and indicate the version (English or Chinese, or both) that you need(see below). We appreciate if you cite one or more of the following publications that are related to your research.Note: Starting from the year 2021 you no longer need to email me to obtain this toolkit. We have shared it on GitHub, please visit https://github.com/evison/Sentires for downloading and usage instructions of the package.
References: