Cómo aplicar PCA para la reducción de dimensionalidad y SVM para agrupar y clasificar los patrones usando C ++ OpenCV

Paso 1: Divida el conjunto de datos de la imagen en 3 subconjuntos. Use el primer subconjunto para calcular los vectores propios de PCA. Use el segundo subconjunto para entrenar al clasificador SVM y el tercero para probar el rendimiento del clasificador SVM.

Paso 2: Utilizando las primeras imágenes de subconjuntos, construya una matriz con dimensiones (n_images, img_width * img_height) que contenga las intensidades de píxeles de sus n_images.

Paso 2: Usando la clase PCA con la varianza retenida apropiada (0.95 por ejemplo), calcule la transformación. Aplica la transformación en tus imágenes de entrenamiento usando la función backProject.

Paso 3: Ahora que tiene una representación de su conjunto de entrenamiento con dimensionalidad reducida, construya dos matrices, una que contenga representación de dimensionalidad reducida y otra que contenga las etiquetas de clasificación.

Paso 4: puedes entrenar un clasificador SVM. Use la función de predicción en el conjunto de datos de prueba para verificar la precisión de sus predicciones.

More Interesting

¿Cómo es ser aconsejado por Sunita Sarawagi?

Como programador novato, ¿realmente necesito conocer toda la documentación de un lenguaje o marco de programación para comenzar, o lo aprenderé acumulativamente mientras trabajo en un proyecto pequeño?

¿Cuáles son algunos marcos de tiempo realistas para dominar diversas habilidades de programación, como el dominio de Python para la ciencia de datos, git, etc.?

¿Cuáles son algunas estructuras de datos esenciales y conocimiento de algoritmos necesarios para estudiar ciencia de datos?

¿Cuál es la diferencia entre SVM y ANN?

¿Hay algún otro clasificador de aprendizaje profundo como softmax?

¿Cuál es la diferencia entre el análisis de opinión y el análisis de tonalidad?

¿Cómo reconoce la red neuronal convolucional los objetos de las imágenes sin la percepción o reconocimiento 3D?

¿Cómo calcula Gensim.Word2vec la probabilidad de texto usando una puntuación de modelo?

¿Cuándo debo aprender tensorflow?

Con el desarrollo de marcos informáticos escalables como TensorFlow y Spark, ¿seguirán siendo relevantes los marcos de una sola máquina? NumPy podría ser solo API.

¿Qué tipo de servicio suele ofrecer el inicio del procesamiento del lenguaje natural?

¿Es necesario un MS o PhD en Machine Learning para trabajar en este campo en alguna empresa?

¿Cuál es la relación de la función objetivo de muestreo negativo con la función objetivo original en word2vec?

¿Cuál es un ejemplo ilustrativo donde LDA y SVM dan límites de decisión diferentes?