Interview with Alex Nugent
Questions by Sander Olson. Answers by Alex Nugent
Alex Nugent founded a company, Knowmtech, with the goal of using particles for pattern recogntion. During the past several years, Nugent has advanced the concept of Knowm networks, and has filed several key patents. He is confident that products will become commercially available within the next three years.
Question 1: We last interviewed you in October of 2002. What progress has KnowmTech made during the past three years?
We’ve made considerable progress, mostly conceptual and theoretical, but also as a company. As you know, I was an undergraduate student when I first had the idea for the Knowm synapse. It’s one thing to discover something, or know that it is potentially important or useful, or to know the general area of future applications. It is quite another to prove that it will work, show exactly how it can be used in specific applications, show that there is an advantage to its use, etc. I guess one could say we have been compiling the evidence, both experimental and theoretical, ever since. I now have a more-or-less complete picture of how to build the devices, how they will function, what kind of problems they will solve, and why it is important to move in certain directions. With one patent issued and fifteen other patents pending, including a European application, KnowmTech has certainly made progress in developing a significant intellectual property portfolio for its technology during the past three years.
Question 2: Tell us about KnowmTech's patent application. Has the patent been granted?
Yes. The first application was granted in May, 2005, with all the claims accepted. KnowmTech has recently received notification that all the claims covering important subject matter for another device-oriented patent application will be allowed.
Question 3: Define "Independent Component Analysis". What is it, and why is it important?
Take a pen and make a few totally random squiggles on a piece of paper. Call the first squiggle s1, the second squiggle s2 and the third s3. Now build a language out the squiggles. You could count with them: s1, s2, s3, s1s1, s1s2, s1s3, s2s1 , …. You could assign an arbitrary sequence of your squiggles to encode, for instance, objects in the world. In this way you could build an alphabet. You could learn to do arithmetic with you’re squiggles, or you could write a book with your squiggles. Of course, why would anybody want to do this? After all, we already have two perfectly good squiggles, (“1” and “0”), and we certainly know how to use them. In fact, we even have a perfectly arbitrary way of assigning letters of the alphabet (yet more arbitrary symbols) to these “ones” and “zeros”.
So here is the first definition of independent components: they are the underlying symbols we use to build up languages of any variety. Of course, it’s not always easy to find those base components if you don’t know what they are to begin with. The problem occurs when we try to take “nature’s squiggles” and put them in a computer. To illustrate this, write a book with you’re squiggles, take a digital picture of each page of the book, convert every pixel into binary “1” or “0” value, and print out the result.
Now, ask a friend to read your book! What they will first see is that the base components are a “1” and “0”. But are they really? It can’t be, because you wrote the book with your squiggles, not 1’s and 0’s. Where did the squiggles go? What is amazing to me is that each and every one of us faced this problem as a baby, and we all figured it out. An endless stream of neural blips goes in and sooner or later we just ‘see’! My goal is to build a device where information goes in and gradually the device learns to recognize features in the data, patterns and regularities. Independent Component Analysis (ICA) is a tool to begin to accomplish that, the “first layer” in sophisticated neural processors.
A scene from “The Matrix 1” comes to mind. Neo ask some guy “do you always look at the matrix encoded?” showing a screen with those green symbols streaming down. The guy replies “ah heck, I don’t even see the code anymore…all I see is blond…brunet…red-head”. But here is the kicker…Nature is encoded and we don’t even realize it. The neurons in our head, with the trillions of connections, each adapting to each other every second of every day, have decoded it. How do they do this? I don’t have all the answers, but I have made an interesting discovery: If you send electrical pulses over a connection gap in the right way, particles will aggregate at a connection according to a certain “plasticity rule”. This plasticity rule can extract the independent components from a data stream. It is the beginning of a system that maps this complex statistical process to a very efficient physical implementation, where the “neural modules” are about the size of biological neurons, connections are about the size of biological synapses, and the power consumption is comparable to the biological counterpart.
Question 4: What is a "neural module"? How do you define "universal logic"?
If one takes a look at a biological neural network, he or she would make the following observation: synapses are nano. Synapses are tiny computational elements that pass a signal, but do not amplify it. Such components respond to the pre- and post-synaptic neuronal activity. Neurons are not nano. Neurons are micro. Neurons are amplifiers: they take a signal from their synapses, integrate it, and if things are just right, generate a signal of their own. Neurons also accomplish something else: they provide feedback to the synapses.
So, a Knowm network uses traditional CMOS to build the neurons and particle aggregation to build the synapses. A neural module is composed of a tri-state voltage keeper (6-8 transistors), a pass gate (2 transistors), an inverter (2 transistors), and a capacitor (the post-synaptic electrode). There are many variations to this configuration. The voltage generated across the electrode gap over time causes the aggregation of particles at the gap. This aggregation forms a resistor, that is, the synapse.
The feedback from the “neural module” causes the particles to selectively stick to certain electrode gaps, while allowing random thermal motion to break other connections. After a while, in comes an endless stream of ones and zeros and out goes…the independent components! As long as information is processed, the Knowm synapses are stable.
Universal logic is what occurs when you take neural modules and NAND (or NOR or threshold, etc.) their outputs. By configuring the “independent component states” you can control the logic function of the device. More specifically, for a 2-input, 1-output device, there are 16 possible logic gates. For example, there is a NAND, OR, NOR, XOR, and 12 more. This universal reconfigurability costs you about 30 transistors, plus a small electrode array on the surface of the chip (4 synapses for a 2-input, 1-output device).
Once a gate is locked into a state, by the application of a particular datastream and a global teach signal, it remains in that state and takes up the function of whatever logic gate you “programmed” it to be. What if you had a chip that was a clean-slate, where the hardware was capable of being “programmed”, turning the clean slate into whatever tangle of logic gates you want? That’s the idea behind the universal reconfigurable logic gate. And it’s really much simpler than it sounds.
Question 5: You claim that unreliable switching elements (particles) can be used in reliable computational systems. Will the reliability of particle-based systems match that of conventional CMOS?
I use the term “unreliable switching element” rather than particle because it’s the generalization of the behavior of a Knowm synapse, not just particles in a solution. A molecular switch could also be seen as an “unreliable switching element”. I say this because the techniques I have created for the Knowm synapse could be implemented with alternate device elements, such as molecular switches, crossbar arrays and the like. As long as one has a switch that has an increased probability of transitioning into a conducting state when you apply an electric field and a non-zero chance of randomly flipping back into the non-conducting state, then the methods I have created to use a Knowm synapse can also be used for this device. Liquid need not apply (but it should, for other reasons). Notice how the “unreliable” part of the switch is a commodity, not a problem.
With that said, I think the answer to the question is yes, the reliability of a particle-based system will surpass conventional CMOS. A Knowm network relies on a CMOS under-layer. So, one might say that the reliability of the knowm network depends on the reliability of the CMOS. But the Knowm layer is adaptable. When a network is initialized into a state, it tries to stay in that state by adjusting the synaptic connections. If part of the CMOS under-layer fails, then the connections will adapt to maintain the state. If the damage is too extensive, it will fail. It could be re-taught, however, from the beginning, with the remaining circuitry.
One incredibly interesting property of the plasticity rule I’m working with is that if you add redundancy, the rule automatically “looks” at the redundant lines and picks out the bad components, zeroing out the influence the data line may have by dissolving the connection to it (literally, in this case).
There is a cost to an active process. If you stop processing information, then it loses its state. (Makes one wonder about why we start to dream more and more as the night progresses, and why animals with high metabolic activity dream more). That’s the major “gotcha”. But I don’t really think of it like that. Nature doesn’t turn off, unless it is dead, and nature is very power efficient. To me, nano is nature. Nature does not tick at a gigahertz. Of course, if you insist on solving a problem one operation at a time, you have no choice. A properly adapted Knowm network will burn very little static power, which means most of the power loss comes from the switching of CMOS under layer. In most neural applications, the clock will tick at about 1 kHz, i.e. a million times slower than today’s clock rates. One can see where the efficiency comes from.
Question 6: What particles are you using to make these nanoelectric systems? What unique properties do these particles have?
One of the most pleasant surprises I have encountered throughout this process is learning that the type of particle isn’t so important. The most important property is the relative electrical permittivity between the solution and the particle…the particle needs a higher permittivity so as to insure “positive dielectrophoresis”. And that’s about it, really. An electrical connection does not need to take place through the particle itself, although it could. Rather, ions from the solution form a charge layer around the particle bridge and conduction can take place through the solution, around the particle. So by changing the ionic properties of the solution, one can control conduction properties of the particle bridge. Imagine that…changing the specific properties of a nano-connection by controlling the solution, not the particle. Over the last few years, dielectrophoresis has moved all the way down to the nano realm. It’s now possible to attract individual proteins to an electrode gap, and 20nm latex and gold nanospheres are reliably attracted as well. The best particles are probably the most characterized: latex or gold.
Question 7: Has KnowmTech built any working prototypes during the past three years?
The problem, as it turned out, was to figure out what exactly the prototype was. When other people saw this particle aggregation effect, they thought it was just a wire-building process, for chip interconnects. I saw it as a dynamic signal processing element. That’s the wonderful thing about a 20 year old. They can think something outrageous like that! I knew very little about so much, just enough to dig myself a nice little hole, in fact. I realized that, although I had shown how certain circuits could be used as a feedback mechanism to keep particles at an electrode gap, I still didn’t have the whole picture. I was as confused as everybody else (perhaps more). So these last three years I have been digging myself out of that hole, and in the process finding all sorts of amazing things. In fact, I know what needs to be prototyped, the development team is beginning to assemble, and we are now going to build it. To put it in perspective, at the time of the last interview, I knew I needed a plasticity rule for the computational aspects, but I didn’t know what it was. I knew I needed to stabilize the connections, but I could only think of one way to do it. One day I realized that they were one and the same thing, and that it was staring me in the face the entire time. That’s when I decided to take a break from graduate school and get the show on the road.
Question 8: Has KnowmTech been successful in financing R&D? Does KnowmTech plan on obtaining all of its revenue through intellectual property licensing?
Until I left graduate school, we had not given R&D funding a serious thought. I was not about to put other people’s money on the line without a very solid sense of what we were doing and what would be built. In our case, the “research” was not so much about a new fabrication process or even a new device. The basic effect had already been demonstrated by many labs all over the world, and continues to be. The “research” was conceptual. I didn’t need a FAB, or a microscope, or a new nanoparticle. I needed one more idea. Now that we have it, it’s looking like financing the R&D is not going to be much of a problem. Most of the basic elements have already been demonstrated, and since the particles self-assemble, it is a post-CMOS processing step. Funding will most likely come from a variety of places, via private investors, government funding, or the participating research institutions and will be mostly directed to companies set up specifically for the development and commercialization effort.
As far as the second question, that’s one I have been asked more frequently these days. Yes and No. KnowmTech is starting to organize itself around the very nature of the device. The Knowm Synapse is an electrical element. It is not a resistor, or a capacitor or a transistor or an inductor. It’s a new signal processing element: a “resistor with a time constant”. In that light, there are many applications we have not even thought of, I’m sure, which will begin to make themselves known as scientists and engineers become aware of it and realize it is a solution for their problem. However, if it was that easy, we would already have struck gold. The hard part is showing somebody why it is useful, which means you need to build it and put it to use in an application. So now we are doing this.
Ideally, KnowmTech is an idea incubator. The more thought goes into a device, the less money and energy will be wasted in the prototyping of the device. I can’t imagine where we would be now if we had just blazed a trail to development. It doesn’t cost much to think a little longer. And it doesn’t actually cost that much money to get a patent, if your company is structured around that sort of thing. Today, there are more transistors than grains of rice. I can imagine a time in the future when there are just as many knowm synapses. (I have a very active imagination!). I really don’t want to have to build all of them, so licensing and joint ventures are probably a good way to go.
Question 9: How long do you anticipate before the first products based on this technology become commercially available?
About 2-3 years. The first products will most likely be invisible to the general public, as monitors of industrial processes. Speech recognition and large scale sequence recognition, such as DNA sequence matching, intelligent internet image searching and the like will mostly likely be the first real publicly visible applications. But there is always the possibility of somebody coming up with the most obvious application we never thought of, and we are certainly open to that too. Everybody is invited to participate.
Question 10: Will this technology be limited to applications such as speech recognition and facial recognition, or will it have broader uses?
It will have many uses, at first mostly in the pattern-recognition arena, because that is what people know (me included). I anticipate, however, that the applications for Knowm technology will grow into many areas. When more people realize that all technology is in fact arbitrary, that transistors didn’t even exist until fairly recently, that computing efficiently is all about solving a problem in a different way, then they will probably start to look at nature and realize that many problems have already been solved in very ingenious ways. The Knowm synapse will then start to have a more wide-spread appeal. I can see a time when a microprocessor is not the core of a “computer”, but just part of a whole integration of various devices, all exploiting various physical properties to solve specific problems in super-efficient ways.
To that effect, I’ve already done work demonstrating how to build reconfigurable logic devices. But the “gotcha” is that these devices will solve distributed problems well and serial problems poorly. I’m actually happy to see that we have entered the time when we are no longer blinded by the miracles of the microprocessor. When your device has a power density of a soldering iron, there is a problem. They key is to realize that a computational technology, though universal, is not universally useful. The synthesis of distributed processing with serial processing will usher in a very exciting new paradigm. I hope Knowm enables part of it, and will be used everywhere people find it helpful.
|
|||||||||||||||||