weka dataset classifier
Aquest tutorial explica WEKA Dataset, Classifier i l'algorisme J48 per a l'arbre de decisions. També proporciona informació sobre conjunts de dades ARFF de mostra per a Weka:
A la Tutorial anterior , hem conegut l’eina d’aprenentatge automàtic de Weka, les seves característiques i com es pot descarregar, instal·lar i utilitzar el programari d’aprenentatge automàtic de Weka.
WEKA és una biblioteca d’algoritmes d’aprenentatge automàtic per resoldre problemes de mineria de dades sobre dades reals. WEKA també proporciona un entorn per desenvolupar molts algorismes d'aprenentatge automàtic. Disposa d’un conjunt d’eines per dur a terme diverses tasques d’explotació de dades, com ara classificació de dades, agrupació de dades, regressió, selecció d’atributs, extracció freqüent de conjunts d’elements, etc.
Totes aquestes tasques es poden dur a terme al fitxer sample.ARFF disponible al dipòsit WEKA o bé els usuaris poden preparar els seus fitxers de dades. Els fitxers .arff de mostra són conjunts de dades que inclouen dades històriques incorporades per investigadors.
=> Llegiu la sèrie completa de formació sobre aprenentatge automàtic
En aquest tutorial, veurem alguns conjunts de dades de mostra a WEKA i també realitzarem la mineria de dades d'algoritme de l'arbre de decisions mitjançant el conjunt de dades weather.arff.
Què aprendreu:
- Exploració de conjunts de dades WEKA
- Algorismes de classificació de l'arbre de decisions de Weka
- Conclusió
Exploració de conjunts de dades WEKA
L'eina d'aprenentatge automàtic WEKA proporciona un directori d'alguns conjunts de dades de mostra. Aquests conjunts de dades es poden carregar directament a WEKA perquè els usuaris comencin a desenvolupar models immediatament.
Els conjunts de dades WEKA es poden explorar des de l'enllaç 'C: Program Files Weka-3-8 data'. Els conjunts de dades estan en format .arff.
Mostra de conjunts de dades WEKA
A la taula següent es mostren alguns exemples de conjunts de dades presents a WEKA:
S.No. | Conjunts de dades de mostra |
---|---|
7. | diabetes.arff |
1. | airline.arff |
2. | càncer de mama.arfa |
3. | lent-de-contacte.arfa |
4. | cpu.arff |
5. | cpu.with-vendor.arff |
6. | credit-g.arff |
8. | glass.arff |
9. | hypothyroid.arff |
10. | ionospehre.arff |
11. | iris.2D.arff |
12. | iris.arff |
13. | labor.arff |
14. | ReutersCorn-train.arff |
15. | ReutersCorn-test.arff |
16. | ReutersGrain-train.arff |
17. | ReutersGrain-test.arff |
18. | segment-challenge.arff |
19. | segment-test.arff |
20. | soja.arff |
21. | supermercat.arff |
22. | desequilibrat.arfa |
23. | votar.arff |
24. | weather.numeric.arff |
25. | weather.nominal.arff |
Vegem alguns d'aquests:
lent-de-contacte.arfa
El conjunt de dades contact-lens.arff és una base de dades per col·locar lents de contacte. Va ser donat pel donant, Benoit Julien, l'any 1990.
Base de dades: Aquesta base de dades està completa. Els exemples utilitzats en aquesta base de dades són complets i exempts de soroll. La base de dades té 24 instàncies i 4 atributs.
Atributs: Els quatre atributs són nominals. No falten valors d'atribut. Els quatre atributs són els següents:
# 1) Edat del pacient: l'atribut d'edat pot prendre valors:
- jove
- pre-presbiòpica
- presbiòpic
# 2) Prescripció d’espectacles: aquest atribut pot adoptar valors:
- miop
- hipermetrop
# 3) Astigmàtic: aquest atribut pot prendre valors
- no
- sí
# 4) Taxa de producció de llàgrimes: els valors poden ser
- reduït
- normal
Classe: aquí es defineixen tres etiquetes de classes. Aquests són:
- el pacient ha d’estar equipat amb lents de contacte dures.
- el pacient ha d’estar equipat amb lents de contacte toves.
- el pacient no ha d’estar equipat amb lents de contacte.
Distribució de classes: les instàncies classificades en etiquetes de classes es detallen a continuació:
Etiqueta de classe | Nombre d’instàncies | |
---|---|---|
1. | Lents de contacte dures | 4 |
2. | Lents de contacte toves | 5 |
3. | Sense lents de contacte | 15 |
iris.arff
El conjunt de dades iris.arff va ser creat el 1988 per Michael Marshall. És la base de dades Iris Plants.
preguntes i respostes de proves escrites per a analistes de negocis
Base de dades: Aquesta base de dades s’utilitza per al reconeixement de patrons. El conjunt de dades conté 3 classes de 50 instàncies. Cada classe representa un tipus de planta d’iris. Una classe és separable linealment de les altres 2, però aquestes últimes no són separables linealment entre si. Prediu a quina espècie de les 3 flors de l’iris pertany l’observació. Això s’anomena conjunt de dades de classificació de diverses classes.
Atributs: Té 4 atributs numèrics i predictius i la classe. No falten atributs.
Els atributs són:
- longitud de sèpal en cm
- amplada de sèpal en cm
- longitud del pètal en cm
- amplada del pètal en cm
- classe:
- Iris Setosa
- Iris Versicolor
- Iris Virginica
Resum estadístic:
Mín | Màx | Significar | SD | Correlació de classes | |
---|---|---|---|---|---|
longitud de sèpal | 4.3 | 7.9 | 5.84 | 0.83 | 0,7826 |
ample de sèpal | 2.0 | 4.4 | 3.05 | 0.43 | -0.4194 |
longitud del pètal | 1.0 | 6.9 | 3.76 | 1.76 | 0,9490 (alt!) |
ample de pètal | 0.1 | 2.5 | 1.20 | 0.76 | 0,9565 (alt!) |
Distribució de classes: 33,3% per a cadascuna de les 3 classes
Alguns altres conjunts de dades:
diabetes.arff
La base de dades d’aquest conjunt de dades és Pima Indians Diabetes. Aquest conjunt de dades prediu si el pacient és propens a patir diabetis en els propers 5 anys. Els pacients d’aquest conjunt de dades són totes dones de almenys 21 anys de Pima Indian Heritage. Té 768 instàncies i 8 atributs numèrics més una classe. Es tracta d’un conjunt de dades de classificació binària on la variable de sortida predita és nominal que comprèn dues classes.
ionosfera.arff
Aquest és un conjunt de dades popular per a la classificació binària. La instància d’aquest conjunt de dades descriu les propietats dels retorns del radar de l’atmosfera. S'utilitza per predir on la ionosfera té alguna estructura o no. Té 34 atributs numèrics i una classe.
L'atribut de classe és 'bo' o 'dolent', que es preveu basat en l'observació de 34 atributs. Els senyals rebuts es processen mitjançant la funció d’autocorrelació prenent el pols de temps i el número de pols com a arguments.
Conjunts de dades de regressió
Els conjunts de dades de regressió es poden descarregar des de la pàgina web WEKA ' Col·leccions de conjunts de dades ”. Té 37 problemes de regressió obtinguts de diferents fonts. El fitxer descarregat crearà un directori numèric / amb conjunts de dades de regressió en format .arff.
Els conjunts de dades populars presents al directori són: Conjunt de dades econòmiques de Longley (longley.arff), conjunt de dades de preus de la casa de Boston (housing.arff) i conjunt de dades de son en mamífers (sleep.arff).
Vegem ara com identificar atributs de valor real i nominal en el conjunt de dades mitjançant l'explorador WEKA.
Quins són els atributs nominals i de valor real
Els atributs valorats reals són atributs numèrics que només contenen valors reals. Són quantitats mesurables. Aquests atributs es poden escalar per intervals, com ara la temperatura o la proporció, com ara la mitjana i la mitjana.
Els atributs nominals representen noms o alguna representació de coses. No hi ha cap ordre en aquests atributs i representen alguna categoria. Per exemple, color.
Seguiu els passos que es detallen a continuació per utilitzar WEKA per identificar valors reals i atributs nominals al conjunt de dades.
# 1) Obriu WEKA i seleccioneu 'Explorador' a 'Aplicacions'.
# 2) Seleccioneu la pestanya 'Preprocés'. Feu clic a 'Obrir fitxer'. Amb l'usuari WEKA, podeu accedir als fitxers de mostra WEKA.
# 3) Seleccioneu el fitxer d'entrada de la carpeta WEKA3.8 emmagatzemada al sistema local. Seleccioneu el fitxer predefinit .arff 'credit-g.arff' i feu clic a 'Obre'.
# 4) S'obrirà una llista d'atributs al tauler esquerre. Les estadístiques d'atributs seleccionats es mostraran al tauler dret juntament amb l'histograma.
Anàlisi del conjunt de dades:
Al tauler esquerre, la relació actual mostra:
- Nom de la relació: german_credit és el fitxer de mostra.
- Instàncies: 1000 nombre de files de dades del conjunt de dades.
- Atributs: 21 atributs al conjunt de dades.
El panell que hi ha a sota de la relació actual mostra el nom dels atributs.
Al tauler dret, es mostren les estadístiques dels atributs seleccionats. Seleccioneu el fitxer atribut 'control_estat'.
Mostra:
- Nom de l'atribut
- Falta: Els valors que falten de l'atribut al conjunt de dades. 0% en aquest cas.
- Distingit: L'atribut té 4 valors diferents.
- Tipus: L'atribut és del tipus nominal, és a dir, no pren cap valor numèric.
- Recompte: Entre les 1.000 instàncies, el recompte de cada etiqueta de classe diferent s'escriu a la columna Recompte.
- Histograma: Es mostrarà l'etiqueta de classe de sortida de l'atribut. L'etiqueta de classe d'aquest conjunt de dades és bona o dolenta. Hi ha 700 casos de bo (marcat en blau) i 300 casos de bo (marcat en vermell).
- Per l’etiqueta<0, the instances for good or bad are almost the same in number.
- Per a l'etiqueta, 0<= X<200, the instances with decision good are more than instances with bad.
- De la mateixa manera, per a etiquetes> = 200, les instàncies màximes es produeixen definitivament i cap etiqueta de verificació té més instàncies amb decisions bones.
Per al següent atribut 'durada'.
El tauler de la dreta mostra:
- Nom: Aquest és el nom de l'atribut.
- Tipus: El tipus de l'atribut és numèric.
- Falta el valor: L’atribut no té cap valor que falti.
- Distingit: Té 33 valors diferents en 1.000 instàncies. Vol dir que en 1000 casos té 33 valors diferents.
- Únic: Té 5 valors únics que no coincideixen entre si.
- Valor mínim: El valor mínim de l'atribut és 4.
- Valor màxim: El valor màxim de l'atribut és de 72.
- Significar: Mean és afegir tots els valors dividits per instàncies.
- Desviació estàndar: Desviació de la durada de l'atribut.
- Histograma: L'histograma representa la durada de 4 unitats, es produeixen les instàncies màximes per a una bona classe. A mesura que la durada augmenta a 38 unitats, el nombre d’instàncies es redueix per obtenir etiquetes de bona classe. La durada arriba a 72 unitats que només tenen una instància que classifica la decisió com a dolenta.
La classe és la característica de classificació del tipus nominal. Té dos valors diferents: bons i dolents. L’etiqueta de classe bona té 700 instàncies i l’etiqueta de classe mala té 300 instàncies.
Per visualitzar tots els atributs del conjunt de dades, feu clic a 'Visualitza-ho tot'.
# 5) Per esbrinar només els atributs numèrics, feu clic al botó Filtre. Des d'allà, feu clic a Trieu -> WEKA> FILTRES -> Tipus sense supervisió -> Suprimeix el tipus.
Els filtres WEKA tenen moltes funcionalitats per transformar els valors dels atributs del conjunt de dades per fer-lo adequat per als algorismes. Per exemple, la transformació numèrica d’atributs.
Filtrar els atributs nominals i de valor real del conjunt de dades és un altre exemple d’utilitzar filtres WEKA.
# 6) Feu clic a RemoveType a la pestanya de filtre. S'obrirà una finestra de l'editor d'objectes. Seleccioneu attributeType 'Delete atributs numèrics' i feu clic a D'acord.
# 7) Apliqueu el filtre. Només es mostraran els atributs numèrics.
L'atribut de classe és del tipus nominal. Classifica la sortida i, per tant, no es pot esborrar. Així es veu amb l'atribut numèric.
Sortida:
S’identifiquen els atributs de valors reals i nominals del conjunt de dades. La visualització amb l’etiqueta de classe es veu en forma d’histogrames.
Algorismes de classificació de l'arbre de decisions de Weka
Ara, veurem com implementar la classificació de l’arbre de decisions al conjunt de dades weather.nominal.arff mitjançant el classificador J48.
weather.nominal.arff
És un conjunt de dades de mostra present a la directa de WEKA. Aquest conjunt de dades prediu si el temps és adequat per jugar al cricket. El conjunt de dades té 5 atributs i 14 instàncies. L'etiqueta de classe 'reproduir' classifica la sortida com a 'sí' o 'no'.
Què és l'arbre de decisions
L’arbre de decisions és la tècnica de classificació que consta de tres components: node arrel, branca (aresta o enllaç) i node fulla. L'arrel representa la condició de la prova per a diferents atributs, la branca representa tots els resultats possibles que hi pot haver a la prova i els nodes de fulla contenen l'etiqueta de la classe a la qual pertany. El node arrel es troba a l'inici de l'arbre, que també s'anomena la part superior de l'arbre.
Classificador J48
És un algorisme per generar un arbre de decisió generat per C4.5 (una extensió de ID3). També es coneix com a classificador estadístic. Per a la classificació de l’arbre de decisions, necessitem una base de dades.
Els passos inclouen:
# 1) Obre l'explorador WEKA.
# 2) Seleccioneu el fitxer weather.nominal.arff de l'opció 'tria fitxer' a l'opció de la pestanya preprocés.
# 3) Aneu a la pestanya 'Classifica' per classificar les dades no classificades. Feu clic al botó 'Tria'. Seleccioneu 'arbres -> J48'. Vegem també altres opcions al botó Tria:
- Bayes: És una estimació de densitat per als atributs numèrics.
- Meta: És una regressió lineal de múltiples respostes.
- Funcions: És una regressió logística.
- Mandrós: Estableix l'entropia de la barreja automàticament.
- Regla: És un aprenent de regles.
- Arbres: Els arbres classifiquen les dades.
# 4) Feu clic al botó Inici. La sortida del classificador es veurà al tauler de la dreta. Mostra la informació d'execució al tauler com:
- Esquema: L’algorisme de classificació utilitzat.
- Instàncies: Nombre de files de dades al conjunt de dades.
- Atributs: El conjunt de dades té 5 atributs.
- El nombre de fulles i la mida de l'arbre descriu l'arbre de decisió.
- Temps necessari per construir el model: Temps per a la sortida.
- Classificació completa de la J48 podada amb els atributs i el nombre d’instàncies.
# 5) Per visualitzar l'arbre, feu clic amb el botó dret sobre el resultat i seleccioneu visualitza l'arbre.
Sortida :
La sortida té la forma d’un arbre de decisions. L'atribut principal és 'perspectiva'.
Si les perspectives són assolellades, llavors l'arbre analitza encara més la humitat. Si la humitat és elevada, llavors l'etiqueta de classe = 'sí'.
Si les perspectives estan ennuvolades, l’etiqueta de la classe, el joc és “sí”. El nombre d’instàncies que compleixen la classificació és de 4.
Si les perspectives són plujoses, es realitza una classificació addicional per analitzar l'atribut 'ventós'. Si vent = cert, l'obra = 'no'. El nombre d’instàncies que compleixen la classificació per perspectiva = vent i vent = cert és 2.
Conclusió
WEKA ofereix una àmplia gamma de conjunts de dades de mostra per aplicar algoritmes d’aprenentatge automàtic. Els usuaris poden realitzar tasques d'aprenentatge automàtic, com ara classificació, regressió, selecció d'atributs, associació en aquests conjunts de dades de mostra, i també poden aprendre l'eina utilitzant-los.
L'explorador WEKA s'utilitza per realitzar diverses funcions, a partir del preprocessament. El processament previ pren l'entrada com a fitxer .arff, processa l'entrada i proporciona una sortida que pot ser utilitzada per altres programes d'ordinador. A WEKA, la sortida del preprocessament dóna els atributs presents al conjunt de dades que es poden utilitzar per a l'anàlisi estadística i la comparació amb les etiquetes de classe.
WEKA també ofereix molts algorismes de classificació per a l'arbre de decisions. J48 és un dels algoritmes de classificació més populars que genera un arbre de decisions. Mitjançant la pestanya Classifica l'usuari pot visualitzar l'arbre de decisions. Si l’arbre de decisions està massa poblat, es pot aplicar la poda d’arbres des de la pestanya Preprocés eliminant els atributs que no són necessaris i torneu a iniciar el procés de classificació.
=> Visiteu aquí la sèrie exclusiva d’aprenentatge automàtic
Lectura recomanada
- Tutorial de Weka: com descarregar, instal·lar i utilitzar l'eina de Weka
- Com escriure escenaris complexos de proves de lògica empresarial mitjançant la tècnica de la taula de decisions
- Explorador WEKA: visualització, agrupació, mineria de regles d’associació
- Exemples d'algorisme de l'arbre de decisions en mineria de dades
- Construccions de presa de decisions en C ++
- Estructura de dades d’arbre B i arbre B + en C ++
- Estructura de dades de l'arbre binari en C ++
- Arbre AVL i estructura de dades de Heap a C ++