Мы часто говорим о задачах, которые лежат на стыке той или иной классической науки и анализа данных. В сегодняшнем докладе эта идеология представлена воочию — большую часть доклада читает учёный, а о конкретных методах и инструментах рассказывает программист.
Под катом — расшифровка и основная часть слайдов.
Дмитрий Алексеев, директор по R&D биомедицинского холдинга «Атлас»:
— Вообще-то я микроб. Такое необычно слышать, ведь ты привык, что тебе люди что-то рассказывают. А я микроб. Нас много живет. И в тебе тоже.
Цифра такая примерная — 100 трлн на каждого. Можешь умножить на количество посетителей. Столько нас сегодня здесь. Я пришел кое-то важное тебе рассказать про нас, микробов, потому что в последнее время ты не очень обращаешь на это внимание, и ни к чему хорошему это не приведет. Важно, чтобы у тебя в голове остались две вещи, когда я закончу: что, во-первых, я хороший, а во-вторых, что данные, доступные тебе прямо сейчас из твоего ноутбука, могут рассказать еще больше про то, какие мы интересные.
Когда нас, микробов, много, нас называют микробиотой. И сейчас в вашей человеческой медицине есть большая надежда, что в ближайшем будущем вы опять сможете шалить, пить, курить и неправильно питаться, а мы, микробы, вас обратно спасем. И в целом это называется сейчас тераностика — когда мы диагностируем, что у тебя болит, и вылечим это тоже. Мы, микробы, вообще можем все. И понятно, что мы на этой планете гораздо дольше живем, чем ты. С самого того момента, как ты появился, еще будучи маленьким червячком, мы уже тебя заселили. И важно понимать, что все твои органы, особенно кишечник, про который мы будем говорить, — они развивались вместе с моими предками, хотя, по правде, у меня как у микроба нет предков. Мы делимся пополам. Чуть позже ты увидишь этот прекрасный процесс.
Если бы ты хотел узнать, стоит ли заниматься микробами, и в 2014 году залез в базу данных публикаций — это такая логарифмическая шкала — ты бы увидел, что микробами занимаются. Тысячи статей в год интересных, люди очень много интересного пишут и про иммунитет и микробов, и про раковые заболевания и микробов, и в целом про связь микробов или микробиоты, особенно кишечника, с заболеваниями. Горячая тема. И эта горячая тема — постгеномная эра. После того, как люди посчитали, вычислили, прочитали геном человека, те же самые технологии они обратили на микробов. И выяснили, что нас гораздо больше, чем раньше предполагалось.
Изучают нас из-за того, что в нас есть ДНК. Ты удивишься, но во мне ДНК такая же, как в тебе. Я себе просто эту мысль в тишине иногда думаю, что во мне такая же ДНК, как в людях. Это поражает. Все-таки мы супер-разные, а записано все ноликами и единичками. Хотя, может, тебе это очень знакомо. Почему? Потому что ты делаешь всякие эти приложения, и полезные приложения, и бесполезные. И полезное приложение из ноликов и единичек, и бесполезное. Тут главное — правильно выстроить порядок. Хотя я уверен, что мой порядок никто не выстраивал, за меня эволюция работала. Те мои братья, которые были посильнее, предки, они просто оставались. Те, которые как-то неправильно изменялись, они исчезали. Это то, что называется отбором. И совокупность наших генов называется мета-геном. Это то, что тебе — человеку, который анализирует данные, — подается в первую очередь как сырые данные. И эти гены можно найти в любой среде. Даже в ядерном реакторе или на космической станции есть мои друзья-микробы, и у них тоже есть гены, и они действуют по тем же правилам.
Если посмотреть в кишечник, можно увидеть разнообразие, то есть много есть таких ребят, как я. Но есть еще и другие виды. Они в другой кепке, в других очках, кто-то в кроссовках, кто-то в шортах. Примерно от 300 до 1000 видов таких ребят живет в каждом кишечнике. И удивительно: если так прикинуть, то мы не очень поймем, каких клеток больше: меня, то есть микробов, или твоих собственных. Но мы там все умещаемся в эти 1,5 кг сухого веса, который есть у тебя в кишечнике. Почему? Потому что мы реально меньше. Если ты не догадался, то я сейчас — всего лишь увеличенная копия микроба.
Поэтому число генов, каких-то функциональных участков ДНК, которые что-то могут делать, получается на пару порядков выше, так что на самом деле я могу гораздо больше, чем ты, и я твое эволюционное приспособление, чтобы ты мог хулиганить. Ты свой генетический код никогда не изменишь, и когда ты начинаешь есть нехорошую еду, в первую очередь я к этому учусь приспосабливаться. Сейчас я тебе прямо из данных покажу, как я это делаю.
Хорошая картинка, очень старая. Тогда еще про гены никто не читал усиленно. Часть заболеваний на английском языке написана, заболеваемость падает. Это все инфекционные заболевания, причиной которых являются такие же ребята, как я, но они гопники с виду. А другие заболевания связаны с твоей иммунной системой. Например, диабет или астма. Что-то в ней не так работает. И это происходит прямо в наше время. В человечестве инфекционных заболеваний меньше, а заболеваний, которые связаны с иммунитетом, становится больше. Это интересно.
Что произошло, почему стало спадать количество инфекционных заболеваний? Потому что вы придумали антибиотики. Антибиотики — это такие маленькие вещества, которые не дают мне либо размножаться, либо двигаться, и тогда я умираю. И ты эти антибиотики принимаешь, чтобы от плохих ребят избавиться, но страдают все, потому что мы устроены практически одинаково, никакого специфичного лекарства от отдельной бактерии, от отдельного микроба, не существует. И поэтому хорошие ребята тоже умерли — иммунитет страдает.
Я вас, людей, изучаю в последние 10 лет: кандидат биологических наук — это то и значит, что я изучаю жизнь. Все это время я думаю, что иммунная система была создана у человека, чтобы вычислять, какие микробы есть, правильно их поддерживать. И в основном это происходит в кишечнике, и, опять же, по количеству клеток. То есть ты отлично умеешь контролировать, кто там должен находиться.
Вот тоже интересная история, пока не относящаяся к данным. С самого детства все зависит от того, как ты родился. Если это кесарево сечение, то к тебе первые микробы попадают в кишечник с кожи матери. Если это оригинальный, исконно человеческий способ рождения, то микробиота вагинальная, и оказывается, что наш кишечник привык за это время делаться правильным, вырастать, исходя из того, что вначале микробы от мамы передаются из ее влагалища. Если же они с кожи мамы, то это совсем другие микробы и начинает происходить не так. Часто это выражается у детей, например, в аллергиях. Подтверждением этого являются уже существующие рекомендации: если было кесарево сечение, то после этого ребенка обмазывают в материнском соке, и тогда правильные микробы попадают в кишечник, и дальше все происходит правильно.
У детей эти микробы сильно меняются: то те, то другие. Они болеют, и иммунитет привыкает. В какой-то момент, как мы думаем, окно возможностей закрывается. Ты запомнил всех хороших и всех плохих за счет своей иммунной системы. Это супервычислительная машина. Она может по одному маленькому элементу, просто по кепке, узнать меня как микроба и сказать, свой я или чужой. Поэтому если ты пьешь всякие кефиры с живыми бактериями, они у тебя останутся, но до трех-пяти лет нигде не записано, что они свои. Можно поразмышлять, что у тех детей, которые рождаются сейчас, уже встроен одинаковый код, потому что они с детства пьют эти синтетические бактерии. Возможно, это место для суперхакерских атак на будущих людей, потому что у всех них записан код одной и той же синтетической бактерии. Компанию, которая это делает, ты назовешь сам.
Во взрослом возрасте наша комбинация, наше соотношение примерно такое, как ты питаешься. Так устроено. Зачем нужно много разных? Потому что мы специалисты в разных вещах. Специалисты в том, чтобы переваривать разные полимеры в твоей еде. В основном ты раньше ел не так много животной пищи, много растительной, и мы, твои микробы, приспособились переваривать эту растительную пищу. Каждый из нас умеет делать что-то одно. Представь себе, что ты растительной пищи ешь немного, или получаешь ее сразу с завода. Она перемолота, нам почти ничего не остается. И специалисты уходят. Просто серые будни твоего кишечника — это всегда однотонная еда из одной и той же картонной упаковки.
Когда ты стареешь, мы, на самом деле, думаем что мы готовим тебя к смерти — чтобы ты снова переварился на более простые составляющие, и мы из тебя создали новую жизнь на этой планете. В принципе, мы так делали всегда.
Интересный способ понять, как это здорово устроено и как это встроено в человеческий организм. Есть такая теория, что через иммунные клетки из кишечника матери микробы передаются с молоком ее ребенку. Там, у него в кишечнике, открываются эти иммунные клетки. Таким образом мама с какого-то момента заселяет кишечник ребенка полезными микробами. Другими словами, пока создавалось это эволюционное тело человека, мы нашли способ проникать к твоим детям максимально быстро и безопасно.
Вот эта картинка на самом деле интересная. Когда-нибудь в реальности тебе понадобилось избавиться от большого количества плохих микробов. Ты сделал две вещи. Антибиотики я уже назвал. Второе — про гигиену: ты заставил всех мыть руки. Крайний вариант — Маяковский, который вообще боялся всего, и все мыл со своим тазиком. Это суперкультурное явление. Мы должны понимать, что ни в какой живой природе такого явления и мема нет, будто надо все мыть. Ты его создал, создал какие-то суперсказки, они причем в разных народностях могут быть разные. В моем детстве, в твоем детстве, в чьем-то детстве в 1980-е годы точно был этот персонаж Мойдодыр, и мальчику с грязными руками и грязными ногами просто было супермегастыдно. Сейчас, если ты наберешь «теория гигиены» в Википедии, то тут же найдешь теорию одного европейского врача о том, что количество аллергий у детей связано с тем, что они помещены в суперстерильные условия. За счет этого иммунная система не обучается, то есть она живет в стерильной коробке. И потом, столкнувшись с чем-то действительно враждебным или полезным, она на все это реагирует воспалением. А воспаление — это и есть аллергия.
Прикольная история про питание, про то, как это может быть интересно устроено. Например, ты ешь мясо, и один мой коллега — тоже микроб — может из этого мяса получать вещество, которое будет потом создавать холестериновые бляшки. Если такого коллеги у тебя не живет, то проблем с мясом у тебя нет. Если же он у тебя поселился, то хорошо бы по этому поводу подумать, как-то это отрегулировать. Потому что я понимаю, что одна из твоих целей — оставаться в этом теле как можно дольше, сохраняя при этом его работоспособность и радость к жизни. Нужно, чтобы тело было не просто оболочкой, которая путешествует сотни лет куда-то, а чтобы она была живой оболочкой. Поэтому интересно обращать внимание. И здесь уже начинаются всякие данные, которые есть в интернете.
Ты начал меня активно изучать во время этой истории про эпидемиологическое ожирение в Соединенных Штатах Америки. С 1990 по 2008 год в некоторых штатах ожирение как диагноз с 10% выросло до 30%. На самом деле, это не очень похоже на те голливудские фильмы, которые ты смотрел. По улицам действительно ходят очень полные люди. У 30% из них стоит диагноз. При этом структура питания за эти 30 лет у американцев не менялась. И Джеффри Гордон, исследователь, обнаружил, что у людей, которые более стройные, slim, и у людей полных с диагнозом «ожирение» разные микробы. Более того, когда он этих микробов от людей с ожирением пересадил в мышей, выяснилось, что мыши быстрее набирают вес. То есть этот вариант микробов, который живет у людей с ожирением, производит больше калорий из того же количества пищи. И тогда ты понял, что состав микробов оказывает влияние на то, как ты будешь себя чувствовать.
Такая же интересная история происходит на пищевом рынке, когда люди получают мясо. Если субтерапевтические дозы антибиотиков давать животным, то они потихонечку набирают вес. Если ты в капиталистической стране, то чем больше ты из того же количества корма и того же количества времени получишь веса, который ты продаешь в долларах, тем тебе выгоднее. Естественно, в какой-то момент все производители животных стали пользоваться этим свойством. Когда эти животные попадают на стол и дальше внутрь человека, антибиотики как вещества практически никуда не деваются, и человек становится таким же потребителем субтерапевтических доз этих антибиотиков. И результат точно такой же — человек просто набирает вес. Субтерапевтические дозы — это здесь важно, потому что дозы такие маленькие, что ни Роспотребнадзор, ни Американпотребнадзор их просто не засекают. Есть какие-то пределы чувствительности.
Другая твоя история — действительно живой проект, можно на него посмотреть. Он назывался Happy Meal. Сам догадаешься, почему. На 137 день оставленная на воздухе еда выглядит примерно так же, как она выглядела в магазине. Почему она так выглядит? Потому что ни микробы, ни плесень эту еду не едят. Представь, что такая еда попадает внутрь тебя, и там такие же микробы. Они тоже не очень хотят ее есть. Говорят, потом «Макдональдс» выпустил опровержение, что там никакой химии специальной нет, просто очень много соли. Но если подумать, нам все равно, что там в большом количестве не дает микробам нормально расти.
Еще одна картинка, уже более сложная. И она уже прикольная — про данные, которые в разных экономических группах показывают, как растет подушевой доход, и что происходит с потреблением мяса, пустых калорий — это в основном алкоголь и сладости, — и вообще с количеством калорий. Вот экономическая группа А — самые богатые страны с 1961 по 2009 год. Доход вырос, потребление мяса выросло. В группе B начиналось ниже, но там то же самое происходит. И фактически всё, что мы видим во всех экономиках, — это если растет подушевой доход, то люди начинают есть больше мяса, больше пустых и диетарных калорий. Кроме Индии, там мясо не едят. То есть прямо from data видно, что чем больше мы зарабатываем, тем больше едим. И едим мы те самые пустые калорий, которые не суперполезны нашим микробам. А образ жизни — притом, что мы больше зарабатываем — становится не суперподвижный.
Мы когда-то смотрели этих микробов в России и обнаружили, что в больших городах — Новосибирске, Санкт-Петербурге — микробы такие же, как у европейцев и у американцев. Такие же комбинации. А в деревнях другие микробы, какие-то уникальные составы. И мы тогда поняли, что это прямо эффект глобализации, что когда человек приезжает из деревни в город, он попадает под фильтр антибиотиков, которые есть в еде, и простых консервантов, которые есть во всей еде. Ао всему миру одни и те же люди покупают продукты во всех магазинах. И это фильтрует и убирает какие-то одни микробы, и остаются только те, которые могут пережить такой геноцид. Тогда мы все становимся одинаковыми, мы не можем отличить европейца от американца и от русского, который живет в большом городе.
Еще одна маленькая история. Всё, что я сказал про антибиотики, относится и к ней тоже. Важно это знать, потому что это мировая тема, которую тоже можно отследить в данных. Вообще, ты выпускаешь все больше и больше антибиотиков, и та доза, от которой умирала первая бактерия, когда был сделан первый антибиотик, сейчас должна быть стократной, чтобы убить бактерию. Мы всегда приспосабливаемся из-за того, что можем поделиться раз в час, и нам несложно умирать. Мы приспосабливаемся гораздо быстрее. Есть вероятность, что возникнет такой нехороший парень среди нас, на которого не будут действовать ни одни твои антибиотики. Он будет передаваться быстро и будет смертелен. Это проблема антибиотикобезопасности. Антибиотики кружат во всей среде.
Мы с ребятами сделали такую картинку про то, какие бывают разные уровни резистентности к разным антибиотикам в разных странах. Ее можно найти онлайн или в этой статье. Интересно, что чем более страна индустриализована, как, например, Китай, тем больше резистентности. И у тех же самых китайцев мы видим резистентность еще и к химическим веществам. То есть микробы начинают обрабатывать какие-то неприятные химикалии, попадающие внутрь организма. Они уже приспосабливаются. Но не очень понятно, делается ли от этого китайцам лучше или нет.
Хороший проект, в котором мы участвуем с российской стороны — микробиота метрополитенов всяких городов. Сейчас здесь уже почти 100 городов. Началось все это с Нью-Йорка. Собрали ДНК со всех станций и посмотрели, какие там микробы. И, например, про данные — которые, кстати, тоже открыты, — мы решали недавно следующую задачу: можно ли по составу микробов определить, какая это станция метрополитена? Потому что от разных станций разные микробы едут в центр, и там уже на пересадке все смешиваются.
Вообще, мы воспринимаем эту тему про микробов как complexity science. Мне кажется, что гуру complexity science находится в Санта-Фе. Там есть такой Complexity University, Institute of Complexity Science, я когда-то там проходил стажировку. И один из способов изучения сложности… Сложностью мы называем состояние из простых объектов, между которыми есть какие-то связи. И молодежную систему мы создали уже из двух бактерий, трех веществ, которыми они обмениваются, какой-то еды, которая поступает, и кишечника. Мы даже в какой-то момент симулировали. Красные и синие бактерии — кишечник, и все это между собой общается. Это называется Agent Based Modeling. Можно эту историю запускать, а потом смотреть, получим ли мы что-то похожее на происходящее в реальной жизни. Например, мы получили систему с двумя стабильными точками, и точки отличаются в зависимости от того, как микробы распределены в кишечнике. На самом деле люди пока это померить не могут. Но мы тоже представляем, что одни живут ближе к стеночке, другие любят посерединке.
Потом мы за счет этой системы прием лекарств симулировали, и выяснили, что в каком-то случае вдруг вымирают все микробы, которые неустойчивы к лекарствам, и остаются только те, которые устойчивы. Таким образом резистентность может распространяться по планете.
Другая история — например, про ДНК. Я немножко расскажу вглубь про алгоритмы, про Data Science Day. Можно прям взять последовательности ДНК микробов. Мы работаем с последовательностью примерно в 200 букв. Попилим ее на k-меры — слова длиной k. Мы брали, по-моему, девятибуквенные слова. Можно дальше по этой подписи и частоте девятибуквенных слов пытаться сравнивать между собой микробный состав всех находящихся здесь людей. Что интересно, уже при таком подходе мы нашли таких людей, у которых было какое-то новое существо, и оно оставляло новый след из этих девятибуквенных слов. Про это даже где-то напечатали, в Bioinformatics. Тогда в указанном существе не было генома. Пока мы дописывали статью, геном появился, и мы явно доказали, что перед нами то самое существо, которое можно определить всего лишь по частоте букв, то есть по не очень сложной метрике.
Еще мы любим работать с графами. Я не очень понимаю, какой у тебя уровень. Я слышал предыдущее выступление. Понимаю, что уровень, наверное, какой-то супер-высоко-математическо-программистский, поэтому оставлю слово графы без объяснения.
Есть такие графы де Брёйна, в которых решается следующая задача: найти суперстроку, в которую будут входить все подстроки, и таким образом собрать геном маленького микроба, потому что люди могут его только по частям получать. И мы научились эти графы считать быстрее за счет того, что мы не обрезаем в них всякие хитрые разветвления, а оставляем их и умеем с ними работать в высокопроизводительных компьютерах. Кто бы мог подумать? И это тоже заслуга. То есть нерешенных задач с уже решенными методами здесь очень много.
Я специально привел обычного программиста, который пришел ко мне на работу два года назад, чтобы он от чистого сердца поделился тем, что он может сделать в биологии.
Анатолий Васильев, инженер-исследователь «Атласа»:
— Я пришел два года назад, у меня совсем не было биологического бекграунда. Мой опыт подсказывает: чтобы заниматься Data Science в биологии, необязательно иметь биологическое образование. Я хочу рассказать вам сегодня о том, чем я занимаюсь, на примере двух алгоритмов.
Первый — анализ уровня синтеза витаминов микробиоты человека, второй — text mining фактов про бактерии.
Что касается анализа уровней синтеза витаминов, задача может быть сформулирована так. На входе у нас есть множество матриц. Для начала, это так называемая матрица относительной представленности бактерий в образцах. Каждый образец — какой-то человек, микробиота конкретного человека. Таким образом, матрица говорит о том, какие бактерии у него есть в кишечнике. И затем это несколько справочных матриц из открытого проекта PICRUSt. Вот матрица о том, какие гены бактерий с какими ферментами связаны. Витамины состоят из ферментов. И на выходе мы хотим получить матрицу, в которой будет содержаться информация об уровнях синтеза витаминов в образцах. И, на самом деле, исходя из описания задачи уже видно, что она сводится к множеству операций агрегации и связывания матриц. И как data scientists — я один из них в числе этой команды — мы занимались реализацией алгоритма, проведением exploratory-анализа и всем, что связано с кодом. Но нам необходимо было руководство биолога для того, чтобы он преподнес нам концепцию алгоритма и помог понять, какие математические операции имеют и не имеют смысл с точки зрения биологии. Например, не всегда понятно, что корректно брать — медиану или среднюю.
Покажу вам heatmap. Он показывает способность микробиоты, образцов, к синтезу ферментов витамина B9. Чтобы микробиота могла его синтезировать, она должна также синтезировать все ферменты, из которых он состоит. Названия образцов немножко слились, но сейчас это не так важно. Исходя из этой heatmap мы можем увидеть некоторые группы образцов, у которых, например, все довольно хорошо с синтезом этого витамина. Почти все ферменты присутствуют. Но есть две группы образцов, у которых все хуже, и как data scientist я могу задать вопрос: что отличает группу этих образцов? Я могу сравнить эти образцы по их бактериальном составу или по каким-то метаданным. Может быть, все эти образцы принадлежат людям, которым за 40, например.
На самом деле у нас очень много матриц. В случае алгоритма анализа синтеза витаминов размер матрицы небольшой, он помещается в оперативной памяти, поэтому такой анализ легко провести у себя на ноутбуке. Но в случае, например, данных WGS (whole genome sequencing — полногеномные данные) у нас есть матрица о представленности 9 млн генов в 10 тыс. образцах, то есть это 9 млн столбцов и 10 тыс. строк. Такая матрица не помещается в оперативной памяти, поэтому нам нужны технологии для работы с Big Data, такие, например, как HBase — потому что он заточен под матрицы. Мы думаем, что с помощью Big Data-технологий мы можем собирать огромное количество биологических данных, накапливать их. Уже сейчас у «Кномикс» есть данные об относительной представленности бактерий и основанные на них результаты анализов. Например, уровни синтеза витаминов.
Дмитрий:
— Мы стали смотреть на все эти кучи матриц. У нас есть рабочее название MetaMut. Это такой проект, где мы можем представить в виде гигантской матрицы все исходные данные для биологических алгоритмов, которые мы используем в связи с микробами. Данные говорят, какие бактерии есть, какие гены, какие в этих генах мутации. Размерность матрицы мы прикидываем в районе 20 млн таких столбцов, а строк столько же, сколько образцов. И дальше каждый алгоритм, который люди официально выпускают в виде статьи, считающей что-то про микробов, мы на самом деле можем представить в виде набора матричных операций перемножений, сложений, транспонирований и т. ж. И тогда мы подходим не к биоинформатике, всей этой суперформализованной науке, а просто к правильному языку матричных операций. Если мы думаем и надеемся, что такую сложную историю про бактерии, гены, всякие обходы графов и так далее мы можем представить всего лишь в виде конечного набора матричных операторов… в этот самый момент описанный язык станет конструктором, с помощью которого любой data scientist, не погружаясь в смысл, сможет упражняться с матрицами. И когда он будет находить интересные свойства внутри матриц — с математическим образованием это не очень сложно, — у него всего останется лишь вопрос, есть ли здесь какая-то интерпретация. Он с этим вопросом будет возвращаться обратно к биологу.
Анатолий:
— Дальше я хотел рассказать про text mining фактов про бактерии. На входе этого алгоритма у нас есть корпус из 16 тыс. научных статей про микробиоту кишечника человека. И также у нас есть каталоги, они же словари названий бактерий, болезней, пробиотиков, еды. И мы хотим получить таблицу с предположительными фактами про бактерии. То есть это такие триплеты: бактерия, еда и как они между собой связаны. Среди наших инструментов для решения этой задачи были стандартные средства natural language processing —кстати, из пакета spaCy, а также ручная подготовка выборок. И именно здесь нам были необходимы биологи, чтобы они вычитывали предложения из этих статей, где мы ищем связи, и помечали их как positive или negative. Мы извлекали отношения между сущностями в этих предложениях, где сущность — это бактерия, еда. Оно у нас построено на поиске кратчайшего пути между словами в графе предложений. И у нас есть такая гипотеза, что по кратчайшему пути мы можем определить связь между двумя сущностями. Затем мы применяли transfer learning pipeline: это экстрактор фич и какой-то простой классификатор, simple classifier.
Я решил вставить небольшой пример кластеризации. Мы собрали много-много кратчайших путей из разных графов научных предложений, в которых встречалось какое-то название бактерий — например, Faecalibacterium prausnitzii — и какая-то еда или пребиотик инулин. Мы связывали эти две сущности в предложении, и получили много разных кратчайших путей в графах. И мы их кластеризовали, получив такую интересную картинку. На самом деле она нам говорит о том, что наша гипотеза, все эти кратчайшие пути в графах, возможно, действительно работают и как-то систематизируются. Это PCA.
Дмитрий:
— Здесь же есть другая важная история. Мы работаем с научными текстами. И люди, если честно, в научных текстах используют не всю глубину и выразительность английского языка. На самом деле, допустим, я как человек, который закончил физтех, могу определить человека, который закончил физтех по стандартным английским выражениям, которые он использует. Там в целом есть какой-то словарь-минимум. Для науки тоже существует такой словарь-минимум. И эта возможность классификации каких-то стандартных оборотов, которые сообщают нам факты, упрощает семантический анализ текста.
Мы дальше из Толиной работы взяли и построили граф заболеваний так, чтобы заболевания были ближе друг к другу, если сказано про то и про другое заболевание, если их связывает одна и та же бактерия. И это происходит чаще, чем в среднем. Оказывается, что просто проанализировав текст, связав заболевания с бактериями, а бактерии с заболеваниями, мы получаем граф связи заболеваний между собой. Какие-то воспалительные заболевания кишечника и диарея — вроде бы понятно, что они находятся вместе. Но когда здесь возникает болезнь Альцгеймера, которая вообще про другое, нежели диарея, то становится интересно. Вот яркий пример: биологи уже знают, что это может быть один и тот же процесс иммунитета, который приводит либо к нарушениям либо в кишечнике, либо в мозге. А эти — точно такие же — данные мы смогли получить просто посчитав, как тройки заданного формата связаны друг с другом.
Спасибо вам большое. Надеюсь, вы станете добрее относиться к нам, микробам, и к программистам, конечно.
Под катом — расшифровка и основная часть слайдов.
Дмитрий Алексеев, директор по R&D биомедицинского холдинга «Атлас»:
— Вообще-то я микроб. Такое необычно слышать, ведь ты привык, что тебе люди что-то рассказывают. А я микроб. Нас много живет. И в тебе тоже.
Цифра такая примерная — 100 трлн на каждого. Можешь умножить на количество посетителей. Столько нас сегодня здесь. Я пришел кое-то важное тебе рассказать про нас, микробов, потому что в последнее время ты не очень обращаешь на это внимание, и ни к чему хорошему это не приведет. Важно, чтобы у тебя в голове остались две вещи, когда я закончу: что, во-первых, я хороший, а во-вторых, что данные, доступные тебе прямо сейчас из твоего ноутбука, могут рассказать еще больше про то, какие мы интересные.
Когда нас, микробов, много, нас называют микробиотой. И сейчас в вашей человеческой медицине есть большая надежда, что в ближайшем будущем вы опять сможете шалить, пить, курить и неправильно питаться, а мы, микробы, вас обратно спасем. И в целом это называется сейчас тераностика — когда мы диагностируем, что у тебя болит, и вылечим это тоже. Мы, микробы, вообще можем все. И понятно, что мы на этой планете гораздо дольше живем, чем ты. С самого того момента, как ты появился, еще будучи маленьким червячком, мы уже тебя заселили. И важно понимать, что все твои органы, особенно кишечник, про который мы будем говорить, — они развивались вместе с моими предками, хотя, по правде, у меня как у микроба нет предков. Мы делимся пополам. Чуть позже ты увидишь этот прекрасный процесс.
Если бы ты хотел узнать, стоит ли заниматься микробами, и в 2014 году залез в базу данных публикаций — это такая логарифмическая шкала — ты бы увидел, что микробами занимаются. Тысячи статей в год интересных, люди очень много интересного пишут и про иммунитет и микробов, и про раковые заболевания и микробов, и в целом про связь микробов или микробиоты, особенно кишечника, с заболеваниями. Горячая тема. И эта горячая тема — постгеномная эра. После того, как люди посчитали, вычислили, прочитали геном человека, те же самые технологии они обратили на микробов. И выяснили, что нас гораздо больше, чем раньше предполагалось.
Изучают нас из-за того, что в нас есть ДНК. Ты удивишься, но во мне ДНК такая же, как в тебе. Я себе просто эту мысль в тишине иногда думаю, что во мне такая же ДНК, как в людях. Это поражает. Все-таки мы супер-разные, а записано все ноликами и единичками. Хотя, может, тебе это очень знакомо. Почему? Потому что ты делаешь всякие эти приложения, и полезные приложения, и бесполезные. И полезное приложение из ноликов и единичек, и бесполезное. Тут главное — правильно выстроить порядок. Хотя я уверен, что мой порядок никто не выстраивал, за меня эволюция работала. Те мои братья, которые были посильнее, предки, они просто оставались. Те, которые как-то неправильно изменялись, они исчезали. Это то, что называется отбором. И совокупность наших генов называется мета-геном. Это то, что тебе — человеку, который анализирует данные, — подается в первую очередь как сырые данные. И эти гены можно найти в любой среде. Даже в ядерном реакторе или на космической станции есть мои друзья-микробы, и у них тоже есть гены, и они действуют по тем же правилам.
Если посмотреть в кишечник, можно увидеть разнообразие, то есть много есть таких ребят, как я. Но есть еще и другие виды. Они в другой кепке, в других очках, кто-то в кроссовках, кто-то в шортах. Примерно от 300 до 1000 видов таких ребят живет в каждом кишечнике. И удивительно: если так прикинуть, то мы не очень поймем, каких клеток больше: меня, то есть микробов, или твоих собственных. Но мы там все умещаемся в эти 1,5 кг сухого веса, который есть у тебя в кишечнике. Почему? Потому что мы реально меньше. Если ты не догадался, то я сейчас — всего лишь увеличенная копия микроба.
Поэтому число генов, каких-то функциональных участков ДНК, которые что-то могут делать, получается на пару порядков выше, так что на самом деле я могу гораздо больше, чем ты, и я твое эволюционное приспособление, чтобы ты мог хулиганить. Ты свой генетический код никогда не изменишь, и когда ты начинаешь есть нехорошую еду, в первую очередь я к этому учусь приспосабливаться. Сейчас я тебе прямо из данных покажу, как я это делаю.
Хорошая картинка, очень старая. Тогда еще про гены никто не читал усиленно. Часть заболеваний на английском языке написана, заболеваемость падает. Это все инфекционные заболевания, причиной которых являются такие же ребята, как я, но они гопники с виду. А другие заболевания связаны с твоей иммунной системой. Например, диабет или астма. Что-то в ней не так работает. И это происходит прямо в наше время. В человечестве инфекционных заболеваний меньше, а заболеваний, которые связаны с иммунитетом, становится больше. Это интересно.
Что произошло, почему стало спадать количество инфекционных заболеваний? Потому что вы придумали антибиотики. Антибиотики — это такие маленькие вещества, которые не дают мне либо размножаться, либо двигаться, и тогда я умираю. И ты эти антибиотики принимаешь, чтобы от плохих ребят избавиться, но страдают все, потому что мы устроены практически одинаково, никакого специфичного лекарства от отдельной бактерии, от отдельного микроба, не существует. И поэтому хорошие ребята тоже умерли — иммунитет страдает.
Я вас, людей, изучаю в последние 10 лет: кандидат биологических наук — это то и значит, что я изучаю жизнь. Все это время я думаю, что иммунная система была создана у человека, чтобы вычислять, какие микробы есть, правильно их поддерживать. И в основном это происходит в кишечнике, и, опять же, по количеству клеток. То есть ты отлично умеешь контролировать, кто там должен находиться.
Вот тоже интересная история, пока не относящаяся к данным. С самого детства все зависит от того, как ты родился. Если это кесарево сечение, то к тебе первые микробы попадают в кишечник с кожи матери. Если это оригинальный, исконно человеческий способ рождения, то микробиота вагинальная, и оказывается, что наш кишечник привык за это время делаться правильным, вырастать, исходя из того, что вначале микробы от мамы передаются из ее влагалища. Если же они с кожи мамы, то это совсем другие микробы и начинает происходить не так. Часто это выражается у детей, например, в аллергиях. Подтверждением этого являются уже существующие рекомендации: если было кесарево сечение, то после этого ребенка обмазывают в материнском соке, и тогда правильные микробы попадают в кишечник, и дальше все происходит правильно.
У детей эти микробы сильно меняются: то те, то другие. Они болеют, и иммунитет привыкает. В какой-то момент, как мы думаем, окно возможностей закрывается. Ты запомнил всех хороших и всех плохих за счет своей иммунной системы. Это супервычислительная машина. Она может по одному маленькому элементу, просто по кепке, узнать меня как микроба и сказать, свой я или чужой. Поэтому если ты пьешь всякие кефиры с живыми бактериями, они у тебя останутся, но до трех-пяти лет нигде не записано, что они свои. Можно поразмышлять, что у тех детей, которые рождаются сейчас, уже встроен одинаковый код, потому что они с детства пьют эти синтетические бактерии. Возможно, это место для суперхакерских атак на будущих людей, потому что у всех них записан код одной и той же синтетической бактерии. Компанию, которая это делает, ты назовешь сам.
Во взрослом возрасте наша комбинация, наше соотношение примерно такое, как ты питаешься. Так устроено. Зачем нужно много разных? Потому что мы специалисты в разных вещах. Специалисты в том, чтобы переваривать разные полимеры в твоей еде. В основном ты раньше ел не так много животной пищи, много растительной, и мы, твои микробы, приспособились переваривать эту растительную пищу. Каждый из нас умеет делать что-то одно. Представь себе, что ты растительной пищи ешь немного, или получаешь ее сразу с завода. Она перемолота, нам почти ничего не остается. И специалисты уходят. Просто серые будни твоего кишечника — это всегда однотонная еда из одной и той же картонной упаковки.
Когда ты стареешь, мы, на самом деле, думаем что мы готовим тебя к смерти — чтобы ты снова переварился на более простые составляющие, и мы из тебя создали новую жизнь на этой планете. В принципе, мы так делали всегда.
Интересный способ понять, как это здорово устроено и как это встроено в человеческий организм. Есть такая теория, что через иммунные клетки из кишечника матери микробы передаются с молоком ее ребенку. Там, у него в кишечнике, открываются эти иммунные клетки. Таким образом мама с какого-то момента заселяет кишечник ребенка полезными микробами. Другими словами, пока создавалось это эволюционное тело человека, мы нашли способ проникать к твоим детям максимально быстро и безопасно.
Вот эта картинка на самом деле интересная. Когда-нибудь в реальности тебе понадобилось избавиться от большого количества плохих микробов. Ты сделал две вещи. Антибиотики я уже назвал. Второе — про гигиену: ты заставил всех мыть руки. Крайний вариант — Маяковский, который вообще боялся всего, и все мыл со своим тазиком. Это суперкультурное явление. Мы должны понимать, что ни в какой живой природе такого явления и мема нет, будто надо все мыть. Ты его создал, создал какие-то суперсказки, они причем в разных народностях могут быть разные. В моем детстве, в твоем детстве, в чьем-то детстве в 1980-е годы точно был этот персонаж Мойдодыр, и мальчику с грязными руками и грязными ногами просто было супермегастыдно. Сейчас, если ты наберешь «теория гигиены» в Википедии, то тут же найдешь теорию одного европейского врача о том, что количество аллергий у детей связано с тем, что они помещены в суперстерильные условия. За счет этого иммунная система не обучается, то есть она живет в стерильной коробке. И потом, столкнувшись с чем-то действительно враждебным или полезным, она на все это реагирует воспалением. А воспаление — это и есть аллергия.
Прикольная история про питание, про то, как это может быть интересно устроено. Например, ты ешь мясо, и один мой коллега — тоже микроб — может из этого мяса получать вещество, которое будет потом создавать холестериновые бляшки. Если такого коллеги у тебя не живет, то проблем с мясом у тебя нет. Если же он у тебя поселился, то хорошо бы по этому поводу подумать, как-то это отрегулировать. Потому что я понимаю, что одна из твоих целей — оставаться в этом теле как можно дольше, сохраняя при этом его работоспособность и радость к жизни. Нужно, чтобы тело было не просто оболочкой, которая путешествует сотни лет куда-то, а чтобы она была живой оболочкой. Поэтому интересно обращать внимание. И здесь уже начинаются всякие данные, которые есть в интернете.
Ты начал меня активно изучать во время этой истории про эпидемиологическое ожирение в Соединенных Штатах Америки. С 1990 по 2008 год в некоторых штатах ожирение как диагноз с 10% выросло до 30%. На самом деле, это не очень похоже на те голливудские фильмы, которые ты смотрел. По улицам действительно ходят очень полные люди. У 30% из них стоит диагноз. При этом структура питания за эти 30 лет у американцев не менялась. И Джеффри Гордон, исследователь, обнаружил, что у людей, которые более стройные, slim, и у людей полных с диагнозом «ожирение» разные микробы. Более того, когда он этих микробов от людей с ожирением пересадил в мышей, выяснилось, что мыши быстрее набирают вес. То есть этот вариант микробов, который живет у людей с ожирением, производит больше калорий из того же количества пищи. И тогда ты понял, что состав микробов оказывает влияние на то, как ты будешь себя чувствовать.
Такая же интересная история происходит на пищевом рынке, когда люди получают мясо. Если субтерапевтические дозы антибиотиков давать животным, то они потихонечку набирают вес. Если ты в капиталистической стране, то чем больше ты из того же количества корма и того же количества времени получишь веса, который ты продаешь в долларах, тем тебе выгоднее. Естественно, в какой-то момент все производители животных стали пользоваться этим свойством. Когда эти животные попадают на стол и дальше внутрь человека, антибиотики как вещества практически никуда не деваются, и человек становится таким же потребителем субтерапевтических доз этих антибиотиков. И результат точно такой же — человек просто набирает вес. Субтерапевтические дозы — это здесь важно, потому что дозы такие маленькие, что ни Роспотребнадзор, ни Американпотребнадзор их просто не засекают. Есть какие-то пределы чувствительности.
Другая твоя история — действительно живой проект, можно на него посмотреть. Он назывался Happy Meal. Сам догадаешься, почему. На 137 день оставленная на воздухе еда выглядит примерно так же, как она выглядела в магазине. Почему она так выглядит? Потому что ни микробы, ни плесень эту еду не едят. Представь, что такая еда попадает внутрь тебя, и там такие же микробы. Они тоже не очень хотят ее есть. Говорят, потом «Макдональдс» выпустил опровержение, что там никакой химии специальной нет, просто очень много соли. Но если подумать, нам все равно, что там в большом количестве не дает микробам нормально расти.
Еще одна картинка, уже более сложная. И она уже прикольная — про данные, которые в разных экономических группах показывают, как растет подушевой доход, и что происходит с потреблением мяса, пустых калорий — это в основном алкоголь и сладости, — и вообще с количеством калорий. Вот экономическая группа А — самые богатые страны с 1961 по 2009 год. Доход вырос, потребление мяса выросло. В группе B начиналось ниже, но там то же самое происходит. И фактически всё, что мы видим во всех экономиках, — это если растет подушевой доход, то люди начинают есть больше мяса, больше пустых и диетарных калорий. Кроме Индии, там мясо не едят. То есть прямо from data видно, что чем больше мы зарабатываем, тем больше едим. И едим мы те самые пустые калорий, которые не суперполезны нашим микробам. А образ жизни — притом, что мы больше зарабатываем — становится не суперподвижный.
Мы когда-то смотрели этих микробов в России и обнаружили, что в больших городах — Новосибирске, Санкт-Петербурге — микробы такие же, как у европейцев и у американцев. Такие же комбинации. А в деревнях другие микробы, какие-то уникальные составы. И мы тогда поняли, что это прямо эффект глобализации, что когда человек приезжает из деревни в город, он попадает под фильтр антибиотиков, которые есть в еде, и простых консервантов, которые есть во всей еде. Ао всему миру одни и те же люди покупают продукты во всех магазинах. И это фильтрует и убирает какие-то одни микробы, и остаются только те, которые могут пережить такой геноцид. Тогда мы все становимся одинаковыми, мы не можем отличить европейца от американца и от русского, который живет в большом городе.
Еще одна маленькая история. Всё, что я сказал про антибиотики, относится и к ней тоже. Важно это знать, потому что это мировая тема, которую тоже можно отследить в данных. Вообще, ты выпускаешь все больше и больше антибиотиков, и та доза, от которой умирала первая бактерия, когда был сделан первый антибиотик, сейчас должна быть стократной, чтобы убить бактерию. Мы всегда приспосабливаемся из-за того, что можем поделиться раз в час, и нам несложно умирать. Мы приспосабливаемся гораздо быстрее. Есть вероятность, что возникнет такой нехороший парень среди нас, на которого не будут действовать ни одни твои антибиотики. Он будет передаваться быстро и будет смертелен. Это проблема антибиотикобезопасности. Антибиотики кружат во всей среде.
Мы с ребятами сделали такую картинку про то, какие бывают разные уровни резистентности к разным антибиотикам в разных странах. Ее можно найти онлайн или в этой статье. Интересно, что чем более страна индустриализована, как, например, Китай, тем больше резистентности. И у тех же самых китайцев мы видим резистентность еще и к химическим веществам. То есть микробы начинают обрабатывать какие-то неприятные химикалии, попадающие внутрь организма. Они уже приспосабливаются. Но не очень понятно, делается ли от этого китайцам лучше или нет.
Хороший проект, в котором мы участвуем с российской стороны — микробиота метрополитенов всяких городов. Сейчас здесь уже почти 100 городов. Началось все это с Нью-Йорка. Собрали ДНК со всех станций и посмотрели, какие там микробы. И, например, про данные — которые, кстати, тоже открыты, — мы решали недавно следующую задачу: можно ли по составу микробов определить, какая это станция метрополитена? Потому что от разных станций разные микробы едут в центр, и там уже на пересадке все смешиваются.
Вообще, мы воспринимаем эту тему про микробов как complexity science. Мне кажется, что гуру complexity science находится в Санта-Фе. Там есть такой Complexity University, Institute of Complexity Science, я когда-то там проходил стажировку. И один из способов изучения сложности… Сложностью мы называем состояние из простых объектов, между которыми есть какие-то связи. И молодежную систему мы создали уже из двух бактерий, трех веществ, которыми они обмениваются, какой-то еды, которая поступает, и кишечника. Мы даже в какой-то момент симулировали. Красные и синие бактерии — кишечник, и все это между собой общается. Это называется Agent Based Modeling. Можно эту историю запускать, а потом смотреть, получим ли мы что-то похожее на происходящее в реальной жизни. Например, мы получили систему с двумя стабильными точками, и точки отличаются в зависимости от того, как микробы распределены в кишечнике. На самом деле люди пока это померить не могут. Но мы тоже представляем, что одни живут ближе к стеночке, другие любят посерединке.
Потом мы за счет этой системы прием лекарств симулировали, и выяснили, что в каком-то случае вдруг вымирают все микробы, которые неустойчивы к лекарствам, и остаются только те, которые устойчивы. Таким образом резистентность может распространяться по планете.
Другая история — например, про ДНК. Я немножко расскажу вглубь про алгоритмы, про Data Science Day. Можно прям взять последовательности ДНК микробов. Мы работаем с последовательностью примерно в 200 букв. Попилим ее на k-меры — слова длиной k. Мы брали, по-моему, девятибуквенные слова. Можно дальше по этой подписи и частоте девятибуквенных слов пытаться сравнивать между собой микробный состав всех находящихся здесь людей. Что интересно, уже при таком подходе мы нашли таких людей, у которых было какое-то новое существо, и оно оставляло новый след из этих девятибуквенных слов. Про это даже где-то напечатали, в Bioinformatics. Тогда в указанном существе не было генома. Пока мы дописывали статью, геном появился, и мы явно доказали, что перед нами то самое существо, которое можно определить всего лишь по частоте букв, то есть по не очень сложной метрике.
Еще мы любим работать с графами. Я не очень понимаю, какой у тебя уровень. Я слышал предыдущее выступление. Понимаю, что уровень, наверное, какой-то супер-высоко-математическо-программистский, поэтому оставлю слово графы без объяснения.
Есть такие графы де Брёйна, в которых решается следующая задача: найти суперстроку, в которую будут входить все подстроки, и таким образом собрать геном маленького микроба, потому что люди могут его только по частям получать. И мы научились эти графы считать быстрее за счет того, что мы не обрезаем в них всякие хитрые разветвления, а оставляем их и умеем с ними работать в высокопроизводительных компьютерах. Кто бы мог подумать? И это тоже заслуга. То есть нерешенных задач с уже решенными методами здесь очень много.
Я специально привел обычного программиста, который пришел ко мне на работу два года назад, чтобы он от чистого сердца поделился тем, что он может сделать в биологии.
Анатолий Васильев, инженер-исследователь «Атласа»:
— Я пришел два года назад, у меня совсем не было биологического бекграунда. Мой опыт подсказывает: чтобы заниматься Data Science в биологии, необязательно иметь биологическое образование. Я хочу рассказать вам сегодня о том, чем я занимаюсь, на примере двух алгоритмов.
Первый — анализ уровня синтеза витаминов микробиоты человека, второй — text mining фактов про бактерии.
Что касается анализа уровней синтеза витаминов, задача может быть сформулирована так. На входе у нас есть множество матриц. Для начала, это так называемая матрица относительной представленности бактерий в образцах. Каждый образец — какой-то человек, микробиота конкретного человека. Таким образом, матрица говорит о том, какие бактерии у него есть в кишечнике. И затем это несколько справочных матриц из открытого проекта PICRUSt. Вот матрица о том, какие гены бактерий с какими ферментами связаны. Витамины состоят из ферментов. И на выходе мы хотим получить матрицу, в которой будет содержаться информация об уровнях синтеза витаминов в образцах. И, на самом деле, исходя из описания задачи уже видно, что она сводится к множеству операций агрегации и связывания матриц. И как data scientists — я один из них в числе этой команды — мы занимались реализацией алгоритма, проведением exploratory-анализа и всем, что связано с кодом. Но нам необходимо было руководство биолога для того, чтобы он преподнес нам концепцию алгоритма и помог понять, какие математические операции имеют и не имеют смысл с точки зрения биологии. Например, не всегда понятно, что корректно брать — медиану или среднюю.
Покажу вам heatmap. Он показывает способность микробиоты, образцов, к синтезу ферментов витамина B9. Чтобы микробиота могла его синтезировать, она должна также синтезировать все ферменты, из которых он состоит. Названия образцов немножко слились, но сейчас это не так важно. Исходя из этой heatmap мы можем увидеть некоторые группы образцов, у которых, например, все довольно хорошо с синтезом этого витамина. Почти все ферменты присутствуют. Но есть две группы образцов, у которых все хуже, и как data scientist я могу задать вопрос: что отличает группу этих образцов? Я могу сравнить эти образцы по их бактериальном составу или по каким-то метаданным. Может быть, все эти образцы принадлежат людям, которым за 40, например.
На самом деле у нас очень много матриц. В случае алгоритма анализа синтеза витаминов размер матрицы небольшой, он помещается в оперативной памяти, поэтому такой анализ легко провести у себя на ноутбуке. Но в случае, например, данных WGS (whole genome sequencing — полногеномные данные) у нас есть матрица о представленности 9 млн генов в 10 тыс. образцах, то есть это 9 млн столбцов и 10 тыс. строк. Такая матрица не помещается в оперативной памяти, поэтому нам нужны технологии для работы с Big Data, такие, например, как HBase — потому что он заточен под матрицы. Мы думаем, что с помощью Big Data-технологий мы можем собирать огромное количество биологических данных, накапливать их. Уже сейчас у «Кномикс» есть данные об относительной представленности бактерий и основанные на них результаты анализов. Например, уровни синтеза витаминов.
Дмитрий:
— Мы стали смотреть на все эти кучи матриц. У нас есть рабочее название MetaMut. Это такой проект, где мы можем представить в виде гигантской матрицы все исходные данные для биологических алгоритмов, которые мы используем в связи с микробами. Данные говорят, какие бактерии есть, какие гены, какие в этих генах мутации. Размерность матрицы мы прикидываем в районе 20 млн таких столбцов, а строк столько же, сколько образцов. И дальше каждый алгоритм, который люди официально выпускают в виде статьи, считающей что-то про микробов, мы на самом деле можем представить в виде набора матричных операций перемножений, сложений, транспонирований и т. ж. И тогда мы подходим не к биоинформатике, всей этой суперформализованной науке, а просто к правильному языку матричных операций. Если мы думаем и надеемся, что такую сложную историю про бактерии, гены, всякие обходы графов и так далее мы можем представить всего лишь в виде конечного набора матричных операторов… в этот самый момент описанный язык станет конструктором, с помощью которого любой data scientist, не погружаясь в смысл, сможет упражняться с матрицами. И когда он будет находить интересные свойства внутри матриц — с математическим образованием это не очень сложно, — у него всего останется лишь вопрос, есть ли здесь какая-то интерпретация. Он с этим вопросом будет возвращаться обратно к биологу.
Анатолий:
— Дальше я хотел рассказать про text mining фактов про бактерии. На входе этого алгоритма у нас есть корпус из 16 тыс. научных статей про микробиоту кишечника человека. И также у нас есть каталоги, они же словари названий бактерий, болезней, пробиотиков, еды. И мы хотим получить таблицу с предположительными фактами про бактерии. То есть это такие триплеты: бактерия, еда и как они между собой связаны. Среди наших инструментов для решения этой задачи были стандартные средства natural language processing —кстати, из пакета spaCy, а также ручная подготовка выборок. И именно здесь нам были необходимы биологи, чтобы они вычитывали предложения из этих статей, где мы ищем связи, и помечали их как positive или negative. Мы извлекали отношения между сущностями в этих предложениях, где сущность — это бактерия, еда. Оно у нас построено на поиске кратчайшего пути между словами в графе предложений. И у нас есть такая гипотеза, что по кратчайшему пути мы можем определить связь между двумя сущностями. Затем мы применяли transfer learning pipeline: это экстрактор фич и какой-то простой классификатор, simple classifier.
Я решил вставить небольшой пример кластеризации. Мы собрали много-много кратчайших путей из разных графов научных предложений, в которых встречалось какое-то название бактерий — например, Faecalibacterium prausnitzii — и какая-то еда или пребиотик инулин. Мы связывали эти две сущности в предложении, и получили много разных кратчайших путей в графах. И мы их кластеризовали, получив такую интересную картинку. На самом деле она нам говорит о том, что наша гипотеза, все эти кратчайшие пути в графах, возможно, действительно работают и как-то систематизируются. Это PCA.
Дмитрий:
— Здесь же есть другая важная история. Мы работаем с научными текстами. И люди, если честно, в научных текстах используют не всю глубину и выразительность английского языка. На самом деле, допустим, я как человек, который закончил физтех, могу определить человека, который закончил физтех по стандартным английским выражениям, которые он использует. Там в целом есть какой-то словарь-минимум. Для науки тоже существует такой словарь-минимум. И эта возможность классификации каких-то стандартных оборотов, которые сообщают нам факты, упрощает семантический анализ текста.
Мы дальше из Толиной работы взяли и построили граф заболеваний так, чтобы заболевания были ближе друг к другу, если сказано про то и про другое заболевание, если их связывает одна и та же бактерия. И это происходит чаще, чем в среднем. Оказывается, что просто проанализировав текст, связав заболевания с бактериями, а бактерии с заболеваниями, мы получаем граф связи заболеваний между собой. Какие-то воспалительные заболевания кишечника и диарея — вроде бы понятно, что они находятся вместе. Но когда здесь возникает болезнь Альцгеймера, которая вообще про другое, нежели диарея, то становится интересно. Вот яркий пример: биологи уже знают, что это может быть один и тот же процесс иммунитета, который приводит либо к нарушениям либо в кишечнике, либо в мозге. А эти — точно такие же — данные мы смогли получить просто посчитав, как тройки заданного формата связаны друг с другом.
Спасибо вам большое. Надеюсь, вы станете добрее относиться к нам, микробам, и к программистам, конечно.
Поделиться с друзьями
serbuxs
Спасибо за увлекательный монолог от лица микроба. Направление биоинформатики увлекло еще больше, а что важнее — захотелось задуматься над своим внутренним миром, в прямом смысле.