2015-10-12 3 views
1

Я пытаюсь использовать обученную нейронную сеть для классификации новых автомобилей в Matlab. Каждый объект транспортного средства имеет четыре функции (четырехмерное пространственное пространство). Есть 3 класса транспортных средств: маленький, средний и большой. Когда я использую новый вход, сеть возвращает матрицу 3x4. Как получить предсказанный класс из этой матрицы? я использовал следующее:Использование обученной нейронной сети для классификации новых данных

newprediction = sim(net,XM38) 

Выхода:

newprediction = 

0.0018 0.9915 0.9938 0.0018 
0.0694 0.0085 0.0062 0.0694 
0.9287 0.0001 0.0000 0.9287 

Как интерпретировать эти результаты и таким образом получить прогнозируемый класс?

+0

Вывод NN определяется вами (или тем, кто его обучил). Вы решили, что он должен выводить, поэтому вы должны быть тем, кто знает, как его интерпретировать! Если бы я научил NN идентифицировать 3 объекта, у моего NN было бы 3 выхода. –

+1

Я предполагаю, что вы дали вашей сети 4 случая/записи, чтобы попробовать классифицировать? Обычно вывод будет тем, что у вас есть, но транспонирован, но в вашем случае это выглядит так, что каждый класс представлен строкой и каждым экземпляром столбцом. Классификация экземпляра - это вопрос выбора того, какой класс показал наивысшую вероятность. В вашем случае ничто не является двусмысленным, каждый столбец имеет одну строку, которая почти одна, а остальные - почти равны нулю. – Dan

+0

Скажите, что каждая строка представляет класс. Итак, я вычисляю величину строки и выбираю наивысшую? –

ответ

0

Похоже, что ваш выход является прогнозом для каждого транспортного средства, принадлежащего каждому классу, выраженного в процентах [0,1]. Если это так, то классификация должна быть классом с наивысшей вероятностью.

Однако вы должны проверить, как вы определили выход сети для двойной проверки.

Смежные вопросы