Przywitajmy jutro – czyli jak AI zmieni świat przez najbliższe 10 lat

Kiedy w 2019 roku zacząłem tworzyć wpisy na tym blogu, pozwoliłem sobie na małą prowokację pisząc „AI zmieni świat bardziej niż rewolucja przemysłowa„. Oczywiście przywidywanie jest bardzo trudne, szczególnie jeżeli dotyczy przyszłości (Niels Bohr), ale ostatnie osiągnięcia w obszarze uczenia maszynowego zachęciły mnie do przemyśleń na temat tego, jak AI zmieni świat w najbliższych 10 …

Czytaj dalej

PyTorch: podział zbioru, transformacje, uczenie na GPU oraz wizualizacja metryki

Dziś taki lekki misz-masz. W uczeniu maszynowym określenie struktury modelu i trening sieci neuronowej to stosunkowo niewielkie elementy dłuższego łańcucha czynności, który rozpoczyna się od załadowania zbioru danych, jego podziału na podzbiory uczący, walidacyjny oraz testowy i odpowiedniego serwowania danych do modelu. Po drodze pojawiają się również takie kwestie jak transformacja danych, uczenie na GPU …

Czytaj dalej

Przygotowanie danych do uczenia maszynowego w PyTorch

Przygotowanie danych do uczenia maszynowego nie jest zadaniem, za którym tęskni większość specjalistów AI. Dane bywają różnej jakości, najczęściej wymagają bardzo dokładnej analizy, czasami ręcznego przeglądu, a na pewno selekcji i wstępnego przetworzenia. W przypadku zadań klasyfikacyjnych podział zbioru na klasy bywa niewłaściwy lub niewystarczająco zbalansowany. Często danych jest również po prostu za mało i …

Czytaj dalej

k najbliższych sąsiadów w klasyfikacji pisma

W uczeniu maszynowym jest takie stare, ale sprawdzone powiedzenie: „Nie da ci ojciec, nie da ci matka, tego co może dać ci … k najbliższych sąsiadów”. 😉 Nie wierzycie? Ja też nie mogłem w to uwierzyć, póki nie spróbowałem sklasyfikować pisma odręcznego z użyciem tego algorytmu. k najbliższych sąsiadów – z ang. k-nearest neighbours lub …

Czytaj dalej

Anaconda cron na Amazon Linux

Jeżeli jesteś programistą Pythona oraz korzystasz ze środowiska AWS i Anacondy, to prędzej czy później napotkasz potrzebę uruchomienia skryptu Pythona jako procesu cronowego na Amazon Linux w środowisku Anaconda. To chyba nie powinno być trudne, prawda? Hmmm, niestety jest. Ponieważ spędziłem trochę czasu na konfiguracji crona na Amazon Linux w EC2, tak aby korzystał ze …

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

Logistic Regression for binary classification

Regresja logistyczna do klasyfikacji binarnej

Dziś chciałbym zaprezentować Wam przykład zastosowania regresji logistycznej do klasyfikacji binarnej, a to wszystko z użyciem biblioteki Keras. Wiem, że to poprzednie zdanie nie brzmi zbyt zachęcająco 😉 , więc może zacznijmy od podstaw.  Uczenie maszynowe dzielimy na nadzorowane i nienadzorowane (i jeszcze na uczenie ze wzmocnieniem, ale pomińmy to obecnie). Uczenie nadzorowane to takie, …

Czytaj dalej

Handwriting digit recognition Keras MNIST

Rozpoznawanie pisma odręcznego

Rozpoznawanie kształtów, a w szczególności rozpoznawanie pisma odręcznego, to jeden z najwdzięczniejszych tematów dla każdego rozpoczynającego naukę AI. Powodów jest kilka, ale dwa najważniejsze to łatwość, z jaką możemy skorzystać z dobrze opracowanych gotowych zbiorów danych oraz możliwość wizualizacji tychże danych. Z niniejszego tutoriala dowiesz się między innymi: Rozpoznawanie pisma odręcznego – zbiór MNIST OK,  …

Czytaj dalej