Team Ai
Modelpublic

NanG01/m3-coercion-bert

sourceHugging Facemitupdated 2mo agoView on Hugging Face
0likes7downloads
Model Card

NLP Coercion Detector — SecureWealth Twin (M3)

Fine-tuned google/muril-base-cased for detecting stress and coercion language in bank AI chat messages across English, Hindi (Devanagari), and Punjabi (Gurmukhi).

Part of the SecureWealth Twin AI system — a bank-grade fraud detection and financial intelligence platform.


Model Details

Base modelgoogle/muril-base-cased
TaskBinary text classification
LanguagesEnglish · Hindi · Punjabi
Max sequence length128
Training epochs6 (early stopping, patience=2)
Learning rate2e-5
Batch size16
Dataset size~490 rows

Labels

LabelIDMeaning
Normal0Regular chat message
Coercion1Stress / coercion language detected

Usage

Load and run inference

python
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

model_id  = "NanG01/m3-coercion-bert"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model     = AutoModelForSequenceClassification.from_pretrained(model_id)
model.eval()

def predict_coercion(text: str) -> dict:
    enc = tokenizer(text, return_tensors="pt", truncation=True,
                    padding="max_length", max_length=128)
    with torch.no_grad():
        label = model(**enc).logits.argmax(-1).item()
    return {"chat_stress_language": label, "risk_pts": 20 if label == 1 else 0}

Examples

python
predict_coercion("They said I must transfer 50000 rupees urgent right now")
# → {"chat_stress_language": 1, "risk_pts": 20}

predict_coercion("Please fast, he told me this is the last warning from income tax department")
# → {"chat_stress_language": 1, "risk_pts": 20}

predict_coercion("Jaldi karo, do minute vich transfer karna hai nahi tan khat khatam ho jaavega")
# → {"chat_stress_language": 1, "risk_pts": 20}

predict_coercion("How can I increase my monthly SIP amount?")
# → {"chat_stress_language": 0, "risk_pts": 0}

predict_coercion("Mera portfolio performance dikhao")
# → {"chat_stress_language": 0, "risk_pts": 0}

Output

FieldTypeDescription
chat_stress_languageint1 = coercion detected · 0 = normal
risk_ptsint+20 if coercion detected, 0 otherwise

chat_stress_language feeds directly into M4 Coercion Risk Scorer as one of 12 binary signals (+20 risk pts).


Trigger Patterns

Common coercion indicators the model detects:

urgent · hurry · they said · he told me · please fast · last warning · account will be blocked · income tax · jaldi karo · abhi transfer karo


Training Data

~490 chat messages across 3 languages:

  • —90 English coercion/normal messages
  • —400 Hindi coercion/normal messages
  • —Punjabi messages included

Dataset: SecureWealthTwin_DL_Datasets_v2.xlsx (private)

Regularisation applied:

  • —Frozen BERT encoder layers 0–9 (only top 2 layers + classifier trained)
  • —Dropout 0.3 on hidden, attention, and classifier layers
  • —Weight decay 0.01
  • —Gradient clipping (max norm 1.0)
  • —Early stopping (patience=2)


license: apache-2.0 ---