weka dataset classifier
Ten samouczek wyjaśnia zbiór danych WEKA, klasyfikator i algorytm J48 dla drzewa decyzyjnego. Zawiera również informacje o przykładowych zestawach danych ARFF dla Weka:
w Poprzedni samouczek dowiedzieliśmy się o narzędziu Weka Machine Learning, jego funkcjach oraz sposobie pobierania, instalowania i używania oprogramowania Weka Machine Learning.
WEKA to biblioteka algorytmów uczenia maszynowego do rozwiązywania problemów eksploracji danych na rzeczywistych danych. WEKA zapewnia również środowisko do tworzenia wielu algorytmów uczenia maszynowego. Zawiera zestaw narzędzi do wykonywania różnych zadań eksploracji danych, takich jak klasyfikacja danych, grupowanie danych, regresja, wybór atrybutów, częste eksplorowanie zestawów elementów i tak dalej.
Wszystkie te zadania można wykonać na pliku sample.ARFF dostępnym w repozytorium WEKA lub przygotować własne pliki danych. Przykładowe pliki .arff to zestawy danych, które mają wbudowane dane historyczne zebrane przez badaczy.
=> Przeczytaj całą serię szkoleń z zakresu uczenia maszynowego
W tym samouczku zobaczymy kilka przykładowych zestawów danych w WEKA, a także przeprowadzimy eksplorację danych z wykorzystaniem algorytmu drzewa decyzyjnego przy użyciu zestawu danych weather.arff.
Czego się nauczysz:
Odkrywanie zestawów danych WEKA
Narzędzie uczenia maszynowego WEKA udostępnia katalog niektórych przykładowych zestawów danych. Te zbiory danych można bezpośrednio załadować do WEKA, aby użytkownicy mogli natychmiast rozpocząć tworzenie modeli.
Zbiory danych WEKA można przeglądać, korzystając z łącza „C: Program Files Weka-3-8 data”. Zbiory danych są w formacie .arff.
Przykładowe zestawy danych WEKA
Niektóre przykładowe zbiory danych obecne w WEKA są wymienione w poniższej tabeli:
S.No. | Przykładowe zestawy danych |
---|---|
7. | cukrzyca. art |
1. | airline.arff |
dwa. | rak piersi.arff |
3. | soczewka kontaktowa.arff |
Cztery. | cpu.arff |
5. | cpu.with-vendor.arff |
6. | kredyt-g.arff |
8. | szkło.arff |
9. | niedoczynność tarczycy |
10. | ionospehre.arff |
jedenaście. | iris.2D.arff |
12. | iris.arff |
13. | labor.arff |
14. | ReutersCorn-train.arff |
piętnaście. | ReutersCorn-test.arff |
16. | ReutersGrain-train.arff |
17. | ReutersGrain-test.arff |
18. | segment-challenge.arff |
19. | segment-test.arff |
20. | soybean.arff |
dwadzieścia jeden. | supermarket.arff |
22. | unbalanced.arff |
2. 3. | głos.arff |
24. | weather.numeric.arff |
25. | weather.nominal.arff |
Przyjrzyjmy się niektórym z nich:
soczewka kontaktowa.arff
contact-lens.arff dataset to baza danych umożliwiająca dopasowanie soczewek kontaktowych. Został podarowany przez dawcę Benoita Juliena w 1990 roku.
Baza danych: Ta baza danych jest kompletna. Przykłady użyte w tej bazie danych są kompletne i wolne od szumów. Baza danych ma 24 instancje i 4 atrybuty.
Atrybuty: Wszystkie cztery atrybuty są nominalne. Nie ma brakujących wartości atrybutów. Cztery atrybuty są następujące:
# 1) Wiek pacjenta: atrybut wiek może przyjmować wartości:
- młody
- przed prezbiopią
- prezbiopowy
#dwa) Przepis na okulary: ten atrybut może przyjmować wartości:
- krótkowzroczny
- hipermetrop
# 3) Astigmatic: ten atrybut może przyjmować wartości
- nie rób
- tak
# 4) Szybkość produkcji łez: wartości mogą być
- zredukowany
- normalna
Klasa: tutaj zdefiniowano trzy etykiety klas. To są:
- pacjent powinien mieć założone twarde soczewki kontaktowe.
- pacjent powinien mieć założone miękkie soczewki kontaktowe.
- pacjent nie powinien nosić soczewek kontaktowych.
Dystrybucja klas: instancje, które są przypisane do etykiet klas, są wymienione poniżej:
Etykieta klasy | Liczba instancji | |
---|---|---|
1. | Twarde soczewki kontaktowe | 4 |
dwa. | Miękkie soczewki kontaktowe | 5 |
3. | Brak soczewek kontaktowych | piętnaście |
iris.arff
Zbiór danych iris.arff został stworzony w 1988 roku przez Michaela Marshalla. Jest to baza danych Iris Plants.
Czy lista połączona z java jest podwójnie połączona
Baza danych: Ta baza danych jest używana do rozpoznawania wzorców. Zestaw danych zawiera 3 klasy po 50 instancji. Każda klasa reprezentuje typ rośliny tęczówki. Jedną klasę można oddzielić liniowo od drugiej 2, ale tych drugich nie można od siebie liniowo oddzielić. Przewiduje, do jakiego gatunku kwiatu 3 tęczówki należy obserwacja. Nazywa się to zbiorem danych klasyfikacji wieloklasowej.
Atrybuty: Ma 4 atrybuty liczbowe, predykcyjne i klasę. Nie ma brakujących atrybutów.
Atrybuty to:
- długość działki w cm
- szerokość działki w cm
- długość płatka w cm
- szerokość płatka w cm
- klasa:
- Iris Setosa
- Iris Versicolor
- Iris Virginica
Statystyki podsumowujące:
Min | Maks | Oznaczać | SD | Korelacja klas | |
---|---|---|---|---|---|
długość działki | 4.3 | 7.9 | 5.84 | 0.83 | 0,7826 |
szerokość działki | 2.0 | 4.4 | 3.05 | 0.43 | -0,4194 |
długość płatka | 1.0 | 6.9 | 3.76 | 1.76 | 0,9490 (wysoka!) |
szerokość płatka | 0,1 | 2.5 | 1.20 | 0,76 | 0,9565 (wysoka!) |
Dystrybucja klas: 33,3% na każdą z 3 klas
Niektóre inne zbiory danych:
cukrzyca. art
Baza danych tego zbioru danych to Pima Indians Diabetes. Ten zestaw danych przewiduje, czy pacjent będzie podatny na cukrzycę w ciągu najbliższych 5 lat. Wszystkie pacjentki w tym zbiorze danych to kobiety w wieku co najmniej 21 lat z dziedzictwa Indian Pima. Ma 768 instancji i 8 atrybutów liczbowych oraz klasę. Jest to binarny zbiór danych klasyfikacyjnych, w którym przewidywana zmienna wyjściowa jest nominalna i składa się z dwóch klas.
ionosphere.arff
Jest to popularny zbiór danych do klasyfikacji binarnej. Instancja w tym zbiorze danych opisuje właściwości powrotów radaru z atmosfery. Służy do przewidywania, gdzie jonosfera ma jakąś strukturę, czy nie. Posiada 34 atrybuty liczbowe i klasę.
Atrybut klasy jest „dobry” lub „zły”, co jest przewidywane na podstawie obserwacji 34 atrybutów. Odebrane sygnały są przetwarzane przez funkcję autokorelacji, przyjmując jako argumenty impuls czasowy i numer impulsu.
Zestawy danych regresji
Zestawy danych regresji można pobrać ze strony internetowej WEKA „ Kolekcje zbiorów danych ”. Ma 37 problemów regresji uzyskanych z różnych źródeł. Pobrany plik utworzy katalog numeryczny / z zestawami danych regresji w formacie .arff.
Popularne zbiory danych obecne w katalogu to: Zbiór danych ekonomicznych Longley (longley.arff), zestaw danych dotyczących cen domów w Bostonie (mieszkania.arff) oraz zbiór danych dotyczących snu ssaków (sleep.arff).
Zobaczmy teraz, jak zidentyfikować atrybuty o wartościach rzeczywistych i nominalnych w zbiorze danych za pomocą eksploratora WEKA.
Jakie są wartości rzeczywiste i nominalne atrybuty
Atrybuty o wartościach rzeczywistych to atrybuty liczbowe zawierające tylko wartości rzeczywiste. Są to ilości mierzalne. Te atrybuty mogą być skalowane interwałowo, takie jak temperatura lub współczynnik, np. Średnia, mediana.
Nominalne atrybuty reprezentują nazwy lub reprezentacje rzeczy. W takich atrybutach nie ma porządku i reprezentują one jakąś kategorię. Na przykład, kolor.
Wykonaj czynności wymienione poniżej, aby użyć WEKA do identyfikacji wartości rzeczywistych i atrybutów nominalnych w zbiorze danych.
# 1) Otwórz WEKA i wybierz „Explorer” pod „Aplikacje”.
#dwa) Wybierz kartę „Przetwarzanie wstępne”. Kliknij „Otwórz plik”. Użytkownik WEKA umożliwia dostęp do przykładowych plików WEKA.
# 3) Wybierz plik wejściowy z folderu WEKA3.8 przechowywanego w systemie lokalnym. Wybierz predefiniowany plik .arff „credit-g.arff” i kliknij „Otwórz”.
# 4) W lewym panelu otworzy się lista atrybutów. Wybrane statystyki atrybutów zostaną wyświetlone w prawym panelu wraz z histogramem.
Analiza zbioru danych:
W lewym panelu aktualna relacja pokazuje:
- Nazwa relacji: german_credit to przykładowy plik.
- Instancje: 1000 liczba wierszy danych w zbiorze danych.
- Atrybuty: 21 atrybutów w zbiorze danych.
Panel pod aktualną relacją pokazuje nazwy atrybutów.
W prawym panelu zostaną wyświetlone statystyki wybranych atrybutów. Wybierz atrybut „Check_status ”.
To pokazuje:
- Nazwa atrybutu
- Brakujący: Brakujące wartości atrybutu w zbiorze danych. 0% w tym przypadku.
- Odrębny: Atrybut ma 4 różne wartości.
- Rodzaj: Atrybut jest typu nominalnego, to znaczy nie przyjmuje wartości liczbowej.
- Liczyć: Wśród 1000 instancji liczba każdej odrębnej etykiety klasy jest zapisywana w kolumnie zliczania.
- Histogram: Wyświetli etykietę klasy wyjściowej dla atrybutu. Etykieta klasy w tym zbiorze danych jest dobra lub zła. Istnieje 700 przypadków dobrego (zaznaczonych na niebiesko) i 300 przypadków złych (zaznaczonych na czerwono).
- Do etykiety<0, the instances for good or bad are almost the same in number.
- W przypadku etykiety 0<= X<200, the instances with decision good are more than instances with bad.
- Podobnie, dla etykiety> = 200, maksymalna liczba wystąpień występuje na dobre i żadna etykieta sprawdzająca nie ma więcej wystąpień z decyzją dobrą.
Dla następnego atrybutu „czas trwania”.
Prawy panel pokazuje:
- Nazwa: To jest nazwa atrybutu.
- Rodzaj: Typ atrybutu jest numeryczny.
- Brakująca wartość: Atrybut nie ma żadnej brakującej wartości.
- Odrębny: Ma 33 różne wartości w 1000 wystąpieniach. Oznacza to, że w 1000 przypadkach ma 33 różne wartości.
- Wyjątkowy: Ma 5 unikalnych wartości, które nie pasują do siebie.
- Minimalna wartość: Minimalna wartość atrybutu to 4.
- Maksymalna wartość: Maksymalna wartość atrybutu to 72.
- Oznaczać: Średnia to dodanie wszystkich wartości podzielonych przez wystąpienia.
- Odchylenie standardowe: Odchylenie standardowe czasu trwania atrybutu.
- Histogram: Histogram przedstawia czas trwania 4 jednostek, maksymalna liczba wystąpień występuje dla dobrej klasy. Wraz ze wzrostem czasu trwania do 38 jednostek liczba instancji zmniejsza się w przypadku dobrych etykiet klasowych. Czas trwania sięga 72 jednostek, które mają tylko jedną instancję, która klasyfikuje decyzję jako złą.
Klasa jest cechą klasyfikacyjną typu nominalnego. Ma dwie różne wartości: dobry i zły. Etykieta dobrej klasy ma 700 instancji, a etykieta złej klasy ma 300 instancji.
Aby zwizualizować wszystkie atrybuty zbioru danych, kliknij „Wizualizuj wszystko”.
# 5) Aby znaleźć tylko atrybuty liczbowe, kliknij przycisk Filtruj. Następnie kliknij Wybierz -> WEKA> FILTRY -> Typ nienadzorowany -> Usuń typ.
Filtry WEKA mają wiele funkcji służących do przekształcania wartości atrybutów zbioru danych w celu dostosowania go do algorytmów. Na przykład, numeryczna transformacja atrybutów.
Filtrowanie atrybutów nominalnych i o wartościach rzeczywistych ze zbioru danych to kolejny przykład zastosowania filtrów WEKA.
# 6) Kliknij opcję RemoveType na karcie filtru. Otworzy się okno edytora obiektów. Wybierz atrybutType „Usuń atrybuty numeryczne” i kliknij OK.
# 7) Zastosuj filtr. Wyświetlone zostaną tylko atrybuty liczbowe.
Atrybut class ma typ nominalny. Klasyfikuje dane wyjściowe i dlatego nie można go usunąć. Tak więc jest to widoczne z atrybutem numerycznym.
Wynik:
Identyfikowane są atrybuty wartości rzeczywistej i nominalnej w zbiorze danych. Wizualizacja z etykietą klasy jest widoczna w postaci histogramów.
Algorytmy klasyfikacji drzew decyzyjnych Weka
Teraz zobaczymy, jak zaimplementować klasyfikację drzew decyzyjnych w zestawie danych weather.nominal.arff przy użyciu klasyfikatora J48.
weather.nominal.arff
Jest to przykładowy zbiór danych obecny bezpośrednio w WEKA. Ten zestaw danych przewiduje, czy pogoda jest odpowiednia do gry w krykieta. Zbiór danych ma 5 atrybutów i 14 instancji. Etykieta klasy „odtwórz” klasyfikuje wynik jako „tak” lub „nie”.
Co to jest drzewo decyzyjne
Drzewo decyzyjne to technika klasyfikacji, która składa się z trzech komponentów: węzła głównego, gałęzi (krawędzi lub łącza) i węzła liścia. Root reprezentuje warunek testowy dla różnych atrybutów, gałąź reprezentuje wszystkie możliwe wyniki, które mogą występować w teście, a węzły liści zawierają etykietę klasy, do której należy. Węzeł główny znajduje się na początku drzewa, który jest również nazywany wierzchołkiem drzewa.
Klasyfikator J48
Jest to algorytm generujący drzewo decyzyjne generowane przez C4.5 (rozszerzenie ID3). Jest również znany jako klasyfikator statystyczny. Do klasyfikacji drzew decyzyjnych potrzebujemy bazy danych.
Kroki obejmują:
# 1) Otwórz przeglądarkę WEKA.
#dwa) Wybierz plik weather.nominal.arff z opcji „wybierz plik” w zakładce preprocess.
# 3) Przejdź do zakładki „Klasyfikuj”, aby sklasyfikować niesklasyfikowane dane. Kliknij przycisk „Wybierz”. Z tego wybierz „drzewa -> J48”. Rzućmy również okiem na inne opcje przycisku Wybierz:
- Bayes: Jest to estymacja gęstości atrybutów numerycznych.
- Meta: Jest to regresja liniowa z wieloma odpowiedziami.
- Funkcje: To regresja logistyczna.
- Leniwy: Automatycznie ustawia entropię mieszania.
- Reguła: Jest uczniem reguł.
- Drzewa: Drzewa klasyfikują dane.
# 4) Kliknij przycisk Start. Dane wyjściowe klasyfikatora będą widoczne na panelu po prawej stronie. Pokazuje informacje o biegu w panelu jako:
- Schemat: Zastosowany algorytm klasyfikacji.
- Instancje: Liczba wierszy danych w zbiorze danych.
- Atrybuty: Zbiór danych ma 5 atrybutów.
- Liczba liści i wielkość drzewa opisuje drzewo decyzyjne.
- Czas potrzebny na zbudowanie modelu: Czas na wyjście.
- Pełna klasyfikacja J48 przycięta z atrybutami i liczbą instancji.
# 5) Aby zwizualizować drzewo, kliknij prawym przyciskiem myszy wynik i wybierz opcję Wizualizuj drzewo.
Wynik :
Dane wyjściowe mają postać drzewa decyzyjnego. Głównym atrybutem jest „perspektywa”.
Jeśli perspektywa jest słoneczna, następnie drzewo dalej analizuje wilgotność. Jeśli wilgotność jest wysoka, etykieta klasy play = „tak”.
Jeśli perspektywy są zachmurzone, etykieta klasy, gra brzmi „tak”. Liczba instancji zgodnych z klasyfikacją wynosi 4.
Jeśli prognoza jest deszczowa, Dalsza klasyfikacja ma miejsce w celu analizy atrybutu „wietrznie”. Jeśli windy = prawda, gra = „nie”. Liczba wystąpień zgodnych z klasyfikacją prognozy = wietrznie i wietrznie = prawda wynosi 2.
Wniosek
WEKA oferuje szeroki zakres przykładowych zbiorów danych do zastosowania algorytmów uczenia maszynowego. Użytkownicy mogą wykonywać zadania uczenia maszynowego, takie jak klasyfikacja, regresja, wybór atrybutów, asocjacje na tych przykładowych zbiorach danych, a także mogą uczyć się narzędzia za ich pomocą.
Eksplorator WEKA służy do wykonywania kilku funkcji, począwszy od wstępnego przetwarzania. Przetwarzanie wstępne pobiera dane wejściowe jako plik .arff, przetwarza dane wejściowe i daje wynik, który może być używany przez inne programy komputerowe. W WEKA wynik przetwarzania wstępnego podaje atrybuty obecne w zbiorze danych, które można następnie wykorzystać do analizy statystycznej i porównania z etykietami klas.
WEKA oferuje również wiele algorytmów klasyfikacyjnych dla drzew decyzyjnych. J48 to jeden z popularnych algorytmów klasyfikacji, który generuje drzewo decyzyjne. Korzystając z zakładki Klasyfikuj, użytkownik może wizualizować drzewo decyzyjne. Jeśli drzewo decyzyjne jest zbyt zapełnione, czyszczenie drzewa można zastosować z karty Preprocess, usuwając atrybuty, które nie są wymagane, i ponownie rozpocząć proces klasyfikacji.
=> Odwiedź tutaj, aby zapoznać się z ekskluzywną serią uczenia maszynowego
rekomendowane lektury
- Samouczek Weka - Jak pobrać, zainstalować i używać narzędzia Weka
- Jak pisać złożone scenariusze testów logiki biznesowej przy użyciu techniki tabeli decyzyjnej
- WEKA Explorer: wizualizacja, grupowanie, wyszukiwanie reguł asocjacyjnych
- Przykłady algorytmów drzew decyzyjnych w eksploracji danych
- Konstrukcje decyzyjne w C ++
- Struktura danych B Tree i B + Tree w C ++
- Struktura danych drzewa binarnego w C ++
- Struktura danych drzewa AVL i sterty w C ++