Inżynieria uczenia maszynowego i sztucznej inteligencji
Praktyczne studia podyplomowe dla przyszłych twórców inteligentnych systemów i technologii opartych na danych.
Zdobądź umiejętności w zakresie programowania, przetwarzania dużych zbiorów danych, tworzenia modeli predykcyjnych, sieci neuronowych oraz wdrażania rozwiązań AI w środowiskach produkcyjnych.
Poznaj praktyczną stronę inżynierii AI
Studia z inżynierii sztucznej inteligencji oferują dogłębne poznanie kluczowych algorytmów uczenia maszynowego oraz nowoczesnych architektur sieci neuronowych. Program obejmuje zaawansowane techniki deep learning, takie jak modele konwolucyjne (CNN), rekurencyjne (RNN) czy transformery, które są wykorzystywane w najnowszych rozwiązaniach technologicznych. Zajęcia kładą nacisk na praktyczne aspekty budowania i optymalizacji modeli, co przygotowuje do pracy nad złożonymi projektami w różnych branżach.
Kompleksowe przygotowanie do pracy na stanowiskach AI Software Engineer, Machine Learning Engineer, AI Engineer
Program obejmuje wszystkie kluczowe etapy pracy nad projektami AI – od przetwarzania danych, ich analizę i eksplorację, przez budowanie, testowanie i ewaluację modeli, aż po ich implementacji w postaci aplikacji i wdrożenie na środowiska produkcyjne.
Nowoczesny program oparty na aktualnych technologiach wykorzystywanych w branży AI i ML
Kierunek zaprojektowany z myślą o realiach współczesnego rynku IT – uczysz się tego, czego dziś oczekują pracodawcy: zaawansowanego programowania w Pythonie, pracy z najpopularniejszymi bibliotekami (NumPy, Pandas, Matplotlib), projektowania i trenowania modeli machine learning i deep learning w PyTorch, wdrażania usług AI przez REST API z wykorzystaniem FastAPI, konteneryzacji z Dockerem i skalowania rozwiązań w Kubernetesie.
Odpowiadamy na potrzeby rynku
Każdy uczestnik studiów będzie miał okazję zrealizować projekty, które mogą być wykorzystane jako portfolio zawodowe. To nie tylko ćwiczenia akademickie, ale rzeczywiste rozwiązania technologiczne, które odzwierciedlają obecne wyzwania branży AI, które będą najlepszym potwierdzeniem zdobytych kompetencji.

Adresaci studiów
Nasze studia nie są adresowane do osób poczatkujących, nieposiadających doświadczenia programistycznego. Jeśli masz wątpliwości czy posiadasz kompetencje wystarczające do efektywnego udziału w zajęciach, skontaktuj się z nami.

Studia skierowane są do:
- programistów i inżynierów oprogramowania, którzy chcą specjalizować się w tworzeniu rozwiązań z zakresu sztucznej inteligencji i uczenia maszynowego,
- specjalistów IT poszukujących wiedzy o projektowaniu i wdrażaniu modeli AI w środowiskach produkcyjnych,
- osób technicznych pragnących uzupełnić swoje kompetencje o praktyczne umiejętności w obszarze ML i AI,
- studentów kierunków technicznych i informatycznych, którzy posiadają już wiedzę z zakresu matematyki, informatyki lub inżynierii i chcieliby poszerzyć swoje umiejętności w obszarze ML i AI,
- osób, które już pracują w branży AI/ML (na stanowiskach Data Scientist/Data Analyst) zajmujących się analizą danych, uczeniem algorytmów i ich ewaluacją, które chcą rozwinąć się w obszarze implementacji systemów i aplikacji AI i ich wdrożeniem na środowiska produkcyjne.
Dlaczego warto studiować inżynierię AI?
To kierunek dla osób, które chcą zdobyć praktyczne umiejętności w zakresie sztucznej inteligencji i uczenia maszynowego, oparte na realnych potrzebach rynku pracy. Program oferuje nowoczesne technologie, solidne przygotowanie do pracy w branży oraz możliwość nauki od doświadczonych specjalistów aktywnych zawodowo.
Praktyczne kompetencje
Nauczysz się programować, budować modele AI, analizować dane i wdrażać rozwiązania w środowisku produkcyjnym.
Nowoczesne technologie
Będziesz pracować z narzędziami wykorzystywanymi w branży, takimi jak Python, PyTorch, FastAPI, Docker, Kubernetes i MLflow.
Zorientowanie na rynek
Program odpowiada aktualnym potrzebom firm z sektora IT i sztucznej inteligencji – przygotowuje do konkretnych ról zawodowych.
Doświadczeni wykładowcy
Uczysz się od praktyków, którzy zawodowo realizują projekty AI i ML.
Portfolio i doświadczenie
Tworzysz projekty, które wzmacniają Twoje CV i zwiększają szanse na rynku pracy.
Rozwój zawodowy
Rozwijasz swoją ścieżkę zawodową przy wsparciu ekspertów i środowiska branżowego.
Profil absolwenta studiów z inżynierii AI
Absolwent studiów podyplomowych z inżynierii AI zdobędzie wiedzę teoretyczną i umiejętności praktyczne w zakresie:
Programowania i inżynierii oprogramowania:
- Będzie rozumiał zaawansowane techniki programowania w Pythonie, w tym wykorzystanie wyrażeń listowych, generatorów i dekoratorów do tworzenia efektywnego i czytelnego kodu.
- Opanuje zasady programowania obiektowego, włączając projektowanie klas, dziedziczenie, polimorfizm, a także zastosowanie wzorców projektowyc.
- Pozna nowoczesne praktyki inżynierii oprogramowania, takie jak SOLID, wstrzykiwanie zależności (dependency injection) oraz stosowanie typów statycznych (type annotations) w celu poprawy jakości, czytelności i testowalności kodu.
- Będzie potrafił efektywnie przetwarzać i analizować dane przy użyciu bibliotek NumPy i Pandas, rozumiejąc techniki wektoryzacji obliczeń, czyszczenia i transformacji zbiorów danych.
- Opanuje metody wizualizacji danych z użyciem Matplotlib, umożliwiające tworzenie przejrzystych, złożonych wykresów wspomagających proces analizy.
- Zrozumie fundamentalne koncepcje uczenia maszynowego, takie jak modele regresyjne, k-NN, drzewa decyzyjne, lasy losowe, metody regularyzacji, zarządzanie przeuczeniem.
- Nauczy się oceniać jakość i dopasowanie modeli, dokonywać optymalizacji, wdrażać potoki przetwarzania danych oraz stosować inżynierię cech w celu poprawy dokładności i skuteczności prognoz.
Analizy danych i uczenia maszynowego:
Głębokiego uczenia i sztucznej inteligencji:
- Zdobędzie praktyczne umiejętności budowy, trenowania i optymalizacji głębokich sieci neuronowych przy użyciu frameworka PyTorch.
- Pozna zasady działania perceptronów wielowarstwowych, sieci konwolucyjnych (CNN) do analizy obrazów i rekurencyjnych (RNN) do przetwarzania tekstu.
- Zrozumie techniki transfer learning, pozwalające wykorzystać już wytrenowane modele do rozwiązywania nowych problemów, zarówno w dziedzinie wizji komputerowej, jak i przetwarzania języka naturalnego.
- Pozna nowoczesne architektury (transformery), narzędzia i biblioteki (HuggingFace), duże modele językowe (LLM) oraz ich zastosowanie w przetwarzaniu języka naturalnego.
- Będzie potrafił projektować i implementować usługi AI dostępne przez REST API (m.in. w FastAPI), z uwzględnieniem walidacji danych wejściowych, mechanizmów cache’owania i zarządzania zadaniami w tle.
- Zrozumie podstawy komunikacji sieciowej, protokołów oraz znaczenie HTTP w integracji systemów AI.
- Pozna zasady konteneryzacji aplikacji (Docker), tworzenia i optymalizacji obrazów, zarządzania kontenerami oraz wdrażania i skalowania systemów w Kubernetes.
- Będzie umiał konfigurować komponenty Kubernetes (deployment, services, ingress), zarządzać zasobami, testować obciążeniowo wdrożone aplikacje oraz wykorzystywać autoskalowanie (HPA) do dynamicznej adaptacji mocy obliczeniowej.
- Nauczy się stosować dobre praktyki MLOps, zarządzania eksperymentami (MLflow), wersjonowania modeli i dokumentacji procesów w celu zapewnienia reprodukowalności, stabilności oraz wysokiej jakości wdrożeń AI/ML.
Wdrażania i utrzymywania systemów AI:
Zasady rekrutacji i opłaty za studia
Sprawdź szczegółowe zasady rekrutacji na studia podyplomowe – dowiedz się, jakie dokumenty są wymagane, kiedy rozpoczyna się i kończy nabór, jakie są kryteria przyjęć, a także poznaj aktualne informacje o kosztach studiów.
Sprawdź zasady rekrutacji
Program studiów
Nowoczesne technologie, praktyczne umiejętności, realne zastosowania.
Zapoznaj się z programem studiów Inżynieria uczenia maszynowego i sztucznej inteligencji, opartym na realiach branży IT.
1. Programowanie w Pythonie
1. Zaawansowane zastosowanie wyrażeń listowych w optymalizacji kodu.
2. Generatory – tworzenie efektywnych i pamięciooszczędnych struktur danych.
3. Mechanizmy przekazywania argumentów w funkcjach, w tym parametry pozycyjne i nazwane.
4. Obsługa wyjątków jako element zapewnienia niezawodności aplikacji.
5. Wykorzystanie dekoratorów w rozszerzaniu funkcjonalności funkcji i klas.
6. Zasady programowania obiektowego: definiowanie klas, dziedziczenie, polimorfizm.
7. Organizacja projektu z użyciem modułów i środowisk wirtualnych.
2. Przetwarzanie i wizualizacja danych
1. Praca z biblioteką NumPy – operacje na tablicach wielowymiarowych i optymalizacja obliczeń dzięki wektoryzacji.
2. Analiza i transformacja danych tabelarycznych z wykorzystaniem biblioteki Pandas.
3. Tworzenie wykresów i wizualizacja danych za pomocą Matplotlib – od podstawowych wizualizacji po zaawansowane wykresy.
3. Uczenie maszynowe
1. Wprowadzenie do uczenia maszynowego – budowanie modeli, przewidywanie wyników.
2. Podstawowe algorytmy: regresja liniowa i metoda najbliższych sąsiadów (k-NN).
3. Metody optymalizacji i oceny jakości modeli regresyjnych.
4. Usprawnienie modeli poprzez transformacje danych wejściowych.
5. Radzenie sobie z przeuczeniem modeli dzięki technikom regularyzacji.
6. Koncepcja i implementacja potoków uczenia maszynowego.
7. Klasyfikacja danych – ewaluacja modeli, zastosowanie regresji logistycznej.
8. Algorytmy oparte na drzewach decyzyjnych: lasy losowe, bagging, analiza działania komitetów modeli.
9. Proces czyszczenia danych i inżynierii cech dla lepszej jakości predykcji.
10. Tworzenie zaawansowanych potoków w scikit-learn z integracją różnych etapów przetwarzania i uczenia modeli.
4. Zaawansowane programowanie w Pythonie
1. Rozbudowane aspekty programowania obiektowego: dziedziczenie, kompozycja, klasy abstrakcyjne oraz mixiny jako narzędzie zwiększające modularność kodu.
2. Wykorzystanie dependency injection w celu poprawy testowalności i elastyczności aplikacji.
3. Zasady projektowania zgodne z SOLID oraz dobre praktyki w tworzeniu czystego i czytelnego kodu.
4. Zastosowanie zaawansowanych mechanizmów, takich jak dataclasses i Enum, do zarządzania danymi i stanami aplikacji.
5. Wprowadzenie do wzorców projektowych umożliwiających tworzenie bardziej skalowalnych i zrozumiałych systemów.
6. Anotacje typów (type annotations) jako narzędzie zwiększające czytelność i bezpieczeństwo kodu.
7. Automatyzacja testowania kodu z wykorzystaniem biblioteki pytest.
8. Tworzenie współbieżnych i asynchronicznych aplikacji w Pythonie z użyciem async/await oraz bibliotek takich jak asyncio.
5. Implementacja systemów AI
1. Produkcyjne podejście do implementacji komponentów AI/ML z wykorzystaniem paradygmatu obiektowego.
2. Projektowanie i budowa kompleksowych potoków uczenia maszynowego, gotowych do wdrożenia w środowisku produkcyjnym.
3. Zarządzanie eksperymentami AI/ML – planowanie, monitorowanie i analiza wyników w procesie iteracyjnym.
4. Dokumentowanie procesów i wyników eksperymentów z użyciem narzędzia MLflow.
5. Zapewnienie reprodukowalności eksperymentów poprzez standaryzację procesów i narzędzi.
6. Wersjonowanie modeli uczenia maszynowego w celu utrzymania porządku i kontroli nad ich rozwojem i wdrożeniami.
6. Głębokie sieci neuronowe
1. Wprowadzenie do PyTorch – podstawy frameworka oraz jego możliwości w implementacji głębokich sieci neuronowych.
2. Zasada działania metody spadku gradientu w procesie uczenia sieci neuronowych oraz techniki optymalizacji.
3. Perceptron wielowarstwowy – fundamenty budowy i działania sztucznych sieci neuronowych.
4. Zastosowanie konwolucyjnych sieci neuronowych (CNN) do przetwarzania i analizy obrazów.
5. Techniki reprezentacji słów za pomocą word embeddings w zadaniach przetwarzania tekstu.
6. Przetwarzanie języka naturalnego (NLP) – klasyfikacja tekstów za pomocą rekurencyjnych sieci neuronowych (RNN).
7. Przegląd podstawowych zagadnień w dziedzinie NLP oraz systematyzacja dostępnych metod.
8. Sieci generujące tekst i modele językowe oparte na strukturach typu decoder only.
9. Wprowadzenie do architektury transformera, która stała się standardem w nowoczesnym NLP.
10. Transfer learning z wykorzystaniem modelu BERT oraz narzędzi biblioteki HuggingFace do szybkiej adaptacji modeli językowych.
11. Duże modele językowe (LLM) – analiza zastosowań i wyzwań związanych z rozwojem LLM.
12. Wprowadzenie do dziedziny widzenia komputerowego (CV) – przegląd najważniejszych problemów i metod.
13. Transfer learning w analizie obrazów – zastosowanie gotowych modeli w nowych zadaniach rozpoznawania obrazów.
14. Techniki augmentacji obrazów – rozszerzanie zbiorów danych uczących poprzez manipulację danymi wejściowymi.
15. Detekcja obiektów na obrazach – algorytmy i metody identyfikacji obiektów w wizji komputerowej.
16. Praktyczne wykorzystanie zasobów open-source w implementacji zaawansowanych rozwiązań AI.
7. Wdrażanie rozwiązań AI
1. Porównanie frameworków do implementacji API – wybór narzędzi w kontekście integracji systemów AI.
2. Zrozumienie podstaw komunikacji sieciowej, w tym architektury protokołów i ruchu w sieci.
3. Szczegółowa analiza protokołu HTTP – jego fundamenty i zastosowanie w interakcjach klient-serwer.
4. Składowe protokołu HTTP – metody, nagłówki i kody statusów oraz ich rola w wymianie informacji.
5. Implementacja REST API w FastAPI, z uwzględnieniem narzędzi takich jak Pydantic do walidacji danych wejściowych.
6. Zarządzanie zadaniami w tle (Background Tasks) w kontekście aplikacji API.
7. Zastosowanie cache’owania w celu optymalizacji wydajności API.
8. Wprowadzenie do kontenerów – ich cechy, zalety oraz różnice w porównaniu do tradycyjnych maszyn wirtualnych.
9. Tworzenie kontenerów w Dockerfile – podstawy, składnia i dobre praktyki.
10. Zarządzanie kontenerami – uruchamianie, zatrzymywanie, monitorowanie logów i zasobów, praca z kontenerem w środowisku produkcyjnym.
11. Konfiguracja i optymalizacja plików .dockerignore oraz zarządzanie kontekstem Dockera.
12. Zrozumienie warstw kontenera oraz techniki optymalizacji procesu budowania.
13. Kubernetes – podstawowe cechy, zalety oraz wyzwania związane z jego zastosowaniem w systemach AI.
14. Wprowadzenie do sieci w Kubernetes – pojęcia IP, portów, DNS, oraz ich rola w integracji usług.
15. Komponenty w Kubernetes i ich implementacja:
• Namespaces – organizacja zasobów w przestrzeniach nazw w klastrze Kubernetes.
• Pod – jednostka alokacji procesów w klastrze, zarządzanie replikami aplikacji.
• Deployment – mechanizm zarządzania liczbą replik oraz ich aktualizacjami.
• Service – konfiguracja komunikacji pomiędzy komponentami aplikacji oraz udostępnianie usług w klastrze.
• Ingress – konfiguracja przekierowywania zapytań do odpowiednich usług w klastrze.
• Health, Readiness, Startup Probing – monitorowanie i zapewnianie ciągłości działania usług.
• Requests, Limits – definiowanie zasobów wymaganych przez usługi w klastrze Kubernetes.
• Autoscalowanie serwisów opartych o ML (HPA) – automatyczne skalowanie aplikacji w odpowiedzi na zapotrzebowanie.
16. Testy obciążeniowe – przeprowadzanie testów obciążeniowych z wykorzystaniem narzędzi takich jak Locu.
17. Dobre praktyki w wdrażaniu rozwiązań ML w Kubernetes – podejście do optymalizacji, monitoringu i zarządzania środowiskiem produkcyjnym w kontekście systemów AI.
Wykładowcy
Zajęcia prowadzone są przez praktyków, którzy na co dzień realizują projekty AI w różnych sektorach przemysłu. Dzięki temu uczestnicy zdobywają wiedzę popartą przykładami z rzeczywistych zastosowań. Szczególny nacisk kładziony jest na rozwiązywanie problemów, które pojawiają się na etapie wdrażania modeli oraz ich optymalizacji w środowisku produkcyjnym.