6 votos

Encontrar muestras de formación más similares para una determinada salida del modelo ML

Digamos que usted ha entrenado a un modelo de regresión. Ahora, en la producción, se obtiene una nueva entrada, y desea identificar a los K en las muestras del conjunto de entrenamiento que son los más similares a la nueva entrada de tan lejos como el modelo de que se trate.

Me doy cuenta de que la solución a este depende enteramente de la métrica de similitud, y que el correspondiente de la similitud métrica está mal definida - es decir, ¿cómo podemos saber que nuestra semejanza métrica está haciendo un buen trabajo? Pero podríamos decir que está haciendo un buen trabajo cualitativamente, es decir, saber-que-cuando-nos-vemos -.

Pero comencemos con un ejemplo sencillo. Vamos a decir nuestro es un modelo de regresión lineal, y = w0*1 + w1*x1 + w2*x2 + w3*x3. Parece que, teniendo en cuenta la distancia entre [w0*1, w1*x1, w2*x2, w3*x3] para las dos muestras sería una buena idea:

  1. Normaliza las características de acuerdo a la característica de las importancias
  2. "Similares" entradas se iba a producir productos similares

Ciertamente parece mejor que la medición de la distancia entre [x1, x2, x3] o [normalizado(x1), normalizada(x2), normalizada(x3)], ya que estos no tomar en cuenta cualquier información obtenida por el modelo, aparte de tal vez la característica de importancia. También parece mejor que la simple comparación de [y1], [y2] - muestras en muy diferentes partes del espacio de características puede tener productos similares, pero no parece correcto decir que las muestras son "similares", es decir, el modelo les dio similares salidas por razones similares.

Ahora supongamos que tenemos un ejemplo más complejo, donde nuestro modelo es XGBoost. Podríamos seguir un enfoque similar para cada una de las muestras, romper el modelo final de salida en una suma de contribuciones de cada característica (por ejemplo, utilizando el enfoque utilizado por eli5.explain_prediction()) y, a continuación, compruebe la distancia entre los vectores de tales contribuciones para la nueva entrada y del conjunto de entrenamiento de las muestras.

  1. ¿El enfoque parece sensato?
  2. Estoy reinventando la rueda, es decir, ¿se conocen los enfoques existentes para la interpretación ML modelos de encontrar más similares de entrenamiento conjunto de muestras de acuerdo a la modelo?

2voto

rinspy Puntos 106

Encontrar un trabajo reciente que presenta un enfoque similar a la que se describe en la pregunta: "de acuerdo Individualizado de la Función de la Atribución de Árbol de Conjuntos", Lundberg et.al., KDD de 2018.

Ellos usan valores de Shapley para explicar el modelo de predicción para cada muestra como una suma de las contribuciones de cada característica y, a continuación, comparar las distancias entre la resultante de los vectores a encontrar muestras que son similares de acuerdo con el modelo. Los resultados parecen ser bastante intuitivo y interpretables:

enter image description here

Por lo que el enfoque en la cuestión parece ser sensato y utilizados en otros lugares.

-1voto

Mohamad Misto Puntos 449

Si usted está mirando para tomar n muestras más cercana desde el conjunto de datos de entrenamiento que es similar a una observación fuera de muestra, por qué no simplemente usar las características que usted tiene para obtener una distancia con cada observación de la formación - euclidiana, manhattan o lo que sea (depende de la ¿tipos de la característica)? La muestra de entrenamiento con la distancia más pequeña a la nueva observación sería el más similar.

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