Почему алгоритм ID3 не работает с набором данных UCI Mushroom в Weka? - PullRequest
0 голосов
/ 27 апреля 2018

Я не могу применить алгоритм классификации ID3 к набору данных Mushroom.arff. Этот набор данных состоит только из номинальных атрибутов. Я думаю, что мне нужно предварительно обработать это, чтобы это работало, но я не знаю как. Как мне поступить?

this image shows i am unable to apply id3 to mushroom.arff

1 Ответ

0 голосов
/ 28 апреля 2018

Алгоритм ID3 - это алгоритм генерации дерева решений без подкрепления со следующими свойствами :

  1. Может работать только с именными атрибутами.
  2. Не удается обработать пропущенные значения.
  3. Пустые листья могут привести к несекретным экземплярам.

Набор данных Mushroom состоит из 22 номинальных атрибутов и удовлетворяет первому условию, однако после проверки вы найдете атрибут 'stalk-root' , имеющий 2480 (31%) пропущенных значений. По этой причине в Weka по умолчанию он недоступен для выбора при классификации.

Чтобы исправить это, вы можете перейти к этим двум решениям.

  1. Вы можете удалить атрибут.

    • Откройте файл .arff, выберите атрибут stalk-root на вкладке «Атрибуты» и нажмите «Удалить».
      1. Теперь вы увидите, что ID3 доступен. Я смог получить F-рейтинг 1,0.

Solution Image

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

    • В ситуациях, когда вы не хотите терять информацию (в данном случае это атрибут «stalk-root»), вы можете использовать следующие методы :
      1. Используйте меру центральной тенденции для атрибута, такую ​​как среднее значение, медиана, чтобы заменить пустые значения.
      2. Используйте атрибут среднее или медиану для всех выборок, принадлежащих к тому же классу, что и данный кортеж.
      3. Используйте наиболее вероятное значение для заполнения пропущенного значения, используя инструменты на основе логического вывода, используя байесовский формализм.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...