There are often discussions within the data science community about which tools are best for doing data science. The most recent iteration of this discussion is the so-called «Первая война ноутбуков», which is well-summarized by Yihui Xie in his blog post (it is a great read).
One thing that I have found missing from many discussions about tooling in data analysis is an acknowledgment that data analysis tends to advance through different phases and that different tools can be more or less useful in each of those phases. In fact, a tool that is very useful in one phase can be less useful or even detrimental in other phases. Yihui touches on this in his blog post and my goal here is to expand on this idea here.
A Double Diamond for Data Analysis
One image that is commonly found in the literature on design thinking is the "двойной бриллиант", which is a model for the design process. I think this model can be usefully adapted to help us think about data analysis and my best representation is here (apologies for the scribble).
На этом рисунке я определил четыре этапа анализа данных, которые чередуются между дивергентными и конвергентными формами мышления. Ось X — это примерно «время» или временная шкала анализа. Ось Y можно рассматривать как указание диапазона возможностей. Хорошо, это не совсем числовой график, но вы поняли идею. Широкие части каждого ромба означают, что рассматривается множество возможностей, а узкие «узкие места» указывают на то, что должна быть одна или несколько несколько вещей на рассмотрении.
Как все это связано с анализом данных?Давайте сначала подробнее рассмотрим четыре фазы.
Phase 1: Exploration
The goal of Phase 1 is to explore the possibilities inherent in the data. This part is familiar to all data analysts.
The dataset lands in your lap and there are a lot of things to do and a lot of questions to answer. Did you get the right dataset? Are all the data there? Are they in the right format for analysis? This is often where a lot of data wrangling occurs. We must consider what question is being asked and whether the data are appropriate for that question (at least without making unreasonable assumptions). We might also consider what question motivated the creation of the data.
В этот момент мы можем подумать, что у нас есть вопрос, который нужно задать, но обычно этот вопрос имеет нечеткую форму или нуждается в дополнительной информации. Вот где нам нужны данные, чтобы помочь нам. Например, важный общий вопрос: " Можно ли использовать данные, чтобы ответить на мой вопрос?» Нам нужно изучить данные, чтобы понять это. То, как мы рассматриваем данные, зависит от людей, контекста и многих других факторов. Независимо от конкретной ситуации, мы, вероятно, нужно будет сделать много-много графиков, сводок и таблиц Нам нужно будет просмотреть данные, возможно, даже в такой программе, как Excel, и просто получить представление о данных.
Этот этап анализа очень разнообразен, и рассматривается множество возможностей того, как задать вопрос и какой подход выбрать. По моему опыту, я строю множество графиков и смотрю на различные преобразования отдельных переменных и двумерных отношений. Я никогда не утруждал себя подсчетом, но меня не удивило бы, если бы на этом этапе были сделаны тысячи графиков. Это этап анализа, образно говоря, но иногда и буквально. Наброски графиков или таблиц часто являются полезное устройство планирования.
This phase of analysis is almost always fun, because we are opening up the possibilities. But all good things must eventually come to an end.
Phase 2: Refining the Problem
Phase 2 is challenging because it involves making decisions and choices. Nobody likes to do that. Inevitably, most of the work you did in Phase 1 will be left on the cutting room floor. You might love all your children equally but you still need to pick a favorite. The reason is nobody has the resources to pursue every avenue of investigation. Furthermore, pursuing every avenue would likely not be that productive. You are better off sharpening and refining your question. This simplifies the analysis in the future and makes it much more likely that people (including you!) will be able to act on the results that you present.
Эта фаза анализа является конвергентной и требует синтеза множества различных идей в согласованный план или стратегию Взять тысячи графиков, таблиц и сводок, которые вы сделали, и принять решение о спецификации проблемы непросто, и, к моему удивлению, я я не видел много инструментов, предназначенных для помощи в этой задаче. Тем не менее, цель здесь состоит в том, чтобы получить достаточно подробную спецификацию того, чего мы пытаемся достичь, и как данные будут использоваться для достижения этого. Это может быть что-то например, «Мы собираемся подобрать линейную модель с этим результатом и этими предикторами, чтобы ответить на этот вопрос» или «Мы строим модель прогнозирования, используя этот набор функций для оптимизации этой метрики».
In some settings (such as in consulting) you might need to formally write this specification down and present it to others. At any rate, you will need to justify it based on your exploration of the data in Phase 1 and whatever outside factors may be relevant. Having a keen understanding of your audience becomes relevant at the conclusion of this phase.
Phase 3: Model Development
Этот этап является хлебом насущным для большинства статистиков и программ обучения статистике. Здесь у нас есть достаточно четко сформулированная проблема, четкий вопрос, соответствующий набор данных, и мы собираемся разработать решение. Но это не значит, мы просто нажимаем кнопку и ждем результатов.Для начала, как будут выглядеть результаты?Какие резюме мы хотим подготовить и как они будут представлены?Подробная спецификация это хорошо, но это не окончательный. Когда я был инженером-программистом, мы часто получали очень подробные спецификации программного обеспечения, которое должны были создать, но даже тогда у нас было много вариантов выбора.
Таким образом, начинается еще одна расходящаяся фаза анализа, где мы обычно строим модели и оцениваем их производительность и надежность. Это версия прототипирования для аналитика данных. Мы можем посмотреть на соответствие модели и посмотреть, как все работает по сравнению с нашими ожиданиями, изложенными в задаче. спецификации. Мы могли бы рассмотреть анализ чувствительности или другие проверки наших предположений о мире и данных. Опять же, может быть много таблиц и графиков, но на этот раз не данных, а результатов. Здесь важно то, что мы имеют дело с конкретными моделями, а не с грубыми «набросками», сделанными на этапе 1.
Поскольку работа на этом этапе, скорее всего, в какой-то форме завершится в конечном продукте, нам необходимо разработать более формальный рабочий процесс и процесс для отслеживания того, что мы делаем.Такие вещи, как контроль версий, играют роль, а также пакеты для анализа данных с помощью скриптов. который может описать нашу работу в коде. Несмотря на то, что многие аспекты этой фазы все еще могут не использоваться, важно помнить о воспроизводимости, поскольку работа разрабатывается, чтобы ее не нужно было «прикреплять» постфактум ( часто болезненный процесс).
Phase 4: Narration
In the final convergent phase of data analysis, we must again make choices amongst the many pieces of work that we did in Phase 3. We must choose amongst the many models and results and decide what will make it into the final product, whether it is a paper, a report, a web site, or a slide deck.
In order to make these choices, it is useful to develop a narrativeанализа. Построение повествования — это уменьшение измерения результатов, которое позволяет вам выбирать из множества результатов те, которые следуют вашему повествованию. Простое «представление данных» — это, во-первых, не совсем возможно, а во-вторых, нежелательно. перегружены и редко позволяют аудитории сделать осмысленный вывод.В конечном счете, аналитик должен определиться с нарративом и выбрать различные результаты, которые рассказывают эту историю.
Выбор нарратива не означает, что все остальное выброшено.Часто есть много частей анализа, которые не могут быть включены в основной продукт, но могут быть включены в некую форму «дополнительных материалов».Например,FiveThirtyEight.comне размещает свою статистическую модель выборов на своем веб-сайте, она размещает ее в PDF-документе, который можно скачать отдельно Во многих научных статьях могут быть десятки таблиц в дополнительных материалах, которые не вошли в статью .Многие докладчики часто прячут резервные слайды в конце презентации на случай возникновения вопросов.Некоторые люди могут не согласиться с выбором повествования, но это не устраняет необходимости делать выбор.
Implications
На данный момент стоит напомнить, что все модели ошибочны, но некоторые из них полезны. Так почему же эта модель полезна для анализа данных? Я думаю, что есть несколько областей, где модель полезна в качестве объяснительного инструмента и для выделения того, где может быть направления будущей работы.
Decision Points
Что мне нравится в визуальной форме модели, так это то, что она выделяет две ключевые области — концы обеих конвергентных фаз, — где должны быть приняты важные решения.problem specification, после сортировки всей исследовательской работы, которую мы проделали. В конце этапа 4 мы должны принять решение оnarrative that we will use to explain the results of an analysis.
В обеих точках принятия решения мы должны сбалансировать набор конкурирующих приоритетов и выбрать из большого количества результатов, чтобы создать связный продукт При разработке спецификации проблемы мы должны избегать желания сказать: «Мы собираемся сделать все » и при производстве конечного продукта мы должны избегать «свалки данных», когда мы перекладываем бремя интерпретации и дистилляции на аудиторию.
По моему опыту, аналитикам данных действительно нравятся расходящиеся этапы анализа, потому что не нужно делать выбор.oppositeделать выбор — мы пробуем все, но конвергентных фаз нельзя избежать, если мы хотим провести хороший анализ данных.
Tooling
Когда дело доходит до обсуждения инструментов в науке о данных, полезно предварить такое обсуждение указанием, о каком этапе анализа данных мы говорим, я не могу придумать ни одного инструмента, который одновременно был бы оптимален для каждого этапа анализа. на мой взгляд, неоптимально для фаз 2 и 4. Например, при разработке визуализации данных для презентации многие люди прибегают к таким инструментам, как Adobe Illustrator.
Я считаю, что большинство дискуссий об инструментах сильно запутаны отсутствием обсуждения того, на какой фазе анализа мы фокусируемся. Людям может быть трудно принять тот факт, что данный инструмент может быть оптимальным для одной фазы, но вредным для другой фазы. думаю, что четырехэтапная модель анализа может объяснить некоторые из недавних «дебатов» (также известных как «войны флейма») об инструментах в мире науки о данных.
Начнем с записных книжек. Я думаю, проблема здесь в том, что записные книжки могут быть полезны на этапе 1, но потенциально опасны на этапе 3. Воспроизводимость является критическим фактором для получения окончательных результатов, но менее важна при изучении данных на этапе 1. Потребность в согласованном состоянии и упорядоченном выполнении команд важнее на этапе 3, чем на этапе 1, когда опробуется множество идей, которые, скорее всего, будут отвергнуты. , Это просто зависит от того, на каком этапе анализа вы находитесь. Обычно я предпочитаю R Markdown, но также вижу привлекательность блокнотов.
Consider the age-old base graphics vs. ggplot2Дебаты. Это еще одна дискуссия, смешанная с фазами анализа данных. На расходящихся фазах (например, Фаза 1) необходимо делать что-то очень быстро, чтобы можно было обнаружить хорошие идеи и отбросить плохие идеи. Наличие системы Например, ggplot2, который позволяет вам быстро «набросать» эти идеи, очень важен.Хотя базовая графическая система дает вам точный контроль над каждым аспектом сюжета, такая «функция» действительно мешает на этапе 1, когда вы изучаете данных Натан Яу, кажется,edge towards base graphicsно я думаю, что это в значительной степени потому, что он рассматривает возможность разработки «окончательных» презентаций данных на этапе 4. Если вы посмотрите на визуализации на его веб-странице, они сродни произведениям искусства. Это не эскизы. При разработке такого рода визуализаций , точный контроль над каждой деталью — это именно то, что вам нужно.
Education
По моему опыту как студента, так и преподавателя, статистическое образование имеет тенденцию сосредотачиваться на Этапах 3 и 4 процесса анализа данных.Эти этапы, безусловно, важны и могут быть технически сложными, что делает их важными моментами, на которых следует акцентировать внимание в программе статистики. В классе мы обычно начинаем с достаточно четко сформулированной проблемы и переходим к разработке решения.Мы обсуждаем множество вариантов разработки решения, а также различные сильные и слабые стороны этих вариантов.Поскольку работа на этапе 3 заканчивается в финале результаты, важно правильно пройти этот этап.
При получении степени магистра этапы 1 и 2 обычно преподаются как часть разработки диссертации с использованием модели ученичества с консультантом («просто посмотрите, что я делаю в течение нескольких лет»). В некоторых хороших программах есть курсы по исследовательскому анализу данных, которые прямо попадают в фазу 1, но я не думаю, что когда-либо видел курс, охватывающий фазу 2. Фаза 4 иногда рассматривается в курсах визуализации, в которых обсуждается процесс проектирования для хорошего представления данных.Есть также ряд хороших книг которые охватывают этот этап. Но мы редко обсуждаем роль разработки связного повествования об анализе в классе. Обычно это рассматривается с использованием подхода ученичества.
Data Analytic Errors
Одна общая проблема, которая возникает, когда я вижу, как другие проводят анализ данных, — это путаница разных фаз.Люди часто думают, что находятся в одной фазе, хотя на самом деле находятся в другой.Это может привести к проблемам с анализом данных и даже к ошибкам.
Спутать фазу 3 с фазой 1 — это, пожалуй, самая распространенная и самая опасная проблема, с которой можно столкнуться в науке.На фазе 1 мы разрабатываем спецификацию проблемы, но на фазе 3 эта спецификация должна быть более или менее заблокирована. мы обнаруживаем что-то еще интересное в Фазе 3, мы не можем притворяться, будто это то, что мыmeantчтобы закончить на этапе 1. Это рецепт p-hacking. Этап 1 должен быть широким и исследовательским с данными. Но как только вы решили проблему на этапе 2, этапы 3 и 4 должны быть посвящены исключительно решению этой проблемы. ● Изменение проблемы в середине потока на этапах 3 и 4 часто заманчиво, но почти всегда является ошибкой.
Связанная с этим проблема заключается в том, что Фаза 2 путается с Фазой 4. Я наблюдал людей, которые тщательно изучают данные, делая быстрые графики, наброски и резюме, а затем сразу же делают вывод, например, «X вызывает Y» или «A связано с B». По сути, они перескакивают с фазы 1 прямо на фазу 4. Это проблематично, потому что часто в процессе исследования мы смотрим только на грубые наброски, часто просто двумерные графики или таблицы 2x2, которые показывают сильные взаимосвязи. вводящие в заблуждение без тщательного учета факторов второго порядка, таких как путаница или эффекты отсутствующих данных.Часто эти проблемы легче решить при использовании формальных моделей или более подробной визуализации.
Thinking through and formally specifying a problem in Phase 2 can often help to solve problems without having to fit a single model. For example, if exploratory analysis suggests strongly that missing data is missing completely at random, then there may be no need to model the missing data process in Phase 3. In the extreme case, you may conclude that the question of interest cannot be answer with the data available, in which case other data needs to be obtained or the analysis is over.
Я думаю, что знание различных фаз анализа может помочь решить эту проблему, поскольку дает аналитику возможность задать вопрос «Где я?» при использовании карты, чтобы выяснить, куда вы направляетесь. , вам сначала нужно выяснить, где вы находитесь. Четырехэтапная модель служит дорожной картой, на которую аналитики могут указать, чтобы определить свое местоположение.
Future Work
I will end this with some thoughts on what the four-phase model implies for potential future work in the field of data analysis. Seeing the model written down, some immediate gaps jump out at me that I think the data science community should consider addressing.
Tooling
Большая часть программного обеспечения, которое я использую для анализа данных, когда я размышляю об этом, в первую очередь предназначена для расходящихся этапов анализа.По своей сути программное обеспечение предназначено для того, чтобы помочь вам делать что-то быстрее, чтобы вы могли «анализировать со скоростью мысли». Хорошее программное обеспечение для построения графиков и обработки данных позволяет выполнять эти действия быстрее Хорошее программное обеспечение для моделирования позволяет быстрее выполнять и подгонять модели В обоих случаях важны быстрые итерации, чтобы можно было создать множество вариантов для рассмотрения.
По сравнению с этим отсутствует программное обеспечение для конвергентных фаз анализа.Хотя существует довольно много хороших инструментов для визуализации и написания отчетов на этапе 4, я не могу вспомнить ни одного программного инструмента для анализа данных, предназначенного для этапа 2, при определении проблемы. в частности, для фаз 2 и 4 я не вижу много инструментов, которые помогут вамchoose between all the options that you create in the divergent phases. I think data scientists may need to look outside their regularly scheduled programming to find better tools for those phases. If no good tools exist, then that might make for a good candidate for development.
Education
Data analytic education tends to focus on the model development and presentation phases of data analysis. Exploratory data analysis is an exception that largely falls into Phase 1, but EDA is not the only element of Phase 1. We often do not teach aspects of challenging a question or expanding beyond what is given to us. Typical data analytic education takes the original problem as the final specification and goes from there. There is no re-litigating the problem itself. In other words, we start at the end of Phase 2.
I think more could be done to teach students aspects of both convergent phases of analysis (Phases 2 and 4). For Phase 2, teaching students to hone and refine a question is critical for doing research or working elsewhere in data science. I think providing them with greater exposure to this process and the chance to practice repeatedly would be a shift in the right direction. I also think we could do more to teach more narrative-development skills for Phase 4 of analysis, whereby results are synthesized into a coherent presentation.
Regardless of what we might do more or less of, I think the four phase model allows you to consider what aspect of data analysis you might want to teach at any given moment. It can be difficult to simulate a full-fledged data analysis from start to finish in a single classroom setting. However, splitting up the process and focusing on individual phases could be useful way to modularize the process into more manageable chunks. I am interested in exploring this approach myself in the future.
Summary
Похищение модели «двойного ромба» из дизайн-мышления и ее адаптация для описания анализа данных имеет ряд важных преимуществ в качестве ментальной модели процесса анализа данных. ), связанный с ними.Я нахожу это полезной моделью для объяснения различных дебатов, происходящих в сообществе специалистов по данным, для выявления пробелов в инструментах и в обучении науке о данных, а также для описания определенных классов ошибок, которые могут быть сделаны во время анализа данных. .
Please enable JavaScript to view the comments powered by Disqus. comments powered by Disqus