# Machine Learning Classification Techniques for Detecting the Impact of Human Resources Outcomes on Commercial Banks Performance

Authors: Sulaiman O. Atiku; Ibidun C. Obagbuwa
Journal: Applied Computational Intelligence and Soft Computing
 (2021)

---

## Abstract

The banking industry is a market with great competition and dynamism where organizational performance becomes paramount. Different indicators can be used to measure organizational performance and sustain competitive advantage in a global marketplace. The execution of the performance indicators is usually achieved through human resources, which stand as the core element in sustaining the organization in the highly competitive marketplace. It becomes essential to effectively manage human resources strategically and align its strategies with organizational strategies. We adopted a survey research design using a quantitative approach, distributing a structured questionnaire to 305 respondents utilizing efficient sampling techniques. The prediction of bank performance is very crucial since bad performance can result in serious problems for the bank and society, such as bankruptcy and negative influence on the country’s economy. Most researchers in the past adopted traditional statistics to build prediction models; however, due to the efficiency of machine learning algorithms, a lot of researchers now apply various machine learning algorithms to various fields, including performance prediction systems. In this study, eight different machine learning algorithms were employed to build performance models to predict the prospective performance of commercial banks in Nigeria based on human resources outcomes (employee skills, attitude, and behavior) through the Python software tool with machine learning libraries and packages. The results of the analysis clearly show that human resources outcomes are crucial in achieving organizational performance, and the models built from the eight machine learning classifier algorithms in this study predict the bank performance as superior with the accuracies of 74–81%. The feature importance was computed with the package in Scikit-learn to show comparative importance or contribution of each feature in the prediction, and employee attitude is rated far more than other features. Nigeria’s bank industry should focus more on employee attitude so that the performance can be improved to outstanding class from the current superior class.


---

## Body

## 1. Introduction

Today’s business environment is highly competitive and changing rapidly in terms of globalization and technology innovations, and it becomes imperative to develop the internal potential by paying adequate attention to people management and the workforce that enables the systems to operate. Hence, human resources management has been considered vital in obtaining a sustainable competitive advantage in the face of globalization and advances in technology [1–6]. There are drastic changes in the banking sector due to the application of electronic banking technologies, where financial institutions are now making use of the World Wide Web and other appropriate technologies and software to process applications for various products at a minimum time and cost [7, 8]. This has greatly improved bank operations and services across the globe.The traditional data analysis techniques are unable to cope with large volumes of data, and there is an increase in the huge volume of data in day-to-day operations from internal and external sources. The traditional data analysis does not effectively harness the increased processing power. Predictable variables independence limits their application in the real world, and these methods may be theoretically invalid for the finite sample which can pose a problem in applying it to the performance prediction because the multivariate-normality assumption for the independent variable is frequently violated in financial datasets [9–11].In a financial institution, data are the assets. Therefore, the value of the data can be evaluated when the organization can extract the valuable knowledge hidden in the raw data. Data mining involves the extraction of interesting patterns from raw data using statistical and machine learning techniques [7]. Data mining techniques can be used to build an excellent predictive model and visualize its report into meaningful information [7]. The data mining techniques and tools can predict the future trend and behavior of a system and discover the previous unknown patterns [7–9].Previous works on the impact of human resources on organizational performance were analyzed using descriptive and inferential statistics. Antwi et al. adopted descriptive statistics and multivariate regression for analyzing data [3]. Delery and Gupta adopted descriptive statistics and hierarchical regression analysis to determine the influence of human resources on organizational performance [4]. Atiku et al. used both descriptive and inferential statistics to determine the influence of human resource outcomes on bank performance [6]. Descriptive statistics was extensively used to analyze data [1, 12–14]. In this study, we adopted data mining technology in detecting and predicting the influence of human resources outcomes—employee skill, attitude, and behavior on bank performance. By adopting data mining technology, an organization can access the right information timely from the huge volume of raw data. Data mining techniques can discover hidden patterns that may not be discovered by traditional data analysis.To the best of our knowledge, one of the recent studies carried out a survey on the relationship between organizational capabilities using big data predictive analytics while achieving superior organizational performance. The result of their findings shows that financial institutions need to adopt green and flexible technologies to achieve higher operational performance which enhances overall profit. Moreover, few studies have been conducted on the application of data mining to the banking sector in the areas such as customer retention, automatic credit approval, fraud detection, marketing, and risk management [7–10, 15, 16], but none on the prediction of bank performance concerning human resources outcomes using the data mining approach.The remaining part of this study is organized as follows: Section2 shows the methodology used in this study. Section 3 presents the experiments conducted and the results of the experiments. In Section 4, conclusions are drawn with the recommendation for future research.


## 2. Materials and Methods

The CRISP-DM model was implemented in this work. The model has been widely used by many researchers in the last decade [16–19]. CRISP-DM is a nonpropriety, freely available, and cross-industry standard for data mining projects. It is a cyclic method comprising of six phases: business understanding, data understanding, data preparation, modeling, evaluation, and deployment as depicted in Figure 1 [20]. Python was used as a software tool for implementing this work. It is open-source software that can offer a wide range of data mining classification techniques.Figure 1
The cross-industry standard process for data mining (CRISP-DM) [20].At the business understanding phase, a critical and extensive review of the literature was carried out to study the existing problems in the bank that have been handled by the data mining approach. The study employed a survey approach to investigate the impact of human resource outcomes on organizational performance. Multiple methods were adopted for gathering the data via the use of a structured questionnaire, personal interviews, observations, and other documented evidence (annual reports/statements of accounts for three consecutive years) [21]. The business problem was first identified which is the growing need of the commercial banks in Nigeria to know that human resource outcomes (employee skills, attitude, and behavior) have a great impact on the performance of the bank using a data mining approach to extract all hidden facts and make a prediction. The performance of the bank is predicted to be able to approach the competitive market campaigns exactly those human resource outcomes that indicate good performance of the organization. The identified problem was transformed into a data mining task by classifying organization performance into five categories which are outstanding, superior, good, average, and poor (Table 1), and by analyzing the available employee data with the data mining techniques that are selected for the classification. This is considered a supervised learning task since the classification models are built from the data that have a known target variable.Table 1
Bank performance grading scale.
S/NRatingRange (%)Description1Rating 191–100Outstanding2Rating 271–90Superior3Rating 351–70Good4Rating 431–50Average5Rating 5<30PoorAt the data understanding phase, the employee data were studied to understand the types of data collected from the bank employees that are stored in an electronic database. The rules and procedures for the collection and storage of the bank employee data were also reviewed. The details are provided in the study by Atiku [21].At the data preprocessing phase, employee data from the employee database were extracted and organized. This contains data for 305 employees, described by 19 parameters such as sex, marital status, department, educational qualification, work experience, organizational culture, organizational learning culture, organizational performance, employee attitudes, and so on [21]. The available data were transformed, and some of the parameters were removed. Only the parameter (organization performance (Table 2) and human resources outcomes (Table 3)) that are important for the research were processed. The challenge in this data mining project is essential to predict bank performance based on human resource outcomes. Organization performance is the selected target variable to be learned by the data mining algorithm. A categorical target variable is designed using five values (categories) in Table 1. The bank performance can be outstanding, superior, good, average, and poor. For each of the six performances given in Table 2, the respondent scores (1–4) were used [21]. Table 1 depicts the scaled performance rating which was performed and adjusted to suit banking performance based on the Fitch recovery rating [22]. One of the three nationally acceptable ratings by the US security and exchange commission in 1975 is the Fitch Rating Inc. Since the classification technique label must be categorical, scaling is important.Table 2
Organization performance framework.
S/NItems1In recent years, the change in competitive advantage relative to the largest competitor has markedly improved2In recent years, the change in market share relative to the largest competitor has markedly improved3In recent years, the change in profit relative to the largest competitor has markedly improved4In recent years, change in cost (product or services) relative to the largest competitor has reduced5In recent years, the change in sales revenue relative to the largest competitor has greatly increased6In recent years, the change in customer satisfaction relative to the largest competitor has greatly increasedTable 3
Human resources outcomes framework dimension code and items.
S/NItemsDimensionDimension code1Sufficient effort is made to get the opinions of people who work hereEmployee attitudeEmpAtt2I am given a real opportunity to improve my skills in this company3I feel encouraged to come up with new and better ways of doing things4I like the kind of job I do5My work gives me a feeling of personal accomplishment6My job makes good use of my skills and abilities7How satisfied are you with your involvement in the decisions that affect your work?8How satisfied are you with the opportunity to get a better job at this company?9How satisfied are you with the information you receive from management regarding what is going on in this company?10How satisfied are you with the training you received for your present job?11How satisfied are you with your physical working conditions?12How satisfied are you with your involvement in the decisions that affect your work?13I participate in solving problems in the organizationEmployee behaviorEmpBeh14I become involved in work committees in the organization15The manager proposes changes that will have an impact outside his/her workgroup16The manager expresses his/her ideas in discussion groups in the organization17The manager makes suggestions to improve the organization’s functioning18I help coworkers do their work19I provide constructive feedback that helps a coworker20I keep coworkers informed of the progress of his/her work in group projects21Questions inefficient ways of doing things in his/her workgroup22Introduces new ways of doing things in his/her workgroup23Suggests improvements to increase his/her work group’s efficiency24An employee does everything in his/her power to satisfy the customer, even when there are problems25Makes suggestions to improve the products and/or services offered to customers26Projects a positive image of the organization to customers27The supervisor helps you by doing things that are not part of his/her regular duties28The supervisor keeps you informed of important events which concern you29The supervisor suggests ways towards improving the work group’s performance30The supervisor advises you on ways to improve your management practices31Ability to attract the best employeesEmployee skillsEmpSkills32Ability to retain essential employees33Cooperation between management and other employees34Cooperation among employees in general35Motivation among employees in general36Quality consciousness among employees in general37Spending per employee38Absence rate39Turnover rate40Job satisfaction41Organizational commitment42Customer complaintsAt the modeling phase, the data mining model is built by classifying bank performance into five categories as given in Table1. In this work, we employed several classification algorithms that have the potential to yield good results including decision tree, logistic regression, nearest neighbor algorithm, random forest, gradient boosting, support vector machine, ensemble [23–25], and deep learning. Scikit-learn–Python package for machine learning was used to design the experiments of the proposed models. The selected classification algorithms used for this data mining project were applied to the final dataset consisting of 305 bank employee records with 4 attributes. For implementation, the 4 attributes and descriptions are depicted in Table 4. The results of the work are given in Section 4.Table 4
Description of features.
Feature numberFeature codeData typeDescription1EmpAttNumericPredictive2EmpBehNumericPredictive3EmpSkillsNumericPredictive4PerformanceCategoricalClass


## 3. Experiments, Results, and Discussion

The main objective of this study is to detect the possibility of predicting the class (output) variable with the input variables that are retained in the bank performance model. In our experiments, we used the most common classification techniques from Scikit-learn. These classification techniques are described in Section3.1 of this study. The percentage split approach was used for the dataset to divide it into training and test sets (70% for the training dataset and 30% for the test dataset). The performance of the classification models was measured in our experiments on the input features using a confusion matrix from Scikit-learn to evaluate records that are correctly or incorrectly predicted by the classifiers. A confusion matrix is an N × N table that summarizes how successful a classification model’s predictions were, that is, the correlation between the label and the model’s classification. One axis of a confusion matrix is the label that the model predicted and the other axis is the actual label. N represents the number of classes. In a binary classification problem, N = 2. For instance, Figure 2 is a sample confusion matrix for a binary classification problem. In this work, as depicted in Table 1, there are 5 output classes for bank performance (outstanding, superior, good, average, and poor). A confusion matrix is a table with 4 different combinations of predicted and actual values as illustrated in Figure 2. The quantities, true positive (TP), false positive (FP), true negative (TN), and false negative (FN) are associated with the confusion matrix. The confusion matrix is exceedingly useful for measuring recall, precision, specificity, and accuracy as expressed in equations (1)–(6). In this study, the following metrics (equations (1)–(6)) were used to measure the performance of the classifiers.(i)
Sensitivity/true positive rate/recall is given as(1)Sensitivity=TPTP+FN.Sensitivity represents the percentage of the positive class that is correctly classified.(ii)
False negative rate is given as(2)FNR=FNTP+FN.False negative rate (FNR) represents the percentage of the positive class that is incorrectly classified by the classifier.(iii)
Specificity/true negative rate is given as(3)Sensitivity=TNTN+FP.Specificity represents the percentage of the negative class that is correctly classified.(iv)
False positive rate is given as(4)FPR=FPTN+FP=1−specificity.FPR represents the percentage of the negative class that is incorrectly classified by the classifier.(v)
Accuracy (ACC) is given as(5)ACC=TP+TNTP+TN+FP+FN.ACC is the percentage of the total features that are correct.(vi)
F-score (F1) or F-measure is given as(6)F1=2∗precision∗recallprecision+recall.F1 is a weighted harmonic average of precision and recall.Figure 2
Confusion matrix.Sensitivity and specificity are the most important out of the metrics shown above; they show the proportions that are correctly classified either as positive or negative. Sensitivity, specificity, accuracy, andF-score (F1) among other metrics were used for assessing the classifiers considered in this work. Two types of errors, namely, type 1 and type 2 do occur while evaluating the performance of machine learning classifiers:Type 1 error: false positive (FP). This type of error occurs because the predicted value was falsely predicted. The actual value was negative, but the model predicted a positive value (equation (4)).Type 2 error: false negative (FN). The predicted value was falsely predicted. The actual value was positive, but the model predicted a negative value (equation (2)).The visualization of the impact of the three features of human resources outcome (employee attitudes, behavior, and skills) is shown in Figures3(a)–3(c), respectively. The three selected features show a greater percentage for superior performance. The bank performance is generally superior on the input features.Figure 3
Impact of human resource outcomes (employee attitude, behavior, and skills) on bank industry performance. (a) Employees attitude. (b) Employees behavior. (c) Employees skills.
(a)(b)(c)


### 3.1. Machine Learning Algorithms

Machine learning (ML) is a branch of artificial intelligence for building models/systems that can learn from data. ML is the process of teaching a computer system how to make accurate predictions when fed with data. ML algorithms are the engines of machine learning (i.e., it is the algorithm that turn datasets into models). These algorithms consist of a target/outcome variable (or dependent variable) which is to be predicted from a given set of predictors (independent variables). A function that maps inputs to desired outputs is created by using the set of variables. The procedure as shown in Figure4 continues until the model accomplishes an anticipated level of accuracy on the training dataset. The ML algorithms described in the subsections 3.1.1–3.1.8 were used for classification in this study.Figure 4
Machine learning classification process [26].


#### 3.1.1.K-Nearest Neighbors Classifier

TheK-nearest neighbors classifier (K-NN) algorithm is arguably the simplest machine learning algorithm. Building the model consists only of storing the training dataset. To predict a new data point, the algorithm finds the closest data points in the training dataset — its “nearest neighbors.” The K-NN algorithm is for both classification and regression but is largely used for classification. It is a supervised learning algorithm that deems various centroids and utilizes the Euclidean function for distance comparison. It analyses results and classifies each point to the group with all closest points. New instances are classified using a majority vote of k of its neighbors, and the instance is allocated to a class that is most common among its K-nearest neighbors [19]. The basic steps for K-NN are listed as follows and depicted in Figure 5.Figure 5
K-NN:https://www.datacamp.com/community/tutorials/k-nearest-neighbor-classification-scikit-learn.Basic steps for K-NN are as follows.(i)
Calculate distance(ii)
Find closest neighbors(iii)
Vote for labelsIn this study, we build a classification model using the K-NN algorithm. Figure6 depicts the result of the experiments on training and test datasets with the accuracies of 74% and 75%, respectively.Figure 6
K-NN computation for training and test datasets.Accuracy of the K-NN classifier on the training set is 0.74. The accuracy of the K-NN classifier on the test set is 0.75.Predict by choosing K-NN to model withk = 100, after seeing that a value of k = 100 is a pretty good number of neighbors for this model. This was used to fit the model for the entire dataset instead of just the training set. An example of an out-of-sample observation of prediction in this work is given as follows: knn.predict ([[88, 44, 50]]), where 88, 44, 50 is the sample employee’ attitude, behavior, and skills respectively; and the output is array((“Superior”), dtype = object). The bank performance is predicted to be “Superior,” i.e., it shows a superior performance class for the three input variables. We evaluate the performance of the K-NN classifier by computing the confusion matrix shown in Figure 7. The K-NN algorithm classified the bank performance as “Superior class.” The superior class has the greatest proportion of precision, recall, F1-score, and support (Figure 7). The “support” in Figure 7 is the number of true response samples in a class.Figure 7
K-NN confusion matrix and accuracy results.


#### 3.1.2. Logistic Regression

Logistic regression is appropriate for binary classification, although called regression. It is essentially a classification algorithm that fits data into a logistic function. It is an exceptional machine learning algorithm that estimates discrete values such as 0/1, yes/no, and true/false based on a given set of independent variables and uses a logistic function to predict the likelihood of an event, of which its output is between 0 and 1 as shown in Figure8.Figure 8
Logistic regression:https://www.datacamp.com/community/tutorials/logistic-regression-R.In our experiment with training and test datasets, we obtained accuracies of 74.6% and 76.1%, respectively. Training set’ accuracy is 0.746. The test set’ accuracy is 0.761.Experimenting with the entire dataset, we obtain an accuracy of 75% as shown in Figure9, confusion matrix, and precision computation. The result also confirms that the bank performance is classified as “superior” with an accuracy of 75%.Figure 9
Logistic regression confusion matrix and accuracy results.


#### 3.1.3. Decision Tree Classifier

The decision tree algorithm works on both categorical and continuous dependent variables, even though usually used for classification. Models built with a decision tree algorithm take an instance and traverse the tree; based on the conditional statement, it compares the essential features and determines if it descends the left\right branch based on the result. Normally, critical features are nearer to the root (Figure10(a)).Figure 10
Decision tree and decision tree generation:https://www.datacamp.com/community/tutorials/decision-tree-classification-python. (a) Decision tree. (b) Decision tree generation.
(a)(b)Basis steps in decision tree are as follows:(i)
Select the best attribute using attribute selection measures (ASM) to split the records(ii)
Make that attribute a decision node and breaks the dataset into smaller subsets(iii)
Starts tree building by repeating this process recursively for each child until one of the conditions will match:(i)
All the tuples belong to the same attribute value(ii)
There are no more remaining attributes(iii)
There are no more instancesThe decision tree generation (Figure10(b)) illustrates how decision tree models are built and tested from a dataset that is being split into training and test data. The training data is used for building models while the test data is for evaluating the model. The performance evaluation of the built model is performed by using some metrics (Equations (1)–(6)). Figure 11 depicts the performance evaluation results of the decision tree classifier of this work. The bank’s performance was classified as superior with a precision of 77%.Figure 11
Decision tree confusion matrix and accuracy results.Our experiment with the decision tree algorithm depicts “superior” bank performance with the accuracy of 77.9% and 71.7% for the training and test data, respectively. The accuracy on the training set is 0.779. The accuracy on the test set is 0.717.


#### 3.1.4. Random Forest

A random forest is an ensemble of decision trees that function by building a multitude of decision trees during training time and present the class with the mode classification of the individual trees. The four steps to the random forest are as follow and are also depicted in Figure12.Figure 12
Random forest:https://www.datacamp.com/community/tutorials/random-forests-classifier-python.Steps are as follows:(i)
Select random samples from a given dataset(ii)
Construct a decision tree for each sample and get a prediction result from each decision tree(iii)
Perform a vote for each predicted result(iv)
Select the prediction result with the most votes as the final predictionIn our experiments, a random forest consisting of 100 trees was applied to the bank dataset, and we obtained 75.1% and 75.0% accuracies, respectively, on the training and test datasets. We compute the performance evaluation of the random forest classifier using the confusion matrix and obtained the results as shown in Figure13. The classifier predicted the bank performance as superior with a precision of 75%.Figure 13
Random forest confusion matrix and accuracy results.


#### 3.1.5. Gradient Boosting Classifier

Gradient boosting is a machine learning boosting that minimizes the overall prediction errors by combining the previous models to emerge the next possible best model. The target outcome depends on how much changing that prediction influences the overall prediction error. The adaptive boosting method combined with weighted minimization, after which the classifiers and weighted inputs are recalculated is being referred to as gradient boosting classifiers (Figure14). Gradient boosting classifiers aim to minimize the loss or the difference between the actual class value of the training example and the predicted class value. It operates similar to gradient descent in a neural network.Figure 14
Gradient boosting classifier:https://stackabuse.com/gradient-boosting-classifiers-in-python-with-scikit-learn/.In our experiment on gradient boosting classifier on the bank dataset, we obtained the accuracy on the training set as 0.817 (81.7%) and on the test set as 0.750 (75.0%).For the performance evaluation of the classifier by computing the confusion matrix, we arrived at the results shown in Figure15. The classifier predicts the superior class of bank performance with the 81% precision.Figure 15
Gradient boosting confusion matrix and accuracy results.


#### 3.1.6. Support Vector Machine

Support vector machine (SVM) is a classification algorithm that plots a line that divides diverse groupings of data, and a vector is computed to optimize the line to ascertain that the closest point of each group is far away from each other as shown in Figure16.Figure 16
SVM hyperplane that differentiates two classes.In our experiment with SVM, we obtained the accuracies of 75.6% and 75.0% on the training and test datasets, respectively. The accuracy on the training set is 0.756. The accuracy on the test set is 0.750.The bank performance is classified as superior with a precision of 74% as illustrated in Figure17.Figure 17
Support vector machine confusion matrix and accuracy results.


#### 3.1.7. Deep Learning

Deep learning is a subset of machine learning that involves systems that think and learn like humans using artificial neural networks. It mimics the workings of the human brain to process data (detecting objects, classifying objects, and recognizing speech) and creates patterns necessary for decision making. As illustrated in Figure18, the algorithm builds models by making use of hidden elements in the input division to extract features, group objects, and discover useful data patterns during the training process which occurs at multiple levels/layers. The computational model is made up of multiple layers, known as neural networks, where data are processed.Figure 18
Deep learning:https://towardsdatascience.com/mnist-vs-mnist-how-i-was-able-to-speed-up-my-deep-learning-11c0787e6935.In this study, a deep learning algorithm was applied to the training and test datasets and obtained an accuracy of 74.2% and 75.0%, respectively. The accuracy on the training set is 0.742. The accuracy on the test set is 0.750.The bank performance was classified as superior with a precision of 74% as depicted in Figure19.Figure 19
Deep learning confusion matrix and accuracy results.


#### 3.1.8. Bayesian Classifier (Naive Bayes Model)

The Naive Bayes is a classification algorithm that is based on the concept of the Bayes theorem, which is one of the fundamental theorems in probability. The Bayes theorem creates the resilience of the Naive Bayes algorithm. Data are classified using conditional probability given in the following equation. Therefore, the Naive Bayes algorithm essentially provides the probability of a record that belongs to a class, given the values of the features. This is called conditional probability.(7)PA|B=PB|APAPB,where P(A|B) is the conditional probability of A given B; P(B|A) is the conditional probability of B given A; P(A) is the probability of event A; P(B) is the probability of event B.In our experiments with Naïve Bayes, we obtained the accuracy of 73% and 80% on training and test datasets, respectively. The accuracy on the training set is 0.732. The accuracy on the test set is 0.739.The bank performance was classified as superior with a precision of 79% as shown in Figure20.Figure 20
Gaussian Naïve Bayes confusion matrix and accuracy results.


### 3.2. Feature Importance

The decision tree was used to evaluate the feature importance of the three features. Feature importance rates how important each feature is for the decision a tree makes. It is a number between 0 and 1 for each feature, where 0 means “not used at all” and 1 means “perfectly predicts the target.” The feature importance always sums to 1. Scikit-learn gives additional variables with the model, which illustrates the comparative importance or contribution of each feature in the prediction. It automatically computes the relevance score of each feature in the training phase and scales the significance down, so that the sum of all scores is 1. This score is crucial as it allows you to choose the most important features and drop the least important ones for model building. In this work, the feature importance value for the evaluated features is (0.73502277, 0.09399781, and 0.17097942) for employee attitude, employee behavior, and employee skills, respectively. Figure21 illustrates that feature “employee attitude” is by far the most important feature than employee behavior and skills. Employee behavior feature can be dropped as it is less important for the bank performance model building. The focus of the banking industry should be on feature-employee attitude and try to improve on it, as this can take the bank performance from superior class to the topmost class which is “outstanding.”Figure 21
Feature importance.


### 3.3. Classifiers and Accuracy

Table5 illustrates the results of the eight classifiers’ accuracies on split data (training and test datasets); the accuracy of the training set is similar or closer to the accuracy of the test set. This is an indication that the models built through the classifiers are efficient, there is no overfitting, and the models generalize well to new data.Table 5
Training and test datasets accuracy.
No.Classifier algorithmsAccuracy on the training dataset (%)Accuracy on the test dataset (%)1K-nearest neighbor74.075.02Logistic regression74.676.13Decision tree77.971.74Random forest75.175.05Gradient boosting81.775.06Support vector machine75.675.07Deep learning74.275.08Naïve Bayes73.273.9Table6 depicts the performance of the selected algorithms evaluated using the confusion matrix in Section 3.1. Table 6 illustrates how successful the classification model’s predictions are, showing the crucial metrics (precision, recall, and F1-scores) for superior class because the results of all algorithms show that the bank performance is superior. Gradient boosting algorithm has the best accuracy performance as depicted in Table 6. It has the best precision of 0.81 and an F1-score of 0.88, and its recall score of 0.96 is very close to 1.0. The recall should preferably be 1 (high) for a good classifier. Recall becomes 1 only when the numerator and denominator are equal, i.e., TP = TP + FN; this also means FN is zero (no false negative); therefore, K-nearest neighbor, logistic regression, random forest, support vector machine, and deep learning algorithms produce no false negatives. Moreover, the rest of the algorithms-decision tree, gradient boosting, and Naïve Bayes also have recall scores close to 1.0, i.e., 0.98, 0.96, and 0.91 respectively; hence, the three algorithms have very minimum false negatives. Generally, all the algorithms performed excellently having no or little false negatives. A model that produces no false positives has a precision of 1.0, high precision relates to the low false positive rate. We obtained precisions between 0.74 and 081 for all the pretty good classifier algorithms. Furthermore, ideally in a good classifier, both precision and recall should be 1.00, which also means FP and FN are 0.00 (no false positives and negatives). Hence, we need a metric that considers both precision and recall, and an F1-score is that metric that considers both precision and recall. F1-score is the weighted average of precision and recall. A good F1-score means that you have low false positives and low false negatives. An F1-score is considered perfect when it is 1.00, while the model is a total failure when it is 0.00. In our experiments, we obtained very high F1-scores between 0.84 and 0.88, very close to 1.00 for all the classifier algorithms (Table 6). Therefore, the performance results of the algorithms with very good precision, recall, and F1-scores are an indication that the models built from the algorithms are efficient. All the models classify the bank performance as superior.Table 6
Algorithms and performance measure on the classified superior class.
Classifier algorithmPrecisionRecallF1-scoreK-nearest neighbor0.741.000.85Logistic regression0.751.000.85Decision tree0.770.980.86Random forest0.751.000.86Gradient boosting0.810.960.88Support vector machine0.741.000.85Deep learning0.741.000.85Naïve Bayes0.790.910.84


## 3.1. Machine Learning Algorithms

Machine learning (ML) is a branch of artificial intelligence for building models/systems that can learn from data. ML is the process of teaching a computer system how to make accurate predictions when fed with data. ML algorithms are the engines of machine learning (i.e., it is the algorithm that turn datasets into models). These algorithms consist of a target/outcome variable (or dependent variable) which is to be predicted from a given set of predictors (independent variables). A function that maps inputs to desired outputs is created by using the set of variables. The procedure as shown in Figure4 continues until the model accomplishes an anticipated level of accuracy on the training dataset. The ML algorithms described in the subsections 3.1.1–3.1.8 were used for classification in this study.Figure 4
Machine learning classification process [26].


### 3.1.1.K-Nearest Neighbors Classifier

TheK-nearest neighbors classifier (K-NN) algorithm is arguably the simplest machine learning algorithm. Building the model consists only of storing the training dataset. To predict a new data point, the algorithm finds the closest data points in the training dataset — its “nearest neighbors.” The K-NN algorithm is for both classification and regression but is largely used for classification. It is a supervised learning algorithm that deems various centroids and utilizes the Euclidean function for distance comparison. It analyses results and classifies each point to the group with all closest points. New instances are classified using a majority vote of k of its neighbors, and the instance is allocated to a class that is most common among its K-nearest neighbors [19]. The basic steps for K-NN are listed as follows and depicted in Figure 5.Figure 5
K-NN:https://www.datacamp.com/community/tutorials/k-nearest-neighbor-classification-scikit-learn.Basic steps for K-NN are as follows.(i)
Calculate distance(ii)
Find closest neighbors(iii)
Vote for labelsIn this study, we build a classification model using the K-NN algorithm. Figure6 depicts the result of the experiments on training and test datasets with the accuracies of 74% and 75%, respectively.Figure 6
K-NN computation for training and test datasets.Accuracy of the K-NN classifier on the training set is 0.74. The accuracy of the K-NN classifier on the test set is 0.75.Predict by choosing K-NN to model withk = 100, after seeing that a value of k = 100 is a pretty good number of neighbors for this model. This was used to fit the model for the entire dataset instead of just the training set. An example of an out-of-sample observation of prediction in this work is given as follows: knn.predict ([[88, 44, 50]]), where 88, 44, 50 is the sample employee’ attitude, behavior, and skills respectively; and the output is array((“Superior”), dtype = object). The bank performance is predicted to be “Superior,” i.e., it shows a superior performance class for the three input variables. We evaluate the performance of the K-NN classifier by computing the confusion matrix shown in Figure 7. The K-NN algorithm classified the bank performance as “Superior class.” The superior class has the greatest proportion of precision, recall, F1-score, and support (Figure 7). The “support” in Figure 7 is the number of true response samples in a class.Figure 7
K-NN confusion matrix and accuracy results.


### 3.1.2. Logistic Regression

Logistic regression is appropriate for binary classification, although called regression. It is essentially a classification algorithm that fits data into a logistic function. It is an exceptional machine learning algorithm that estimates discrete values such as 0/1, yes/no, and true/false based on a given set of independent variables and uses a logistic function to predict the likelihood of an event, of which its output is between 0 and 1 as shown in Figure8.Figure 8
Logistic regression:https://www.datacamp.com/community/tutorials/logistic-regression-R.In our experiment with training and test datasets, we obtained accuracies of 74.6% and 76.1%, respectively. Training set’ accuracy is 0.746. The test set’ accuracy is 0.761.Experimenting with the entire dataset, we obtain an accuracy of 75% as shown in Figure9, confusion matrix, and precision computation. The result also confirms that the bank performance is classified as “superior” with an accuracy of 75%.Figure 9
Logistic regression confusion matrix and accuracy results.


### 3.1.3. Decision Tree Classifier

The decision tree algorithm works on both categorical and continuous dependent variables, even though usually used for classification. Models built with a decision tree algorithm take an instance and traverse the tree; based on the conditional statement, it compares the essential features and determines if it descends the left\right branch based on the result. Normally, critical features are nearer to the root (Figure10(a)).Figure 10
Decision tree and decision tree generation:https://www.datacamp.com/community/tutorials/decision-tree-classification-python. (a) Decision tree. (b) Decision tree generation.
(a)(b)Basis steps in decision tree are as follows:(i)
Select the best attribute using attribute selection measures (ASM) to split the records(ii)
Make that attribute a decision node and breaks the dataset into smaller subsets(iii)
Starts tree building by repeating this process recursively for each child until one of the conditions will match:(i)
All the tuples belong to the same attribute value(ii)
There are no more remaining attributes(iii)
There are no more instancesThe decision tree generation (Figure10(b)) illustrates how decision tree models are built and tested from a dataset that is being split into training and test data. The training data is used for building models while the test data is for evaluating the model. The performance evaluation of the built model is performed by using some metrics (Equations (1)–(6)). Figure 11 depicts the performance evaluation results of the decision tree classifier of this work. The bank’s performance was classified as superior with a precision of 77%.Figure 11
Decision tree confusion matrix and accuracy results.Our experiment with the decision tree algorithm depicts “superior” bank performance with the accuracy of 77.9% and 71.7% for the training and test data, respectively. The accuracy on the training set is 0.779. The accuracy on the test set is 0.717.


### 3.1.4. Random Forest

A random forest is an ensemble of decision trees that function by building a multitude of decision trees during training time and present the class with the mode classification of the individual trees. The four steps to the random forest are as follow and are also depicted in Figure12.Figure 12
Random forest:https://www.datacamp.com/community/tutorials/random-forests-classifier-python.Steps are as follows:(i)
Select random samples from a given dataset(ii)
Construct a decision tree for each sample and get a prediction result from each decision tree(iii)
Perform a vote for each predicted result(iv)
Select the prediction result with the most votes as the final predictionIn our experiments, a random forest consisting of 100 trees was applied to the bank dataset, and we obtained 75.1% and 75.0% accuracies, respectively, on the training and test datasets. We compute the performance evaluation of the random forest classifier using the confusion matrix and obtained the results as shown in Figure13. The classifier predicted the bank performance as superior with a precision of 75%.Figure 13
Random forest confusion matrix and accuracy results.


### 3.1.5. Gradient Boosting Classifier

Gradient boosting is a machine learning boosting that minimizes the overall prediction errors by combining the previous models to emerge the next possible best model. The target outcome depends on how much changing that prediction influences the overall prediction error. The adaptive boosting method combined with weighted minimization, after which the classifiers and weighted inputs are recalculated is being referred to as gradient boosting classifiers (Figure14). Gradient boosting classifiers aim to minimize the loss or the difference between the actual class value of the training example and the predicted class value. It operates similar to gradient descent in a neural network.Figure 14
Gradient boosting classifier:https://stackabuse.com/gradient-boosting-classifiers-in-python-with-scikit-learn/.In our experiment on gradient boosting classifier on the bank dataset, we obtained the accuracy on the training set as 0.817 (81.7%) and on the test set as 0.750 (75.0%).For the performance evaluation of the classifier by computing the confusion matrix, we arrived at the results shown in Figure15. The classifier predicts the superior class of bank performance with the 81% precision.Figure 15
Gradient boosting confusion matrix and accuracy results.


### 3.1.6. Support Vector Machine

Support vector machine (SVM) is a classification algorithm that plots a line that divides diverse groupings of data, and a vector is computed to optimize the line to ascertain that the closest point of each group is far away from each other as shown in Figure16.Figure 16
SVM hyperplane that differentiates two classes.In our experiment with SVM, we obtained the accuracies of 75.6% and 75.0% on the training and test datasets, respectively. The accuracy on the training set is 0.756. The accuracy on the test set is 0.750.The bank performance is classified as superior with a precision of 74% as illustrated in Figure17.Figure 17
Support vector machine confusion matrix and accuracy results.


### 3.1.7. Deep Learning

Deep learning is a subset of machine learning that involves systems that think and learn like humans using artificial neural networks. It mimics the workings of the human brain to process data (detecting objects, classifying objects, and recognizing speech) and creates patterns necessary for decision making. As illustrated in Figure18, the algorithm builds models by making use of hidden elements in the input division to extract features, group objects, and discover useful data patterns during the training process which occurs at multiple levels/layers. The computational model is made up of multiple layers, known as neural networks, where data are processed.Figure 18
Deep learning:https://towardsdatascience.com/mnist-vs-mnist-how-i-was-able-to-speed-up-my-deep-learning-11c0787e6935.In this study, a deep learning algorithm was applied to the training and test datasets and obtained an accuracy of 74.2% and 75.0%, respectively. The accuracy on the training set is 0.742. The accuracy on the test set is 0.750.The bank performance was classified as superior with a precision of 74% as depicted in Figure19.Figure 19
Deep learning confusion matrix and accuracy results.


### 3.1.8. Bayesian Classifier (Naive Bayes Model)

The Naive Bayes is a classification algorithm that is based on the concept of the Bayes theorem, which is one of the fundamental theorems in probability. The Bayes theorem creates the resilience of the Naive Bayes algorithm. Data are classified using conditional probability given in the following equation. Therefore, the Naive Bayes algorithm essentially provides the probability of a record that belongs to a class, given the values of the features. This is called conditional probability.(7)PA|B=PB|APAPB,where P(A|B) is the conditional probability of A given B; P(B|A) is the conditional probability of B given A; P(A) is the probability of event A; P(B) is the probability of event B.In our experiments with Naïve Bayes, we obtained the accuracy of 73% and 80% on training and test datasets, respectively. The accuracy on the training set is 0.732. The accuracy on the test set is 0.739.The bank performance was classified as superior with a precision of 79% as shown in Figure20.Figure 20
Gaussian Naïve Bayes confusion matrix and accuracy results.


## 3.1.1.K-Nearest Neighbors Classifier

TheK-nearest neighbors classifier (K-NN) algorithm is arguably the simplest machine learning algorithm. Building the model consists only of storing the training dataset. To predict a new data point, the algorithm finds the closest data points in the training dataset — its “nearest neighbors.” The K-NN algorithm is for both classification and regression but is largely used for classification. It is a supervised learning algorithm that deems various centroids and utilizes the Euclidean function for distance comparison. It analyses results and classifies each point to the group with all closest points. New instances are classified using a majority vote of k of its neighbors, and the instance is allocated to a class that is most common among its K-nearest neighbors [19]. The basic steps for K-NN are listed as follows and depicted in Figure 5.Figure 5
K-NN:https://www.datacamp.com/community/tutorials/k-nearest-neighbor-classification-scikit-learn.Basic steps for K-NN are as follows.(i)
Calculate distance(ii)
Find closest neighbors(iii)
Vote for labelsIn this study, we build a classification model using the K-NN algorithm. Figure6 depicts the result of the experiments on training and test datasets with the accuracies of 74% and 75%, respectively.Figure 6
K-NN computation for training and test datasets.Accuracy of the K-NN classifier on the training set is 0.74. The accuracy of the K-NN classifier on the test set is 0.75.Predict by choosing K-NN to model withk = 100, after seeing that a value of k = 100 is a pretty good number of neighbors for this model. This was used to fit the model for the entire dataset instead of just the training set. An example of an out-of-sample observation of prediction in this work is given as follows: knn.predict ([[88, 44, 50]]), where 88, 44, 50 is the sample employee’ attitude, behavior, and skills respectively; and the output is array((“Superior”), dtype = object). The bank performance is predicted to be “Superior,” i.e., it shows a superior performance class for the three input variables. We evaluate the performance of the K-NN classifier by computing the confusion matrix shown in Figure 7. The K-NN algorithm classified the bank performance as “Superior class.” The superior class has the greatest proportion of precision, recall, F1-score, and support (Figure 7). The “support” in Figure 7 is the number of true response samples in a class.Figure 7
K-NN confusion matrix and accuracy results.


## 3.1.2. Logistic Regression

Logistic regression is appropriate for binary classification, although called regression. It is essentially a classification algorithm that fits data into a logistic function. It is an exceptional machine learning algorithm that estimates discrete values such as 0/1, yes/no, and true/false based on a given set of independent variables and uses a logistic function to predict the likelihood of an event, of which its output is between 0 and 1 as shown in Figure8.Figure 8
Logistic regression:https://www.datacamp.com/community/tutorials/logistic-regression-R.In our experiment with training and test datasets, we obtained accuracies of 74.6% and 76.1%, respectively. Training set’ accuracy is 0.746. The test set’ accuracy is 0.761.Experimenting with the entire dataset, we obtain an accuracy of 75% as shown in Figure9, confusion matrix, and precision computation. The result also confirms that the bank performance is classified as “superior” with an accuracy of 75%.Figure 9
Logistic regression confusion matrix and accuracy results.


## 3.1.3. Decision Tree Classifier

The decision tree algorithm works on both categorical and continuous dependent variables, even though usually used for classification. Models built with a decision tree algorithm take an instance and traverse the tree; based on the conditional statement, it compares the essential features and determines if it descends the left\right branch based on the result. Normally, critical features are nearer to the root (Figure10(a)).Figure 10
Decision tree and decision tree generation:https://www.datacamp.com/community/tutorials/decision-tree-classification-python. (a) Decision tree. (b) Decision tree generation.
(a)(b)Basis steps in decision tree are as follows:(i)
Select the best attribute using attribute selection measures (ASM) to split the records(ii)
Make that attribute a decision node and breaks the dataset into smaller subsets(iii)
Starts tree building by repeating this process recursively for each child until one of the conditions will match:(i)
All the tuples belong to the same attribute value(ii)
There are no more remaining attributes(iii)
There are no more instancesThe decision tree generation (Figure10(b)) illustrates how decision tree models are built and tested from a dataset that is being split into training and test data. The training data is used for building models while the test data is for evaluating the model. The performance evaluation of the built model is performed by using some metrics (Equations (1)–(6)). Figure 11 depicts the performance evaluation results of the decision tree classifier of this work. The bank’s performance was classified as superior with a precision of 77%.Figure 11
Decision tree confusion matrix and accuracy results.Our experiment with the decision tree algorithm depicts “superior” bank performance with the accuracy of 77.9% and 71.7% for the training and test data, respectively. The accuracy on the training set is 0.779. The accuracy on the test set is 0.717.


## 3.1.4. Random Forest

A random forest is an ensemble of decision trees that function by building a multitude of decision trees during training time and present the class with the mode classification of the individual trees. The four steps to the random forest are as follow and are also depicted in Figure12.Figure 12
Random forest:https://www.datacamp.com/community/tutorials/random-forests-classifier-python.Steps are as follows:(i)
Select random samples from a given dataset(ii)
Construct a decision tree for each sample and get a prediction result from each decision tree(iii)
Perform a vote for each predicted result(iv)
Select the prediction result with the most votes as the final predictionIn our experiments, a random forest consisting of 100 trees was applied to the bank dataset, and we obtained 75.1% and 75.0% accuracies, respectively, on the training and test datasets. We compute the performance evaluation of the random forest classifier using the confusion matrix and obtained the results as shown in Figure13. The classifier predicted the bank performance as superior with a precision of 75%.Figure 13
Random forest confusion matrix and accuracy results.


## 3.1.5. Gradient Boosting Classifier

Gradient boosting is a machine learning boosting that minimizes the overall prediction errors by combining the previous models to emerge the next possible best model. The target outcome depends on how much changing that prediction influences the overall prediction error. The adaptive boosting method combined with weighted minimization, after which the classifiers and weighted inputs are recalculated is being referred to as gradient boosting classifiers (Figure14). Gradient boosting classifiers aim to minimize the loss or the difference between the actual class value of the training example and the predicted class value. It operates similar to gradient descent in a neural network.Figure 14
Gradient boosting classifier:https://stackabuse.com/gradient-boosting-classifiers-in-python-with-scikit-learn/.In our experiment on gradient boosting classifier on the bank dataset, we obtained the accuracy on the training set as 0.817 (81.7%) and on the test set as 0.750 (75.0%).For the performance evaluation of the classifier by computing the confusion matrix, we arrived at the results shown in Figure15. The classifier predicts the superior class of bank performance with the 81% precision.Figure 15
Gradient boosting confusion matrix and accuracy results.


## 3.1.6. Support Vector Machine

Support vector machine (SVM) is a classification algorithm that plots a line that divides diverse groupings of data, and a vector is computed to optimize the line to ascertain that the closest point of each group is far away from each other as shown in Figure16.Figure 16
SVM hyperplane that differentiates two classes.In our experiment with SVM, we obtained the accuracies of 75.6% and 75.0% on the training and test datasets, respectively. The accuracy on the training set is 0.756. The accuracy on the test set is 0.750.The bank performance is classified as superior with a precision of 74% as illustrated in Figure17.Figure 17
Support vector machine confusion matrix and accuracy results.


## 3.1.7. Deep Learning

Deep learning is a subset of machine learning that involves systems that think and learn like humans using artificial neural networks. It mimics the workings of the human brain to process data (detecting objects, classifying objects, and recognizing speech) and creates patterns necessary for decision making. As illustrated in Figure18, the algorithm builds models by making use of hidden elements in the input division to extract features, group objects, and discover useful data patterns during the training process which occurs at multiple levels/layers. The computational model is made up of multiple layers, known as neural networks, where data are processed.Figure 18
Deep learning:https://towardsdatascience.com/mnist-vs-mnist-how-i-was-able-to-speed-up-my-deep-learning-11c0787e6935.In this study, a deep learning algorithm was applied to the training and test datasets and obtained an accuracy of 74.2% and 75.0%, respectively. The accuracy on the training set is 0.742. The accuracy on the test set is 0.750.The bank performance was classified as superior with a precision of 74% as depicted in Figure19.Figure 19
Deep learning confusion matrix and accuracy results.


## 3.1.8. Bayesian Classifier (Naive Bayes Model)

The Naive Bayes is a classification algorithm that is based on the concept of the Bayes theorem, which is one of the fundamental theorems in probability. The Bayes theorem creates the resilience of the Naive Bayes algorithm. Data are classified using conditional probability given in the following equation. Therefore, the Naive Bayes algorithm essentially provides the probability of a record that belongs to a class, given the values of the features. This is called conditional probability.(7)PA|B=PB|APAPB,where P(A|B) is the conditional probability of A given B; P(B|A) is the conditional probability of B given A; P(A) is the probability of event A; P(B) is the probability of event B.In our experiments with Naïve Bayes, we obtained the accuracy of 73% and 80% on training and test datasets, respectively. The accuracy on the training set is 0.732. The accuracy on the test set is 0.739.The bank performance was classified as superior with a precision of 79% as shown in Figure20.Figure 20
Gaussian Naïve Bayes confusion matrix and accuracy results.


## 3.2. Feature Importance

The decision tree was used to evaluate the feature importance of the three features. Feature importance rates how important each feature is for the decision a tree makes. It is a number between 0 and 1 for each feature, where 0 means “not used at all” and 1 means “perfectly predicts the target.” The feature importance always sums to 1. Scikit-learn gives additional variables with the model, which illustrates the comparative importance or contribution of each feature in the prediction. It automatically computes the relevance score of each feature in the training phase and scales the significance down, so that the sum of all scores is 1. This score is crucial as it allows you to choose the most important features and drop the least important ones for model building. In this work, the feature importance value for the evaluated features is (0.73502277, 0.09399781, and 0.17097942) for employee attitude, employee behavior, and employee skills, respectively. Figure21 illustrates that feature “employee attitude” is by far the most important feature than employee behavior and skills. Employee behavior feature can be dropped as it is less important for the bank performance model building. The focus of the banking industry should be on feature-employee attitude and try to improve on it, as this can take the bank performance from superior class to the topmost class which is “outstanding.”Figure 21
Feature importance.


## 3.3. Classifiers and Accuracy

Table5 illustrates the results of the eight classifiers’ accuracies on split data (training and test datasets); the accuracy of the training set is similar or closer to the accuracy of the test set. This is an indication that the models built through the classifiers are efficient, there is no overfitting, and the models generalize well to new data.Table 5
Training and test datasets accuracy.
No.Classifier algorithmsAccuracy on the training dataset (%)Accuracy on the test dataset (%)1K-nearest neighbor74.075.02Logistic regression74.676.13Decision tree77.971.74Random forest75.175.05Gradient boosting81.775.06Support vector machine75.675.07Deep learning74.275.08Naïve Bayes73.273.9Table6 depicts the performance of the selected algorithms evaluated using the confusion matrix in Section 3.1. Table 6 illustrates how successful the classification model’s predictions are, showing the crucial metrics (precision, recall, and F1-scores) for superior class because the results of all algorithms show that the bank performance is superior. Gradient boosting algorithm has the best accuracy performance as depicted in Table 6. It has the best precision of 0.81 and an F1-score of 0.88, and its recall score of 0.96 is very close to 1.0. The recall should preferably be 1 (high) for a good classifier. Recall becomes 1 only when the numerator and denominator are equal, i.e., TP = TP + FN; this also means FN is zero (no false negative); therefore, K-nearest neighbor, logistic regression, random forest, support vector machine, and deep learning algorithms produce no false negatives. Moreover, the rest of the algorithms-decision tree, gradient boosting, and Naïve Bayes also have recall scores close to 1.0, i.e., 0.98, 0.96, and 0.91 respectively; hence, the three algorithms have very minimum false negatives. Generally, all the algorithms performed excellently having no or little false negatives. A model that produces no false positives has a precision of 1.0, high precision relates to the low false positive rate. We obtained precisions between 0.74 and 081 for all the pretty good classifier algorithms. Furthermore, ideally in a good classifier, both precision and recall should be 1.00, which also means FP and FN are 0.00 (no false positives and negatives). Hence, we need a metric that considers both precision and recall, and an F1-score is that metric that considers both precision and recall. F1-score is the weighted average of precision and recall. A good F1-score means that you have low false positives and low false negatives. An F1-score is considered perfect when it is 1.00, while the model is a total failure when it is 0.00. In our experiments, we obtained very high F1-scores between 0.84 and 0.88, very close to 1.00 for all the classifier algorithms (Table 6). Therefore, the performance results of the algorithms with very good precision, recall, and F1-scores are an indication that the models built from the algorithms are efficient. All the models classify the bank performance as superior.Table 6
Algorithms and performance measure on the classified superior class.
Classifier algorithmPrecisionRecallF1-scoreK-nearest neighbor0.741.000.85Logistic regression0.751.000.85Decision tree0.770.980.86Random forest0.751.000.86Gradient boosting0.810.960.88Support vector machine0.741.000.85Deep learning0.741.000.85Naïve Bayes0.790.910.84


## 4. Conclusion

In this study, we employed a survey of a quantitative structured questionnaire method using efficient sampling techniques to select 305 respondents. Eight (8) different machine learning algorithms were employed to build performance models to predict the prospective performance of the Nigeria Commercial Bank Industry based on human resources outcomes (employee skills, attitude, and behavior) using Scikit-learn packages for data analytics. The results of the analysis clearly show that human resources outcomes are crucial in achieving organizational performance. The machine learning models predict the bank performance as superior with the accuracies of 74–81%. The superior class has a “support” size of 227, i.e., the number of the true response samples out of the overall samples of 305. To measure the performance of the classifier algorithms, a confusion matrix was used, and the good results of the metrics such as precision, recall, andF1-scores clearly show that the models are efficient. Out of the eight classifier models, gradient boosting has the best performance result. The feature importance was evaluated using the feature importance package in Scikit-learn to show the comparative importance or contribution of each feature in the prediction. Out of the three features (employee attitude, employee behavior, and employee skills), employee attitude is rated far more than others. Nigeria’s bank industry needs to pay more attention to the employee attitude and improve more on it, so that the performance can be taken to the outstanding class from the current superior class.Further work will investigate other factors and features that can also improve the performance of the commercial bank [27].



---

*Source: 7747907-2021-09-21.xml*