Wait, this is impossible, not underspecified: if you have 4 vectors, x, y of
length N, and z, w of length 1, and six pairwise distances: d_xy, d_yz,
d_xz,
d_xw, d_yw, d_zw.

You want (d_xy / d_zw), (d_xz / d_yw), and (d_xy / d_xz) to all remain
fixed after transformation?  The first will stay fixed, but the second and
third
will likely vary wildly, depending on the transformation.

Think about it in 3-dimensions, how can this work?

On Thu, Jul 21, 2011 at 8:33 PM, Ted Dunning <[email protected]> wrote:

> This is underspecified.  Simply adding an additional large valued
> coordinate
> and normalizing back to the sphere will do you what you want.  This works
> because small regions of S^{n+1} are very close to R^n in terms of the
> Euclidean metric.  This is rarely that useful, however, if your interest is
> cosine distance because small angles give cosine very near 1.
>
> You might try balancing the additive parameter to balance preservation of
> distance against mean-squared deviation from the mean.
>
> Usually, people just cosine normalize the original data and pretend they
> don't care.
>
> On Thu, Jul 21, 2011 at 8:25 PM, Lance Norskog <[email protected]> wrote:
>
> > I have vectors of different lengths and I would like to normalize them
> > to a unit (hyper)sphere. However, I would like the pairwise distance
> > ratios to be maintained. What transform does this?
> >
> > The use case for this is to make a vector set that uses cosine distances.
> >
> > --
> > Lance Norskog
> > [email protected]
> >
>

Reply via email to