2
$\begingroup$

I am kind of a newbie on machine learning and I would like to ask some questions based on a problem I have .

Let's say I have x y z as variable and I have values of these variables as time progresses like :

t0 = x0 y0 z0
t1 = x1 y1 z1
tn = xn yn zn

Now I want a model that when it's given 3 values of x , y , z I want a prediction of them like:

Input : x_test y_test z_test Output : x_prediction y_prediction z_prediction

These values are float numbers. What is the best model for this kind of problem? Thanks in advance for all the answers.

More details: Ok so let me give some more details about the problems so as to be more specific.

I have run certain benchmarks and taken values of performance counters from the cores of a system per interval.

The performance counters are the x , y , z in the above example.They are dependent to each other.Simple example is x = IPC , y = Cache misses , z = Energy at Core.

So I got this dataset of all these performance counters per interval .What I want to do is create a model that after learning from the training dataset , it will be given a certain state of the core ( the performance counters) and predict the performance counters that the core will have in the next interval.

$\endgroup$
  • $\begingroup$ What is the relationship between the variables? Does the value they take depend on t or not? It sounds like a dynamic Bayes net, or MRF, might be neccesary but you need to provide more info $\endgroup$ – Ben Allison Oct 17 '14 at 13:38
  • $\begingroup$ What are these variables you are predicting? it's not clear how they relate to the time series input. $\endgroup$ – Sean Owen Oct 21 '14 at 13:58
  • $\begingroup$ @SeanOwen The variables are statistics taken from cores of a computer . So through time I take lets say 'snapshots' of the state of a core and it's variables $\endgroup$ – MikEKOU Oct 26 '14 at 15:42
  • $\begingroup$ @BenAllison The variables are dependent on each other since they are statistics of a core in a computer multicore system. $\endgroup$ – MikEKOU Oct 26 '14 at 15:42
  • $\begingroup$ Yeah but what are you predicting? You say that given the values you want to predict the values but you have them. $\endgroup$ – Sean Owen Oct 26 '14 at 17:16
0
$\begingroup$

AFAIK if you want to predict the value of one variable, you need to have one or more variables as predictors; i.e.: you assume the behaviour of one variable can be explained by the behaviour of other variables. In your case you have three independent variables whose value you want to predict, and since you don't mention any other variables, I assume that each variable depends on the others. In that case you could fit three models (for instance, regression models), each of which would predict the value of one variable, based on the others. As an example, to predict x:

x_prediction=int+cy*y_test+cz*z_test

, where int is the intercept and cy, cz, the coefficients of the linear regression. Likewise, in order to predict y and z:

y_prediction=int+cx*x_test+cx*z_test
z_prediction=int+cx*x_test+cy*y_test
| improve this answer | |
$\endgroup$
  • $\begingroup$ That's what I had in mind . They are indeed dependent on the behavior of each other.The problem is that I read about logistic regression and saw an example with iris dataset. It is kind of a classificiation and the x_prediction , y_prediction , z_prediction are going to be float numbers not a value like (type 1 , type 2 etc.) Is that a problem for my case? Thanks for yoru answer $\endgroup$ – MikEKOU Oct 16 '14 at 15:04
  • $\begingroup$ Logistic Regression predicts a binary response from categorical variables (type1, type2, etc). If all your variables are continuous, you may be better off using a linear regression model $\endgroup$ – doublebyte Oct 17 '14 at 10:20
  • $\begingroup$ I see thanks for your help , I cannot upvote your answer cause of no reputation but this is a solid answer ty :) $\endgroup$ – MikEKOU Oct 17 '14 at 14:37
  • $\begingroup$ I am glad it helps; if I answered to your question, maybe you could mark it as "answered"? $\endgroup$ – doublebyte Oct 20 '14 at 8:08
0
$\begingroup$

OK, so values at time t-1 predict values at time t. That makes sense.

First you should decide whether you think these values are independent or not. Do the x predict the y or z at all? And, do you think just the previous 1 value is predictive, or the previous n?

Either way you could model this as a simple regression problem. What technique is best really depends on what you expect the relationship to be, and what these variables are; I am not sure that's given here.

For example if they're sensor values read fairly rapidly, and the sensor changes slowly, you'd expect some simple model like a moving average to do well. For other types of values this would not be predictive at all.

This looks like the Markov chain model, so you may look into that, but somehow I think it's over-general for what I think the problem is.

| improve this answer | |
$\endgroup$
  • $\begingroup$ I added some more details so as to be more helpful $\endgroup$ – MikEKOU Oct 27 '14 at 16:04

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.