Марковский алгоритм кластеризации
Материал из MachineLearning.
Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |
Марковский алгоритм кластеризации
План работы над статьей
- расписать общую постановку задачи (до 2018.11.04)
- расписать общий принцип алгоритма (до 2018.11.10)
- своровать/нарисовать нужные картинки (до 2018.11.17)
- разобраться с влиянием expansion и inflation на качество кластеризации (до 2018.11.24)
- разобраться с ortoMCL и написать пунк о практическом применении метода в биологии (до 2018.12.04)
Марковский алгоритм кластеризации (MCL, Markov Clustering Algorithm) — быстрый и масштабируемый алгоритм кластеризации, основанный на моделировании потока в графе. Он был создан в 2000 году в Центре математических и компьютерных наук в Нидерландах. На сегодняшний день данный алгоритм имеет широкий спектр применений, например, для данных в молекулярной биологии.
Здесь или ввести понятие графа или дать ссылку на другую статью.
Граф состоит из двух типов объектов 1) вершин(узлов)- V
2)ребер (пар вершин соединенных между собой) - E. Более формальная запись G:=(V,E)
Кроме этого каждый граф можно представить в виде матрицы смежности (M) размером V*V. Где Mij= растоянию между узлом i и узлом j.
Графы часто возникают при упрощении сложных систем. К примеру в виде графа удобно отображать:
- взамосвязи различных сайтов в интернете
- Социальные сети (сети контактов)
- Генные сети в молекулярной биологии
- порты, аэропорты, города (в качестве узлов графа)и пути их соединяюющие (в качестве ребер).
Spectral SCAN CPM Walktrap Bigclam LPA NewmanGreedy CNM
И в связи с необходимостью распозновать образы и кластера в больших графах необходимы способы кластеризации.
В качестве метрики растояния можно использовать суммы длин ребер (или их количества) между двумя точками, что по сути является евклидовой метрикой.
Парадигма кластеризации графа. Парадигма кластеризации графа постулирует, что
«Естественные» группы в графах, обладают следующей характеристикой:
При случайном обходе графа и поподании в кластер, мы не выйдем из него пока не обойдем многие вершины в нем.
В основе алгоритма MCL лежит идея моделирования потока (случайного блуждания) внутри графа. т.е. если усиливать поток там где он силен и ослаблять его там где он слаб то согласно парадигме кластеризации графа границы между различными кластерами будут исчезать. Таким образом будет выявлена кластерная структура в графе.
Моделирование потока через граф легко осуществляется путем преобразования его в марковский граф.
Кластерный анализ и кластеры в графе
Предпологается что кластера в графе образуют сгущения, в то время как между кластерми есть пустоты(??)
Марковский процес кластеризации
Эксперименты и практическое применение MCL
общее описание метода
Алгоритм основан на двух функциях expansion и inflation.
1) expansion - разширяем поток из вершины на потенциальных участников кластера. 2) inflation - уменьшаем переходы между кластерами и увеличиваем внутри кластера. расширение (expansion) - объединяет кластера, остабляет сильный ток и усиливает слабый. инфляция (inflation) - сжимает кластера, усиливает сильный поток и ослабляет слабый.
итог по алгоритму
- Плюсы алгоритма
- Работает как с взвешенными, так и с невзвешенными графами
- Устойчив к шуму в данных
- Количество кластеров не указано заранее, но можно настроить степень детализации кластера с параметрами
- Минусы алгоритма
- Не удается найти перекрывающиеся кластеры (*)
- Не подходит для кластеров большого размера
- Часто кластеры получаются разного размера
В этих двух статьях двугой подход к кластеризации на графе:
L. Hagen and A. B. Kahng, A new approach to effective circuit clustering, in IEEE [91],
pp. 422–427.
C.-W. Yeh, C.-K. Cheng, and T.-T. Y. Lin, Circuit clustering using a stochastic flow injection
method, IEEE Transactions on Computer–Aided Design of Integrated Circuits and Systems,
14 (1995), pp. 154–162.
Список используемой литературы
1) Van Dongen, S. 2000. “Graph clustering by flow simulation.” Ph.D. thesis, University of Utrecht, The Netherlands
2) https://www.micans.org/mcl/index.html
3) Li, Li, Christian J. Stoeckert, and David S. Roos. "OrthoMCL: identification of ortholog groups for eukaryotic genomes." Genome research 13.9 (2003): 2178-2189.
4)Satuluri, Venu, Srinivasan Parthasarathy, and Duygu Ucar. "Markov clustering of protein interaction networks with improved balance and scalability." Proceedings of the first ACM international conference on bioinformatics and computational biology. ACM, 2010.