Giter Site home page Giter Site logo

rachel-pai / friend-recommender_on_federated-social-network Goto Github PK

View Code? Open in Web Editor NEW
9.0 1.0 1.0 37.2 MB

federated social network recommend system

Python 6.18% Jupyter Notebook 93.82%
federated-social-web recommender-system graph-theory link-prediction

friend-recommender_on_federated-social-network's Introduction

Friend recommender on Federated social networks

Federated social network is popular nowadays because it protects users’ privacy. Friend recommender based on decentralized social network is important and also hard to tackle since there are only limited user information can be retrieved.

In this project, link prediction based on feature-based machine learning method is applied to implement friend recommender system. First, different sampling methods are applied to retrieve the whole social network graph, then two community detection methods, infomap and louvian algorithms, are applied to cut graph into small communities. In each cluster, different similarities, which are regarded as features, are calculated for each vertex. After feature selection, different classifers are trained. Random forest performs best with 96% area under accuracy and 71% area under precisionrecall.

Sampling mathods

  • Breadth FFirst Search
  • Depth First Search
  • Degree Sampling
  • Random Walk
  • Randomly choose vertices

Community detection methods

infomap and louvian algorithms

Similarity metrices

Neighbor-based

  • common neighbors
  • Salton Cosine Similarity
  • Hub Promoted
  • Preferential Attachment

Path-based

  • Katz

Random walk based metrics

  • Hitting Time
  • Commute Time
  • Cosine Similarity Time
  • simRank
  • Rooted PageRank(RPR):

Social theory based metrics

Binary classifier

  • linear SVM
  • logistic regression
  • decision tree
  • random forest

Classifiers were trained on Spark. Code was also published on Databricks.

Detail Methods

See the report for details

friend-recommender_on_federated-social-network's People

Stargazers

Nick Imanzi avatar Vinicius Araújo avatar  avatar Rachel_PaiPaiPai avatar Deery avatar Ramsey avatar  avatar  avatar  avatar

Watchers

Rachel_PaiPaiPai avatar

Forkers

czxuan1008

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.