Clusdec

Материал из Институт биоинформатики
Перейти к: навигация, поиск

Clusdec

ClusDec — алгоритм для решения задачи полной деконволюции данных экспрессии при помощи методов кластеризации.

Задача деконволюции

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

Формально

Пусть — матрица наблюдаемой в эксперименте экспрессии размера , где n — это число генов, а m — это число сэмплов. Здесь и далее мы предполагаем верной линейнеую модель:

где — наблюдаемая экспрессия гена в сэмпле , — экспресссия гена в клеточном типе , а — содержание клеточного типа в сэмпле . Тогда, взяз во внимание все гены, можно представить задачу деконволюции в качестве задачи разложения матрицы на произведение:

с парой ограничений:

  1. все элементы матриц W и H неотрицательны
  2. суммы элементов в столбцах матрицы H близки к единице (sum-to-one constraint)

Идея алгоритма

Идея алгоритма достаточно проста — маркерные гены клеточных типов должны вести себя примерно одинаково во всех сэмплах. Кластеризация может помочь найти группы генов, которые ведут себя одинаково. Возьмем какие-то кластеры генов и предположим, что гены внутри этих кластеров являются маркерными. Запустим алгоритм частичной деконволюции, используя выбранные гены. Рассмотрим результаты деконволюции и посчитаем различные оценки результата деконволюции. Затем выберем ту метрику, которая, как нам кажется, лучше описывает результат. Это и есть конечный результат ClusDec.

Clusdec.png

ClusDec pipeline

Процесс работы с пакетом Clusdec состоит из трёх важных пунктов:

  1. Предобработка датасета (включает в себя кластеризацию)
  2. Деконволюция по всем наборам кластеров и подсчет точности результатов деконволюции
  3. Выбор лучшего набора и конечная деконволюция

Предобработка датасета

Вся предобработочка состоит из двух концептуально важных вещей:

  1. Привести датасет в опрятный вид
  2. Кластеризация

Опрятный вид

  1. Чаще всего microarray датасеты изначально содержат вместо какого-либо названия гена, идентификатор пробы, который зависит от того, на какой платформе был сделан microarray. Прежде всего мы заинтересованы заменить имена проб на соответствующие им гены. И если несколько проб приходятся на один ген, выбрать из них одного представителя
  2. Также мы заинтересованы в том, чтобы вся экспрессия была в линейном пространстве (linear space), ведь предположение линейной модели не может быть верно например в log-space, да и само предположение линейной модели идет от физики замера экспрессии в microarray или RNA-seq
  3. Так же мы заинтересованы в избавлении от различного шума, поэтому мы берем только верхние 10 тысяч генов по средней экспрессии во всех сэмплах

Кластеризация

Пример матрицы экспрессии
На данном графике изображены экпрессия генов из примера
Попарная корреляция
Попарные косинусы между векторами

Кластеризация является главной идейной составляющей данного алгоритма. Кластеризация генов — очень популярная техника для анализа экспрессии генов. Чаще всего гены кластеризуют, используя корреляцию в качестве расстояния: чем больше корреляция — тем больше гены похожи друг на друга. Несложно также заметить, что маркерные гены для клеточного типа в идеальном случае должны иметь корреляцю равную единице.

Маркерные гены

Маркерные гены по определению хорошо экспрессируются только в одном клеточном типе. Пусть i-ый ген является маркерным для j-того клеточного типа. Тогда верно, что строка матрицы W_i представима в виде

тогда не сложно заметить, что наблюдаемая экспрессия этого гена

Таким наблюдаемая экспрессия любого маркерного гена пропорциональна концентрации клеточного типа в сэмплах. Таким образом для любых двух маркерных для одного клеточно типа генов i и j верно:

, где с — это некоторая константа

Отказ от корреляции в пользу косинуса между векторами

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

Корреляция равна единице тогда и только тогда, когда . Однако мы хотим, чтобы наше "расстояние" наказывало за линейный сдвиг a. Поэтому мы используем в качестве расстояния между генами косинус между векторами:

Для того, чтобы понять разницу приведем пример. Пусть дана матрица экспрессии (смотри иллюстрации с примерами). Можно заметить, что данные 9 генов можно разбить на три семейства (blue, green и red), внутри этих семейств гены выражаются друг из друга в виде: . А для вершин из разных семейств, это не верно. Приведены таблицы попарной корреляции и косинусов углов между векторами экспрессии.

Деконволюция по всем наборам кластеров

Здесь и далее мы предполагаем, что мы решаем задачу деконволюции для заранее известного числа клеточных типов . После предобработки датасета нам известны номера кластеров всех генов, которые не были убраны из датасета в качестве шума. Если у двух генов одинаковый номер кластера -- это означает, что у них достаточно высокое значение косинуса между векторами экспрессии, поэтому они и попали в один кластер.

Пусть всего наших кластеров получилось . Тогда опишем, что мы делаем для всех комбинаций из кластеров.

DSA-like deconvolution

Пример кластеризованного датасета, показаны лишь несколько десятков генов

Для наглядности, пусть и на данной итерации мы выбрали кластеры: 1, 2, 4, 10. На данном этапе нужно оставить из датасета лишь те гены, которые лежат в выбранных нами кластерах (см рисунок). После того, как мы оставим лишь гены из кластеров, про любую пару генов внутри любого из кластеров, можно сказать, что . Поэтому гены было бы неплохо нормализовать, чтобы про гены внутри кластера было верно . Каждый ген мы нормализуем самым простым образом: всю строку экспрессии гена мы просто поделим на максимум в этой строке.

Пример нормализации, показаны лишь несколько десятков генов

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

Говоря формально, мы должны разрешить равенстнво суммы столбцов единице матрицы . В текущей версии ClusDec, поиск вектора происходит с помощью алгоритма Fast Combinatorial Nonnegative Least Squares, реализованного внутри библиотеки NMF.

После того, как мы нашли , мы можем выразить искомую матрицу H, как:

Далее по найденной матрице H и матрице наблюдаемой экспрессии X мы с помощью алгоритма DSA [1] восстанавливаем матрицу W.

Оценка точности деконволюции

Предположим, что для какого-то набора кластеров мы нашли матрицы H и W. В линейном предположении, мы считаем, что наша исходная матрица наблюдаемой экспресси раскладывается на произведение матриц и , однако стоит понимать, что это разложение не является точным, и строго говоря

Тогда необходимо для каждого набора кластеров оценить точность деконволюции: насколько хорошо предположение того, что данные кластеры ответственны за гипотетические клеточные типы, описывает реальность?

Пусть

введем ряд метрик, которые бы помогли нам оценить точность деконволюции.

frob

Метрика frob описывает то, насколько хорошо наш набор кластеров вписывается в sum-to-one constraint. Формально

frob_norm

Метрика frob_norm -- является по сути нормой Фробениуса матрицы D. Формально

spectral_norm

Метрика spectral_norm -- является по сути наибольшим собственным значением матрицы D. Формально

Остальные метрики

Идея оставшихся метрик достаточно проста: рассмотрим сэмпл в матрицах и . Если построенные матрицы W и H, действительно хорошо описывают реальность, то корреляция экспрессии сэмпла в матрицах и должна быть большой. И на самом деле это должно быть верно для любого сэмпла: ведь мы предполагаем, что все наши сэмплы состоят именно из этих клеточных типов.

Названия остальных метрик -- составные. В них бывают следующие части:

function mean min Функция от корреляции по всем сэмплам: mean — средняя корелляция по всем сэмплам, min — минимум корреляции по всем сэмплам
part cluster full Какая часть сэмпла рассматривается? full — рассматривается sample целиком, cluster — рассматриваются только гены внутри кластеров.
correlation pearson spearman Какую корреляцию использовать? Pearson moment-product correlation или Spearman correlation
log_scale log Сравнивать корреляцию матриц и вместо и

Таким образом, например, метрика log_mean_full_pearson -- берет матрицы и и для каждого считает корреляцию Пирсона между -тыми столбцами в матрицах и и считает среднее этих самых корреляций.

Обработанные датасеты

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


GSE ID краткое описание валидация результатов текущий статус, как запускали
GSE19830 [2] Expression data from pure/mixed brain, liver and lung to test feasability and sensitivity of statistical deconvolution. Примечание: неизвестно ни одной попытки совсем честно задеконволировать этот датасет (даже в оригинальной статье), есть предположение о перенасыщении одного из клеточных типов в этом датасете. известны пропорции типов клеток / benchmark dataset Хорошо делится любыми алгоритмами деконволюции
GSE11058 [3] Immune Cell Line Mixtures известны пропорции типов клеток / benchmark dataset Умеем хорошо делить.
GSE52245 [4] Time Course of Young Adults Vaccinated with Meningococcal MCV4 and MPSV4 Vaccines CIBERSORT Хорошая корреляция с результатами CIBERSORT
GSE27563 [5] Expression data from murine PBCs from mice with advanced mammary tumors and their tumor-free counterparts. CIBERSORT Хорошая корреляция с результатами CIBERSORT
GSE29617 [6] Time Course of Young Adults Vaccinated with Influenza TIV Vaccine during 2008/09 Flu Season CIBERSORT Хорошая корреляция с результатами CIBERSORT
GSE55098 [7] Expression data from peripheral blood mononuclear cell in patients with type 1 diabetes compared with normal controls. Примечание: из ожидаемой биологии в датасете можно отметить уменьшение концентрации NK клеток [8] CIBERSORT/GeneQuery Хорошая корреляция с результатами CIBERSORT (нашли 4 клеточных типа), подтверджается уменьшение NK-клеток
GSE65907 [9] Dissecting the Genetics of the Human Transcriptome identifies novel trait-related trans-eQTLs and corroborates the regulatory relevance of non-protein coding loci. Примечание: гагантский датасет 2112 сэмплов с извесными каунтами лимфоцитов и моноцитов. Много батчей, это надо учитывать. CIBERSORT Запустил для batch_id=1, нет корреляции ни с результатами CIBERSORT и с реальными каунтами. Справедливости ради, корреляции между результатами CIBERSORT и реальными каунтами тоже нет. Надо бы разобраться.
GSE53441 [10] Associations of inflammation, iron and early death in sickle cell disease. Примечание: не нашел подтверджений в литературе, что SCD влияет как-либо на композицию клеточных типов. CIBERSORT/GeneQuery Находим моноциты и лимфоциты и ещё что-то. Для моноцитов и лимфоцитов -- хорошая корреляция
GSE68169 [11] Expression data from mouse brain. Примечание: Марина ожидает какое-то изменение клеточных типов :) Gene Enrichment на известные signature genes "Там все не очень хорошо. По клеточным типам почти ничего не определяется, только нейроны и астроцитома в некоторых метриках". Надо подробнее отчет написать
GSE70528 [12] Gene expression annalysis of peripheral blood cells in patients with chronic kidney disease. Примечание: не успел поискать в литературе предпологаемое изменение клеточных типов CIBERSORT/GeneQuery Пара клеточных типов нашлась (лимфоциты, гранулоциты). Но вообще результаты странные. Кажется нужно попробовать перекластерить и проверить нормализацию.

Прочее

Ссылки

  1. Digital sorting of complex tissues for cell type-specific gene expression profiles, BMC Bioinformatics 2013, 14:89, http://www.biomedcentral.com/1471-2105/14/89
  2. Expression data from pure/mixed brain, liver and lung to test feasability and sensitivity of statistical deconvolution http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE19830
  3. Immune Cell Line Mixtures http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE11058
  4. Time Course of Young Adults Vaccinated with Meningococcal MCV4 and MPSV4 Vaccines http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE52245
  5. Expression data from murine PBCs from mice with advanced mammary tumors and their tumor-free counterparts http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE27563
  6. Time Course of Young Adults Vaccinated with Influenza TIV Vaccine during 2008/09 Flu Season counterparts http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE29617
  7. Expression data from peripheral blood mononuclear cell in patients with type 1 diabetes compared with normal controls http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE55098
  8. "A few small studies in the 80s and 90s have shown a reduction of the frequency of NK cells in the peripheral blood in patients with T1D, especially in the ones with recent onset (Chandy et al. 1984; Herold et al. 1984; Pozzilli et al. 1984; Gupta et al. 1986; Wilson et al. 1986; Hussain et al. 1987)." http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2270779/pdf/CDI-13-101.pdf
  9. Dissecting the Genetics of the Human Transcriptome identifies novel trait-related trans-eQTLs and corroborates the regulatory relevance of non-protein coding loci http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE65907
  10. Associations of inflammation, iron and early death in sickle cell disease http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE53441
  11. Expression data from mouse brain http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE68169
  12. Gene expression annalysis of peripheral blood cells in patients with chronic kidney disease brain http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE70528