Chmura

Wypróbuj sztuczną inteligencję AWS

Redakcja Antyweb
Wypróbuj sztuczną inteligencję AWS
3

Jeszcze niedawno prawie każdy artykuł o sztucznej inteligencji zaczynał się od odwołań do filmów science fiction. Dzisiaj algorytmy uczenia maszynowego są praktycznie wszędzie. Jednocześnie ponad połowa firm przyznaje, że nie ma odpowiednich umiejętności w zespole, żeby zacząć korzystać z AI. Jeśli więc zastanawiasz się właśnie nad zawodem przyszłości, może warto spróbować nauczyć się tworzyć takie rozwiązania? A co, jeśli powiem, że można to zrobić za pomocą narzędzia, którym Amazon Web Services (AWS) szkolił swoich pracowników? I do tego całkowicie za darmo?

Autorem tekstu jest:
Tomasz Stachlewski, Enterprise Architecture Lead na region CEE w Amazon Web Services (AWS).

--
Sztuczna inteligencja (artifical intelligence, AI) już dzisiaj jest integralną częścią naszego życia, nawet jeśli nie jesteśmy tego w pełni świadomi. Posłużmy się kilkoma przykładami. Co mają ze sobą wspólnego miłość spotkana na Tinderze z kierowcami ciężarówek Convoy, którzy chcieli spędzać więcej czasu z rodziną?

Naukowcy Duke University pracujący nad wczesnym wykrywaniem spektrum autyzmu ze specjalistami firmy Saildrone badającymi oceany za pomocą dronów? Albo zespoły analizujące mecze Bundesligi, wyścigi Formuły 1 i wreszcie my – robiący zakupy online i korzystający z podpowiedzi Netflixa na temat tego, jaki serial obejrzeć następny? Tak jest.

Wszyscy ci ludzie i firmy korzystają z algorytmów uczenia maszynowego (machine learning, ML) AWS. Chcesz wiedzieć czy programowanie AI jest trudne? A może sam chcesz spróbować? W tym tekście pokażemy, jak zacząć – przy pomocy AWS SageMaker Studio Lab.

Demokratyzacja technologii

Sztuczna inteligencja staje się popularna z prostego powodu – jest dostępna. Nie trzeba już budować superkomputera, wystarczy dostęp do internetu i chmura, która zdemokratyzowała technologię, udostępniając moce obliczeniowe i skomplikowane narzędzia AI/ML w modelu „płacisz tylko za to czego używasz”.

To samo dotyczy zdobywania wiedzy – nie musisz już być profesorem informatyki, żeby zacząć eksperymentować z AI.

Laboratorium SageMaker

AWS od kilku lat udostępnia szereg narzędzi, które służą do zdobywania wiedzy w tym obszarze. Warto tutaj wspomnieć o lidze DeepRacer – czyli wirtualnej lidze autonomicznych samochodów. W jej ramach możemy budować własne samojezdne pojazdy, a następnie ścigać się z wirtualnymi samochodami innych osób z całego świata. Tym razem jednak chciałbym przedstawić wam coś innego, mianowicie SageMaker Studio Lab – czyli darmowe środowisko nauki (ale nie tylko) AI.

No dobrze, ale po kolei. Czy faktycznie darmowe? Czy może są jakieś haczyki? Nie ma, rozwiązanie jest bezpłatne i wystarczy się zarejestrować, podając swój adres email. Nie konto AWS, tylko email. Karta kredytowa też do niczego się nie przyda. Studio Lab jest rozwiązaniem opartym o popularne notebooki Jupyter – czyli najpopularniejsze rozwiązanie osób zajmujących się analizą danych i sztuczną inteligencją, dzięki którym tworzymy własny (lub wykorzystujemy istniejący) wirtualny notes, który krok po kroku opisuje proces przetwarzania danych.

Samo korzystanie ze Studio Laba jest również bajecznie proste i polega jedynie na wskazaniu, czy będziemy korzystać z klasycznych procesorów CPU, czy być może kart graficznych (GPU) – co samo w sobie jest już ciekawą opcją, bo daje nam możliwość darmowego testowania własnych modeli AI w oparciu o karty graficzne. A co później? Nauka i zabawa! Wszystkie dane są automatycznie zapisywane w naszej chmurowej wirtualnej przestrzeni – dzięki czemu możemy do nich wracać w późniejszym czasie i kontynuować naszą naukę.

Zobaczmy jednak, jak to wygląda w praktyce. W tym celu najpierw odwiedzamy stronę domową Studio Lab, gdzie przechodzę przez kilka kroków rejestracji w celu założenia darmowego konta, które pozwoli nam zgłębiać tajniki świata ML.

Po utworzeniu konta dostajemy wybór, czy zamierzamy pracować nad projektem, który będzie wymagał dostępu do serwerów wyposażanych w procesy CPU czy GPU. Algorytmy oparte o procesory CPU są prostsze i bardziej generyczne, jednak przy dobrze zoptymalizowanych algorytmach wyniki osiągane przy pomocy procesorów GPU mogą być szybsze.

GPU nie jest jednak dostępne dla każdego w zaciszu własnego domu, zatem okazuje się nagle, że chmura daje nam dostęp do eksperymentowania z tego typu rozwiązaniami zupełnie za darmo!

Samo utworzenie środowiska zajmie kilka chwil, po czym będziemy mieć możliwość jego uruchomienia. Mowa o środowisku opartym o notebooki Jupyterowe – czyli prawdopodobnie najbardziej popularną platformę wykorzystywaną przez pasjonatów AI.

Ponieważ nie jest mi też ona zupełnie obca, szybko wykorzystują dostępne opcje, aby dodać do niej pakiet przykładowych notatników na podstawie udostępnionego przez AWS katalogu przykładów, dostępnego pod linkiem: https://github.com/aws/studio-lab-examples.

Pozwala nam to przekonać się, że jedną z opcji są notatniki oparte o analizę obrazu (computer vision) w ramach której znajduję ciekawy notatnik pokazujący jak zbudować własny model wykrywający znaki alfabetu japońskiego hiragany przy pomocy popularnej biblioteki PyTorch.

Notatnik ten wykorzystuje publicznie dostępny katalog KMNIST – czyli dużo ciekawszą wersję bazy MNIST – w ramach której domyślnie mamy dostęp do kilkudziesięciu tysięcy ręcznie pisanych cyfr. Tym razem zamiast cyfr mamy dostęp do kilku znaków wcześniej przytoczonego alfabetu – który możecie zobaczyć poniżej.

Istotą przydatności notatników Jupyterowych jest to, że nie musimy wszystkiego pisać od zera. W tym przypadku czeka nas jedynie uruchomienie gotowego notatnika, co spowoduje próbę ”wyćwiczenia” modelu AI, który będzie miał za zadanie nauczyć się rozpoznawania odpowiednich znaków hiragany.

Notatnik został domyślnie tak skonstruowany, że nauka modelu na podstawie kilkudziesięciu tysięcy obrazów trwa zaledwie kilkadziesiąt sekund. Ale już to wystarczy, abym przekonał się, że mój model uzyskał skuteczność na poziomie 71%.

No dobrze, ale nie kończmy na tym, w końcu sam chcę poeksperymentować, zmieniam zatem jeden z parametrów – tzw. ilość epok (które można utożsamiać z iteracjami w ramach których model próbuje przejść przez dostarczone próbki danych i się polepszyć) z 3 na 10.

Tym razem nauka trwa kilka minut, ale efekty są widoczne. Udało mi się polepszyć jakość mojego modelu z 71% na 81%.

No dobrze. Ale na tym nie kończymy. Wspominałem, że SageMaker Studio Lab to środowisko w ramach którego możemy eksperymentować i się uczyć. Mamy bowiem darmowy dostęp do mocy obliczeniowej wprost z chmury. Co jeśli nie wiemy jak z tego korzystać, bo dopiero rozpoczynamy naszą przygodę z AI?

Uniwersytet AWS

Odpowiednie narzędzie do nauki to jedno. Ciężko się uczyć nie mając dobrej dawki materiałów edukacyjnych. Okazuje się, że SageMaker studio Lab przychodzi z pomocą i tutaj. W ramach środowiska dostajemy dostęp do kilku interesujących źródeł materiałów. Jednym z nich jest kurs AWS Machine Learning University (MLU).

MLU jest wirtualnym uniwersytetem, który został stworzony początkowo dla pracowników firmy Amazon, a ostatnio został udostępniony dla całego świata. Jest to dedykowany program edukacyjny, który można streścić frazą ”od zera do bohatera” – innymi słowy jest to szkolenie online’owe, które krok po krok zabiera uczestnika w podróż przez świat AI (a dokładnie ML).

Warto dodać, że sam uniwersytet ML został podzielony na kilka sekcji, w zależności od tego, jakiego typu projekty AI nas interesują. Mamy zatem dostęp do szkolenia opartego o modele AI do analizy danych tabelarycznych, obrazu czy też słowa pisanego.

Wgląd w dokumentacje (dostępny z poziomu SageMaker Studio Lab) daje mi szybki podgląd, że rozwiązanie jest wzbogacone szeregiem filmów szkoleniowych dostępnych na platformie YouTube, dzięki czemu możemy ponownie poczuć się jak w szkole!

I to tyle! W ramach SageMaker Studio Lab dostajemy dostęp zarówno do filmów, prezentacji i właśnie do notesów Jupyterowych, dzięki którym możemy na bieżąco testować w praktyce zdobywaną wiedzę. Program ten został zaprojektowany w ten sposób, aby w ciągu 9 dni poznać podstawy dotyczące przetwarzania języka naturalnego, analizy danych tabelarycznych i analizy obrazów. A dla tych, którzy ukończą materiał, AWS przygotował nawet tematy zaawansowane, które zajmą kolejne dni i przeniosą naszą wiedzę na kolejny poziom doświadczenia!

Hej, jesteśmy na Google News - Obserwuj to, co ważne w techu