Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Isn't this suitable for a Bayesian classifier? Label some data (manual + automation using substrings) and use that to train a classifier and then it should be able to predict things for you fairly well.

There's a new feeling that I experience when using LLMs to do work. It's that every run, every commit has a financial cost (tokens). Claude code can write a nice commit message for me but it will cost me money. Alternatively, I can try to understand and write the message myself.

Perhaps the middle ground is to have the LLM write the classifier and then just use that on the exported bank statements.





> Isn't this suitable for a Bayesian classifier? Label some data (manual + automation using substrings) and use that to train a classifier and then it should be able to predict things for you fairly well.

Sure, maybe, if I label enough data? At the number and variety of transactions I do, it wouldn't be be much better than hardcoding.

> It's that every run, every commit has a financial cost (tokens).

Ballpark figure for total cost for the Gemini OCRs for now (for me and a few hundred other people who have downloaded the app), for the past 6 or so months, is a few minutes of my hourly rate.

Absolutely not worth the manual grind for me.


Getting LLM to write the classifier should be the way to go.

That’s what I mostly do, I give it some examples ask to write code to handle stuff.

I don’t just dump data into LLM and ask for results, mostly because I don’t want to share all the data and I make up examples. But it also is much cheaper as once I have code to process data I don’t have to pay for processing besides what it costs to run that code on my machine.


That's a great idea. It's also what Tally does.

> "Perhaps the middle ground is to have the LLM write the classifier..."

There was a time when I'd read this comment and then go looking for a tutorial on building a basic "Bayesian classifier". Invariably, I'd find several, which I'd line up like soldiers in tabs, and go through them until I find one that explained the what, why and how of it that spoke to my use (or near enough).

Of course, now ChatAI does all that for you in several Chat sessions. One does wonder though, if Chat is trained on text, and that was the history of what text was available, 10 years from now after everyone stopped writing 10 Blog posts about the same "Bayesian classifier", where's the ChatAI fodder coming from? I don't even know if this would be an outcome of fewer Blog posts [1]. It just strikes me as interesting because that would be _a very slow process_.

[1]: Not that this is necessarily true. People write blogs for all sorts of reasons, and having knockout quality competition from ChatAI does not KO all of them.


>Isn't this suitable for a Bayesian classifier?

I think that's what GnuCash does by default. Even with years of past transaction data it still gets some very obvious matches wrong for me. In my experience it's about 90% accurate for the ones it really should be able to do based on the training data.


> "...it's about 90% accurate for the ones it really should be able to do based on the training data."

What's the pathway for the remaining 10%? Are they simply misclassified, and dropped into a queue for manual labeling? Do the outliers get managed by the GnuCash? Or do they get dumped into a misc 9000 account?


It shows you the automatic account matches on import, allowing you to double-check and correct any misclassified ones.

Ok. So what you're pointing to is not an automated pipeline, but a user mediated process. It's the same pattern in QuickBooks, or whatever ERP.

IMHO the better middle ground is to use a nice (potentially fine tuned) small model locally, of which there are many now thanks to Chinese AI firms.

An expensive model can generate the training dataset

You can likely just take a small open weight language model and use it like a classifier quite easily.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: