![](https://forum.armkb.com/images/enlighten/misc/cat_top_ls.gif) |
Need help |
![](https://forum.armkb.com/images/enlighten/misc/cat_top_rs.gif) |
13.05.2007, 18:38
|
#1
|
Slipstream Traveller
Join Date: 01 2007
Location: Pillar of Autumn
Posts: 131
Rep Power: 0
|
Need help
So here's the question:
I have a dataset of one-dimensional vectors, each of those has a corresponding N-dimensional vector. The task is: given a one-dimensional vector from outside the dataset, predict the corresponding N-dimensional vector.
In other words, I somehow need to learn a function f(x)->(y1, y2,..., yN) or f(x)->([a1,b1], [a2,b2],..., [aN,bN]), where y1 belongs to [a1,b1] and so on (a and b as close together as possible).
Would really appreciate any suggestions, I'm kinda stuck - the methods I've tried didn't perform well.
__________________
"You are making a mistake.
My logic is undeniable."
|
|
|
14.05.2007, 06:57
|
#2
|
User
Join Date: 07 2006
Location: Yerevan
Age: 42
Posts: 916
Rep Power: 4
|
have you tried to drain a glass of brandy, it can be helpful
|
|
|
14.05.2007, 07:32
|
#3
|
Slipstream Traveller
Join Date: 01 2007
Location: Pillar of Autumn
Posts: 131
Rep Power: 0
|
i have, thank u, and how about smth to the point?
|
|
|
15.05.2007, 08:01
|
#4
|
Школьник
Join Date: 08 2004
Location: Armenia
Age: 41
Posts: 246
Rep Power: 0
|
Cortana, could you please formulate the problem with more detail? And give 2-3 examples?
|
|
|
16.05.2007, 11:00
|
#5
|
User
Join Date: 07 2006
Location: Yerevan
Age: 42
Posts: 916
Rep Power: 4
|
Quote:
Originally Posted by Junior
Cortana, could you please formulate the problem with more detail? And give 2-3 examples?
|
You know, after a glass of brandy, it's not so easy task
|
|
|
25.05.2007, 05:52
|
#6
|
Slipstream Traveller
Join Date: 01 2007
Location: Pillar of Autumn
Posts: 131
Rep Power: 0
|
Wow, I see a lot of useful suggestions..lol
Junior, what kind of details do u want?
|
|
|
26.05.2007, 07:18
|
#7
|
User
Join Date: 07 2006
Location: Yerevan
Age: 42
Posts: 916
Rep Power: 4
|
Quote:
Originally Posted by Cortana
Wow, I see a lot of useful suggestions..
|
Yeh, no thanks required, you know, you're welcome
can you translate your question into Russian
cause my don't understooding English very wall
|
|
|
26.05.2007, 12:25
|
#8
|
это надо видеть
Join Date: 03 2006
Location: где то там...
Age: 38
Posts: 3,695
Rep Power: 5
|
Please give an example with real numbers
|
|
|
27.05.2007, 05:17
|
#9
|
Slipstream Traveller
Join Date: 01 2007
Location: Pillar of Autumn
Posts: 131
Rep Power: 0
|
Quote:
Originally Posted by ByTheWay
Yeh, no thanks required, you know, you're welcome
can you translate your question into Russian
cause my don't understooding English very wall
|
Ha, qo asacn a, cavd tanem
|
|
|
27.05.2007, 05:44
|
#10
|
Slipstream Traveller
Join Date: 01 2007
Location: Pillar of Autumn
Posts: 131
Rep Power: 0
|
Quote:
Originally Posted by Satyricon
Please give an example with real numbers
|
Not sure how this will help, but anyways, here's a sample of my data:
1: x = -28.240891 y = (310.747, 3.01, -1.4, -40.58, 0, 4, 5, 8, 1, 3)
2: x = -42.423779 y = (349.184, 3.89, -1.74, -60.42, 0, 3, 7, 8, -1, 5)
3: x = -37.312016 y = (296.355, 2.03, -0.54, -22.76, 0, 0, 5, 2, 0, 5)
and so on, about 4M of them.
What I need is a function, which given, say, x = -28.240891 (first data point), will give me back some y very close to y = (310.747, 3.01, -1.4, -40.58, 0, 4, 5, 8, 1, 3).
In other words, the points in the database r not random, so I need to find a rule that describes them.
|
|
|
27.05.2007, 10:04
|
#11
|
Академик
Join Date: 08 2002
Location: Yerevan, Armenia
Age: 52
Posts: 4,854
Rep Power: 5
|
Did I understand it right that, based on a dataset you have, you need to calculate set of functions Y1(x)...YN(x), which, for any given X, will return you all the Y1-Yn-s closely matching those in dataset ?
There are numbers of interpolation methods (polinomial, b-spline, etc.), every one is good for a specific type of data/task. Which one of those have you tried and why the result was not satisfactory ?
One thing is clear that you can consider the problem as N intependednt x-y relationships, so we have to calculate N functions independently.
__________________
Женщин не надо понимать, их надо любить!
Last edited by W_z_rd; 04.06.2007 at 08:45.
|
|
|
27.05.2007, 10:23
|
#12
|
User
Join Date: 07 2006
Location: Yerevan
Age: 42
Posts: 916
Rep Power: 4
|
Quote:
Originally Posted by Cortana
What I need is a function, which given, say, x = -28.240891 (first data point), will give me back some y very close to y = (310.747, 3.01, -1.4, -40.58, 0, 4, 5, 8, 1, 3).
|
public static void main(String[] args) {
double x = -28.240891;
double y[] = {310.747, 3.01, -1.4, -40.58, 0, 4, 5, 8, 1, 3};
System.out.println( getMoreCloseElement(x, y) );
}
static double getMoreCloseElement(double x, double y[]) {
double ret = y[0];
double dif = Math.abs(x - y[0]);
for (int i = 1; i < y.length; i++) {
double temp = Math.abs(x - y[i]);
if( temp < dif ) {
dif = temp;
ret = y[i];
}
}
return ret;
}
__________________
stop your eyes from flowing out
|
|
|
27.05.2007, 18:43
|
#13
|
Ego coder
Join Date: 07 2004
Location: Yerevan, Armenia
Age: 43
Posts: 3,738
Rep Power: 4
|
Quote:
Originally Posted by Cortana
Not sure how this will help, but anyways, here's a sample of my data:
1: x = -28.240891 y = (310.747, 3.01, -1.4, -40.58, 0, 4, 5, 8, 1, 3)
2: x = -42.423779 y = (349.184, 3.89, -1.74, -60.42, 0, 3, 7, 8, -1, 5)
3: x = -37.312016 y = (296.355, 2.03, -0.54, -22.76, 0, 0, 5, 2, 0, 5)
and so on, about 4M of them.
What I need is a function, which given, say, x = -28.240891 (first data point), will give me back some y very close to y = (310.747, 3.01, -1.4, -40.58, 0, 4, 5, 8, 1, 3).
In other words, the points in the database r not random, so I need to find a rule that describes them.
|
Hmm.. what you need is just 2 arrays, 1-st one is one dimensional, second one - two, just use linear search by given x value and take the corresponding y[i]-th vector, what's the problem ?
|
|
|
27.05.2007, 18:46
|
#14
|
Ego coder
Join Date: 07 2004
Location: Yerevan, Armenia
Age: 43
Posts: 3,738
Rep Power: 4
|
Ooops, didn't mention 4M data stuff ... well pre-sort the array to use binary search so will be somewhat O(log(n)) instead of O(N)
|
|
|
27.05.2007, 19:03
|
#15
|
Дошкольник
Join Date: 10 2004
Location: Yerevan
Age: 36
Posts: 116
Rep Power: 0
|
Theoretical, we can manage to have just 1 number, instead of Y1, Y2, ..., Yn. And after that all we have to do is to find a function that supplies a single(and also correct) Y value corresponding to a single X, thats much more easier cuz, as it was mentioned before by W_z_rd, there are several methods available for that case, and it doesn't require separate calculations for each Y value.
|
|
|
All times are GMT. The time now is 12:17. |
|
|