Нормализация ДНК-микрочипов

Материал из MachineLearning.

Перейти к: навигация, поиск

Нормализация - важный этап предобработки ДНК-микрочипов, позволяющий сделать несколько рассматриваемых в эксперименте чипов пригодными к сравнению между собой. Основная цель анализа на этом этапе - исключить влияние систематических небиологических различий между микрочипами. Источников таких различий множество: вариации эффективности обратной транскрипции, маркировки красителями, гибридизации, физические различия между чипами (повреждения, царапины), небольшие различия в концентрации реагентов, вариация лабораторных условий.

Содержание

Парадигмы нормализации

Нормализация на все гены, нормализация на гены домашнего хозяйства, нормализация на стабильные гены[1]

Методы нормализации

Масштабирование

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

Для большей устойчивости можно использовать усечённое среднее. Так, в стандартном программном обеспечении производителя микрочипов Affymetrix перед подсчётом среднего отбрасываются по 2% наибольших и наименьших значений интенсивности. Другая модификация — масштабирование к средней интенсивности не по всему базовому чипу, а по каждому подмножеству его проб, соответствующих одному гену.

Affymetrix предлагает использовать масштабирование на последнем этапе предобработки, применяя его непосредственно к матрицам экспрессии, однако, возможно и применение к матрицам интенсивности.

Схема выполнения масштабирования
     Выбрать столбец j матрицы X в качестве базового.
     Вычислить (усечённое) среднее \tilde{X}_j по столбцу j.
     Для всех остальных столбцов матрицы X: вычислить (усечённое) среднее \tilde{X}_i по столбцу i; вычислить \beta_i=\tilde{X}_j/\tilde{X}_i; каждый элемент столбца i умножить на \beta_i.

Нелинейные методы

Предложено большое количество нелинейных способов нормализации данных, использующих различные настраиваемые функции, заменяющие линейную регрессию из предыдущего примера. Среди таких функций cross-validated splines[1], running median lines[1], loess smoothers[1], и т.д. В типичном случае нелинейная нормализация проводится по множеству рангово-инвариантных проб, то есть, проб, имеющих один и тот же ранг во всех микрочипах.

Схема выполнения нелинейной нормализации
     Выбрать столбец j матрицы X в качестве базового.
     Для всех столбцов i\neq\j матрицы настроить параметры нелинейной функции f, отображающей столбец i на столбец j. Пусть \hat{f}_i - полученное отображение.
     Нормализованные значения в столбце j определяются как \hat{f}_i\left(X_j\right).
Метод квантильной нормализации преобразует распределения интенсивностей
Метод квантильной нормализации преобразует распределения интенсивностей

Квантильная нормализация

Цель квантильной нормализации - сделать одинаковыми эмпирические распределения интенсивностей всех микрочипов. Для этого используется преобразование вида x'_i=F^{-1}\left[G\left(x_i\right)\right], где G - эмпирическое распределение интенсивностей каждого чипа, F - эмпирическое распределение интенсивностей усреднённого чипа. Можно модифицировать метод, оценивая F^{-1} и G более гладкими функциями. Однако, для данных большой размерности на практике достаточно и грубой оценки.

Приводимый метод квантильной нормализации - не единственный способ нормализации, основанный на квантилях. Описан метод, основанный на построении сплайнов по множеству квантилей[1], непараметрический метод присваивания одного и того же распределения каждому микрочипу[1] и др.

Схема выполнения квантильной нормализации
     Имея n микрочипов размерности p, построить матрицу X размерности p\times n, где в каждом столбце находятся значения интенсивности по каждому чипу.
     Отсортировать все столбцы X независимо друг от друга, сформировав матрицу X_s.
     Взять среднее по каждой строке матрицы X_s и создать X'_s - матрицу той же размерности, что и X, в каждой строке которой все значения равны среднему по строке X_s.
     Получить матрицу X_n, переставив значения в столбцах X'_s в том порядке, в каком они стояли в исходной матрице X.

Циклическая нормализация при помощи локальной регрессии (cyclic loess)

Данный метод основан на многократном применении локальной регрессии (англ. LOWESS, LOESS) к парам ДНК-микрочипов. Процедура перебирает все попарные комбинации микрочипов, повторяя процесс нормализации до достижения сходимости. Одним из её недостатков является необходимость O\left(n^2\right) применений локальной регресиии, хотя, обычно требуется всего один или два шага цикла. Значительно уменьшить время вычисления можно, используя подмножество данных для построения регрессионной зависимости.

Ниже приведён алгоритм циклической loess-нормализации. Индексы i и j соответствуют номерам микрочипов, а индекс k - номеру пробы или подмножества проб, соответствующих одному гену.

Схема выполнения циклической loess-нормализации
     Сформировать матрицу X размерности p\times n, где столбцы соответствуют различным микрочипам, а строки - пробам или подмножествам проб. 
     Выполнить логарифмирование данных: X\leftarrow \log X.
     Повторять
           Цикл по i от 1 до n-1
                 Цикл по j от i+1 до n
                       Цикл по k от 1 до p
                             Вычислить M_k=x_{ki}-x{kj} и A_k=\frac{1}{2}\left(x_{ki}+x{kj}\right)
                       Конец цикла по k
                       Построить локальную регрессию M на A, обозначим полученную зависимость \hat{f}.
                       Цикл по k от 1 до p
                             \hat{M}_k=\hat{f}\left(A_k\right)
                             a_k=\left(M_k-\hat{M}_k\right)/n
                             x_{ki}=x_{ki}+a_{k} и x_{kj}=x_{kj}-a_{k}
                       Конец цикла по k
                 Конец цикла по j
           Конец цикла по i
     до достижения сходимости или максимального числа итераций.
     Выполнить преобразование к исходной шкале: X\leftarrow \exp\left(X\right).

Примечания

Личные инструменты