I am trying to build a machine learning system for financial price prediction. I am using a 3 layer MLP (a deep network) with 3 outputs (buy,hold,sell).

I am using different features such as price and volume. In order to take into account past behavior, I concatenate the price and volume data into one vector. The first part of the vector is the last N return rate, the second part is the last N transaction volume.

This results in a large input vector (>50). I wonder if the bad results I get are related to the current selection of the input vector.

Any help on that?

Thanks! Guy

  • $\begingroup$ Welcome to the stack exchange...Rule #1 if you ask a question about the results of a computer program, then you must post code and data if you want a meaningful response. $\endgroup$ – chollida Mar 26 '15 at 12:51
  • $\begingroup$ This is not a question regarding a result of a computer program. This is a general question regarding an algorithm, and the best practice using it from a mathematical perspective. $\endgroup$ – guyov Mar 28 '15 at 14:45
  • $\begingroup$ then you should edit your question to make it clear what you are asking. Right now your question reads as "I've done some stuff, I won't show it, but I don't get the results I want. What could be going wrong?" With a Neural net, the problem could be your inputs, your weightings, your choice of inputs, errors in your math, and any number of other things, without code we can't begin to guess on your behalf:) $\endgroup$ – chollida Mar 28 '15 at 16:15

50 elements input vector is actually a small one. For example, in this tutorial the size of the input vector is 784 (parameter 'nvis'). So your problem lies somewhere else.

I would recommend to start from taking these two courses on Coursera:

  • Neural Networks for Machine Learning
  • Machine Learning

They will provide you with some practical guidance regarding how to deal with your issue.

  • $\begingroup$ Actually I have taken these coursers. I know that in general a dimension of 50 is not too big, though I guess my problem here is the fact the feature is not informative enough and the vector is highly correlated. I need some domain expertise here. $\endgroup$ – guyov Jan 23 '15 at 15:08
  • $\begingroup$ Then you need to be more specific. You ask whether your bad results are due to large input vector and the answer is 'No'. $\endgroup$ – zer0hedge Jan 23 '15 at 19:33
  • $\begingroup$ Edited the question. $\endgroup$ – guyov Jan 24 '15 at 21:41

You can take a look at this paper: Yifeng Li, Chih-Yu Chen, Wyeth W. Wasserman: Deep Feature Selection: Theory and Application to Identify Enhancers and Promoters. RECOMB 2015: 205-217. Input features can be selected in the deep neural network by this deep feature selection model / deep lasso.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.