Job Recommendation System Using Hybrid Filtering

—As for today’s era, recruitment can be considered as one of most difﬁcult process to undergo for job seeking candidate. Many fresher candidates face issue while job recruitment process to undergo which ﬁeld of interest. The proposed system will help the user to overcome this difﬁculties by matching their work experience,skills and other details with appropriate companies suitable for respective user. The system will also help experienced users in getting their intended job on the basis of their last job proﬁle. The job recommendation algorithm developed is tedious nor complicated and will be using user-friendly approach to implement job search.The proposed system consist of user dataset with various attributes and company dataset with company details. The proﬁle matching of user with the respective companies can be done using various recommendation algorithms such as content-based,collaborative and hybrid ﬁltering. Since, the content-based and collaborative approach have their own disadvantages, so here implement hybrid ﬁltering which overcomes the disadvantages of the content-based and collaborative ﬁltering. The user can expect a well-proof recommendation from our model. The Project will focus of developing the job recommendation system using hybrid ﬁltering. As for today’s era, recruitment can be considered as one of most difﬁcult process to undergo for job seeking candidate. Here, our job recommendation system comes in picture which neither is tedious nor complicated and makes use of user-friendly approach and helps user to accomplish the task easily.The project will also be focusing on developing the android application which will add a better user interface. The Android application will be user friendly and the user just have to ﬁll in basic details such as his past years of experiences, project, internship, etc. That’s it,the rest part of recommending the job to the users will be done safely by the recommendation model of this project.


I. INTRODUCTION
Nowadays there is a rapid growth in Internet Technology, job seekers are releasing their own personal information whereas enterprises are continuously posting for jobs on the Internet.Because of this, there is a dramatic increase in availability of the job seeker's personal information and the recruiting information of various enterprises.Thus, the amount of such type of data keeps on increasing and when compared to the increase in data rate, there is not much increase in the utilization rate of this data or resources.
Given access to such huge amount of data with high veracity, an individual on his own may not be able to utilize this data in an efficient manner.This paper introduces Job Recommendation System that basically recommends jobs to users based on vast amount of information provided by the users and the huge amount of data regarding jobs that is available to us via various Internet Resources.The paper proposed using three types of filtering for providing recommendations -Content Based Filtering, Collaborative Filtering and Hybrid Filtering.Since, our job recommendation system uses multiple recommendation algorithms, the disadvantages or lack of efficiency of one algorithm is covered by another algorithm resulting in highly efficient recommendations.
The major objective of the paper is to build a model to recommend a job using hybrid recommendation system which is the combination of content-based filtering and collaborative filtering approach.The main motto is to make easy job search for users.
This recommendation depends on the user's past experiences as well as data from users with similar approach.The Recommendation model makes it easy for the users to get recommendation of various job profiles on basis of their past experiences, projects, internships, skills ,etc.The model will also help the experienced employees in recommending various job profiles based on their experience and skill based performance.The main reason being the freshers job recommendation approach as some of the students may get confused over various job profiles.
The system not only considers the experience factor of individual but also the skills and project developed to make the job recommendation more assuring from user's point of view.Hence, the user will not have any kind of uncertainty regarding the job posting recommended by our model.
Nowadays an enormous amount of data is available on the internet and Internet users can receive a huge amount of information.If the data volume or variety of data increases tremendously, then the individual user faces problems of excessive information, it can cause a problem to make the correct decisions.
People are often confused on what roles they fit in or where they should start their job search, especially younger people or graduates who are searching for their first job.For example, while the downsizing of a company, they usually let of the people with less experience.Such people with less experience in a particular field can face a problem of where they should start again or at what role are they supposed to fit in in a particular company.Considering that this issue is quite common for people with non-technical backgrounds.e.g.To Resolve such type of problems, Job recommendation system comes in the picture.The Job Recommendation system can solve various problems by effectively finding user's probable requirements and select fascinating items from a vast amount of applicant information.

II. LITERATURE REVIEW
Pradeep Kumar Singh, Pijush Kanti Dutta Pramanik, Avick Kumar Dey, Prasenjit Choudhury [1] this paper provides a comprehensive study on the RS covering the different recommendation approaches, associated issues, and techniques used for information retrieval.[2].This paper gives an overview of increasing data and explains users disadvantages to access useful recommendation informations.The paper depicts use of user's requirements, user's factors like location, music, shopping into recommendation system for giving possible recommendations.
Ravita Mishra, Sheetal Vikram Rathi [3] explains three types of recommendation algorithmsi.eCollaborative filtering, Content Based filtering, Content Based Filtering and Hybrid Filtering.It explains about various advantages and disadvantages of these algorithms.
Tanya V. Yadalam, Vaishnavi M. Govda, Vandhita Shiva Kumar, Disha Girish [4] explains about different methods such as Natural Language Processing, Cosine Similarity, Content Based Filtering,etc.Here, the paper depicts the use of Natural Language Processing for sentiment analysis on user feedback and also introduces encryption technique to handle data in a more secured manner.
Marwa Hussien Mohamed, Mohamed Helmy Khafagy, Mohamed Hasan Ibrahim [5] explains about Content Based Filtering and Collaborative Filtering.This paper proposed about various methods such as classification of data, cluster analysis, outlier detection, regression analysis, association analysis.
Greg Linden, Brent Smith, Jeremy York [6] gives a brief summary about customer to customer and item to item recommandations for amazon.comKunal Shah, Akshaykumar Salunke, Saurabh Dongare, Kisandas Antala [7] presents an overview of the field of recommender systems and describes the present generation of recommendation methods.
Gomez [9] introduce a business model while also building recommendation system.The paper also introduces the use of A/B test in recommendation system.It mentions the some isses while designing and interpreting A/B tests.
Thiengburanathum P, Cang S, Yu H [10] aims to build destination recommendation system.It introduces use of various algorithm to build recommendation model.The use of weighted hybrid and cascade hybrid methods is more depicted and used in the recommendation model.
Bell, R., Koren, Y., Volinsky, C [11] proposed the use of predicting the item raings using neighbourhood technique.The method consider using SVD to predict various user-item ratings based on the neighbourhood user-item rating dataset.
The paper also highlights the imputation in order to fillin matrix entries from other algorithms Karim, J. [12] have developed a Hybrid Recommender System Using Collaborative Filtering and Knowledge-Intensive Case-Based Reasoning.E K Subramanian, Ramachandran.[13] proposed a Career Recommender System for Students based on the performance and marks obtained by them in various subjects.
Ivens Portugal, Paulo Alencar, Donald Cowan.[14] have introduced detailed information regarding different types of recommendation systems and the various machine learning algorithms associated with them.It also calculates the results of these systems and compared them using perfomance measures like precision, recall and f-measure.

A. Content-based Recommendation System
In Content-based Recommendation System, the final recommendations are generated based on user's profile data.This system provides the suggestion based on user's similarity with the items.Mainly, the concept of Term Frequency Inverse Document Frequency(TFIDF) is used in information retrieval and content-based recommendation system.TFIDF basically computes the frequency of words in respective documents.

1) Limitation of Content-based Recommendation System:
• Sparsity problem is the situation which concerns about insufficient data present in the dataset.• Generally, the content based approach faces sparsity problem.Which means,this methods limits the recommendation only to user specifics.• As the method only involves using the user related data, the dataset is insufficient as it does not involve rating given by the other users.• The recommendation engine developed will not recommended anything besides user's interest.• Hence this approach only helps to recommend the result based on user's interest and not based on other users preferences.

B. Collaborative Filtering
In Collaborative Filtering, historical data of users is used to make the recommendations.Based on the explicit ratings given by the users, the user to user similarity is calculated and then the corresponding items are recommended to the users.

1) Memory-based Collaborative Filtering:
• The idea behind implementing memory based collaborative filtering is to compute the similarity between different users based on their historical data.• The approach works on ratings given by different users and then finally recommends the similar jobs to the users.

2) Model-based Collaborative Filtering:
• In Memory-based CF, SVD(Singular Value Decomposition) a machine learning algorithm is used to predict the user's ratings on unrated items.• In this technique, various algorithms can be applied but the most common and suitable approach would be matrix factorization model to apply SVD and reconstruct the rating matrix • Finally, top recommendations for particular users and produced based on their predicted ratings.

3) Limitation of Collaborative Filtering:
• The recommendation system experiences cold start problem as it does not have any relevant past data of the users.The cold start problem is experienced in case of new user.When a new user register himself to the system, the proposed model does not know about his intereset and the user did not make any rating to the existing companies.Due to this scenario the system won't be able to recommend anything to the user.• This approach uses more amount of data consisting of different perspective of different users.• There is also sparsity problem which leads due to undefined similarity between different users.

C. Hybrid Filtering using Weighted Average Technique
As explained in the above two approaches, both collaborative and content-based filtering techniques have their limitations.To resolve this, hybrid filtering techniques are used which is the combination of the above two mentioned approaches.In Hybird filtering using Weighted average technique, a weighted score is calculated using the results of final recommendations of both collaborative and content-based recommendations.The Hybrid Filtering helps in analyzing the results of recommendation systems when combined and when each recommendation system works alone.
IV. SYSTEM ARCHITECTURE Initially to perform the content-based filtering approach, we need a dataset of set of companies.Hence we scraped the data from ambitionbox to get the companies dataset.After extraction, the paper depicts the use of TFIDF vectorization in the respective company dataset.With finding the words frequency, cosine similarity between each company attributes the similarity matrix is computed.Based on the similarity matrix Top-n content based recommendations are calculated.
For Collaborative Filtering, the paper follows the use of two approaches which are memory based approach in which user-user rating based similarity is calculated and model based approach which consist of deep learning techniques , matrix factorization.This paper shows the implementation using Singular Value Decomposition(SVD) to predict user ratings on unrated jobs.Both of these approaches provide Top-n recommendations .
The results from above approaches are combined using weighted average technique to form a Hybrid Recommendation System which in turn will provide the Top-n recommendations.

B. Weighted Average
The weighted hybrid technique combines the result of both content-based and collaborative filtering techniques for comparison.This technique provides the results comparison when implementing both approaches combined and when each approach works alone.

C. Root Mean Square Error(RMSE)
Root Mean Square Error is the square of all the errors.The use of RMSE is very common, and it is considered an excellent general-purpose error metric for numerical predictions.

D. Mean squared error(MSE)
It measures the average of the squares of the errors-that is, the average squared difference between the estimated values and the actual value.

E. Mean absolute error(MAE)
Mean absolute error (MAE) is a measure of errors between paired observations expressing the same phenomenon.

F. Precision
Precision is calculated by true positive divided by sum of true positive and false positive.Precision is considered as positive predicted value.

G. Recall
Recall is calculated by dividing true with sum of true positive and false negative.Recall is the fraction of relevant instances that were retrieved.
H. F1 Measure F1-measure is a measure of a test's accuracy.It is calculated from the precision and recall of the test, where the precision is the number of true positive results divided by the number of all positive results, including those not identified correctly, and the recall is the number of true positive results divided by the number of all samples that should have been identified as positive.
VI. RESULTS

A. Rating Dataset:
ID userId companyId rating

D. Evaluation with threshold
1) Content-Based Evaluation: For the evaluation phase of this study, we have used a threshold based approach in order to evaluate the relevance of the recommendations.First we select multiple random users and iterate over them, In each iteration we calculate their respective precision, recall and f-measure for a range of thresholds.In order to do that, we first calculate the threshold score.Then with the help of this threshold score we calculate the number of true positives, false positives and false negatives.Recommendations whose similarity scores are greater than the threshold score are considered as true positives and below that are considered as false positives.Recommendations whose similarity scores are equal to zero are considered as false negatives.With the help of these values, we calculate the precision, recall and f-measure for each threshold score of each user.The recommendation needs to be diverse in nature, selecting a high threshold would reduce the diversity of the recommen-dations whereas selecting a very low threshold would include almost everything which is more diverse.So we calculate the ideal balanced threshold value with the help of the average of all metrics that we found for each user.
2 The proposed Job Recommendation System using Hybrid Filtering will be the most reliable medium for fresher candidates to get various job recommendation.The system will be also helpful for experienced users which will have no confusion or uncertainty from recommendation results.We will be using NLP for collecting various user feedback and then decide the efficiency of our model.
For better user experience this model can be embedded inside android application which will be done using flutter sdk for android development.Further, the user experience can be improvised by implementing this inside deep learning model.
) Memory Based Collaborative: For User 5: