Алгоритм кластеризации.Data mining. |
Здравствуйте, гость ( Вход | Регистрация )
Алгоритм кластеризации.Data mining. |
Andrewshkovskii |
19.11.2009, 15:28
Сообщение
#1
|
Активный участник Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: 1 |
Суть такова..уже неделю бьюсь с реализацией одного алгоритм, но никак не могу приудмать.. В общем, задача такая
: Есть матрица остовного дерева Она собой представляет матрицу смежности графа, где значения в ячейках - вес ребра между двумя вершинами, * - значит ребра для этих вершин нет. вот так можно представить этот граф Верщины и вес верщины "Войновка,Инская" 2732 "Егоршино,Пермь" 4667 "Орехово,Инская" 6588 "Лянгасово,Егоршино" 7489 "Пермь,Войновка" 14946 Ребра, как и кластеры, у меня реализованны следующей структурой : Раскрывающийся текст
Раскрывающийся текст
Суть алгоритма: Вершины – объекты минимального остовного дерева группируются в кластеры. Выбираются два объекта, которым соответствует минимальное ребро. . Далее эти объекты стягиваются в один кластер (класс, таксон, страту) и процедура повторяется до тех пор, пока на n-1(n-количество верщин, n-1 - ребер) этапе группирования не будет сформирован один кластер, объединяющий все объекты. Вот так : 1. шаг формируется кластер из "Войновка,Инская" со значением 2732 2. "Егоршино,Пермь" 4667 3. "Орехово,Инская,Войновка" 6588 4. "Лянгасово,Егоршино,Пермь" 7489 5. "Лянгасово,Егоршино,Пермь,Орехово,Инская,Войновка" 14946 подобрая программа лежит вот тут http://el-niko.ru/lab/1/ Все что я смог реализовать, это нахождение ребер..тоесть я пытался как-то додуматься до реализации этого алгоритма, но заходил в тупик. Вот немного кода : Раскрывающийся текст
А вот как дальше быть, я не знаю... Может кто-то уже сталкивался с этой задачей? Просто я в недоумении.. Сообщение отредактировал Andrewshkovskii - 19.11.2009, 15:29 |
|
|
Andrewshkovskii |
9.12.2009, 13:13
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: 1 |
|
|
|
ViGOur |
9.12.2009, 17:30
Сообщение
#3
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Блин, давно еще прочитал твою тему, но забыл спросить (работы много), смотрел ли ты в сторону метода опорных векторов (SVM) и подходят ли они тебе для твоей задачи?
Просто есть уже реализованная либа svm light, потому не нужно реализовывать все эти формулы. К счастью. От тебя только требуется на начальном этапе самому сделать кластеры (что ты в принципе и сделал), отдать это все для обучения в SVM, который на основе них создаст модели. После чего уже прогнать все вершины через SVM для создания кластеров, на основе моделей созданных ранее. По моим результатам SVM классифицировал примерно 30-50% не классифицированных мной данных. p.s. правда с ним немного муторно разбираться... Сообщение отредактировал ViGOur - 9.12.2009, 17:31 |
|
|
Andrewshkovskii |
9.12.2009, 19:30
Сообщение
#4
|
Активный участник Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: 1 |
Да я бы не стал так заморачиваться, ибо это была лабораторная работа, просто преподаватель нам плохо объясняет алгоритмы, и из всего потока(70 чел) сдали эту лабу 5 человек..
|
|
|
Текстовая версия | Сейчас: 27.11.2024, 1:23 |