Master theses: Difference between revisions
No edit summary |
No edit summary |
||
(15 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== | __NOTOC__ | ||
This Web page contains on-going and finished master theses. Thanks to all the candidates below that did (or are doing) great work! | |||
If you are looking to prepare a master thesis under my supervision, please check [[Theses topics|available theses topics or propose your own idea]]. | |||
== 2022 == | |||
{{Thesis | |||
|Naslov=Avtomatska gradnja korpusa in ekstrakcija relacij v slovenščini | |||
|NaslovEng=Automatic corpus construction and relation extraction for Slovene | |||
|Avtor=Miha Štravs | |||
|Opis=Iskanje relacij med entitetami v besedilu je področje obdelave naravnega jezika. Pri iskanju relacij želimo v stavku: "Ljubljana je glavno mesto Slovenije" odkriti, da med entitetama Ljubljana in Slovenija nastopa relacija glavno mesto. | |||
:V zaključnem delu smo najprej naredili pregled metod za učenje modelov za napovedovanje relacij. Nato smo si izbrali tri metode z različnimi pristopi za učenje modelov, ki napovedujejo relacije. Metodo s povratno nevronsko mrežo z dolgim kratkoročnim spominom, metodo z vložitvami BERT in metodo RECON, ki uporabi grafovsko nevronsko mrežo s pozornostjo. Za učenje modelov smo uporabili slovenski korpus, ki smo ga polavtomatsko generirali iz besedil slovenske Wikipedije. Naučene modele smo nato testirali na testnem korpusu besedil slovenske Wikipedije in testnem korpusu člankov strani 24ur.com. Na testnem korpusu slovenske Wikipedije so vse tri metode dosegle visoke priklice in točnosti, najbolje se je odrezala metoda RECON. Veliko slabše rezultate so dosegle na testni množici člankov 24ur.com, kjer se je še najbolje izkazala metoda z vložitvami BERT, ko je uporabila vložitve CroSloEngual. | |||
|KljucneBesede=ekstrakcija relacij, ekstrakcija informacij, globoko učenje, grafovske mreže pozornosti, BERT, LSTM | |||
|KljucneBesedeEng=relation extraction, information extraction, deep learning, graph attention networks , BERT, LSTM | |||
|Komentar= | |||
|Viri=[{{filepath:4415.pdf}} Magistrsko delo], [https://github.com/RSDO-DS3/SloREL Izvorna koda] | |||
}} | |||
== 2021 == | |||
{{Thesis | {{Thesis | ||
|Naslov= | |Naslov=Integracija verige blokov in tehnologij semantičnega spleta | ||
|NaslovEng= | |NaslovEng=Integration of blockchain and semantic web technologies | ||
|Avtor= | |Avtor=Domen Gašperlin | ||
|Opis= | |Opis=[[File:Screenshot 2022-08-03 at 16.43.01.png|600px|right]]Cilj semantičnega spleta je standardizacija izmenjave podatkov na spletu. Za njihovo predstavitev se uporabljajo ontologije. Gradnja ontologije je cikličen proces, ki zahteva usklajevanje in koordinacijo njenih sprememb s strani strokovnjakov z različnih področij. Za to je ključno sledenje, od kod so prišle spremembe in kdo jih je naredil. Prav tako s spreminjanjem ontologije ne smemo porušiti njene konsistentnosti. Namen dela je izboljšanje procesa gradnje ontologije z razvojem rešitve za njeno upravljanje in distribucijo. Rešitev poskrbi, da se s spremembami ontologije ne poruši njena konsistentnost. Za svoje delovanje uporablja tehnologije semantičnega spleta in verige blokov. Tehnologije semantičnega spleta se uporablja za učinkovito poizvedovanje in spreminjanje podatkov, za varno shrambo ontologij in sledljivosti njihovih sprememb pa se uporablja verige blokov. Na koncu je na podmnožici ontologije DBpedia evalvirano, kakšna je cena uporabe rešitve in kakšna je njena časovna zahtevnost v primerjavi s knjižnico Apache Jena. Rezultati pokažejo, da je rešitev počasnejša, a primerljiva, kot če bi se uporabilo zgolj knjižnico Apache Jena. Rešitev je z določenimi spremembami primerna tudi za implementacijo za druge tipe podatkovnih baz. | ||
|KljucneBesede= | |KljucneBesede=semantični splet, veriga blokov, ontologije, IPFS, Ethereum | ||
|KljucneBesedeEng= | |KljucneBesedeEng= | ||
|Komentar= | |Komentar=semantic web, blockchain, ontologies, IPFS, Ethereum | ||
|Viri= | |Viri= | ||
[{{filepath:63150096-Domen Gašperlin-dispozicija.pdf}} Dispozicija], [{{filepath:63150096-Domen Gašperlin-Integracija verige blokov in tehnologij semantičnega spleta.pdf}} Magistrsko delo], [https://github.com/UL-FRI-Zitnik/blockchain-based-ontology-database Izvorna koda], [{{filepath:Infor490.pdf}} Znanstveni članek] | |||
}} | }} | ||
{{Thesis | |||
|Naslov=Preprečevanje neželenih komentarjev za spletne novice s pomočjo tehnik za procesiranje naravnega jezika | |||
|NaslovEng=Preventing unwanted comments to online news articles using natural language processing techniques | |||
|Avtor=Martin Čebular | |||
|Opis=[[File:Screenshot 2022-08-03 at 16.41.16.png|400px|left]]Completely Automated Public Turing test to tell Computers and Humans Apart (v nadaljevanju CAPTCHA) je test, katerega cilj je ločiti človeškega uporabnika od računalnika. Na spletu se test CAPTCHA navadno pojavi ob obrazcu, kot zaščita pred samodejnim izpolnjevanjem in oddajanjem obrazca. Kot najbolj znano obliko testa CAPTCHA omenimo test, v okviru katerega je reševalcu podana slika s popačenim besedilom, reševalčeva naloga pa je razpoznati črke ali besede z dane slike. | |||
:V magistrskem delu se posvetimo testom oziroma nalogam CAPTCHA v tekstovni obliki. Zasnujemo in implementiramo sistem CAPTCHA, katerega naloge temeljijo na tehnikah obdelave naravnega jezika. Predstavimo dva tipa tovrstnih nalog CAPTCHA: naloge na podlagi prepoznavanja imenskih entitet in naloge na podlagi razreševanja koreferenčnosti. Sistem CAPTCHA zasnujemo razširljivo, kar omogoča enostavno vpeljavo novih tipov nalog vanj. Implementiramo tudi odjemalca CAPTCHA, uporabniški vmesnik, ki ga lahko umestimo v spletni obrazec in reševalcem omogoča reševanje nalog. Uporabo sistema CAPTCHA skupaj z odjemalcem prikažemo na primeru integracije, izdelanem v okviru magistrskega dela. | |||
:Uporabo demonstriramo tudi z umestitvijo odjemalca CAPTCHA v obrazec za oddajo komentarja na spletnem portalu RTVSLO.si. Implementirani sistem skupaj z odjemalcem omogoča celostno izvedbo postopka verifikacije človeške interakcije uporabnikov. Evalviramo njegovo učinkovitost in skalabilnost, dostopnost odjemalca CAPTCHA slepim in slabovidnim uporabnikom, ter potencialne možnosti za gradnjo novih učnih množic iz zbranih podatkov, ki nastanejo z uporabo sistema. | |||
|KljucneBesede=CAPTCHA, dokaz o človeški interakciji, prepoznavanje imenskih entitet, odkrivanje koreferenčnosti | |||
|KljucneBesedeEng=CAPTCHA, human-interaction proof, named entity recognition, coreference resolution | |||
|Komentar= | |||
|Viri= | |||
[{{filepath:63150073-Martin Čebular-dispozicija.pdf}} Dispozicija], [{{filepath:63150073-Martin Čebular-Preprečevanje neželenih komentarjev za spletne novice s pomočjo tehnik za procesiranje naravnega jezika.pdf}} Magistrsko delo], [https://github.com/UL-FRI-Zitnik/MartinCebular-text-captcha-mag Izvorna koda] | |||
}} | |||
{{Thesis | {{Thesis | ||
|Naslov=Avtomatska ekstrakcija podatkov o zaposlenih s spletišč podjetij | |Naslov=Avtomatska ekstrakcija podatkov o zaposlenih s spletišč podjetij | ||
|NaslovEng=Automatic extraction of employee data from corporate websites | |NaslovEng=Automatic extraction of employee data from corporate websites | ||
|Avtor=Matej Koplan | |Avtor=Matej Koplan | ||
|Opis=V tem delu se ukvarjamo s problemom ekstrakcije seznama oseb s poljubnega spletišča. V ta namen implementiramo spletnega pajka za identifikacijo potencialnih podstrani z osebami in ekstraktor podatkov, ki s poljubne spletne strani izvleče podatke o osebah. | |Opis=[[File:Screenshot 2022-08-03 at 16.47.23.png|300px|right]]V tem delu se ukvarjamo s problemom ekstrakcije seznama oseb s poljubnega spletišča. V ta namen implementiramo spletnega pajka za identifikacijo potencialnih podstrani z osebami in ekstraktor podatkov, ki s poljubne spletne strani izvleče podatke o osebah. | ||
:Pokažemo, da osnovne metode, kot so primerjava imena s seznamom imen, ne dosežejo sprejemljive natančnosti. Pokažemo, da je analiza strukture seznama in prenos odkritega znanja ključna metoda za izboljšavo rezultatov do stopnje, kjer dosežemo sprejemljiv nivo natančnosti. S pomočjo tega pristopa smo izboljšali F1 mero za 50 % na razvojni in za 35 % na skriti testni množici. | :Pokažemo, da osnovne metode, kot so primerjava imena s seznamom imen, ne dosežejo sprejemljive natančnosti. Pokažemo, da je analiza strukture seznama in prenos odkritega znanja ključna metoda za izboljšavo rezultatov do stopnje, kjer dosežemo sprejemljiv nivo natančnosti. S pomočjo tega pristopa smo izboljšali F1 mero za 50 % na razvojni in za 35 % na skriti testni množici. | ||
Line 31: | Line 64: | ||
|NaslovEng=Identification of changes between source code and frontend during development of a Web application | |NaslovEng=Identification of changes between source code and frontend during development of a Web application | ||
|Avtor=Jošt Gombač | |Avtor=Jošt Gombač | ||
|Opis=Tekom razvoja spletnih aplikacij se lahko zgodi, da katero izmed prej implementiranih funkcionalnosti nehote spremenimo. Pravilnost delovanja programa skozi celoten potek razvoja navadno preverjamo z regresijskimi testi. Priprava teh lahko terja velik časovni vložek. Dodatno pa jih je potrebno prilagoditi spremembam, ki so pričakovane. Kot odgovor tej problematiki smo implementirali programsko orodje, s pomočjo katerega bo možno zaznati razlike med dvema različicama iste spletne aplikacije. | |Opis=[[File:Screenshot 2022-08-03 at 16.38.42.png|300px|right]]Tekom razvoja spletnih aplikacij se lahko zgodi, da katero izmed prej implementiranih funkcionalnosti nehote spremenimo. Pravilnost delovanja programa skozi celoten potek razvoja navadno preverjamo z regresijskimi testi. Priprava teh lahko terja velik časovni vložek. Dodatno pa jih je potrebno prilagoditi spremembam, ki so pričakovane. Kot odgovor tej problematiki smo implementirali programsko orodje, s pomočjo katerega bo možno zaznati razlike med dvema različicama iste spletne aplikacije. | ||
:Naš pristop vključuje uporabo spletnega pajka, ki je sposoben odkrivati dinamično generirano vsebino preko uporabniških akcij, kot je izpolnjevanje obrazcev in klikanje elementov. Na podlagi pridobljenih HTML dokumentov nato upoštevajoč drevesno strukturo ugotovi medsebojne razlike. V namen interpretacije ugotovljenih sprememb smo implementirali spletno aplikacijo, ki kronološko prikazuje vse razlike med uveljavitvami v Git repozitoriju. | :Naš pristop vključuje uporabo spletnega pajka, ki je sposoben odkrivati dinamično generirano vsebino preko uporabniških akcij, kot je izpolnjevanje obrazcev in klikanje elementov. Na podlagi pridobljenih HTML dokumentov nato upoštevajoč drevesno strukturo ugotovi medsebojne razlike. V namen interpretacije ugotovljenih sprememb smo implementirali spletno aplikacijo, ki kronološko prikazuje vse razlike med uveljavitvami v Git repozitoriju. | ||
Line 46: | Line 79: | ||
|NaslovEng=Smart assistant for suggesting meals | |NaslovEng=Smart assistant for suggesting meals | ||
|Avtor=Janez Eržen | |Avtor=Janez Eržen | ||
|Opis=Izdelava pametnih asistentov zahteva implementacijo sistemov za zajem podatkov, prepoznavanje namena, ekstrakcijo podatkov, priporočilne sisteme ipd. V magistrskem delu smo izdelali celostnega pametnega asistenta za predlaganje obrokov, bolj podrobno pa smo se osredotočili na prepoznavanje alergenov in hranil vsebovanih v jedeh glede na delno strukturirane podatke o menijih na spletnih straneh restavracij. Z namenom reševanja omenjenega problema smo razvili algoritem za ločevanje besedila menija na posamezne jedi vsebovane v njem, algoritem za detekcijo alergenov iz besedila na podlagi pravil ter algoritem za detekcijo alergenov z uporabo nevronske mreže. | |Opis=[[File:Screenshot 2022-08-03 at 16.37.05.png|500px|right]]Izdelava pametnih asistentov zahteva implementacijo sistemov za zajem podatkov, prepoznavanje namena, ekstrakcijo podatkov, priporočilne sisteme ipd. V magistrskem delu smo izdelali celostnega pametnega asistenta za predlaganje obrokov, bolj podrobno pa smo se osredotočili na prepoznavanje alergenov in hranil vsebovanih v jedeh glede na delno strukturirane podatke o menijih na spletnih straneh restavracij. Z namenom reševanja omenjenega problema smo razvili algoritem za ločevanje besedila menija na posamezne jedi vsebovane v njem, algoritem za detekcijo alergenov iz besedila na podlagi pravil ter algoritem za detekcijo alergenov z uporabo nevronske mreže. | ||
:Omenjene algoritme smo uporabili za implementacijo pametnega asistenta, ki uporabniku omogoča obogaten in prilagojen prikaz dnevno pridobljenih jedilnikov s spleta. Asistent je integriran v različne sisteme sporočanja (Microsoft Teams, Discord, Slack ter Facebook Messenger), pogovor z uporabnikom pa poteka v slovenskem jeziku. | :Omenjene algoritme smo uporabili za implementacijo pametnega asistenta, ki uporabniku omogoča obogaten in prilagojen prikaz dnevno pridobljenih jedilnikov s spleta. Asistent je integriran v različne sisteme sporočanja (Microsoft Teams, Discord, Slack ter Facebook Messenger), pogovor z uporabnikom pa poteka v slovenskem jeziku. | ||
Line 60: | Line 93: | ||
|NaslovEng=Predicting Roll-Call Voting of Political Parties in European parliament | |NaslovEng=Predicting Roll-Call Voting of Political Parties in European parliament | ||
|Avtor=Miha Nahtigal | |Avtor=Miha Nahtigal | ||
|Opis=Evropski parlament je politično telo, ki že dolgo časa razdvaja javnost. Njegovi nasprotniki po eni strani trdijo, da je tako politično in kulturno heterogen organ nezmožen učinkovitega delovanja, po drugi strani pa naj bi evropski poslanci hitro izgubili stik s svojimi volivci ter glasovali predvsem tako, kot jim to naročijo vodje skupin. Zanimalo nas je, če evropski poslanci glasujejo dovolj avtomatično in predvidljivo, da bi lahko rezultate glasovanj uspešno napovedovali z modelom strojnega učenja. Da smo zmanjšali časovno kompleksnost smo se odločili za napovedovaje rezultatov glasovanj po političnih strankah. Najprej smo implementirali spletne pajke, s katerimi smo pridobili čim več rezultatov glasovanj in z njimi povezanih podatkov. Iz teh smo nato z interdisciplinarno kombinacijo metod podatkovnega rudarjenja ter strokovnega geopolitičnega znanja izluščili značilke in zgradili model. | |Opis=[[File:Screenshot 2022-08-03 at 16.44.30.png|300px|left]]Evropski parlament je politično telo, ki že dolgo časa razdvaja javnost. Njegovi nasprotniki po eni strani trdijo, da je tako politično in kulturno heterogen organ nezmožen učinkovitega delovanja, po drugi strani pa naj bi evropski poslanci hitro izgubili stik s svojimi volivci ter glasovali predvsem tako, kot jim to naročijo vodje skupin. Zanimalo nas je, če evropski poslanci glasujejo dovolj avtomatično in predvidljivo, da bi lahko rezultate glasovanj uspešno napovedovali z modelom strojnega učenja. Da smo zmanjšali časovno kompleksnost smo se odločili za napovedovaje rezultatov glasovanj po političnih strankah. Najprej smo implementirali spletne pajke, s katerimi smo pridobili čim več rezultatov glasovanj in z njimi povezanih podatkov. Iz teh smo nato z interdisciplinarno kombinacijo metod podatkovnega rudarjenja ter strokovnega geopolitičnega znanja izluščili značilke in zgradili model. | ||
:Rezultati so pokazali približno 80% uspešnost napovedovanja rezultatov glasovanj (uteženi oceni f1 in roc-auc). Napovedovanje je bilo bistveno bolj uspešno pri strankah s proevropsko,liberalno in globalistično politično usmeritvijo kot to velja za evroskeptične, ekonomsko socialne in nacionalistične stranke. S tem smo dodatno podprli tezo o obstoju in pomembnosti nove nacionalistično-globalistične politične delitve. Poleg tega predstavlja problem tudi razred vzdržanih glasovanj, ki ga je težko napovedati že s pomočjo človeške inteligence. | :Rezultati so pokazali približno 80% uspešnost napovedovanja rezultatov glasovanj (uteženi oceni f1 in roc-auc). Napovedovanje je bilo bistveno bolj uspešno pri strankah s proevropsko,liberalno in globalistično politično usmeritvijo kot to velja za evroskeptične, ekonomsko socialne in nacionalistične stranke. S tem smo dodatno podprli tezo o obstoju in pomembnosti nove nacionalistično-globalistične politične delitve. Poleg tega predstavlja problem tudi razred vzdržanih glasovanj, ki ga je težko napovedati že s pomočjo človeške inteligence. | ||
Line 120: | Line 153: | ||
|Naslov=Pridobivanje konteksta z uporabo spletnih brskalnikov | |Naslov=Pridobivanje konteksta z uporabo spletnih brskalnikov | ||
|Avtor=Marko Jurinčič | |Avtor=Marko Jurinčič | ||
|Opis=Današnje inteligentne aplikacije morajo za svoje delovanje beležiti in uporabljati kontekst uporabnika. Zamislite si pristop, kako čim bolj natančno modelirati kontekst določenega uporabnika. Cilj je, da iz ugotovljenih virov pridobite trenutno relevantne teme (besede) za uporabnika. Uporabljate lahko čim več virov, ki jih lahko: na primer zvok, slika, video uporabnika, pisanje. Primer vašega dela: Implementacija orodne vrstice v iskalniku Firefox, ki ima možnost beleženja in shranjevanja različnih parametrov (čas na določeni spletni strani, interakcija z drugimi programi). Podobna orodna vrstica je implementirana znotraj Lemur Project-a, ki si gradi t.i. query-log. Mogoče tudi beleženje konteksta preko aplikacije pametnega telefona. | |Opis=[[File:Screenshot 2022-08-03 at 16.32.33.png|300px|right]]Današnje inteligentne aplikacije morajo za svoje delovanje beležiti in uporabljati kontekst uporabnika. Zamislite si pristop, kako čim bolj natančno modelirati kontekst določenega uporabnika. Cilj je, da iz ugotovljenih virov pridobite trenutno relevantne teme (besede) za uporabnika. Uporabljate lahko čim več virov, ki jih lahko: na primer zvok, slika, video uporabnika, pisanje. Primer vašega dela: Implementacija orodne vrstice v iskalniku Firefox, ki ima možnost beleženja in shranjevanja različnih parametrov (čas na določeni spletni strani, interakcija z drugimi programi). Podobna orodna vrstica je implementirana znotraj Lemur Project-a, ki si gradi t.i. query-log. Mogoče tudi beleženje konteksta preko aplikacije pametnega telefona. | ||
|KljucneBesede=kontekst, vtičnik, podatkovno rudarjenje | |KljucneBesede=kontekst, vtičnik, podatkovno rudarjenje | ||
|Komentar=Usmerjanje in pomoč pri mentorstvu prof. dr. Marka Bajca. Gre za diplomsko nalogo enake stopnje bolonjskemu magisteriju. | |Komentar=Usmerjanje in pomoč pri mentorstvu prof. dr. Marka Bajca. Gre za diplomsko nalogo enake stopnje bolonjskemu magisteriju. | ||
|Viri=[{{filepath:Diplomska_MarkoJurincic.pdf}} Diplomsko delo] [{{filepath:IzvornaKoda_MarkoJurincic.zip}} Izvorna koda] | |Viri=[{{filepath:Diplomska_MarkoJurincic.pdf}} Diplomsko delo] [{{filepath:IzvornaKoda_MarkoJurincic.zip}} Izvorna koda] | ||
}} | |||
== Teme v izdelavi == | |||
{{Thesis | |||
|Naslov=Ekstrakcija informacij iz zdravstvenih dokumentov | |||
|NaslovEng=Extracting information from medical documents | |||
|Avtor=Matic Bernik | |||
|Opis= | |||
|KljucneBesede= | |||
|KljucneBesedeEng= | |||
|Komentar= | |||
|Viri=[{{filepath:63120139-Matic Bernik-dispozicija.pdf}} Dispozicija] | |||
}} | |||
{{Thesis | |||
|Naslov=Avtomatska prepoznava in digitalizacija obrazcev | |||
|NaslovEng=Automatic recognition and digitalisation of forms | |||
|Avtor=Robert Tovornik | |||
|Opis= | |||
|KljucneBesede= | |||
|KljucneBesedeEng= | |||
|Komentar= | |||
|Viri=[{{filepath:63120292-Robert Tovornik-dispozicija.pdf}} Dispozicija] | |||
}} | |||
{{Thesis | |||
|Naslov=Avtomatsko povzemanje pravnih besedil | |||
|NaslovEng=Automatic summarization of legal documents | |||
|Avtor=Andrej Miščič | |||
|Opis= | |||
|KljucneBesede= | |||
|KljucneBesedeEng= | |||
|Komentar= | |||
|Viri=[{{filepath:63160228-Andrej Miščič-dispozicija.pdf}} Dispozicija] | |||
}} | |||
{{Thesis | |||
|Naslov=Samonadzorovano odkrivanje anomalij v produkcijskih dnevniških zapisih | |||
|NaslovEng=Self-supervised anomaly detection in production log streams | |||
|Avtor=Tomaž Martinčič | |||
|Opis= | |||
|KljucneBesede= | |||
|KljucneBesedeEng= | |||
|Komentar=V sodelovanju s somentorjem iz industrije - mag. Álvaro García Faura (XLAB) | |||
|Viri=[{{filepath:63160211-Tomaž Martinčič-dispozicija.pdf}} Dispozicija] | |||
}} | |||
{{Thesis | |||
|Naslov=Avtomatizacija vdornega testiranja spletnih strani | |||
|NaslovEng=Web site penetration testing automation | |||
|Avtor=Gregor Kerševan | |||
|Opis= | |||
|KljucneBesede= | |||
|KljucneBesedeEng= | |||
|Komentar= | |||
|Viri=[{{filepath:63150140-Gregor Kerševan-dispozicija.pdf}} Dispozicija] | |||
}} | }} |
Latest revision as of 22:03, 3 August 2022
This Web page contains on-going and finished master theses. Thanks to all the candidates below that did (or are doing) great work!
If you are looking to prepare a master thesis under my supervision, please check available theses topics or propose your own idea.
2022
Avtomatska gradnja korpusa in ekstrakcija relacij v slovenščini (Miha Štravs)
Automatic corpus construction and relation extraction for Slovene
- Iskanje relacij med entitetami v besedilu je področje obdelave naravnega jezika. Pri iskanju relacij želimo v stavku: "Ljubljana je glavno mesto Slovenije" odkriti, da med entitetama Ljubljana in Slovenija nastopa relacija glavno mesto.
- V zaključnem delu smo najprej naredili pregled metod za učenje modelov za napovedovanje relacij. Nato smo si izbrali tri metode z različnimi pristopi za učenje modelov, ki napovedujejo relacije. Metodo s povratno nevronsko mrežo z dolgim kratkoročnim spominom, metodo z vložitvami BERT in metodo RECON, ki uporabi grafovsko nevronsko mrežo s pozornostjo. Za učenje modelov smo uporabili slovenski korpus, ki smo ga polavtomatsko generirali iz besedil slovenske Wikipedije. Naučene modele smo nato testirali na testnem korpusu besedil slovenske Wikipedije in testnem korpusu člankov strani 24ur.com. Na testnem korpusu slovenske Wikipedije so vse tri metode dosegle visoke priklice in točnosti, najbolje se je odrezala metoda RECON. Veliko slabše rezultate so dosegle na testni množici člankov 24ur.com, kjer se je še najbolje izkazala metoda z vložitvami BERT, ko je uporabila vložitve CroSloEngual.
- Ključne besede
- ekstrakcija relacij, ekstrakcija informacij, globoko učenje, grafovske mreže pozornosti, BERT, LSTM
- relation extraction, information extraction, deep learning, graph attention networks , BERT, LSTM
- Viri
- Magistrsko delo, Izvorna koda
2021
Integracija verige blokov in tehnologij semantičnega spleta (Domen Gašperlin)
Integration of blockchain and semantic web technologies
- Cilj semantičnega spleta je standardizacija izmenjave podatkov na spletu. Za njihovo predstavitev se uporabljajo ontologije. Gradnja ontologije je cikličen proces, ki zahteva usklajevanje in koordinacijo njenih sprememb s strani strokovnjakov z različnih področij. Za to je ključno sledenje, od kod so prišle spremembe in kdo jih je naredil. Prav tako s spreminjanjem ontologije ne smemo porušiti njene konsistentnosti. Namen dela je izboljšanje procesa gradnje ontologije z razvojem rešitve za njeno upravljanje in distribucijo. Rešitev poskrbi, da se s spremembami ontologije ne poruši njena konsistentnost. Za svoje delovanje uporablja tehnologije semantičnega spleta in verige blokov. Tehnologije semantičnega spleta se uporablja za učinkovito poizvedovanje in spreminjanje podatkov, za varno shrambo ontologij in sledljivosti njihovih sprememb pa se uporablja verige blokov. Na koncu je na podmnožici ontologije DBpedia evalvirano, kakšna je cena uporabe rešitve in kakšna je njena časovna zahtevnost v primerjavi s knjižnico Apache Jena. Rezultati pokažejo, da je rešitev počasnejša, a primerljiva, kot če bi se uporabilo zgolj knjižnico Apache Jena. Rešitev je z določenimi spremembami primerna tudi za implementacijo za druge tipe podatkovnih baz.
- Ključne besede
- semantični splet, veriga blokov, ontologije, IPFS, Ethereum
- Komentar
- semantic web, blockchain, ontologies, IPFS, Ethereum
- Viri
- Dispozicija, Magistrsko delo, Izvorna koda, Znanstveni članek
Preprečevanje neželenih komentarjev za spletne novice s pomočjo tehnik za procesiranje naravnega jezika (Martin Čebular)
Preventing unwanted comments to online news articles using natural language processing techniques
- Completely Automated Public Turing test to tell Computers and Humans Apart (v nadaljevanju CAPTCHA) je test, katerega cilj je ločiti človeškega uporabnika od računalnika. Na spletu se test CAPTCHA navadno pojavi ob obrazcu, kot zaščita pred samodejnim izpolnjevanjem in oddajanjem obrazca. Kot najbolj znano obliko testa CAPTCHA omenimo test, v okviru katerega je reševalcu podana slika s popačenim besedilom, reševalčeva naloga pa je razpoznati črke ali besede z dane slike.
- V magistrskem delu se posvetimo testom oziroma nalogam CAPTCHA v tekstovni obliki. Zasnujemo in implementiramo sistem CAPTCHA, katerega naloge temeljijo na tehnikah obdelave naravnega jezika. Predstavimo dva tipa tovrstnih nalog CAPTCHA: naloge na podlagi prepoznavanja imenskih entitet in naloge na podlagi razreševanja koreferenčnosti. Sistem CAPTCHA zasnujemo razširljivo, kar omogoča enostavno vpeljavo novih tipov nalog vanj. Implementiramo tudi odjemalca CAPTCHA, uporabniški vmesnik, ki ga lahko umestimo v spletni obrazec in reševalcem omogoča reševanje nalog. Uporabo sistema CAPTCHA skupaj z odjemalcem prikažemo na primeru integracije, izdelanem v okviru magistrskega dela.
- Uporabo demonstriramo tudi z umestitvijo odjemalca CAPTCHA v obrazec za oddajo komentarja na spletnem portalu RTVSLO.si. Implementirani sistem skupaj z odjemalcem omogoča celostno izvedbo postopka verifikacije človeške interakcije uporabnikov. Evalviramo njegovo učinkovitost in skalabilnost, dostopnost odjemalca CAPTCHA slepim in slabovidnim uporabnikom, ter potencialne možnosti za gradnjo novih učnih množic iz zbranih podatkov, ki nastanejo z uporabo sistema.
- Ključne besede
- CAPTCHA, dokaz o človeški interakciji, prepoznavanje imenskih entitet, odkrivanje koreferenčnosti
- CAPTCHA, human-interaction proof, named entity recognition, coreference resolution
- Viri
- Dispozicija, Magistrsko delo, Izvorna koda
Avtomatska ekstrakcija podatkov o zaposlenih s spletišč podjetij (Matej Koplan)
Automatic extraction of employee data from corporate websites
- V tem delu se ukvarjamo s problemom ekstrakcije seznama oseb s poljubnega spletišča. V ta namen implementiramo spletnega pajka za identifikacijo potencialnih podstrani z osebami in ekstraktor podatkov, ki s poljubne spletne strani izvleče podatke o osebah.
- Pokažemo, da osnovne metode, kot so primerjava imena s seznamom imen, ne dosežejo sprejemljive natančnosti. Pokažemo, da je analiza strukture seznama in prenos odkritega znanja ključna metoda za izboljšavo rezultatov do stopnje, kjer dosežemo sprejemljiv nivo natančnosti. S pomočjo tega pristopa smo izboljšali F1 mero za 50 % na razvojni in za 35 % na skriti testni množici.
- Ključne besede
- splet, ekstrakcija podatkov, avtomatska ekstrakcija podatkov s spleta, fokusirani spletni pajki, strukturirani podatki, nestrukturirani podatki
- web, data extraction, automatic web data extraction, focused webcrawlers, structured data, unstructured data
- Viri
- Dispozicija, Magistrsko delo
Identifikacija in povezovanje razlik med izvorno kodo in čelnim delom tekom razvoja spletne aplikacije (Jošt Gombač)
Identification of changes between source code and frontend during development of a Web application
- Tekom razvoja spletnih aplikacij se lahko zgodi, da katero izmed prej implementiranih funkcionalnosti nehote spremenimo. Pravilnost delovanja programa skozi celoten potek razvoja navadno preverjamo z regresijskimi testi. Priprava teh lahko terja velik časovni vložek. Dodatno pa jih je potrebno prilagoditi spremembam, ki so pričakovane. Kot odgovor tej problematiki smo implementirali programsko orodje, s pomočjo katerega bo možno zaznati razlike med dvema različicama iste spletne aplikacije.
- Naš pristop vključuje uporabo spletnega pajka, ki je sposoben odkrivati dinamično generirano vsebino preko uporabniških akcij, kot je izpolnjevanje obrazcev in klikanje elementov. Na podlagi pridobljenih HTML dokumentov nato upoštevajoč drevesno strukturo ugotovi medsebojne razlike. V namen interpretacije ugotovljenih sprememb smo implementirali spletno aplikacijo, ki kronološko prikazuje vse razlike med uveljavitvami v Git repozitoriju.
- Ključne besede
- spletni pajek, HTML, Git, Angular, dinamična vsebina
- web crawler, HTML, Git, Angular, dynamic content
- Viri
- Dispozicija, Magistrsko delo, Izvorna koda
2020
Pametni asistent za predlaganje obrokov (Janez Eržen)
Smart assistant for suggesting meals
- Izdelava pametnih asistentov zahteva implementacijo sistemov za zajem podatkov, prepoznavanje namena, ekstrakcijo podatkov, priporočilne sisteme ipd. V magistrskem delu smo izdelali celostnega pametnega asistenta za predlaganje obrokov, bolj podrobno pa smo se osredotočili na prepoznavanje alergenov in hranil vsebovanih v jedeh glede na delno strukturirane podatke o menijih na spletnih straneh restavracij. Z namenom reševanja omenjenega problema smo razvili algoritem za ločevanje besedila menija na posamezne jedi vsebovane v njem, algoritem za detekcijo alergenov iz besedila na podlagi pravil ter algoritem za detekcijo alergenov z uporabo nevronske mreže.
- Omenjene algoritme smo uporabili za implementacijo pametnega asistenta, ki uporabniku omogoča obogaten in prilagojen prikaz dnevno pridobljenih jedilnikov s spleta. Asistent je integriran v različne sisteme sporočanja (Microsoft Teams, Discord, Slack ter Facebook Messenger), pogovor z uporabnikom pa poteka v slovenskem jeziku.
- S preizkusom asistenta v praksi smo pokazali, da uporabnikom olajša izbiro menija ali restavracije za dnevno kosilo. Algoritem za avtomatsko ekstrakcijo alergenov z uporabo nevronske mreže dosega uspešnost 68% (ocena F1), kar je dovolj uporabno za opozarjanje uporabnika na možno vsebnost alergenov v jedi, je pa smiselno, da uporabnik to opozorilo asistenta dodatno preveri pri osebju restavracije.
- Ključne besede
- pametni asistent, obdelava naravnega jezika, ekstrakcija podatkov s spleta, prehrana, priporočanje uporabniku
- chatbot, natural language processing, web scraping, nutrition, user recommendation
- Viri
- Dispozicija, Magistrsko delo
Napovedovanje glasovanj strank v Evropskem parlamentu (Miha Nahtigal)
Predicting Roll-Call Voting of Political Parties in European parliament
- Evropski parlament je politično telo, ki že dolgo časa razdvaja javnost. Njegovi nasprotniki po eni strani trdijo, da je tako politično in kulturno heterogen organ nezmožen učinkovitega delovanja, po drugi strani pa naj bi evropski poslanci hitro izgubili stik s svojimi volivci ter glasovali predvsem tako, kot jim to naročijo vodje skupin. Zanimalo nas je, če evropski poslanci glasujejo dovolj avtomatično in predvidljivo, da bi lahko rezultate glasovanj uspešno napovedovali z modelom strojnega učenja. Da smo zmanjšali časovno kompleksnost smo se odločili za napovedovaje rezultatov glasovanj po političnih strankah. Najprej smo implementirali spletne pajke, s katerimi smo pridobili čim več rezultatov glasovanj in z njimi povezanih podatkov. Iz teh smo nato z interdisciplinarno kombinacijo metod podatkovnega rudarjenja ter strokovnega geopolitičnega znanja izluščili značilke in zgradili model.
- Rezultati so pokazali približno 80% uspešnost napovedovanja rezultatov glasovanj (uteženi oceni f1 in roc-auc). Napovedovanje je bilo bistveno bolj uspešno pri strankah s proevropsko,liberalno in globalistično politično usmeritvijo kot to velja za evroskeptične, ekonomsko socialne in nacionalistične stranke. S tem smo dodatno podprli tezo o obstoju in pomembnosti nove nacionalistično-globalistične politične delitve. Poleg tega predstavlja problem tudi razred vzdržanih glasovanj, ki ga je težko napovedati že s pomočjo človeške inteligence.
- Ključne besede
- napovedovanje, glasovanja, politične stranke, Evropski parlament
- predicting, Roll-Call votes, political parties, European parliament
- Viri
- Dispozicija, Magistrsko delo
2014
Primerjava orodij za vizualizacijo in preiskovanje omrežij (Didka Dimitrova Birova)
- Zaradi povečevanja količine in kompleksnosti podatkov uporabniki vse težje učinkovito preučujejo velike množice podatkov. Podatki so med seboj povezani in posledično lahko množico podatkov predstavimo in vizualiziramo v obliki omrežja (socialna, biološka, svetovni splet). Glavni namen vizualizacije je učinkovito posredovati in predstaviti podatke s pomočjo vizualne percepcije ter predvsem olajšati raziskovanje podatkov oziroma omrežja. Za analizo in prikaz omrežij obstaja množica orodij - nekatera pokrivajo področje analize kot tudi prikaza, specializirana orodja pa se osredotočajo samo na analizo ali samo na vizualizacijo, oziroma so lahko specializirana za določeno domeno (npr. socialna omrežja).
- V okviru naloge bi bilo potrebno narediti primerjavo in evaluacijo orodij za vizualizacijo omrežij – kakšne so omejitve, performance, možnosti za razširitev in dopolnjevanje obstoječih orodij.
- Ključne besede
- vizualizacija podatkov, omrežja, primerjava orodij
- Komentar
- Usmerjanje in pomoč pri mentorstvu prof. dr. Marka Bajca. Gre za diplomsko nalogo enake stopnje bolonjskemu magisteriju.
- Viri
- Diplomsko delo
2013
Označevanje imenskih entitet v pravnih besedilih (Matic Di Batista)
- Odkrivanje podatkov iz besedil velja za eno izmed aktualnih podpodročij v okviru obdelave tekstovnih podatkov. Za slovenski jezik še nimamo dovolj prilagojenih pristopov ali ogromnih podatkovnih množic iz katerih bi lahko zgradili praktično uporabne metode za odkrivanje entitet. Namen diplomske naloge ja zato izdelava orodja, ki bo znalo odkrivati imenske entitete v slovenskih besedilih.
- Kandidat naj pregleda obstoječe metode za odkrivanje entitet v besedilih in jih prilagodi za delo s slovenskim jezikom. Pri tem naj primerja njihovo delovanje in razišče morebitne probleme, ki so posledica sintakse in pravil v slovenščini. Nazadnje naj predlaga nov nabor značilk za učenje modelov in razvito metodo testira nad lastno izdelano podatkovno množico.
- Ključne besede
- ekstrakcija podatkov iz besedil, razpoznavanje entitet, tekstovno rudarjenje
- Komentar
- Usmerjanje in pomoč pri mentorstvu prof. dr. Marka Bajca. Gre za diplomsko nalogo enake stopnje bolonjskemu magisteriju.
- Viri
- Diplomsko delo
Kontekstualno ujemanje in iskanje na modelu spletne oglasne deske (Vasja Laharnar)
- Spletne oglasne deske so specializirani iskalniki, ki lahko namesto dokumentov (npr. spletne strani, slike, besedila), indeksirajo uporabnike sistema. Primer so socialni iskalniki, ki ne vrnejo neposrednega odgovora, ampak se poizvedba pošlje uporabniku, ki ga sistem spozna za relevantnega in nato le ta odgovori. Takšni iskalniki morajo torej bolj upoštevati uporabniške profile in njihove kontekste.
- V okviru diplomske naloge naj kandidat izdela spletno storitev, ki bo omogočala objavljanje besedil in njihovo iskanje. Pri tem naj kandidat preuči korake procesiranja besedil za potrebe splošnega indeksiranja. Poleg tega naj pri implementaciji iskanja in primerjanja besedil upošteva tudi semantične podatke, k jih pridobi iz besedil ali profilov uporabnikov. Nazadnje naj izdelano storitev testira na domeni študijskih praks, kjer v sistemu sodelujejo profesorji, študenti in podjetja.
- Ključne besede
- obdelava naravnega jezika, semantična podobnost, lematizacija, klasifikacija, naivni Bayesov klasifikator, iskanje informacij, iskanje, ujemanje
- Komentar
- Usmerjanje in pomoč pri mentorstvu prof. dr. Marka Bajca. Gre za diplomsko nalogo enake stopnje bolonjskemu magisteriju.
- Viri
- Diplomsko delo
2012
Semantično zajemanje podatkov iz predefiniranih virov (Alan Rijavec)
- Izdelajte komponento za zajem podatkov iz spletnih virov. Komponenta naj bo zasnovana modularno, tako da bo dodajanje novega vira zahtevalo le implementacijo določenih vmesnikov. Vhodi in rezultati naj bodo semantično označeni, tako da bo komponenta zmožna sama izvajati klice funkcij in sestavljati rezultate v obliki RDFS ali drugega semantičnega zapisa.
- Ključne besede
- spletni pajek, razčlenjevanje spletnih strani, semantični splet
- Komentar
- Usmerjanje in pomoč pri mentorstvu prof. dr. Marka Bajca. Gre za diplomsko nalogo enake stopnje bolonjskemu magisteriju.
- Viri
- Diplomsko delo Izvorna koda
2011
Pridobivanje konteksta z uporabo spletnih brskalnikov (Marko Jurinčič)
- Današnje inteligentne aplikacije morajo za svoje delovanje beležiti in uporabljati kontekst uporabnika. Zamislite si pristop, kako čim bolj natančno modelirati kontekst določenega uporabnika. Cilj je, da iz ugotovljenih virov pridobite trenutno relevantne teme (besede) za uporabnika. Uporabljate lahko čim več virov, ki jih lahko: na primer zvok, slika, video uporabnika, pisanje. Primer vašega dela: Implementacija orodne vrstice v iskalniku Firefox, ki ima možnost beleženja in shranjevanja različnih parametrov (čas na določeni spletni strani, interakcija z drugimi programi). Podobna orodna vrstica je implementirana znotraj Lemur Project-a, ki si gradi t.i. query-log. Mogoče tudi beleženje konteksta preko aplikacije pametnega telefona.
- Ključne besede
- kontekst, vtičnik, podatkovno rudarjenje
- Komentar
- Usmerjanje in pomoč pri mentorstvu prof. dr. Marka Bajca. Gre za diplomsko nalogo enake stopnje bolonjskemu magisteriju.
- Viri
- Diplomsko delo Izvorna koda
Teme v izdelavi
Ekstrakcija informacij iz zdravstvenih dokumentov (Matic Bernik)
Extracting information from medical documents
- Viri
- Dispozicija
Automatic recognition and digitalisation of forms
- Viri
- Dispozicija
Avtomatsko povzemanje pravnih besedil (Andrej Miščič)
Automatic summarization of legal documents
- Viri
- Dispozicija
Samonadzorovano odkrivanje anomalij v produkcijskih dnevniških zapisih (Tomaž Martinčič)
Self-supervised anomaly detection in production log streams
- Komentar
- V sodelovanju s somentorjem iz industrije - mag. Álvaro García Faura (XLAB)
- Viri
- Dispozicija
Avtomatizacija vdornega testiranja spletnih strani (Gregor Kerševan)
Web site penetration testing automation
- Viri
- Dispozicija