Podstawy AI
Co to sÄ CNN (Sieci Neuronowe Konwolucyjne)?
ByÄ moÅže zastanawiaÅeÅ siÄ, jak Facebook (META ) lub Instagram sÄ w stanie automatycznie rozpoznawaÄ twarze na zdjÄciu, lub jak Google (GOOGL ) pozwala wyszukiwaÄ zdjÄcia w sieci tylko poprzez przesÅanie zdjÄcia. Te funkcje sÄ przykÅadami komputerowego widzenia, a sÄ one napÄdzane przez sieci neuronowe konwolucyjne (CNN). Ale co dokÅadnie sÄ sieci neuronowe konwolucyjne? Zanurzmy siÄ gÅÄboko w architekturÄ CNN i zrozumiemy, jak one dziaÅajÄ .
Co to sÄ Sieci Neuronowe?
Przed rozpoczÄciem rozmowy o sieciach neuronowych konwolucyjnych, poÅwiÄÄmy chwilÄ na zdefiniowanie zwykÅych sieci neuronowych. Istnieje inny artykuÅ na temat sieci neuronowych, wiÄc nie bÄdziemy siÄ tym zajmowaÄ zbyt gÅÄboko. Jednak aby je krÃģtko zdefiniowaÄ, sÄ to modele obliczeniowe inspirowane ludzkim mÃģzgiem. SieÄ neuronowa dziaÅa poprzez przyjmowanie danych i manipulowanie nimi poprzez dostosowanie âwagâ, ktÃģre sÄ zaÅoÅženiami o tym, jak cechy wejÅciowe sÄ ze sobÄ powiÄ zane i jak sÄ one powiÄ zane z klasÄ obiektu. Podczas szkolenia sieci, wartoÅci wag sÄ dostosowywane i powinny one zbiec siÄ do wag, ktÃģre dokÅadnie ujmujÄ relacje miÄdzy cechami.
To jest sposÃģb, w jaki dziaÅa sieÄ neuronowa z przekazywaniem do przodu, a CNN skÅadajÄ siÄ z dwÃģch czÄÅci: sieci neuronowej z przekazywaniem do przodu i grupy warstw konwolucyjnych.
Co to sÄ Sieci Neuronowe Konwolucyjne (CNN)?
Co to sÄ âkonwolucjeâ, ktÃģre zachodzÄ w sieci neuronowej konwolucyjnej? Konwolucja jest operacjÄ matematycznÄ , ktÃģra tworzy zestaw wag, tworzÄ c reprezentacjÄ czÄÅci obrazu. Ten zestaw wag nazywany jest jÄ drem lub filtrem. Filtrowanie, ktÃģre jest tworzone, jest mniejsze niÅž caÅy obraz wejÅciowy, pokrywajÄ c tylko podzbiÃģr obrazu. WartoÅci w filtrze sÄ mnoÅžone przez wartoÅci w obrazie. Filtrowanie jest nastÄpnie przenoszone, aby utworzyÄ reprezentacjÄ nowej czÄÅci obrazu, a proces jest powtarzany, aÅž caÅy obraz zostanie pokryty.
Inny sposÃģb myÅlenia o tym jest wyobraÅženie sobie muru z cegieÅ, z cegÅami reprezentujÄ cymi piksele w obrazie wejÅciowym. âOknoâ jest przesuwane wzdÅuÅž muru, co jest filtrowaniem. CegÅy, ktÃģre sÄ widoczne przez okno, sÄ pikselami, ktÃģrych wartoÅci sÄ mnoÅžone przez wartoÅci w filtrze. Dlatego ten sposÃģb tworzenia wag z filtrowaniem jest czÄsto nazywany âtechnikÄ przesuwania oknaâ.
Wynik z filtrÃģw przesuwanych po caÅym obrazie wejÅciowym jest dwuwymiarowÄ tablicÄ reprezentujÄ cÄ caÅy obraz. Tablica ta nazywana jest âmapÄ cechâ.
Dlaczego Konwolucje sÄ NiezbÄdne
Jaki jest cel tworzenia konwolucji? Konwolucje sÄ konieczne, poniewaÅž sieÄ neuronowa musi byÄ w stanie interpretowaÄ piksele w obrazie jako wartoÅci numeryczne. Funkcja warstw konwolucyjnych jest przeksztaÅcenie obrazu w wartoÅci numeryczne, ktÃģre sieÄ neuronowa moÅže zinterpretowaÄ, a nastÄpnie wyodrÄbniÄ istotne wzorce. Praca filtrÃģw w sieci konwolucyjnej polega na tworzeniu dwuwymiarowej tablicy wartoÅci, ktÃģre mogÄ byÄ przekazane do pÃģÅšniejszych warstw sieci neuronowej, ktÃģre bÄdÄ uczyÄ siÄ wzorcÃģw w obrazie.
Filtry i KanaÅy

ZdjÄcie: cecebur via Wikimedia Commons, CC BY SA 4.0 (https://commons.wikimedia.org/wiki/File:Convolutional_Neural_Network_NeuralNetworkFeatureLayers.gif)
CNN nie uÅžywa tylko jednego filtra, aby nauczyÄ siÄ wzorcÃģw z obrazÃģw wejÅciowych. UÅžywa siÄ wielu filtrÃģw, poniewaÅž rÃģÅžne tablice utworzone przez rÃģÅžne filtry prowadzÄ do bardziej zÅoÅžonej, bogatszej reprezentacji obrazu wejÅciowego. Typowe liczby filtrÃģw dla CNN to 32, 64, 128 i 512. Im wiÄcej filtrÃģw, tym wiÄcej moÅžliwoÅci ma CNN do badania danych wejÅciowych i uczenia siÄ z nich.
CNN analizuje rÃģÅžnice w wartoÅciach pikseli, aby okreÅliÄ granice obiektÃģw. W przypadku obrazu w odcieniach szaroÅci, CNN bÄdzie braÅ pod uwagÄ tylko rÃģÅžnice miÄdzy czerniÄ i bielÄ , jasnoÅciÄ i ciemnoÅciÄ . Kiedy obrazy sÄ w kolorze, CNN musi braÄ pod uwagÄ nie tylko ciemnoÅÄ i jasnoÅÄ, ale takÅže trzy rÃģÅžne kanaÅy kolorÃģw â czerwony, zielony i niebieski. W tym przypadku filtry posiadajÄ 3 kanaÅy, tak jak sam obraz. Liczba kanaÅÃģw, ktÃģre filtry posiadajÄ , nazywana jest ich gÅÄbiÄ , a liczba kanaÅÃģw w filtrze musi odpowiadaÄ liczbie kanaÅÃģw w obrazie.
Architektura Sieci Neuronowej Konwolucyjnej (CNN)
Zobaczmy caÅÄ architekturÄ sieci neuronowej konwolucyjnej. Warstwa konwolucyjna znajduje siÄ na poczÄ tku kaÅždej sieci konwolucyjnej, poniewaÅž jest konieczna do przeksztaÅcenia danych obrazu w tablice numeryczne. Jednak warstwy konwolucyjne mogÄ rÃģwnieÅž nastÄpowaÄ po innych warstwach konwolucyjnych, co oznacza, Åže te warstwy mogÄ byÄ stapiane na siebie. Posiadanie wielu warstw konwolucyjnych oznacza, Åže dane wyjÅciowe z jednej warstwy mogÄ przejÅÄ dalsze konwolucje i byÄ grupowane w istotne wzorce. Praktycznie oznacza to, Åže gdy dane obrazu przechodzÄ przez warstwy konwolucyjne, sieÄ zaczyna ârozpoznawaÄâ bardziej zÅoÅžone cechy obrazu.
Wczesne warstwy sieci konwolucyjnej sÄ odpowiedzialne za wyodrÄbnienie niskopoziomowych cech, takich jak piksele, ktÃģre tworzÄ proste linie. PÃģÅšniejsze warstwy sieci konwolucyjnej poÅÄ czÄ te linie w ksztaÅty. Ten proces przechodzenia od powierzchniowej analizy do gÅÄbokiej analizy trwa, aÅž sieÄ konwolucyjna zacznie rozpoznawaÄ zÅoÅžone ksztaÅty, takie jak zwierzÄta, ludzkie twarze i samochody.
Po przejÅciu danych przez wszystkie warstwy konwolucyjne, przechodzÄ one do gÄsto poÅÄ czonej czÄÅci sieci neuronowej. Warstwy gÄsto poÅÄ czone sÄ tym, co tradycyjna sieÄ neuronowa z przekazywaniem do przodu wyglÄ da â seria wÄzÅÃģw uÅoÅžonych w warstwy, poÅÄ czonych ze sobÄ . Dane przechodzÄ przez te gÄsto poÅÄ czone warstwy, ktÃģre uczÄ siÄ wzorcÃģw, ktÃģre zostaÅy wyodrÄbnione przez warstwy konwolucyjne, a w ten sposÃģb sieÄ staje siÄ w stanie rozpoznawaÄ obiekty.












