Подтвердить что ты не робот

Различные алгоритмы дерева решений с сопоставлением сложности или производительности

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

Я хотел бы знать, есть ли несколько алгоритмов для построения деревьев решений (или только одного?), и что лучше, на основе таких критериев, как

  • Производительность
  • Сложность
  • Ошибки при принятии решений
  • и более.
4b9b3361

Ответ 1

Реализации дерева решений отличаются в основном по этим осям:

  • критерий расщепления (т.е. как вычисляется "дисперсия" )

  • ли он моделирует модели для регрессии (непрерывные переменные, например, оценка), а также классификация (дискретные переменные, например, класс метки)

  • метод устранения/уменьшения перенастройки

  • может ли он обрабатывать неполные данные


Основные реализации дерева решений:

  • ID3, или Iternative Dichotomizer, был первым из трех деревьев решений (Quinlan, J. R. 1986. Индукция деревьев принятия решений, 1, 1 (Mar. 1986), 81-106.)

  • CART, или деревья классификации и регрессии часто используются в качестве общего аббревиатурой термина "Дерево решений", хотя он, по-видимому, имеет более конкретный смысл. В целом реализация CART очень похожа на C4.5; одна заметная разница заключается в том, что CART строит дерево на основе критерия численного расщепления, рекурсивно применяемого к данным, тогда как C4.5 включает в себя промежуточный этап построения наборов правил.

  • C4.5, Quinlan следующая итерация. Новые функции (против ID3): (i) принимает как непрерывные, так и дискретные признаки; (ii) обрабатывает неполные точки данных; (iii) решает проблему переустановки ( умный) восходящий метод, обычно известный как "обрезка"; и (iv) различные весовые коэффициенты могут быть применены к функциям, которые включают данные обучения. Из них первые три очень важны - и я бы предположил, что любая реализация DT, которую вы выбрали, имеет все три. Четвертый (дифференциальный вес) гораздо менее важен.

  • C5.0, последняя итерация Quinlan. Эта реализация охватываемых патентом и, вероятно, в результате, редко реализуется (за пределами коммерческих программных пакетов). Я никогда не кодировал C5.0 сама реализация (я даже не видел исходного кода), поэтому я не может предложить обоснованное сравнение C5.0 и C4.5. я всегда скептически относились к улучшениям, заявленным его изобретателем (Росс Квинлан) - например, он утверждает, что он "на несколько порядков", быстрее, чем C4.5. Другие претензии также широко распространены ("значительно больше памяти эффективнее ") и т.д. Я просто укажу вам на исследования которые сообщают о результате сравнения двух методов, и вы может решить для себя.

  • CHAID (хи-квадратный детектор автоматического взаимодействия) фактически предшествует реализация origianl ID3 примерно на шесть лет (опубликованная в Кандидатская диссертация Гордона Касса в 1980 году). Я знаю немного об этом техника. Платформа R имеет пакет под названием CHAID, который включает отличную документацию

  • MARS (мультиадаптивные регрессионные сплайны) на самом деле является термином, обозначенным оригинальным изобретателем MARS, Salford Systems. Как результат, клоны MARS в библиотеках, не проданных Salford, называются что-то иное, чем MARS - например, в R, соответствующая функция полимаров в библиотеке полисплана. Matlab и Statistica также имеют реализации с MARS-функциональностью

Я бы порекомендовал CART или C4.5 (хотя опять же, у меня нет прямого опыта работы с C5.0 или с CHAID, хотя я знаком с их наборами функций).

C4.5 - это аромат дерева решений, реализованный в Orange; CART - это аромат sklearn - отличные реализации в превосходных библиотеках ML.

C4.5 является важным шагом за пределами ID3 - как с точки зрения диапазона (C4.5 имеет гораздо более широкий спектр использования, так как он может обрабатывать непрерывные переменные в данных обучения) и с точки зрения качества модели.

Возможно, наиболее значительным заявленным улучшением C5.0 по сравнению с C4.5 является поддержка увеличенных деревьев. Поддержка ансамблей для DT - усиленных деревьев и Random Forests - была включена в реализацию DT в Orange; здесь поддержка ансамбля была добавлена ​​к алгоритму C4.5. sklearn также предлагает ряд случайных методов лесного хозяйства и повышения эффективности.