exponenta event banner

sortClasses

Сортировать классы матричной диаграммы путаницы

Описание

пример

sortClasses(cm,order) сортирует классы матричной диаграммы путаницы cm в порядке, указанном order. Классы можно отсортировать в их натуральном порядке, по значениям по диагонали матрицы путаницы или в заданном фиксированном порядке.

Примеры

свернуть все

Загрузите образец прогнозируемых и истинных меток для проблемы классификации. trueLabels являются истинными метками для проблемы классификации изображений и predictedLabels являются предсказаниями сверточной нейронной сети. Создайте матричную диаграмму путаницы.

load('Cifar10Labels.mat','trueLabels','predictedLabels');
figure
cm = confusionchart(trueLabels,predictedLabels);

Figure contains an object of type ConfusionMatrixChart.

Измените порядок классов матричной диаграммы путаницы таким образом, чтобы классы находились в фиксированном порядке.

sortClasses(cm, ...
    ["cat" "dog" "horse" "deer" "bird" "frog", ...
    "airplane" "ship" "automobile" "truck"])

Figure contains an object of type ConfusionMatrixChart.

Загрузите образец прогнозируемых и истинных меток для проблемы классификации. trueLabels являются истинными метками для проблемы классификации изображений и predictedLabels являются предсказаниями сверточной нейронной сети. Создание матричной диаграммы путаницы с суммами столбцов и строк

load('Cifar10Labels.mat','trueLabels','predictedLabels');
figure
cm = confusionchart(trueLabels,predictedLabels, ...
    'ColumnSummary','column-normalized', ...
    'RowSummary','row-normalized');

Figure contains an object of type ConfusionMatrixChart.

Чтобы отсортировать классы матрицы путаницы по отзыву класса (истинно положительная скорость), нормализуйте значения ячеек в каждой строке, то есть по количеству наблюдений, имеющих одинаковый истинный класс. Отсортируйте классы по соответствующим диагональным значениям ячеек и сбросьте нормализацию значений ячеек. Классы теперь отсортированы таким образом, что проценты в синих ячейках в сводках строк справа уменьшаются.

cm.Normalization = 'row-normalized';
sortClasses(cm,'descending-diagonal');
cm.Normalization = 'absolute';

Figure contains an object of type ConfusionMatrixChart.

Чтобы отсортировать классы по точности класса (положительному прогностическому значению), нормализуйте значения ячеек в каждом столбце, то есть по количеству наблюдений, имеющих один и тот же прогнозируемый класс. Отсортируйте классы по соответствующим диагональным значениям ячеек и сбросьте нормализацию значений ячеек. Классы теперь отсортированы таким образом, что проценты в синих ячейках в сводках столбцов внизу уменьшаются.

cm.Normalization = 'column-normalized';
sortClasses(cm,'descending-diagonal');
cm.Normalization = 'absolute';

Figure contains an object of type ConfusionMatrixChart.

Входные аргументы

свернуть все

Матричная диаграмма путаницы, указанная как ConfusionMatrixChart объект. Чтобы создать матричную диаграмму путаницы, используйте confusionchart,

Порядок сортировки классов матричной диаграммы путаницы, указанный как одно из следующих значений:

  • 'auto' - Сортирует классы в их естественный порядок, как определено sort функция. Например, если метки классов матричной диаграммы путаницы являются строковым вектором, то сортировка выполняется в алфавитном порядке. Если метки класса являются порядковым категориальным вектором, используйте порядок меток класса.

  • 'ascending-diagonal' - Сортировать классы так, чтобы значения по диагонали матрицы путаницы увеличивались сверху слева вниз направо.

  • 'descending-diagonal' - Сортировать классы так, чтобы значения по диагонали матрицы путаницы уменьшались сверху слева вниз направо.

  • 'cluster' (Требуется Toolbox™ статистики и машинного обучения) - сортировка классов по кластерам аналогичных классов. Можно настроить кластеризацию с помощью pdist(Набор инструментов для статистики и машинного обучения), linkage (Статистика и инструментарий машинного обучения), и optimalleaforder (Статистика и инструментарий машинного обучения). Дополнительные сведения см. в разделе Сортировка классов по аналогичным классам кластера (статистика и инструментарий машинного обучения).

  • Массив - сортировка классов в уникальном порядке, определяемом категориальным вектором, числовым вектором, строковым вектором, символьным массивом, массивом ячеек символьных векторов или логическим вектором. Массив должен быть перестановкой ClassLabels свойство матрицы путаницы.

Пример: sortClasses(cm,'ascending-diagonal')

Пример: sortClasses(cm,["owl","cat","toad"])

Представлен в R2018b