armcat
7 hours ago
About six years ago we built a ticket classification/routing model and pipeline [1]. The initial version was trained using SVMs, it took a couple of minutes to train, and the ticket classification was just a few milliseconds. It's so fascinating to watch how the field moved over to LLMs, and then back to faster/cheaper classifiers again.
[1] "Linnaeus: A highly reusable and adaptable ML based log classification pipeline", https://arxiv.org/abs/2103.06927
NOTE: the work was actually accepted at the International Conference on Software Engineering (ICSE) in 2021.
jval43
7 hours ago
SVMs in big data were already well liked back in 2010 as they could be scaled via map-reduce.
An issue in industry was that companies would not allow training on their data across customers. Understandably so, as SVM dimensions are readily interpretable given some thought. General purpose datasets were ill-suited too depending on the task.
So you'd start from scratch every time, annotate features like crazy, and often didn't have enough training data overall.
LLMs "solved" that by just ignoring the previous rules and training on everything, which lets the necessary world knowledge seep back in.
I'm sure we'll see many combinations of LLMs and regular machine intelligence in the near future.
miki123211
4 hours ago
LLMs, and other transformer models before them like BERT for example, have the benefit of "transfer learning."
If you want to make a ticket classification model, you don't need to train across many customers doing ticket classification, who might not want you to train on their data and whose data is impossible to obtain unless you already are a large company. Instead, you can train on a completely different task which forces the model to learn the syntactic and semantic structure of the English language — say predicting missing words in Wikipedia articles, which you can't do successfully without a good understanding of English — and then fine-tune that model on your specific task with much less data.
Because the initial task is so general, you can have one company do the expensive pretraining, share the base model, and then have everybody else just do the finetuning on their (small) proprietary dataset.
LLMs and models like Jev go one step further, letting you use them as classifiers with no training at all, with nothing but rules in the prompt. And with a few tricks, you can indeed use them to get pretty high-quality labels, which you can then distill into a fine-tuning dataset for a much smaller model.
thesz
3 hours ago
> say predicting missing words in Wikipedia articles, which you can't do successfully without a good understanding of English
This is word2vec model, one of - predict a word from context. The other one is to predict surrounding words (context) from a word. It did a good job when I used it, words' classes were impeccable for most practical purposes.Word2vec is a two layer perceptron.
mrbungie
3 hours ago
¿Por qué no los dos? Big skill issue, you can even route known problems to a trained in-house simple classifier and low-confidence problems to Jev-like "zero shot classifiers" or LLMs.
I feel like people in the field forgot everything.
cogogo
an hour ago
It will only get worse. Non-tech people will be (or are) very suspicious of anything trained in house. The bar to spend time/money on anything domain specific will only get higher.
abhgh
3 hours ago
Agree to all of this but I would make a minor correction: the interpretability is true under certain conditions, e.g., you use something like n-grams and train an SVM with a linear kernel. You could change the representation back then too, e.g., LDA (topic models), Latent Semantic Indexing, and of course, you could change the SVMs kernel as well, e.g., use a sequence kernel [1]. Some of these were much less interpretable. But the common pipeline back then was indeed n-grams + Linear SVM. Today it is easy to modernize the pipeline by just changing the representation step to use an embedder like ModernBERT. I have a "one page" classifier if you want to try it out - [2].
[1] I went down the rabbit hole of using sequence kernels quite a bit back then, see https://arxiv.org/abs/1910.13800, but the timing was terrible. RNNs and variants like LSTMs were beginning to become popular, and everyone (including me) switched.
exe34
6 hours ago
And you can now get that world knowledge out of llms and generate synthetic data to train your svm and fine tune on your own dataset!
flatline
5 hours ago
I’ve hand-labeled so many freaking datasets over the years for supervised learning tasks, if only to build out a PoC. Would 100% hand this off to an LLM and just fine tune the results. I definitely do not want an LLM in the loop at inference time for anything I could build a simple classifier for.
IanCal
3 hours ago
Llm labelling is so incredibly useful, as is transforming labelled data to other valid but different forms (like where you might train on sentences but also randomly replace days of the week with others).
You can also do stuff like setup active learning but have the labeller be an llm as well to make things more efficient.
Definitely worth it for PoC level things if not full ones.
Edit - also reviewing, so it can run training, test, review failure cases and investigate itself. You can leave them to plough through a few iterations where the early part is the classic time you’d have a few obviously bad sets of results.
benrutter
7 hours ago
Yeah, its pretty wild! I think one of the benefits, but also potential risks, with LLMs, is you can just point them at anything without a lot of expertise.
Building an SVM isn't a tricky job, but you probably need a data scientist involved, and to think carefully about a labeled dataset.
I think we're seeing the modelling equivalent of something like electron apps. Where they waste a tonne of resources, but make an easier developement experience.
Will be interesting to see how much or little this changes with LLM costs.
Foobar8568
5 hours ago
I have seen Phd in stats validating models with data the models have been trained on. And I don’t live in a country with dubious universities.
So between llm and pseudo experts, at this stage, I prefer to go with a LLM.
IshKebab
5 hours ago
> Building an SVM isn't a tricky job, but you probably need a data scientist involved, and to think carefully about a labeled dataset.
Well not anymore... You can just get AI to build it.
benrutter
5 hours ago
True I guess. I think most companies would at least want sign off from someone who's heard of SVMs that it isn't doing something mad.
Just like, LLMs can build web back ends, but I'd want a security professional to give it some kind of thumbs up. Especially if a lot of money rides on it.
rgavuliak
13 minutes ago
It seems you had enough labels to train, that's not always the case.
wpmaven
16 minutes ago
Thanks for sharing, looks amazing. We have examples of this as well internally.
armcat
2 hours ago
I've seen a few people comment along the lines of "yes but LLMs dont need lot of data nor competence". So with our classifier "Linnaeus", the data came from JIRA tickets plus additional signals. To get up and running we didn't use a lot of data (a few dozen tickets across approximately 20 classes to begin with - eventually expanded to 120+ classes). There was very little to no manual data labelling - mostly it was devs selecting "gold standard" JIRA tickets for us to ingest. The model was retrained daily, and we had extra signals like thumbs up/down with comments that would be used for re-training.
solidasparagus
6 hours ago
What has changed is that expensive models can be deployed instantly and generate training data until you swap over to training your own cheap models.
Your model only took minutes to train if you don't count the data collection and labelling work
evolabs
11 minutes ago
although in our experience, synthetic data != real data. You need to be quite careful about the distribution (or just try to get public real data, or label stuff yourself)
tjungblut
an hour ago
I have replaced a few of my LLM pipelines with gemma4 embedding and a classifier/regression head now. LLMs are actually really good to gather the data and label it with only prompting, but after a while it is just more economic to train your own model.
matthorse
4 hours ago
It's pretty interesting how a very broad field of machine learning got reduced to only LLMs for most consumers. Probably it's due to marketing (and of course how powerful these models are), but their lack of capability in many tasks already forces people, even amateurs, to use LLMs to write deterministic code instead. I wonder if the sudden appearance of viral classifiers predicts more common use of smaller ML models as the next step?
miki123211
4 hours ago
non-LLM models just aren't visible to consumers.
Saying that the field got reduced to only LLMs is like saying that the field of combustion engines got reduced to cars. The trucks, combine harvesters and peaker plants are still here, they're just in the background, invisible to people who are not part of the industry.
Banks still use random forests and SVMs, medicine and image processing still use CNNs (and people who take photos with their phone don't even realize how much image processing is being done), TTS, ASR and predictive typing models are in wide use, and there's probably still plenty of BERT in spam classification and such.
autuni
6 hours ago
I think this kind of change will pop up more often.
In software engineering, we learned a long time ago that giant monoliths are not the answer. You want smaller, but specialized units that work together. They perform better at their specific task, are more maintainable, you can just upgrade one part of the system without having to impact the others, ....
I don't know where the focus on building a single model that can do everything comes from.
bityard
14 minutes ago
The ability to do "everything" is an emergent property of how they are built and trained.
If you want a model that can do X but don't care about Y And Z, intuition says you only have to train the model on data relating to X. However, early LLM research showed that doing this results in a far less X-capable model than one trained on data for Y and Z as well.
MaKey
31 minutes ago
> In software engineering, we learned a long time ago that giant monoliths are not the answer.
That depends on the question. If the question is "How do I utilize 10,000 software engineers?" then yes, a monolith is not the answer. However, this isn't a problem most companies face. Starting out with microservices is rarely a good idea either as you'll have a hard time getting the boundaries right.
Geezus_42
6 hours ago
I was thinking about this recently as well. Smaller, specialized models that can run on device just make so much more sense to me than these huge generalized models that need huge infrastructure run.
ivell
6 hours ago
I am not sure a best practice in one area translates nicely to another. LLM's power comes with it being a monolith.
autuni
5 hours ago
Does it though? Let's say you use an LLM to write code, do you think it benefits from the fact that the same model is capable of translating corporate messaging into internet slang for marketing?
I would assume a smaller model trained specifically to produce code based on natural language input would perform at least just as well, which would already be better given the smaller size / probably lower training resource requirements. This is of course, as already said, an assumption. But generalizing typically comes at a cost, there is no reason why this wouldn't apply to LLMs, it even applies to humans.
duskdozer
2 hours ago
They need some of that fluff to keep up the illusion of intelligence and sycophancy that gets people to rely on them. Additionally, they need to make sure they don't prune so much that the model size seems manageable on consumer or standard business hardware, otherwise more people may become tempted to self-host a distilled or other semi-open model. The model size is also a marketing point.
IanCal
3 hours ago
Or would it be worse as it wouldn’t have the broader knowledge to understand the reason you’re coding what you are anyway, understand the logs and iterate?
Coding an exercise app will benefit from a model that can code and understands what exercise is. A car showroom website will benefit from a model that understands what relevant filters would be.
autuni
3 hours ago
Of course there are synergies between different fields. I'm not saying cutting everything off as close as possible to it's purpose must be the best way. But that's a long way from a single generalized model.
ianjbutler
2 hours ago
> not saying cutting everything off as close as possible to it's purpose must be the best way
Nah, let’s stand firm here and not give in so easily. Parent suggests a coding model needs exercise info in case you want to code an exercise model? Absurd, that leads to the know everything monolith to do anything.
Language, reasoning, tool use, and domain knowledge.. in this case the domain is coding. Someone wants an exercise app? Great, so we look that shit up, we don’t bake it in. We don’t want to bake anything we don’t need in.
We don’t even need to explain this completely reasonable and totally normal engineering preference that small is beautiful. it’s the other side that needs to justify wtf exercise has to do with coding or why everything from twitter posts to a working knowledge of 15th century French poetry just might be helpful for disconnected domains, like say serious work in contemporary astrophysics. Back to basics, No one asked for that, No one should accept as given that this is the way anything needs to work
IanCal
an hour ago
> Parent suggests a coding model needs exercise info in case you want to code an exercise model?
No, the point is having broader knowledge than just "can code" is important for building software for humans to use.
> We don’t even need to explain this completely reasonable and totally normal engineering preference that small is beautiful.
It is, of course it is, as long as that small thing is useful. My argument is not "let's put literally everything in this thing just in case" it's "broader world knowledge is important for building many things".
Also, we don't look at CVs or histories of people and say "hmm, this person could be good at coding for us but I really wish they didn't have such a broad and expansive history".
> Great, so we look that shit up
But what do you have it look up? What is exercise? What is a muscle and what is a human? How is it going to understand those references? Does it have the broad enough understanding to see where the gaps are?
At some level unless all you want is "loop over the array and sum the results into a variable called sales_total" converted into code, you have to have some broader knowledge about things.
And once you start considering that maybe it needs more than simply code, we're not disagreeing we're just discussing where the line should be. Which I've also not placed, because there's no simple statement to make on that.
ianjbutler
21 minutes ago
> Also, we don't look at CVs or histories of people and say "hmm, this person could be good at coding for us but I really wish they didn't have such a broad and expansive history".
Damn right we don't say that. And I don't look at a carpenter and wonder if his head is hard enough to drive nails like a hammer either. People aren't tools, and tools aren't people. You've conflated them because they are both capable of doing work. And that's exactly the type of confusion and category error that the perspective I'm arguing against will lead to.
Wanting a multipurpose tool or system is occasionally reasonable. Much more often it is very, very to close misunderstanding the nature of a problem, what a tool is, or what a system should be. The particulars of purpose and mechanism of action matter, which is why a blowtorch is sometimes a wrench but only if you're kind of desperate. It is always a very scandalous thing to speak ill of someone's best new electric banana-phone / dishwasher-piano that they want to sell you. But that just sounds messy to me, I'm not sure it will improve the sound quality or taste of anything involved.
heggy
5 hours ago
Isn't this just the Bitter Lesson over and over again? Specialised approaches get outperformed by more compute and a simpler general approach pretty much every time.
try-working
4 hours ago
Bitter lesson is wrong. Large general models are outperformed by small specialized models.
9rx
2 hours ago
The Bitter Lesson makes no distinction between large general models and small specialized models, assuming they are both trained from data.
The Bitter Lesson is that human-written rule models will always lose out to trained models in the end.
9rx
5 hours ago
> LLM's power comes with it being a monolith.
Does it? All of the latest frontier models that have made technical details publicly available are using MoE; smaller specialized units that work together.
nixon_why69
3 hours ago
Yeah but they're all trained together along with their gate tensor. Evaluating a moderate length prompt pulls in most/all of them.
darylteo
3 hours ago
> single model that can do everything
"AGI"
pletnes
6 hours ago
Interesting! I had the idea to compute embeddings of log lines to look for “black swans” in my logs. A small model running locally would do. Then PCA, SVM - any old school method should work, I guess. Haven’t seen it done but it must be tried by someone somewhere.
elvircrn
5 hours ago
Svaka cast :)
chaostheory
6 hours ago
The tech industry is not that far off from the fashion industry
floro
7 hours ago
This is just the AI grift and uneducated hypebros. There is zero reason to use an LLM as a classifier. But AIbros with zero technical knowledge will push for it anyways even if it is 1000x slower and 1000x more expensive to run.
wodenokoto
7 hours ago
You can can't build an SVM-classifier for a ticketing system without domain data. You can ask an LLM to do it, and it will do it very well.
With the LLM you don't even need a data scientist to train the model, you just need someone who can connect to APIs. And the LLM is fine with adding and removing categories. No retraining.
It makes the initial faces incredibly fast. Then it is slow and expensive to run, so once the system settles, it becomes the target for model optimization, e.g, a dedicated, or semi-dedicated model.
Karrot_Kream
5 hours ago
I mean just have a coding agent do the whole process from start to finish. Tell it you want to seed an SVM from LLM runs on ticket data. I can bet that it'll do it all for you without much input from you at all.
gonzalohm
2 hours ago
I think AI is making people forget that code can be used for automation.
I see coworkers using AI for tasks like "visit an API endpoint, download a file, put it in S3". This is so stupid. Okay if you want to use AI, but use it to write python code to do that, why pay in tokens every time you want to run that task, it makes no sense
vidarh
6 hours ago
I can spin up a classification solution with an LLM in ca. 5 minutes that is likely to do an okay job. To build a custom classifier, I need lots of training data first.
That is the reason.
Once you then have a system that is used enough, it starts making sense to look to replace that with a leaner classifier, but LLMs have a place in vast number of places where we'd previously never use a classifier because it was too much effort.
darkwater
5 hours ago
> but LLMs have a place in vast number of places where we'd previously never use a classifier because it was too much effort.
Absolutely! But that doesn't rule out that there are AIbros that will tell you to use an LLM, even if the task could be done with a static analyzer with a few rules. Use an LLM because it's AI!
bgroins
2 hours ago
You seem to be quite fixated on a personality type rather than the underlying technology.
IanCal
6 hours ago
There are absolutely good reasons to use smarter things for classification. Svm with tdf idf for example is super fast but will make very bad classifications at times in ways entirely unfixable with that system (thinking back to bats being an acronym for a theology degree classification or similar)
NitpickLawyer
6 hours ago
This is a bit too radical and misses some nuance. In order to start building classifiers you at least need some ML domain knowledge, like what to google at least. Meanwhile, point anyone at the jev/open-jev-clones API and have them start classifying in <10 minutes. There's some value there. (same used to be valid for LLMs before jev became a thing. You can use llms as zero-shot classifiers with the right API wrapper, w/ no domain data).
msp26
2 hours ago
Even if you have ml knowledge, it's still nice to be able to experiment with various use cases with zero upfront data/training time.
cryptonym
5 hours ago
1000x more expensive run can be overall cheaper. You avoid upfront training/tuning cost. It all depends on your scale.