Как работает инструмент Анализ группирования (Grouping Analysis)
Когда мы смотрим на мир вокруг нас, мы автоматически организуем, группируем, дифференцируем и классифицируем то, что видим, чтобы лучше понять окружающие нас объекты. Такой тип ментальной классификации необходим для обучения и понимания. Аналогично для лучшего изучения данных можно использовать инструмент Анализ группирования (Grouping Analysis). Он выполняет процедуру классификации, которая пытается найти естественные кластеры в данных. Используя заданное число групп, инструмент ищет решение, в котором все объекты в каждой группе наиболее похожи, а сами группы максимально отличаются друг от друга. Сходство объектов основано на наборе атрибутов, указываемых для параметра Поля анализа (Analysis Fields), которые при необходимости могут накладывать пространственные или пространственно-временные ограничения. При указании пространственных или пространственно-временных ограничений алгоритм использует граф связности (минимальное остовное дерево) для поиска естественных групп. Если выбрана опция NO_SPATIAL_CONSTRAINT, инструмент Анализ группирования (Grouping Analysis) использует алгоритм K-средних.
Хотя существует множество алгоритмов кластерного анализа, все из них классифицируются как NP-трудными. Это означает, что единственный способ гарантировать, что решение идеально максимизирует сходства в группе и различия между группами — перепробовать все возможные комбинации объектов, которые требуется сгруппировать. Хотя этого можно добиться при небольшом количестве объектов, задача быстро становится трудноразрешимой.
При решении не только нельзя найти оптимальное решение, но также нельзя определить алгоритм группировки, который будет работать лучше всего для всех возможных сценариев. Группы бывают разных форм, размеров и плотностей. Атрибуты могут содержать данные с различными диапазонами, симметрией, непрерывностью и единицами измерений. Теперь вам понятно, почему столько разных алгоритмов кластеризации было разработано за последние 50 лет. Инструмент Анализ группирования (Grouping Analysis) следует рассматривать как исследовательский инструмент, позволяющий узнать больше о структурах в ваших данных.
Возможные приложения
Вот некоторые способы использования этого инструмента.
- Предположим, что у вас есть образцы сальмонеллы из ферм в вашей области. К атрибутам относятся тип/класс, расположение, а также дата и время. Чтобы лучше понять, как бактерии передаются и распространяются, можно использовать инструмент Анализ группирования (Grouping Analysis), чтобы разбить образцы на отдельные "вспышки". Вы можете использовать пространственно-временное ограничение, так как образцы для одной вспышки будут располагаться рядом друг с другом в пространстве и времени, а также будут связаны с одним типом/классом бактерий. После определения групп можно использовать другие инструменты анализа пространственных шаблонов, такие как Эллипс стандартных отклонений (Standard Deviational Ellipse), Усредненный центр (Mean Center) или Ближайший объект (Near), для анализа каждой вспышки.
- Если вы собрали данные о наблюдении животных, чтобы лучше понять территории их обитания, то и здесь инструмент Анализ группирования (Grouping Analysis) может оказаться полезным. Знания о том, где и когда собираются стаи лосося, например, могут помочь в проектировании защищенных областей для обеспечения успешного нереста.
- Агрономам может потребоваться классифицировать разные типы почвы на изучаемой территории. Используя инструмент Анализ группирования (Grouping Analysis) с характеристиками почвы, полученными из ряда образцов, можно определить кластеры разных, пространственно непрерывных типов почв.
- Группируя клиентов на основе покупательских привычек, демографических характеристик и/или закономерностей перемещения, можно создать эффективную маркетинговую стратегию для продукции вашей компании.
- Службам городского планирования часто нужно разделять города на районы, чтобы эффективно размещать муниципальные учреждения и развивать локальные сообщества. Используя инструмент Анализ группирования (Grouping Analysis) с физическими и демографическими характеристиками городских кварталов, службы городского планирования могут определить пространственно непрерывные области города со схожими физическими и демографическими характеристиками.
- Экологическая ошибка — это известная задача статистического влияния при выполнении анализа на агрегированных данных. Часто схема агрегирования, используемая для анализа, никак не соотносится с тем, что нужно анализировать. Данные переписи, например, агрегируются на основе распределений популяций, что может быть не лучшим вариантом для анализа лесных пожаров. Разбиение наименьших единиц агрегирования на однородные регионы с набором атрибутов, точно отражающих аналитические задачи — это эффективный метод, позволяющий сократить влияние агрегирования и избежать экологической ошибки.
Входные данные
Этот инструмент принимает входные объекты точек, полилиний и полигонов, а также поле уникального ID, путь для выходного класса объектов, один или несколько полей анализа, целое значение, представляющее количество групп, которое требуется создать, и тип пространственного ограничения (если необходимо), который применяется с алгоритмом группировки. Существует также ряд дополнительных параметров, один из которых позволяет создать PDF-файл выходного отчета.
Поля анализа
Выберите числовые поля, которые отражают относительные, интервальные или порядковые системы измерений. Хотя номинальные данные могут быть представлены с помощью бинарных переменных, это обычно не работает, как и другие числовые типы переменных. Например, можно создать переменную Rural и назначить каждому объекту (например, каждому смежному кварталу переписи) значение 1, если это сельский объект, или значение 0, если это городской объект. Лучшее представление для использования этой переменной с инструментом Анализ группирования (Grouping Analysis) — это количество или пропорция сельской площади, связанной с каждым объектом.
Необходимо выбрать переменные, которые, по вашему мнению, будут отличать одну группу объектов от другой. Предположим, вы хотите сгруппировать школьные округа по успеваемости учеников в стандартных тестах. Вы можете выбрать поля анализа, такие как общие оценки по тестам, результаты для каждого предмета, например математика или литература, процент учеников, получивших минимальную оценку по тесту, и т. д. После выполнения инструмента Анализ группирования (Grouping Analysis) для каждой переменной вычисляется значение R2. В сводных данных ниже, школьные округа сгруппированы на основе баллов учеников, набранных при тестировании, процента взрослых, которые не окончили среднюю школу, затрат на каждого ученика и среднего отношение учеников к учителям. Обратите внимание, что у переменной TestScores самое большое значение R2. Это означает, что данная переменная наиболее эффективно разделяет школьные округа на группы. Значение R2 отражает, в какой степени вариация в исходных данных TestScores была сохранена в процессе группировки. Чем больше R2 для определенной переменной, тем лучше переменная различает ваши объекты.
R2 вычисляется следующим образом:
(TSS — ESS) / TSS
Где TSS — общая сумма квадратов, а ESS — объясненная сумма квадратов. TSS вычисляется за счет возведения в квадрат и суммирования отклонений от глобального среднего значения для переменной. ESS вычисляется одинаково, только отклонения применяются по группам: каждое значение вычитается из среднего значения для группы, которой оно принадлежит, а затем возводится в квадрат и суммируется.
Число групп
Иногда вы будете знать количество групп, которое лучше всего подходит для вашей задачи. Например, если у вас пять менеджеров по продажам, и вы хотите назначить каждому из них собственный регион, вы используете значение 5 для параметра Количество групп (Number of Groups). Но во многих случаях критерий для выбора точного числа групп не доступен. Вместо этого вам нужно получить число, которое лучше всего позволяет классифицировать сходства и различия объектов. В этой ситуации можно установить флажок Оценить оптимальное число групп (Evaluate Optimal Number of Groups) и позволить инструменту Анализ группирования (Grouping Analysis) оценить эффективность деления объектов на 2, 3, 4 и до 15 групп. Эффективность группировки измеряется с помощью псевдо-F-статистики Калински-Харабаза, которая также отражает сходство объектов в группе и различие между группами:
Пространственные ограничения
Если вы хотите, чтобы полученные группы были пространственно близки, укажите пространственное ограничение. Опции CONTIGUITY включены для полигональных классов объектов и указывают, что объекты могут входить в одну группу, только если у них есть общее ребро (CONTIGUITY_EDGES_ONLY) или общее ребро или вершина (CONTIGUITY_EDGES_CORNERS) с другим участником группы. Опции непрерывности полигонов — это не очень хороший выбор, но если набор данных содержит кластеры несмежных полигонов или полигонов без смежных соседей:
Опции DELAUNAY_TRIANGULATION и K_NEAREST_NEIGHBORS указывают, что объект включается в группу, только если хотя бы один другой объект является естественным соседом (триангуляция Делоне) или K ближайшим соседом. Если выбрать опцию K_NEAREST_NEIGHBORS и ввести значение 12 для параметра Количество соседей (Number of Neighbors), каждый объект группе будет находиться в числе 12 ближайших соседей, по крайней мере, от одного другого объекта в группе.
Опцию DELAUNAY_TRIANGULATION не следует использовать для наборов данных с совпадающими объектами. Кроме того, так как метод триангуляции Делоне преобразует объекты в полигоны Тиссена для определения соседских отношений, особенно когда в наборе данных есть полигональные объекты и иногда периферийные объекты, результаты использования этой опции не всегда будут ожидаемыми. На рисунке ниже обратите внимание на то, что некоторые из сгруппированных первоначальных полигонов не являются смежными. Когда они преобразуются в полигоны Тиссена, у всех сгруппированных объектов есть общее ребро:
Если полученные группы должны быть близкими в пространстве и времени, создайте файл матрицы пространственных весов (SWM) с помощью инструмента Построить матрицу пространственных весов (Generate Spatial Weights Matrix) и выберите опцию SPACE_TIME_WINDOW для параметра Концептуализацция пространственных взаимоотношений (Conceptualization of Spatial Relationships). Затем можно указать созданный с помощью инструмента Построить матрицу пространственных весов (Generate Spatial Weights Matrix) SWM-файл в параметре Файл матрицы весов (Weights Matrix File) при запуске инструмента Анализ группирования (Grouping Analysis).
Хотя пространственные отношения между объектами хранятся в SWM-файле и используются инструментом Анализ группирования (Grouping Analysis) для наложения пространственных ограничений, фактически взвешивания не происходит. SWM-файл используется только для отслеживания того, какие объекты можно, а какие нельзя включить в одну группу.
Для многих аналитических операций пространственные или пространственно-временные ограничения не являются ни обязательными, ни полезными. Предположим, например, что нужно сгруппировать преступления по атрибутам нарушителя (рост, возраст, серьезность преступления и т. д.). Хотя преступления, совершенные одним человеком, обычно близки друг к другу, маловероятно, что все преступления в одной области будут совершены одним человеком. Для такого анализа выберите опцию NO_SPATIAL_CONSTRAINT для параметра Пространственные ограничения (Spatial Constraints). Однако вы можете включить некоторые пространственные переменные (близость к банкам, например) в список полей анализа, чтобы выявить определенные аспекты анализируемых преступлений.
K-средних
Если вы выбираете опцию NO_SPATIAL_CONSTRAINT для параметра Пространственные ограничения (Spatial Constraints), для группировки используется алгоритм K-средних. Цель этого алгоритма — разбить объекты так, чтобы отличия между объектами в группе (для всех групп) были минимальными. Так как алгоритм является NP-трудным, для группировки объектов используется жадная эвристика. Жадный алгоритм всегда сводится к локальному минимуму, но не всегда находит глобальный (оптимальный) минимум.
Алгоритм K-средних сначала определяет начальные объекты, которые используются для формирования каждой группы. Соответственно число начальных объектов всегда равно параметру Количество групп (Number of Groups). Первый начальный объект выбирается произвольно. При выборе оставшихся начальных значений (хотя случайный компонент также используется) применяется взвешивание, которое отдает предпочтение объектам, наиболее отдаленным от существующего набора начальных объектов (эта часть алгоритма называется K-средних ++). Из-за применения случайного компонента при поиске начальных значений при выборе опции FIND_SEED_LOCATIONS или USE_RANDOM_SEEDS для параметра Метод инициализации (Initialization Method) могут возникать различные варианты групп при нескольких запусках инструмента.
После определения начальных значений все объекты назначаются ближайшему начальному объекту (в пространстве данных). Для каждого кластера объектов вычисляется центр данных, а каждый объект назначается ближайшему центру. Процесс вычисления центра данных для каждой группы и назначения объектов ближайшему центру продолжается до стабилизации групп (возможно до 100 итераций).
Минимальное остовое дерево
При указании пространственного ограничения, чтобы включать в группу смежные или близкие объекты, инструмент сначала формирует граф связности, представляющий соседские отношения объектов. На основе графа связности формируется минимальное остовое дерево, которое отражает и пространственные отношения объектов, и сходство данных объектов. Объекты становятся узлами в минимальном остовом дереве, связанном взвешенными ребрами. Вес каждого ребра пропорционален сходству объектов, которые он соединяет. После создания минимального остового дерева ветвь (ребро) дерева обрезается, после чего мы получаем два минимальных остовых дерева. Обрезаемое ребро выбирается так, чтобы минимизировать расхождение в полученных группах, избегая при этом получения групп только с одним объектом. При каждой итерации одно из минимальных остовых деревьев делится этим процессом обрезки до получения указанного количества групп. Опубликованный метод называется SKATER (пространственный кластерный анализ с удалением ребра дерева). Хотя на каждой итерации выбирается ветвь, оптимизирующая сходство объектов в группе, нельзя гарантировать, что конечный результат будет оптимальным.
Выходные данные
Число выходных объектов, создаваемых инструментов Анализ группирования (Grouping Analysis). Все эти данные (в том числе дополнительный PDF-файл отчета) можно просмотреть в окне Результаты (Results). Если отключить фоновую обработку, результаты также будут показаны в диалоговом окне Ход процесса (Progress). Эти сообщения (показаны ниже) предоставляют информацию из дополнительного PDF-отчета (описано ниже).
Результатом работы инструмента Анализ группирования (Grouping Analysis) по умолчанию является новый выходной класс объектов, содержащий поля, используемые в анализе, а также новое целочисленное поле SS_GROUP, определяющее, какой группе принадлежит каждый объект. Этот выходной класс объектов добавляется в таблицу содержания с уникальной цветовой схемой отображения, которая применяется к полю SS_GROUP. Полое отображение указывает на то, что объекты не удалось добавить в группу, обычно это связано с тем, что у них нет соседних объектов. Если указать значение NO_SPATIAL CONSTRAINT для параметра Пространственные ограничения (Spatial Constraints), дополнительное поле SS_SEED добавляется в выходной класс объектов, чтобы указать, какие начальные объекты использовались для формирования групп.
Файл отчета инструмента Анализ группирования (Grouping Analysis)
Если указать путь для параметра Выходной файл отчета (Output Report File), создается PDF-файл с информацией о созданных группах.
Создание дополнительного файла отчета может значительно увеличить время обработки. Хотя инструмент Анализ группирования (Grouping Analysis) всегда создает выходной класс объектов с отображением участников групп, PDF-файл отчета не создается, если вы укажете более 15 групп или более 15 переменных.
Межквартильный размах (IQR) — верхний квартиль минус нижний квартиль. Нижние выбросы — это значения меньше 1,5*IQR (Q1-1,5*IQR), а верхние выбросы — это значения больше 1,5*IQR (Q3+1,5*IQR). Выбросы отображаются на диаграммах как символы "+".
На первой странице отчета переменные (поля анализа) в каждой группе сравниваются друг с другом. В отчете ниже, например инструмент Анализ группирования (Grouping Analysis) был использован с районами переписи для создания четырех групп. Сводная статистика для каждой группы печатается с использованием разных цветов (синий, красный, зеленый и золотой). Первый набор сводной статистики печатается черным цветом, так как там представлено глобальное среднее, среднеквадратичное отклонение (Ср. кв.), минимум, максимум и значения R2 для всех данных в каждом поле анализа. Чем больше значение R2 для определенной переменной, тем лучше переменная отличает ваши объекты. После глобальных сводных значений, для каждой переменной в группе указываются среднее значение, стандартное отклонение, минимум, максимум и общие значения. В отчете ниже, например можно увидеть, что группа 1 (синяя) содержит 52 процента значений в глобальной переменной AGE_UNDER5. Глобальный диапазон значений — от 0 до 1453 детей в возрасте 5 лет, а синяя группа содержит районы численностью от 488 до 1246 детей возрастом младше 5 лет. Среднее количество детей младше 5 лет для районов в синей группе равно 805,3750. В ящичковой диаграмме справа от сводной статистики синей группы показано, как значения группы связаны с глобальными значениями того же поля анализа. Обратите внимание на то, что синяя точка на диаграмме выходит из верхнего квартиля, а первая синяя вертикальная линия (представляющая минимальное значение районов синей группы) расположена выше глобального среднего значения для этого поля. К слову, если посмотреть на то, где синие точка попадают в ящичковые диаграммы для всех переменных, можно увидеть, что, кроме переменной MEDIANRENT, средние значения во всех полях анализа расположены над верхним квартилем. У этой группы самые большие значения по сравнению с другими группами.
Общее значение — это отношение диапазона группы к глобальному диапазону. Например, для группы 1 и переменной AGE_UNDER5 52 общая доля в 52 процента получена за счет деления диапазона группы (1246-488=758) на глобальный диапазон (1453-0=1453), что дает 0,52 при округлении до двух старших разрядов.
Во втором разделе сравниваются диапазоны переменных для каждой по одному полю анализа (переменной) за раз. В этом представлении данных легко увидеть, у какой группы наибольший и наименьший диапазон значений для каждой переменной. Минимальное, среднее и максимальное значение группы наложены в верхней части ящичковой диаграммы, отражающей все значения. Обратите внимание, что у группы 4 (оранжевая) самые маленькие значения переменной MEDIANRENT. Минимальное, среднее и максимальное значение этой группы меньше, чем у любой другой группы.
В параллельной ящичковой диаграмме представлена сводка по группам и переменным в них. На следующем графике обратите внимание на то, что группа 1 (синяя) отражает районы со средним значением ренты, самым большим количеством семей с детьми, возглавляемых женщинами (FHH_CHILD), самым большим количеством домов (HSE_UNITS) и самым большим количеством детей младше 5 лет. Группа 2 (красная) отражает районы с наибольшей медианной рентой, самым маленьким числом семей с детьми, возглавляемых женщинами, с большим, чем среднее, количеством домов (хотя с меньшим, чем в районах в группах 1 и 3) и самым маленьким количеством детей младше 5 лет.
Если установить флажок Оценить оптимальное число групп (Evaluate Optimal Number of Groups), PDF-файл отчета будет содержать график значений псевдо-F-статистики. Обведенная точка на графике — это наибольшая F-статистика, указывающая наиболее эффективное число групп для различения указанных объектов и переменных. На следующем графике F-статистика, связанная с четырьмя группами, имеет наибольшее значение. Пять групп с большим значением псевдо-F-статистики также будут хорошим выбором.
Рекомендации
Хотя существует тенденция для включения максимально возможного числа полей анализа, при использовании инструмента Анализ группирования (Grouping Analysis) лучше начать с одной переменной. Результаты намного легче интерпретировать при меньшем числе полей анализа. Также легче определить, какие переменные лучше разделяют группы при меньшем количестве полей.
Во многих ситуациях вы запустите инструмент Анализ группирования (Grouping Analysis) несколько раз в поисках оптимального количества групп, наиболее эффективных пространственных ограничений и сочетания полей анализа, которые наилучшим образом разбивают ваши объекты на группы. Так как при создании выходного отчета время обработки может значительно увеличиться, вы не захотите создавать отчет, когда будете экспериментировать с различными входными параметрами.
Дополнительные источники
Duque, J. C., R. Ramos, and J. Surinach. 2007. "Supervised Regionalization Methods: A Survey" in International Regional Science Review 30: 195–220.
Assuncao, R. M., M. C. Neves, G. Camara, and C. Da Costa Freitas. 2006. "Efficient Regionalisation Techniques for Socio-economic Geographical Units using Minimum Spanning Trees" in International Journal of Geographical Information Science 20 (7): 797–811.
Jain, A. K. 2009. "Data Clustering: 50 years beyond K-Means." Pattern Recognition Letters.
Hinde, A., T. Whiteway, R. Ruddick, and A. D. Heap. 2007. "Seascapes of the Australian Margin and adjacent sea floor: Keystroke Methodology." in Geoscience Australia, Record 2007/10, 58pp.