МАТЕМАТИЧЕСКАЯ СТАТИСТИКА И МАШИННОЕ ОБУЧЕНИЕ ДЛЯ НАУК О ЖИЗНИ

Почему PCA выглядит треугольной

Часто в вычислительной биологии

Это двадцать четвертая статья из моей рубрики Математическая статистика и машинное обучение для наук о жизни, где я простым языком обсуждаю некоторые интересные аналитические методы из вычислительной биологии и наук о жизни. . Анализ главных компонентов (АГК) широко используется в вычислительной биологии, в частности, в популяционной генетике, микробной экологии и анализе одиночных клеток для установления родства между образцами и клетками. PCA часто имеет своеобразную треугольную или арочную или подковообразную форму, что можно объяснить некоторыми интересными закономерностями в данных. В этом посте я расскажу, какие данные могут привести к треугольным структурам PCA, а также почему важно понимать этот эффект для тщательной интерпретации графиков PCA.

Почему PCA, а не tSNE для популяционной генетики?

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

Однако, как можно видеть, PCA, по-видимому, не обеспечивает достаточного разрешения для различения различных типов клеток в анализе экспрессии генов отдельных клеток, и tSNE или UMAP обычно более информативны для этой цели. Напротив, исследователи популяционной генетики и геномики очень редко (или почти никогда) не используют tSNE и UMAP, а генетическое сходство между образцами обычно устанавливается с помощью PCA или филогенетических деревьев. Почему такая разница в выборе метода уменьшения размерности между этими двумя полями? Одним из объяснений, по-видимому, является присущая tSNE/UMAP сложность обеспечения надежного сходства между кластерами образцов, что делает довольно проблематичным использование tSNE/UMAP для анализа популяционной генетики, где одной из самых главных целей является установление генетических дистанций между разные популяции. Напротив, PCA может обеспечить более точную связь между группами выборок, хотя, возможно, не так удобен для обнаружения гетерогенности между выборками, т. е. совокупности выборок. С другой стороны, популяции часто известны в популяционной генетике, до расчета PCA, из антропологических и археологических исследований, поэтому цель здесь не в том, чтобы обнаружить их, а в том, чтобы понять взаимное родство между популяциями.

Связь между генетическими и географическими расстояниями

Одна из причин, почему визуализация точного генетического сходства с помощью PCA так важна для генетики популяций, заключается в том, что довольно рано стало понятно, что существует некая корреляция между генетическими и географическими расстояниями между популяциями мира. Меноцци, Пьяцца и Кавалли-Сфорца заметили эту тенденцию в 1978 году и предложили неолитическую миграцию земледелия в качестве возможного объяснения этого эффекта.

Позже, с появлением технологий секвенирования следующего поколения, когда стали доступны более полные выборки, Джон Новембр и соавторы предположили, что географическая карта Европы возникает естественным образом как эффективная двухмерная сводка PCA генетической изменчивости европейцев.

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

PCA на случайных данных

Мы увидели, что PCA является важным инструментом для установления сходства между группами образцов, а в случае популяционной генетики треугольная форма PCA может быть значимой при сопоставлении генетических и географических данных. расстояния. Однако оказывается, что некоторые типы данных в науках о жизни могут создавать графики PCA в виде треугольника или клина из-за негауссовой природы данных, т. Е. Если данные не были должным образом преобразованы до вычисления PCA. Чтобы продемонстрировать это, давайте создадим матрицы случайных данных без структуры или корреляций между выборками, используя различные распределения вероятностей, такие как пуассоновское, биномиальное и т. д., которые распространены в науках о жизни, и вычислим PCA на смоделированных данных.

Здесь можно заметить, что нормально распределенные данные без какой-либо корреляционной структуры должны давать почти сферический разброс точек данных вокруг начала графика PCA. Случайные данные после равномерного распределения дают забавный квадрат PCA, как будто гауссовский круг на предыдущем графике растягивается в двух ортогональных направлениях. Довольно примечательно, что пуассоновские, логнормальные и отрицательно биномиальные распределенные данные имеют тенденцию формировать треугольные или клиновидные структуры на графике PCA. Даже данные с биномиальным распределением иногда могут давать PCA, который выглядит как клин или треугольник, см. рисунок выше. Дело в том, что моделируемые статистические наблюдения должны быть независимыми, т.е. внутри матриц случайных данных не закладывалась корреляция, а выборки не должны образовывать кластеры. Однако, приложив немного воображения, можно ошибочно интерпретировать точки в вершинах треугольных/клиновидных ППШ как принадлежащие различным кластерам клеток или популяциям людей.

Эти треугольные или клиновидные структуры можно частично объяснить негауссовостью многих типов данных в вычислительной биологии, что, по-видимому, нарушает очень фундаментальное предположение PCA. А именно, PCA можно рассматривать как аппроксимацию набора данных произведением двух матриц (загрузки и оценки) с последующей неявной минимизацией квадрата ошибки между данными и аппроксимацией. Минимизация квадрата ошибки подразумевает, что предполагается нормальное/гауссово распределение ошибки аппроксимации или остатков, что может быть проблемно удовлетворить, если матрица данных X не следует гауссовскому распределению. Можно спросить, можно ли вообще использовать PCA для ненормально распределенных данных? На практике PCA часто выполняется на данных с ненормальным распределением при условии, что перед вычислением PCA было применено некоторое данное преобразование.

Стандартизация и логарифмическое преобразование обычно применяются ко многим данным Life Science до PCA, что маскирует негауссовость данных и удовлетворяет предположение о нормальности PCA. На практике это часто приводит к менее выраженной треугольной форме графиков МГК. Давайте применим стандартизацию и логарифмическое преобразование к ранее смоделированным матрицам данных и посмотрим на разницу.

Мы можем заметить, что разброс точек данных на графиках PCA становится все более и более сферическим после применения логарифмического преобразованияи стандартизации. Интуитивно это означает, что отсутствует направление предпочтительной ориентации данных в многомерном пространстве, т.е. все направления одинаково информативны/важны.

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

Данные с блочной структурой и эффектом дуги

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

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

Смоделированная выше матрица данных содержит 200 выборок (S0,…, S199) и 200 переменных (V0, …, V199). Более темная область на тепловой карте соответствует нулевым элементам матрицы, а более яркие цвета соответствуют большим значениям элементов матрицы. Следовательно, матрица данных состоит двух четких блоков, или кластеров, или совокупностей, где выборки S0, …, S99 кажутся полностью отвязаны от выборок S100,…,S199, так как они не имеют общих переменных, т.е. переменные V0,…,V99 имеют ненулевые значения только для выборок S0,…,S99, а переменные V100, …, V199 имеют ненулевые значения только для выборок S100, …, S199. Это экстремальное разделение, для реальных проектов это редкость, но это моделирование поможет нам построить наше интуитивное представление о причинах треугольные структуры на графиках PCA. В микробной экологии исследователи обычно говорят об градиентах окружающей среды градиентах, из-за которых данные выглядят нечетко (pH, температура и т. д.). Усредняя элементы по переменным в обоих блоках, мы действительно можем рассматривать матрицу данных, как если бы в данных присутствовали два невзаимодействующих вида, которые не имеют общей среды, т. е. нельзя найти выборку, в которой присутствуют оба вида.

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

Здесь мы можем заметить, что почти все отклонения в данных охватываются первым главным компонентом. Это неудивительно, поскольку мы знаем, что существует очень сильный доминирующий эффект группировки (градиент) двух кластеров среди выборок. Таким образом, число k ведущих ПК (объясняющее большую часть различий в данных) можно рассматривать как быстрый способ оценить количество кластеров в данных как k+1 кластеров.

Далее мы, возможно, можем наблюдать, что уже с двухблочной матрицей знаменитая треугольная форма ППШ становится более заметной, хотя при некотором воображении я выделил ее красной пунктирной линия. Мы можем ясно видеть два кластера на графике PCA. Однако что произойдет, если мы увеличим количество блоков в матрице данных? Давайте смоделируем матрицу данных с тремя блоками и визуализируем дисперсию, объясненную каждым PC, а также графики PCA и tSNE для сравнения.

Как и следовало ожидать, мы видим, что два ПК объясняют большую часть дисперсии в данных, а три кластера образцов отчетливо видны в обоих случаях. Графики PCA и tSNE. Ситуация, однако, резко меняется, когда количество кластеров увеличивается еще больше, т.е. когда мы имеем более 2-3 кластеров. Давайте теперь смоделируем блочную матрицу с 10 различными совокупностями выборок.

Примечательно, что мы похоже, не можем различить 10 кластеров на графике 2D PCA, фактически несколько популяций, кажется, слипаются вместе, так что не более При визуальном осмотре графика PCA можно обнаружить 4 четких кластера. Это будет означать, что любой алгоритм кластеризации будет иметь большие проблемы с группировкой выборок в их совокупности на основе двух основных компонентов, даже если мы укажем точное количество выборочных совокупностей в данных. Следовательно, для правильной кластеризации выборок потребуется рассмотреть более двух основных компонентов, однако это будет все более и более трудно визуализировать и еще труднее достичь strong> соответствие между уменьшением размерности и кластеризацией, которое подробно обсуждалось здесь. Поразительно, tSNE, кажется, легко разрешает все 10 кластеров только с двумя скрытыми переменными tSNE. Даже если в целом это не очень хорошая идея, в данном конкретном случае кластеризация на 2D-рисунке tSNE была бы успешной, т. е. можно было бы легко сгруппировать все выборки по их 10 популяциям.

Данные с нечеткими блоками и эффектом подковы

Структура экстремальных блоков, показанная в предыдущем разделе, редко встречается в реальных данных. Обычно кластеры образцов менее прозрачны, можно было бы ожидать, что матрицы данных с более нечеткой блочной структурой будут вполне типичны для проектов Life Sciences. Одним из способов добавить некоторую «размытость» к предыдущей блочной матрице было бы создание матрицы полосовых данных, в которой только элементы по диагонали не равны нулю. Здесь мы все еще подозреваем некоторые образцы блоков, но они не такие прозрачные, как в предыдущем разделе. Давайте смоделируем и визуализируем типичную матрицу данных полосы с двумя «нечеткими» блоками.

Этот тип полосной матрицы может появляться в проектах по вычислительной биологии, когда существует строгое пространственное или временное упорядочение образцов, обычно они говорят, что существует градиент, влияющий на содержание в образцах. Примерами такого градиента могут быть pH, температура, пространственная координата, период времени отбора проб, также могут быть технические градиенты, такие как партия (лабораторный , технология, страна). Используя интуицию из предыдущего раздела о видах, присутствующих в определенной среде, но отсутствующих в других, мы снова можем усреднить матричные элементы по группам следующих переменных: V0, …, V99 («виды 1”) и V100, …, V199 («вид 2») и наблюдать более постепенное, т. е. гораздо менее резкое, изменение видов один и два. изобилия при переходе из одной среды в другую. Ниже мы можем заметить, что, например. вид 1 также может присутствовать, хотя и в меньшем количестве, в среде, которая была занята исключительно видом 2 в предыдущем разделе.

Как насчет PCA для матрицы каналов? Ниже мы вычислим дисперсию, объясненную ведущими главными компонентами, а также график PCA для матрицы полосовых данных с двумя предполагаемыми нечеткими кластерами.

Здесь мы наблюдаем знаменитую арку или подкову на графике PCA. Форма разброса точек данных по-прежнему несколько треугольная, а два крыла арки или подковы соответствуют двум разным кластерам. Также обратите внимание на постепенное изменение дисперсии, объясненное графиком главных компонент. При чистой матрице блочной структуры было несколько одинаково важных ведущих ПК, а теперь есть один ведущий ПК, который обычно соответствует сильному градиент (например, временной), который доминирует над значениями матрицы данных полосы. Как правило, говорят, что выборки на графиках PCA в форме подковы упорядочены от раннего к позднему времени,т. е. временное упорядочение, или от географического запада к географическому востоку (пространственное упорядочение). ). При анализе одиночных клеток такие упорядоченные нити клеток типичны при мониторинге дифференциации стволовых клеток, другими словами, когда клетки упорядочены по так называемой траектории клеточных судеб. >». Как правило, карты диффузии (еще один тип метода уменьшения размерности) отлично подходят для разрешения траекторий ячеек и широко используются вместо PCA при работе с развитием клеток в биологии одиночных клеток.

Формирование своеобразных арочных или подковообразных форм на графиках PCA имеет какое-то отношение к кривым Лиссажу, известным в математике. Это было замечено также в литературе по популяционной генетике, см., например, Novembre & Stephens в Nature Genetics 2008.

Эти кривые можно увидеть, если мы нанесем каждый главный компонент как функцию номера образца, когда образцы были упорядочены по градиенту окружающей среды, например. времени или пространственного положения. Давайте проверим, что эти кривые видны из PCA, рассчитанного на смоделированной матрице каналов:

Действительно, очень интересные и необычные формы! Обратите внимание, что PC1 сильно коррелирует с градиентом окружающей среды. Что же произойдет, если мы рассмотрим три «нечетких» выборочных совокупности?

Мы видим, что концы подковы начинают изгибаться к центру масс. Еще одна вещь, которую мы можем наблюдать, заключается в том, что темно-зеленая и пурпурная выборочные совокупности кажутся очень далекими друг от друга, в то время как красная выборочная совокупность является общим соседом. Этот эффект можно понять интуитивно, если мы посмотрим на матрицу данных каналов и поймем, что первые 100 (темно-зеленые) и последние 100 (пурпурные) выборки вряд ли имеют общие переменные, в то время как красные образцы (100 образцов в середине матрицы полос) имеют много общих V-переменных как с пурпурными, так и с темно-зелеными выборками. Теперь мы еще больше увеличим количество «нечетких» блоков и посмотрим, что произойдет с графиками PCA и tSNE для 10 выборочных совокупностей.

Очевидным наблюдением здесь является то, что концы подковы на графике PCA теперь сильно согнуты по направлению к центру масс подковы. Таким образом, здесь мы имеем контринтуитивный эффект: кластеры золотых и темно-зеленых образцов на концах подковы кажутся намного ближе друг другу, чем, например, голубые и синие выборочные совокупности в середине подковы, и они будут приближаться друг к другу еще больше, если мы увеличим количество нечетких блоков в матрице данных. Теперь представьте, что существует временной градиент, действующий вдоль подковы, т. е. образцы были упорядочены от раннего времени к более позднему времени, при этом темно-зеленая популяция является самой молодой. и образцы золота являются самыми старыми, в то время как популяции голубого и синего цветов относятся к некоторым промежуточным моментам времени. Это взаимное сближение концов подковы означает, что самый молодой и самый старыйобразцыстановятся очень похожими друг на друга по сравнению с выборками из промежуточных моментов времени, что странно. Можно было бы ожидать, что самые молодые и самые старые выборки более различны друг от друга, чем обе по отношению к выборкам из промежуточных моментов времени.

Интерпретация подковы на графике PCA становится еще более сложной при сравнении генетической изменчивости среди населения мира. Если существует пространственный градиент (географическое разделение) выборок, в которых генетическая изменчивость измерялась как V-переменные в матрице полос, может показаться, что PCA график, согласно которому популяции с дальнего востока генетически более похожи на популяции с дальнего запада, чем на их общих соседей. Поэтому арочные и подковообразные эффекты часто рассматриваются как артефакты в микробной экологии особенно, а в последнее время и в популяционной генетике, где были разработаны специальные методы минимизации этих эффектов, см., например, метод Factor Analysis от Francois & Jay в Nature Communications 2020.

Краткое содержание

В этой статье мы узнали, что своеобразные треугольные структуры PCA часто можно увидеть в различных областях наук о жизни, таких как микробная экология, популяционная генетика и биология отдельных клеток. Мы обсудили, что обеспечение распределения вероятностей данных близко к нормальному, что важно для PCA, треугольное распределение точек данных на графике PCA обычно подразумевает наличие корреляционной структуры в данных. В частности, когда матрица данных состоит из отдельных или нечетких блоков выборок, это может привести к арке или подкове эффект, который иногда приводит к вводящей в заблуждение биологической интерпретации кластеров на графике PCA. Тем не менее, PCA по-прежнему кажется более точным и подходящим, чем tSNE и UMAP, для популяционной генетики, где генетическое родство между группами образцов (популяциями) является первостепенной важности.

Как обычно, дайте мне знать в комментариях ниже, какие аналитические методы из наук о жизнии вычислительной биологии кажутся вам особенно загадочными, и я постараюсь рассмотреть их в этой колонке. Проверьте файлы, использованные для поста, на моем github. Подписывайтесь на меня в Medium Николай Осколков, подписывайтесь на меня в Twitter @NikolayOskolkov и подключайтесь через Linkedin. В следующем посте мы обсудимкак кластеризоваться в пространстве UMAP, следите за обновлениями.