Serving the Quantitative Finance Community

 
User avatar
countblessings
Topic Author
Posts: 0
Joined: June 7th, 2012, 11:05 am

Neural Network - Basic Question

September 4th, 2012, 11:58 am

Dear all - Quick basic question on Artificial Neural Networks. I have gone through a handful of academic and illustrative articles on the topic online, and I understand (or at least I think so) how the NN is designed, how the weights are generated, fed forward, back propagated, the error corrections are made until the MSE (Mean Square Error) is minimized. However, inevitably every example I have seen trains the network with exactly 1 data point, probably merely to illustrate the concept. Let's assume I have 250 trading days worth of closing prices for 10 different securities, and I use 150 days worth of data to train my NN and the other 100 days to test the out-of-sample cases. The end product of the NN algorithm is to estimate and finalize on a set of optimal weights among the various neurons such that a sum product of those weights with the respective prices (or log prices, whatever the case may be) through the input and the hidden layers (after passing through a transfer function such as a sigmoid) can be used to predict the value of an endogenous variable (which will be the output of the network). As the NN is trained using each of the 150 trading days worth of data, wouldn't the optimal weights finalized for the 1st trading day have to be re-adjusted to suit the prices on the 2nd trading day, and so until the 150th trading day? And by the time the training is complete for all the 150 trading days worth of data, depending on the presence of the lack of meaningful patterns in the data, isn't there a huge risk of the optimal weights from the 250th day not even closely fitting the data from the 1st trading day? How does one overcome this? Sorry I have not been able to explain this any better. Thanks for your inputs.
 
User avatar
spv205
Posts: 1
Joined: July 14th, 2002, 3:00 am

Neural Network - Basic Question

September 7th, 2012, 10:11 am

countblessingsmake sure you understand linear regression before you look at non linear regression which is all neural networks is.there is no optimal set of weights for a single training sample. it is like saying there is an optimal set of linear regression coefficients for 1 data sample ( there are an infinite number of straight lines that go through a single point).the weights are optimal for the training set as a whole.ie you have n weights and M training points with n<<M, then you can talk about optimal weightsjust try a few simple classification/ regression tasks such as machine learning exampleswhere you actually know the answer.but yes just as with any statistical problem, as the properties of the data change you have to reestimate the parameters. ie you might use a years [t-365,t] worth of data to predict the next month and then retrain the network with the new data ie [t+30-365 ,t+30]....
 
User avatar
Traden4Alpha
Posts: 3300
Joined: September 20th, 2002, 8:30 pm

Neural Network - Basic Question

September 7th, 2012, 4:13 pm

A few more ideas:1. Testing the time-domain properties of the weights -- do they change significantly over time?2. Adjusting the window size to balance the effects of stochastic and drift errors.3. Weighting data so that more recent samples have a stronger influence.
 
User avatar
Gamal
Posts: 1536
Joined: February 26th, 2004, 8:41 am

Neural Network - Basic Question

September 26th, 2012, 8:13 am

The best is to use your own neural network