I have a Recommender system which uses a Collaborative bayesian approach using pSDAE for recommending scientific articles from the Citeulike Dataset

The text information (as input to pSDAE) is in the file mult.dat and the rating matrix (as input for the MF part) is in the file cf-train-1-users.dat and is loaded using the following code:

def get_mult():
    X = read_mult('mult.dat',8000).astype(np.float32)
    return X

def read_user(f_in='cf-train-1-users.dat',num_u=5551,num_v=16980):
    fp = open(f_in)
    R = np.mat(np.zeros((num_u,num_v)))
    for i,line in enumerate(fp):
        segs = line.strip().split(' ')[1:]
        for seg in segs:
            R[i,int(seg)] = 1
    return R

The raw data is in proper Excel format with citations as doc-id, title, citeulike-id, raw-title, raw-abstract.

The mult.dat file containing hte text information looks like:

63 1:2 1666:1 132:1 901:1 1537:2 8:1 9:1 912:1

The trainusers.dat file looks like:

10 1631 3591 10272 14851 4662 13172 12684 5324 3595 3404

Here is the link to th ipynb for the whole Recommender system:


  • $\begingroup$ Kindly go through the ipynb for a detailed description about the system $\endgroup$ – m2rik Jan 15 '18 at 15:29

I am the author of the CDL paper.

For the mult.data file, in

63 1:2 1666:1 132:1 901:1 1537:2 8:1 9:1 912:1

63 is the number of words for this documents, 1:2 means word 1 appears twice in the document, 1666:1 means word 1666 appears once in the document, etc.

For the trainuser.dat, in

10 1631 3591 10272 14851 4662 13172 12684 5324 3595 3404

10 is the number of positive samples for this user, the rest is a list of 10 items that are related to (liked by) this user.

You can check the README file in the Datasets collection for more details on the datasets.

| improve this answer | |
  • $\begingroup$ Thank you so much for responding. I have been trying to contact you since a long time.The readme does not give much information about the Datasets which is why this question. $\endgroup$ – m2rik Jan 15 '18 at 16:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.