C4.5 — це алгоритм, розроблений [en], який використовується для генерації дерев рішень у машинному навчанні. C4.5 є розширенням ID3 — попереднього алгоритму Куінлана. Дерева рішень, сформовані за допомогою C4.5, можуть бути використані для класифікації, та саме цьому C4.5 часто називають статистичним класифікатором.
Алгоритм став досить популярним після того, як він зайняв перше місце у видатній статті Top 10 Algorithms in Data Mining, яка була опублікована компанією [en] у 2008 році.
Алгоритм
C4.5 будує дерева рішень з набору навчальних даних так само, як ID3, використовуючи концепцію інформаційної ентропії. Навчальні дані — це набір вже класифікованих зразків. Кожний зразок складається з p-мірного вектора , де представляють значення атрибутів або ознаки зразків, а також клас, до якого належить .
На кожному вузлі дерева C4.5 вибирає атрибут даних, який найбільш ефективно розбиває свій набір зразків на підмножини, які належать до одного класу або до іншого. Критерієм розбиття є нормалізований [en] (тобто різниця ентропії). Атрибут з найбільшим нормалізованим інформаційним приростом вибирається для прийняття рішення. Потім алгоритм C4.5 повторюється на розбитих підмножинах.
Цей алгоритм має декілька базових випадків.
- Всі зразки у списку належать до одного класу. Коли це відбувається, алгоритм просто створює листовий вузол для дерева рішень, який каже вибрати цей клас.
- Жодна з ознак не забезпечує інформаційного приросту. У цьому випадку C4.5 створює вузол прийняття рішень вище у дереві з використанням математичного очікування класу.
- Зустрівся екземпляр класу, який раніше не оброблювався. Знову, C4.5 створює вузол прийняття рішень вище у дереві з використанням математичного очікування.
Псевдокод
У псевдокоді загальний алгоритм побудови дерев рішень має такий вигляд:
- Перевірити наявність вищезазначених базових випадків.
- Для кожного атрибута знайти коефіцієнт нормалізованого інформаційного приросту від розбиття множини за цим атрибутом.
- Нехай — атрибут з найбільшим нормалізованим інформаційним приростом.
- Створити вузол рішення , який розбиває множину за .
- Повторити на підсписках, які були отримані розбиттям за , та додати ці вузли у якості дітей .
Реалізації
J48 — це реалізація алгоритму C4.5 з відкритим вихідним кодом на мові програмування Java у інструменті для добування даних Weka.
Покращення алгоритму ID3
C4.5 зробив ряд удосконалень алгоритму ID3:
- Обробка як неперервних, так і дискретних атрибутів. Для того, щоб обробляти неперервні атрибути, C4.5 створює поріг, а потім розбиває набір даних на ті елементи, чиє значення атрибута перевищує поріг, і ті, які менше або дорівнюють йому.
- Обробка навчальних даних з відсутніми значеннями атрибутів. У C4.5 атрибути можуть помічатись як у разі, якщо значення відсутнє. Відсутнє значення атрибутів просто не використовується в обчисленнях коефіцієнтів приросту та ентропії.
- Обробка атрибутів з різними витратами.
- Обрізання дерев. Після створення дерева C4.5 повертається назад і намагається видалити гілки, які не допомагають приймати рішення, замінюючи їх на листові вузли.
Алгоритми C5.0 та See5
Куінлан надалі розробив C5.0 та See5 (C5.0 для Unix/Linux, See5 для Windows), які він розповсюджує на комерційній основі. C5.0 пропонує ряд покращень до C4.5. Серед них:
- Швидкість: C5.0 значно швидше, ніж C4.5 (на декілька порядків).
- Використання пам'яті: C5.0 ефективніше використовує пам'ять, ніж C4.5.
- Менші дерева рішень: C5.0 отримує схожі результати з C4.5 зі значно меншими деревами рішень.
- Підтримка підсилювання: підсилення покращує дерева і надає їм більшу точність.
- Зважування: C5.0 дозволяє зважувати різні випадки та типи неправильної класифікації.
- [en]: опція C5.0 автоматично застосовує [en] для видалення безкорисних атрибутів.
Вихідний код для однопоточної версії Linux C5.0 доступний під ліцензією GPL.
Див. також
Примітки
- Quinlan, J. R. C4.5: Programs for Machine Learning. Morgan Kaufmann Publishers, 1993.
- (PDF) (англ.). Архів оригіналу (PDF) за 23 листопада 2018. Процитовано 15 квітня 2019.
- S.B. Kotsiantis, «Supervised Machine Learning: A Review of Classification Techniques», Informatica 31(2007) 249—268, 2007
- J. R. Quinlan. Improved use of continuous attributes in c4.5. Journal of Artificial Intelligence Research, 4:77-90, 1996.
- (англ.). Архів оригіналу за 19 квітня 2019. Процитовано 15 квітня 2019.
- M. Kuhn and K. Johnson, Applied Predictive Modeling, Springer 2013
Посилання
- Початкова реалізація алгоритму на домашній сторінці Роса Куінлана: http://www.rulequest.com/Personal/ [ 3 травня 2019 у Wayback Machine.]
- See5 та C5.0 [ 17 квітня 2019 у Wayback Machine.]
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
C4 5 ce algoritm rozroblenij en yakij vikoristovuyetsya dlya generaciyi derev rishen u mashinnomu navchanni C4 5 ye rozshirennyam ID3 poperednogo algoritmu Kuinlana Dereva rishen sformovani za dopomogoyu C4 5 mozhut buti vikoristani dlya klasifikaciyi ta same comu C4 5 chasto nazivayut statistichnim klasifikatorom Algoritm stav dosit populyarnim pislya togo yak vin zajnyav pershe misce u vidatnij statti Top 10 Algorithms in Data Mining yaka bula opublikovana kompaniyeyu Springer en u 2008 roci AlgoritmC4 5 buduye dereva rishen z naboru navchalnih danih tak samo yak ID3 vikoristovuyuchi koncepciyu informacijnoyi entropiyi Navchalni dani ce nabir S s1 s2 displaystyle S s 1 s 2 vzhe klasifikovanih zrazkiv Kozhnij zrazok si displaystyle s i skladayetsya z p mirnogo vektora x1 i x2 i xp i displaystyle x 1 i x 2 i x p i de xj displaystyle x j predstavlyayut znachennya atributiv abo oznaki zrazkiv a takozh klas do yakogo nalezhit si displaystyle s i Na kozhnomu vuzli dereva C4 5 vibiraye atribut danih yakij najbilsh efektivno rozbivaye svij nabir zrazkiv na pidmnozhini yaki nalezhat do odnogo klasu abo do inshogo Kriteriyem rozbittya ye normalizovanij en tobto riznicya entropiyi Atribut z najbilshim normalizovanim informacijnim prirostom vibirayetsya dlya prijnyattya rishennya Potim algoritm C4 5 povtoryuyetsya na rozbitih pidmnozhinah Cej algoritm maye dekilka bazovih vipadkiv Vsi zrazki u spisku nalezhat do odnogo klasu Koli ce vidbuvayetsya algoritm prosto stvoryuye listovij vuzol dlya dereva rishen yakij kazhe vibrati cej klas Zhodna z oznak ne zabezpechuye informacijnogo prirostu U comu vipadku C4 5 stvoryuye vuzol prijnyattya rishen vishe u derevi z vikoristannyam matematichnogo ochikuvannya klasu Zustrivsya ekzemplyar klasu yakij ranishe ne obroblyuvavsya Znovu C4 5 stvoryuye vuzol prijnyattya rishen vishe u derevi z vikoristannyam matematichnogo ochikuvannya Psevdokod U psevdokodi zagalnij algoritm pobudovi derev rishen maye takij viglyad Pereviriti nayavnist vishezaznachenih bazovih vipadkiv Dlya kozhnogo atributa a displaystyle a znajti koeficiyent normalizovanogo informacijnogo prirostu vid rozbittya mnozhini za cim atributom Nehaj abest displaystyle a best atribut z najbilshim normalizovanim informacijnim prirostom Stvoriti vuzol rishennya node displaystyle node yakij rozbivaye mnozhinu za abest displaystyle a best Povtoriti na pidspiskah yaki buli otrimani rozbittyam za abest displaystyle a best ta dodati ci vuzli u yakosti ditej node displaystyle node RealizaciyiJ48 ce realizaciya algoritmu C4 5 z vidkritim vihidnim kodom na movi programuvannya Java u instrumenti dlya dobuvannya danih Weka Pokrashennya algoritmu ID3Dokladnishe ID3 algoritm C4 5 zrobiv ryad udoskonalen algoritmu ID3 Obrobka yak neperervnih tak i diskretnih atributiv Dlya togo shob obroblyati neperervni atributi C4 5 stvoryuye porig a potim rozbivaye nabir danih na ti elementi chiye znachennya atributa perevishuye porig i ti yaki menshe abo dorivnyuyut jomu Obrobka navchalnih danih z vidsutnimi znachennyami atributiv U C4 5 atributi mozhut pomichatis yak displaystyle u razi yaksho znachennya vidsutnye Vidsutnye znachennya atributiv prosto ne vikoristovuyetsya v obchislennyah koeficiyentiv prirostu ta entropiyi Obrobka atributiv z riznimi vitratami Obrizannya derev Pislya stvorennya dereva C4 5 povertayetsya nazad i namagayetsya vidaliti gilki yaki ne dopomagayut prijmati rishennya zaminyuyuchi yih na listovi vuzli Algoritmi C5 0 ta See5Kuinlan nadali rozrobiv C5 0 ta See5 C5 0 dlya Unix Linux See5 dlya Windows yaki vin rozpovsyudzhuye na komercijnij osnovi C5 0 proponuye ryad pokrashen do C4 5 Sered nih Shvidkist C5 0 znachno shvidshe nizh C4 5 na dekilka poryadkiv Vikoristannya pam yati C5 0 efektivnishe vikoristovuye pam yat nizh C4 5 Menshi dereva rishen C5 0 otrimuye shozhi rezultati z C4 5 zi znachno menshimi derevami rishen Pidtrimka pidsilyuvannya pidsilennya pokrashuye dereva i nadaye yim bilshu tochnist Zvazhuvannya C5 0 dozvolyaye zvazhuvati rizni vipadki ta tipi nepravilnoyi klasifikaciyi en opciya C5 0 avtomatichno zastosovuye en dlya vidalennya bezkorisnih atributiv Vihidnij kod dlya odnopotochnoyi versiyi Linux C5 0 dostupnij pid licenziyeyu GPL Div takozhDereva rishen u mashinnomu navchanni Model dereva rishen ID3 algoritm PrimitkiQuinlan J R C4 5 Programs for Machine Learning Morgan Kaufmann Publishers 1993 PDF angl Arhiv originalu PDF za 23 listopada 2018 Procitovano 15 kvitnya 2019 S B Kotsiantis Supervised Machine Learning A Review of Classification Techniques Informatica 31 2007 249 268 2007 J R Quinlan Improved use of continuous attributes in c4 5 Journal of Artificial Intelligence Research 4 77 90 1996 angl Arhiv originalu za 19 kvitnya 2019 Procitovano 15 kvitnya 2019 M Kuhn and K Johnson Applied Predictive Modeling Springer 2013PosilannyaPochatkova realizaciya algoritmu na domashnij storinci Rosa Kuinlana http www rulequest com Personal 3 travnya 2019 u Wayback Machine See5 ta C5 0 17 kvitnya 2019 u Wayback Machine