Скалируемо уеб приложение за разпознаване на монети | Защитена на: 01/01/1900
Настоящата дипломна работа представя разработката на система за автоматизирана класификация на монети чрез машинно обучение. Проектът е мотивиран от нарастващата нужда от ефективни инструменти за разпознаване и анализ в нумизматиката, където традиционните методи изискват задълбочени познания и време. Системата използва TensorFlow за разработка на модел за класификация, Flask за бекенд услуги, SQL за управление на данните и HTML/CSS/JavaScript за уеб интерфейса. Разгръщането е реализирано в Kubernetes, като инфраструктурата е контейнеризирана с Docker.
Разработеният модел постига точност от 78.91%, демонстрирайки стабилна ефективност. Средното време за обработка на заявка варира от 0.2 мс локално до 2-3 секунди в облака. Системата се характеризира с ниска консумация на ресурси и устойчива работа при високи натоварвания. Потребителските тестове потвърждават бързината на обработка, точността на разпознаването и удобството на интерфейса, като препоръките включват разширяване на базата данни и персонализация.
Проектът успешно интегрира машинно обучение, облачни технологии и микросервизна архитектура, предоставяйки ефективно решение за класификация на монети. Въпреки предизвикателствата, постигнатите резултати поставят стабилна основа за бъдещи подобрения и разширяване на функционалностите на системата.
Структурата на дипломната работа е следната:
Глава 1: Увод - Очертава актуалността на темата, значимостта на проблема и мотивите за избора ѝ. Представени са целите и задачите на дипломната работа, както и очакваните ползи от реализацията на проекта.
Глава 2: Преглед на съществуващи системи и методи - Анализира съществуващите технологии и методи за класификация на монети. Разглеждат се платформи и алгоритми за машинно обучение, като се идентифицират възможностите за подобрение.
Глава 3: Избор на технологии - Обсъжда се технологичният стек на приложението, включително програмни езици, библиотеки, фреймуърки и платформи. Оценяват се предимствата и недостатъците на различни подходи спрямо нуждите на проекта.
Глава 4: Анализ на потребителските изисквания - Разглежда се процесът на дефиниране на изискванията към системата, с фокус върху функционалностите и потребителския интерфейс. Тази глава подчертава ролята на удобството и достъпността за крайния потребител.
Глава 5: Разработка на модел за машинно обучение - Описва изграждането на модела за класификация, включително събирането на данни, тяхната обработка, избора на алгоритми и обучението.
Глава 6: Създаване и интеграция на уеб интерфейс - Представя процеса на разработка на уеб интерфейса и свързването му с модела за машинно обучение. Разглеждат се предизвикателствата и решенията за предоставяне на интуитивно потребителско изживяване.
Глава 7: Тестване, оптимизация и разгръщане - Описва стратегиите за тестване, методите за оптимизация на производителността и процеса на разгръщане на приложението в Kubernetes среда.
Глава 8: Анализ на резултатите и заключение - Представя се анализ на резултатите от използването на приложението, включително обратна връзка от потребителите и оценка на ефективността му. В заключителната част се обобщават постигнатите цели и се очертават възможности за бъдещо развитие.