Now, I have enormous number of resumes of someone who search for next jobs. There are infomation about how old they are, what schools they graduated,and what jobs they experienced.etc...

I want to make a recommender system using those data. In the system, if I get new resume, I want to recommend certain jobs for him.

I have some idea what models will I use, for example, collaborative filtering, recurrent neural network, word2vec etc...

But I couldn't find best method for this problem. If someone Knows good idea, please tell me that.

This is an example of one data,

[age,education,skills,past_job1,job1's occupational category, past_job2,job2's occupational category,

All data is stored in string.


1 Answer 1


One method is using locality-sensitive hashing (LSH), an approximate nearest neighbor search method.

Each document, both resumes and job descriptions, is hashed into the same space. There are several ways to perform the hashing. An older method is shingling. The entire process is outlined in Chapter 3: Finding Similar Items in Mining of Massive Datasets. A newer method is doc2vec.

Once all the documents are in the same space, LSH maps similar items to the same “buckets” with high probability. It is a type of hashing where collisions are features, not bugs. The collisions are a variation of clustering. Given a new document, all similar documents are retrieved also. Given a resume, retrieve similar job descriptions. Given a job description, retrieve similar resumes. (After retrieval, filter out documents in the same document class)

Since LSH is an approximate algorithm, it scales well to millions of documents and handles noisy data. Resumes and job descriptions are noisy descriptions so it is appropriate to have an algorithm that can handle noise.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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