Inspiration

4 in 5 Singaporeans are confident in spotting fake news but 90 percent are wrong when put to the test. Singapore's fake news law used 33 times to date, including 19 against Covid-19 misinformation. We combat the spread of fake news in our inter-connected digital society.

What it does

Our web-based application takes input as a URL of a news article and determines its veracity, using a two-pronged approach - incorporating user data as well as propagation graphs from Twitter, with the use of cutting-edge technology - Graphical Convolutional Networks (GCN).

How we built it

Leveraging the open-source Twitter-API, we engineered our application with the help of many Python libraries such as PyTorch, PyTorch-geometric, NetworkX, BeautifulSoup, NLTK, and Scikit-Learn. The website is built with the help of a Django framework and is available as an API endpoint too. To integrate the endogenous and exogenous information, we take the vector representations of news and users as their node features and employ Graph Neural Networks

Challenges we ran into

Twitter-API has a calling limit of 15 calls every 15 minutes. To make our application efficient and user-accessible, we constructed custom web-scraping algorithms for data wrangling and scheduling to maximize efficiency. Engineering a strategy for encoding the users' tweet history with the help of word embeddings, coupled with the feature vector of their respective user profiles.

Accomplishments that we're proud of

Our application uses a two-pronged approach - to model the user endogenous preference, we encode news content and user historical posts using various text representation learning approaches, and to obtain the user exogenous context, we build a tree-structured propagation graph for each news based on its sharing cascading on social media. This allowed us to beat the State-of-the-Art models and their benchmarks.

Built With

Share this project:

Updates