Алгоритъм на дървото за решение - Обяснение и роля на ентропията в дървото на решенията

Съдържание:

Anonim

Въведение в алгоритма на дървото на решенията

Когато имаме проблем за решаване, който е или класификация, или проблем с регресия, алгоритъмът на дървото за решения е един от най-популярните алгоритми, използвани за изграждането на моделите за класификация и регресия. Те попадат в категорията на контролираното обучение, т.е. данните, които са етикетирани.

Какво е алгоритъм на дървото за решения?

Алгоритъмът на дървото за решения е контролиран алгоритъм за машинно обучение, при който данните се разделят непрекъснато на всеки ред въз основа на определени правила, докато се генерира крайният резултат. Нека вземем пример, да предположим, че отваряте търговски център и разбира се, бихте искали той да се развива в бизнеса с времето. Така че за този въпрос ще трябва да се върнете клиенти плюс нови клиенти във вашия мол. За това бихте подготвили различни бизнес и маркетингови стратегии, като изпращане на имейли до потенциални клиенти; създавайте оферти и сделки, насочвайки се към нови клиенти и т.н. Но как да разберем кои са потенциалните клиенти? С други думи, как да класифицираме категорията на клиентите? Както някои клиенти ще посещават веднъж седмично, така и други биха искали да посетят веднъж или два пъти в месеца, или някои ще посетят след тримесечие. Така че дърветата на решения са един такъв алгоритъм за класификация, който ще класифицира резултатите в групи, докато не остане повече сходство.

По този начин дървото за решения се спуска в структура, структурирана с дърво. Основните компоненти на дървото за решения са:

  • Възли за решение, където данните са разделени или да речем, това е място за атрибута.
  • Връзка за решение, която представлява правило.
  • Листа за решения, които са крайните резултати.

Работа на алгоритъм на дърво за решение

Има много стъпки, които участват в работата на дървото на решенията:

1. Разделяне - Това е процесът на разделяне на данни на подмножества. Разделянето може да се извърши по различни фактори, както е показано по-долу, т.е. на пол, височина или на база клас.

2. Подрязване - Това е процесът на съкращаване на клоните на дървото на решението, следователно ограничаване на дълбочината на дървото

Подрязването също е от два вида:

  • Предварително подрязване - тук спираме да растеме дървото, когато не открием някаква статистически значима връзка между атрибутите и класа в някой конкретен възел.
  • След подрязване - За да можем да отрежем резитбата, трябва да потвърдим производителността на модела на тестовия комплект и след това да отрежем клоните, които са резултат от прекалено подходящ шум от тренировъчния комплект.

3. Избор на дърво - третата стъпка е процесът на намиране на най-малкото дърво, което отговаря на данните.

Примери и илюстрация на конструирането на дърво за решения

Сега, както научихме принципите на дърво за решения. Нека да разберем и илюстрираме това с помощта на пример.

Да речем, че искате да играете на крикет в някой конкретен ден (Например, събота). Кои са включените фактори, които ще решат дали играта ще се случи или не?

Ясно е, че основният фактор е климатът, никой друг фактор няма толкова голяма вероятност, колкото климат има за прекъсването на играта.

Събрахме данните от последните 10 дни, които са представени по-долу:

денМетеорологично времетемпературавлажностВятърPlay?
1мътенгорещВисокослабда
2слънчевогорещВисокослабНе
3слънчевомекнормаленсиленда
4дъждовенмекВисокосиленНе
5мътенмекВисокосиленда
6дъждовенГотинонормаленсиленНе
7дъждовенмекВисокослабда
8слънчевогорещВисокосиленНе
9мътенгорещнормаленслабда
10дъждовенмекВисокосиленНе

Нека сега изградим нашето дърво на решения въз основа на данните, които имаме. Така че ние разделихме дървото на решения на две нива, първото се основава на атрибута "Време", а вторият ред се основава на "Влажност" и "Вятър". Снимките по-долу илюстрират научено дърво за решения.

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

Какво е ентропия в алгоритма на дървото на решенията?

С прости думи, ентропията е мярката за това, колко неуредични са вашите данни. Въпреки че може би сте чували този термин в часовете си по математика или физика, тук е същото.

Причината Entropy да се използва в дървото на решенията е, защото крайната цел в дървото на решения е да групира подобни групи данни в подобни класове, т.е. да подреди данните.

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

След разделянето на решението, както ясно виждаме, по-голямата част от червените кръгове попадат в един клас, докато повечето сини кръстове попадат под друг клас. Следователно решението беше да се класифицират атрибутите, които могат да се основават на различни фактори.

Сега, нека се опитаме да направим малко математика тук:

Нека да кажем, че имаме „N“ набори от артикула и тези елементи попадат в две категории и сега, за да групираме данните въз основа на етикети, въвеждаме съотношението:

Ентропията на нашия набор е дадена от следното уравнение:

Нека да проверим графиката за даденото уравнение:

Над изображението (с p = 0, 5 и q = 0, 5)

Предимства

1. Дървото на решения е лесно за разбиране и след като бъде разбрано, можем да го изградим.

2. Можем да внедряваме дърво на решения по числови и категорични данни.

3. Доказано е, че дървото на решения е стабилен модел с обещаващи резултати.

4. Те също са ефективни във времето с големи данни.

5. Това изисква по-малко усилия за обучението на данните.

Недостатъци

1. Нестабилност - Само ако информацията е точна и точна, дървото на решения ще даде обещаващи резултати. Дори ако има малка промяна във входните данни, това може да причини големи промени в дървото.

2. Сложност - Ако наборът от данни е огромен с много колони и редове, е много сложна задача да се проектира дърво за решения с много клонове.

3. Разходи - Понякога цената също остава основен фактор, тъй като когато човек е необходим за изграждането на сложно дърво за решения, той изисква напреднали знания в количествения и статистически анализ.

заключение

В тази статия научихме за алгоритъма на дървото за решения и как да го изградим. Видяхме също голямата роля, която играе Entropy в алгоритъма на дървото на решенията и накрая видяхме предимствата и недостатъците на дървото на решенията.

Препоръчителни статии

Това е ръководство за алгоритма на дървото за решения. Тук обсъдихме ролята, играна от Entropy, Работа, Предимства и Недостатък. Можете да разгледате и другите ни предложени статии, за да научите повече -

  1. Важни методи за извличане на данни
  2. Какво е уеб приложение?
  3. Ръководство за Какво е наука за данни?
  4. Въпроси за интервю на анализатор на данни
  5. Приложение на дървото на решенията при извличане на данни