They're not really 'machine learning' in the way it's used today: algos on giant n-tensors. It's more 'machine learning' in the bio sense: leg moves up when I smack it with a hammer, keep smacking and it stops moving up so much.
We've been able to make that sort of 'learning' device with digital electronics for a while now, heck, with analog electronics too. It's just that we've lowered to component count, via memristors, to the near minimum. Memristors have the same physics as a biological synapse (really waving hands here) and the 'learning' is now down to the same part count and energy scales. Actually, the energy usage part is the most important thing. A computer takes in a lot of Watts to run something like a good chess program. But a brain takes in ~1/100th the power to do the same thing. The (likely) power reqs. of memristors are likely the most 'breakthrough' thing about them.
Do you think that some of the topologies being learned about and refined in digital machine learning research could eventually be implemented using these analog components?
Or do those digital networks rely too much on very explicitly define, specific activation functions that would be difficult to tease out of memristors?
(I'd be willing to guess that it's not really an either/or situation... That much of what's being learned about digital neural nets will be useful in building analog ones, but that the messiness of electrical engineering will require some new tricks to get useful machine learning happening on the memristors.)
Yeah, it's not really either/or, it's more an issue of how many decades do you have.
Memristive 'learning' is analog, by definition. Implementation of modern ML algos is a very long ways off, if they're at all useful by then. Think of it more as trying to invent a modern image classification system in 1957 when all your transistors cost $5 and are vacuum tubes. Oh, and things like a compiler aren't even dreamed of yet. It's gonna happen, but after you retire.
Specifically, you can't assume infinite impedance in the system; there are no 'bits'. You have to characterize the whole circuit around the 'memory' part and can't partition it off like you would with a normal transistor. After-all memristors kinda are a sneak circuit.
That said, there are no issues with bit length in analog designs, so, in theory, they should be continuous/infinite in their 'resolution'. Generally, memristive learning should have near infinite 'fidelity' but will likely require a lot of time to teach. Think of this type of memristive learning as a vinyl record: the sound is incredible, nearly perfect, but not very portable and hard to reproduce. Current ML stuff is more like an mp3 file: not a perfect representation of the sound, but small, cheap, and good enough.
So, in this view, trying to run analytics on the mp3 file is fine, you can use ML algos on them, plug some python at them, Bob's your uncle. But trying to do the same thing on vinyl isn't going to happen. Sure, the math is the same-ish, but the practicalities are totally different, you'd have to get an army of undergrads to just sort them and set them on physical record-players. That's the level of difference we're talking about here.
Interesting! Your vinyl analogy is helpful in a few ways. For one, training the memristive networks wouldn't be parallelizable in the same ways that training state of the art digital networks's can be. Right now, you can't just instantly spin up thousands of instances of some memristive hardware without a lot of physical infrastructure. Of course if we start seeing programmable circuits with vast num ers of programmable memristors, maybe this will change.
Also: I would have assumed (naively) that the memristive networks could be "faster", but now I'm realizing that this is going to be a function of how quickly the memristors transition. There are likely to be some complex timing issues in building analog neural networks that behave in remotely predictable ways. I could imagine that errors might compound in much stranger (more chaotic) ways than they would in digital networks, where "error" is pretty tame.
I imagine that the "real-time", asynchronous, and chaotic nature of analog neural networks could be seen, by the right person, in the right light, probably in the future, as a feature (not a bug). But I realize now that we're decades away from that.
My hunch is that the early practical research will be done on FPGAs with inboard memristors.
We've been able to make that sort of 'learning' device with digital electronics for a while now, heck, with analog electronics too. It's just that we've lowered to component count, via memristors, to the near minimum. Memristors have the same physics as a biological synapse (really waving hands here) and the 'learning' is now down to the same part count and energy scales. Actually, the energy usage part is the most important thing. A computer takes in a lot of Watts to run something like a good chess program. But a brain takes in ~1/100th the power to do the same thing. The (likely) power reqs. of memristors are likely the most 'breakthrough' thing about them.