We’ve all heard about the fake news problem in the main Facebook platform and its considerable impact on the US elections. But an even bigger fake news problem is arising in countries like India and that too in another one of Facebook’s platforms: WhatsApp.
WhatsApp is a considerably more difficult problem to solve than Facebook itself. This is mainly due to its end-to-end encryption which is based on the Signal protocol. This prevents even Facebook from looking into the messages that are being sent in this platform and try to run their machine learning algorithms that they run on the main platform to counter fake news. So essentially WhatsApp runs as black box giving Facebook and The Indian Government major concerns.
There are a bunch of solutions being proposed currently to counter fake news on WhatsApp. This ranges from awareness campaigns in newspapers and Governments sending fact-checked news to groups en-masse. The best I’ve seen till now is a professor from Delhi proposing a client side machine learning solution.
However, all these proposed solutions are just temporary reliefs against the bigger problem of fake news and act as just duct tape to hold it together.
If you really want to counter fake news, it should be addressed as a cancer and be attacked at the genetic level of the social network. For this you need to understand how social networks work at a fundamental level.
I propose such a solution in 2 phases.
Phase 1: Reputation Score for Forwarded Messages
The easiest thing we could do is have an Uber-like reputation score for every forwarded message.
So, let’s say Alice forwards a message to a group chat. Anyone in the group can score that forwarded message. A simple task they would have to do is go and google the validity of that forward to see if the news, image or video is right. They can then say score that forward from 1–10 (1 being the least reputable and 10 being the highest reputable).
Now as this message is forwarded through further groups, people in those groups continue scoring it as well and forming an overall score just like how Uber Driver ratings work.
This in its most simplistic sense is taking advantage of the social network and crowd sourcing the validity of any given forward. This would be a great addition on top of the current feature of showing if any given message is a forward.
Now there are two main problems that I see with only having this feature:
· If you observe the general Uber dataset of driver ratings, you will tend to see that there is a high bias towards 5-star ratings. Is this because all the Drivers are near brilliant? I don’t think so. It’s more to do with human psychology. We as humans tend to avoid conflict. So even if we had a decent ride, we tend to give a 5-star rating because we don’t want to go through the hassle of filling out a small survey that Uber hands out when we give a rating of 3 or below. It’s just not worth our time. Unless of course, the drive was so pathetic that we decide to go all out and destroy the driver on the survey. What do we notice here? We see that only in really bad situations, do we tend to fill out that survey, because we are highly motivated to avenge at that point in time. So how do we simulate that for all situations? The answer: An Incentive Structure!! (I shall get back to this)
· Now, it’s great to give a reputation score by googling the validity of something. But what if it’s some incident that happened in your local community? How do you check its validity since that is not going to be available on Google? The answer: You leverage your local community in which the message originates. There will always be the first group to which a message is forwarded. People in that group will have a high likelihood of knowing the relevance of that forward. So, you need to give a higher weight to their scoring.
So how do we solve the two problems mentioned above from within the social network? A Game Theoretic Solution!!
Phase 2: An Inbuilt Prediction Market
My experience with social networks and proof-of-stake decentralized systems puts me in a unique position to talk about this. So, what is a Prediction Market? Well they are basically game theoretic systems that rely on an incentive structure of staking money. Now you might be thinking that this sounds an awful lot like a gambling ring. Well you are right! Because Gambling rings in their essence are just Prediction markets.
So, how’s this hypothetical gambling ring going to help us? Well this prediction market is going to be built into the WhatsApp framework and leverage the capabilities of how a social network essentially operates from within.
Let’s get into the details. So, let’s say Alice creates a message and sends it to a group. As of this moment the message has no rating. Now Bob is a member of that group and he sees that message. He has the opportunity to rate that forward as binary (Valid/Invalid) (I shall talk about how this can be extended for a 1–10 scale later). But in order to rate, he needs to stake some money (Let’s say Rs 5). Now you might be wondering why in the world would anyone want to pay up to rate something (I’ll get back to that). The Rs 5 that he staked goes into a pool for that particular message. Similarly, everyone else in the group has the opportunity to do the same. Now, once an individual has rated the message and staked some money, they are more than free to continue forwarding that message if they feel the need to.
In order to understand how this works, you need to assume this to be a game theoretic system in which everyone is a rational actor (i.e., everyone acts according to their own self-interest just as they would in the real world). Anyone can rate however they want after they stake some money. But it is in their best interest to rate in the direction of truth. Why is this? So, let’s assume we allow the message to be forwarded a couple of times through multiple groups and multiple unrelated people stake their money on the validity of the truth of the message. All their stakes are going to a central pool for that message. After some time, there is a payout phase (I shall talk more about this a bit later).
Now, how prediction markets work is that the truth of any system is defined by what the majority say. And since the people in this majority don’t know anything about each other, the decision tends to something called a Schelling point. Now the most rational Schelling point is the truth since if all actors of a system know nothing about each other, it’s in their best interest to bet for the truth.
Now, let’s assume the system to only allow a binary (Valid/Invalid) rating for the message instead of the 1–10 scale for simplicity sake. If 80% bet saying the message was invalid and 20% bet saying the message was valid, we can clearly see that majority is saying that the message is invalid, i.e. it’s Fake News!! So, in this case, during the payout phase, everyone who bet saying the message is valid will lose their stake and that entire stake will be redistributed equally to the other 80% that said a message was invalid. We see here that people who bet in the right direction made a profit. Hence, this system incentivizes you to bet in the right direction and converge to a shelling point.
What this system also prevents is mass spamming or even Sybil attacks because you have to stake money for every rating + forward. People who try to keep forwarding Fake news, will end up losing money because they will be defeated by the majority who is speaking the truth. They’ll eventually learn that they will have to google the validity of every forwarded message before continuing forwarding them.
A side note: For people who think they can game the system in this case by just forwarding messages anyway even after staking their money on the rating. We can design the payout to be an algorithmic combination of their rating plus number of hops that the forward went through the network. This will disincentivize people from forwarding anyway even after staking their money.
As for the second problem I mentioned, of incidents happening in your local community. This can be solved by having a higher payout for people in the very first group to which the message is forwarded and exponentially decrease the payout for every hop that the forward makes. This incentivizes people in the group of the first hop to bet higher and bet only in the direction of truth since they can be assured of a higher payout. What this does, is cut out Fake news in the bud and prevent it from ever going out of the very first group it is forwarded too.
Further, a minor adjustment that can be made is that an individual user should not be allowed to stake more than a net of Rs 10 per day (The final amount can be thought of after some careful analysis of median income in the country) in order to consider the financial capabilities of the majority of Indians who live on small incomes and also to prevent people from staking their entire life savings into this.
Now all this is fun and great you might say, but how are we even going stake money in the first place in an application like WhatsApp?
Well, WhatsApp has been experimenting with the UPI Payment system in India for sending money through the application. It’s just a simple task of setting up a central bank account by WhatsApp where the pools can be managed and paying out back to individual accounts through the UPI system.
An even better system would be something like a wallet that’s built into WhatsApp. This prevents the hassle of dealing with bank accounts and makes the handling of multiple pools even easier.
So, there you have it! A solution that combines a Reputation system and a Prediction market that can hypothetically defeat Fake news. The only issue I see is that the Indian Government might ban this particular approach saying it’s a gambling ring. But would you rather have people killed and communal riots incited than prevent some small-scale gambling?
That’s a question for Facebook and the Government of India to answer.
Good Day folks!
PS: A special thanks to Aviral Khattar for presenting me with the problem statement and helping me in bouncing off ideas on this matter.