Вычислите матрицу беспорядка для проблемы классификации
использование C = confusionmat(group,grouphat,'Order',grouporder)grouporder заказать строки и столбцы C.
Загрузите выборку предсказанных и истинных меток для проблемы классификации. trueLabels истинные метки для проблемы классификации изображений и predictedLabels предсказания сверточной нейронной сети.
load('Cifar10Labels.mat','trueLabels','predictedLabels');
Вычислите числовую матрицу беспорядка. order порядок классов в матрице беспорядка.
[m,order] = confusionmat(trueLabels,predictedLabels)
m = 10×10
923 4 21 8 4 1 5 5 23 6
5 972 2 0 0 0 0 1 5 15
26 2 892 30 13 8 17 5 4 3
12 4 32 826 24 48 30 12 5 7
5 1 28 24 898 13 14 14 2 1
7 2 28 111 18 801 13 17 0 3
5 0 16 27 3 4 943 1 1 0
9 1 14 13 22 17 3 915 2 4
37 10 4 4 0 1 2 1 931 10
20 39 3 3 0 0 2 1 9 923
order = 10x1 categorical
airplane
automobile
bird
cat
deer
dog
frog
horse
ship
truck
Можно использовать confusionchart построить матрицу беспорядка как матричный график беспорядка.
figure cm = confusionchart(m,order);

Вы не должны вычислять матрицу беспорядка сначала и затем строить ее. Вместо этого постройте матричный график беспорядка непосредственно от истины и предсказанных меток. Можно также добавить столбец и сводные данные строки и заголовок.
figure cm = confusionchart(trueLabels,predictedLabels, ... 'Title','My Title', ... 'RowSummary','row-normalized', ... 'ColumnSummary','column-normalized');

ConfusionMatrixChart объектно-ориентированная память числовая матрица беспорядка в NormalizedValues свойство и классы в ClassLabels свойство.
cm.NormalizedValues
ans = 10×10
923 4 21 8 4 1 5 5 23 6
5 972 2 0 0 0 0 1 5 15
26 2 892 30 13 8 17 5 4 3
12 4 32 826 24 48 30 12 5 7
5 1 28 24 898 13 14 14 2 1
7 2 28 111 18 801 13 17 0 3
5 0 16 27 3 4 943 1 1 0
9 1 14 13 22 17 3 915 2 4
37 10 4 4 0 1 2 1 931 10
20 39 3 3 0 0 2 1 9 923
cm.ClassLabels
ans = 10x1 categorical
airplane
automobile
bird
cat
deer
dog
frog
horse
ship
truck
group — Известные группыИзвестные группы для категоризации наблюдений в виде числового вектора, логического вектора, символьного массива, массива строк, массива ячеек из символьных векторов или категориального вектора.
group сгруппированная переменная того же типа как grouphat. group аргумент должен иметь то же количество наблюдений как grouphat, как описано в Сгруппированных переменных (Statistics and Machine Learning Toolbox). confusionmat функционируйте обрабатывает символьные массивы и строковые массивы как массивы ячеек из символьных векторов. Кроме того, confusionmat обработки NaN, пустой, и 'undefined' значения в group как отсутствующие значения и не считает их как отличные группы или категории.
Пример: {'Male','Female','Female','Male','Female'}
Типы данных: single | double | logical | char | string | cell | categorical
grouphat — Предсказанные группыПредсказанные группы для категоризации наблюдений в виде числового вектора, логического вектора, символьного массива, массива строк, массива ячеек из символьных векторов или категориального вектора.
grouphat сгруппированная переменная того же типа как group. grouphat аргумент должен иметь то же количество наблюдений как group, как описано в Сгруппированных переменных (Statistics and Machine Learning Toolbox). confusionmat функционируйте обрабатывает символьные массивы и строковые массивы как массивы ячеек из символьных векторов. Кроме того, confusionmat обработки NaN, пустой, и 'undefined' значения в grouphat как отсутствующие значения и не считает их как отличные группы или категории.
Пример: [1 0 0 1 0]
Типы данных: single | double | logical | char | string | cell | categorical
grouporder — Порядок группыПорядок группы в виде числового вектора, логического вектора, символьного массива, массива строк, массива ячеек из символьных векторов или категориального вектора.
grouporder сгруппированная переменная, содержащая все отличные элементы в group и grouphat. Задайте grouporder задавать порядок строк и столбцов C. Если grouporder содержит элементы, которые не находятся в group или grouphat, соответствующие записи в C 0.
По умолчанию порядок группы зависит от типа данных s = [group;grouphat]:
Для числовых и логических векторов порядок является отсортированным порядком s.
Для категориальных векторов порядок является порядком, возвращенным .categoriesS
Для других типов данных порядок является порядком первого выступления в s.
Пример: 'order',{'setosa','versicolor','virginica'}
Типы данных: single | double | logical | char | string | cell | categorical
C — Матрица беспорядкаМатрица беспорядка, возвращенная как квадратная матрица с размером, равняется общему количеству отличных элементов в group и grouphat аргументы. C(i,j) количество наблюдений, которые, как известно, были в группе i но предсказанный, чтобы быть в группе j.
Строки и столбцы C имейте идентичное упорядоченное расположение тех же индексов группы. По умолчанию порядок группы зависит от типа данных s = [group;grouphat]:
Для числовых и логических векторов порядок является отсортированным порядком s.
Для категориальных векторов порядок является порядком, возвращенным .categoriesS
Для других типов данных порядок является порядком первого выступления в s.
Чтобы изменить порядок, задайте grouporder,
confusionmat функционируйте обрабатывает NaN, пустой, и 'undefined' значения в сгруппированных переменных как отсутствующие значения и не включают их в строки и столбцы C.
order — Порядок строк и столбцовПорядок строк и столбцов в C, возвращенный как числовой вектор, логический вектор, категориальный вектор или массив ячеек из символьных векторов. Если group и grouphat символьные массивы, строковые массивы или массивы ячеек из символьных векторов, затем переменная order массив ячеек из символьных векторов. В противном случае, order имеет тот же тип как group и grouphat.
Используйте confusionchart вычислить и построить матрицу беспорядка. Кроме того, confusionchart статистика сводных данных отображений о ваших данных и видах классы матрицы беспорядка согласно мудрой классом точности (положительное прогнозирующее значение), мудрый классом отзыв (истинный положительный уровень), или общее количество правильно классифицированных наблюдений.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.