In Matlab, if you build a simple network and train it: OP = feedforwardnet(5, 'traingdm');inputsVals = [0,1,2,3,4];targetVals = [3,2,5,1,9];OP = train(OP,inputsVals,targetVals);then you train it again so another OP = train(OP,inputsVals,targetVals);What is happens to the network? Does it train again based on what it learned the first time you did OP = train(OP,inputsVals,targetVals); or does it train as if it were the first time training the network. 
Does the network learn based on previous training or does it restart? Matlab, neuralnetworks
neural network;matlab
It trains again based on what it learned the first time you did OP = train(OP,inputsVals,targetVals). More generally, train uses your network's weights, i.e. it does not initialize the weights. The weight initialization happens in feedforwardnet.Example:% To generate reproducible results % http://stackoverflow.com/a/7797635/395857rng(1234,'twister')% Prepare input and target vectors[x,t] = simplefit_dataset;% Create ANNnet = feedforwardnet(10);% Loop to see where train() initializes the weightsfor i = 1:10    % Learn    net.trainParam.epochs = 1;    net = train(net,x,t);    % Score    y = net(x);    perf = perform(net,y,t)endyieldsperf =    0.4825perf =    0.0093perf =    0.0034perf =    0.0034perf =    0.0034perf =    0.0034perf =    0.0034perf =    0.0034perf =    0.0034perf =    0.0028