Course Card

null
  • Status:
  • Archiwalny od 2022

1DI2153 - Algorytmy w inżynierii danych

Nazwa w drugim języku: 
Algorithms in data science
  • Nazwa skrócona:AWID
  • Numer katalogowy:1DI2153
  • Reprezentuje kierunek: M,D,PL - Informatyka Stosowana
  • Odpowiedzialny za przedmiot: dr inż. Bartosz Chaber
  • Strona WWW przedmiotu: Info  
  • Język wykładowy:PL
  • Liczba punktów ECTS:4
  • Poziom przedmiotu: Średniozaawansowany
  • Forma zaliczenia przedmiotu:Egzamin
  • Wymiar godzin:
  • W: 30, P: 10
Cel przedmiotu: 
Celem przedmiot jest przygotowanie studentów do świadomego wykorzystywania algorytmów, metodyk programowania oraz środowisk programistycznych ukierunkowanych na przetwarzanie i analizę danych numerycznych. Ukończenie przedmiotu umożliwi studentom tworzenie rzeczywistych aplikacji uwzględniających analizę danych pomiarowych, symulacyjnych oraz z zakresu statystyki i systemów rekomendacyjnych. Przedmiot ma za zadanie przygotować słuchaczy do krytycznego doboru, dostosowanego do konkretnego zagadnienia metod numerycznych oraz ich implementacji w nowoczesnych językach programowania. Zasadniczym celem jest przygotowanie do samodzielnej analizy i implementacji algorytmów z naciskiem na ich zajętość pamięciową oraz złożoność obliczeniową.
Treści kształcenia: 
* Wprowadzenie do nowoczesnych języków przetwarzania danych (Python, Julia)
* Metodyka przetwarzania danych (praca interaktywna, skryptowa oraz tworzenie systemów przetwarzania danych)
* Przetwarzanie danych statystycznych (rodzaje regresji)
* Systemy uczące (ang. Machine Learning) z nauczycielem i bez nauczyciela
* Algorytmy przetwarzania danych tekstowych
* Implementacja algorytmów geometrycznych (struktury danych do przechowywania danych topologicznych)
* Modelowanie układów dynamicznych (na przykładzie wyznaczania optymalnej trasy z predykcją czasu osiągnięcia celu)
* Programowanie dynamiczne, algorytmy zachłanne
* Problemy NP-zupełne
Bibliografia: 
1. Cormen Thomas H., Leiserson Charles E., Rivest Ronald L, Clifford Stein, Wprowadzenie do algorytmów, 2018
2. Martin Kleppmann, Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems, 2017, O’Reilly Media, 2017, ISBN: 1449373321, 9781449373320
3. Mykel Kochenderfer, Tim Wheeler, Algorithms for Optimization, MIT Press, 2019, ISBN: 0262039427, 978-0262039420
4. Chris Rackauckas †, ""A Deep Introduction to Julia for Data Science and Scientific Computing"", url: http://ucidatascienceinitiative.github.io/IntroToJulia/, dostęp: 27.02.2020.
5. Ben Lauwens, Allen Downey, 2018, ""Think Julia"", url: https://benlauwens.github.io/ThinkJulia.jl/latest/book.html, dostęp: 27.02.2020
Metody oceny: 
Ocena końcowa jest wystawiana na podstawie pisemnego testu oraz oceny zrealizowanego projektu. Projekt końcowy musi być dostarczony w formie raportu oraz musi zostać obroniony w formie prezentacji.
Uwagi: 
-
Przedmioty na których bazuje dany przedmiot (prerekwizyty):