1.3 О чем эта книга и чего в ней нет

Выполняя работу над нижеизложенным текстом, мы поставили перед собой несколько целей.

В очередной раз привлечь внимание русскоязычных читателей к статистической среде R

Как показала практика, исследователи на постсоветском пространстве, связанные с анализом данных, ограничиваются в своей работе, как правило, средствами Microsoft Excel или предпочитают использовать недостаточно гибкую программу Statistica, стоимость одной лицензии которой составляет более 85 тыс. руб. Мы им искренне сочувствуем: они лишаются и потраченных денег и удовольствия работать в по-настоящему интеллектуальной и богатой методами среде.

До недавнего времени основным препятствием для русскоязычных пользователей при освоении R являлось, безусловно, то, что почти вся документация по этой системе существовала на английском языке. Однако в последние годы эта проблема потеряла актуальность в связи с появлением весьма полных пособий как отечественных авторов (Зарядов, 2010; Шипунов и др., 2012; Маcтицкий, Шитиков, 2015), так и переводов процитированных выше лучших зарубежных монографий. Именно поэтому в настоящем пособии не приводится развернутого описания языка R и его стандартных функций, поскольку все это достаточно полно представлено в доступных литературных источниках.

Дать краткое, но внятное описание сущности используемых статистических методов

Было бы бессмысленной тратой сил писать очередное руководство по математическим основам, например, классификации и регрессии. Ответы на все вопросы, характерные для традиционной прикладной статистики, даны в десятках тысяч прекрасно изданных книг (Кендалл, Стьюарт, 1973, 1976; Бокс, Дженкинс, 1974; Дрейпер, Смит, 1986, 1987; Ллойд, Ледерман, 1989, 1990; Айвазян, Мхитарян, 1998; Everitt, Howell, 2005; Legendre, Legendre, 2012 и многие другие).

В то же время, в русскоязычных изданиях достаточно скупо представлены современные методы Data Mining и машинного обучения (Вапник, Червоненкис, 1974; Вапник, 1984; Горбань и др., 1998; Загоруйко, 1999; Чубукова, 2006; Зайцев, 2009; Джеймс и др., 2016). И тем более трудно найти наглядные примеры реализации таких алгоритмов поиска скрытых закономерностей в данных, как выделение ассоциативных правил, анализ последовательностей, построение деревьев классификации и регрессии, случайные леса, бустинг, нейросетевые технологии, метод опорных векторов, генетический алгоритм и др.

Мы по мере сил постарались заполнить этот пробел. Использование перечисленных методов показано в сравнении с детально описанными классическими процедурами построения статистических моделей, таких как логистическая регрессия и дискриминантный анализ (Классификация…, 1980; Афифи, Эйзен, 1982; Айвазян и др., 1989; Ким и др., 1989).

Показать, какие из статистических методов с высокой вероятностью хорошо сработают в большинстве ситуаций

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

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

Большие надежды мы возлагали на коллективы моделей, эффективность прогноза которых часто оказывается лучше индивидуальной модели (Розенберг и др., 1993), но желаемого результата не получили.

Предоставить набор скриптов, позволяющих читателю воспроизвести представленные расчеты, либо использовать их на собственных примерах

Освоение статистической среды R и реализованных в ней методов легче всего выполнять в режиме “обучения по прецедентам”, т.е. на примерах. Поэтому при рассмотрении тех или иных задач обычно принято приводить как отдельные фрагменты скриптов, так и законченные функции. Тексты скриптов и файлы исходных данных прилагаются к книге и могут быть скачаны

Мы хотели сделать свое изложение, по возможности, разноплановым и иллюстрированным. Например, убедительным доказательством наличия закономерности в данных часто может служить, их качественная графическая иллюстрация (Зиновьев, 2000; Maindonald, Braun, 2010). Поэтому, где было возможно, мы старались включить в наши скрипты примеры визуализации данных с использованием пакета ggplot2 (Маcтицкий, 2016) или других пакетов, поддерживающих эту графическую систему.

В одной из дискуссий в Интернете промелькнула мысль “Data Mining - это обработка данных без применения статистики”. Видимо тут имелось в виду скупое употребление псевдо-теоретической фразеологии вроде “истинных параметров некой мифической случайной величины или теоретической функции регрессии”, которые необходимо оценить. Избегнуть подобных оборотов постарались и мы, чем рискуем навлечь недовольство ортодоксальных статистиков.

К счастью, большинство описанных ниже методов не апеллируют к вероятностной природе обрабатываемых данных и их использование не всегда связано с (безосновательными) надеждами на закон нормального распределения. Однако это нисколько не мешает легко сгенерировать с их помощью продуктивные научные гипотезы, которые могут оказаться нетривиальными, практически полезными и удобными для интерпретации. В тех же случаях, когда проверка статистической значимости необходима, мы (следуя разработчикам пакетов R) активно использовали методы ресэмплинга: бутстреп, рандомизацию и перекрестную проверку (Эфрон, 1988; Edgington, 1995; Davison, Hinkley, 2006; Шитиков, Розенберг, 2014).

Эффективными средствами получения оценок параметров и их апостериорных распределений является байесовский подход и итерационные методы Монте-Карло, использующие цепи Маркова (MCMC – Monte Carlo Markov chain). Их разработка иногда трактуется как наиболее существенный прорыв в статистике за последние несколько десятков лет. Однако мы не стали касаться этой важной темы, требующей подробного и обоснованного обсуждения.

В настоящее пособие включена совокупность методических сообщений, опубликованных авторами за последнее время в блоге “R: Анализ и визуализация данных” (http://r-analytics.blogspot.com). Нам показалась целесообразной идея представить для удобства читателей весь этот несколько разобщенный материал в концентрированной форме, а также расширить некоторые разделы для полноты изложения.

Прокомментируем кратко содержание глав книги.

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

Глава 3 содержит подробное описание функций пакета caret, а разделы главы 4 показывают, как с его помощью выполнить построение и тестирование различных моделей регрессии.

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

Главы 6 и 7 объединяют описание и особенности реализации различных алгоритмов классификации на два и более класса. Как и в главе 4, особое внимание уделено процедурам тестирования и подстройки гиперпараметров моделей.

Глава 8 посвящена сразу трем проблемам: методам классификации порядковых данных, созданию комплексных прогнозов на основе “коллектива” моделей и построению различных версий моделей для счетных данных по материалам сайта http://www.highstat.com и книги А. Зуура с коллегами (Zuur et al., 2009).

Глава 9 описывает различные алгоритмы непрямой и прямой ординации многомерных наблюдений. Предлагается процедура построения кумулятивной кривой распределения чувствительности видов (SSD).

Глава 10 (за исключением раздела о самоорганизующихся картах Кохонена) представляет собой изложение материалов сайта http://www.sthda.com и книги А. Кассамбары (Kassambara, 2017) по кластерному анализу в среде R.

Демонстрации возможностей пакета rattle посвящена целиком глава 11, основанная на публикациях Г. Вильямса (Williams, 2009, 2011).

Как видно из рубрикатора глав, в книге довольно много заимствований из различных источников и, вероятно, она имела бы трудности при проверке в системе «Антиплагиат». Однако все в науке в той или иной степени плагиат, поскольку подавляющее большинство исследований лишь опровергает или подтверждает уже высказанные гипотезы. Вспомним, например, историю об Амбруазе Паре, который многое переписал у Везалия, а потом придумал блестящую формулу: «Я просто зажег свою свечку от соседней горящей свечи».

По вполне понятным причинам мы не смогли охватить в книге весь перечень методов построения статистических моделей и соответствующих пакетов. Например, в спектральном анализе и хемометрике (https://ru.wikipedia.org) чрезвычайно популярны методы, основанные на технике условного математического ожидания, и, наряду с методом частных наименьших квадратов (PLS) и регрессией на главные компоненты (PCR), рекомендуется использовать параллельный факторный анализ (PARAFAC), анализ Тюкера (Tucker) и др. Мы вообще не затронули такие обширные разделы Data Mining как анализ временных рядов и моделирование пространственно-распределенных данных. Мы сожалеем, что уделили столь важным темам недостаточное внимание, но это вряд ли можно считать существенным недостатком книги, поскольку детальный разговор планируется впереди, в том числе на страницах блога http://r-analytics.blogspot.com.

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