Naslov Određivanje dobi osoba u slikama lica
Naslov (engleski) Age Estimation of Persons in Facial Images
Autor David Ergović
Mentor Tomislav Hrkać (mentor)
Član povjerenstva Tomislav Hrkać (predsjednik povjerenstva)
Član povjerenstva Vjeko Kužina (član povjerenstva)
Član povjerenstva Eugen Vušak (član povjerenstva)
Ustanova koja je dodijelila akademski / stručni stupanj Sveučilište u Zagrebu Fakultet elektrotehnike i računarstva Zagreb
Datum i država obrane 2021-09-01, Hrvatska
Znanstveno / umjetničko područje, polje i grana TEHNIČKE ZNANOSTI Računarstvo
Sažetak Problem određivanja dobi na temelju slika lica riješen je uporabom duboke konvolucijske mreže s 5 konvolucijskih slojeva, 5 slojeva sažimanja, 5 normalizacijskih slojeva i 3 potpuno povezana sloja. Problemu se pristupilo višeklasnom klasifikacijom gdje je model trebao prediktirati dob osobe na slici u 8 dobnih skupina. IMDB-WIKI je korišteni skup podataka, a on se podijelio na skup uzoraka za učenje, validacijski i testni skup. Postupak učenja koristi mini grupe veličine 128 slika koje se propagiraju kroz mrežu unaprijed sve do izlaznog sloja mreže. Na izlazu iz mreže računa se funkcija gubitka, a korištena je unakrsna entropija kojom se provjerava koliko model griješi. Optimizacijski algoritam nastojao je minimizirati funkciju gubitka, a prilikom učenja je koristio gradijent kao informaciju kojom je provodio ažuriranje težina u modelu. Gradijenti su se računali unatražnim prolazom od izlaznog do ulaznog sloja modela. Korišteni algoritam je proširenje stohastičkog gradijentnog spusta, a zove se Adam. Slike nad kojima se model učio bile su veličine 128 x 128 na ulazu, a na izlazu, zbog raznih linearnih transformacija poput konvolucije, su smanjene na 4 x 4. Da ne bi došlo do prenaučenosti modela u njega su eksplicitno ugrađene dvije regularizacijske tehnike: regularizacija L2 normom vektora parametara modela i rano zaustavljanje koje je na temelju generalizacijske pogreške odlučivalo o nastavku ili prekidu treninga. Također, model osjeti implicitne efekte regularizacije koje su vezane uz korištenje normalizacije nad grupom slika nakon svakog konvolucijskog sloja. Ovakvim pristupom problemu postignuta je točnost modela od 35%, a uspoređujući s točnosti ispitanih ljudi može se reći da model dobro klasificira osobe u dobne skupine kojima pripadaju.
Sažetak (engleski) Age Estimaton of Persons in Facial Images problem is solved with deep convolutional neural network which has 5 convolution layers, 5 max pooling layers, 5 normalization layers and 3 fully connected layers. Approach to the problem was multiclass classification, where model should estimate age of a person on the image in 8 different age groups. IMDB-WIKI dataset is used as a main dataset which is divided in the three parts: training set, validation set and test set. Learning process uses mini batches of size 128 images that propagate through the network from the input to the output layer. Output of the network gave calculation of the loss function which tells us how wrong the model is. Cross entropy was used as a loss function. Purpose of the optimization algorithm is to minimize loss function and as the information for update weights in the model, algorithm used gradient. Backpropagation gave calculations for all gradients in the model. Used algorithm is extension of the stohastic gradient descent called Adam. Images that was used as the inputs by the model was dimensions 128 x 128. Because of different linear transformations between hidden layers in the network, like convolution, images was reduced on 4 x 4. To avoid overfitting, two regularization techniques is explicitly built-in in the model: early stopping and regularization with L2 norm vector parameters. Early stopping is technique that tells us when to stop training based on generalization error. Also, model has some implicit efects of the regularization as batch normalization of the images after every convolution layer. Whole approach to the problem led to the accuracy of the model of 35%. Considering conducted human estimation we can say that model is pretty good classifier for this problem.
Ključne riječi
konvolucijska mreža
višeklasna klasifikacija
IMDB-WIKI skup podataka
mini grupe
funkcija gubitka
unakrsna entropija
optimizacijski algoritam
težine
gradijent
unatražni prolaz
stohastički gradijentni spust
Adam
konvolucija
regularizacijske tehnike
L2 norma
rano zaustavljanje
generalizacijska pogreška
normalizacija nad grupom
točnost modela
Ključne riječi (engleski)
convolution network
multiclass classification
IMDB-WIKI dataset
mini batch
loss function
cross entropy
optimization algorithm
weights
gradient
backpropagation
stohastic gradient descent
Adam
convolution
regularization techniques
L2 norm
early stopping
generalization error
batch normalization
model accuracy
Jezik hrvatski
URN:NBN urn:nbn:hr:168:301884
Studijski program Naziv: Računarstvo Vrsta studija: sveučilišni Stupanj studija: preddiplomski Akademski / stručni naziv: sveučilišni/a prvostupnik/ prvostupnica (baccalaureus/baccalaurea) inženjer/inženjerka računarstva (univ.bacc.ing.comp.)
Vrsta resursa Tekst
Način izrade datoteke Izvorno digitalna
Prava pristupa Zatvoreni pristup
Uvjeti korištenja
Javna napomena
Datum i vrijeme pohrane 2023-01-14 20:23:57