Skip to content

🤬 Web demo and research code for the paper "Computational Ad Hominem Detection"

Notifications You must be signed in to change notification settings

iPieter/ad-hominem-detection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Detecting ad hominem attacks

This project was for the 2018-2019 course 'Knowledge and the Web' at KU Leuven.

The term "fake news" is associated with journalism that deliberately spreads deceitful or inaccurate information. In the past years, the use of the term has increased drastically, interfering in major areas within a community. The importance is such that Italian schools have implemented "fake news detection" as part of the school curriculum. In the political sphere, it is not uncommon to see allegations of fake news and misinformation. Those calls that often target sources, reporters and organizations, instead of assessing the arguments themselves. This paper will discuss the possibility to detect fallacies, primarily on the ad hominem. Ad hominem literally means "to the person", and the term is used when an argument directs to the person instead of assessing the argument itself.

The datasets are sourced from UKPLab/argotario and UKPLab/naacl2018-before-name-calling-habernal-et-al.

Classifier

During the project, several classifiers and network architectures were reviewed. The results are incorporated in the paper. The final, best performing network is a bidirectional GRU neural network, with the following features:

These features are combined into a classification network, resulting in a labeling as ad hominem or no ad hominem.

Network description

The network had the following confusion matrix as output, when it was trained on X and tested on 8018 paragraphs.

Confusion matrix

Getting started with the project

Running the backend server

This project uses Pipenv. So start with to create a virtual folder on your machine.

pipenv install

Afterwards, use:

pipenv shell

And if you want to exit the env, use:

exit

Running the frontend

# install dependencies
npm install

# serve with hot reload at localhost:8080
npm run dev

# build for production with minification
npm run build

For detailed explanation on how things work, consult the docs for vue-loader.

About

🤬 Web demo and research code for the paper "Computational Ad Hominem Detection"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published