2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Выбор метода классификации (кластерный анализ не сработал)
Сообщение26.07.2015, 13:04 


21/11/14
12
Задача

Здравствуйте. Передо мной стоит задача классификации 613 гидрометеорологических постов по характеру внутригодовых изменений двух определенных показателей. Количество классов заранее неизвестно. На вход подаются среднемесячные величины этих двух показателей, осреднённые за многолетний период. Таким образом, размер входных данных - 613x24.

Графики внутригодовых изменений обеих величин:
Изображение
Изображение

Опыт показывает, что для больших территорий обычно удаётся выделить несколько более плотных групп постов со схожим гидрометеорологическим режимом. В связи с этим предпочтение отдаётся иерархическим методам кластерного анализа. Поскольку методов и метрик много, особое внимание уделяется поиску наиболее оптимального разбиения (классификации).

Методология

Методы классификации: метод Уорда, метод полной связи (последний - с более чем двадцатью различными метриками).

Количество классов: $1 \leq k \leq 50$.

Критерий качества классификации: функционал качества $F(k)$, основанный на общей концепции степенных средних, разработанных А. Н. Колмогоровым (цитируется по И. Мандель. Кластерный анализ, М.: 1988, с. 90) - комбинация $I_{r}$ (средняя степенная мера внутриклассового рассеяния) и $z_{r}$(средняя степенная мера концентрации точек):
$$F(k)=I_{r}\cdot\frac{1}{z_{r}}\rightarrow \min$$
$$I_{r}^{(k)}=\left [ \frac{1}{k}\sum_{i=1}^{k}\frac{1}{n_{i}}\sum_{x_{p},x_{q}\in S_{i}}d_{pq}^{r}\right ]^{\frac{1}{r}}$$
$$z_{r}^{(k)}=\left [ \frac{1}{k}\sum_{i=1}^{k} \left ( \frac{n_{i}}{k}\right )^{r} \right ]^{\frac{1}{r}}$$
где $r$ - показатель степени (принят равным 2), $k$ - общее количество классов в данном разбиении, $S_{i}$ - конкретный класс в данном разбиении, $n_{i}$ - количество элементов в классе $S_{i}$, $\sum_{x_{p},x_{q}\in S_{i}}d_{pq}^{r}$ - сумма попарных евклидовых расстояний (возведённых в $r$) среди элементов конкретного класса.

$I_{r}$ характеризует внутриклассовое рассеяние и является убывающей функцией от $k$. $\frac{1}{z_{r}}$ подавляет тенденцию к излишней детализации и увеличивается с $k$. Эти две противоположных тенденции уравновешиваются в функционале $F(k)$. Поиск глобального минимума $F(k)$ позволил бы найти наиболее оптимальное количество классов и наиболее оптимальное разбиение.

Результаты
На рисунке представлены графики $F(k)$, полученые для различных методов и метрик:
Изображение

Выводы, которые я могу сделать из этого графика:
1. Метод Уорда показал наихудшие результаты среди всех рассмотренных методов;
2. Глобальный минимум ($k \equiv 5$, метод полной связи, расстояние Чебышева) соответствует вырожденному случаю классификации (один мегакласс с более чем 600 элементами и ещё 4 микрокласса с 1 элементом в каждом).
3. Глобальный минимум ($k \equiv 5$, метод полной связи, расстояние Чебышева) очень близок к минимумам подавляющего числа графиков $F(k)$ ($k \equiv 1$), что, по-видимому, означает, что наилучшая классификация - это отсутствие какой-либо разбиения вообще?


Вопрос
Вывод о том, что представленные материалы в принципе не поддаются классификации, является для меня неожиданным и противоречит предыдущему опыту. Я хотел бы получить подтверждение этого с помощью альтернативных методов классификации без учителя. Может быть, иерархический кластерный анализ не применим к этим данным? Пожалуйста, посоветуйте подходящие по Вашему мнению методы. Также я буду очень признателен, если кто-то сможет проанализировать эти данные самостоятельно и поделиться результатами.

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение26.07.2015, 23:58 
Заслуженный участник
Аватара пользователя


01/09/13
4676
Почему Вы говорите о двух параметрах, если между ними практически единичная корреляция?
И не означают ли нули (частичный) пропуск данных?
Почему делается усреднение по месяцам? Какой в этом физический смысл?
Почему взята метрика Чебышёва - она, по смыслу, и будет отлавливать все артефакты и выбросы?

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение27.07.2015, 06:57 
Аватара пользователя


21/01/09
3926
Дивногорск
vitalyisaev2 в сообщении #1040613 писал(а):
Также я буду очень признателен, если кто-то сможет проанализировать эти данные самостоятельно и поделиться результатами.

Дайте Экселевскую таблицу входных данных.

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение27.07.2015, 10:58 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
А вы k-means для разных $k$ не пробовали?
Вообще-то данные выглядят весьма "плотными", не видно разного поведения функций.

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение27.07.2015, 21:55 


21/11/14
12
Geen в сообщении #1040729 писал(а):
Почему Вы говорите о двух параметрах, если между ними практически единичная корреляция?

Это две разных характеристики гидрометеорологического режима. Они схожи, но считаются по-разному и зависят от разных факторов.
Geen в сообщении #1040729 писал(а):
И не означают ли нули (частичный) пропуск данных?

Нули в таблице неслучайны.
Geen в сообщении #1040729 писал(а):
Почему делается усреднение по месяцам? Какой в этом физический смысл?

Период осреднения соответствует частоте измерений, принятой на сети станций. Как правило, на каждом посту измерения выполняются не реже раза в месяц. За двадцатилетний период для каждого месяца набирается достаточное количество наблюдений для более или менее точной оценки среднемесячной величины.
Geen в сообщении #1040729 писал(а):
Почему взята метрика Чебышёва - она, по смыслу, и будет отлавливать все артефакты и выбросы?
Поскольку я стремился найти не только оптимальное количество классов, но и оптимальный метод разбиения, я рассматривал два метода - метод Уорда и метод полной связи. В методе Уорда используется заранее заданная метрика, а метод полной связи я использовал примерно с двадцатью различными метриками (полный список я приводил выше). Среди них - евклидово, city-block, Чебышева и многие другие. Экстремум функционала качества разбиения был обнаружен для k=5, метода полной связи и метрики Чебышева. Формально, с точки зрения приведённого критерия качества эта классификация самая лучшая, но в действительности она вырождена: в ней выделен один огромный класс, и ещё четыре класса содержат по одному элементу.

Суть моей просьбы: я хотел бы уточнить у независимых исследователей, не ошибаюсь ли я, делая вывод об отсутствии кластеров в данном массиве данных?

-- 27.07.2015, 21:58 --

Александрович в сообщении #1040751 писал(а):
Дайте Экселевскую таблицу входных данных.


По этой ссылке Вы найдёте csv-файл, который можно открыть в любой версии Excel. Благодарю за помощь!

-- 27.07.2015, 22:00 --

provincialka в сообщении #1040775 писал(а):
А вы k-means для разных $k$ не пробовали?
Вообще-то данные выглядят весьма "плотными", не видно разного поведения функций.


Нет, не пробовал. К сожалению, я совсем не специалист по статистике. Этот метод имеет какие-то преимущества перед иерархическими методами?

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 00:12 
Заслуженный участник
Аватара пользователя


01/09/13
4676
vitalyisaev2 в сообщении #1040911 писал(а):
Нули в таблице неслучайны.

vitalyisaev2 в сообщении #1040911 писал(а):
Как правило, на каждом посту измерения выполняются не реже раза в месяц.

Отпуска? ;-)
Есть ли исходные данные без усреднения?

vitalyisaev2 в сообщении #1040911 писал(а):
я использовал примерно с двадцатью различными метриками

У каждой метрики свой смысл (физический/математический). Наобум выбирать метрику нельзя.

vitalyisaev2 в сообщении #1040911 писал(а):
выделен один огромный класс, и ещё четыре класса содержат по одному элементу.

Выбросы/артефакты/отпуска..... От них надо избавляться...

vitalyisaev2 в сообщении #1040911 писал(а):
вывод об отсутствии кластеров в данном массиве данных

vitalyisaev2 в сообщении #1040911 писал(а):
Как правило, на каждом посту измерения выполняются не реже раза в месяц.

Вообще, хорошо бы иметь ввиду некоторую "физическую" модель... Пока что похоже, что Вы предполагаете, что на периодах в месяц измеряемые параметры меняются меньше, чем между соседними станциями....

-- 28.07.2015, 00:15 --

vitalyisaev2 в сообщении #1040911 писал(а):
За двадцатилетний период для каждого месяца набирается достаточное количество наблюдений для более или менее точной оценки среднемесячной величины.

Дисперсия этих измерений, хотя бы, есть? ;-)

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 02:54 
Аватара пользователя


21/01/09
3926
Дивногорск
vitalyisaev2 в сообщении #1040911 писал(а):
По этой ссылке Вы найдёте csv-файл, который можно открыть в любой версии Excel. Благодарю за помощь!

Открыть то можно, но там все строчные данные в одной ячейке.

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 09:51 
Заслуженный участник
Аватара пользователя


01/09/13
4676

(Оффтоп)

Александрович в сообщении #1040951 писал(а):
vitalyisaev2 в сообщении #1040911 писал(а):
По этой ссылке Вы найдёте csv-файл, который можно открыть в любой версии Excel. Благодарю за помощь!

Открыть то можно, но там все строчные данные в одной ячейке.

Есть такая функция - convert text to columns

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 11:24 
Аватара пользователя


21/01/09
3926
Дивногорск

(Оффтоп)

Александрович в сообщении #1040951 писал(а):
Открыть то можно, но там все строчные данные в одной ячейке.

Geen в сообщении #1040981 писал(а):
Есть такая функция - convert text to columns

И где её найти?

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 11:27 
Заслуженный участник
Аватара пользователя


01/09/13
4676

(Оффтоп)

Александрович в сообщении #1040997 писал(а):
И где её найти?

Какая версия офиса?
А вообще, лучше сразу загонять куда-нибудь в матлабоподобное...

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 18:03 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
Я получила данные в виде таблицы и попробовала изобразить их на плоскости. Применяла метод главных компонент и отображала две первые. Точки образуют довольно плотное облако с небольшими выбросами в двух углах. На вид никакого разбиения не видно.

Я пробовала также шкалировать данные, брать первые 12, вторые 12, шкалировать их по отдельности и объединять. Больших отличий нет, данные, действительно, сильно коррелированы.

Изображение
На картинке изображены исходные данные (в проекции на 2 оси главных компонент), цвет соответствует иерархической кластеризации (метрика евклидова, метод полной связи).

Конечно, это только две компоненты из 24, но зато самые "показательные"

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 19:13 
Заслуженный участник


31/12/05
1525
provincialka в сообщении #1041088 писал(а):
Конечно, это только две компоненты из 24, но зато самые "показательные"
По сути первая - среднегодовое значение, а вторая - годовая амплитуда.

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 19:24 
Заслуженный участник
Аватара пользователя


01/09/13
4676

(Оффтоп)

tolstopuz в сообщении #1041111 писал(а):
provincialka в сообщении #1041088 писал(а):
Конечно, это только две компоненты из 24, но зато самые "показательные"
По сути первая - среднегодовое значение, а вторая - годовая амплитуда.

Нет, это не так.

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 19:32 
Заслуженный участник


31/12/05
1525
Geen в сообщении #1041117 писал(а):
Нет, это не так.
Почему?

(Оффтоп)

Код:
r = read.csv('filtered.csv')
x = as.matrix(r)[,2:25]
pr.out = prcomp(x, scale=T)
pr.out$rotation[,1:2]

          PC1          PC2
x1  0.2056725 -0.256514497
x2  0.1967872 -0.286653447
x3  0.2114481 -0.268698938
x4  0.2024983 -0.155720329
x5  0.2176714  0.136015748
x6  0.2104280  0.188586678
x7  0.2107060  0.161840096
x8  0.2023757  0.223839882
x9  0.1897056  0.240546738
x10 0.1778177  0.226023865
x11 0.1890064  0.103762194
x12 0.2188603 -0.099504948
y1  0.1842890 -0.269256915
y2  0.1729423 -0.298497366
y3  0.2033656 -0.298042519
y4  0.1965924 -0.227288552
y5  0.2130709  0.056790644
y6  0.2109285  0.174725374
y7  0.2135784  0.177405317
y8  0.2125120  0.219862553
y9  0.2141324  0.205681662
y10 0.2206452  0.124136545
y11 0.2016827 -0.008040761
y12 0.2127343 -0.148888888

 Профиль  
                  
 
 Re: Выбор метода классификации (кластерный анализ не сработал)
Сообщение28.07.2015, 19:53 
Заслуженный участник
Аватара пользователя


01/09/13
4676
"глвные компоненты" = "главные оси эллипсоида инерции" (вроде как)

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group