Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Rhicheek Patra authored Nov 25, 2016
1 parent f9ee8e5 commit df8dcc4
Showing 1 changed file with 19 additions and 13 deletions.
32 changes: 19 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,27 @@
# X-MAP: Heterogeneous Recommendation at Large-Scale

X-MAP is a large-scale heterogeneous recommender. X-MAP is built on top of Apache Spark and implemented in Python.
X-MAP is a large-scale heterogeneous recommender which is built on top of Apache Spark and implemented in Python.

## Features
- Provides heterogeneous recommendation based on artificial **AlterEgos** of users across multiple application domains.
- Any recommendation algorithm can be run on using these AlterEgos.
- Provides formal privacy guarantees.


## Getting Started

### Prerequisites
X-MAP requires `Python 3`, `Numpy 1.10.4`, `Apache Spark 1.6.1` pre-installed on your machine.

X-MAP requires `Python 3`, `Numpy 1.10.4`, `Apache Spark 1.6.1` installed on your machine.

#### Installing
#### Installation
Please refer to
[Anaconda](https://www.continuum.io/downloads), [Apache Spark](http://spark.apache.org/) for installation.
[Anaconda](https://www.continuum.io/downloads), [Apache Spark](http://spark.apache.org/) for installation instructions.

#### Installing (Docker)
#### Docker installation
We also provide a docker image for your convenience.

If you do not have `docker` and `docker-compose` installed on your machine, please check the [official configuration guidance](https://www.docker.com/products/overview) for installation.
Otherwise, open your console and go to the `platform` folder, and execute the below-mentioned command to setup the corresponding docker image.
If you do not have `docker` and `docker-compose` installed on your machine, please check the [official configuration guidance](https://www.docker.com/products/overview) for installation guidelines.
Otherwise, open your console, go to the `platform` folder, and execute the below-mentioned command to setup the corresponding docker image.

```
docker-compose build
Expand All @@ -34,16 +38,18 @@ You will find an egg file, located in `dist/xmap-0.1.0-py3.5.egg`, that you will

## Running the tests
### Prerequisites
X-MAP uses [Amazon Dataset](https://snap.stanford.edu/data/web-Amazon.html) for its experiment. For current implementation, the input data follows the following format:
`<userid>\t<itemid>\t<rating>\t<time>`.
X-MAP is tested on real-traces of [Amazon Dataset](https://snap.stanford.edu/data/web-Amazon.html). For current implementation, the input data follows the following format:
`<userid>\t<itemid>\t<rating>\t<timestamp>`.

Note that the timestamp is required if you want to incorporate temporal behaviour which is also provided by the AlterEgos.

### Run X-MAP
We provide here two demonstrations: `twodomain_demo.py` and `multidomain_demo.py`. You can also tune the parameters in the file `parameters.yaml`.

Note that the scipt should run successfully under provided docker image. Please check your local parameters (e.g., directory path) when working on your own application.
Note that the scipt should run successfully using the docker image that we provided. Please check your local system settings (e.g., directory path) while working with the application.

#### Run X-MAP locally on a machine with 4 cores using docker
A simple example of how to run X-MAP locally.
A simple example of how to run X-MAP on a local machine.

```
spark-submit --master local[4] \
Expand Down Expand Up @@ -86,4 +92,4 @@ rmse = evaluator.evaluate(predictions)
print("Root-mean-square error = " + str(rmse))
```
## Support
Please raise potential bugs on `github`. If you have an open-ended or a research related question, you can use: [X-MAP group] (https://groups.google.com/forum/#!forum/x-map)
Please raise potential bugs on [github] (https://github.com/LPD-EPFL-ML/X-MAP/issues). If you have an open-ended or a research related question, you can post it on: [X-MAP group] (https://groups.google.com/forum/#!forum/x-map).

0 comments on commit df8dcc4

Please sign in to comment.