Baza danych MNIST - MNIST database

Przykładowe obrazy MNIST
Przykładowe obrazy ze zbioru danych testowych MNIST

Bazie MNIST ( Modified National Institute of Standards and Technology bazy danych ) jest duża baza odręcznego cyfr, który jest powszechnie używany do szkolenia różne przetwarzania obrazu systemów. Baza danych jest również szeroko wykorzystywana do szkoleń i testów z zakresu uczenia maszynowego . Został stworzony przez „remiksowanie” próbek z oryginalnych zbiorów danych NIST. Twórcy uznali, że skoro zestaw danych szkoleniowych NIST został pobrany od pracowników American Census Bureau , podczas gdy zestaw danych testowych został pobrany od amerykańskich uczniów szkół średnich, nie był dobrze dostosowany do eksperymentów z uczeniem maszynowym. Ponadto, białe i czarne obrazy z NIST zostały znormalizowane , aby pasowały do obwiedni 28x28 pikseli i wygładzane , która wprowadziła poziomów szarości.

Baza danych MNIST zawiera 60 000 obrazów treningowych i 10 000 obrazów testowych. Połowa zestawu uczącego i połowa zestawu testowego została pobrana z zestawu danych szkoleniowych NIST, podczas gdy druga połowa zestawu uczącego i druga połowa zestawu testowego zostały pobrane z zestawu danych testowych NIST. Pierwotni twórcy bazy danych prowadzą listę niektórych przetestowanych na niej metod. W swoim oryginalnym artykule używają maszyny wektorów nośnych, aby uzyskać wskaźnik błędów na poziomie 0,8%. Rozszerzony zbiór danych podobny do MNIST o nazwie EMNIST został opublikowany w 2017 r., który zawiera 240 000 obrazów treningowych i 40 000 obrazów testowych odręcznych cyfr i znaków.

Historia

Zbiór obrazów w bazie MNIST powstał w 1998 roku jako połączenie dwóch baz NIST : Special Database 1 i Special Database 3. Special Database 1 i Special Database 3 składają się z cyfr pisanych przez uczniów szkół średnich i pracowników Biuro Spisu Ludności Stanów Zjednoczonych , odpowiednio.

Wydajność

Niektórzy badacze osiągnęli „wydajność prawie ludzką” w bazie danych MNIST, korzystając z komitetu sieci neuronowych; w tym samym artykule autorzy osiągają dwukrotnie wyższą wydajność niż ludzie w innych zadaniach rozpoznawania. Najwyższy wskaźnik błędów wymieniony na oryginalnej stronie internetowej bazy danych wynosi 12 procent, co jest osiągane przy użyciu prostego klasyfikatora liniowego bez wstępnego przetwarzania.

W 2004 r. w bazie danych osiągnięto najlepszy wskaźnik błędu na poziomie 0,42 procent dzięki zastosowaniu nowego klasyfikatora o nazwie LIRA, który jest klasyfikatorem neuronowym z trzema warstwami neuronów opartymi na zasadach perceptronu Rosenblatta.

Niektórzy badacze testowali systemy sztucznej inteligencji, korzystając z bazy danych poddanej przypadkowym zniekształceniom. Systemy w tych przypadkach są zwykle sieciami neuronowymi, a stosowane zniekształcenia są zazwyczaj zniekształceniami afinicznymi lub zniekształceniami elastycznymi . Czasami systemy te mogą być bardzo skuteczne; jeden taki system osiągnął poziom błędu w bazie danych wynoszący 0,39 proc.

W 2011 roku badacze korzystający z podobnego systemu sieci neuronowych odnotowali wskaźnik błędów na poziomie 0,27%, poprawiając poprzedni najlepszy wynik. W 2013 r. twierdzono, że podejście oparte na regularyzacji sieci neuronowych za pomocą DropConnect osiąga wskaźnik błędów 0,21 procent. W 2016 r. najlepsza wydajność pojedynczej splotowej sieci neuronowej wyniosła 0,25 procenta błędu. Według stanu na sierpień 2018 r. najlepszą wydajnością pojedynczej splotowej sieci neuronowej wytrenowanej na danych treningowych MNIST bez wzbogacania danych jest wskaźnik błędu 0,25 procent. Równolegle Centrum Obliczeniowe (Chmielnicki, Ukraina) uzyskało zestaw zaledwie 5 konwolucyjnych sieci neuronowych, które działają na MNIST z 0,21 procentowym współczynnikiem błędu. Niektóre obrazy w testowym zestawie danych są ledwo czytelne i mogą uniemożliwić osiągnięcie współczynnika błędów testowych na poziomie 0%. W 2018 r. badacze z Wydziału Inżynierii Systemowej i Informatycznej Uniwersytetu w Wirginii ogłosili błąd 0,18% przy jednoczesnym ułożeniu trzech rodzajów sieci neuronowych (w pełni połączonych, rekurencyjnych i konwolucyjnych sieci neuronowych).

Klasyfikatory

Oto tabela niektórych metod uczenia maszynowego wykorzystywanych w zbiorze danych i ich współczynników błędów według typu klasyfikatora:

Rodzaj Klasyfikator Zniekształcenie Przetwarzanie wstępne Wskaźnik błędu (%)
Klasyfikator liniowy Klasyfikator liniowy parami Nic Przekrzywianie 7,6
K-Najbliżsi sąsiedzi K-NN z odkształceniem nieliniowym (P2DHMDM) Nic Regulowane krawędzie 0,52
Wzmocnione kikuty Produkt z pniaków na cechach Haar Nic Cechy haara 0,87
Klasyfikator nieliniowy 40 PCA + kwadratowy klasyfikator Nic Nic 3,3
Losowy Las Szybkie ujednolicone losowe lasy dla przetrwania, regresji i klasyfikacji (RF-SRC) Nic Proste statystyczne znaczenie pikseli 2,8
Maszyna wektora nośnego (SVM) Wirtualna SVM , deg-9 poly, 2 piksele jittered Nic Przekrzywianie 0,56
Głęboka sieć neuronowa (DNN) 2-warstwowy 784-800-10 Nic Nic 1,6
Głęboka sieć neuronowa 2-warstwowy 784-800-10 Zniekształcenia sprężyste Nic 0,7
Głęboka sieć neuronowa 6-warstwowy 784-2500-2000-1500-1000-500-10 Zniekształcenia sprężyste Nic 0,35
Konwolucyjna sieć neuronowa (CNN) 6-warstwowa 784-40-80-500-1000-2000-10 Nic Rozszerzenie danych treningowych 0,31
Konwolucyjna sieć neuronowa 6-warstwowa 784-50-100-500-1000-10-10 Nic Rozszerzenie danych treningowych 0,27
Konwolucyjna sieć neuronowa (CNN) 13-warstwowy 64-128(5x)-256(3x)-512-2048-256-256-10 Nic Nic 0,25
Konwolucyjna sieć neuronowa Komitet 35 CNN, 1-20-P-40-P-150-10 Zniekształcenia sprężyste Normalizacje szerokości 0,23
Konwolucyjna sieć neuronowa Komitet 5 CNN, 6-warstwowy 784-50-100-500-1000-10-10 Nic Rozszerzenie danych treningowych 0,21
Losowe wielomodelowe głębokie uczenie (RMDL) 10 NN-10 RNN - 10 CNN Nic Nic 0,18
Konwolucyjna sieć neuronowa Komitet 20 CNNS z sieciami Squeeze-and-Excitation Nic Powiększanie danych 0,17

Zobacz też

Bibliografia

Dalsza lektura

Zewnętrzne linki