Sieci konwolucyjne 4: data augmentation

W poprzednich trzech częściach tutoriala w szczegółach poznaliśmy sieci konwolucyjne. Przyjrzeliśmy się operacji konwolucji, architekturze sieci konwolucyjnych oraz problemowi overfittingu. W klasyfikacji zbioru CIFAR-10 osiągnęliśmy wynik 81% na zbiorze testowym. Aby pójść dalej, musielibyśmy zmienić architekturę naszej sieci, poeksperymentować z hiperparametrami lub uzyskać więcej danych. Dwa pierwsze rozwiązania zostawiam dla was, 😉 a sam będę …

Czytaj dalej

Konwolucyjne sieci neuronowe 3: overfitting

Konwolucyjne sieci neuronowe to jedna z najbardziej skutecznych architektur sieci neuronowych w obszarze klasyfikacji obrazów. W pierwszej części tutoriala omówiliśmy zagadnienie konwolucji oraz zbudowaliśmy prostą, gęsto połączoną sieć neuronową, której użyliśmy do klasyfikacji zbioru CIFAR-10, uzyskując skuteczność na poziomie 47%. W części drugiej tutoriala zapoznaliśmy się szczegółowo z architekturą i parametrami konwolucyjnej sieci neuronowej, zbudowaliśmy …

Czytaj dalej

Neuronowe sieci konwolucyjne 2: architektura

Neuronowe sieci konwolucyjne pozwalają uzyskać bardzo dobre wyniki klasyfikacji w przypadku obrazów. W poprzednim poście mieliście okazję dowiedzieć się, czym jest konwolucja oraz jak sklasyfikować zbiór CIFAR-10 wykorzystując prostą klasyczną sieć neuronową. Przypomnę, że uzyskaliśmy poprawność klasyfikacji na zbiorze testowym na poziomie 47%. W drugiej części tutoriala idziemy dalej: Niniejszy post jest drugą częścią tutoriala, …

Czytaj dalej

Convolutional neural network

Konwolucyjne sieci neuronowe 1: konwolucja

Głębokie sieci neuronowe znajdują szerokie zastosowanie w rozpoznawaniu obrazów i kształtów. Przykładowe aplikacje obejmują rozpoznawanie twarzy, analizę obrazów w medycynie, klasyfikację pisma czy detekcję obiektów otoczenia. Specjalnym rodzajem sieci neuronowej, który wyjątkowo dobrze radzi sobie z przetwarzaniem obrazu, są konwolucyjne sieci neuronowe. Przyznam, że ConvNet to moja ulubiona architektura głębokich sieci neuronowych i bardzo lubię …

Czytaj dalej

Development environment for machine learning

Środowisko programistyczne dla uczenia maszynowego

Jednym z pierwszych problemów, na jakie napotykają osoby studiujące uczenie maszynowe jest jak zbudować lokalne środowisko programistyczne dla uczenia maszynowego? Jest to o tyle niewdzięczne zagadnienie, że dostępnych jest wiele metod oraz narzędzi i czasami po prostu nie wiadomo, które wybrać i od czego zacząć. Do tego dochodzą kwestie wyboru bibliotek do instalacji, IDE oraz …

Czytaj dalej