[Перевод] Пять эгоистичных причин работать воспроизводимо
Аннотация
Итак, мои коллеги-ученые, не спрашивайте, что вы можете сделать для воспроизводимости — спросите, что воспроизводимость может сделать для вас!
Здесь я перечислю пять причин, по которым возможность воспроизводимости данных окупается в долгосрочной перспективе и представляет личный интерес для каждого амбициозного, ориентированного на карьеру ученого.
Сложное уравнение в левой половине черной доски, еще более сложное уравнение — в правой. Краткое предложение связывает два уравнения: «Здесь происходит чудо». Два математика, в глубоких раздумьях. «Я думаю, Вы должны быть более конкретны на втором шаге», — говорит один другому.
Примерно так выглядит ситуация, когда вы пытаетесь понять, как автор перешел от большого и сложного набора данных к плотной статье с множеством сложных графиков. Без доступа к данным и аналитическому коду такой переход можно объяснить разве что чудом. А в науке не должно быть чудес.
Способность работать прозрачно и воспроизводимо во многом полагается на эмпатию — поставьте себя на место одного из ваших коллег и спросите: «Сможет ли этот человек получить доступ к моим данным и понять смысл моего анализа?». Освоение таких «орудий труда» (вставка 1) требует вовлеченности и огромных вложений вашего времени и энергии. Априори не очевидно, почему преимущества такого формата работы превышают издержки.
Вот несколько доводов, которые обычно приводят в таких случаях: «Потому что воспроизводимость — это правильно», «Потому что это основа науки!», «Потому что мир был бы лучшим местом, если бы все работали прозрачно и воспроизводимо!». Знаете, как это рассуждение звучит для меня? Как «бла-бла-бла» …
Не то что бы я считал эти доводы несостоятельными. Просто я не очень-то идеалист: мне все равно, какой должна быть наука. Я реалист: я стараюсь делать лучшее, что в моих силах, исходя из того, как наука устроена на самом деле. И, нравится нам это или нет, наука — это про карьерный рост, увеличение импакт-фактора, числа публикаций и количества денег. Больше, больше, больше… Так как же воспроизводимость поможет мне достигнуть большего как ученому?
Воспроизводимость: зачем это мне?
В этой статье я привожу пять причин, почему такой подход к воспроизводимости окупается в долгосрочной перспективе и входит в интересы каждого амбициозного, ориентированного на карьеру ученого.
Причина № 1: воспроизводимость помогает избежать катастрофы
«Как громкое обещание в тестировании на рак потерпело крах», — так озаглавлена статья The New York Times, опубликованная летом 2011 года [1], в которой освещается работа Кейта Бэггерли и Кевина Кумбса, двух биостатистиков Центра рака им. М.Д. Андерсона. Они выявили проблемы анализа данных о летальных исходах в серии статей ученых из Университета Дьюка, оказавших большое влияние на исследования рака молочной железы [2].
Проблемы, обнаруженные Баггерли и Кумбсом, легко мог заметить любой соавтор статьи до ее подачи. Наборы данных там не так велики, их можно легко проверить на стандартном ноутбуке. Вам не обязательно быть гением статистики, чтобы понять, что число пациентов там различается, метки меняются местами или выборки представлены несколько раз с противоречивыми аннотациями в одном и том же наборе данных. Почему никто не заметил эти проблемы, пока не стало слишком поздно? Потому что данные и анализ не были прозрачными и требовали знаний криминальной биоинформатики, чтобы в них разобраться [2].
Меня этот пример мотивирует быть более прозрачным и воспроизводимым в собственной работе. Даже меньшие по масштабу происшествия могут поставить вас в неловкое положение.
Вот пример из моих исследований. Наши партнеры-экспериментаторы проверяли созданную нами путевую модель. Однако при написании статьи мы столкнулись с серьезным препятствием: как мы ни старались, мы не могли воспроизвести нашу исходную путевую модель. Возможно, данные изменились, возможно, код был другим, или, может быть, мы просто не смогли правильно запомнить настройки параметров нашего метода. Если бы мы опубликовали этот результат, мы бы не смогли продемонстрировать, как пришли к утвержденной гипотезе из исходных данных. Мы бы опубликовали чудо.
Этот опыт показал мне две вещи. Прежде всего, что проект — это больше, чем красивый результат. Вам нужно подробно описать, как этот результат был получен.
А кроме того, задумываясь о воспроизводимости на ранних этапах, вы сэкономите время в будущем. Мы потратили годы своего времени и времени партнеров, не сумев воспроизвести собственные результаты. Всего этого можно было избежать, если бы мы лучше отслеживали, как данные и анализы менялись с течением времени.
Причина № 2: воспроизводимость позволяет легче писать статьи
Прозрачность в вашем анализе значительно упрощает написание статей. Например, в динамическом документе (вставка 1) все результаты автоматически обновляются при изменении данных. Вы можете быть уверены, что ваши цифры, графики и таблицы останутся актуальными. Кроме того, такая прозрачность анализа более привлекательна, больше людей сможет с ним ознакомиться, и становится гораздо легче обнаружить ошибки.
Вот еще один пример из моей работы. В другом проекте [3] мы обсуждали с врачом, почему некоторые результаты выживания в многоцентровом исследовании не соответствовали нашим ожиданиям. Поскольку все данные и аналитический код были доступны нам в легко читаемом файле, мы смогли сами изучить этот вопрос.
Просто создав таблицу с переменной, описывающую стадию опухоли, мы смогли определить проблему: мы ожидали увидеть номера стадий от 1 до 4, а увидели что-то вроде «XXX», «Fred» и »999». Люди, которые предоставили нам данные, по-видимому, плохо их вычитали. Изучить данные самостоятельно оказалось намного быстрее и легче, чем пойти к постдоку, работающему над проектом, и сказать: «Поясните нам это». Мы с моим соавтором слишком заняты, чтобы тратить время на низкоуровневую очистку данных, и без хорошо документированного анализа мы бы не смогли внести свой вклад. Но поскольку у нас были очень прозрачные данные и код, нам потребовалось всего пять минут, чтобы обнаружить ошибку.
Причина № 3: воспроизводимость помогает рецензентам увидеть данные вашими глазами
Многие из нас любят жаловаться на рецензирование. Чаще всего я слышу: «Рецензенты даже не читали статью и понятия не имеют, что мы на самом деле исследовали».
Это резко контрастирует с моим опытом обзора недавней статьи [4], для которой мы сделали данные и документально подтвержденный код легко доступными для рецензентов. Один из них предложил внести небольшое изменение в некоторые анализы, и, поскольку у него был доступ ко всем данным, он смог напрямую опробовать свои идеи и посмотреть, как изменились результаты. Рецензент был полностью вовлечен, и единственное, что оставалось обсудить, это какой способ анализа данных будет лучшим. Так и должен быть устроен конструктивный обзор. И это не было бы возможным без прозрачного и воспроизводимого представления нашего анализа.
Причина № 4: воспроизводимость обеспечивает непрерывность вашей работы
Я бы удивился, если бы вы раньше не слышали следующих замечаний (а возможно, даже сами их озвучивали): «Я настолько занят, что не могу вспомнить детали всех моих проектов досконально» или «Я сделал этот анализ 6 месяцев тому назад. Конечно, я не могу помнить все подробности после столь длительного периода» или «Мой научный руководитель (PI) сказал, что я должен продолжить проект предыдущего постдока, но тот постдок давно ушел и не сохранил никаких скриптов или данных».
Подумайте об этом: все эти проблемы могут быть решены с помощью документирования и обеспечения доступности данных и кода. Это особенно важно для ведущих исследователей, которые работают над сложными долгосрочными проектами. Как вы можете обеспечить непрерывность работы в вашей лаборатории, если то, как она продвигается, не документируется в воспроизводимой форме? В своей группе я даже не обсуждаю со студентами результаты, если они плохо задокументированы. Нет доказательств воспроизводимости — нет результата!
Причина № 5: воспроизводимость помогает репутации
В нескольких статьях мы сделали наши данные, код и анализы доступными в виде в виде пакета для Bioconductor [5]. Когда я пришел работать по контракту, я предоставил все эти пакеты в качестве результатов исследований моей лаборатории.
Как правило, анализ, представленный таким образом, помогает создать репутацию честного и тщательного исследователя. Если когда-нибудь возникнет проблема с одной из ваших статей, вам будет очень легко защитить свое имя и показать, что вы добросовестно сообщили все.
Недавняя статья, опубликованная в журнале Science — «Научные стандарты. Содействие открытой исследовательской культуре» [6], — обобщает восемь стандартов и три уровня рекомендаций по воспроизводимости. Использование таких инструментов, как R и knitR (вставка 1), позволит вам легко следовать стандартам самого высокого уровня, что, опять же, хорошо для вашей репутации.
Что вас удерживает?
Я вас убедил? Возможно, нет. Вот подборка реакций, которые я частенько получаю, когда настаиваю на воспроизводимости (и то, как я на это отвечаю):
- «Только результат имеет значение!». Вы ошибаетесь.
- «Я бы предпочел заниматься настоящей наукой, а не приводить в порядок свои данные». Если ваши результаты не воспроизводимы, вы вообще не занимаетесь наукой [7].
- «Занимайтесь своим делом! Я документирую свои данные, как хочу!». Да, пожалуйста! Существует много способов работать так, чтобы это было воспроизводимо [8] — вы можете выбрать любой, который вам по душе.
- «Excel работает отлично. Мне не нужны никакие новомодные R, Python или что-то еще». Инструмент, который вы упомянули, может работать хорошо, если требуется вносить много правок вручную. Но если вы выполняете анализ данных, то меньше щелчков и больше скриптов — это оптимальное решение. Представьте, что вам нужно сделать простой анализ — например, построить график регрессии — 5 (10, 20) раз. Сравните обработку этого вручную с написанием простого цикла, который сделает это за вас. Теперь представьте, что вам нужно сделать это снова через 3 недели, потому что данные немного изменились. В этом случае совершенно точно стоит использовать R и Python.
- «Воспроизводимость звучит хорошо, но мой код и данные разбросаны на таком количестве жестких дисков и каталогов, что потребуется слишком много усилий, чтобы собрать все в одном месте». Подумайте только, что вы только что сказали. Недостаток организованности подвергает вас и ваш проект смертельной опасности.
- «Мы всегда можем отсортировать код и данные после подачи заявки на рассмотрение». Выше мой пример с путевой моделью демонстрирует опасность такой стратегии. Кроме того, подготовка рукописи может занять много времени, так что вы можете даже не вспомнить все детали вашего анализа, когда придет время представить результаты.
- «В области моего исследования много конкуренции, и лишняя трата времени — это слишком большой риск». И именно поэтому вы должны начать работать с воспроизводимостью на ранней стадии, чтобы в долгосрочной перспективе не тратить это время.
Когда нужно беспокоиться о воспроизводимости?
Предположим, я убедил вас в том, что воспроизводимость и прозрачность —
в ваших собственных интересах. Когда же надо начинать беспокоиться?
Длинный ответ:
- перед началом проекта — потому что вам, возможно, придется изучать такие инструменты, как R или git.;
- пока вы проводите анализ — потому что, если вы будете ждать слишком долго, вы можете потерять много времени, пытаясь вспомнить, что вы делали два месяца назад;
- когда вы пишете статью — потому что вы хотите, чтобы ваши цифры, таблицы и рисунки были актуальны;
- когда вы соавтор статьи — потому что вы хотите быть уверены, что анализ, представленный в документе с вашим именем, корректный;
- когда вы просматриваете документ — потому что вы не сможете судить о результатах, если не будете знать, как авторы к ним пришли.
Короткий ответ: всегда!
Добиться культуры воспроизводимости
Для кого важна воспроизводимость и прозрачность? Очевидно, что студенты и постдоки играют важную роль в воспроизводимой работе, потому что чаще всего именно они — те люди, которые действительно выполняют эту работу. Мой совет: как можно быстрее изучить инструменты воспроизводимости (вставка 1) и использовать их в каждом проекте.
Приложив усилия, вы получите массу преимуществ:
- вы будете допускать меньше ошибок и легче исправлять существующие;
- вы будете более эффективны и в долгосрочной перспективе будете развиваться гораздо быстрее;
- если вы считаете, что ваш научный руководитель мало участвует в работе, то сделав анализ более понятным, вы сможете поспособствовать тому, что наставник станет более вовлеченным.
Ведущие исследователи, руководители групп и команд, профессора — за вами создание «культуры воспроизводимости» поверх той технической базы, которую представляют ваши студенты и постдоки. В своей лаборатории я сделал воспроизводимость ключевым элементом в документах, которые я раздаю новичкам [9]. Если вы хотите оказать своим коллегам поддержку, запрашивайте документацию по анализу каждый раз, когда член команды показывает вам результаты работы. Вам не нужно вдаваться в подробности — беглый взгляд покажет, насколько хорошо она сделана. То, что действительно улучшило воспроизводимость в моей собственной лаборатории — это требование, чтобы до подачи заявки одним членом команды его коллега, не участвующий в проекте, попытался самостоятельно провести анализ и воспроизвести наши результаты.
Если вы не создадите культуру воспроизводимости в своей лаборатории, вы упустите огромные научные преимущества, которые она имеет в долгосрочной перспективе.
Наука становится все более прозрачной и воспроизводимой каждый день. Вы можете стать лидерами в этом процессе! Передовыми трендсеттерами! Давайте, я знаю — вы тоже этого хотите.
Вставка 1
На самом низком уровне работать воспроизводимо означает просто избегать ошибок новичков. Поддерживайте свой проект в организованном состоянии, присваивайте информативные названия файлам и каталогам, сохраняйте данные и код в одном месте с обеспечением резервного копирования. Не разбрасывайте данные по разным серверам, ноутбукам и жестким дискам.
Для того, чтобы достигнуть следующих уровней воспроизводимости, вам нужно изучить некоторые инструменты вычислительной воспроизводимости [8]. В целом, воспроизводимость улучшается при меньшем количестве нажатий и вставок и большем количестве скриптов и кодирования. Например, делайте свой анализ в R (https://www.r-project.org/) или Python (https://www.python.org/) и документируйте его с помощью knitR (http://yihui.name / knitr /) или IPython (http://ipython.org/).
Эти инструменты помогают объединить описательный текст с аналитическим кодом в динамические документы, которые могут автоматически обновляться каждый раз при изменении данных или кода.
Далее изучите, как использовать систему контроля версий, такую как git (https://git-scm.com/), на платформе с общим доступом, такой как GitHub (https://github.com/). Наконец, если вы хотите стать профессионалом, научитесь использовать докеры (http://www.docker.com/), которые сделают ваш анализ цельным и легко переносимым в разные системы.
Благодарности
Я разработал эгоистичный подход к воспроизводимости для «Постдокторского Мастер-класса по Воспроизводимости», который преподавал в Институте Гурдона в Кембридже вместе с Гордоном Брауном (CRUK Cambridge Institute) и Стивеном Дж. Эгленом (DAMTP Cambridge). Я благодарю их за вклад.
Все материалы доступны в GitHub по ссылке: https://github.com/bioinformatics-core-shared-training/rep-research-masterclass, и мой доклад записан в моем блоге по адресу: https://scientificbsides.wordpress.com/2015/07/15/five-selfish-reasons-for-working-reproducibly.
Список источников
- Kolata G. How bright promise in cancer testing fell apart. The New York Times. 2011. http://www.nytimes.com/2011/07/08/health/research/08genes.html?_r=0.
- Baggerly KA, Coombes KR. Deriving chemosensitivity from cell lines: forensic bioinformatics and reproducible research in high-throughput biology. Ann Appl Stat. 2009;3:1309–34.
https://projecteuclid.org/euclid.aoas/1267453942. - Martins FC, Santiago I, Trinh A, Xian J, Guo A, Sayal K, et al. Combined image and genomic analysis of high-grade serous ovarian cancer reveals PTEN loss as a common driver event and prognostic classifier. Genome Biol. 2014;15:526.
https://genomebiology.biomedcentral.com/articles/10.1186/s13059–014–0526–8. - Schwarz RF, Ng CKY, Cooke SL, Newman S, Temple J, Piskorz AM, et al. Spatial and temporal heterogeneity in high-grade serous ovarian cancer: a phylogenetic analysis. PLoS Med. 2015;12:1001789.
http://journals.plos.org/plosmedicine/article? id=10.1371/journal.pmed.1001789. - Castro MAA, Fletcher M, Markowetz F, Meyer K. Gene expression data from breast cancer cells under FGFR2 signalling perturbation. BioConductor Experimental Package. http://bioconductor.org/packages/release/data/experiment/html/Fletcher2013a.html. Accessed 27 Nov 2015.
- Nosek BA, Alter G, Banks GC, Borsboom D, Bowman SD, Breckler SJ, et al. Scientific standards. Promoting an open research culture. Science. 2015;348:1422–5.
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4550299. - Watson M. When will«open science» become simply«science»? Genome Biol. 2015;16:101.
- Piccolo SR, Lee AB, Frampton MB. Tools and techniques for computational reproducibility. 2015. http://biorxiv.org/content/early/2015/07/17/022707. Accessed 27 Nov 2015.
- Markowetz F. You are not working for me; I am working with you. PLoS Comput Biol. 2015;11:1004387.
http://journals.plos.org/ploscompbiol/article? id=10.1371/journal.pcbi.1004387.Twitter и блог
Florian on Twitter @markowetzlab and on his blog: http://scientificbsides.wordpress.com/.