A Hybrid Approach for Mobile Phone Recommendation using Content-Based and Collaborative Filtering

INTRODUCTION: The number of manufacturers and models accessible in the market has increased due to the growing trend of mobile phone use. Customers now have the difficult task of selecting a phone that both fits their demands and offers good value. Although recommendation algorithms already exist, they frequently overlook the various aspects that buyers take into account before making a phone purchase. Furthermore, recommendation systems are now widely used tools for using huge data and customising suggestions according to user preferences. OBJECTIVES: Machine learning techniques like content-based filtering and collaborative filtering have demonstrated promising outcomes among the different methodologies proposed for constructing these kinds of systems. A hybrid recommendation system that combines the benefits of collaborative filtering with content-based filtering is presented in this paper for mobile phone choosing. The suggested method intends to deliver more precise and customised recommendations by utilising user behaviour patterns and mobile phone content properties. METHODS: The system makes better recommendations by analysing user preferences and phone similarities using the aforementioned machine learning methods. The technology that has been built exhibits its capability to aid customers in selecting a mobile phone with knowledge. RESULTS: With the effective Hybridization process we have obtained the best possible scores of MSE, MAE and RMSE. CONCLUSION: To sum up, the growing intricacy of the mobile phone industry and the abundance of options have demanded the creation of increasingly advanced recommendation systems. This work presents a hybrid recommendation system that efficiently blends collaborative and content-based filtering techniques to provide users with more tailored, superior recommendations. This approach has the ability to enable customers to choose the best mobile phone for their needs by taking into account both user behaviour and mobile phone characteristics.


Introduction
As discussed in the above context, we are getting dependent on mobile phones as the days are passing.Also due to technological advancements, within a very short period of time, a new phone is getting released in the market whose features are upgraded when compared to previous ones [8].In this competitive market, people are quite confused about buying a mobile phone which cover ups their daily needs.Also, it has been difficult for purchasers to choose a mobile phone which is just enough for them.According to a study on consumer attitude towards purchasing mobile phones, it was observed that people are ready to afford some big branded mobile phones which are costly when compared to other brand phones which offer same specification, just with a view that it helps depict their financial status [9].It is also concluded in the study that people often end up buying phones with high performance or specifications than their daily requirements [9].Apart from this, mobile phone is not only a need for people, but for students, it can actually be considered as a requirement or investment.They try to connect with different people across their domain through them.So, as there are many strings attached to this concept of mobile/smart phone in our daily life, purchasers/buyers must be careful while purchasing a mobile phone.For a common man, there might be n number of factors which influence his/her decision of buying a mobile phone as it is not a simple thing in terms of cost [9].Thus, the decision-making process involved in purchasing a mobile phone might be referred to as a multiple criteria decision-making issue (MCMD) [8].Although there are some existing recommendation engines available in the market for recommending smart phones, we have observed that more choices of considering the consumer factors have not been given.Also, change in technology leads to change in requirements of consumers.Hence, the recommendation engines are expected to be updated according to the current trend of system and user specifications, which we have not observed in many of the cases.Also, in some recommendation engines, old techniques are being followed resulting in providing poor recommendations to the customers.The ultimate goal of this study is the development of a recommendation system for smart phones that takes into account user preferences like cost, educational background, choice of specs, etc. using the machine learning techniques of content and collaborative filtering [1].

Related Work
At present, there are many product-based companies in the industry which use content and collaborative filtering in their products to give the best recommendations to their users.For example, Netflix uses content-based filtering to recommend to their users the new content which is similar to their watching interest's.E-commerce sites like Amazon and Flipkart also started using collaborative filtering in their mobile applications and websites to recommend their customer's the best product related to their search through item-based or user-based collaborative filtering [4].As these machine learning methods are showing prominent results and are loved by the software industry, researchers have worked on applying these methods for creating recommendation systems on various domains.Claypool et al. (1999) has described a hybrid approach for online newspaper recommendation domain where the predictions from the 2 methods will be combined using an adaptive weighted average [2].
Prof Builder (Wasfi, 1999) is a recommendation tool that assists in proposing appropriate web pages utilizing content and collaboration filters.Each of these filters generates a recommendation list rather than a combined list for users [2].A multi-criteria decision approach called "Analytic Hierarchy Process" (AHP) was presented by Liang et al in 2007 for a web-based recommendation system for mobile phones [4].In their suggested multimedia recommender system for social media networks, Amato et al. [5] utilized the user's context information to provide recommendations.A customer perception-based model has been proposed by Chen et al.Here, the aspect-based sentiment analysis from the product's peer reviews has been taken into account for the prediction method [5].
A Hybrid method of Content and Collaborative was proposed by Tolety et al. to develop a recommendation system for e-learning platforms [1].In 2022, an interaction based educational app which works on the collaborative filtering methodology was given by Xu et al [6].Studies have also been made on developing new methods for content and collaborative filtering [4].A novel method for developing a hybrid model out of the above mentioned 2 methods was proposed by Kim et al [2].Apart from these techniques, there was a significant growth in use of natural language processing techniques in software industry, where the recommenders or search engines are performing sentiment analysis of text given by the user [4].This study has been inspired by the above works and aims to bring in the methodologies of content and collaborative filtering for recommending smart phones considering all the possible factors [9] which a user might take into consideration while purchasing a mobile phone.

Methodology
Inspired by the studies mentioned in the above section, we would like to implement the machine learning techniques for developing the recommendation system for mobile phones.But recommendation is all about user data and user preferences.At the time of starting this research, we were lacking a dataset which covers all different aspects of it.This section provides a brief description of our methodology of implementing the models and collecting the dataset.

Data Collection
As mentioned above, we were lacking with an appropriate dataset where all aspects which users consider are missing in them.Hence, we created our own dataset where we have tried to include the features which are missing in other datasets.We have collected responses of 407 users who belonged to an age group of 17 to 55.The questionnaire was developed in such a way that most preferences of the users will be covered.Finally, we were successful at preparing the dataset which consists of 23 features and 407 user responses which can be considered as instances.We have also put our efforts to make the dataset publicly available through Kaggle after taking consents from the respective users for supporting further studies on this.The attributes of the dataset were "Educational Status", "Work Experience", "Family Size", "Cost", "Battery Capacity", "Estimated Battery Backup", "Rear Camera", "Front Camera", "Ram" etc….For developing the recommendation system/model, we have used the above-mentioned approach.

Data-Preprocessing
Of course, While developing any machine learning model, our first task would be pre-processing the data in order to get accurate results.Hence, we have applied various data pre-processing techniques to enhance the accuracy of our recommendation system, ensuring that the suggested items are more closely aligned with the user's preferences.Initially, we have used the "Label Encoding" technique to change the categorical values into discrete, as well as to change the 'str' values into numerical.Then we have calculated the "variance" among the attributes in order to eliminate the values which are showing high variance.So out of 23 features, we have eliminated 2 features leaving us with 21 features of 407 instances.We have also implemented TF-IDF while making recommendations with content and collaborative filtering which will be discussed in the respective sections.

Content-based Filtering Model
Content-based filtering is a machine learning approach where responses generated are similar to the contents liked by the user [29].In simpler terms we can explain this.Initially, we will assume our dataset as the previous learning of the user.In our context, we can assume the dataset as previous purchases made by the user or previous knowledge gained by him from other buyer's responses.From those responses, the buyer will make a decision comprising different features.Now, we need to calculate the instances which are similar to the user preference.Thus, we generate recommendations for him.The main purpose of content-based filtering itself is to calculate the similarity and recommend the similar items what user likes.As the generated recommendations are user specific, it does not require any other data or target variables like "ratings" etc. [7].There are several methods in content-based filtering through which we can calculate the similarity between user's choice and instances [1]. 1) Vector Space Mode: This is a content-based filtering method where the items are featured as vectors in high dimensional space based on the features of items.It would be useful when the dataset is large or high dimensional [15]. ( (2) 2) TF-IDF: It stands for "Term frequency -Inverse document frequency".It is a modified method of vector space model where the items are converted into vectors based on their frequency of occurrence in the item description [1].It calculates weight for each feature based on its frequency in the item and inversely proportional to the frequency of feature in corpus item.
3) Latent semantic analysis (LSA): This method of natural language processing uses singular value decomposition (SVD) to condense the dimension of the feature space and find latent relationship between features and user's choice.
(3) 4) Neural Networks: They use deep learning methods to learn the features of the user's preferences and instances.Then a neural network is trained to generate outcomes.
(4) 5) Rule-based systems: It uses some set of rules to make recommendations based on user's previous actions.
The objective behind the above-mentioned techniques is to find similarity between the user's choice and instances.Then after, traditional methods like 'cosine-similarity' or 'classification' approaches can be used to find the items closely aligned with user's preference.We have used TF-IDF and cosine-similarity approaches to get the recommendations based on user's choice.The TF-IDF computation can be done with the below mathematical expression.( 5)

Collaborative Filtering Model
Collaborative filtering is a machine learning approach where responses generated are based on reviews provided by other users.This method can be used to address some of the limitations of content-based filtering.The similarity between "user-user" and "item-item" is taken into account in collaborative filtering to provide suggestions.This method can be recommended to the user based on preferences of similar user.The recommended items to a client are based on inputs or actions of another similar client [1].In collaborative filtering also there are some methods used in common.
1 Memory based collaborative filtering: 1.1 User-based collaborative filtering: The recommendations are made between the preference similarity between users [1].

Item-based collaborative filtering:
The recommendations are made between the item similarity of user preference [1].

Method based collaborative filtering:
Here the recommendations are made based on similarities or dissimilarities between the user's choice using machine learning or deep learning methodologies.Here the useritem interactions are analyzed, and recommendations are made accordingly.Some of the traditional approaches are K-NN, ANN, SVD etc.The most important thing in method based collaborative filtering is matrix factorization [1].The main objective behind collaborative filtering methods is to find similarity either between user's or between their choices.In our approach, we have used method based collaborative filtering using the machine learning approach of k-nearest neighbor's (KNN).

Hybrid Approach
Hybrid models are not a new thing in the field of machine learning.Every day many methodologies on hybrid models are being developed.In our approach for hybrid mobile recommendation system, we have combined the results/recommendations obtained from the above methods and performing collaborative filtering again on the new set [1].It can be considered as a mixed approach of hybridization [7].

Results and Discussion
In this section, we would like to discuss the results of the above implemented models.Generally, for evaluating a machine learning model, the common performance measures would be Accuracy, Precision, F1-score etc...But for content-based and collaborative filtering models, we propose the performance measures MSE, MAE, RMSE.Because the main motto of these recommendation methods is to find the best recommendation for the user which would in fact return the values which are much nearer to the user's choice.Hence for evaluating our model and according to some previous studies, we chose them as performance evaluation measures.The whole experiment was carried out on a conventional laptop with i7 processor and 16GB of RAM.The mentioned results are the best outcomes obtained from the methodology.

Content-based Filtering Model
In previous section, we have discussed our approach of using content-based filtering method using TF-IDF.We have executed this model on a dataset which had 21 features (after pre-processing) and 407 instances.We have obtained an MSE of 0.761 and MAE of 0.571 and RMSE value of 0.872 which are comparatively better from previous studies.

Collaborative Filtering
We have implemented the method based collaborative filtering method using K-nearest neighbors.While executing this part we have added one more column which is Item_id.As Knn is a supervised algorithm and it needs the support of labelled data to return the best recommendation based on the nearest distance.Euclidean distance was used to compute the distance.We have obtained a MSE of 0.428, MAE of 0.333 and RMSE of 0.654 which are comparatively better from previous studies.

Hybrid Approach
In earlier section, we have discussed that we have developed a hybrid model by taking the union of recommendations obtained from both content-based and collaborative filtering.We have again implemented collaborative filtering on this new data by considering user preferences.We preferred collaborative filtering over content-based filtering approach as it was offering better performance.We have obtained a MSE of 0.268, MAE of 0.194 and a RMSE of 0.517 which was comparatively better from previous studies.From the above table, we can infer that the hybrid model is giving better performance when compared to contentbased filtering and collaborative filtering model, thus better recommendations are given by the hybrid model.Thus, our approach gives better suggestions for users while considering different criteria which buyers look into before getting a smart phone.

Conclusion and Future Scope
The purpose of this research was to develop a better recommendation system for smart phone users with the help of a hybrid model developed with the base of content and collaborative filtering models which promised better results in studies related to recommendation systems for different purposes.Though some recommendation engines are available at present, we have observed that, many attributes which a common man considers while buying a mobile phone were not given preference.Also, the recommenders were not suitable for all the age demographics.Hence, we developed this model which is suitable for most of the demography keeping the key attributes like, age, budget, specifications, education status etc in view.This hybrid model can also recommend better smart phones for students as well.In future we plan to launch this hybrid recommender system as a chatbot making it accessible to the people in a large scale.We believe that this recommender will help people get rid of the hustle they face for finding proper mobile phone according to their priorities.We anticipate that our research will be beneficial for the continued adoption of content-based and collaborative filtering in many recommender system domains, making people's decisionmaking easier and saving them a lot of time.

Figure 1 .
Figure 1.Table of Previous work vs Proposed work

Figure 2 .
Figure 2. Process Flow Diagram of Methodology

Figure 3 .
Figure 3. Users Past Preferences vs Recommended

Figure 4 .
Figure 4. Peer Recommended vs Recommended according to user's choice

Figure 5 .
Figure 5. Peer Recommended vs Recommended according to user Table of Previous work vs Proposed work

Table 1 .
Comparing the results of 3 models