Karta Przedmiotu
| Politechnika Białostocka | Wydział Informatyki | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Kierunek studiów | Data Science |
Poziom i forma studiów |
pierwszego stopnia stacjonarne |
||||||||||||||||||||||||
| Grupa przedmiotów / specjalność |
Profil kształcenia | ogólnoakademicki | |||||||||||||||||||||||||
| Nazwa przedmiotu | MLOps w technologiach AI | Kod przedmiotu | DS1S3MLO | ||||||||||||||||||||||||
| Rodzaj zajęć | obowiązkowy | ||||||||||||||||||||||||||
| Formy zajęć i liczba godzin | W | Ć | L | P | Ps | T | S | Semestr | 3 | ||||||||||||||||||
| 30 | 30 | Punkty ECTS | 5 | ||||||||||||||||||||||||
| Program obowiązuje od | 2025/2026 | ||||||||||||||||||||||||||
| Przedmioty wprowadzające | Przegląd metod i narzędzi AI (DS1S2PMN), Rachunek prawdopodobieństwa (DS1S2RPR), Wprowadzenie do systemu Linux (DS1S1WSL), | ||||||||||||||||||||||||||
| Cele przedmiotu |
Przekazanie kompleksowej wiedzy z zakresu administracji systemami, konteneryzacji i praktyk DevOps w kontekście systemów AI/ML. Rozwój praktycznych umiejętności w zakresie tworzenia, zarządzania i budowania nowoczesnych środowisk na potrzeby procesów Artificial Intelligence / Machine Learning. Wpływ konsumpcji zasobów infrastruktury oraz sposobu składowania danych w kontekście zasad zrównoważonego rozwoju. Odniesienia do frameworka edukacyjnego mikrokompetencji SFIA: IT Infrastructure ITOP - poziom 4 Availability Management AVMT - poziom 3 Programming/Software Development PROG - poziom 3 Systems Installation/Decommissioning HSIN - poziom 3 Release and Deployment RELM - poziom 3 Software Development Process Improvement SPIM - poziom 4 Data Management DATM - poziom 3 Machine Learning MLNG - poziom 3 |
||||||||||||||||||||||||||
| Ramowe treści programowe | Konteneryzacja i orkiestracja, modele abstrakcji środowiska uruchomieniowego. Porównanie wybranych platform. Problemy systemów rozproszonych, algorytmy konsensusu, redundancja i wysokiej dostępności. Infrastructure as Code (IaC), konfiguracja i provisioning zasobów w wybranych platformach. Ciągła integracja i dostarczanie (CI/CD), strategie wdrożeniowe, automatyzacja procesów wdrożeniowych i baking warstw kodu. Zarządzanie procesami uczenia maszynowego, wersjonowanie danych i modeli, inżynieria cech, ewaluacja modeli AI. Wdrożenie modeli do produkcji. Bezpieczeństwo systemów i modeli AI. Wpływ konsumpcji zasobów infrastruktury oraz sposobu składowania danych w kontekście zasad zrównoważonego rozwoju. | ||||||||||||||||||||||||||
| Inne informacje o przedmiocie | treści przedmiotu odwołują się do zasad zrównoważonego rozwoju | ||||||||||||||||||||||||||
| przedmiot ma związek z prowadzoną na Uczelni działalnością naukową | |||||||||||||||||||||||||||
| przedmiot kształtuje umiejętności praktyczne | |||||||||||||||||||||||||||
| Wyliczenie: | Nakład pracy studenta związany z: | Godzin ogółem |
W tym kontaktowych |
W tym praktycznych |
|||||||||||||||||||||||
| udziałem w wykładach | 30 | 30 | |||||||||||||||||||||||||
| udziałem w innych formach zajęć | 30 | 30 | 30 | ||||||||||||||||||||||||
| indywidualnym wsparciem merytorycznym procesu uczenia się, udziałem w zaliczeniach organizowanych poza planem zajęć | 4 | 4 | |||||||||||||||||||||||||
| przygotowaniem do zaliczenia wykładu | 10 | ||||||||||||||||||||||||||
| przygotowaniem do bieżących zajęć o charakterze praktycznym | 10 | 10 | |||||||||||||||||||||||||
| wykonaniem projektu | 41 | 41 | |||||||||||||||||||||||||
| Razem godzin: | 125 | 64 | 81 | ||||||||||||||||||||||||
| Razem punktów ECTS: | 5 | 2.6 | 3.2 | ||||||||||||||||||||||||
| Zakładane kierunkowe efekty uczenia się | Wiedza | Umiejętności | Kompetencje społeczne |
||||||||||||||||||||||||
| DS1_W03 | DS1_U04 | DS1_K05 | |||||||||||||||||||||||||
| DS1_W04 | DS1_U07 | ||||||||||||||||||||||||||
| DS1_W05 | DS1_U15 | ||||||||||||||||||||||||||
| DS1_W10 | DS1_U17 | ||||||||||||||||||||||||||
| DS1_W19 | |||||||||||||||||||||||||||
| DS1_W21 | |||||||||||||||||||||||||||
| Cele i treści ramowe sformułował(a) | dr inż. Andrzej Chmielewski, mgr inż. Kamil Zabielski | Data: | 29/05/2025 | ||||||||||||||||||||||||
| Realizacja w roku akademickim | 2026/2027 | ||||||||||||||||||||||||||
| Treści programowe | |||||||||||||||||||||||||||
| Wykład | |||||||||||||||||||||||||||
| 1. | Podstawy sieci komputerowych. Model OSI | ||||||||||||||||||||||||||
| 2. | Wybrane protokoły sieciowe | ||||||||||||||||||||||||||
| 3. | Podstawowe narzędzia diagnostyki sieci komputerowej | ||||||||||||||||||||||||||
| 4. | Treści dotyczące konteneryzacji; wyjaśnienie problematyki konteneryzacji. Wprowadzenie do technik abstrakcyjnych nad środowiskiem uruchomieniowym kontenera, różnice architektoniczne w technologiach takich jak Kubernetes, Nomad i Mesos | ||||||||||||||||||||||||||
| 5. | Problemy systemów rozproszonych (split brain), algorytmy konsensusu (Raft), problemy wysokiej dostępności oraz redundancji. Wpływ konsumpcji zasobów infrastruktury w kontekście zasad zrównoważonego rozwoju | ||||||||||||||||||||||||||
| 6. | Różnice domenowe między elementami środowiska budowania kontenera i środowiskiem uruchomieniowym kontenera | ||||||||||||||||||||||||||
| 7. | Idealny podział domenowy między środowiskiem uruchomieniowym kontenera, a środowiskiem uruchomieniowym aplikacji. Wpływ doboru zasobów w kontekście zasad zrównoważonego rozwoju | ||||||||||||||||||||||||||
| 8. | Wykorzystanie technik na rozwiązania pokroju GitLab, GitHub Actions, Azure Pipelines, AWS CodeBuild. Techniki bakingu warstw abstrakcyjnych oraz warstw kodu źródłowego | ||||||||||||||||||||||||||
| 9. | Elementy wprowadzające do uczenia maszynowego. Zarządzanie kodem z poziomu notatnika Jupytera, budowania generycznych i agnostycznych środowisk uruchomieniowych oraz deweloperskich | ||||||||||||||||||||||||||
| 10. | Procesy zarządzania modelami uczenia maszynowego. Elementy przygotowania danych, proces normalizacji danych, techniki specyficzne określonych klas cech jak stemmingizacja i lemmatizacja, techniki inżynierii cech oraz zarządzania cechami (feature store), elementy wersjonowania modelu | ||||||||||||||||||||||||||
| 11. | Badanie zdolności generycznych modelu dla klasyfikacji i regresji; tworzenie matrycy pomyłek, błąd średniokwadratowy, czułość, swoistość, dokładność, statystyka F(alfa). Procesy ewaluacji modelu, badanie regresji modelu oraz zdolności generycznych, porównywanie różnych wersji modelu | ||||||||||||||||||||||||||
| 12. | Modele wdrożenia modelu do środowiska produkcyjnego. Techniki wdrożenia modelu poprzez aplikację REST, elementy batch-processingu za pomocą Spark / Apache Airflow | ||||||||||||||||||||||||||
| 13. | Wprowadzenie do narzędzi zależnych od domeny, takich jak MLFlow / Kubeflow, Comet.ml, TensorBoard | ||||||||||||||||||||||||||
| 14. | Elementy bezpieczeństwa architektury systemu teleinformatycznego (denial of the service, oraz modelu (zatruwanie danych, techniki inwersji modelu, exploitacja progu, prompt injection) | ||||||||||||||||||||||||||
| 15. | Zaliczenie wykładu | ||||||||||||||||||||||||||
| Pracownia specjalistyczna | |||||||||||||||||||||||||||
| 1. | Konfiguracja interfejsów sieciowych oraz podstawy diagnostyki sieci komputerowych | ||||||||||||||||||||||||||
| 2. | Budowanie środowisk uruchomieniowych oraz deweloperskich z wykorzystaniem technologii konteneryzacji, na potrzeby modeli i technologii pokrewnych machine learning (4h) | ||||||||||||||||||||||||||
| 3. | Elementy orkiestracji środowiska deweloperskiego z wykorzystaniem wybranej technologii cloud-computing (np. Kubernetes, Azure Apps) (6h ) | ||||||||||||||||||||||||||
| 4. | Wdrożenie bazowych procesów ciągłej integracji i ciągłego dostarczania korzystając z dowolnego narzędzia. (Wymogiem jest element współpracy zespołowej, wzajemnego code-review oraz automatyzacja finalnego wdrożenia) (8h) | ||||||||||||||||||||||||||
| 5. | Zbudowanie procesów wersjonowania danych surowych, ekstrakcji cech, automatyzacji wdrożenia oraz monitorowania regresji modelu w czasie (8h) | ||||||||||||||||||||||||||
| 6. | Zaliczenie pracowni specjalistycznej | ||||||||||||||||||||||||||
| Metody dydaktyczne (realizacja stacjonarna) |
|||||||||||||||||||||||||||
| W | wykład problemowy; wykład informacyjny; wykład z prezentacją multimedialną | ||||||||||||||||||||||||||
| Ps | programowanie z użyciem komputera | ||||||||||||||||||||||||||
| Metody dydaktyczne (realizacja zdalna) |
|||||||||||||||||||||||||||
| W | wykład problemowy; wykład informacyjny; wykład z prezentacją multimedialną | ||||||||||||||||||||||||||
| - | |||||||||||||||||||||||||||
| Forma zaliczenia | |||||||||||||||||||||||||||
| W | zaliczenie pisemne z pytaniami testowymi i otwartymi | ||||||||||||||||||||||||||
| Ps | ocena wybranych programów realizowanych na zajęciach, ocena zadania projektowego | ||||||||||||||||||||||||||
| Warunki zaliczenia | |||||||||||||||||||||||||||
| W | Uzyskanie min. 30% punktów z każdego E1-E2, a po spełnieniu tego warunku ostateczna ocena wynika z sumy uzyskanych punktów. Kryteria oceny: [ 0 – 50]% punktów – 2.0 (50 – 60]% punktów – 3.0 (60 – 70]% punktów – 3.5 (70 – 80]% punktów – 4.0 (80 – 90]% punktów – 4.5 (90 – 100]% punktów – 5.0 |
||||||||||||||||||||||||||
| Ps | Uzyskanie min. 30% punktów z każdego E3-E5, a po spełnieniu tego warunku ostateczna ocena wynika z sumy uzyskanych punktów. Kryteria oceny: [ 0 – 50]% punktów – 2.0 (50 – 60]% punktów – 3.0 (60 – 70]% punktów – 3.5 (70 – 80]% punktów – 4.0 (80 – 90]% punktów – 4.5 (90 – 100]% punktów – 5.0 |
||||||||||||||||||||||||||
| Symbol efektu | Zakładane efekty uczenia się | Odniesienie do efektów uczenia się zdefiniowanych dla kierunku studiów | |||||||||||||||||||||||||
| Wiedza | Umiejętności | Kompetencje społeczne |
|||||||||||||||||||||||||
| Wiedza: student zna i rozumie | |||||||||||||||||||||||||||
| E1 | różne modele wdrażania oprogramowania oraz stosowane w tym celu narzędzia | ||||||||||||||||||||||||||
| E2 | procesy konteneryzacji i orkiestracji oraz modele środowiska uruchomieniowego | ||||||||||||||||||||||||||
| Umiejętności: student potrafi | |||||||||||||||||||||||||||
| E3 | budować procesy ciągłego dostarczania i ciągłej integracji dla różnych modeli oprogramowania | ||||||||||||||||||||||||||
| E4 | budować środowiska oparte o technologie kontenerowe, także mając na uwadze wpływ konsumpcji zasobów infrastruktury w kontekście zasad zrównoważonego rozwoju | ||||||||||||||||||||||||||
| E5 | budować proste hurtownie modeli | ||||||||||||||||||||||||||
| E6 | analizować i badać regresję modelu uczenia maszynowego | ||||||||||||||||||||||||||
| Kompetencje społeczne: student jest gotów do | |||||||||||||||||||||||||||
| E7 | łączenia domeny technicznej z zastosowaniem biznesowym modeli AI | ||||||||||||||||||||||||||
| Symbol efektu | Sposób weryfikacji efektu uczenia się | Forma zajęć na której zachodzi weryfikacja | |||||||||||||||||||||||||
| E1 | zaliczenie pisemne | W | |||||||||||||||||||||||||
| E2 | zaliczenie pisemne | W | |||||||||||||||||||||||||
| E3 | ocena programów realizowanych na zajęciach, ocena zadania projektowego | Ps | |||||||||||||||||||||||||
| E4 | ocena programów realizowanych na zajęciach, ocena zadania projektowego | Ps | |||||||||||||||||||||||||
| E5 | ocena programów realizowanych na zajęciach, ocena zadania projektowego | Ps | |||||||||||||||||||||||||
| E6 | ocena programów realizowanych na zajęciach, ocena zadania projektowego | Ps | |||||||||||||||||||||||||
| E7 | ocena programów realizowanych na zajęciach, ocena zadania projektowego | Ps | |||||||||||||||||||||||||
| Literatura podstawowa | |||||||||||||||||||||||||||
| 1. | Podręcznik systemowy GNU Linux | ||||||||||||||||||||||||||
| 2. | P. Chudzik, Konteneryzacja z wykorzystaniem Dockera. Podstawy, Helion, Gliwice, 2024 | ||||||||||||||||||||||||||
| 3. | Y.Hattori, Pełnia możliwości DevOps, Git i GitHub. Zastosowanie podejścia opartego na automatyzacji, współpracy i innowacji, Helion, Gliwice, 2025 | ||||||||||||||||||||||||||
| 4. | A. Król-Nowak, K. Kotarba, Podstawy uczenia maszynowego, Wydawnictwo AGH, 2022 | ||||||||||||||||||||||||||
| Literatura uzupełniająca | |||||||||||||||||||||||||||
| 1. | G. Kim, P. Debois, et al, The DevOps Handbook, 2016 | ||||||||||||||||||||||||||
| 2. | P. M. Duvall, S. Matyas, A. Glover, Continuous Integration: Improving Software Quality and Reducing Risk, 2007 | ||||||||||||||||||||||||||
| 3. | I. Goodfellow, Y. Bengio, A. Courville, Deep Learning, 2016 | ||||||||||||||||||||||||||
| 4. | Google Site Reliability Workbook: https://sre.google | ||||||||||||||||||||||||||
| Koordynator przedmiotu: | dr inż. Andrzej Chmielewski, dr hab. inż. Ireneusz Mrozek | Data: | 13/10/2025 | ||||||||||||||||||||||||