1. A method of operating a non-volatile storage device, the method comprising: training a reversible resistance storage element, including applying a first gate-to-source voltage to a transistor that is connected in series to the reversible resistance storage element while applying a training signal to the reversible resistance storage element, wherein the transistor limits a current of the reversible resistance storage element in response to the training signal; and programming the reversible resistance storage element between a lower resistance data state and a higher resistance data state after training the reversible resistance storage element, including applying a second gate-to-source voltage to the transistor that is less than the first gate-to-source voltage while applying a programming signal to the reversible resistance storage element, wherein the transistor limits a current of the reversible resistance storage element in response to the programming signal.