Skip to content

viralTipping/viralTipping

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

viral.py

Viral Marketing Heuristics Library under the Tipping Model

From the Paper

(http://arxiv.org/abs/1309.2963) In a "tipping" model, each node in a social network, representing an individual, adopts a property or behavior if a certain number of his incoming neighbors currently exhibit the same. In viral marketing, a key problem is to select an initial "seed" set from the network such that the entire network adopts any behavior given to the seed. Here we introduce a method for quickly finding seed sets that scales to very large networks. Our approach finds a set of nodes that guarantees spreading to the entire network under the tipping model. After experimentally evaluating 31 real-world networks, we found that our approach often finds seed sets that are several orders of magnitude smaller than the population size and outperform nodal centrality measures in most cases. In addition, our approach scales well - on a Friendster social network consisting of 5.6 million nodes and 28 million edges we found a seed set in under 3.6 hours. Our experiments also indicate that our algorithm provides small seed sets even if high-degree nodes are removed. Lastly, we find that highly clustered local neighborhoods, together with dense network-wide community structures, suppress a trend's ability to spread under the tipping model.

The Basics

This library leverages networkX (http://networkx.github.io/) in order to quickly predict what set of seed nodes would cause a change to spread to the entire network. For practical applications, we recommend that you build a network model that accurately describes how people/entities interact and then further derive accurate parameters for the tipping model such as whether tipping occurs on a linear or percentage threshold. This library is not intended to construct networks for you, only to help process them.

Current State and Upcoming Changes

Currently the project is best used as a library and referenced inside another code/script. We wrote a CLI in order to run a few quick tests while building/debugging, but all the heavy lifting for the paper was done without the CLI. In the near future, we'll look at bringing you a better CLI, for those that need/want it.

About

Viral Marketing Heuristics Library under the Tipping Model

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages