СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... ·...

20
Труды Карельского научного центра РАН № 1. 2013. С. 117–136 УДК 512.2 СЛУЧАЙНЫЕ ЛЕСА: ОБЗОР C. П. Чистяков Институт прикладных математических исследований Карельского научного центра РАН В статье представлен обзор современного состояния исследований в области случайных лесов – статистического метода, предназначенного для решения за- дач классификации и регрессии. Приведен исторический экскурс развития де- ревьев решений и ансамблей классификаторов и описаны основные понятия (загрязненность, расщепление, баггинг, бустинг и др.), используемые при их построении. Рассматриваются вопросы, касающиеся состоятельности метода и сравнения его с другими методами классификации. Представлены возможно- сти использования случайных лесов для задач нахождения наиболее информа- тивных признаков, кластеризации, выделения аномальных наблюдений и опре- деления прототипов классов. Кратко рассмотрены некоторые неклассические разновидности деревьев решений и случайных лесов, а именно: косоугольные деревья, случайные леса выживаемости, квантильные леса регрессий, логиче- ские случайные леса, вероятностные случайные леса и потоковые случайные леса. Также приведен обзор соответствующего программного обеспечения с акцентом на пакет R свободно распространяемое программное обеспечение для статистических вычислений и графики, доступное на платформах Linux, Windows, Mackintosh. Ключевые c л о в а: деревья решений, ансамбли классификаторов, баггинг, случайные леса, классификация, регрессия, кластеризация, пакет R. S. P. Chistiakov. RANDOM FORESTS: AN OVERVIEW This paper presents an overview of the state-of-the-art in the studies of random forests a statistical method designed to deal with problems of classification and regression. We tell about the history of decision trees and classifier ensembles and describe the corresponding basic ideas (impurity, split, bagging, boosting, etc.). Some issues of the consistency of the method are considered. Applicability of random forests to the problems of finding most informative features, clustering, finding outlier observations and class prototypes is surveyed. Several non-classical variants of decision trees and random forests is considered, namely: oblique trees, survival random forests, quantile regression forests, logical random forests, probabilistic random forests and streaming random forests. We also survey the corresponding software with the emphasis on R package open source environment for statistical computing and graphics which is freely available for the computing platforms Linux, Windows, Mackintosh. Key words: decision trees, classifier ensembles, bagging, random forests, classification, regression, clustering, R package. ✖✕ ✗✔ 117

Upload: others

Post on 22-Jun-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

Труды Карельского научного центра РАН№ 1. 2013. С. 117–136

УДК 512.2

СЛУЧАЙНЫЕ ЛЕСА: ОБЗОР

C. П. ЧистяковИнститут прикладных математических исследованийКарельского научного центра РАН

В статье представлен обзор современного состояния исследований в областислучайных лесов – статистического метода, предназначенного для решения за-дач классификации и регрессии. Приведен исторический экскурс развития де-ревьев решений и ансамблей классификаторов и описаны основные понятия(загрязненность, расщепление, баггинг, бустинг и др.), используемые при ихпостроении. Рассматриваются вопросы, касающиеся состоятельности метода исравнения его с другими методами классификации. Представлены возможно-сти использования случайных лесов для задач нахождения наиболее информа-тивных признаков, кластеризации, выделения аномальных наблюдений и опре-деления прототипов классов. Кратко рассмотрены некоторые неклассическиеразновидности деревьев решений и случайных лесов, а именно: косоугольныедеревья, случайные леса выживаемости, квантильные леса регрессий, логиче-ские случайные леса, вероятностные случайные леса и потоковые случайныелеса. Также приведен обзор соответствующего программного обеспечения сакцентом на пакет R — свободно распространяемое программное обеспечениедля статистических вычислений и графики, доступное на платформах Linux,Windows, Mackintosh.

Ключ е вы е c л о в а: деревья решений, ансамбли классификаторов, баггинг,случайные леса, классификация, регрессия, кластеризация, пакет R.

S. P. Chistiakov. RANDOM FORESTS: AN OVERVIEWThis paper presents an overview of the state-of-the-art in the studies of randomforests — a statistical method designed to deal with problems of classification andregression. We tell about the history of decision trees and classifier ensembles anddescribe the corresponding basic ideas (impurity, split, bagging, boosting, etc.).Some issues of the consistency of the method are considered. Applicability of randomforests to the problems of finding most informative features, clustering, findingoutlier observations and class prototypes is surveyed. Several non-classical variantsof decision trees and random forests is considered, namely: oblique trees, survivalrandom forests, quantile regression forests, logical random forests, probabilisticrandom forests and streaming random forests. We also survey the correspondingsoftware with the emphasis on R package — open source environment for statisticalcomputing and graphics which is freely available for the computing platforms Linux,Windows, Mackintosh.

K e y wo r d s: decision trees, classifier ensembles, bagging, random forests,classification, regression, clustering, R package.

����117

Page 2: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

Введение

Понятие случайный лес впервые было вве-дено в научный обиход в работах [6, 7], см. так-же [8]. В этих статьях рассматривалось мно-жество корневых лесов с помеченными вер-шинами, на котором задавалось равномерноераспределение вероятностей. Позднее появи-лась монография [81], в которой изучалисьслучайные леса с распределениями, отличны-ми от равномерного. Таким образом, с точкизрения теории вероятностей, случайные лесаявляются частным случаем известного поня-тия случайный элемент (см. [5]). Однако в2001 г. в статье [25] был предложен новый ме-тод классификации и регрессии, также полу-чивший название случайный лес. В этом смыс-ле термин случайный лес широко использует-ся в таких дисциплинах как машинное обуче-ние (machine learning), распознавание образов,дисциплине известной как "Data Mining"1 и,в меньшей степени, в прикладной статистике.Настоящий обзор посвящен этому методу.

Метод основан на построении большогочисла (ансамбля) деревьев решений (это чис-ло является параметром метода), каждое изкоторых строится по выборке, получаемой изисходной обучающей выборки с помощью бут-стрепа (т. е. выборки с возвращением). В от-личие от классических алгоритмов построениядеревьев решений [21, 91] в методе случайныхлесов при построении каждого дерева на ста-диях расщепления вершин используется толь-ко фиксированное число случайно отбираемыхпризнаков обучающей выборки (второй пара-метр метода) и строится полное дерево (безусечения), т. е. каждый лист дерева содержитнаблюдения только одного класса. Классифи-кация осуществляется с помощью голосова-ния классификаторов, определяемых отдель-ными деревьями, а оценка регрессии — усред-нением оценок регрессии всех деревьев. Из-вестно (см., например, [66]), что точность (ве-роятность корректной классификации) ансам-блей классификаторов существенно зависит отразнообразия (diversity) классификаторов, со-ставляющих ансамбль или, другими словами,от того, насколько коррелированы их реше-ния. А именно, чем более разнообразны клас-сификаторы ансамбля (меньше коррелирован-ность их решений), тем выше вероятность кор-ректной классификации. В случайных лесахрешения составляющих их деревьев слабо кор-

релированны вследствии двойной "иньекциислучайности" в алгоритм построения случай-ного леса – на стадии бутстрепа и на стадиислучайного отбора признаков, используемыхпри расщеплении вершин деревьев.

Метод быстро получил признание как встатистическом сообществе, так и в среде ис-следователей, использующих методы распо-знавания образов в своей работе и в настоящеевремя является одним из наиболее популяр-ных методов классификации и непараметри-ческой регрессии. Причиной этого явилась нетолько высокая точность классификации (а помнению автора и не столько), обеспечиваемаяметодом, но и другие его достоинства. Именно:

• метод гарантирует защиту от переподгон-ки (overfitting)2 даже в случае, когда ко-личество признаков значительно превы-шает количество наблюдений. Это свой-ство выделяет метод "случайный лес"среди множества других методов клас-сификации и является чрезвычайно цен-ным для решения многих прикладных за-дач;

• для построения случайного леса по обу-чающей выборке требуется задание всегодвух параметров, которые требуют мини-мальной настройки (tuning);

• метод Out-Of-Bag (OOB), предложенныйБрейманом [23], обеспечивает получениеестественной оценки вероятности оши-бочной классификации случайных лесовна основе наблюдений, не входящих вобучающие бутстреп выборки, используе-мые для построения деревьев (эти наблю-дения называются OOB выборками);

• случайные леса могут использоваться нетолько для задач классификации и ре-грессии, но и для задач выявления наибо-лее информативных признаков, класте-ризации, выделения аномальных наблю-дений и определения прототипов классов;

• обучающая выборка для построения слу-чайного леса может содержать признаки,измеренные в разных шкалах: числовой,порядковой и номинальной, что недопу-стимо для многих других классификато-ров;

1Общепринятого перевода этого термина на русский язык не существует. Иногда используемый дословныйперевод "добыча данных" не выдерживает никакой критики.

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

����118

Page 3: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

• метод допускает легкую параллелизацию(т. е. программную реализацию, пригод-ную для параллельных вычислений), чтовесьма существенно при больших объе-мах обучающей выборки.

Автору представляется, что развитие мето-да случайных лесов проходило в следующихнаправлениях:

• исследование свойств самого метода, т. е.аналитическая и экспериментальная ра-бота по оценке точности, сравнению сдругими ансамблевыми методами клас-сификации и т. д.;

• развитие возможностей метода, ориенти-рованных на решение задач, непосред-ственно не связанных с задачами класси-фикации и регрессии (см. выше);

• разработка на основе метода других род-ственно связанных методов, таких какслучайные леса выживаемости, кван-тильные регрессионные леса, логическиеслучайные леса, вероятностные случай-ные леса и потоковые случайные леса;

• использование схемы построения случай-ных лесов для построения ансамблейклассификаторов, не являющихся дере-вьями — ансамблей наивных байесов-ских классификаторов и мультиномиаль-ных логистических моделей;

• разработка алгоритмов и программныхсредств, реализующих метод.

В соответствии с этой классификацией иссле-дований и построен данный обзор.

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

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

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

В четвертом разделе рассмотрены разно-видности случайных лесов — случайные ле-са выживаемости (random survival forests) [63],квантильные регрессионные леса (quantileregression forests) [73], логические регрессион-ные леса (logic forest) [117] и другие. В этомразделе также кратко рассмотрены ансамбликлассификаторов, строящихся по той же схе-ме, что и случайные леса, а именно, ансамблинаивных байесовских классификаторов (naivebayes classificator) и ансамбли мультиномиаль-ных логистических моделей [84].

Пятый раздел посвящен обзору программ-ного обеспечения для построения деревьев ре-шений и случайных лесов с акцентом на пакетR — свободно распространяемое программноеобеспечение для статистических вычисленийи графики, доступное на платформах Linux,Windows, Mackintosh [85]. Пакет R не явля-ется пакетом в классическом понимании. Этосреда для статистических вычислений и гра-фики с интерпретирумым языком программи-рования (который также носит название R).За рубежом R получил широкое распростране-ние как в среде профессиональных статисти-ков, так и в среде исследователей, регулярноприменяющих статистические методы в своейработе. В настоящее время R содержит более3000 пакетов практически по всем статистиче-ским методам, методам распознавания обра-зов, машинного обучения и Data Mining разра-ботанные различными институтами, группамиисследователей и отдельными исследователя-ми по всему миру.

В заключении кратко обсуждаются воз-можные направления дальнейших исследова-ний.

Обзор ни в коей мере не носит учебно-методический характер и предполагает, чточитатель знаком с основными понятиями иметодами распознавания образов и приклад-ной статистики (в частности, предполагаетсязнакомство с деревьями решений). Разделы,посвященные деревьям решений, могут бытьнайдены практически в любом учебнике помашинному обучению и Data Mining. Обзорпредназначен для читателей, чьи профессио-нальные интересы связаны с прикладной ста-тистикой и распознаванием образов, однакоавтор надеется, что он также окажется полез-

����119

Page 4: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

ным и для исследователей в других областяхнауки.

Деревья решений

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

Граф G = (V,E) состоит из конечногонепустого множества V , элементы которогоназываются вершинами и множества пар вер-шин E, называемых ребрами. Путем в гра-фе называется последовательность ребер вида(v1, v2), (v2, v3), . . . , (vm−1, vm). Если v1 = vm,то такой путь называется циклом. Если паравершин v, w, образующая ребро (v, w), явля-ется упорядоченной, то такое ребро называ-ется ориентированным или дугой, ведущей извершины v в вершину w. Если все ребра гра-фа ориентированы, то такой граф называетсяориентированным. Дерево представляет собойсвязный граф без циклов. Под корневым дере-вом понимается дерево, в котором одна верши-на выделена и называется корнем. Далее рас-сматриваются только ориентированные корне-вые деревья, в которых дуги направлены понаправлению от корня. Заметим, что такие де-ревья удовлетворяют следующим условиям:

• существует только одна вершина, назы-ваемая корнем, в которую не ведет ни од-на дуга;

• в каждую вершину (исключая корень) ве-дет только одна дуга;

• существует единственный путь от корняк любой вершине.

Если (v, w) — некоторая дуга, то вершина vназывается родителем w, а вершина w — по-томком вершины v. Вершина, не имеющая по-томков, называется терминальной вершинойили листом. Дерево называется бинарным, ес-ли каждая его вершина (за исключением тер-минальных вершин) имеет ровно двух потом-ков.

Понятие обучающей выборки являетсяключевым в распознавании образов. Подобучающей выборкой понимается независи-мая выборка D = {xi, yi}li=1 из некоторо-го (неизвестного) распределения P (x, y) =P (x)P (y|x). Здесь xi, i = 1, 2, . . . , l — векто-ры признаков (называемые прецедентами), ко-ординаты которых представляют значения nпризнаков (независимых переменных), изме-ренных на некотором объекте (образе). Мно-жество всех возможных значений векторовпризнаков X называется пространством обра-зов. Признаки могут быть измерены в различ-ных шкалах — числовой, порядковой или но-минальной. Соответствующие yi представля-ют собой значения зависимой переменной. Ес-ли yi может принимать только конечное числозначений, т. е. yi ∈ {ω1, ω2, . . . , ωc}, c > 2, томы имеем задачу классификации. В этом слу-чае yi называется меткой класса и определяетпринадлежность соответствующего объекта кодному из c классов, а сам признак называет-ся классовым; если же yi измерены в числовойшкале, то мы имеем задачу регрессии; в этомслучае признак называется откликом;

Деревом решений называется дерево, скаждой вершиной t которого связаны [1]3:

1. Некоторое подмножество Xt ⊂ X ; с кор-невой вершиной связывается все про-странство образов X ;

2. Подвыборка Dt ⊂ D обучающей выборкиD, такая, что Dt = {(x, y) ∈ D : x ∈ Xt};таким образом с корневой вершиной свя-зывается вся выборка D;

3. Некоторая функция (правило) ft : X →{0, 1, . . . , kt − 1} (здесь kt > 2 — коли-чество потомков вершины t), определяю-щая разбиение множества X на k непере-секающихся подмножеств. С терминаль-ными вершинами не связывается никакаяфункция.

Обозначим ti(t), i = 0, 1, . . . , kt − 1 вершину,являющуюся i–м потомком вершины t. Мно-жество Xt и правило ft определяют множестваXti(t) следующим образом:

Xti(t) = Xt ∩ {x ∈ X : ft(x) = i}. (1)

Цель построения дерева решений состоит либов классификации векторов x из распределенияP (x), либо в оценке условного математическо-го ожидания отклика при данном значении x.Процесс принятия решений начинается с кор-невой вершины и состоит в последовательномприменении правил, связанных с вершинами

3В этой работе использовался термин "древообразные классификаторы".

����120

Page 5: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

дерева. Результатом этого процесса являетсяопределение терминальной вершины t такой,что x ∈ Xt. В случае классификации вектор xотносится к классу, являющемуся мажорант-ным (наиболее часто встречающимся) в под-выборке Dt, соответствующей данной терми-нальной вершине, а в случае регрессии оценкаусловного математического ожидания откли-ка представляет собой среднее значение от-клика в этой подвыборке (в этом случае дереворешений часто называют деревом регрессий).

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

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

2. Иерархическая структура деревьев реше-ний сводит принятие решения (классифи-кацию) к последовательности более про-стых и интуитивно понятных решений;

3. Деревья решений служат удобной моде-лью представления знаний в экспертныхсистемах;

4. Алгоритмы построения (индукции) дере-вьев решений инвариантны к масштаби-рованию значений признаков.

Хотя деревья решений как инструмент клас-сификации известны достаточно давно, одна-ко их широкое применение началось с раз-работкой алгоритма CART (Classification AndRegression Trees) и публикацией классическойработы [21], идеи которой дали начало мно-гочисленным исследованиям. Алгоритм CARTявляется базовым (generic) алгоритмом, на ос-нове которого может быть построено множе-ство конкретных алгоритмов, приводящих кпостроению различных деревьев решений. Ал-горитм основан на идее рекурсивного разби-ения обучающей выборки на две более одно-родные подвыборки с помощью одного из при-знаков. Для реализации этой идеи необходимоопределить понятие меры однородности.

Загрязненность

Обычно вместо меры однородности рас-сматривается противоположная по смыслу ме-ра загрязненности (impurity). Пусть t — неко-торая вершина дерева решений, D(t) — под-выборка, связанная с этой вершиной и i(t) —загрязненность вершины. Естественно потре-бовать, чтобы загрязненность вершины быларавна 0, если D(t) содержит прецеденты толь-ко одного класса и была бы максимальной вслучае, если D(t) содержит одинаковое чис-ло прецедентов каждого класса. Все приведен-ные ниже меры загрязненности удовлетворя-ют этому условию. Одной из наиболее исполь-зуемых является мера загрязненности верши-ны, основанная на понятии энтропии (entropyimpurity):

i(t) = −c∑

i=1

P (ωj) log2 P (ωj), (2)

где P (ωj) есть доля примеров класса ωj в под-выборке D(t) и полагается 0 log 0 = 0. Дру-гой популярной мерой является индекс Джини(Gini) [44], определяемый как

i(t) = 1−c∑

i=1

P 2(ωj). (3)

Индекс Джини представляет собой частотуошибочной классификации при случайном на-значении меток классов наблюдениям подвы-боркиD(t). Реже применяется мера загрязнен-ности, основанная на частоте ошибочной клас-сификации (misclassification impurity):

i(t) = 1−maxjP (ωj) . (4)

В этом случае i(t) представляет собой часто-ту ошибочной классификации если все наблю-дения выборки D(t) относятся к мажорант-ному (наиболее часто встречающемуся) клас-су. Исследования показали [21], что выбормеры загрязненности не оказывает существен-ного влияния на точность классификации иболее важным является выбор критериев оста-новки и усечения дерева решений, рассматри-ваемых ниже.

Расщепление вершин

Правило разбиения множества X , связан-ное с каждой вершиной дерева решений, назы-вается расщеплением (split). Количество под-множеств, на которые разбивается X , в прин-ципе может быть разным для разных вершин,однако, большинство алгоритмов основано на

����121

Page 6: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

построении бинарных деревьев, т. е. деревьев,в которых расщепление осуществляется на дваподмножества. Это связано с тем, что для лю-бого дерева решений можно построить экви-валентное ему (с точки зрения принимаемыхрешений) бинарное дерево и, кроме того (чтовесьма существенно), значительно облегчаетсяпрограммная реализация алгоритма. Бинар-ное расщепление вершины t можно рассматри-вать как функцию ft : X → {0, 1}, x ∈ X , где вслучае f(x) = 0 вектор x относится к первому(левому) потомку, а в случае f(x) = 1 – ко вто-рому (правому). Обычно эта функция имеетпростой вид и зависит от значений только од-ного признака. Именно, если некоторый при-знак x измерен в числовой шкале, то расщеп-ление состоит в выборе xs, минимизирующегоиспользуемую меру загрязненности и опреде-лении

ft(x) =

{0 при x < xs,1 при x > xs.

(5)

В этом случае, если признак x в выборке при-нимает m различных значений, то существу-ет m − 1 возможное расщепление, сохраняю-щее порядок значений признака x в подвы-борках. Легко видеть, что если все признакиобучающей выборки измерены в числовойшкале и используются только расщепленияуказанного вида, то области решений бу-дут представлять собой многомерные парал-лепипеды, а часть границы области решений,соответствующая данному расщеплению, бу-дет представлять собой часть гиперплоскости,параллельной соответствующей координатнойоси в пространстве Rn. Аналогичные расщеп-ления используются и для признаков, изме-ренных в порядковой шкале.

Если признак x измерен в номинальнойшкале и варьирует на уровнях из множестваC, то возможные расщепления имеют вид

ft(x) =

{0 при x ∈ C1

1 при x ∈ C2, (6)

где C1 — произвольное непустое подмножествоC и C2 = C − C1.

В работе [110] рассматривались расщепле-ния, определяемые линейными комбинациямизначений признаков:

ft(x) =

{0 при

∑ni=1 aixi < xs

1 при∑n

i=1 aixi > xs, (7)

что приводит к так называемым косоугольнымдеревьям решений (oblique trees). В этом слу-чае минимизация загрязненности осуществля-ется по параметрам a1, a2, . . . , an и xs. Неко-

торые алгоритмы построения деревьев ре-шений, использующих для расщепления зна-чения нескольких признаков, представленыв [16, 30, 77, 78]. Пока эти алгоритмы не по-лучили широкого распространения, что, по-видимому, связано со сложностью дальнейшейинтерпретации получаемых деревьев. Однимиз подходов к получению расщеплений (ре-комендованный Брейманом), использующийзначения нескольких признаков, является ме-тод главных компонент, при котором из ис-ходной обучающей выборки сначала выделя-ются главные компоненты, а на втором этапепо преобразованной выборке строится дереворешений.

Oптимальное расщепление

Как уже отмечалось, расщепление подвы-борки естественно осуществлять таким обра-зом, чтобы максимально уменьшить загряз-ненность. Уменьшение загрязненности верши-ны t для бинарных деревьев определяется как

∆i(t) = i(t)− PLi(tL)− PRi(tR), (8)

где PL и PR есть доли примеров подвыбор-ки D(t), соответствующие левому и правомупотомку (tL и tR). Наилучшим расщеплениемвершины t естественно считать разбиение, ко-торое максимизирует величину ∆i(t).

В общем случае уменьшение загрязненно-сти определяется как

∆i(t) = i(t)−B∑

k=1

Pki(tk), (9)

где B — количество потомков вершины t, Pk —доля примеров подвыборки D(t), соответству-ющая вершине tk и

∑Bk=1 Pk = 1. Непосред-

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

∆iB(t) =∆i(t)

−∑B

k=1 Pk log2 Pk

, (10)

и выбирается расщепление, максимизирующеевеличину ∆iB(t).

Критерии остановки расщепления

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

����122

Page 7: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

полным. Обычно такая ситуация характеризу-ется тем, что каждая терминальная вершинасодержит примеры только одного класса, а са-мо дерево содержит большое количество вер-шин. Хорошо известно, что полное дерево, какправило, обладает низкой точностью класси-фикации [21]. Это связано с так называемойпроблемой переподгонки (overfitting), заклю-чающейся в том, что статистическая модельфактически описывает только саму выборку инепригодна в качестве модели всей генераль-ной совокупности. В некоторой степени зада-чу предотвращения построения больших де-ревьев играют критерии остановки расщепле-ния. Существует несколько способов принятиярешения об остановке расщепления. Наибо-лее простой способ состоит в задании ми-нимального числа для количества наблюде-ний в подвыборках, соответствующих терми-нальным вершинам (или минимальной до-ли наблюдений обучающей выборки). Второйспособ заключается в установлении верхнегопорога для загрязненности вершины, т. е. за-дается некоторое число a и расщепление вер-шины не происходит, если уменьшениe за-грязненности при расщеплении не превышаетa. Третий способ заключается в применениикросс-проверки, а именно, сравнивается ко-личество ошибочно классифицированных на-блюдений до и после расщепления вершиныи если сокращения ошибок не происходит, товершина не расщепляется. В случае бинарныхдеревьев альтернативой приведенным спосо-бам является статистический подход [75], ос-нованный на статистике

χ2 =

2∑i=1

(niL − nie)2

nie, (11)

где niL – количество наблюдений класса ωi, от-несенных в результате расщепления в левуюподвыборку, и nie – ожидаемое количество на-блюдений в левой подвыборке при случайномрасщеплении вершины t. Если максимальноезначение (по всем возможным расщеплени-ям) статистики χ2 не превышает критическо-го значения, соответствующего выбранномууровню значимости, то расщепления не проис-ходит и вершина объявляется терминальной.

Усечение деревьев

Недостатком подхода, основанного на спо-собах остановки расщепления вершин дляпредотвращения построения больших дере-вьев, является то, что решение об остановкепринимается без учета ситуации, которая мог-ла бы сложиться при продолжении расщеп-

ления. Именно, не исключено, что дальней-шее расщепление потомков некоторой верши-ны могло бы существенно повысить точностьклассификации. В связи с этим ключевоезначение приобрел альтернативный подход,основанный на построении и дальнейшем усе-чении (pruning) полных деревьев решений [49,76, 79, 91]. Усечение означает процедуру за-мены в построенном полном дереве некоторойвершины и связанного с ней поддерева терми-нальной вершиной. Большинство методов усе-чения основано на оценке чувствительностиподдеревьев по отношению к некоторой мереи удалению поддеревьев, которые оказываютминимальное влияние на эту меру. Эмпири-ческое сравнение различных методов усечениядеревьев решений проведено в [45, 76]. Общимнедостатком всех методов усечения относитсято, что они не могут гарантировать нахожде-ние оптимального решения, а также высокаявычислительная сложность.

Другим популярным алгоритмом постро-ения деревьев решений является алгоритмC4.5 [92], предшественником которого являет-ся алгоритм ID3 [90]. Алгоритм ID3 предпо-лагает, что все признаки обучающей выборкиизмерены в номинальной шкале. Если обучаю-щая выборка содержит признаки, измеренныев числовой шкале, то они предварительно дис-кретизуются. Дискретизация означает разбие-ние области значений непрерывного признакана совокупность непересекающихся интерва-лов, каждый из которых затем трактуется какуровень номинального признака. Количествоподвыборок, на которые расщепляется выбор-ка, соответствуюшая некоторой вершине, рав-но количеству уровней признака, выбранногодля расщепления в этой вершине. В алгорит-ме C4.5 номинальные признаки используютсяаналогично ID3, а непрерывные признаки ана-логично CART.

Построение деревьев решений по обучаю-щей выборке относится к методам рекурсив-ного разбиения. Подробное введение в эти ме-тоды содержится в работе [105]. В заключениезаметим, что наряду с классическими деревья-ми решений разрабатывается также подход,основанный на теории нечетких множеств иприводящий к построению нечетких деревьеврешений (fuzzy decision trees) [33, 112].Ансамбли классификаторов

Ансамбль классификаторов представляетсобой множество классификаторов, чьи ре-шения комбинируются некоторым образомдля получения окончательной классифика-ции наблюдений. Обычно синтез решений от-

����123

Page 8: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

дельных классификаторов, составляющих ан-самбль, осуществляется путем их голосова-ния (возможно, взвешенного). Основная при-чина, обусловившая интерес к данной тема-тике, состоит в том, что при определенныхусловиях ансамбли классификаторов облада-ют точностью, значительно превосходящейточность отдельных классификаторов и ро-бастны (устойчивы) по отношению к "зашум-лению" обучающей выборки. Необходимым идостаточным условием высокой точности ан-самбля классификаторов является то, чтобысоставляющие его классификаторы были самидостаточно точны и различны (diverse), т. е.совершали ошибки на различных прецеден-тах [54]. Существует несколько групп методовпостроения ансамблей классификаторов [42]:

1. Манипулирование примерами обучаю-щей выборки;

2. Манипулирование признаками;

3. Инъекция случайности в индуктивныйалгоритм;

4. Манипулирование метками классов;

5. Байесовское голосование.

Случайные леса синтезируют методы первыхтрех групп, поэтому мы остановимся толькона них. Первая группа методов состоит ли-бо в прогоне базового индуктивного алгорит-ма на различных подвыборках исходной обу-чающей выборки, либо в итеративном пере-взвешивании наблюдений. Наиболее простойспособ формирования подвыборок предложенБрейманом [22]. Метод основан на формиро-вании обучающей выборки для каждого клас-сификатора ансамбля с помощью бутстрепа(bootstrap), т. е. случайной выборки (тогоже объема, что и исходная обучающая вы-борка) с возвращением из исходной обучаю-щей выборки и использовании метода голо-сования для агрегирования решений отдель-ных классификаторов. Метод получил назва-ние баггинг (bagging) или агрегированныйбутстреп (bootstrap aggregating). Многочис-ленные экспериментальные исследования (см.,например, [20, 22] показали, что использова-ние баггинга существенно повышает точностьклассификации в случае неустойчивости базо-вого классификатора, когда небольшие возму-щения обучающей выборки приводят к суще-ственным изменениям в классификации. Заме-тим, что деревья решений представляют собойпример неустойчивого классификатора. Тео-ретический анализ баггинга деревьев реше-ний, проведенный в [15], показал, что баггинг

приводит к сокращению средней квадратич-ной ошибки классификации. Дальнейшие ис-следования показали, что это верно не длявсех базовых моделей классификаторов. К ме-тодам этой группы относится также метод, ос-нованный на формировании множества дизъ-юнктных подвыборок обучающей выборки ииспользовании методики кросс-проверки [80]для формирования ансамбля классификато-ров.

Метод, основанный на итеративном пере-взвешивании наблюдений обучающей выбор-ки, называемый бустингом (boosting), былпредложен в работе [47]. Идея бустинга состо-ит в том, что классификаторы ансамбля стро-ятся последовательно и на каждой итерациипроисходит коррекция (перевзвешивание) на-блюдений обучающей выборки (на первой ите-рации веса всех наблюдений равны). Коррек-ция осуществляется таким образом, чтобы со-ответствующий классификатор делал меньшеошибок на тех наблюдениях, на которых ча-сто делали ошибки классификаторы, постро-енные на предыдущих итерациях алгоритма.Кроме того, каждому классификатору припи-сывается некоторый вес исходя из количествадопущенных им ошибок.

Отметим, что идея последовательной кор-рекции классификационных алгоритмов длякомпенсации предыдущих ошибок классифи-кации развивалась и в рамках оптимизацион-ных методов алгебраического подхода к распо-знаванию образов [2, 3, 9](см., также обзор [4]).

Из методов второй группы отметим рабо-ту [32], в которой исходное множество призна-ков было разбито на несколько дизъюнктныхподмножеств и строился ансамбль нейронныхсетей, каждая из которых включала призна-ки только из одного подмножества. К мето-дам этой (и третьей) группы можно отнестиметод случайных подпространств [56–58], рас-сматриваемый ниже.

Методы третьей группы основаны на том,что случайность вводится непосредственно вбазовый алгоритм. Так, в работах [40, 41] ал-горитм построения деревьев решений, состав-ляющих ансамбль, был рандомизирован сле-дующим образом. На каждом шаге расщепле-ния вычислялось 20 наилучших расщепленийи затем осуществлялся случайный выбор одно-го из них. Во второй из этих работ было прове-дено сравнительное экспериментальное иссле-дование трех методов построения ансамблейдеревьев решений — бустинга, баггинга и ран-домизации на 33 выборках. Результаты пока-зали, что в случае незначительно "зашумлен-ной" обучающей выборки рандомизация срав-

����124

Page 9: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

нима (и, возможно, несколько превосходит) сбаггингом, но не так точна как бустинг. В слу-чае сильно "зашумленных" выборок баггингнамного точнее бустинга и иногда превосходитрандомизацию.

Экспериментальное сравнение различныхалгоритмов построения ансамблей деревьеврешений на 57 реальных обучающих выборкахбыло проведено в [14]. Точность решений со-ответствующих классификаторов оцениваласьметодом кросс-проверки с дальнейшей про-веркой на статистическую значимость. По ре-зультатам кросс-проверки алгоритмы ранжи-ровались в порядке уменьшения точности (длякаждой выборки). Результаты этих исследова-ний могут быть суммированы следующим об-разом:

• лучший алгоритм был статистически зна-чимо лучше баггинга только на 8 из 57выборок;

• проверка средних рангов алгоритмов повсем выборкам показала, что бустинг,случайные леса и рандомизированные де-ревья статистически значимо точнее баг-гинга.

В работе [100] было проведено сравнитель-ное экспериментальное исследование двух ме-тодов построения ансамблей – баггинга и бу-стинга. В качестве базового классификато-ра использовался метод ближайшего среднего(сравнение с эталоном). Исследование пока-зало, что баггинг "работает" намного лучшебустинга в случае, если количество призна-ков сравнимо с объемом обучающей выбор-ки, а бустинг предпочтительнее баггинга ес-ли объем обучающей выборки намного превы-шает количество признаков. Причиной этого(как установлено в статье) является то, чтов случае баггинга разнообразие классифика-торов ансамбля уменьшается при увеличенииобъема обучающей выборки, а в случае бу-стинга увеличивается.

Случайные леса

Первые работы, связанные с построениемансамблей деревьев решений, были основанына эвристических процедурах и относятся кначалу 90-х гг. прошлого века [68, 97, 98, 115].Применялся также подход, основанный на бу-стинге (boosting) деревьев решений [43].

Более строгий подход, названный методомслучайных подпространств, был развит в ра-ботах Хо [56–58]. Суть подхода заключается втом, что для построения каждого дерева ис-пользуется только фиксированная доля слу-

чайно отобранных признаков. Ансамбли по-строенных деревьев Хо назвал случайными ле-сами решений (Random Decision Forests).

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

И, наконец, Брейманом был предложен ме-тод, известный как случайные леса. Фактиче-ски случайный лес Бреймана — это ансамбльдеревьев решений, каждое из которых стро-ится на основе бутстреп выборки из исход-ной обучающей выборки (баггинг) [22], причемдля расщепления вершин аналогично [12] ис-пользуется только доля случайно отбираемыхпризнаков. Кроме того, строится полное дере-во (без усечения). Классификация деревьев вансамбле осуществляется большинством голо-сов.

Алгоритм индуктивного построения и ис-пользования случайного леса впервые былразработан Брейманом и Катлер [35] и реа-лизован в ряде коммерческих пакетов. Всяинформация, касающаяся деталей алгоритма,технические доклады, руководства, обзор ипримеры применения метода случайных лесовможет быть найдена по адресу:URL: http://www.stat.berkeley.edu/users/breiman/RandomForests.

Алгоритм индукции случайного леса мо-жет быть представлен в следующем виде [99]:

1. Для i = 1, 2, . . . , B (здесь B — количестводеревьев в ансамбле) выполнить

• Сформировать бутстреп выборку Sразмера l по исходной обучающейвыборке D = {xi, yi}li=1;

• По бутстреп выборке S индуциро-вать неусеченное дерево решенийTi с минимальным количеством на-блюдений в терминальных вершинахравным nmin, рекурсивно следуя сле-дующему подалгоритму:

(а) из исходного набора n признаковслучайно выбрать p признаков;

(б) из p признаков выбрать при-знак, который обеспечивает наи-лучшее расщепление;

(в) расщепить выборку, соответству-ющую обрабатываемой вершине,на две подвыборки;

����125

Page 10: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

2. В результате выполнения шага 1 получа-ем ансамбль деревьев решений {Ti}Bi=1;

3. Предсказание новых наблюдений осу-ществлять следующим образом:

(а) для регрессии:

fBrf (x) =1

B

B∑i=1

Ti(x) ;

(б) для классификации:пусть ωi(x) ∈ {ω1, ω2, . . . , ωc} – класс,предсказанный деревом решений Ti,т. е. Ti(x) = ωi(x); тогда ωB

rf (x) —класс, наиболее часто встречающий-ся в множестве {ωb(x)}Bi=1.

Одно из достоинств случайных лесов со-стоит в том, что для оценки вероятностиошибочной классификации нет необходимостииспользовать кросс–проверку или тестовуювыборку. Оценка вероятности ошибочнойклассификации случайного леса осуществля-ется методом "Out–Of–Bag" (OOB), состоя-щем в следующем [23]. Известно, что каждаябутстреп выборка не содержит примерно 37 %наблюдений исходной обучающей выборки(поскольку выборка с возвращением, то неко-торые наблюдения в нее не попадают, а неко-торые попадают несколько раз). Классифици-руем некоторый вектор x ∈ D. Для класси-фикации используются только те деревья слу-чайного леса, которые строились по бутстрепвыборкам, не содержащим x, и как обычно ис-пользуется метод голосования. Частота оши-бочно классифицированных векторов обучаю-щей выборки при таком способе классифика-ции и представляет собой оценку вероятностиошибочной классификации случайного лесаметодом OOB. Практика применения оценкиOOB показала, что в случае, если количестводеревьев достаточно велико, эта оценка обла-дает высокой точностью. Если число деревьевмало, то оценка имеет положительное смеще-ние [31].

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

1. Случайные леса обеспечивают суще-ственное повышение точности, так какдеревья в ансамбле слабо коррелированывследствие двойной инъекции случайно-сти в индуктивный алгоритм — посред-ством баггинга и использования методаслучайных подпространств при расщеп-лении каждой вершины;

2. Методически и алгоритмически сложнаязадача усечения полного дерева решенийснимается, поскольку деревья в случай-ном лесу не усекаются (это также при-водит к высокой вычислительной эффек-тивности);

3. Отсутствует проблема переподгонки (да-же при количестве признаков, превыша-ющем количество наблюдений обучаю-щей выборки и большом количестве де-ревьев). Тем самым снимается сложнаяпроблема отбора признаков, необходимаядля других ансамблевых классификато-ров;

4. Простота применения: единственнымипараметрами алгоритма являются коли-чество деревьев в ансамбле и количе-ство признаков, случайно отбираемыхдля расщепления в каждой вершине де-рева. Подробные рекомендации по выбо-ру этих параметров можно найти в [69];

5. Легкость организации параллельных вы-числений.

Состоятельность случайных лесов

Брейман дает следующее определение слу-чайного леса [25].

Определение 1. Случайным лесом называ-ется классификатор, состоящий из набора де-ревьев {h(x,Θk) k = 1, . . .}, где Θk — незави-симые одинаково распределенные случайныевекторы и каждое дерево вносит один голоспри определении класса x.

Определение, данное Брейманом, являет-ся достаточно общим. В рамках этого опре-деления возможны различные модели случай-ных лесов, в зависимости от того, каким об-разом "вводится случайность" в алгоритм ин-дукции деревьев решений [12, 25, 41, 56]. Так,в соответствии с этим определением, случай-ным лесом является классификатор, состоя-щий из ансамбля деревьев решений, каждоеиз которых строится с использованием баг-гинга. В этом случае Θk представляют со-бой независимые одинаково распределенныеl–мерные случайные векторы, координаты ко-торых являются независимыми дискретнымислучайными величинами, принимающими зна-чения из множества {1, 2, 3, . . . , l} с равнымивероятностями. Реализация случайного векто-ра Θk определяет номера прецедентов обучаю-щей выборки, которые образуют бутстреп вы-борку, используемую при построении k–го де-рева решений.

����126

Page 11: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

Исследование состоятельности случайныхлесов, т. е. вопросов сходимости их решенийпри неограниченном возрастании объема обу-чающей выборки, было начато автором мето-да. В работе [24] исследовались общие вопро-сы сходимости решений ансамблей классифи-каторов. Для случайных лесов регрессий ис-следовалась среднеквадратичная сходимость.Именно, обозначим через M(Y |X = x) услов-ное математическое ожидание непрерывногоотклика при данном значении вектора призна-ков X. Cреднеквадратичная сходимость озна-чает, что

liml→∞|frf (x)−M(Y |X = x)|2 = 0 . (12)

В случае классификации состоятельностьозначает сходимость риска (вероятности оши-бочной классификации) к байесовскому риску,т. е. риску оптимального байесовского класси-фикатора.

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

В работе [19] исследовался вопрос состо-ятельности модели случайного леса, близкойк модели, рассматривавшейся Брейманом [27].Основной результат работы состоит в том, чтомодель состоятельна и скорость сходимостизависит только от количества "сильных" при-знаков и не зависит от количества иррелевант-ных ("шумовых") признаков.

В работах [17, 18] получен ряд результа-тов относительно состоятельности несколькихмоделей случайных лесов — чисто случайно-го леса (purely random forest) и инвариантно-го к масштабу случайного леса (scale-invariantrandom forest). В основу работы положен ре-зультат, полученный авторами, о состоятель-

ности ансамблей классификаторов, основан-ных на процедуре усреднения рандомизиро-ванных базовых классификаторов. Суть ре-зультата состоит в том, что для состоятель-ности ансамбля классификаторов необходимои достаточно, чтобы базовый классификаторбыл состоятелен.

Случайные леса как инструментстатистического анализа

Основной недостаток случайных лесов посравнению с деревьями решений состоит вотсутствии визуального представления про-цесса принятия решений и сложности ин-терпретации их решений. Однако предложен-ные Брейманом меры информативности при-знаков4 и возможность использовать случай-ные леса для построения матрицы близости(proximity) наблюдений более чем компенсиру-ют этот недостаток. Меры информативностидают возможность выделения наиболее ин-формативных признаков, что является однойиз важнейших задач статистического анали-за. Матрица близости дает возможность при-менения методов, непосредственно не связан-ных с классификацией и регрессией, такихкак многомерное шкалирование, кластериза-ция, определение прототипов (т. е. наиболеетипичных представителей) классов и выяв-ление аномальных наблюдений. Отмеченныевозможности во многом способствовали усиле-нию популярности случайных лесов.

Наиболее используемой сферой примени-мости случайных лесов (помимо классифика-ции и регрессии) является задача выделениянаиболее информативных признаков. Брейма-ном было предложено 4 меры информативно-сти признаков [25].

Меры информативности признаков,основанные на случайных лесах

Пусть xi некоторый признак. Три первыемеры информативности основаны на оцен-ке влияния случайной перестановки значенийэтого признака в OOB выборках на результа-ты классификации.

Первая мера вычисляется следующим об-разом:

1. Построить случайный лес и получитьоценку вероятности ошибочной класси-фикации e методом OOB;

2. В OOB выборках для каждого дерева изпостроенного случайного леса произвести

4Брейман использовал термин "меры важности" (importance measures); автор же придерживается термино-логии, принятой в прикладной статистике.

����127

Page 12: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

случайную перестановку значений при-знака xi;

3. Получить оценку вероятности ошибоч-ной классификации ei по модифициро-ванным OOB выборкам;

4. Определить информативность признакаxi как I1(xi) = max

i(0, ei − ei).

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

I2(xi) =1

l

l∑j=1

(marg(xj , yj)−margi(xj , yj),

где margi(x, y) означает отступ, вычисленныйпо OOB выборке со случайной перестановкойзначений признака xi.

Мера 3 равна разности между количествомотступов, которые уменьшились, и количе-ством отступов, которые увеличились в ре-зультате перестановки значений признака xi:

I3(xi) = #[marg(x, y) > margi(x, y)]−#[marg(x, y) < margi(x, y)].

(13)Мера 4 определяется как среднее умень-

шение загрязненности вершин, обусловленноеданным признаком, именно

I4(xi) =1

k

∑t

∆i(t)I(i, t) ,

где суммирование осуществляется по всем вер-шинам деревьев случайного леса, ∆i(t) —уменьшение загрязненности в вершине t, иI(i, t) — индикаторная функция, равная 1, ес-ли признак xi был выбран для расщепления ввершине t.

Несмотря на многочисленные исследованиякак теоретического, так и экспериментальногохарактера [51, 101–103], пока неизвестно, ка-кая из предложенных мер предпочтительнеев той или иной ситуации. В работе Брейма-на [26] обсуждаются некоторые вопросы, каса-ющиеся различия между мерами информатив-ности и приведен ряд примеров их примене-ния. Подробное изложение вопросов, связан-ных с мерами информативности, содержитсяв работе [51].

В работе [101] показано, что описанные вы-ше меры важности признаков не очень надеж-ны в ситуациях, когда признаки измерены вразличных шкалах или сильно вырьируют поколичеству уровней (для признаков, измерен-ных в номинальной или порядковой шкале). Вэтой работе предложено использовать другойалгоритм построения случайного леса, для ко-торого соответствующие меры важности при-знаков "хорошо работают" в описанных вышеситуациях, а именно, использовать для фор-мирования обучающих выборок используемыхдля построения деревьев решений не выборкус возвращением (баггинг), а выборку без воз-вращения объемом равным 0,62 объема исход-ной выборки. Такой метод получил названиеподбаггинг (subbagging).

График частной зависимости

Для случайных лесов регрессий возможнопостроение графиков частных зависимостейотклика от некоторых независимых перемен-ных [55]. Пусть XS — подвектор входных при-знаков x1, x2, . . . , xn с индексами из множестваS ⊂ {1, 2, . . . , n} и C — дополнительное емумножество S∪C = {1, 2, . . . , n}. Оценка функ-ции частной (маргинальной) зависимости от-клика от значений подвектора входных при-знаков XS определяется как

fS(xS) =1

l

l∑i=1

fS(xS , xiC) .

Эта функция (и соответствующий график)позволяют выделить эффект воздействия под-вектора входных признаков XS на отклик по-сле удаления эффекта воздействия XC .

Построение матрицы близости

Индукция случайного леса может служитьпромежуточным этапом для построения мат-рицы близости (proximity) наблюдений [26].Элемент (i, j) матрицы близости равен доледеревьев в лесе, таких, что элементы xi и xj

классифицируются в одну терминальную вер-шину (лист). Ясно, что элементы, часто попа-дающие в одну терминальную вершину, "по-добны" (близки) в некотором смысле. Матри-ца близости затем может быть использованадля:

1. Кластеризации наблюдений;

2. Многомерного шкалирования;

3. Нахождения прототипов классов;

4. Выявления аномальных наблюдений.

����128

Page 13: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

Кластеризация наблюдений осуществляет-ся с помощью генерации искусственных дан-ных. Именно исходная выборка, подлежащаякластеризации, образует первый класс, а на-блюдения второго класса генерируются ис-кусственным образом. Генерация может осу-ществляться двумя способами:

• генерируются независимые бутстреп-выборки для каждого признака отдель-но;

• значения каждого признака генерируют-ся в соответствии с равномерным распре-делением на области его значений в ис-ходной выборке.

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

Определение прототипов классов произво-дится следующим образом [26]. Для каждогокласса находится наблюдение, имеющее наи-большее количество наблюдений этого классасреди своих k ближайших соседей (определяе-мых по матрице близости). Затем для каждогопризнака находится медиана этих k ближай-ших соседей. Эти медианы и считаются про-тотипами рассматриваемого класса.

Мера аномальности наблюдения определя-ется как величина, обратная сумме квадратовблизостей между этим наблюдением и други-ми наблюдениями того же класса.

Вопросы методического и практическо-го применения рассмотренных выше методовможно найти в [26, 28].

Разновидности случайных лесов

Случайные леса выживаемости

Обобщением случайных лесов на случайданных, цензурированных справа, важнымпримером которых являются данные о выжи-ваемости, являются случайные леса выжива-емости (Random Survival Forests). С их по-мощью возможно построение непараметриче-ских регрессионных кривых выживаемости, непредполагающих пропорциональности риска.В R случайные леса выживаемости реализова-ны в пакете randomSurvivalForest [62, 63].

Квантильные леса регрессий

В случае непрерывного отклика случай-ные леса являются хорошим методом построе-ния непараметрической регрессии, т. е. даютхорошее приближение к условному средне-му отклика. В работе [73] предложено важ-ное обобщение – квантильные леса регрессий(Quantile Regression Forests), которые даютсущественно более полную картину уcловно-го распределения отклика, а именно, воз-можность непараметрической оценки кванти-лей условного распределения. Это позволяет,в частности, использовать их для построе-ния доверительных интервалов и обнаруже-ния аномальных значений отклика. В R кван-тильные леса регрессий реализованы в пакетеquantregForest [74].

Логические леса

В работе [117] предложен метод построе-ния ансамблей классификаторов, основанныхна логических деревьях решений. Теорети-ческой основой является логическая регрес-сия [88, 89], предполагающая, что все призна-ки, включая классовый, являются бинарными.Предсказание отклика в логической регрес-сии осуществляется с использованием логиче-ских комбинаций бинарных признаков, позво-ляя строить хорошо интерпретируемые моде-ли сложных взаимодействий признаков. Од-нако при наличии шума возможности логиче-ской регрессии падают. Кроме классификациилогические леса могут использоваться для вы-явления наиболее информативных признакови их взаимодействий. В R логические леса ре-ализованы в пакете logicForest [118].

Вероятностные случайные леса

Оценка вероятности ошибочной классифи-кации случайных лесов, даваемая методомOOB, является усредненной оценкой [23, 25].В работе [29] предложен метод и алгоритм по-строения так называемых вероятностных слу-чайных лесов (Probabilistic Random Forests), спомощью которых возможно получить оценкувероятности ошибочной классификации кон-кретного наблюдения в случае бинарной клас-сификации. Matlab и C коды, реализующиеалгоритм, могут быть загружены с сайтаhttp://ucsu.colorado.edu/ breitenm/.

Потоковые случайные леса

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

����129

Page 14: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

данных, представляющих собой записи неко-торых событий (причем о некоторых извест-на их принадлежность определенному клас-су, а о некоторых нет), изменяющихся во вре-мени (и часто с высокой скоростью). В та-кой постановке классические алгоритмы рас-познавания образов не могут быть примененынепосредственно и требуют определенной (невсегда очевидной) модификации. Основнымитребованиями к такой модификации являют-ся высокая скорость обработки потока дан-ных, инкрементальность (пошаговость) обуче-ния (т. е. каждая запись должна обрабаты-ваться не более одного раза) и адаптапцияк текущему распределению событий в пото-ке. Для случайных лесов одна из таких моди-фикаций, ориентированная на задачи визуаль-ного слежения (visual tracking), была предло-жена в работе [93]. Программная реализацияэтого алгоритма в пакете "Online MulticlassLPBoost" может быть загружена с сай-та http://www.ymer.org/amir/software/online-random-forests/.

Другая модификация, ориентированная назадачи Data Mining и получившая названиепотоковые случайные леса (Streaming RandomForests), была предложена и разрабатываласьв работах [10, 11].

Случайный наивный Байесовскийклассификатор и случайная

мультиномиальная логит модель

Экспериментальные исследования и прак-тика применения случайных лесов показали,что метод обладает рядом хороших качеств –высокой точностью, робастностью по отно-шению к зашумленности обучающей выборкии отсутствием переподгонки. В связи с этиместественно предположить, что основные эле-менты алгоритма Бреймана – формированиеподвыборок методом баггинга и случайный от-бор признаков на стадии расщепления вер-шин деревьев решений могут быть успешно ис-пользованы и для некоторых других базовыхклассификаторов. Эта идея была реализова-на в работе [84]. В этой работе в качестве ба-зовых классификаторов рассматривались на-ивный Байесовский классификатор и мульти-номиальная логит модель. Авторами прове-ден ряд экспериментов по сравнению точностиклассификации соответствующих ансамблей сточностью случайных лесов и машин опор-ных векторов, которые показали, что случай-ный наивный Байесовский классификатор ислучайная мультиномиальная логит модель вопределенных ситуациях превосходят эти ме-тоды.

Программное обеспечениеиндукции деревьев решенийи случайных лесов

Деревья решений и случайные леса реа-лизованы во многих программных средствахкак коммерческого назначения, так и свобод-но доступных. К свободно доступным отно-сится программная система WEKA [53, 116],разрабатываемая c 1993 г. группой машинно-го обучения университета Вайкато (Новая Зе-ландия). Сайт проекта находится по адресуhttp://www.cs.waikato.ac.nz/ml/weka (дата об-ращения 15.04.2011), с которого можно загру-зить систему, руководства по работе с ней исоответствующие публикации. Отметим, чтоWEKA содержит также большой выбор нере-курсивных процедур распознавания образови имеет интерфейс с пакетом R, называемыйRWEKA [59]. Другой свободно доступной си-стемой является система RapidMiner; сайт со-ответствующего проекта находится по адре-су http://www.rapidminer.com (дата обраще-ния 15.04.2011). В среде MATLAB имеется ин-терфейс к алгоритму, реализующему методслучайных лесов [113]. В работе [64] пред-ложен свободно доступный C++ код, ориен-тированный на использование случайных ле-сов для задач кластеризации. Наиболее ши-рокий спектр процедур, содержащий реализа-ции не только классических алгоритмов CARTдля деревьев решений и алгоритма Брейма-на для случайных лесов содержится в паке-тах, разработанных для среды R [85] — сво-бодно распространяемом программном обеспе-чении для статистических вычислений и гра-фики, доступном на платформах Windows,Linux, Mackintosh. Пакет R может быть за-гружен с сайта http://cran.r-project.org/, гдетакже имеется руководство по инсталляциии руководства по работе с пакетом. По-лезные материалы по пакету R на рус-ском языке могут быть найдены по адре-су http://herba.msu.ru/shipunov/software/r/r-ru.htm. Ниже приводятся описания практи-чески всех пакетов, реализующих описан-ные выше методы и имеющиеся на мо-мент написания настоящего обзора. Эти па-кеты также могут быть загружены с сайтаhttp://cran.r-project.org/. Нет сомнений, чтоих количество будет увеличиваться. Все па-кеты, разработанные для среды R, оформле-ны по единому стандарту — содержат описа-ния всех содержащихся в них процедур и хо-рошо продуманные примеры их применения,которые могут служить в качестве шаблонов.Ряд пакетов, кроме того, описан в журнале R

����130

Page 15: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

Journal (до 2005 г. R News). В частности, одиниз номеров этого журнала содержит краткийобзор применения метода случайных лесов всреде R [99]. Ниже кратко описаны эти паке-ты.

Пакеты tree [86] и rpart [106] содержатпроцедуры рекурсивного разбиения для реше-ния задач классификации, регрессии и анали-за выживаемости, основанных на идеях клас-сической работы [21]. Адаптация процедур па-кета rpart на случай многомерного откликасодержится в пакете mvpart [36, 37]. Имеетсятакже вспомогательный пакет maptree [114],содержащий полезные процедуры для улуч-шенного графического представления и усече-ния дендрограмм, деревьев классификации ирегрессий, построенных с использованием па-кетов cluster [72] и rpart.

Пакет rpartOrdinal [13] содержит проце-дуры построения деревьев решений, ориенти-рованные на случай, когда классовая перемен-ная измерена в порядковой шкале.

Одним из наиболее мощных пакетов, ре-ализующих алгоритмы рекурсивного разбие-ния для построения деревьев решений и ре-грессий, является пакет party [60]. Он вклю-чает возможность построения деревьев услов-ного вывода (conditional inference trees), ле-сов условного вывода (conditional inferenceforests), основанных на теории условного вы-вода [60], а также процедуры рекурсивногоразбиения для параметрических моделей (ли-нейной и обобщенной линейной модели). До-пускается использование признаков, измерен-ных в различных шкалах: числовой, номи-нальной и порядковой, а также цензуриро-ванные и многомерные отклики. Пакет содер-жит процедуры улучшенного представлениябинарных деревьев и распределения откликав вершинах деревьев. Ряд вопросов, касаю-щихся применения пакета, рассмотрен в рабо-те [104].

Процедуры построения косоугольныхдеревьев решений содержатся в пакетеoblique.tree [109].

Пакет Margin.tree [108] реализует иерар-хическую версию метода опорных векторовдля построения деревьев решений. Особеннополезен для обработки обучающих выборок сколичеством классов большим 2 и когда ко-личество признаков превышает количество на-блюдений. Его применение описано в [107].

Пакет ipred [82] содержит процедуры по-строения деревьев решений для задач непря-мой (т. е. использующей некоторые типы апри-орной информации) классификации, регрес-сии и анализа выживаемости. В пакете реа-

лизованы процедуры получения улучшенныхоценок вероятности ошибочной классифика-ции и предсказания. Примеры примененияэтого пакета для решения задач классифика-ции в медицине содержатся в [83].

Основным пакетом, реализующим класси-ческий алгоритм случайных лесов Брейма-на (и процедуры которого используются внекоторых других пакетах), является пакетrandomForest [69]. Возможности пакета и во-просы его методического и практического при-менения рассмотрены в работах [69, 99].

Пакеты varSelRF [38, 39] и Boruta: [67]содержат процедуры отбора множества наи-более информативных признаков с исполь-зованием случайных лесов. В частности, па-кет varSelRF включает процедуры, основан-ные на методе обратного исключения пере-менных и на спектре важности переменных,ориентирован на данные высокой размерно-сти и предусматривает возможность организа-ции параллельных вычислений. Пакет Borutaориентирован на нахождение наиболее ин-формативных признаков в информационныхсистемах. Процедура поиска информативныхпризнаков основана на оригинальном алгорит-ме, предусматривающем итеративное построе-ние случайных лесов.

Пакет quantregForest [73] содержит про-цедуры построения квантильных лесов регрес-сий.

Случайные леса выживаемости реализова-ны в пакете randomSurvivalForest [62]. Во-просы применения пакета рассмотрены в [63].

Пакет LogicForest [118] содержит проце-дуры построения логического леса для выяв-ления логических соотношений между откли-ком и независимыми переменными. Предпола-гается, что все признаки обучающей выборкиявляются бинарными.

Пакет Gbev [94] ориентирован на построе-ние ансамблей деревьев регрессий методом бу-стинга для данных с ошибками измерений внезависимых переменных.

Пакет ModelMap [46] содержит проце-дуры детального картирования для данных,представленных в виде изображений, основан-ные на методе случайных лесов и модели сто-хастического градиентного бустинга.Заключение

Говоря о периоде, прошедшем со временивозникновения метода случайных лесов, необ-ходимо отметить, что он не только состоялсякак метод классификации и регрессии и широ-ко применяется в различных предметных об-ластях, но и послужил основой для разработки

����131

Page 16: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

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

Автор выражает признательностьЮ. Л. Павлову за предложение написать дан-ный обзор и полезные замечания.

Литература

1. Айвазян С. А., Бухштабер В. Н., Еню-ков И. С., Мешалкин Л. Д. Прикладная стати-стика. Классификация и снижение размерно-стей. Справочное издание / Ред. Айвазян С. А.// Финансы и статистика. M., 1989. C. 607.2. Воронцов К. В. О проблемно-ориентированной оптимизации бази-сов задач распознавания // ЖВМ иМФ. 1998. Т. 38, № 5. С. 870–880.http://www.ccas.ru/frc/papers/voron98jvm.pdf.(дата обращения 15.04.2011).3. Воронцов К. В. Оптимизационные ме-тоды линейной и монотонной коррек-ции в алгебраическом подходе к про-блеме распознавания // ЖВМ и МФ.2000. Т. 40, № 1. С. 166–176. URL:http://www.ccas.ru/frc/papers/voron00jvm.pdf(дата обращения 15.04.2011).4. Воронцов К. В. Обзор современных ис-следований по проблеме качества обученияалгоритмов // Таврический вестник инфор-матики и математики. 2004. P. 1–20. URL:www.ccas.ru/frc/papers/voron04twim.pdf (датаобращения 15.04.2011).5. Колчин В. Ф. Случайные отображения. М.:Наука, 1984. 208 c.6. Павлов Ю. Л. Предельные теоремы длячисла деревьев заданнного объема в случай-ном лесе // Математический сборник. 1977.Т. 103, № 3. C. 392–403.7. Павлов Ю. Л. Асимптотическое распреде-ление максимального объема дерева в в слу-чайном лесе // Теория вероятностей и ее при-менения. 1977. Т. 22, № 3. C. 523–533.

8. Павлов Ю. Л. Случайный лес // Вероят-ность и математическая статистика. М.: Изд.

"Большая Российская Энциклопедия”, 1999.C. 604–605.

9. Рудаков К. В., Воронцов К. В. О методахоптимизации и монотонной коррекции в алгеб-раическом подходе к проблеме распознавания// Доклады РАН. 1999. Т. 367, № 3. С. 314–317. URL: http://www.ccas.ru/frc/papers/rudvoron99dan.pdf (дата обращения15.04.2011).

10. Abdulsalam H., Skillicorn D. B., Martin P.Streaming Random Forests // Proceedings ofthe 11th International Database Engineering andApplications Symposium (IDEAS), (September2007). 2007. P. 225–232.

11. Abdulsalam H., Skillicorn D. B., Martin P.Classification Using Streaming Random Forests// IEEE Transactions on Knowledge and DataEngineering. 2011. Vol. 23, N. 1. P. 22–36.

12. Amit Н., Geman D. Shape quantization andrecognition with randomized trees // NeuralComputation. 1997. Vol. 9. P. 1545–1588.13. Archer K. J. rpartOrdinal: An R Packagefor Deriving a Classification Tree for Predictingan Ordinal Response // Journal of StatisticalSoftware. 2010. Vol. 34, N 7. P. 1–17. URL:http://www.jstatsoft.org/v34/i07/ (дата обра-щения 15.04.2011).14. Banfield R. E., Hall L. O., Bowyer K. W.,Kegelmeyer W. P. A Comparison ofDecision Tree Ensemble Creation Techniques// IEEE Trans. Pattern analysis and MachineIntelligence. 2007. Vol. 29, N 1. P. 173–180.

15. Behlmann P., Yu B. Analyzing bagging// Annals of Statistics. 2002. Vol. 30. P. 927–961.

16. Bennet K. P. Decision tree constructionvia linear programming // Proceedings of the4th Midvest Artificial Intelligence and CognitiveScience Society Conference. (Utica, Illinois1992). 1992. P. 97–101.

17. Biau G., Devroye L., Lugosi G. Consistencyof random forests and other averaging classifiers// Journal of Machine Learning Research. 2008.Vol. 9. P. 2015–2033.18. Biau G. Devroye L. On the layerednearest neighbour estimate, the baggednearest neighbour estimate and therandom forest method in regression andclassification // Journal of MultivariateAnalysis. 2010. Vol. 101. P. 2499–2518. URL:http://www.lsta.upmc.fr/BIAU/bd4.pdf (датаобращения 15.04.2011).19. Biau G. Analysis of a Random ForestsModel // Technical report, University Paris6. 2010. P. 1–31. URL: http://hal.archives-ouvertes.fr/docs/00/47/65/45/PDF/article2.pdf(дата обращения 15.04.2011).

����132

Page 17: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

20. Borra S., Ciaccio A. Improvingnonparametric regression methods by baggingand boosting // Computational Statistics andData Analysis. 2002. Vol. 38, N 4. P. 407–420.21. Breiman L., Friedman R., Olshen R.,Stone C. Classification and Regression Trees.Belmont, California: Wadsworth International,1984. 342 p.22. Breiman L. Bagging predictors // MachineLearning. 1996. Vol. 24, N 2. P. 123–140.23. Breiman L. Out-of-bag estimation// Technical report, Statistics DepartmentUniversity of California, Berkeley. 1996. P. 1–13. URL: ftp://ftp.stat.berkeley.edu/pub/users/breiman/OOBestimation.ps.Z (дата обраще-ния 15.04.2011).24. Breiman L. Some infinite theory forpredictor ensembles // Technical Report577, Statistics Department University ofCalifornia, Berkeley, 2000. P. 1–30. URL:http://www.stat.berkeley.edu/breiman (датаобращения 15.04.2011).25. Breiman L. Random forests // MachineLearning. 2001. Vol. 45, N 1. P. 5–32.26. Breiman L. Manual on setting up, using, andunderstanding random forests v3.1. 2002. URL:http://oz.berkeley.edu/users/breiman/Using_random_forests_V3.1.pdf.27. Breiman L. Consistency for a simple modelof random forests // Technical Report 670,Statistics Department, UC Berkeley. 2004. P. 1–10. URL: http://www.stat.berkeley.edu/breiman(дата обращения 15.04.2011).28. Breiman L., Cutler A. Random Forests.Berkeley. 2005. 56 p. URL: http://www.stat.berkeley.edu/users /breiman/RandomForests29. Breitenbach M., Grudic G., Nielsen R.Probabilistic Random Forests: Predicting DataPoint Specific Misclassification Probabilities// Machine Learning. 2009. Vol. 23, N 2. P. 48–73.30. Brodley C. E., Utgoff P. E. Multivariatedecision trees // Machine Learning. 1995.Vol. 19, N 1. P. 45–77.

31. Bylander T. Estimating generalization erroron twoclass datasets using outofbag estimates// Machine Learning. 2002. Vol. 48. P. 287–297.

32. Cherkauer K. G. Human expert–levelperformance on a scientific image analysistask by a system using combined artificialneural networks / Eds. P. Chan // WorkingNotes on the AAAI Workshop on IntegratingMultiple Learned Models. 2006. P. 15–21. URL:http://www.cs.fit.edu/ imlm (дата обращения15.04.2011).

33. Cios K. G., Sztandera L. M. ContinuousID3 algorithm with fuzzy entropy measures

// Proceedings of IEEE International Conferenceon Fussy Systems. 1992. P. 469–476.34. Cutler D. R., Edwards T. C. et al. Randomforests for classification in ecology // Ecology.2007. Vol. 88, N. 11. P. 2783–2792.35. Cutler A., Breiman L. RAFT: RAndomForest Tool. URL: http://www.stat.berkeley.edu/users/breiman/RandomForests/ (дата обраще-ния 15.04.2011).36. De’ath G. Multivariate Regression Trees: ANew Technique for Constrained ClassificationAnalysis // Ecology. 2002. Vol. 83, N 4. P. 1103–1117.37. De’ath G. mvpart: Multivariate partitioning// R package version 1.31. 2010. URL:http://CRAN.Rproject.org/package=mvpart(дата обращения 15.04.2011).38. Diaz-Uriarte R. varSelRF: Variable selectionusing random forests // R package version 0.71.2009. URL: http://ligarto.org/rdiaz/Software/Software.html (дата обращения 15.04.2011).39. Diaz-Uriarte R., Andrґes S. Gene Selectionand classification of microarray data usingrandom forest // BMC Bioinformatics. Vol. 7,N 3. P. 1–13.40. Dietterich T. G., Kong E. B. Machinelearning bias, statistical bias, and statisticalvariance of decision tree algorithms // Technicalreport, Department of computer scienceOregon State University. 1995. P. 1–22.URL: ftp://ftp.cs.orst.edu/pub/tgd/papers/tr-bias.ps.gz (дата обращения 15.04.2011).41. Dietterich T. G. An ExperimentalComparison of Three Methods for ConstructingAnsembles of Decision Trees: Bagging, Boosting,and Randomization // Machine Learning. 1999.P. 1–20.42. Dietterich T. G. Ensemble methods inmachine learning // First InternationalWorkshop on Multiple Classifier Systems.Lecture Notes in Computer Science. New York:Springer, 2000. P. 1–15.43. Drucker H., Cortes C. Boosting decisiontrees / Eds. D. Touretsky, M. Mozer et al.// Advances in Neural Information ProcessingSystems. Cambridge: MA. MIT Press, 1996.Vol. 8. P. 479–485.44. Duda R. O., Hart P. E., Stork D. G.Pattern Classification. NY.: John Wiley Sons,2001. 639 p.45. Esposito F., Malerba D., Semeraro G. Acomparative analysis of methods for pruningdecision trees // IEEE Transactions on PatternAnalysis and Machine Intelligence. 1997. Vol. 19,N 5. P. 476–491.46. Freeman E., Frescino T. ModelMap:Modeling and Map production using Random

����133

Page 18: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

Forest and Stochastic Gradient Boosting// USDA Forest Service, Rocky MountainResearch Station, 507 25th street, Ogden, UT,USA. 2009. P. 134–156.47. Freund Y., Shapire R. E. Experiments witha new boosting algorithm // Proceedings of the13rd International Conference on Machine Lear-ning. P. Morgan Cauffman. 1996. P. 146–148.48. Freund Y., Shapire R. E. Discussion of thepaper “Arcing classifiers” by Leo Breiman // TheAnnals of Statistics. 1998. Vol. 26, N 3. P. 824–832.49. Furnkranz J. Pruning algorithms for rulelearning // Machine Learning. 1997. Vol. 27.P. 139–172.50. Gehrke J., Ramakrishnan R., Ganti V.Rainforest a framework for fast decision treeconstruction of large datasets // Data Miningand Knowledge Discovery. 2000. Vol. 4, N 2/3.P. 127–162.51. Genuer R., Poggi J.-M., Tuleau C.Random Forests: Some methodologicalinsights // Research Report 6729, INRIASaclay-Ile-de-France. 2008. P. 1–35. URL:http://hal.inria.fr/inria-00340725/fr (дата об-ращения 15.04.2011).52. Genuer R. Risk bounds for purely uniformlyrandom forests // Technical report 7318, INRIA.2010. P. 1–22. URL: http://www.math.u-psud.fr/ genuer/genuer.purf.pdf (дата обраще-ния 15.04.2011).53. Hall M., Frank E., Holmes G. et al. TheWEKA Data Mining Software: An Update// SIGKDD Explorations. 2009. Vol. 11, N 1.P. 1–9.54. Hansen L., Salamon P. Neural NetworkEnsembles // IEEE Trans. Pattern analysis andMachine Intelligence. 1990. Vol. 12. P. 993–1001.55. Hastie T., Tibshirani R., Friedman J. TheElements of Statistical Learning. Springer, 2001.533 p.56. Ho T. K. Random Decision Forests // Pro-ceedings of the 3rd International Conferenceon Document Analisis and Recognition,(Montreal,Canada 1995), 1995. P. 278–282.57. Ho T. K. C4.5 Decision Forests // Pro-ceedings of the 14rd International Conferenceon Pattern Recognition. (Brisbane, Australia,1998). 1998. P. 17–20.58. Ho T. K. The Random Subspace Methodfor Constructing Decision Forests // IEEETransactions on Pattern Analysis and MachineIntelligence. 1998. Vol. 20, N 8. P. 832–844.59. Hornik K., Buchta C., Zeileis A. Open-Source Machine Learning: R Meets Weka// Computational Statistics. 2009. Vol. 24, N. 2.P. 225–232.

60. Hothorn T., Hornik K., Zeileis A.Unbiased Recursive Partitioning: A ConditionalInference Framework // Journal ofComputational and Graphical Statistics.2006. Vol. 15, N 3. P. 651–674. URL:http://statmath.wuwien.ac.at/ zeileis/papers/Hothorn+Hornik+Zeileis2006.pdf. (дата обра-щения 15.04.2011).61. Hothorn T., Buehlmann P., Dudoit S. et al.Survival Ensembles // Biostatistics. 2006. Vol. 7,N 3. P. 355–373.62. Ishwaran H., Kogalur U. Random survivalforests for R // R News. 2007. Vol. 7, N 2.P. 25−31.63. Ishwaran H., Kogalur U., Blackstone E.,Lauer M. Random survival forests // Ann. Appl.Statist. 2008. Vol. 2, N 3. P. 841–860.64. Karpievitch, Y. V., Leclerc, A. P.,Hill, E. G., Almeida, J. S. RF++: ImprovedRandom Forest for Clustered Data Classification.URL: http://www.ohloh.net/p/rfpp. (дата об-ращения 15.04.2011).65. Kooperberg C., Ruczinski I., LeBlanc M.,Hsu L. Sequence Analysis using LogicRegression // Genetic Epidemiology. 2001.Vol. 21. P. 626–631. URL: http://kooperberg.fhcrc.org/logic/documents/ingophdlogic.pdf(дата обращения 15.04.2011).66. Kuncheva L. I. Combining PatternClassifiers: Methods and Algorithms / Hoboken,New Jersey: John Wiley Sons, 2004. 349 p.

67. Kursa M. B., Rudnicki W. R. FeatureSelection with the Boruta Package // Journal ofStatistical Software. 2010. Vol. 36, N 11. P. 1–13.URL: http://www.jstatsoft.org/v36/i11/ (датаобращения 15.04.2011).

68. Kwok S. W., Carter C. Multiple decisiontrees // Uncertainty in Artifcial Intelligence.1990. Vol. 4. P. 327–335.

69. Liaw A., Wiener M. Classification andRegression by randomForest // R News. 2002.Vol. 2, N 3. P. 18–22. URL: http://CRAN.R-project.org/doc/Rnews/

70. Lin Y., Jeon Y. Random forests andAdaptive Nearest Neighbors // Technical report1055. Dept. Statistics, Univ. Wisconsin, 2002.P. 1–31.

71. Lin Y., Jeon Y. Random forests and adaptivenearest neighbors // Journal of the AmericanStatistical Association. 2006. Vol. 101. P. 578–590.

72. Maechler M. cluster: Cluster AnalysisExtended Rousseeuw et al. // Rpackage version 1.13.3. 2011. URL:http://CRAN.Rproject.org/package=cluster(дата обращения 15.04.2011).

����134

Page 19: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

73. Meinshausen N. Quantile Regression Forests// Journal of Machine Learning Research. 2006.Vol. 7. P. 983–999.74. Meinshausen N. quantregForest: QuantileRegression Forests // R package version 0.22.2007. URL: http://www.stat.berkeley.edu/ nicolai(дата обращения 15.04.2011).75. Mingers J. Expert systems experiments withrule induction // Journal of the OperationalResearch Society. 1987. Vol. 38. P. 39–47.76. Mingers J. An empirical comparison ofpruning methods for decision tree induction// Machine Learning. 1989. Vol. 4. P. 227–243.77. Murthy S. K. Automatic Construction ofDecision Trees from Data: A MultiDisciplinarySurvey // Data Mining and KnowledgeDiscovery. 1998. Vol. 2. P. 345–389.78. Murthy S., Kasif F., Salzberg S., Beigel R.OCI: Randomized induction of oblique decisiontrees // Proceedings of the Eleventh NationalConference on Artificial Intelligence, Mit Press,Boston. 1993. P. 322–327.79. Niblett T., Bratko I. Learning decisionrules in noisy domains / Eds. M. A. Bramer// Research and development in Expert Systems.Cambridge University Press, 1986. P. 25–34.80. Parmanto B., Munro P. W., Doyle H. R.Improving committee diagnosis with resumplingtechnique // Advances in Neural InformationProcessing Systems. 1996. Vol. 8. P. 882–888.81. Pavlov Yu. L. Random Forests. Utrecht,Boston, Koln, Tokyo: VSP, 2000. 122 p.82. Peters A., Hothorn T. ipred: ImprovedPredictors // R package version 0.8-11. 2011.URL: http://CRAN.Rproject.org/package=ipred(дата обращения 15.04.2011).83. Peters A., Hothorn T., Lausen B. ipred:Improved Predictors // R News. 2002.Vol. 2, N 2. P. 33–36. URL: http://CRAN.R-project.org/doc/Rnews/ (дата обращения15.04.2011).

84. Prinzie A., Poel D. Random MulticlassClassification: Generalizing Random Forests toRandom MNL and Random NB // Workingpaper, Department of Marketing, GhentUniversity, 2007. P. 1–12.

85. R Development Core Team R: A languageand environment for statistical computing// R Foundation for Statistical Computing:Vienna, Austria, ISBN 3-900051-07-0, URL:http://www.R-project.org (дата обращения15.04.2011).

86. Ripley B. D. tree: Classification andregression trees // R package version 1.026. 2007.URL: http://CRAN.Rproject.org/package=tree(дата обращения 15.04.2011).

87. RobnikSikonja M. Improving Random Forests/ Eds. J. F. Boulicaut et al. ECML 2004, LNAI3210, Berlin: Springer, 2004. P. 359–370. URL:http://lkm.fri.unilj.si/rmarko/papers/ (дата об-ращения 15.04.2011).88. Ruczinski I., Kooperberg C., LeBlanc M.Logic Regression methods and software / Eds:D. Denison et al. // Proceedings of theMSRI workshop on Nonlinear Estimation andClassification. New York: Springer, 2002. P. 333–344.89. Ruczinski I., Kooperberg C., LeBlanc M.Logic Regression // Journal of Computationaland Graphical Statistics. 2003. Vol. 12. P. 475–511.90. Quinlan J. R. Learning efficient classificationprocedures and their application to chess endgames / Eds. R. S. Michalski et al. // MachineLearning: An artificial intelligence approach. SanFrancisko: Morgan Kaufmann, 1983. P. 463–482.91. Quinlan J. R. Simplifying decision trees// International Journal of ManMachine Studies.1987. Vol. 27. P. 221–234.92. Quinlan J. R. C4.5 Programs for MachineLearning. San Mateo, California: MorganKaufmann, 1993.93. Saffari A., Leistner C., Jakob Santner J. etal. On-line Random Forests // 3rd IEEE ICCVWorkshop on On-line Computer Vision, 2009.P. 112–127.94. Sexton J. gbev: Gradient BoostedRegression Trees with Errors in Variables/ R package version 0.1.1. 2009. URL:http://CRAN.Rproject.org/package=gbev (да-та обращения 15.04.2011).95. Shapire R., Freund Y., Bartlett P., Lee W.Boosting the margin: A new explanation for theeffectiveness of voting methods // Annals ofStatistics. 1998. Vol. 26, N 5. P. 1651–1686.96. Shi T., Horvath S. Unsupervised Learningwith Random Forest Predictors // Journal ofComputational and Graphical Statistics. 2006.Vol. 15, N 1. P. 118–138.97. Shlien S. Multiple Binary Decision TreeClassifiers // Pattern Recognition. 1990. Vol. 23,N 7. P. 757–763.98. Shlien S. Nonparametric classification usingmatched binary decision trees // PatternRecognition Letters. 1992. Vol. 13. P. 83–87.99. Siroky D. Navigating Random Forestsand related advances in algorithmic modeling// Statistics Surveys. 2009. Vol. 3. P. 147–163.

100. Skurichina M., Kuncheva L., Duin R.Bagging and boosting for the nearest meanclassifier: Effects of sample size on diversityand accuracy / Eds. J. K. F. Roli // MultipleClassifier Systems, Proc. Third International

����135

Page 20: СЛУЧАЙНЫЕ ЛЕСА: ОБЗОРresources.krc.karelia.ru/transactions/doc/trudy2013/... · 2013-03-26 · Введение Понятиеслучайный лес впервыебыловве-деновнаучныйобиходвработах[6,7],см.так-же

Workshop MCS. (Cagliari, Italy 2002).Berlin: Springer, 2002. Vol. 2364. P. 62–71.http://citeseer.nj.nec.com/539135.html

101. Strobl C., Boulesteix A. L., Augustin T.,Zeileis A. Bias in RandomForest VariableImportance Measures: Illustrations, Sources anda Solution // BMC Bioinformatics. 2007. Vol. 8,N 25. URL: http://www.biomedcentral.com/14712105/8/25/abstract. (дата обращения15.04.2011).

102. Strobl C., Boulesteix A. L., Augustin T.,Zeileis A. Conditional variable importancefor Random Forests // BMC Bioinformatics.Vol. 9, N 307. P. 67–78. http://www.stat.uni-muenchen.de/ carolin/research.html (дата обра-щения 15.04.2011).

103. Strobl C., Zeileis A. Danger: High Power!Exploring the Statistical Properties of aTest for Random Forest Variable Importance// Technical Report 017. Department ofStatistics, University of Munich, 2008. P. 1–9. URL: http://www.stat.uni-muenchen.de (да-та обращения 15.04.2011).

104. Strobl C., Hothorn T., Zeileis A. Party On! ANew, Conditional Variable-Importance Measurefor Random Forests Available in the partyPackage // R Journal. 2009. Vol. 1, N 2. P. 14–17.

105. Strobl C., Malley J., Tutz G. An Introductionto Recursive Partitioning: Rationale, Applicationand Characteristics of Classification andRegression Trees, Bagging and Random Forests// Technical Report 55. Department of StatisticsUniversity of Munich, 2009. P. 1–50. URL:http://www.stat.uni-muenchen.de (дата обра-щения 15.04.2011).

106. Therneau T., Atkinson B. rpart: RecursivePartitioning // R package version 3.145. 2009.URL: http://CRAN.Rproject.org/package=rpart(дата обращения 15.04.2011).

107. Tibshirani R., Hastie T. Margin treesfor highdimensional classification // Technicalreport. Stanford University, 2006. P. 1–21. URL:http://www.stanford.edu/ hastie/pub.htm (да-та обращения 15.04.2011).

108. Tibshirani R. marginTree: margintrees for highdimensional classification// R package version 1.01. 2010. URL:

http://CRAN.Rproject.org/package=marginTree(дата обращения 15.04.2011).

109. Truong A. oblique.tree: Oblique Trees forClassification Data // R package version 1.0.2009. URL: http://CRAN.Rproject.org/package=oblique.tree (дата обращения 15.04.2011).

110. Truong A. Fast Growing and InterpretableOblique Trees via Probabilistic Model // Univ.of Oxford, A thesis submitted for the degree ofDoctor of Philosophy, Trinity term. 2009. P. 1–119.

111. Wang X., Chen B., Qian G., Ye F. On theoptimization of fuzzy decision trees // Fussy Setsand Systems. 2000. Vol. 11, N 2. P. 117–125.

112. Wang L. X., Mendel J. M. Generatingfuzzy rules by learning from examples // IEEETransaction on Systems, Man and Cybernetics.1992. Vol. 22. P. 1414–1427.

113. Wang T. MATLAB R13. // URL:http://lib.stat.cmu.edu/matlab (дата обраще-ния 15.04.2011).

114. White D. maptree: Mapping, pruning,and graphing tree models // R packageversion 1.4-6. 2010. http://CRAN.R-project.org/package=maptree

115. Williams G. J. Combining decision trees:Initial results from the MIL algorithm / Eds.J. S. Gero, R. B. Stanton // Artificial IntelligenceDevelopments and Applications. NorthHolland:Elsevier Science Publishers, 1988. P. 273–289.

116. Witten I., Frank E. Data Mining: PracticalMachine Learning Tools and Techniques. 2ndEdition. San Francisco: Morgan Kaufmann, 2005.567 p.

117. Wolf B. J., Slate E. H., Hill E. G.Logic Forest: An ensemble classifier fordiscovering logical combinations of binarymarkers // Bioinformatics. 2010. Vol. 26, N 17.P. 2183–2189.

118. Wolf B. J. LogicForest: Logic Forest// R package version 1.0. 2010. URL:http://CRAN.Rproject.org/package=LogicForest(дата обращения 15.04.2011).

119. Zeileis A., Hothorn T.ModelBased RecursivePartitioning // Journal of Computational andGraphical Statistics. 2008. Vol. 17, N 2. P. 492–514.

СВЕДЕНИЯ ОБ АВТОРE:Чистяков Сергей Павловичмладший научный сотрудникИнститут прикладных математических исследованийКарельского научного центра РАНул. Пушкинская, 11, Петрозаводск, Республика Каре-лия, Россия, 185910эл. почта: [email protected]тел.: (8142) 763370

Chistiakov, SergeyInstitute of Applied Mathematical Research, KarelianResearch Centre, Russian Academy of Sciences11 Pushkinskaya St., 185910 Petrozavodsk, Karelia,Russiae-mail: [email protected].: (8142) 763370