Kannada-English cyberbullying detection
A responsible NLP evaluation system for detecting selected cyberbullying categories in Kannada-English code-mixed text while measuring uncertainty and language-specific errors.
Project definition
Problem statement
Kannada-English online conversations can mix scripts, transliterated Kannada, spelling variants, slang, and context-dependent expressions. Models trained mainly on English can miss harmful content or incorrectly flag ordinary regional-language conversation.
The engineering problem is to define a limited annotation scheme, build a responsibly prepared dataset, compare model approaches, and route uncertain cases to human review instead of treating model output as a final decision.
Project objectives
- Define clear labels for selected cyberbullying categories and non-harmful content.
- Prepare and review a de-identified Kannada-English code-mixed dataset.
- Compare lexical, classical machine-learning, and multilingual model baselines.
- Measure errors across script, transliteration, code-mixing level, and content category.
- Calibrate confidence and send low-confidence predictions for human review.
System design
System modules
Annotation workspace
Presents de-identified text under written guidelines and records independent labels, disagreements, and adjudication.
Language processor
Normalises selected text patterns while retaining original text, script information, transliteration indicators, and code-mixing features.
Model trainer
Trains and records selected lexical, classical, and multilingual model configurations using fixed dataset splits.
Confidence module
Calibrates prediction probabilities and applies documented thresholds for automatic flagging or human review.
Error analyser
Groups false positives and false negatives by category, script, code-mixing level, and confidence range.
Review dashboard
Shows predicted labels, confidence, review status, aggregate metrics, and model limitations without exposing personal information.
Methodology
System workflow
- 01Prepare data
Permitted text is de-identified, screened, versioned, and split before any model is trained.
- 02Annotate
At least two reviewers apply the written label definitions and disagreements are resolved through adjudication.
- 03Train baselines
Selected models train on the same split with saved preprocessing, parameters, random seeds, and class handling.
- 04Calibrate
Validation predictions are used to select confidence thresholds and a human-review range.
- 05Evaluate and review
The test set is scored and errors are examined by language form, content category, and confidence.
Demonstration scenario
A reviewer opens a prepared Kannada-English test set containing Kannada script, Latin transliteration, and mixed-language examples. Three models are compared on the same split. The dashboard shows class metrics and calibration, then routes an uncertain example to review and records the reviewer decision.
Engineering
Technical architecture
- Web application
- Nuxt and Vue for annotation, adjudication, prediction review, error analysis, and experiment comparison.
- NLP API
- FastAPI for dataset access, preprocessing, model jobs, predictions, review state, and evaluation endpoints.
- Data layer
- PostgreSQL for de-identified samples, annotations, dataset versions, model records, predictions, and review decisions.
- Model pipeline
- Python, PyTorch, and Hugging Face for prepared multilingual models with classical baselines and saved configurations.
- Responsible evaluation
- Inter-annotator agreement, per-group metrics, confidence calibration, threshold analysis, and documented error review.
- Delivery
- Docker-based setup with safe sample data, annotation guidance, trained demonstration models, and reproducible experiments.
Testing
Evaluation
Evaluation measures
- Inter-annotator agreement before and after adjudication
- Macro F1, per-class precision, recall, and confusion matrix
- False-positive and false-negative rates by script and code-mixing level
- Expected calibration error and selective accuracy at review thresholds
- Performance on transliterated, spelling-variant, and ambiguous examples
- Inference time and human-review workload at selected thresholds
System boundaries
- The system supports research and moderation review and does not punish or profile a person automatically.
- The prepared dataset removes usernames, contact details, and other direct identifiers.
- Labels cover only the categories defined in the included annotation guide.
- Human reviewers make the final decision for real moderation use, especially when context is incomplete.
Included
- 01Dataset annotation and reviewer-agreement interface
- 02Code-mixed text preprocessing and model-comparison pipeline
- 03Confidence, error-analysis, and moderation-review dashboard
- 04Prepared de-identified dataset, experiments, and evaluation results
- 05Complete source code in a private GitHub repository
- 06Complete project documentation with synopsis, abstract, methodology, model diagrams, experiment results, screenshots, and conclusion
- 07Setup and usage guide
Project record
No buyer information is collected on this page.
- Permanent project ID
- GP-DA-15A5VFS
- Catalogued
- 21 Aug 2026
- Completed
- Pending
- Verified
- Pending
- Demonstration
- Added when ready
Handover
After purchase
- 01Payment is confirmed
The project is marked unavailable and cannot be purchased again.
- 02Repository access is granted
The buyer's submitted GitHub account receives access to the private repository.
- 03The purchase record is delivered
The certification sheet is prepared from the reviewed buyer details and sent privately by email.