All About Context-Aware Friend Recommendation System

Shaoni Mukherjee
7 min readSep 1, 2020

--

Photo by Toa Heftiba on Unsplash

Introduction

We are in the age where data science (specifically machine learning and AI) is in its peak of development and it has merged with every possible aspect or field around us. The most popular websites that are being used among all age groups,i.e. Social networking sites and E-commerce sites, use different concepts of machine learning especially for creating suggestions or rather recommendations for their users to attract them based on some criteria. this kind of system is popularly known as Recommender System or Recommendation system.

All popular sites such as Facebook, Twitter, Snapchat, Instagram, Amazon, and so on are using this Recommender System to attract their user and spend more time on their application and websites. The Recommendation System can be broadly categorized into

  • Friend Recommendation System,
  • Movie Recommendation System,
  • Product Recommendation System and so on.

Here we are going to discuss mainly the Friend Recommendation System. But before we proceed with it, we should know a little more about Recommender System and Context-aware system.

Context-Aware System:

A context-aware system may be defined as a system that can understand the context of a given situation and either share this context with other systems for their response or respond by itself.

Context includes any information that’s relevant to a given entity, such as a person, a device, or an application. As such, contextual information falls into a wide range of categories including time, location, device, identity, user, role, privilege level, activity, task, process, and nearby devices/users.

Web browsers, cameras, microphones, and Global Positioning Satellite (GPS) receivers and sensors are all potential sources of data for context-aware computing. A context-aware system may gather data through these and other sources and respond according to pre-established rules or through computational intelligence. Such a system may also base responses on assumptions about context. For user applications, context awareness can guide services and enable enhanced experiences including augmented reality, context-relevant information delivery, and contextual marketing messages.

Recommendation System: Why do we need them?

To be exact, in a complex informative environment, a system that uses some decision-making strategies to come up with some suggestions or recommendations is known as Recommendation System. The Recommender System can be categorized based on the working principle:

  • First Generation System: This can be knowledge-based, content-based, Collaborative filtering, or Hybrid.
  • Second Generation System: This can be Matrix Factorization, Web Usage Mining Based, or Personality-based.
  • Third Generation System: This can be Collaborative filtering using Deep Learning, Deep content-based, or a combination of Modeling of users and items using reviews or concepts of CoNN.

The Recommender system has been a talk of the town for quite a while. But why shall we use the Recommender system? What is its benefit? Let us see why this Recommendation system is important in today's world:

  • Benefits users in finding items of their interest.
  • Help item providers in delivering their items to the right user.
  • Identity products that are most relevant to users.
  • Personalized content.
  • Help websites to improve user engagement.

We shall now proceed with the context-aware Friend Recommendation System.

Context-Aware Friend Recommendation System:

Based on a user’s social graph, different social networking sites or services recommend friends to its users, which may not reflect the user’s preferences on selecting a friend in real life. Many papers have been published on the friend recommendation system. Some have used an application to explain the concept, some have built applications similar to what is available while some have only discussed the various methods that can be used for building such a recommendation system.

The different social networking websites allow people to connect with their friends and also helps to make new friends. They can share different content, create a community of similar interests, interact with each other or chat, and do what not!! Different social services like Facebook, Instagram, Snapchat, LinkedIn, Twitter, and so on are using a friend recommendation system to provide better suggestions of friends to their users based on their interest and the data provided by them. Humans tend to group with other human beings for ages based on many things such as habits or lifestyles, attitudes, tastes, economic levels, and so on. The multiple challenges faced by the creators of such social networking sites or applications are as follows:

  • How we can accurately as well as automatically identify the lifestyle from a noisy and heterogeneous set of data.
  • How we can measure the similarities of users considering different parameters.
  • Which valuable friend of a user can give better suggestions or friends-of-friends.
Friend Recommendation Graph for Hike Messenger

SCENARIO CONSIDERED:

The concept of a friend-recommendation system is entirely based on social networks that a person has or may have. As we are all familiar with the popular social networking site Facebook, which provides a personalized recommendation system to its user[ method is known as friends-of-friends or people-you-may-know ] to recommend new friends to them. This introduces the idea that a person will know a friend of his/her friend rather than any random person. Also, this system searches friends based on common workplace, areas of interest, education, and other data provided by the user. Not only Facebook but also other social networking sites use this concept. One of the most popular sites which use such a recommender system is LinkedIn.

USERS INVOLVED:

Here in this recommender system, the primary user is the person whose account we are dealing with. And secondary users are the people connected with the primary user. Again tertiary user or users in the third category or level is the friends-of-friends. Likewise, this chain never ends. And according to the small world phenomenon, the average per person hop between two people is 6.6. So anyone and everyone who is using that particular social networking site are involved in this recommender system somehow.

CONTEXT REASONING AND USAGE:

Social networking sites are selling like hotcakes in today’s world. The users of this social networking site always need personalized information. Nowadays people don’t like spending much time on their personal needs. So if we can introduce a system that automatically generates suggestions based on users' interest it would be life-changing. This work is done by different recommender systems. One such kind of recommendation system is the friend recommendation system that is used by the majority of the social networking sites nowadays. The friend recommender system is such a system that automatically suggests potential friends to users. The different websites that use this system are Facebook, Instagram, LinkedIn, and so on. The Recommendation system is a system that is used to recommend resources that the user may be interested in by mining users’ interests and/or preferences. There are different types of recommendation systems in social network and each of these systems uses different technologies for a recommendation.

TYPES OF METHODS USED:

Method 1:: Based on the lifestyle clubbing up people.

The algorithm of one of an application named Matchmaker is based on this concept. The algorithm is as follows:

1. Firstly, we open the Application.

2. Then login it, with ID and Password.

3. Then open the profile.

4. Profile information is already stored in the databases. In the database, we have to use the data collection module.

5. This information is accessed by the Lifestyle Analysis.

6. Then lifestyle indexing displays the count, how many users match the lifestyle.

7. Then friend matching graph displays the list of a friend having similar lifestyles.

8. Then recommend the friend.

Method 2:: Based on the user’s real location and interests

One of the research papers has proposed ways to suggest friends based on its user’s real location collected using GPS and also his/her interests. The algorithm is as follows:

1. Mobile devices collect data from GPS and dwell time at this location, and send it to the server through a wireless network.

2. When the server receives the data, it transforms it into the user’s weighted Voronoi diagram and saves it in the database.

3. Next, the server searches for the users at that location to set up the friends’ affinity relationship.

4. According to our approach to location similarity, we analyze the location similarity between one and the recommended one.

5. According to our approach to interest similarity, we analyze the interest similarity between one and the recommended one.

6. Finally, Acceptable Degree is to decide whether to recommend or not. If it reaches the threshold, it will be listed in the recommendation list. Otherwise, come back to step 3 to restart the searching user to recommend.

Conclusion

Different research works have suggested that human interaction data, or human proximity, obtained from mobile phone Bluetooth sensor data, can be integrated with human location data obtained by mobile cell tower connections, to mine meaningful details about human activities from a large and noisy dataset. This method can also find the dominant work patterns of the user and human routine.

We presented the design of a Friend recommendation system for social networks. Different from the friend recommendation mechanisms relying on social graphs in existing social networking services, Friend recommendation extracted lifestyles from user-centric data collected and recommended potential friends to users if they share similar lifestyles.

REFERENCES:

--

--

Shaoni Mukherjee

Going with the data science flow. Just another data science enthusiasts!!