3 votos

¿Métrica de distancia invariante con la dimensionalidad?

Estoy trabajando en un problema de clasificación/predicción en el que tengo que predecir la ubicación de un objeto. El problema que tengo es que para cada ubicación, tengo un número único y diferente de dimensionalidad de las características. Así, por ejemplo, si estoy buscando un objeto en 5 posibles ubicaciones. Tengo 10.000 muestras de entrenamiento y prueba en la ubicación 1, que tienen dimensionalidad 1000, las características de la ubicación 2 tienen dimensionalidad 500, y así sucesivamente, (imaginemos que la ubicación 5 tiene dimensionalidad 50).

¿Cuál sería la forma correcta de evaluar una predicción si las características tienen dimensiones diferentes? Por ejemplo, utilizar una métrica de distancia euclidiana mediante Vecinos más Cercanos sería un mal enfoque, ya que muy probablemente tendré una distancia mínima (de media) para el caso de 50 dimensiones que para el caso de 1000 dimensiones, aunque el caso de 1000 dimensiones pueda ser correcto.

¿Cómo debo proceder para el caso del vecino más próximo, o para otros clasificadores como LDA y SVM? La aplicación de un soft-max, en la puntuación de cada salida no parece hacer el truco por las razones anteriores explicado antes ...

3voto

Mike Puntos 1018

Tienes razón. No tiene sentido comparar distancias L2 en un espacio de 1000 dimensiones con distancias L2 en un espacio de 50 dimensiones. Se trata de distancias brutas y deben convertirse en probabilidades para que sean comparables. El ajuste sigmoide es una herramienta para hacer esta conversión.

Supongamos que tenemos un conjunto de entrenamiento $D=\{(x_i, y_i)\}_{i=1}^N$ y en este conjunto de datos, entrenaste dos clasificadores diferentes, $f_1()$ y $f_2()$ que operan con un número diferente de características.

$f_1(x_1)$ es una puntuación bruta de clasificación o una puntuación discriminante, como a veces se denomina. No tiene sentido comparar directamente $f_1(x_1)$ con $f_2(x_1)$ . Una forma de realizar esta comparación es entrenar una función sigmoidea distinta para cada uno de los clasificadores.

Para $f_1()$ tu función sigmoidea, llamémosla $g_1()$ debe asignar un ejemplo positivo a 1 y un ejemplo negativo a 0. Es decir, para un ejemplo $(x,y)$ que desea idealmente:

$$g_1(x) = \frac{1}{1+\mathrm{exp}(-(\alpha f_1(x) + \beta))} = \begin{cases} 1,& \mathrm{if}\;\;y_i=1\\ 0, &\mathrm{if}\;\;y_i=-1 \end{cases}$$

Entrenar una función sigmoidea equivale a buscar los valores óptimos de $\alpha$ y $\beta$ .

Para más información, consulte esta página de la wikipedia https://en.wikipedia.org/wiki/Platt_scaling .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X