Platform & Algorithms for Predicting Common Interests

Design and Implementation of machine learning algorithm which can predict common interest of people based on analysis of their email inbox.

Project Synopsis

A start up wanted to create a platform that used user's modes of communication likes emails, phone calls etc. to extract contacts and describe the nature of relationship with his contacts. The platform would need to predict common interests between two people based on their email archives and also provide a means to keep a relationship warm by generating context around it.

The platform developed is expected to have the following features:

  • Gather details about a user's contacts in the most non-intrusive way.
  • Show intelligent data about the contact, like the topics that are mostly used by the contact and then gather data about to contact to keep the relationship healthy.
  • Suggest actions to keep in touch with the important contacts.
  • Provide the details of the contacts when the user needs it and not making the user to do something to get the data.
  • Have a web and mobile compliant app which are always in synch to get the most relevant data about each contact.

Our Solution

We provided a solution to collect and analyze user's data from different places using big data technologies like Twitter Storm. All of user's accounts like contact books, email data, twitter account, were then linked and triangulated to gather as much of data about the contacts. The communication data is then processed by Natural Language Processing (NLP) algorithms to extract meaningful topics used by contacts. The solution also finds the best way to connect to an individual who could be potential opportunity for business.

We implemented the solution with the following features:

  • Use Twitter Storm to gather data from emails, contact books, twitter and LinkedIn
  • A native mobile app, currently in Android, to extend the features to a user's mobile.
  • SOLR based contact and their attributes search more powerful and fast.
  • NLP to extract important keywords for each contact.
  • Intelligent extraction of data based on the keywords fetched.
  • Complex algorithms to extract the strength and the nature of relationship with the contact.

Project Highlights

  • NLP extraction of meaningful extraction of keywords.
  • Sophisticated synchroization framework to synchronize data between mobile and web application to keep experience rich in both the platforms.
  • Caller pop in mobile which shows relevant information like the communication made, tags attached to the caller during incoming call, enhancing the featrure to show relevant data when the user needs it without asking for it
  • Extraction of data and applying complex algorithms to provide up to date and meaningful information about contact without the user to enter data manually.

About The Project

Implementation of an algorithm based on Stanford white paper about propagating relationship scores

Technologies Used

Java Based Backend
NLP Processing
Twitter Storm
Android App

Client Details