--- language: en license: apache-2.0 tags: - toxicity-detection - text-classification - dendritic-optimization - perforated-backpropagation - bert-tiny - efficient-ml datasets: - jigsaw-toxic-comment-classification-challenge metrics: - f1 - accuracy - precision - recall model-index: - name: dendritic-bert-tiny-toxicity results: - task: type: text-classification name: Toxicity Detection dataset: name: Civil Comments type: jigsaw_toxicity_pred metrics: - type: f1 value: 0.358 name: F1 Score (Toxic Class) - type: accuracy value: 0.918 name: Accuracy - type: inference_time value: 2.25 name: Inference Latency (ms) --- # Dendritic BERT-Tiny for Toxicity Detection ## Model Description This model applies **Perforated Backpropagation with Dendritic Optimization** to enhance a compact BERT-Tiny model (4.8M parameters) for toxicity classification. It achieves performance comparable to BERT-Base (109M parameters) while maintaining **17.8x faster inference speed**. **Key Features:** - **22.8x smaller** than BERT-Base (4.8M vs 109M parameters) - **17.8x faster** inference (2.25ms vs 40ms) - **Superior toxic detection** (F1=0.358 vs BERT-Base F1=0.05) - **Dendritic optimization** using PerforatedAI - **Edge-ready** for real-time deployment ## Model Details - **Model Type:** BERT-Tiny with Dendritic Optimization - **Language:** English - **Task:** Binary Text Classification (Toxic/Non-Toxic) - **Base Model:** [prajjwal1/bert-tiny](https://huggingface.co/prajjwal1/bert-tiny) - **Framework:** PyTorch 2.9.1 + PerforatedAI 3.0.7 - **Parameters:** 4,798,468 - **Model Size:** 19.3 MB ## Performance Metrics | Metric | Dendritic BERT-Tiny | BERT-Base | Improvement | |--------|---------------------|-----------|-------------| | **Parameters** | 4.8M | 109M | 22.8x smaller | | **F1 Score (Toxic)** | 0.358 | 0.050 | 7.16x better | | **Accuracy** | 91.8% | 91.0% | +0.8% | | **Inference Time** | 2.25ms | 40.1ms | 17.8x faster | | **Throughput** | 444 samples/s | 25 samples/s | 17.8x higher | ## Intended Use ### Primary Use Cases - Real-time content moderation in online forums and social media - Edge device deployment for resource-constrained environments - High-throughput toxicity screening systems - Research in efficient NLP and dendritic optimization ### Limitations - Trained on Civil Comments dataset (English only) - May not generalize to all forms of toxicity or cultural contexts - Class imbalance handling (94% non-toxic samples) - Best suited for binary toxicity detection ## How to Use ### Installation ```bash pip install transformers torch perforatedai ``` ### Quick Start ```python from transformers import AutoTokenizer, AutoModelForSequenceClassification import torch # Load model and tokenizer model_name = "your-username/dendritic-bert-tiny-toxicity" tokenizer = AutoTokenizer.from_pretrained("prajjwal1/bert-tiny") model = AutoModelForSequenceClassification.from_pretrained(model_name) # Prepare input text = "This is a sample comment to classify" inputs = tokenizer(text, return_tensors="pt", max_length=128, truncation=True, padding=True) # Inference model.eval() with torch.no_grad(): outputs = model(**inputs) logits = outputs.logits prediction = torch.argmax(logits, dim=-1) # Get result label = "toxic" if prediction.item() == 1 else "non-toxic" confidence = torch.softmax(logits, dim=-1)[0][prediction].item() print(f"Prediction: {label} (confidence: {confidence:.2%})") ``` ### Batch Processing for High Throughput ```python import torch from transformers import AutoTokenizer, AutoModelForSequenceClassification model_name = "your-username/dendritic-bert-tiny-toxicity" tokenizer = AutoTokenizer.from_pretrained("prajjwal1/bert-tiny") model = AutoModelForSequenceClassification.from_pretrained(model_name) # Example batch of comments comments = [ "This is a great discussion!", "You are absolutely terrible", "I disagree but respect your opinion", ] # Tokenize batch inputs = tokenizer(comments, return_tensors="pt", max_length=128, truncation=True, padding=True) # Batch inference model.eval() with torch.no_grad(): outputs = model(**inputs) predictions = torch.argmax(outputs.logits, dim=-1) probabilities = torch.softmax(outputs.logits, dim=-1) # Display results for comment, pred, probs in zip(comments, predictions, probabilities): label = "toxic" if pred.item() == 1 else "non-toxic" confidence = probs[pred].item() print(f"'{comment}' -> {label} ({confidence:.2%})") ``` ### Edge Deployment with Quantization ```python import torch from transformers import AutoModelForSequenceClassification model = AutoModelForSequenceClassification.from_pretrained( "your-username/dendritic-bert-tiny-toxicity" ) # Dynamic quantization for edge devices quantized_model = torch.quantization.quantize_dynamic( model, {torch.nn.Linear}, dtype=torch.qint8 ) # Model is now ~75% smaller and faster on CPU ``` ## Training Details ### Training Dataset - **Source:** Civil Comments / Jigsaw Toxicity Dataset - **Train samples:** 5,000 (4.54% toxic) - **Validation samples:** 1,000 (6.60% toxic) - **Test samples:** 1,000 (9.00% toxic) ### Training Procedure - **Optimizer:** AdamW (lr=2e-5, weight_decay=0.01) - **Epochs:** 10 - **Batch size:** 32 - **Max sequence length:** 128 tokens - **Loss function:** Cross-entropy with class weights (1.0, 21.0) - **Warmup steps:** 500 - **Early stopping:** Patience 3 epochs ### Dendritic Optimization This model uses **Perforated Backpropagation** with dendritic nodes to enhance learning capacity: - Correlation threshold: 0.95 - Perforated AI version: 3.0.7 - Configuration: 3D tensor output dimensions for transformer layers ## Technical Architecture ``` Input Text (max 128 tokens) ↓ BERT-Tiny Tokenizer ↓ Embedding Layer (vocab_size: 30522, hidden: 128) ↓ Transformer Layer 1 (2 attention heads) + Dendritic Nodes ↓ Transformer Layer 2 (2 attention heads) + Dendritic Nodes ↓ Pooler Layer (CLS token) ↓ Classification Head (128 → 2) ↓ Output: [non-toxic_logit, toxic_logit] ``` ## Ethical Considerations ### Bias and Fairness - Model may inherit biases from the Civil Comments dataset - Performance may vary across demographic groups and cultural contexts - Should not be the sole decision-maker in content moderation ### Recommended Practices - Use as part of a human-in-the-loop moderation system - Regularly evaluate for fairness across user demographics - Combine with other signals for critical decisions - Provide appeal mechanisms for users ## Citation If you use this model in your research, please cite: ```bibtex @misc{dendritic-bert-tiny-2026, title={Giant-Killer NLP: Dendritic Optimization for Toxicity Classification}, author={PROJECT-Z Team}, year={2026}, publisher={HuggingFace Hub}, howpublished={\url{https://huggingface.co/your-username/dendritic-bert-tiny-toxicity}}, note={PyTorch Dendritic Optimization Hackathon} } ``` ## Acknowledgments - **Base Model:** BERT-Tiny by [prajjwal1](https://huggingface.co/prajjwal1) - **Optimization Framework:** [PerforatedAI](https://perforatedai.com/) - **Dataset:** Jigsaw/Google Civil Comments - **Hackathon:** PyTorch Dendritic Optimization Challenge ## License Apache 2.0 ## Contact For questions, issues, or collaboration opportunities, please open an issue on the [GitHub repository](https://github.com/your-username/dendritic-bert-tiny-toxicity). --- **Developed for the PyTorch Dendritic Optimization Hackathon - January 2026**