File size: 1,349 Bytes
fc0dc88
41d9e4c
 
 
 
 
 
 
 
 
fc0dc88
 
41d9e4c
fc0dc88
41d9e4c
fc0dc88
 
 
41d9e4c
 
 
fc0dc88
41d9e4c
fc0dc88
41d9e4c
 
 
 
 
 
fc0dc88
41d9e4c
fc0dc88
41d9e4c
 
 
 
 
 
 
 
 
 
fc0dc88
41d9e4c
fc0dc88
41d9e4c
 
fc0dc88
41d9e4c
 
fc0dc88
41d9e4c
 
 
 
 
 
fc0dc88
41d9e4c
 
 
 
fc0dc88
 
 
41d9e4c
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
---
language: en
tags:
- transaction-categorization
- distilbert
- finance
- text-classification
datasets:
- mitulshah/transaction-categorization
license: apache-2.0
---

# Transaction Category Classifier - Full Model

This model classifies bank transactions into 10 categories with **98.53% accuracy**.

## Model Details

- **Model:** DistilBERT fine-tuned on 80,000 transactions
- **Categories:** 10 transaction types
- **Size:** ~268 MB

## Performance

| Metric | Value |
|--------|-------|
| Accuracy | 98.53% |
| Loss | 0.0221 |
| Training Samples | 80,000 |
| Validation Samples | 20,000 |

## Categories

- Charity & Donations
- Entertainment & Recreation
- Financial Services
- Food & Dining
- Government & Legal
- Healthcare & Medical
- Income
- Shopping & Retail
- Transportation
- Utilities & Services

## How to Use

```python
from transformers import pipeline

classifier = pipeline("text-classification", 
                     model="finmigodeveloper/distilbert-transaction-classifier")

# Test it
transactions = [
    "Starbucks coffee",
    "Monthly salary deposit", 
    "Uber ride to airport"
]

for text in transactions:
    result = classifier(text)[0]
    print(f"{text}: {result['label']} ({result['score']:.2%})")
```

## Training Details

- **Epochs:** 3
- **Batch Size:** 64
- **Learning Rate:** 2e-5
- **Optimizer:** AdamW