![enter image description here](https://i.stack.imgur.com/evpiu.png)
Я искал ответ на этот вопрос в Интернете, включая предложение при написании названия, но все еще безрезультатно, так что, надеюсь, кто-то может помочь!
Я пытаюсь построить путаницу с помощью sci-kit learn. Это происходит после модели керас.
Это странно, потому что у меня возникла следующая проблема: Для обучающего и тестового набора исходных данных ... Я могу построить матрицу путаницы следующим образом (обратите внимание, что это проблема с несколькими метками, поэтому данные должны быть подмножеством для разных меток.
Отлично работает следующее:
cm = confusion_matrix(y_train[:,0:6].argmax(axis=1), trainpred[:,0:6].argmax(axis=1))
и 6:18 и т. Д. ... пока все классы не будут подмножеством. Матрица путаницы, которая образуется в результате, отражает истинный результат модели керас ..
Проблема возникает при развертывании модели на совершенно невидимых данных.
Я развернул модель, позвонив по номеру model.predict()
, и получил результаты, как указано выше. Тем не менее, теперь я не могу подставить матрицы путаницы таким же образом.
Код cm = confusion_matrix и т. Д. Приводит к тому, что выходные данные CM будут неправильными размерами, даже при указании 0: 6 и т. Д.
Поэтому я использовал приведенный выше код, но с модификацией аргумента метки:
age[0,1,2,3,4]
organ[5,6,7,8]
cm = confusion_matrix(y_train[:,0:6].argmax(axis=1), trainpred[:,0:6].argmax(axis=1), labels=age)
Метка FIRST (1: 5) работает отлично ... Однако следующие метки - нет! Я не получаю правильные значения в матрицах путаницы, и сопоставление также неверно для тех, которые там.
Для сравнения: в невидимых тестовых данных содержится более 400 образцов.
model.predict показывает очень высокую классификацию и правильные оценки для большинства этикеток.
вызов CM = ytest [:, 4: 8] и т. Д. Действительно производит матрицу 4x4, однако там есть как 5 значений, а не 400, и те значения, которые там находятся, не соответствуют должным образом.
Кроме того ... с возрастом меток 012345, подстановка ytest в 0: 6 приводит к формированию правильной матрицы путаницы (я не уверен, почему эти 6 должны быть включены в подмножество ... тем не менее, я пытался различные комбинации с одной и той же проблемой!
Я искал высоко и низко этот ответ, поэтому был бы очень признателен за некоторую помощь, поскольку он невероятно расстраивает. любой другой код / информацию, которую я могу предоставить, я буду рад !!
Большое спасибо!