Edit model card

Model Description

This model is a Binary classification model trained on the Liar Dataset using the BERT (bert-base-uncased) architecture. The primary task is to classify news articles into different categories, making it suitable for fake news detection. BERT (Bidirectional Encoder Representations from Transformers) is a transformer-based model known for its effectiveness in natural language processing tasks.

The model classifies the input text into 2 classes, True (Real News) or False (Fake News).

The original labels include 'true', 'mostly-true', 'half-true', 'barely-true', 'false', and 'pants-fire'. In this custom mapping, statements labeled as 'true', 'mostly-true', and 'half-true' are all categorized as 'true', while 'barely-true', 'false', and 'pants-fire' are grouped under the 'false' category. This mapping simplifies the classification task into a binary problem, aiming to distinguish between truthful and non-truthful statements.

Bias: The model may inherit biases present in the training data, and it's important to be aware of potential biases in the predictions.

Code Implementation

# Load model directly
from transformers import AutoTokenizer, AutoModelForSequenceClassification

# Load the pre-trained model and tokenizer
tokenizer = AutoTokenizer.from_pretrained(
    "Arjun24420/BERT-FakeNews-BinaryClassification")
model = AutoModelForSequenceClassification.from_pretrained(
    "Arjun24420/BERT-FakeNews-BinaryClassification")


def predict(text):
    # Tokenize the input text and move tensors to the GPU if available
    inputs = tokenizer(text, padding=True, truncation=True,
                       max_length=512, return_tensors="pt")

    # Get model output (logits)
    outputs = model(**inputs)

    probs = outputs.logits.softmax(1)
    # Get the probabilities for each class
    class_probabilities = {class_mapping[i]: probs[0, i].item()
                           for i in range(probs.shape[1])}

    return class_probabilities


# Define class labels mapping
class_mapping = {
    0: 'reliable',
    1: 'unreliable',
}

Downloads last month
10
Safetensors
Model size
109M params
Tensor type
F32
·
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.