I understand how neural networks that are implemented in software learn. You simply change the synaptic weights in the program. But how would you get a hardware implementation of neural networks to learn? The synaptic weights in the case of a physical system are INSIDE the machine, so how do you adjust the synapses? Do these neuromorphic systems require extra wires connected to every synapse (memristor etc.) in order to interface with traditional computers?