validacion studio machine learning hacer ejemplos decision cruzada como arboles arbol algoritmos algoritmo machine-learning computational-geometry classification knn

machine learning - studio - kNN: entrenamiento, prueba y validación



knn python (1)

Entonces, kNN es una excepción al flujo de trabajo general para construir / probar modelos de aprendizaje automático supervisados. En particular, el modelo creado a través de kNN es solo los datos etiquetados disponibles, colocados en algún espacio métrico.

En otras palabras, para kNN, no hay paso de entrenamiento porque no hay un modelo para construir. La coincidencia de plantillas y la interpolación es todo lo que está sucediendo en kNN.

Tampoco hay un paso de validación . La validación mide la precisión del modelo contra los datos de entrenamiento en función del recuento de iteraciones (progreso del entrenamiento). El sobreajuste se evidencia por el movimiento ascendente de esta curva empírica e indica el punto en el que debe cesar el entrenamiento. En otras palabras, como no se construye ningún modelo, no hay nada que validar.

Pero aún puede probar, es decir, evaluar la calidad de las predicciones utilizando datos en los que los objetivos (etiquetas o puntajes) están ocultos del modelo.

Pero incluso las pruebas son un poco diferentes para kNN frente a otras técnicas supervisadas de aprendizaje automático. En particular, para kNN, la calidad de las predicciones depende, por supuesto, de la cantidad de datos, o más precisamente, de la densidad (número de puntos por unidad de volumen), es decir, si va a predecir valores desconocidos promediando los 2-3 puntos más cercanos, entonces ayuda si tienes puntos cercanos al que deseas predecir. Por lo tanto, mantenga el tamaño del conjunto de pruebas pequeño , o mejor aún, use k-fold cross-validation o leave-one-out cross-validation, los cuales le dan una prueba de modelo más completa pero no a costa de reducir el tamaño de su población vecina kNN.

Estoy extrayendo funciones de imagen de 10 clases con 1000 imágenes cada una. Como hay 50 funciones que puedo extraer, estoy pensando en encontrar la mejor combinación de funciones para usar aquí. Los conjuntos de entrenamiento, validación y prueba se dividen de la siguiente manera:

Training set = 70% Validation set = 15% Test set = 15%

Utilizo la selección de funciones avanzadas en el conjunto de validación para encontrar la mejor combinación de características y finalmente uso el conjunto de pruebas para verificar la precisión general. ¿Podría alguien decirme si lo estoy haciendo bien?