Mid Sweden University

miun.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
DeployML: En plattform för träning och distribution av ML-modeller
Mid Sweden University, Faculty of Science, Technology and Media, Department of Computer and Electrical Engineering (2023-).
2025 (Swedish)Independent thesis Basic level (university diploma), 10 credits / 15 HE creditsStudent thesis
Abstract [en]

The goal of this project has been to develop a platform for training and utilizing machine learning models, with the aim of making this technology more accessible to a broader audience without requiring advanced technical skills. The platform, named DeployML, automates the entire workflow, from dataset upload and dataset cleaning to algorithm selection, model training, and deployment, and makes the trained models available both through a user interface and automatically generated API endpoints. The theoretical foundation includes different types of machine learning, as well as technologies such as Scikit-learn for algorithm implementation, Pandas for data manipulation, PostgreSQL for data storage, FastAPI for web API development with OAuth2-based authentication, and Angular 19 with RxJS for frontend development. The system is built as a full-stack web application, featuring a REST API developed in Python with FastAPI, and a client application in Angular. PostgreSQL database is used to manage user data, API keys, and model training information. Six machine learning algorithms from Scikit-learn were implemented (Random Forest, K Nearest Neighbors, and Logistic Regression, for both classification and regression), with dynamic import of algorithms using Python’s importlib module. Authentication and authorization are handled using FastAPI Users, OAuth2, and JWT. The application was tested for accessibility using WAVE and Lighthouse and validated according to W3C standards. The results show that all defined objectives have been met: users can upload training data with automatic validation and cleaning, train models, and use them directly via the interface or through secure API calls. Trained models can also be downloaded. The platform demonstrated good performance and high accessibility in testing. Ethical and social considerations were addressed, particularly regarding data privacy, user control over data, and responsible model usage. The conclusion is that the project successfully delivered a technically robust and ethically sound platform that supports the democratization of machine learning. Certain limitations were noted, such as a 10 MB file size limit for training data and restricted performance/load testing due to server constraints. 

Abstract [sv]

Målet med detta projekt har varit att utveckla en plattform för träning och användning av maskininlärningsmodeller, med syftet att göra teknologin mer tillgänglig för en bredare målgrupp utan krav på avancerad teknisk kompetens. Plattformen, benämnd DeployML, automatiserar hela arbetsflödet, från datauppladdning och förbehandling till algoritmval, modellträning och användning av färdiga modeller, och gör dessa tillgängliga både via användargränssnittet och genom automatiskt genererade API-sökvägar. Arbetets teoretiska grund omfattar olika former av maskininlärning, samt teknologier som Scikit-learn för algoritmimplementering, Pandas för datamanipulation, PostgreSQL för datalagring, FastAPI för webbtjänstutveckling med OAuth2 baserad autentisering och Angular 19 med RxJS för klientapplikationsutveckling. Systemet är uppbyggt som en fullstack-webbapplikation med en REST-baserad webbtjänst i Python (FastAPI) och en klientapplikation i Angular. PostgreSQL hanterar användardata, API-nycklar och modellträningsinformation. Sex maskininlärningsalgoritmer från Scikit-learn har implementerats (Random Forest, K-Nearest Neighbors och logistisk regression, både för klassificering och regression), med dynamisk import av algoritmer via importlib. Autentisering och auktorisering hanteras med FastAPI Users, OAuth2 och JWT. Applikationen har testats med avseende på tillgänglighet via WAVE och Lighthouse, och validerats enligt W3C:s riktlinjer. Arbetet visar att samtliga uppsatta mål har uppnåtts: användare kan ladda upp träningsdata med automatisk validering och förbehandling, träna modeller, samt använda modellerna direkt via gränssnittet eller genom externa API-anrop med säker autentisering. Modeller kan också laddas ner. Plattformen har uppvisat god prestanda och hög tillgänglighet enligt tester. Etiska och sociala aspekter har beaktats, särskilt vad gäller skydd av personuppgifter, användarkontroll över data och syftet med modellernas användning. Slutsatsen är att projektet resulterat i en tekniskt stabil och etiskt genomtänkt plattform som bidrar till att demokratisera tillgången till maskininlärning. Vissa begränsningar noterades, såsom filstorleksgränsen på 10 MB för träningsdata och begränsade möjligheter till belastningstester på grund av resurstillgång i den valda servermiljön. 

Place, publisher, year, edition, pages
2025. , p. 75
Keywords [sv]
Angular, FastAPI, maskininlärning, PostgreSQL, Python, Sciket learn, tillgänglighet, REST-webbtjänst, webbapplikation.
National Category
Computer Engineering
Identifiers
URN: urn:nbn:se:miun:diva-54739Local ID: DT-V25-G2-006OAI: oai:DiVA.org:miun-54739DiVA, id: diva2:1975714
Subject / course
Computer Engineering DT1
Educational program
Web Development TWEUG 120 higher education credits
Supervisors
Examiners
Available from: 2025-06-24 Created: 2025-06-24 Last updated: 2025-09-25Bibliographically approved

Open Access in DiVA

No full text in DiVA

Search in DiVA

By author/editor
Azrooni, Homam
By organisation
Department of Computer and Electrical Engineering (2023-)
Computer Engineering

Search outside of DiVA

GoogleGoogle Scholar

urn-nbn

Altmetric score

urn-nbn
Total: 36 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf