Home » Articole » Articole » Afaceri » Știința datelor (Data Science) » Învățarea automată (Machine learning) » Arbori de decizie în Python pentru clasificare în învățarea automată

Arbori de decizie în Python pentru clasificare în învățarea automată

Un arbore decizional

Figura 27.1: Un arbore de decizie (nu unul deosebit de bun, după cum se va dovedi) pentru setul de date despre jocuri video.

Imaginile arborilor de decizie din capitolul 27 au fost destul de ilustrative, dar, desigur, pentru a automatiza ceva, trebuie să scriem cod în loc să desenăm imagini. Cum ar arăta Figura 27.1 în cod Python? Este de fapt destul de simplă, deși există o mulțime de indentări imbricate. Vedeți dacă puteți urmări fluxul din Figura 28.1.

Aici definim o funcție numită predict() care primește trei argumente, câte unul pentru fiecare valoare a caracteristicii. Setul uimitor de instrucțiuni if/elif/else pare descurajant la început, dar când îl examinați cu atenție, veți realiza că reflectă perfect structura diagramei. De fiecare dată când coborâm cu un nivel al arborelui, indentăm un tab la dreapta. Corpul instrucțiunii „if major == ‘PSYC’:” este foarte scurt deoarece ramura din stânga arborelui (pentru Psihologie) este foarte simplă. Corpul „elif major == ‘CPSC’ :”, prin contrast, are o structură internă imbricată tocmai pentru că ramura din dreapta a arborelui (pentru Informatică) este complexă. Etc.

def predict(major, age, gender):
if major == 'PSYC':
return 'No'
elif major == 'MATH':
if gender == 'M':
return 'No'
elif gender == 'F' or gender == 'O':
return 'Yes'
elif major == 'CPSC':
if age == 'young':
return 'Yes'
elif age == 'middle':
return 'No'
elif age == 'old':
if gender == 'M' or gender == 'O':
return 'Yes'
elif gender == 'F':
return 'No'

Figura 28.1: O implementare Python a arborelui decizional din Figura 27.1.

Dacă apelăm această funcție, ne va oferi exact aceleași predicții pe care le-am calculat manual:

print(predict('PSYC','M','old'))
print(predict('MATH','O','young'))
print(predict('CPSC','F','old'))
▌No
▌Yes
▌No

Sursa: Stephen Davies, The Crystal Ball – Instruction Manual, Vol. 1: Introduction to Data Science, v. 1.1. Copyright © 2021 Stephen Davies. Licența CC BY-SA 4.0. Traducere și adaptare: Nicolae Sfetcu. © 2025 MultiMedia Publishing, Introducere în Știința Datelor, Volumul 1

Cărări și Gânduri, Volumul 2
Cărări și Gânduri, Volumul 2

După îndemnul unui cunoscut dicton, e bine să răsfoim, măcar din când în când, cărţile celor vechi. Am zăbovit, în Antologia poeziei latine, asupra versurilor despre virtute, dedicate lui Albinus, de Caius Lucilius (I 80-103 iHr.), şi am rămas oarecum … Citeşte mai mult

Nu a fost votat Citește mai mult
Cunoașterea Științifică, Volumul 4, Numărul 2, Iunie 2025
Cunoașterea Științifică, Volumul 4, Numărul 2, Iunie 2025 – Rezumate

Revista Cunoașterea Științifică este o publicație trimestrială din domeniile științei și filosofiei, și domenii conexe de studiu și practică. Cuprins: EDITORIAL / EDITORIAL Nicolae SFETCU The books on the History of Science: Global Evolution, Romanian Contributions, and Perspectives Cărțile despre … Citeşte mai mult

Nu a fost votat 0.00 lei Adaugă în coș
Prințesa Sofia, croșetată manual
Prințesa Sofia, croșetată manual, 37 cm

Prințesa Sofia este un personaj din desenele animate, înălțime 37 cm, material folosit bumbac cu părul din acril , umplutură non- alergică, ochi aplicați, haine detașabile.

Nu a fost votat 404.22 lei Adaugă în coș


Descoperă mai multe la MultiMedia

Abonează-te ca să primești ultimele articole prin email.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *