Алгоритм ID3 начинается с исходного набора в качестве корневого узла . На каждой итерации алгоритма он перебирает все неиспользуемые атрибуты набора и вычисляет энтропию или прирост информации этого атрибута. Затем он выбирает атрибут с наименьшим значением энтропии (или наибольшим приростом информации). Затем набор разделяется или секционируется по выбранному атрибуту для создания подмножеств данных. (Например, узел можно разделить на дочерние узлы на основе подмножеств населения, возраст которых меньше 50, от 50 до 100 и больше 100.) Алгоритм продолжает рекурсию для каждого подмножества, учитывая только атрибуты, которые никогда не выбирались ранее.
Рекурсия на подмножестве может остановиться в одном из следующих случаев:
каждый элемент в подмножестве принадлежит к одному и тому же классу; в этом случае узел превращается в конечный узел и помечается классом примеров.
больше нет атрибутов для выбора, но примеры все еще не принадлежат к одному классу. В этом случае узел становится листовым узлом и помечается наиболее распространенным классом примеров в подмножестве.
нет примеров в подмножестве , что происходит, когда в родительском наборе не найдено ни одного примера, соответствующего определенному значению выбранного атрибута. Примером может быть отсутствие человека в популяции с возрастом более 100 лет. Затем создается конечный узел и помечается наиболее распространенным классом примеров в наборе родительского узла.
На протяжении всего алгоритма строится дерево решений, в котором каждый неконечный узел ( внутренний узел ) представляет выбранный атрибут , по которому были разделены данные, а конечные узлы (листовые узлы) представляют метку класса конечного подмножества этой ветви.
Создайте узел дерева решений , содержащий этот атрибут.
Рекурсия по подмножествам с использованием оставшихся атрибутов.
Характеристики
ID3 не гарантирует оптимального решения. Он может сходиться к локальным оптимумам . Он использует жадную стратегию , выбирая локально наилучший атрибут для разделения набора данных на каждой итерации. Оптимальность алгоритма можно улучшить, используя возврат во время поиска оптимального дерева решений ценой возможного увеличения времени.
ID3 может переобучить данные обучения. Чтобы избежать переобучения, следует отдавать предпочтение меньшим деревьям решений, чем большим. [ необходимо дополнительное объяснение ] Этот алгоритм обычно создает небольшие деревья, но он не всегда создает наименьшее возможное дерево решений.
ID3 сложнее использовать на непрерывных данных, чем на факторизованных данных (факторизованные данные имеют дискретное число возможных значений, что уменьшает возможные точки ветвления). Если значения любого заданного атрибута непрерывны , то существует гораздо больше мест для разделения данных по этому атрибуту, и поиск наилучшего значения для разделения может занять много времени.
Это изменяется на каждом шаге алгоритма ID3, либо на подмножество предыдущего набора в случае разделения по атрибуту, либо на «родственный» раздел родительского набора в случае, если рекурсия была прекращена ранее.
– Набор занятий в
– Отношение количества элементов в классе к количеству элементов в наборе
Когда , множество идеально классифицировано (т.е. все элементы принадлежат к одному классу).
В ID3 энтропия вычисляется для каждого оставшегося атрибута. Атрибут с наименьшей энтропией используется для разделения набора на этой итерации. Энтропия в теории информации измеряет, сколько информации, как ожидается , будет получено при измерении случайной величины ; как таковая, она также может быть использована для количественной оценки величины, в которой распределение значений величины неизвестно. Постоянная величина имеет нулевую энтропию, поскольку ее распределение идеально известно . Напротив, равномерно распределенная случайная величина ( дискретно или непрерывно равномерно) максимизирует энтропию. Следовательно, чем больше энтропия в узле, тем меньше информации известно о классификации данных на этом этапе дерева; и, следовательно, тем больше потенциал для улучшения классификации здесь.
Прирост информации — это мера разницы в энтропии до и после разделения набора по атрибуту . Другими словами, насколько уменьшилась неопределенность в после разделения набора по атрибуту .
Где,
– Энтропия множества
– Подмножества, созданные путем разбиения набора по атрибуту таким образом, что
– Отношение числа элементов к числу элементов в наборе
– Энтропия подмножества
В ID3 можно рассчитать прирост информации (вместо энтропии) для каждого оставшегося атрибута. Атрибут с наибольшим приростом информации используется для разделения набора на этой итерации.
^ Куинлан, Дж. Р. 1986. Индукция деревьев решений. Mach. Learn. 1, 1 (март 1986), 81–106
^ Taggart, Allison J; DeSimone, Alec M; Shih, Janice S; Filloux, Madeleine E; Fairbrother, William G (2012-06-17). "Крупномасштабное картирование точек ветвления в транскриптах пре-мРНК человека in vivo". Nature Structural & Molecular Biology . 19 (7): 719– 721. doi :10.1038/nsmb.2327. ISSN 1545-9993. PMC 3465671. PMID 22705790 .
Дальнейшее чтение
Митчелл, Том Майкл (1997). Машинное обучение . Нью-Йорк, Нью-Йорк: McGraw-Hill. С. 55–58. ISBN0070428077. OCLC 36417892.
Гржимала-Буссе, Ежи В. (февраль 1993 г.). «Избранные алгоритмы машинного обучения на примерах» (PDF) . Fundamenta Informaticae . 18 (2): 193–207 – через ResearchGate.
Внешние ссылки
Семинары – http://www2.cs.uregina.ca/
Описание и примеры – http://www.cise.ufl.edu/
Описание и примеры – http://www.cis.temple.edu/
Деревья решений и классификация политических партий