Walidacja krzyżowa jest metodą statystyczną używaną do oszacowania umiejętności modeli uczenia się maszynowego.

Zazwyczaj jest ona wykorzystywana w stosowanej sztucznej inteligencji do analizy i wyboru modelu dla danego problemu z zakresu nauk ścisłych, ponieważ jest prosta, łatwa do zrealizowania i daje możliwość oceny predyspozycji, które w zasadzie mają niższe predyspozycje niż różne strategie.

Delikatny Prolog do k-krotnego Cross-Validation

k-Fold Cross-Validation

Akceptacja krzyżowa jest mierzalną techniką wykorzystywaną do oceny zdolności modeli SI.

Zazwyczaj wykorzystuje się ją w stosowanej sztucznej inteligencji w celu przemyślenia i wybrania modelu dla danego badanego problemu, ponieważ jest ona prosta, łatwa do urzeczywistnienia i niesie ze sobą ekspertyzę oceniającą, że w zasadzie ma mniejszą skłonność niż różne strategie.

W tym ćwiczeniu instruktażowym znajdziesz delikatny prolog do strategii k-crease cross-aprobaty dla oceny ekspertyzy modeli SI.

Po zakończeniu tego ćwiczenia instruktażowego, będziesz wiedział:

że k-crease cross approval jest strategią używaną do oceny ekspertyzy modelu na podstawie nowych informacji.

Istnieją podstawowe strategie, które możesz wykorzystać do wyboru szacowania k dla Twojego zbioru danych.

Zazwyczaj używane są niewielkie odstępstwa od krzyżowej akceptacji, na przykład, rozwarstwienia i zmiany, które są dostępne w scikit-learningu.

Znajdź w mojej nowej książce oparte na faktach testy spekulacyjne, strategie resamplingowe, wgląd w szacunki i techniki nieparametryczne, z 29 bitowymi ćwiczeniami instruktażowymi i pełnym kodem źródłowym.

Może zaczniemy.

Delikatny Prolog do k-overlay Cross-Approval.

A Delikatna Prologue to k-overlay Cross-Approval

Fotografia Jona Baldocka, kilka praw zapisanych.

Schemat ćwiczenia instruktażowego

To ćwiczenie instruktażowe jest podzielone na 5 sekcji; są one:

k-Overlay Cross-Approval

Ułożenie k

Model roboczy

Interfejs programowania do zatwierdzania krzyżowego (Cross-Approval)

Niewielkie odstępstwa od homologacji krzyżowej

Potrzebujesz pomocy przy pomiarach dla SI?

Weź moją darmową, 7-dniową, intensywną lekcję e-mailową już teraz (z kodem testowym).

Weź udział w kursie, a ponadto otrzymasz darmowy PDF Cyfrowa adaptacja książki.

Pobierz swój DARMOWY Mniejszy niż zwykle Kurs

k-Overlay Cross-Approval

Zatwierdzenie krzyżowe jest metodą ponownego pobierania próbek używaną do oceny modeli SI na podstawie badania informacji o ograniczonym dostępie.

Metoda ta posiada parametr pojedynczy uważany za k, który odnosi się do liczby zgromadzeń, których ma dotyczyć dany test informacyjny. Biorąc pod uwagę wszystkie te czynniki, metodologia ta często nazywana jest krzyżowym zatwierdzaniem wzrostu k. W momencie, gdy wybrana jest szczególna zachęta do k, może być ona wykorzystana zamiast k w odniesieniu do modelu, na przykład, k=10 okazuje się być 10-krotną aprobatą krzyżową.

Akceptacja krzyżowa jest głównie wykorzystywana w stosowanej sztucznej inteligencji do oceny wiedzy specjalistycznej modelu sztucznej inteligencji na podstawie niepozornych informacji. Oznacza to wykorzystanie ograniczonego przykładu, aby ocenić, w jaki sposób model ma z reguły działać, gdy jest wykorzystywany do tworzenia prognoz dotyczących informacji niewykorzystanych podczas przygotowywania modelu.

Jest to dobrze znana strategia, ponieważ jest łatwa do zrozumienia i w świetle faktu, że w dużej mierze prowadzi do mniej jednostronnych lub mniej obiecujących wyników, niż różne strategie, na przykład proste dzielenie pociągu/testu.

Ogólna metodologia jest taka, jak podano poniżej:

Mieszanie zbioru danych w sposób arbitralny.

Podzielić zbiór danych na zbiór k

Na każde ciekawe spotkanie:

Zaakceptuj zebranie, jako trzymający w napięciu lub testujący indeks informacyjny.

Przyjmij resztę zgromadzeń jako zbiór informacji o przygotowaniach.

Zamontować model na zestawie przygotowawczym i ocenić go na zestawie testowym

Zatrzymaj wynik oceny i pozbądź się modelu

Przedstawić możliwości modelu na przykładzie wyników oceny modelu

Co istotne, każda percepcja w teście informacyjnym jest przekazywana do indywidualnego zgromadzenia i pozostaje w tym zgromadzeniu na czas trwania strategii. Oznacza to, że każdy przykład ma szansę zostać wykorzystany w zestawie 1 raz i wykorzystany do przygotowania modelu k-krotność razy.

Ustawienie k

Wartość k musi być wybierana ostrożnie do testu informacyjnego.

Nieefektywnie wybrana zachęta do k może wywołać błędne przekonanie o wiedzy eksperckiej modelu, na przykład wynik z dużą różnicą (która może się bardzo zmienić w zależności od informacji wykorzystanych do dopasowania modelu), lub duże nachylenie (na przykład przecena zdolności modelu).

Trzy regularne strategie doboru motywacji do k są następujące:

Delegat: Motywacja do “k” jest wybierana do tego stopnia, że każdy pociąg/test gromadzący informacje jest na tyle duży, że stanowi faktyczną ilustrację szerszego zestawu danych.

k=10: Motywacja do k jest ustalona na poziomie 10, co jest wartością, którą stwierdzono w wyniku przeprowadzonych eksperymentów i która w większości przypadków pozwala na uzyskanie wzorcowego wskaźnika ekspertyzy o małym nachyleniu i niezauważalnych wahaniach.

k=n: Motywacja do k jest ustalona na n, gdzie n jest wielkością zbioru danych, aby każdy test miał szansę być wykorzystany w zbiorze danych typu Holdout. Ta metodologia pozwala zapomnieć o jednym zatwierdzeniu krzyżowym.

Interfejs programowania do zatwierdzania krzyżowego

Nie musimy fizycznie dokonywać krzyżowego zatwierdzenia K-crease. Biblioteka scikit-learn daje wykorzystanie, które będzie częścią testu informacji poddanych.

1 kfold = KFold(3, True, 1)

Można wykorzystać klasę KFold() scikit-learn. Przyjmuje ona za argument ilość części, niezależnie od tego, czy zmienić przykład, oraz materiał siewny dla generatora liczb pseudolosowych wykorzystany przed mieszanką.

Na przykład, możemy zrobić zdarzenie, że części zbioru danych na 3 fałdy, rearanżacje poprzedzające podział, i używa oszacowania 1 dla generatora liczb pseudolosowych.

Pojemność split() byłaby wtedy w stanie zbliżyć się do klasy, w której test informacyjny jest podawany jako argument. Wywoływany w kółko, podział przywróci każde zgromadzenie pociągu i zespołów testowych. W szczególności, klastry są zwracane zawierające zapisy do pierwszego informacyjnego testu postrzegania, który ma być użyty dla pociągów i zbiorów testowych w każdym cyklu.

Na przykład, możemy zidentyfikować części zapisów do testu informacyjnego, wykorzystując wykonywany KFold occasion as pursues:

1

2

3

# wyliczyć podziały

dla pociągu, próba w kfold.split(dane):

print(“pociąg: %s, test: %s’ % (pociąg, test))

Możemy to wszystko powiązać z naszym małym zestawem danych wykorzystanym w przykładzie roboczym z poprzedniej sekcji.

# scikit-learn k-fold cross-validation

z macierzy importowej zdrętwiałej

z sklearn.model_selection import KFold

# data sample

data = array([0.1, 0.2, 0.3, 0.4, 0.5, 0.6])

# przygotuj walidację krzyżową

kfold = KFold(3, True, 1)

# wyliczyć podziały

dla pociągu, próba w kfold.split(dane):

print(‘train: %s, test: %s’ % (data[train], data[test]))

1

2

3

4

5

6

7

8

9

10

# scikit-learn k-fold cross-validation

z macierzy importowej zdrętwiałej

z sklearn.model_selection import KFold

# data sample

data = array([0.1, 0.2, 0.3, 0.4, 0.5, 0.6])

# przygotuj walidację krzyżową

kfold = KFold(3, True, 1)

# wyliczyć podziały

dla pociągu, próba w kfold.split(dane):

print(‘train: %s, test: %s’ % (data[train], data[test]))

Na przykładzie wydrukowane są konkretne obserwacje wybrane dla każdego pociągu i zestawu testowego. Wskaźniki są używane bezpośrednio na oryginalnej tablicy danych w celu uzyskania wartości obserwacji.

Pociąg: [0.1 0.4 0.5 0.6], test: [0.2 0.3]

Pociąg: [0.2 0.3]: [0.2 0.3 0.4 0.6], test: [0.1 0.5]

pociąg: [0.1 0.2 0.3 0.5], test: [0.1 0.2 0.3 0.5], test: [0.4 0.6]

1

2

3

Pociąg: [0.1 0.4 0.5 0.6], test: [0.2 0.3]

pociąg: [0.2 0.3 0.4 0.6], test: [0.2 0.3 0.4 0.6], test: [0.1 0.5]

pociąg: [0.1 0.2 0.3 0.5], test: [0.1 0.2 0.3 0.5], test: [0.4 0.6]

Użyteczna implementacja walidacji krzyżowej k-fold w scikit-learn jest dostarczana jako operacja komponentu w ramach szerszych metod, takich jak przeszukiwanie hiperparametrów modelu sieciowego i punktowanie modelu na zbiorze danych.