Clasificación de análisis discriminante
Un análisis discriminante es un método de clasificación. Asume que clases diferentes generan datos basados en varias distribuciones gaussianas.
Para entrenar (crear) un clasificador, la función ajustada estima los parámetros de una distribución gaussiana para cada clase (consulte Creating Discriminant Analysis Model).
Para predecir las clases de datos nuevos, el clasificador entrenado encuentra la clase con el menor coste de error de clasificación (consulte Prediction Using Discriminant Analysis Models).
Los análisis discriminantes lineales también se conocen como análisis discriminantes de Fisher, denominados así por su inventor: sir R. A. Fisher [1].
Crear clasificadores de análisis discriminante
En este ejemplo se muestra cómo entrenar un clasificador de análisis discriminante básico para clasificar iris en los datos de iris de Fisher.
Cargue los datos.
load fisheriris
Cree un clasificador de análisis discriminante (lineal) predeterminado.
MdlLinear = fitcdiscr(meas,species);
Para visualizar los límites de clasificación lineal de los datos en 2D, consulte Create and Visualize Discriminant Analysis Classifier.
Clasifique un iris con dimensiones medias.
meanmeas = mean(meas); meanclass = predict(MdlLinear,meanmeas)
meanclass = 1x1 cell array
{'versicolor'}
Cree un clasificador cuadrático.
MdlQuadratic = fitcdiscr(meas,species,'DiscrimType','quadratic');
Para visualizar los límites de clasificación cuadrática de los datos en 2D, consulte Create and Visualize Discriminant Analysis Classifier.
Clasifique un iris con dimensiones medias usando un clasificador cuadrático.
meanclass2 = predict(MdlQuadratic,meanmeas)
meanclass2 = 1x1 cell array
{'versicolor'}
Referencias
[1] Fisher, R. A. "The Use of Multiple Measurements in Taxonomic Problems." Annals of Eugenics, Vol. 7, pp. 179–188, 1936. Available at https://digital.library.adelaide.edu.au/dspace/handle/2440/15227.