# Classification of Objects by Shape Applied to Amber Gemstone Classification
## 2 Proposed Methodology
### Machine Learning Algorithms  
The main problem of the SPD, proposed above, is that in real circumstances, exact correspondence to all conditions described here rarely occurs. Such conditions as \"x/y = 1\" or \"Z1 = Z2\" have no sense for practical applications unless we can allow some tolerance or some deviation of the parameters. However, if we allow deviation, then some decisions become questionable, e.g., when a circle becomes an oval or when an equilateral triangle turns into an isosceles triangle and so on. During the first experimental testing, there were no clear indications about how big the tolerances should be allowed to be in order to achieve classification results similar to experts' classifications. Furthermore, for different shapes, the analytical results suggested different tolerances for the same parameters. Therefore, the decision was made to apply the most popular machine learning classification algorithms. The algorithms that we selected for the experiments are listed below. Ensembles of decision trees (EDTs): A non-parametric supervised learning method used for classification and regression. Decision trees learn from data to approximate a sine curve with a set of if-then-else decision rules. The deeper the tree, the more complex the decision rules and the better the fit of model. Decision trees build classification or regression models in the form of a tree structure. They break down a data set into smaller and smaller subsets, while at the same time incrementally developing an associated decision tree. The final result is a tree with decision nodes and leaf nodes: a decision node has two or more branches, while a leaf node represents a classification or decision. The topmost decision node in a tree, which corresponds to the best predictor, is called the root node. Decision trees can handle both categorical and numerical data. EDTs combine several decision trees to achieve better predictive performance than utilizing a single decision tree by grouping weak learners. K-nearest neighbors (KNN): A classification model that classifies, for each unlabeled instance, its K-nearest neighbors. The process of clustering K-means begins with randomly assigning objects to a predetermined number of clusters. The objects are then distributed to other clusters to minimize cluster distribution, which is essentially a square distance from each observation to the center of the associated cluster. If redistributing an object to another cluster results in reduced cluster distribution, this object is moved to that cluster [11]. During the K-means clustering method, the cluster dependence may change at each stage of the clustering iteration. The important thing is that the number of clusters must be specified in advance in the clustering of K-means before analysis. Naive Bayes (NB): An algorithm that works on the assumption that all data parameters are considered independent of each other and that each parameter equally affects the final classification result. Naive Bayes methods are a set of supervised learning algorithms based on applying [PERSON] theorem with the \"naive\" assumption of conditional independence between every pair of features, given the value of the class variable  
Support vector machine (SVM): The essence of this classifier is to create hyperplanes that would separate the data into different classes. For creating a hyperplane, the training set objects are divided into parts, such that the distance between the nearest elements belonging to different classes to that hyperplane are maximal. Creating a hyperplane depends solely on a subset of the training set consisting of so-called support vectors. Feedforward neural network (FFNN): An information processing structure that mimics some of the information transfer processes that take place in the brains of living organisms. A neural network consists of many interconnected, very simple computational elements (artificial neurons). These elements, connected by joints of various weights, are an approximate model of biological neurons.