Optyczny mózg

Prędkość rozchodzenia się informacji (za pośrednictwem impulsów nerwowych) w mózgach ssaków sięga około 120 m/s. Wartość ta determinuje czas potrzebny na komunikację pomiędzy dowolnymi obszarami w mózgu i w konsekwencji czas reakcji na bodźce. To zaś, przy narzuconych przez środowisko zewnętrzne skalach czasowych, rzutuje na maksymalne dopuszczalne rozmiary mózgu. Przykładowo, informacja pomiędzy dwoma odległymi o 10 cm częściami mózgu podróżuje co najmniej milisekundę (0,001 s). Zachowanie tego rzędu czasów propagacji sygnału jest niezbędne do tego, żeby organizm mógł przetworzyć bodziec zewnętrzny i zareagować na niego w ułamku sekundy. Takie tempo rekcji umożliwiło naszym przodkom przetrwać w potyczce z dzikim zwierzęciem i prowadzić polowania. Dzisiaj jest to niezbędne chociażby do tego, żeby sprawnie kierować pojazdami.

O ile prędkość propagacji impulsów w naszych mózgach jest ograniczona biochemiczną naturą naszego hardware’u, to w przypadku systemów neuromorficznych – naśladujących działanie mózgu –  ogranicza nas jedynie maksymalna prędkość rozchodzenia się informacji w przyrodzie, równa prędkość światła w próżni, c\approx 299\ 794\ 458 m/s.  Jeśli udałoby się zasymulować działanie sieci neuronowych za pomocą światła, mogłyby one przetwarzać informacje około 2,5 miliona razy szybciej niż ludzki mózg. To zaś,  z jednej strony znaczy, że optyczny mózg mógłby być znacznie większy niż ten biologiczny.  Dla przykładu, przy zachowaniu minimalnej latencji sygnałów w ludzkim mózgu (~1 ms dla ~10 cm) rozmiary świetlnej sieci neuronowej mogą sięgać 300 km. Z drugiej strony, możliwe stałoby się osiąganie dużo większego niż w ludzkim mózgu tempa przetwarzania informacji. Hipotetyczny, optyczny symulator ludzkiego mózgu o rozmiarach naturalnych działałaby około 2,5 miliona razy szybciej od jej biologicznego odpowiednika. Jeden dzień funkcjonowania ludzkiego mózgu odpowiadałby więc około czterem setnym sekundy pracy optycznego mózgu. Jeden ziemski rok, odpowiadałby w symulacji optycznej około 13 sekundom. Natomiast, w świecie optycznym, symulacja naszego całego życia nie trwałoby dłużej niż dwadzieścia kilka minut!

Powyższe szacunki zaniedbują dodatkowe czasy wynikające z propagacji sygnału w innym niż próżnia ośrodku, jak i te związane z nieliniowym przetwarzaniem informacji optycznej, uwzględnienie których może być konieczne do symulacji realistycznych sieci neuronowych. Są one jednak wystarczająco miarodajne to tego, żeby uzmysłowić nam bardzo ważną z punktu widzenia człowieka własność sztucznej inteligencji. Mianowicie, może stać się ona nie tylko potężniejsza do ludzkiej, pod względem ilości przetwarzanej informacji ale i znacznie od niej szybsza. Z taką, tak zwaną, superinteligencją (Artificial Super Intelligence – ASI) trudno byłoby człowiekowi konkurować, ponieważ żyłby on w zupełnie innych skalach czasowych, nieprzystających do tych obowiązujących w wirtualnym świecie superinteligencji. Kiedy w świecie optycznej superinteligencji upłynęłoby 2,5 miliona lat, czyli czyli okres porównywalny z całą historią Homo sapiens na Ziemi, w zewnętrznym świecie ludzkim upłynąłby zaledwie jeden rok ziemski.

Wróćmy zatem na Ziemię. Superinteligencja to wciąż domena futurologii, natomiast prace nad optycznymi sztucznymi sieciami neuronowymi i ogólniej procesorami optycznymi trwają na dobre [1,2,3,4].  To samo dotyczy innych podejść do sztucznej inteligencji i symulacji ludzkiego mózgu. Można o tym poczytać w moich wcześniejszych wpisach O symulacjach ludzkiego mózgu i Dwanaście technologii jutra, gdzie m.in. przywołuję prowadzone obecnie symulacje wykonywane za pomocą tzw. procesorów neuromorficznych. Tutaj chciałbym jednak pozostać przy podejściu optycznym, które można uważać za rozwiązanie docelowe, zarówno ze względu na dyskutowaną powyżej możliwość osiągnięcia maksymalnej dopuszczalnej w przyrodzie prędkości przesyłania informacji, jaki i z uwagi na możliwość przetwarzania informacji z niedostępną innymi metodami częstotliwością. Ponadto, podejście optyczne w sposób naturalny otwiera drogę do implementacji tak zwanej kwantowej sztucznej inteligencji (ang. quantum artificial intelligence) [5,6,7], ale o tym przy innej okazji.

Chociaż mogłoby się wydawać, że optyczna sieć neuronowa to nieuchronnie coś bardzo skomplikowanego i kosztownego, to prostą optyczną sieć neuronową może zbudować dosłownie Każdy, korzystając z powszechnie dostępnych elementów do budowy światłowodowych sieci internetowych. To zaś jak można to zrobić zarysuję poniżej i posłużę się tym przykładem do omówienia kilku wybranych aspektów optycznych implementacji sieci neuronowych.

20200317_113414
Prototyp optycznej sztucznej sieci neuronowej opartej o światłowody jednomodowe oraz dzielniki mocy (splittery). Źródłem światła jest laser, pracujący na długości fali 650 nm.

Do konstrukcji optycznej sieci neuronowej będziemy potrzebować sztuczne neurony oraz połączenia pomiędzy nimi. Te drugie możemy zrealizować wykorzystując światłowody, stosowane do komunikacji optycznej. Odcinki takich światłowodów można ze sobą łączyć stosując odpowiednie adaptery. Medium transmisyjne wykorzystywane w światłowodach to przeważnie domieszkowane szkło kwarcowe, dla którego współczynnik załamania n \approx 1.46, co daje prędkość propagacji sygnału v=c/n \approx 205\ 000 km/s, czyli około 70 \% prędkości światła w próżni.

Funkcją neuronów jest zbieranie sygnałów wejściowych z synaps i wytworzenie na ich podstawie sygnału wyjściowego. W biologicznych sieciach neuronowych, dodatkowym aspektem jest wytworzenie tak zwanego potencjału czynnościowego (ang. spike). Możliwość wytwarzania spike’ów jest brana pod uwagę w symulacjach mózgu, w szczególności z wykorzystaniem systemów neuromorficznych. Natomiast, są one zazwyczaj pomijane w uproszczonych modelach sieciach neuronowych stosowanych w uczeniu maszynowym. W tym przypadku, działanie sztucznego neuronu polega na zsumowaniu, z odpowiednimi wagami (synaptycznymi), sygnałów wejściowych i przetworzeniu takiej sumy przez tzw. funkcję aktywacji, otrzymując w ten sposób sygnał wyjściowy. Otrzymany sygnał jest następnie podawany na wejścia innych neuronów, lub też, na wejście tego samego neuronu. Do sytuacji bez tego typu pętli zalicza się sieć typu feedforward, na której skupimy poniżej naszą uwagę.

Najprostszą realizacją optycznego neuronu jest przypadek z liniową funkcją aktywacji,  dla którego neuron jest niczym innym jak sumatorem sygnałów wejściowych. Pomimo swojej prostoty, model ten jest wystarczający do tego by uchwycić podstawową ideę przetwarzania informacji przez sieć neuronową. Realizacją optyczną  neuronu-sumatora jest rozdzielacz (ang. splitter) światłowodowy. Dodatkowo, wagi na “synapsach” takiego optycznego neuronu można modyfikować stosując odpowiednio dobrane tłumiki mocy. W rozwiązaniu prototypowym widocznym na zdjęciu powyżej, wykorzystano standardowe rozdzielacze i połączenia stosowane przy budowie sieci światłowodowych. Całość układu można jednak znacząco zminiaturyzować stosując zintegrowane obwody fotoniczne, zawierajace sieci miniaturowych sztucznych neuronów.

Istota działania sieci neuronowych sprowadza się do wykrywania wzorów. Mogą to być zarówno wzory graficzne, dźwiękowe, lub też bardziej abstrakcyjne wzory związane z przetwarzaniem języka i wyższymi funkcjami poznawczymi. Rozpoznawanie wzoru w sieci neuronowej realizowane jest warstwowo. Żeby to zobrazować, posłużmy się przykładem rozważanej sieci optycznej,  z szesnastoma neuronami w warstwie wejściowej. Neurony te będą reprezentować 16 pikseli na mapie bitowej o rozmiarach 4×4. Łącznie mamy więc 2^{16} = 65536 możliwych binarnych konfiguracji wejściowych. W przypadku optycznym, stan “1” danego bitu oznacza wprowadzenie do obwodu światła o ustalonej mocy. Stan “0” to brak światła.  Ponieważ, w ogólności, możemy zmieniać w sposób ciągły natężenie świtała, dopuszczalnych analogowych stanów wejściowych jest nieskończenie wiele. Tutaj jednak, dla uproszczenia, zawęzimy rozważania do stanów binarnych.

Kolejna warstwa, a  zarazem jedyna tzw. warstwa ukryta, wykrywa  8 liniowych wzorów składowych, wynikających z zsumowania wybranych czterech pikseli w warstwie pierwszej. Są to pośrednie wzory z których w ostatniej (trzeciej) warstwie komponowane są wzory które nasza sieć ma za zadanie rozpoznać. Sytuację tę przedstawia rysunek poniżej:

Netork
Graf reprezentujący połączenia w prototypowej optycznej sztucznej sieci neuronowej, rozpoznającej wybrane 4 wzory na bitmapie o rozmiarach 4×4.

Zaprezentowany tu przykład optycznej sieci neuronowej jest niezwykle prosty i opiera się na dzieleniu mocy sygnałów optycznych. Z uwagi na liniowość funkcji aktywacji, uzasadnione było zastosowanie tylko jednej warstwy wewnętrznej. W celu wykrywania bardziej skomplikowanych wzorów, konieczne jest wprowadzenie nieliniowych funkcji aktywacji (np. sigmoidalnych) oraz większej ilości warstw. Wyzwanie to jest podejmowane w wielu aktualnych pracach nad optycznymi sieciami neuronowymi, zarówno klasycznymi, jak i tymi wykorzystującymi kwantową naturę światła.  Nad wdrożeniami takich rozwiązań pracują m.in.  takie startupy jak LightMatterXandu.

Implementacje te dotyczą “wąskiej” sztucznej inteligencji (Artificial Narrow Intelligence – ANI) nie zaś symulacji nakierowanych na stworzenie ogólnej sztucznej inteligencji (Artificial General Intelligence – AGI), nie wspominając nawet o superinteligencji. Faza ANI jest jednak przedsionkiem do dalszego rozwoju podejścia optycznego w kierunku AGI i ASI.  Warto ostatecznie podkreślić, że przetwarzanie informacji za pomocą światła rozważane jest nie tylko w kontekście sieci neuronowych, ale również (a obecnie nawet przede wszystkim) w kontekście akceleratorów optycznych, przyśpieszających działanie procesorów o standardowej, nieneuronalnej,  architekturze. Ponadto, korzyści płynące z wykorzystania światła nie polegają wyłącznie na wysokiej prędkość propagacji sygnału. W standardowym przewodzie elektrycznym, prędkość rozchodzenia się impulsu elektromagnetycznego jest również porównywalna z prędkością światła w próżni. Problemem jest natomiast dyssypacja energii w układach elektronicznych, która rośnie wraz z częstotliwością przetwarzania informacji.  Problem odprowadzania wytworzonego w ten sposób ciepła okazał się na tyle trudny, że częstotliwość taktowania naszych komputerów pozostaje praktycznie niezmieniona od przeszło dziesięciu lat i wynosi maksymalnie ~3,5 GHz. Wykorzystanie światła jako nośnika informacji otwiera drogę do wyjścia z tego impasu. Więcej informacji na ten temat można znaleźć w poniższym filmiku oraz w artykule [4].

Chciałbym na koniec dodać, że opisana tu przykładowa optyczna sieć neuronowa powstała dzięki zasobom Garażu Złożoności i Quantum Cosmos Lab, działających na Uniwersytecie Jagiellońskim. W ramach tych dwóch przedsięwzięć planujemy kolejne projekty związane z systemami neuromorficznymi, w szczególności opartymi o optyczne przetwarzanie informacji. Osoby zainteresowane współpracą w tym obszarze zachęcam do kontaktu.

Bibliografia

[1] R. Hamerly, L. Bernstein, A. Sludds, M. Soljačić, and D. Englund  Large-Scale Optical Neural Networks Based on Photoelectric Multiplication Phys. Rev. X 9, 021032 (2019).
[2] Xiao-Yun Xu  et al. A scalable photonic computer solving the subset sum problem, Science Advances,  Vol. 6, no. 5, eaay5853 (2020).
[3] Y. Zuo, B. Li, Y. Zhao, Y. Jiang, Y. Chen, P. Chen, G. Jo, J. Liu, and S. Du, All-optical neural network with nonlinear activation functions, Optica 6, 1132-1137 (2019).  
[4] K. Kitayama et al.,  Novel frontier of photonics for data processing – Photonic accelerator, APL Photonics 4, 090901 (2019)
[5] G.R. Steinbrecher, J.P. Olson , D. Englund et al. Quantum optical neural networks, npj Quantum Inf 5, 60 (2019).
[6] F. Tacchino, C. Macchiavello, D. Gerace et al. An artificial neuron implemented on an actual quantum processor, npj Quantum Inf 5, 26 (2019).
[7] J. Biamonte, P. Wittek, N. Pancotti et al. Quantum machine learningNature 549, 195-202 (2017).

© Jakub Mielczarek

Leave a comment