Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
seml:seml [2024/02/04 17:15]
user
seml:seml [2025/02/19 16:59] (current)
user
Line 1: Line 1:
 ===== Программная инженерия для анализа данных ===== ===== Программная инженерия для анализа данных =====
 +
 +Где читается: [[https://intsystems.github.io/ru/education/ | кафедра ИАД ФПМИ МФТИ]], магистратура, 1 курс, бакалавриат, 4 курс.
  
 В курсе рассматриваются вопросы разработки систем обработки данных и машинного обучения.  В курсе рассматриваются вопросы разработки систем обработки данных и машинного обучения. 
Line 14: Line 16:
   * Процессы и виды работ в проекте анализа данных (PROC)   * Процессы и виды работ в проекте анализа данных (PROC)
   * Обеспечение повторяемости результатов (PROC)   * Обеспечение повторяемости результатов (PROC)
-  * Тестирование наукоемкого ПО (TEST)+  * Тестирование наукоемкого ПО и верификация систем ML (TEST)
  
-{{:seml:seml-topics.doc|Список тем}} для подготовки к зачету.+Примерный {{:seml:seml-topics.doc|список тем}} для подготовки к зачету.
  
  
-==== План курса (2020) ====+==== План курса (2025) ====
  
 ^№^Тема^ ^№^Тема^
Line 29: Line 31:
 |6.| Повторное использование. Объектные методы. Структуры репозиториев. | |6.| Повторное использование. Объектные методы. Структуры репозиториев. |
 |7.| Тестирование систем анализа данных. Методы модульного тестирования. Инструменты автоматизации поставки, контейнеризация. | |7.| Тестирование систем анализа данных. Методы модульного тестирования. Инструменты автоматизации поставки, контейнеризация. |
-|8.| Тестирование инвариантами. Adversarial testing. Тестирование наукоемкого ПО. | +|8.| Тестирование инвариантами. Атаки с соперником на модели ML. Методы противодействия. | 
-|9.| Проблема повторяемости экспериментов. Что входит в эксперимент. Конфигурация. Лаборатория данных | +|9.| Проблема повторяемости экспериментов. Гипотезы и планирование эксперимента. Конфигурация. Лаборатория данных | 
-|10.| Продуктивизация ML в виде сервисов. Реализация микросервисов в Python для поставки моделей. Создание API. Принципы REST и HATEOAS. | +|10.| Хранение данных. Релационная, колоночная, документная и др. модели. Транзакции ACID. Распределенные СУБД. CAP и BASE. | 
-|11.| Хранение данных. Релационная, колоночная, документная и др. модели. Транзакции ACID. Распределенные СУБД. CAP и BASE. | +|11.| Продуктивизация ML в виде сервисов. Реализация микросервисов в Python для поставки моделей. Создание API. Принципы REST и HATEOAS
-|12.| Технологии параллельной обработки данныхMaster/Slave, MapReduce, RDD(Spark)Если успеем - Kubernetes (pods, svcs, jobs, etc ) для размещения ML сервисов. | +|12.| Облачные приложения. Инфраструктура Kubernetes (pods, svcs, jobs, etc ) для размещения ML сервисов. | 
-|13.| Технологии GitOps, MLOps. Технологии сжатия и ускорение моделей. Средства представления API моделей. Стандартные протоколы. |+|13.| Технологии GitOps, MLOps. Элементы технологий сжатия и ускорения моделей. Средства представления API моделей. Стандартные протоколы. |
  
  
Line 59: Line 61:
  
 ==== Литература ==== ==== Литература ====
 +
 +=== Основная литература ===
  
   - Материалы лекций   - Материалы лекций
   - Davy Cielen, Arno D.B. Meysman, Mohamed Ali. Introducing Data Science (book)   - Davy Cielen, Arno D.B. Meysman, Mohamed Ali. Introducing Data Science (book)
   - NoSQL Distilled (book)   - NoSQL Distilled (book)
-  - A Survey on NoSQL Stores (2018) ACM CSUR (paper)+  - Poulton, N., 2023. The kubernetes book. NIGEL POULTON LTD. (book)
   - Kanewala U., Bieman J.M. Testing scientific software: A systematic literature review (paper)   - Kanewala U., Bieman J.M. Testing scientific software: A systematic literature review (paper)
   - Gerardo Cerda Neumann, Héctor Antillanca Espina, Víctor Parada Daza. Development of Scientific Software and Practices for Software Development A Systematic Literature Review (paper)   - Gerardo Cerda Neumann, Héctor Antillanca Espina, Víctor Parada Daza. Development of Scientific Software and Practices for Software Development A Systematic Literature Review (paper)
   - The Art of Software Testing - Second Edition (book)   - The Art of Software Testing - Second Edition (book)
 +  - Serban, A., Poll, E., & Visser, J. (2020). Adversarial examples on object recognition: A comprehensive survey. ACM Computing Surveys (CSUR), 53(3), 1-38.
   - Tarek Ziade. Python Microservices Development (book)   - Tarek Ziade. Python Microservices Development (book)
   - ГОСТ Р ИСО/МЭК 25010-2015. Модели качества (standard)   - ГОСТ Р ИСО/МЭК 25010-2015. Модели качества (standard)
 +
 +=== Дополнительные статьи ===
 +
 +  - Yakusheva, S. F., & Khritankov, A. S. (2024). A systematic review of methods for deriving metamorphic relations. Программные системы: теория и приложения, 15(2), 37-86. (paper)
 +  - A Survey on NoSQL Stores (2018) ACM CSUR (paper)
   - Test your Machine Learning Algorithm with Metamorphic Testing https://trustable.ai/testing-ai-metamorphic-testing/ (paper)   - Test your Machine Learning Algorithm with Metamorphic Testing https://trustable.ai/testing-ai-metamorphic-testing/ (paper)
-  - Recent developments in Adversarial Example https://trustable.ai/recent-developments-in-adversarial-example-part-i/ (paper) 
   - MapReduce Design Patterns. Book. Donald Miner, Adam Shook (book)   - MapReduce Design Patterns. Book. Donald Miner, Adam Shook (book)
   - (2018) On Reproducible AI: Towards Reproducible Research, Open Science, and Digital Scholarship in AI Publications (paper)   - (2018) On Reproducible AI: Towards Reproducible Research, Open Science, and Digital Scholarship in AI Publications (paper)
 +  - Recent developments in Adversarial Example https://trustable.ai/recent-developments-in-adversarial-example-part-i/ (paper)
  
 ==== Контакты ==== ==== Контакты ====