are described afterwards with special attention de-
voted to the purpose they play in solving the machine
learning problem. The system is also evaluated as to
what extent it adheres to the established principles and
comparisons are made between the performance of al-
ready existing applications of similar purposes.
2 LITERATURE REVIEW
One of the most widely-studied element of machine
vision is facial recognition, a field revolving around
searching for visual cues of human faces on images
without any assumption of its portrayed contents.
This problem is solved using a toolbox similar to im-
age clustering and shape identification as facial fea-
tures proven to exhibit a degree of variance within the
individual are at the center of recognition attempts.
Searching for the shape of the eyes, mouth and the
nose is most common (Manjunath et al., 1992), but
studies exist on using the contour lines of the chin and
the brows (Walker et al., 1998) and it is also possible
to exploit the difference in the geometric depth of fa-
cial features (BenAbdelkader and Griffin, 2005). The
literature commonly refers to these features under the
umbrella term facial landmark points (Walker et al.,
1998; Wu et al., 2017; Wu and Ji, 2015).
Although using the same tools, the area the
present study choses to explore is not facial recogni-
tion, but the problem of facial authentication, a sub-
category of the previous, in which the images under
scrutiny are guaranteed to portray human faces and
the task is to make distinction between certain indi-
viduals using these images only. The main component
of this practice is to calculate a difference between the
reference image of an individual and the image given
as a task for evaluation. There is a wide range of tech-
niques applied to solve these kinds of problems from
formal methods such as principal component analy-
sis to machine learning approaches including artificial
neural networks, but at the end of the process, all of
these methods commonly produce a probability score
as to how likely it is that the image in question in-
deed portrays the same person as the image used as
a basis of reference. To thoroughly investigate the
problem, the present study implements two kinds of
facial authentication: one in which the system needs
to identify which person is found on the image out
of 3 pre-defined individuals, and another that decides
whether a given image portrays the same person as
the one used as a reference of that person.
A core component of performing facial recogni-
tion analyses is inevitably linked to how comparisons
are made between existing and new information and
thus, how data is stored and accessed during these
processes. Using labelled images was the most com-
mon practice for earlier methods, which was pre-
ceded by the application of abstraction layers gener-
ated from the raw images: these techniques aimed to
extract certain sub-elements of importance (e.g., col-
ors or prominent image segments) this way reducing
the size of the data to store (Liu et al., 2007). The
literature commonly refers to image searches using
these methods under the umbrella term Content Based
Image Retrieval (CBIR). One of the most common
methods of CBIR is applying formal transformations
to image segments (Liu et al., 2007). (Karnila et al.,
2019), for example, uses the mechanism of Discrete
Cosine Transform (DCT), one of the building blocks
of the JPG image format (Miklos et al., 2020), to ex-
tract coefficients from JPG images, which are stored
in a database afterwards, reducing the file size from
14 kB to around 3 kb, which is even preceded by their
own methods called Discrete Wavelet Transform that
achieved a storage size of 0.4 kB. During compar-
isons, histograms can be created which are subjected
to mathematical operations once again (e.g., simple
euclidean distance) to calculate a difference. Ma-
chine learning approaches usually replace these for-
mal processes with prediction procedures, but due to
the statistical nature of machine learning data, stor-
age methods can be largely the same. To put data
retrieval speeds into perspective, (Kumar and Sara-
vanan, 2013) recorded measurements of multiple im-
plementations using 500 images: an implementation
using common methods in the literature achieved an
average retrieval speed of 3 sec. (Weinstein et al.,
2002) reports measurements of approximately 2 sec,
while a special DCT-based implementation by the
previous authors is reported to have a retrieval speed
of 1 sec, on average.
3 DESIGN PRINCIPLES
Although there have been a number of nature-inspired
methodological improvements in the field of Machine
Learning (Chaczko et al., 2020), to establish the core
concepts of a layered machine learning solution, we
rather turned to tried and proven methods applied by
the field of software engineering. We chose to base
our designing principles on how layering is portrayed
by Ian Sommerville as his books are among the most
widely-recognized works on the subject. One of the
core concepts of layering in his works is the complex
idea that, although layered architecture allows for
the creation of individual components (Sommerville,
2011) restricting changes to a minimum number of el-
Benefits of Layered Software Architecture in Machine Learning Applications
67