Тип работы:
Предмет:
Язык работы:


Создание системы для автоматизации сбора и обработки данных для машинного обучения

Работа №125725

Тип работы

Бакалаврская работа

Предмет

программирование

Объем работы65
Год сдачи2021
Стоимость4850 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
19
Не подходит работа?

Узнай цену на написание


Введение 4
Список терминов 6
Постановка задачи 7
Обзор литературы 8
Глава 1. Обзор инструментов для разметки данных 12
1.1. Amazon Mechanical Turk 12
1.2. Yandex Toloka 12
1.3. LabelMe 12
1.4. CVAT 13
1.5. Amazon SageMaker Ground Truth 13
Глава 2. Сбор требований 15
2.1. Бизнес-требования 15
2.2. Требования пользователей 15
2.3. Функциональные требования 16
2.4. Нефункциональные требования 18
Глава 3. Программная архитектура приложения 20
3.1. Общее описание архитектуры 20
3.2. Компоненты приложения 21
3.3. Сценарии взаимодействия микросервисов 27
3.3.1 Сценарий ручной разметки 28
3.3.2 Сценарий обучения модели 30
3.3.3 Сценарий автоматической разметки 32
3.4. Отказоустойчивость приложения 34
Глава 4. Разработка прототипа 36
4.1. Ограничения прототипа 36
4.2. Технологический стек 37
4.3. Протоколы коммуникации 39
4.4. Алгоритм назначения заданий 39
4.5. Агрегация разметки 42
4.6. Автоматическая разметка 45
4.7. Демонстрация разработанного приложения 46
Глава 5. Анализ разработанного прототипа 47
5.1. Теоретическая оценка ускорения процесса ручной разметки 47
5.2. Тестирование приложения 51
Вывод 52
Заключение 54
Список литературы 55
Приложение 1. Примеры методов API 58
Приложение 2. Примеры сообщений 61
Приложение 3. Демонстрация приложения 63

В последние годы машинное обучение нашло свое применения во многих отраслях человеческой деятельности, в том числе и в научных исследованиях. Обучение с учителем, как частный случай машинного обучения, является одним из популярных подходов для решения множества практических и исследовательских задач. Однако успех применения алгоритмов обучения с учителем зависит от количества и качества имеющихся данных. Данные, необходимые для обучения с учителем, должны быть размечены, то есть каждый элемент данных должен быть снабжен некоторой меткой, которую впоследствии алгоритм будет предсказывать. Отсутствие размеченных данных, их малый объем или низкое качество могут стать серьезной проблемой для использования алгоритмов машинного обучения.
Сбор и накопление размеченных данных зачастую является узким ме­стом в научных исследованиях или же в практических задачах, связанных с применением машинного обучения. Как правило, процесс разметки дан­ных требует кропотливой ручной работы множества экспертов, при котором возникают проблема человеческого фактора - принятие человеком неверных решений - и, как следствие, проблема снижения качества получаемых в резуль­тате работы экспертов данных. Стоит добавить, что процесс ручной разметки является крайне трудоемким, а объемы данных, которые необходимо разме­тить могут достигать сотни тысяч элементов. По указанным выше причинам, многие исследовательские группы заинтересованы в оптимизации процесса разметки данных.
Можно выделить два основных направления оптимизации процесса ручной разметки данных - это ускорение процесса и повышение качества разметки получаемых в результате работы экспертов данных. На текущий момент существует множество программных инструментов, решающих в той или иной степени задачи ускорении разметки и повышения качества собираемых данных. О популярности и важности этих задач также говорит большое количество современных публикаций и множество разрабатываемых методов, связанных с качественным улучшением процесса разметки данных.
В рамках научных исследований, к инструментам разметки данных могут предъявляться следующие ключевые требования:
• Инструмент должен распространяться под открытой лицензией.
• Приложение может быть легко установлено на локальный компьютер пользователя, либо же развернуто в локальной компьютерной сети организации.
• Приложение предлагает большой набор инструментов для выполнения различных задач по разметке данных.
• Приложение предполагает многопользовательский режим работы.
• В приложении используются различные современные методы для уско­рения процесса разметки данных.
• Архитектура приложение позволяет легко масштабировать инструмент под решение новых задач.
• Приложение может горизонтально масштабироваться при увеличении количества пользователей или объема размечаемых данных.
• Приложение осуществляет контроль целостности и качества данных.
• Отказоустойчивость приложения.
На данный момент среди инструментов разметки данных отсутствуют те, которые в полной мере удовлетворяют всем перечисленным ключевым требованиям.
Целью данной работы является проектирование архитектуры инстру­мента для автоматизации процесса ручной разметки данных, отвечающего указанным ключевым требованиям. Сферой применения данного инструмен­та предполагается сфера научных исследований, связанных с применением машинного обучения.

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В рамках данной работы была разработана архитектура инструмента для автоматизации процесса разметки наборов данных, которая обеспечивает масштабируемость и отказоустойчивость системы. На основе предложенной программной архитектуры был разработан прототип инструмента автоматизи­рованной разметки данных. Осуществлен теоретический расчет ускорения, которое может обеспечить схема полуавтоматической разметки данных в реализованном прототипе. В выводе были отмечены основные направления развития разработанного приложения.


[1] Alexey Drutsa и др. «Practice of efficient data collection via crowdsourcing at large-scale». в: arXiv (2019), с. 1—9. ISSN: 23318422. arXiv: 1912.04444.
[2] Carsten Rother, Vladimir Kolmogorov и Andrew Blake. «"GrabCut Interactive foreground extraction using iterated graph cuts». в: ACM Transactions on Graphics 23.3 (2004), с. 309—314. ISSN: 07300301. DOI: 10.1145/101570 6.1015720.
[3] Xuebin Qin и др. «ByLabel: A boundary based semi-automatic image annotation tool». в: Proceedings - 2018 IEEE Winter Conference on Appli­cations of Computer Vision, WACV 2018 2018-Janua (2018), с. 1804—1813. DOI: 10.1109/WACV.2018.00200.
[4] Lluis Castrejon и др. «Annotating object instances with a polygon-RNN». в: Proceedings - 30th IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2017 2017-Janua (2017), с. 4485—4493. DOI: 10.1109 /CVPR.2017.477. arXiv: 1704.05548.
[5] Bryan C Russell и др. «LabelMe: A Database and Web-Based Tool for Image Annotation». в: International Journal of Computer Vision 77.1 (2008), с. 157—173. ISSN: 1573-1405. DOI: 10.1007/s11263-007-0090-8. URL: https://doi.org/10.1007/s11263-007-0090-8.
[6] R.A. Gilyazev и D.Y. Turdakov. «Active learning and crowdsourcing: a survey of annotation optimization methods». в: Proceedings of the Institute for System Programming of the RAS 30.2 (2018), с. 215—250. ISSN: 20798156. DOI: 10.15514/ispras-2018-30(2)-11.
[7] Nguyen Quoc Viet Hung и др. «An evaluation of aggregation techniques in crowdsourcing». в: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) 8181 LNCS.PART 2 (2013), с. 1—15. ISSN: 03029743. DOI: 10.1007/978- 3-642-41154-0_1.
[8] Burr Settles. Active Learning Literature Survey. Computer Sciences Technical Report 2. University of Wisconsin-Madison, 2010, с. 201—221. DOI: 10.1 .1.167.4245.
[9] Elmar Haussmann и др. «Scalable Active Learning for Object Detection». в: IEEE Intelligent Vehicles Symposium, Proceedings (2020), с. 1430—1435. DOI: 10.1109/IV47402.2020.9304793. arXiv: 2004.04699.
[10] Joseph Redmon и др. «You only look once: Unified, real-time object detection». в: Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition 2016-Decem (2016), с. 779—788. ISSN: 10636919. DOI: 10.1109/CVPR.2016.91. arXiv: 1506.02640.
[11] Joseph Redmon и Ali Farhadi. «YOLO9000: Better, faster, stronger». в: Proceedings - 30th IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2017 2017-Janua (2017), с. 6517—6525. DOI: 10.1109 /CVPR.2017.690. arXiv: 1612.08242.
[12] Joseph Redmon и Ali Farhadi. «YOLOv3: An Incremental Improvement». в: (2018). arXiv: 1804.02767. URL: http://arxiv.org/abs/1804.02767.
[13] Alexey Bochkovskiy, Chien-Yao Wang и Hong-Yuan Mark Liao. «YOLOv4: Optimal Speed and Accuracy of Object Detection». в: (2020). arXiv: 2004.1 0934. URL: http://arxiv.org/abs/2004.10934.
[14] Wei Liu и др. «SSD: Single shot multibox detector». в: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) 9905 LNCS (2016), с. 21—37. ISSN: 16113349. DOI: 10.1007/978-3-319-46448-0_2. arXiv: 1512.02325.
[15] Jocelyn C. Adams и др. «Grouper: Optimizing Crowdsourced Face Anno- tations». в: IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops June (2016), с. 163—170. ISSN: 21607516. DOI: 10.1109/CVPRW.2016.27.
...


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ