Loading AI tools
Из Википедии, свободной энциклопедии
Анализ взвешенных сетей коэкспрессии генов (англ. weighted gene coexpression network analysis, WGCNA), также известный как анализ взвешенной сети корреляций (англ. weighted correlation network analysis) — метод глубинного анализа данных, основанный на попарных корреляциях между переменными[2]. Метод может быть использован для анализа широкого спектра многомерных наборов данных, но наиболее широкое распространение он получил в геномике[3]. Метод позволяет определять модули (кластеры коэкспрессирующихся генов), межмодульные хабы и узлы сети относительно принадлежности к модулю, изучать отношения между модулями коэкспрессии и сравнивать топологии различных сетей. WGCNA может быть использован как метод снижения размерности данных (связанный с непрямым факторным анализом), как метод кластеризации, как метод отбора признаков (например, для скрининга генов)[3].
Метод WGCNA был разработан Стивом Хорватом[англ.], профессором Калифорнийского университета в Лос-Анджелесе и членами его лаборатории (в частности, Питером Лангфелдером, Бином Чжаноми и Джуном Донгом) и опубликован в 2005 году. Большая часть метода появилась в ходе прикладных исследований. В частности, взвешенные корреляционные сети были разработаны в рамках совместных дискуссий с исследователями рака Полом Мишелем, Стэнли Ф. Нельсоном, и нейробиологами Дэниэлем Гешвиндом и Майклом Олдхэмом[2]. В 2008 году была опубликована программная реализация алгоритма[1].
Исходные данные представляют собой матрицу экспрессии генов в нескольких образцах , где — число генов, — число образцов. Для построения сети коэкспрессии для каждой пары генов вычисляется параметр сходства, , который должен лежать в . по умолчанию равен абсолютному значению коэффициента корреляции Пирсона:
,
где профили коэкспрессии генов и состоят из экспрессии генов i и j среди множества образцов. Для достижения большей устойчивости к выбросам можно использовать «урезанный» коэффициент корреляции, а для того, чтобы сохранить знак коэффициента можно использовать простое преобразование корреляции: , так как использование абсолютного значения корреляции может привести к потере биологически значимой информации, поскольку при этом нельзя различить репрессию и активацию генов. Получается матрица сходства [2].
Для вычисления матрицы смежности сети по матрице сходства необходима функция смежности, которая отображает интервал в интервал . Традиционной функцией смежности является сигнум-функция с жёстким порогом:
Такая жёсткая фильтрация рёбер применяется при построении невзвешенных сетей, а результат согласован с интуитивным пониманием концепции сети (связность узла совпадает с числом связанных с ним соседей). Однако такой подход часто приводит к потере информации: например, если установить , то между узлами с параметром сходства 0.79 не будет никакой связи. Таким образом такие сети очень чувствительны к выбору гиперпараметра[2].
Взвешенные сети лишены этого недостатка. В алгоритме WGCNA в качестве функции смежности используется степенная функция:
Значение определяется с помощью топологического критерия безмасштабности сети для целочисленных значений . Для разных целочисленных значений строится линейная модель зависимости логарифма доли вершин сети со степенью от логарифма степени . Выбирается наименьшее значение , при котором коэффициент детерминации соответствующей линейной модели превосходит 0.8[2].
«Мягкая» матрица смежности позволяет лишь проранжировать узлы сети согласно силе их связи с рассматриваемым узлом. Если необходимо определить ограниченный список соседей, вводится порог по силе связи. Такой способ «мягкой» фильтрации рёбер сети и называется взвешиванием сети[2].
Для определения модулей сети и удаления шума производится операция сглаживания сети. Сначала вычисляется матрица топологического сходства (topological overlap measure) :
,
где — элемент матрицы смежности, , .
равна , если узел с меньшим числом соседей связан с узлом с бо́льшим числом соседей и все соседи узла являются соседями узла . равна , если узлы и не связаны и не имеют общих соседей. Так как , то и . Топологическое сходство двух узлов отражает их относительную внутрисвязанность[2].
На основе матрицы топологического сходства строится матрица несходства :
.
Модули сети выделяются согласно матрице несходства[2].
Для выделения модулей сети используется иерархическая кластеризация матрицы несходства[2]. Модули генов представляют собой ветви полученной дендрограммы. Для выделения модулей производится обрезка ветвей дендрограммы. Статический способ обрезки, который выделяет разветвления ниже определённого порога как отдельный кластер, производит модули, которые легко выделяются визуально, но не соответствуют строгому определению понятия «модуль»[1].
В WGCNA используется метод динамического обрезания дендрограммы (англ. Dynamic Tree Cut)[4], который представляет собой адаптивный итеративный процесс разбиения и комбинации модулей, и останавливается, когда число модулей остаётся стабильным. Исходным набором модулей являются большие модули, определяемые статическим способом. Далее происходит рекурсивное разбиение на подмодули на основе наличия паттерна флуктуаций длины ветвей внутри одного исходного модуля. Маленькие модули объединяются с соседними, чтобы избежать чрезмерного дробления[2].
Более поздние версии алгоритма используют гибридный динамический (англ. Dynamic Hybrid) подход, который позволяет более успешно детектировать выбросы в каждом кластере[2]. В качестве зачатков модулей используются ветви, удовлетворяющие следующим критериям:
После определения таких зачаточных модулей все остальные объекты, не попавшие в модулей на первом шаге, по возможности включаются в состав образованных модулей методом ближайших медоидов[англ.]. Объекты в составе одного итогового модуля могут не находиться рядом на дендрограмме, однако эта несогласованность является обманчивой и следует из ограничений отображения реальных данных в виде дендрограммы[5].
Для валидации модулей используется бутстрэп-анализ на неполных выборках образцов[2]. Дальнейшему анализу подвергаются только те модули, которые были обнаружены в большом числе бутстрэп-реплик[6].
Модуль коэкспрессии представляется собственным геном (англ. eigengene) , который является правым сингулярным вектором, соответствующим наибольшему правому сингулярному значению при сингулярном разложении матрицы экспрессии генов этого модуля [7].
Для определения значимости влияния экспрессии одного гена на проявление черты можно использовать модуль коэффициента корреляции или p-value соответствующего корреляционного или регрессионного анализа . Для определения значимости влияния экспрессии генов модуля используются разные величины:
Чем больше величина значимости, тем более значимым является данный ген или модуль генов для проявления данной черты [2].
Для оценки взаимодействия (коэкспрессии) модулей используются как попарные корреляции между собственными генами модулей, так и построение мета-сети на основе матрицы коэкспрессии собственных генов модулей и выделение мета-модулей в этой мета-сети, в том числе с использованием информации о проявлении черт для определения значимости модулей[1].
Одним из ключевых моментов в анализе построенной сети является выделение центральных узлов (хабов) — генов, которые высоко скоррелированы со многими другими генами сети. Две метрики связности узла: стандартная и топологическая — могут быть вычислены как по всей сети (полносетевая связность, англ. whole-network connectivity), так и только по генам того же модуля (внутримодальная связность, англ. intramodular connectivity). Стандартная и топологическая полносетевая и внутримодальная связности обозначаются как , , и , соответственно.
Использование внутримодульной связности (нормированной на максимальное значение связности внутри модуля) является более предпочтительным по сравнению с полносетевой связностью при сравнении генов из различных модулей, так как сильно связный ген но из маленького по размеру, но важного модуля может иметь гораздо меньшее значение полносетевой связности по сравнению с геном, имеющим среднюю степень связности из большого по размеру, но не очень важного модуля.
В свою очередь, внутримодульная связность гена отражает то, насколько связан или коэкспрессирован рассматриваемый ген по отношению к генам этого модуля. Эта метрика может быть интерпретирована как мера принадлежности к модулю.
Также выделяют метрики и . Высокое среднее значение для генов модуля (даже превышающее среднее значение ) может означать то, что этот модуль является ядром сети и важным с биологической точки зрения в изучаемых условиях. Высокое значение , напротив, означает, что общая связанность больше, чем связанность внутри модуля, то есть гены, входящие в состав этого модуля, стабильны и слабо меняют экспрессию в исследуемых условиях[1].
Бинарная мера принадлежности к модулю может быть не самой подходящей мерой для ряда применений, поэтому в качестве меры принадлежности гена к модулю можно использовать непрерывную величину (англ. fuzzy measure of module membership). В качестве такой меры можно использовать или меру связности, основанная на собственных векторах модулей, . Последняя определяется как корреляция гена и собственного гена модуля : . Высокое значение (близкое к или ) говорит о сильной связанности гена и модуля , значение, близкое к , говорит о том, что ген не принадлежит модулю . Метрики и связаны между собой: внутримодальные хабы обладают тенденцией иметь высокое значение для соответствующего модуля[1].
Взвешенная корреляционная сеть может рассматриваться как частный случай взвешенной сети, сети зависимостей или корреляционной сети[2]. Анализ взвешенных корреляционных сетей имеет следующие достоинства по сравнению с невзвешенными сетями:
WGCNA широко применяется для анализа данных об экспрессии генов, например, для поиска межмодульных хабов[12][13].
Эта методика часто используется в качестве шага снижения размерности данных в применении к системной генетике, где модули представлены собственными генами[14][15]. Собственные гены модулей могут быть использованы для расчёта корреляции с экспериментальными данными[1].
WGCNA широко применяется в нейробиологии[16][17] и для анализа геномных данных, включая микрочипы[18], данные RNA-Seq отдельной клетки[19][20] данные метилирования ДНК,[21] миРНК, подсчёт пептидов[22] и данные микробиоты (секвенирование генов 16S рРНК)[23]. Другие области применения включают данные визуализации мозга, например данные функциональной МРТ[24], анализ онкологических данных, например, выделение подклассов глиом и ассоциированных с ними биомаркеров[25], а также данные о работе ресничек[26].
WGCNA можно применять для метаанализа данных, полученных из разных источников[27][28].
Пакет WGCNA программного обеспечения R[1] предоставляет функции для осуществления всех элементов анализа взвешенных сетей (построение модулей, выбор генов хабов, статистика консервативности модулей, дифференциальный анализ сети, статистика сети). Пакет WGCNA доступен в CRAN, стандартном репозитории пакетов дополнений для R, однако для работы WGCNA необходимы пакеты, доступные в репозитории Bioconductor[29]. Пакету посвящён отдельный сайт, где опубликованы краткие руководства с демонстрацией возможностей пакета[29], а также существует блог одного из авторов метода, в котором публикуются тематические статьи, руководства и новости пакета[30].
Пакет содержит функции для визуализации полученных сетей в VisANT и Cytoscape[31]. Также разработан пакет anRichment для расширенной функциональной аннотации генов в модулях, выделенных WGCNA[32].
Существует расширение базового пакета R под названием iterativeWGCNA, реализованное на языке Python. Расширение позволяет усилить устойчивость детектируемых модулей и уменьшить потерю информации. Для этого гены, не попавшие в модули, а также гены со слабым значением связности к своим модулям снова подвергаются WGCNA-анализу и для них заново определяются модули[33].
Анализ сетей коэкспрессии для наборов данных с большим числом образцов в полногеномном масштабе является вычислительно сложной задачей, требующей большого количества оперативной памяти и времени вычисления. Из-за того, что в процессе построения сети вычисляется коэффициент корреляции между узлами, то анализ сети с узлами требует оперативной памяти и времени вычислений[1]. Существует две стратегии для решения этой проблемы[34].
Можно сократить число анализируемых генов до 4000-5000, которые имеют наибольшее значение какого-либо параметра: значение дисперсии профиля экспрессии генов в массиве данных[35][36], значение p-value теста уровня экспрессии генов между различными группами образцов[37], доля образцов, в которых детектируется экспрессия генов[37] и другие. Основными недостатками такого подхода являются потеря информации об оставшихся генах, систематическая ошибка выборки[англ.] и неверное распределение генов по функциям[38].
Один подход состоит в том, что сначала выделяются модули на некой подвыборке генов, а затем оставшиеся гены добавляются к выделенным модулям на основании метрики : для каждого гена вычисляется, с каким из модулей он сильнее всего коррелирует. Но если данный ген не коррелирует ни с каким модулем выше заданного порога, то он не включается ни в один модуль[34].
Другой подход состоит в том, что на начальном этапе гены разбиваются на блоки заранее заданного размера с помощью метода k ближайших соседей, а дальнейшее выделение модулей производится уже внутри этих блоков. Полученные модули сливаются и соотносятся между собой согласно корреляции их собственных генов. Такой подход реализован в пакете WGCNA и для блоков размера требует оперативной памяти и вычислений[1].
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.