/WSRec

QoS Prediction Bechmarks for Web Service Recommendation

Primary LanguageC++

##WSRec Benchmarks

This repository maintains a suite of benchmarks of the state-of-the-art QoS prediction approaches for Web service recommendation.

Read more information: [Paper (coming soon)][Project page]

##Citation

If you use any benchmark in published research, please kindly *cite* the following paper. Thanks!

  • Jieming Zhu, Pinjia He, Zibin Zheng, and Michael R. Lyu, "Benchmarking and Improving QoS Prediction Approaches for Web Service Recommendation," available at: http://wsdream.github.io/WSRec.

##Related Links

##Code Archive Please visit this page for a summary of evaluation results and this page for detailed change logs.

##Dependencies

The benchmarks are implemented with a combination of Python and C++. The framework is built on Python for simplicity, and the core functions of each algorithm are written in C++ for efficiency consideration. To achieve so, Cython (a language to write C/C++ extensions for Python) has been employed to compile the C++ extensions to Python-compatible modules. In our repository, Cython (with version 0.20.1) has been set as a sub-module in the "externals/Cython" directory.

Note: Our code is directly executable on Linux platform. Re-compilation with Cython is required to execute them on Windows platform.

##Usage

  1. Download this code repository:

    Click the following link: https://github.com/WS-DREAM/WSRec/archive/master.zip,

    or use Git: git clone https://github.com/WS-DREAM/WSRec.git,

    then initialize the submodules by executing: git submodule update --init --recursive.

    The repository has maintained the common evaluation results that are ready for immediate use. If you need to further customize any approach, please go through the following steps.

  2. Install Cython (with Linux):

    # change YOUR_DIRECTORY to your working path  
    vim ~/.bash_profile  
    export PYTHONPATH="$PYTHONPATH:YOUR_DIRECTORY/WSRec/externals/Cython/"  
    export PATH="$PATH:YOUR_DIRECTORY/WSRec/externals/Cython/bin/"  
    
  3. Read "readme.txt" for each appraoch, and execute the provided scripts (with configurable parameters):

    python run_rt.py  
    python run_tp.py  
    
  4. Check the evaluation results in "result/" directory.

##Contributing

Your contributions are welcome!

To do list

Some approaches to implement:

The goal of maintaining this repository is to make it simple to reproduce or modify the existing approaches. For future research on QoS prediction, you do not need to build your own program from scratch. The framework can be easily extended for new implementations.

How to contribute page: https://github.com/WS-DREAM/WSRec/wiki/How-to-contribute

Your implementations built on our framework are welcome to be hosted on this repository, or a external link can be directed to your own Github repository. Please feel free to contact us. Any contribution will be appreciated.

Contributors

A big thanks to WSRec contributors:

  • Jieming Zhu, The Chinese University of Hong Kong (Project Founder)
  • Zibin Zheng, The Chinese University of Hong Kong (Contribute UIPCC)
  • Pinjia He, The Chinese University of Hong Kong (Contribute HMF)
  • Yuwen Xiong, Zhejiang University (Contribute TF, NTF, WSPred, OPred, Biased_MF, SVD++)
  • Yifei Lu, Zhejiang University (Contribute ADF, T-WSRec)

##Subscribing to WS-DREAM Mail List Subscribe to WS-DREAM mail list (wsdream.maillist@gmail.com) by filling out the registration form. You will receive messages about the update of the datasets and code release at the first moment.

##Bugs, Discussion, Feedback For bugs and feedback, please post to our issue page. For any other enquires, please drop an email to us (wsdream.maillist@gmail.com).

##Copyright © Permission is granted for anyone to copy, use, modify, or distribute this program and accompanying programs and documents for any purpose, provided this copyright notice is retained and prominently displayed, along with a note saying that the original programs are available from our web page (https://wsdream.github.io/WSRec). The program is provided as-is, and there are no guarantees that it fits your purposes or that it is bug-free. All use of these programs is entirely at the user's own risk.