Присвоить веса переменным в кластерном анализе

12

Я хочу назначить разные веса переменным в моем кластерном анализе, но моя программа (Stata), похоже, не имеет возможности для этого, поэтому мне нужно сделать это вручную.

Представьте себе 4 переменные A, B, C, D. Веса для этих переменных должны быть

w(A)=50%
w(B)=25%
w(C)=10%
w(D)=15%

Мне интересно, действительно ли один из следующих двух подходов сработает:

  1. Сначала я стандартизирую все переменные (например, по их диапазону). Затем я умножаю каждую стандартизированную переменную на их вес. Затем выполните кластерный анализ.
  2. Я умножаю все переменные на их вес и впоследствии стандартизирую их. Затем выполните кластерный анализ.

Или обе идеи полная чушь?

[РЕДАКТИРОВАТЬ] Алгоритмы кластеризации (я пробую 3 различных), которые я хочу использовать, это k-средних, средневзвешенная связь и средняя связь. Я планирую использовать средневзвешенную связь, чтобы определить большое количество кластеров, которые я потом подключу к k-means.

SPi
источник
1
Оба способа, как правило, не верны. Умножение значений переменных не эквивалентно взвешиванию важности переменных для кластеризации. Если в программе нет опции взвешивания, вы можете делать это иногда с данными по своему усмотрению - но это зависит от точного характера вашей кластеризации. Итак, опишите (в вашем вопросе) детали вашей кластеризации: какой алгоритм и метод вы собираетесь использовать.
ttnphns
2
Обратите внимание, что самый простой и универсальный способ взвешивания переменных (а веса являются целыми числами или могут быть сделаны целыми числами) заключается в простом распространении переменных, умноженных на эти веса. В вашем примере вы можете взять 50 As, 25 Bs, 10 Cs, 15 D в вашей кластеризации.
ttnphns
8
Или альтернатива: если вы используете кластеризацию, основанную на евклидовой мере, или вы используете k-means, умножьте каждую переменную на квадратный корень ее веса. Разумеется, это умножение следует выполнять после любой предварительной обработки (например, стандартизации), которую вы можете выполнить перед кластеризацией.
ttnphns

Ответы:

7

Один из способов присвоить вес переменной - изменить ее масштаб. Уловка работает для алгоритмов кластеризации, которые вы упоминаете, а именно. k-средних, средневзвешенная связь и средняя связь.

Кауфман, Леонард и Питер Дж. Руссеув. « Поиск групп в данных: введение в кластерный анализ ». (2005) - стр. 11:

Выбор единиц измерения приводит к относительному весу переменных. Выражение переменной в меньших единицах приведет к увеличению диапазона для этой переменной, что затем окажет большое влияние на результирующую структуру. С другой стороны, стандартизируя, мы пытаемся придать всем переменным одинаковый вес в надежде достичь объективности. Как таковой, он может быть использован практикующим, который не обладает предварительными знаниями. Однако вполне может быть, что некоторые переменные по своей природе более важны, чем другие в конкретном приложении, и тогда присвоение весов должно основываться на знании предмета (см., Например, Abrahamowicz, 1985).

С другой стороны, были попытки разработать методы кластеризации, которые не зависят от масштаба переменных (Фридман и Рубин, 1967). Предложение Харди и Рассона (1982) состоит в поиске раздела, который минимизирует общий объем выпуклых оболочек скоплений. В принципе, такой метод является инвариантным относительно линейных преобразований данных, но, к сожалению, не существует алгоритма для его реализации (кроме аппроксимации, которая ограничена двумя измерениями). Поэтому в настоящее время дилемма стандартизации кажется неизбежной, и программы, описанные в этой книге, оставляют выбор за пользователем.

Абрахамович, М. (1985). Использование нечисловой информации для измерения различий, документ, представленный на четвертом Европейском совещании Психометрического общества и классификационных обществ, 2-5 июля, Кембридж (Великобритания).

Фридман, HP, и Рубин, J. (1967), О некоторых инвариантных критериев для группировки данных. Дж. Amer. Statist. ASSOC6., 2, 1159-1178.

Hardy, A. и Rasson, JP (1982), Une nouvelle Approche des Проблемы проблем классификации автоматики, Statist. Анальный. Donnies, 7, 41-56.

Франк Дернонкур
источник
1
Ваше первое упоминание каким-то образом искажено: Леонард Кауфман и Питер Дж. Руссее являются авторами книги, на которую вы ссылаетесь.
Ник Кокс
О, спасибо за то, что указал на это ... Меня обвинил Лавуазье, который допустил ошибку на их странице "Авторы: SEWELL Grandville, ROUSSEEUW Питер Дж.", Которая, в свою очередь, облажалась с Гшоларом, который я использовал для получения ссылки.
Франк Дернонкур
Спасибо @FranckDernoncourt! Если масштаб (и, следовательно, диапазон) переменной определяет ее вес, не приблизился бы к 1.) в моем первоначальном вопросе было бы как-то правильное решение?
SPi
2
Да, подход 1 является правильным и соответствует тому, что Кауфман, Леонард и Питер Дж. Руссеув говорят в параграфах, которые я цитировал в ответе. Подход 2 был бы бесполезен, так как стандартизация снимает вес :)
Franck Dernoncourt