Сортировка классов матричного графика беспорядка
Загрузите выборку предсказанных и истинных меток для проблемы классификации. 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';
cm
— Матричный график беспорядкаConfusionMatrixChart
объектМатричный график беспорядка в виде ConfusionMatrixChart
объект. Чтобы создать матричный график беспорядка, используйте confusionchart
,
order
— Закажите, в котором можно отсортировать классы'auto'
| 'ascending-diagonal'
| 'descending-diagonal'
| массивЗакажите, в котором можно отсортировать классы матричного графика беспорядка в виде одного из этих значений:
'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"])
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.