BelgoClassifier - Belgian Transaction Categorizer

CoreML model for categorizing Belgian bank transactions into 15 categories.

Model Details

  • Version: 1.0.0
  • Accuracy: 83.8%
  • Framework: CoreML (iOS/macOS)
  • Input: 384-dimensional embedding vector
  • Output: 15-class probability distribution

Categories

  1. groceries - Supermarkets, food stores
  2. restaurants - Restaurants, fast food, delivery
  3. transport - Public transport, fuel, parking
  4. utilities - Electricity, gas, water
  5. telecom - Phone, internet providers
  6. healthcare - Medical, pharmacy, insurance
  7. insurance - All insurance types
  8. housing - Rent, mortgage
  9. entertainment - Cinema, events, sports
  10. shopping - Retail, online shopping
  11. subscriptions - Streaming, software
  12. income - Salary, refunds
  13. transfers - Bank transfers
  14. cash - ATM withdrawals
  15. other - Uncategorized

Usage in iOS

The model expects a 384-dimensional embedding vector (from sentence-transformers/all-MiniLM-L6-v2 or Apple's NLEmbedding).

// Load model
let model = try MLModel(contentsOf: modelURL)

// Create input
let embedding = getEmbedding(for: transactionText) // 384-dim vector
let input = try MLDictionaryFeatureProvider(dictionary: ["embeddings": embedding])

// Predict
let output = try model.prediction(from: input)
let probabilities = output.featureValue(for: "probabilities")

Training

Trained on synthetic Belgian transaction data including:

  • Belgian supermarkets (Colruyt, Delhaize, Carrefour, etc.)
  • Belgian banks and insurers
  • Belgian telecom providers
  • Common Belgian merchants

License

MIT License - Free to use in commercial applications.

Links

  • App: BelgoBudgetto (iOS)
  • Training code: Private repository
Downloads last month
4
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support