gitChat


 

Idea Origination 

We started thinking about an idea based on security and privacy principles in today's online world. We went through the common social media that surround us. One of the most common platforms that revolve around our life is Whatsapp. Almost everyone we know uses Whatsapp today, except some people still living in rural areas without access to the Internet or proper mobile devices. Thus, we can believe that many people use Whatsapp to go about their daily lives.

 

The Problem

One problem that plagues many people on Whatsapp is the problem of fake news and unnecessary forwarding of such messages. We see it all around us, even with our parents and family members, people forwarding messages that are not verified, and thus sometimes stirring unnecessary drama and confusion. This is particularly prone to trending topics that affect all of us, such as COVID and lockdowns. As there is no particular way to verify whether some news is true or not, and people generally tend to trust the people who send them some information, we don't even think about forwarding news without knowing the core truth. This poses a problem, especially for trending topics such as elections, which can influence many people to particular sides.

 

 
 
 
 

User Study

Aim of Study

To estimate satisfaction of users with existing platforms we conducted an analytical study. The results also helped gain a few insights into different social media privacy aspects that we further used to tweak our platform accordingly

Results of Study

Based on our study, we inferred that users are expected to provide much more personal details to set up an account than they’d comfortably provide. It also turned out that social media platform users do not fact check or cross verify forwarded messages. This has the potential to mislead people at scale, specially in case of riots or for instance, in situations where there is a large scale controversy regarding sensitive issues.

 

 

 

Our Solution

We decided that our project would be based somewhat on tackling this issue. We know that fake news is already a big enough issue, with many people researching it, and it would be unlikely that we would make some advances that other research labs couldn't. Thus, we decided that integrating existing technologies into a messaging system would deem well for our project. Now, integration with existing messengers such as Whatsapp is not possible, as these apps are not open source. So, to check the feasibility of integrating a fake news detection system with a messaging system, we decided to create our messaging system and incorporate a fake news system with it. 

We set up a basic messaging app with end to end encryption reasonably quickly with the help of online resources and had an app ready, made with Flask and socketio. After creating the app, we set up a user-based system with a credibility score for each user. The credibility score would be a rating system and tell us how likely a user is to send you fake news. The rating system would work in such a way, where other users can mark the messages you send them, and can choose to check whether the message sent to them should be checked for fake news or not. We use a federated - learning based model in order to check whether a message is fake news or not.

 

 

If we were to check each and every message for fake news or not, that would be cause for unnecessary computation, as not every message maybe some news or not, and may just be normal conversation. Thus, when you receive a message, you can choose whether some message looks fishy or not, and can choose to check that message for fake news.

 

Federated Learning

Traditional machine learning involves a data pipeline that uses a central server (on-prem or cloud) that hosts the trained model in order to make predictions. The downside of this architecture is that all the data collected by local devices and sensors are sent back to the central server for processing, and subsequently returned back to the devices. This round-trip limits a model's ability to learn in real-time.

 

 

In contrast, Federated learning (FL) is an approach that downloads the current model and computes an updated model at the device itself (ala edge computing) using local data. These locally trained models are then sent from the devices back to the central server where they are aggregated, i.e. averaging weights, and then a single consolidated and improved global model is sent back to the devices.

 

 

 

Here are some primary benefits of federated machine learning:

  • FL enables devices like mobile phones to collaboratively learn a shared prediction model while keeping the training data on the device instead of requiring the data to be uploaded and stored on a central server.

  • Moves model training to the edge, namely smartphones, tablets, IoT, or even "organizations" like hospitals required to operate under strict privacy constraints. Having personal data remain local is a strong security benefit.

  • Makes real-time prediction possible, since prediction happens on the device itself. FL reduces the time lag that occurs due to transmitting raw data back to a central server and then shipping the results back to the device.

  • Since the models reside on the device, the prediction process works even when there is no internet connectivity.

  • FL reduces the amount of hardware infrastructure required. FL uses minimal hardware and what is available in mobile devices is more than enough to run the FL models.

Federated learning enforces privacy for clients by not sending data to the centralized server. Hence incorporating FL in our system would enhance the security of users. Many available apps have already included FL in their system, for example, Gboard (Google board), etc.


Video

 

 

Team Members


 

 


 

 

 

 

Comments

Popular posts from this blog

Sperrow

#Tractor2Tractor

BotShot