finipher's picture
v1.0.0
7e7767d verified
|
Raw History Blame Contribute Delete
2.57 kB
---
license: other
base_model: sentence-transformers/all-MiniLM-L6-v2
pipeline_tag: text-classification
language:
- en
tags:
- finance
- transactions
- text-classification
---
# Finipher transaction classifier v1.0.0
Sorts one bank or card transaction line into one of 17 spending categories. It is a fine-tuned
`all-MiniLM-L6-v2` (`BertForSequenceClassification`), so it loads with the standard Transformers
classes and needs no custom code.
Internal checkpoint name: `finance-multitask-minilm-two-head-v2`. Finipher's manifest version:
`minilm-two-head-20261027-v2`.
## Labels
Education, Entertainment, Fees, Groceries, Healthcare, Income, Insurance, Mortgage, Personal Care,
Rent, Restaurants, Shopping, Subscription, Transfer, Transportation, Travel, Utilities.
## Input
- One line per transaction, prefixed with its direction: `[debit] STARBUCKS #1234 SEATTLE WA` or
`[credit] ACME CORP PAYROLL`.
- Maximum length 64 tokens.
- Below 0.50 confidence, don't trust the label.
```python
from transformers import AutoModelForSequenceClassification, AutoTokenizer
import torch
repo = "finipher/finipher-transaction-classifier"
tok = AutoTokenizer.from_pretrained(repo, revision="v1.0.0")
model = AutoModelForSequenceClassification.from_pretrained(repo, revision="v1.0.0").eval()
x = tok(["[debit] NETFLIX.COM 866-579-7172 CA"], truncation=True, max_length=64, return_tensors="pt")
with torch.inference_mode():
p = torch.softmax(model(**x).logits, dim=-1)[0]
i = int(p.argmax())
print(model.config.id2label[i], float(p[i]))
```
## Results
Measured offline through Finipher's production code:
- 1,290 hand-written everyday vendor lines (Plaid names, card swipes, POS, ACH): 90.7% correct.
- DoDataThings 68k rows, final Finipher category: 98.7%.
## Known mistakes
- Walmart paychecks (`[credit] WALMART DIR DEP PPD`) read as Shopping.
- FasTrak and Circle K card lines read as Groceries.
- Mortgage `PRINCIPAL PMT` reads as Utilities.
## Training data
To be confirmed. This repo stays private until the training data and the rights to it are
documented.
## Use
The output is a category label, not tax or financial advice.
## Files and SHA-256
| File | SHA-256 |
|---|---|
| `config.json` | `6b8c456706017e7cbddd8a4826a88746294100336be5aa9e40f7730890f1b72b` |
| `model.safetensors` | `96d95c2520f9b8cee0a3e85e1440f541420c4c043e18a0c4579943e08e91a5a3` |
| `tokenizer.json` | `41b9d12a4c559e4098f30173bc0f76d092c43d7b1f873e7027da45a256f30f87` |
| `tokenizer_config.json` | `1128dd50ff3f913671a9405619c1bd8f9e9ddc28f62257cb94ed70683590b715` |