отсутствующие значения алгоритма c4.5

Как алгоритм C4.5 обрабатывает пропущенные значения и значения атрибутов на непрерывном интервале? Кроме того, как обрезается дерево решений? Может кто-нибудь объяснить с помощью примера.


person Shubhi Shrivastava    schedule 14.02.2017    source источник
comment
stats.stackexchange.com/questions/96025/   -  person James LT    schedule 18.10.2018


Ответы (1)


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

OUTLOOK | TEMPERATURE | HUMIDITY | WINDY | PLAY
=====================================================
sunny   |      85     |    85    | false | Don't Play
sunny   |      80     |    90    | true  | Don't Play
overcast|      83     |    78    | false | Play
rain    |      70     |    96    | false | Play
rain    |      68     |    80    | false | Play
rain    |      65     |    70    | true  | Don't Play
overcast|      64     |    65    | true  | Play
sunny   |      72     |    95    | false | Don't Play
sunny   |      69     |    70    | false | Play
rain    |      75     |    80    | false | Play
sunny   |      75     |    70    | true  | Play
overcast|      72     |    90    | true  | Play
overcast|      81     |    75    | false | Play
rain    |      71     |    80    | true  | Don't Play

И используйте его для построения дерева решений, которое может выглядеть примерно так:

              Outlook
            /  |      \
  overcast /   |sunny  \rain
          /    |        \
     Play   Humidity   Windy
           /   |         |  \
          /    |         |   \
    <=75 /  >75|     true|    \false
        /      |         |     \
     Play  Don'tPlay Don'tPlay  Play
  1. Алгоритм C4.5 работает с отсутствующими значениями, возвращая распределение вероятностей меток в ветви атрибута, для которой отсутствует значение. Предположим, что у нас есть экземпляр в наших тестовых данных, который показывает прогноз как Sunny, но не имеет значения для атрибута Humidity. Кроме того, предположим, что в наших обучающих данных есть 2 экземпляра, для которых прогноз был Sunny, Humidity был ниже 75 и меткой Play. Кроме того, предположим, что в обучающих данных было 3 экземпляра, где прогноз был Sunny, Humidity был выше 75 и имел метку Don't Play. Таким образом, для тестового экземпляра с отсутствующим атрибутом Humidity алгоритм C4.5 вернет распределение вероятностей [0.4, 0.6], соответствующее [Play, Don't Play].
  2. Предполагая, что вы уже понимаете, как деревья решений используют прирост информации по набору признаков, чтобы выбрать, какие признаки следует разветвлять на каждом уровне, алгоритм C4.5 выполняет ту же процедуру для атрибута непрерывного интервала, оценивая прирост информации для каждого разделения атрибут и выбор лучшего. Пример этого можно увидеть в атрибуте Humidity выше. Алгоритм C4.5 проверил прирост информации, обеспечиваемый атрибутом влажности, путем разделения его на 65, 70, 75, 78...90 и обнаружил, что выполнение разделения на 75 обеспечивает наибольший прирост информации.
  3. C4.5 выполняет сокращение, заменяя поддерево в дереве решений одним узлом решения, который либо охватывает все решения поддерева, либо дает наименьшую ошибку.

Для получения дополнительной информации я бы посоветовал этот отличный ресурс, который я использовал для написания собственного дерева решений и алгоритма случайного леса: https://cis.temple.edu/~giorgio/cis587/readings/id3-c45.html.

person Chirag    schedule 27.02.2017
comment
У вас есть другие вопросы? - person Chirag; 02.03.2017
comment
Вопрос из этого, разбив его на 65, 70, 75, 78...90. А 95 и 96? - person Calvin; 24.10.2018
comment
Я хотел сказать, что все значения были оценены, и было выбрано 75 значений. - person Chirag; 24.10.2018
comment
Я изучаю C4.5 и запутался в этом, в журнале Quinlan об улучшенном использовании непрерывных атрибутов в C4.5 на странице 79 говорится, что если есть N различных значений A в наборе случаев D, будет быть порогами N-1, которые можно было бы использовать для теста на A, это то же самое, что выбрать порог, как ваш ответ? вот так [65] 70, где 65 — это порог, если он есть. тогда порог N? тогда он отличается от журнала, который был N-1 - person Calvin; 25.10.2018
comment
О, это N-1, потому что последний не будет оцениваться как порог, потому что это будет ‹= порог для D1 и ›порог для D2, D1 будет иметь все случаи, а D2 будет пустым. - person Calvin; 26.10.2018
comment
Извините, только что увидел это, но вы поняли :) - person Chirag; 29.10.2018