sortClasses

Сортировка классов матричного графика беспорядка

Синтаксис

Описание

пример

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

Примеры

свернуть все

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

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

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

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

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

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

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

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

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

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

Входные параметры

свернуть все

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

Закажите, в котором можно отсортировать классы матричного графика беспорядка в виде одного из этих значений:

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

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

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

  • 'cluster' (Требует Statistics and Machine Learning Toolbox™) — сортировка классов, чтобы кластеризировать подобные классы. Можно настроить кластеризацию при помощи pdist, linkage, и optimalleaforder функции. Для получения дополнительной информации смотрите сортировку Классов к Кластерным Подобным Классам (Statistics and Machine Learning Toolbox).

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

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

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

Введенный в R2018b