Inspiration
The topic of reliability of news has been on the spotlight recently, mainly through the proliferation of fake news and alternative facts. In this project, we develop a prototype service with the intent to provide a judgement on the verificability of a statement by using the Reuters and SRF search and retrieval APIs as reliable sources.
What it does
We have a system which verifies statements (capability for text and video input) by fetching news and video from a reliable news source and checking if these news back up or deny the statements. We deliver this in two ways:
- we developed an app which acts as a browser for news, annotating paragraphs to denote the veracity judgement from our system (supports the paragraph, refutes it, or provides related information to it) and
- a telegram bot which responds to certain statements.
How we built it
Backend
The reliable news source that we take is the textual and video content delivered by Reuters and SRF via their API. When a sentence comes as an input (plain text, url, audio transcription), we generate queries using either standard query expansion techniques or the Google NLP API, and use PermID to extract relevant entities and compute relevance scores between the sentence, and the retrieved articles to further restrict the search. Then, we pass the sentence and a retrieved article to classifiers based on two models from [[http://www.fakenewschallenge.org/]]. The judgement is communicated to the frontend. The video/audio treatment is done by using speech2text technology from IBM.
Frontend
Our app displays the verifiability judgements by highlighting the text that the app backs up, contradicts to, etc. Each judgement is supported by headlines and links to textual and video resources that the user can then explore. Our bot tracks statements in a chat and, when having sufficient evidence, intervenes in the conversation with links to support or refute participants' claims.
Challenges we ran into
One big challenge was API restrictions and sometimes lacking of API documentation.
What's next for us
Maybe one day, we could imagine to wrap this into a production-ready app (just kidding).
Built With
- java
- javascript
- permid
- python
- reutersapi
- scikit-learn
- telegram
Log in or sign up for Devpost to join the conversation.