MATLAB: кластеризация самоорганизующейся карты (SOM)

Я пытаюсь сгруппировать некоторые изображения в зависимости от углов между частями тела.

Функции, извлеченные из каждого изображения:

angle1 : torso - torso
angle2 : torso - upper left arm
..
angle10: torso - lower right foot

Поэтому входные данные представляют собой матрицу размером 1057x10, где 1057 обозначает количество изображений, а 10 обозначает углы частей тела с туловищем. Аналогичным образом набор тестов представляет собой матрицу 821x10.

Я хочу, чтобы все строки во входных данных были сгруппированы с 88 кластерами. Затем я буду использовать эти кластеры, чтобы найти, в какие кластеры попадают TestData?

В предыдущей работе я использовалK-средства кластеризации что очень просто. Мы просто просим K-Means сгруппировать данные в 88 кластеров. И реализуйте другой метод, который вычисляет расстояние между каждой строкой в тестовых данных и центрами каждого кластера, а затем выбирает наименьшие значения. Это кластер соответствующей строки входных данных.

У меня есть два вопроса:

Можно ли сделать это с помощьюSOM в MATLAB? AFAIK SOM предназначены для визуальной кластеризации. Но мне нужно знать фактический класс каждого кластера, чтобы впоследствии я мог пометить свои тестовые данные, рассчитав, к какому кластеру он принадлежит.

У вас есть лучшее решение?

Ответы на вопрос(1)

Ваш ответ на вопрос