I think a lot of people want to draw a distinction between ML and LLMs or “GenAI” the latter of which I don’t think is a scientifically useful category. I must admit I am basically a total skeptic of ML for nearly all applications, because in my mind, such methods mean largely giving up on theory building. Yes these can be useful, certainly as a crutch, but never as much as deterministic theories or at least direct theories of object phenomena because ML models **never** explain anything
I actually like machine learning when applied to the right category of problem. The core requirement for machine learning to be useful is that a correct answer is very useful and the cost of an incorrect answer is low.
My go-to example of this is what I did in my PhD: data prefetching. If you prefetch the data you’re about to need, great, you don’t sit with the CPU idle when it could be doing useful work. If you prefetch the wrong thing (and have a sensible eviction policy) then it’s no worse than doing nothing. That’s pretty much the ideal shape for these things. The same applies to branch prediction: predict a branch correctly and you keep the pipeline busy, predict it incorrectly and you’ve wasted a bit of power. Branch prediction has always been some form of machine learning (with the exception of the static ‘forward branch not taken, backwards branch taken’ policies).
Beyond that, there are two other properties that make problems particularly good fits for machine learning. The first is that the problem changes rapidly but you have a bunch of examples. When I was at Microsoft, Project Silica was doing archival storage by using lasers to create tiny bubbles in glass. The exact shape of these varied depending on how they configured the lasers. It took a couple of weeks to write a new rules-based recogniser, whereas a machine-learning one could be trained with the samples from a test run. But, beyond that, they discovered that the shapes also changed slightly depending on the particular piece of glass that they used. After writing to a piece of glass, they knew what the written data was, so they could fine-tune the parameters of the model and etch the fine tuning information onto the side. You absolutely wouldn’t want to have to write a modified version of a reader program for every disk in your disk robot.
The property where machine learning is a good fit is where you don’t have the theory. People since Plato have been trying to describe how humans recognise objects. A few thousand years later, we still don’t have a set rules that you can apply to determine if an image contains a bicycle (bicycles are a really hard problem for computer vision because the rims of the wheels don’t look connected while it’s in motion and important parts of the shape are often occluded). But we do have a lot of pictures that contain bicycles and a lot more that don’t. The same applies to a bunch of other pattern-recognition tasks.
I think the last one is where you object but it’s not so much giving up on theory building, it’s admitting that theory building hasn’t worked yet. If you come up with a set of rules for defining the pattern that you’re looking for / wanting to generate (a lot of ML techniques are reversible, so these end up being the same problem) then you can often build a much more efficient rule-based system. But if decades trying have failed to build one, a ML system that works some of the time might be more useful than the idea of a rule-based system that would work better in the future.
My problem with the current ‘AI’ push is that very few of the problems that tools being marketed as ‘AI’ address fit into these categories. This is particularly true of LLMs. The overlap between problems where a bad answer has no consequences and the problems where the solution involves generating text is tiny.
@david_chisnall @kevin for me the fundamental problem is for most things it's the wrong tool. There is an old joke that if all you own is a hammer everything looks like a nail.
I don't want an automated drunk Reddit shitposter telling me 'the answer is X' as my search result, I want an automated version of the good librarian who doesn't just sigh and say back 3 shelves downstairs but 'you might also want to look in X and the statistical collection has .. '
@david_chisnall @kevin Was the cost of an incorrect answer low for archival storage? Wouldn’t it result in data corruption?
Archival storage never relies on 100% correctness for individual bit reads. It relies on having enough error correction information that you can correct the expected failure rate plus some headroom.
You can, for any written medium, verify that the ML approach is able to read back above the threshold error rate. The nice thing about glass is that it's then stable. Unlike magnetic media, the voxels representing symbols don't decay over time, they're either written and readable or they aren't. Even with magnetic media, the decay rate can be probabilistically estimated and you write with enough redundancy to ensure that, based on your model, you have a certain percentage chance of being able to read back the results after a certain amount of time (and you also spread the error correction across multiple devices so that complete failure of one doesn't lose you any data).
@david_chisnall
Does the ML produce an deterministic algorithm to read the data?
It may be not future-proof to require the next reader, whom might be equipped only with a primitive microscope, to have to do ML computation by an abacus.
@david_chisnall @kevin
It turns out deterministic approaches do have limits. Still foundational and necessary, but incomplete (chaos theory and all that). Weather forecasting has been exploring those limitations for some decades now. In recent years, ML has come up rather unexpectedly as an effective forecasting tool. That doesn't mean we give up on understanding what is going on with atmospheric physics. In practice, this gives us another framework to use where it fits the need.
@david_chisnall @kevin This is all true and very well put. But I think the main attraction of LLMs is just the user experience. I honestly think that's why people like it. You're almost not operating a machine, you're just asking a question and getting an answer. And I think LLMs will continue to be succesful in places where they are not applicable because in most cases they will give an answer that resembles the correct answer enough to not get tossed immediately.
@david_chisnall @kevin The manager will ask for a piece of software and a piece of software will be produced. It might even come about faster! And in a lot of places it will be adequate for the amount of testing and proofing normally done, because a lot of places don't verify their software very well. Problems will turn up later, as they always have, and the organization will respond by limping along as they always have. Very few orgs require perfect software to live.
@david_chisnall @kevin At least my POV from the long tail of not-world-class software developers in less than perfect organizations is that LLMs just mean we will have a lot more software (since it's cheaper and faster to produce, like badly made clothes), it will make our daily lives more annoying (like badly made clothes), but not a whole lot will be done about it (like...), because at the end of the day most people just want to go home.
And by “explain” I do not mean produce extruded textual explanations which they sometimes can (but often very poorly). Rather I mean that producing an ML model that tracks or seems to track or reproduce an object phenomenon is simply not and never can be a theory or explanation of that phenomenon.
Like, handwriting recognition obviously works decently well and is pretty old. It is, however, *not* a theory of writing. Handwriting recognition models tell you *nothing* about how handwritten text grapholinguistically functions!