help me revise this paper, you need to give elaborated sentence to satisfy these reviews, but you dont need to rewrite all the passage just inform me where the sentence should be placed: 1. Clarify the description of applying machine learning methods to this problem  is highly relevant, and the results can be valuable to both researchers and  practitioners working in web security and fraud prevention.  2. Clarify the respondents in this study both their duties, functions and  positions.  3. Providing recommendations needs to be conveyed technically so that the  impact is clear  1. Clarify the description of applying machine learning methods to this problem  is highly relevant, and the results can be valuable to both researchers and  practitioners working in web security and fraud prevention.  2. Providing recommendations needs to be conveyed technically so that the  impact is clear  1- This paper does not mention the number of questions in the questionnaire  related to the implementation of processes  2-It is important to make a comparison with other related works.  3- This study did not show the accuracy of the confidentiality of the information  and whether the study is suitable for all legions. i.e. general, or needs to be  modified if it is implemented in other regions.  4- Apply a flowchart for your piocess.  5- The conclusion is not good and needs real suggestions.  

Detecting Phising Website using Machine Learning Methods
 
Ghulam Alvi Rahmat 
Faculty of Intelligent Electrical and Informatics Technology
Institut Sepuluh Nopember
Surabaya, Jawa Timur, Indonesia
<PRESIDIO_ANONYMIZED_EMAIL_ADDRESS>
Agus Tri Haryono
Faculty of Intelligent Electrical and Informatics Technology
Institut Sepuluh Nopember
Surabaya, Jawa Timur, Indonesia
<PRESIDIO_ANONYMIZED_EMAIL_ADDRESS>
  
 Riyanarto Sarno
Faculty of Intelligent Electrical and Informatics Technology
Institut Sepuluh Nopember
Surabaya, Jawa Timur, Indonesia
<PRESIDIO_ANONYMIZED_EMAIL_ADDRESS>
Agus Tri Haryono
Faculty of Intelligent Electrical and Informatics Technology
Institut Sepuluh Nopember
Surabaya, Jawa Timur, Indonesia
<PRESIDIO_ANONYMIZED_EMAIL_ADDRESS>
  
 Kelly Rossa Sungkono 
Faculty of Intelligent Electrical and Informatics Technology
Institut Sepuluh Nopember
Surabaya, Jawa Timur, Indonesia
<PRESIDIO_ANONYMIZED_EMAIL_ADDRESS>
Abdullah Faqih Septiyanto 
Faculty of Intelligent Electrical and Informatics Technology
Institut Sepuluh Nopember
Surabaya, Jawa Timur, Indonesia
<PRESIDIO_ANONYMIZED_EMAIL_ADDRESS>
 
 
 
Abstract— Modern phishing is a sophisticated cyberattack.  It steals login details and payment information by posing as a trusted entity. With our increasing dependence on digital platforms, the frequency and sophistication of phishing attacks have escalated. Many studies have examined phishing detection.  Most prioritize metrics like accuracy, precision, and recall. However, a significant research gap exists as previous studies have primarily focused on accuracy and evaluation metrics without incorporating validation processes to verify whether the developed models are adequately robust and reliable. Harnessing the power of machine learning, we can classify websites into authentic or fraudulent categories, proposing a robust defense against these malicious schemes. The purpose of this study is to present the novelty of a concise summary of techniques for detecting phishing and to create a framework that can be used to detect phishing. The dataset comprises 662,590 entries and 9 features. This study implements three supervised learning models: Decision Tree, K-Nearest Neighbors (KNN), and XGBoost algorithms. These algorithms were chosen for their dataset knowledge and applicability. According to experiments, the Decision Tree model has the lowest accuracy at 88.66% and the KNN model the highest at 88.94%. The XGBoost model records an accuracy of 90.24%. XGBoost often achieves high accuracy due to its gradient boosting framework, which combines multiple decision trees to minimize errors.  Its regularization techniques also help prevent overfitting, leading to robust performance on unseen data. 
Keywords— websites, machine learning, supervised learning, phishing
Introduction 
Hackers have used phishing for a long time since 1990s and is still one of the most common and harmful types of cybercrime. Methods used in phishing attacks have changed a lot over the years and now include many different types, such as email phishing scams, spear-phishing, and hacking. In phishing attacks, bad people pretend to be trustworthy entities, like real people or organizations, to get people to give up private information like financial details, including credit/debit card numbers, login credentials, and personal identification [1]. The stolen information is then used to get into private accounts without permission, which can cause financial loses or identity theft. Phishing attacks can also put software on the devices of their victims, which makes security even worse.
This day and age, the internet is an important part of our daily lives because so much of our work and personal life is done online. Digital networks make it easier for deals and activities to be carried out quickly in many areas. The internet is essential for shopping, paying bills, topping up cell phones, and banking because it is so convenient. Users can connect to neighborhood networks and the internet from almost anywhere at any time thanks to improvements in mobile and wireless technologies. Even though digital platforms are useful, our growing dependence on them has also revealed major security holes [2].
Extensive research explores machine learning applications for phishing emails, mostly with the goal of making the detection more accurate and finding the best evaluation measures. Even though these efforts have helped a lot in finding phishing attacks, there is still a big gap in the research. To be more specific, not enough effort is being put into making phishing detection tools that are useful and can be easily added to normal activities. Strong phishing detection systems that work in real time and can be used in real life are needed right now to protect users from phishing risks right away.  People often have more than one account on different websites, like bank institutions, social networking sites, and email services. Because they don't know how important their personal information is, online users who aren't paying attention are easy targets for phishing attacks. 
Phishing scams usually trick people into clicking malicious links by manipulating them with deceptive messages. These links lead to counterfeit websites. These counterfeit websites are usually crafted to closely resemble the legitimate ones. Phishing links are often distributed via popular websites or directly through email to the victim. This redirection misleads the victim into interacting with the attacker’s server instead of the authentic one. This study will take a close look at all the current methods and studies that have been done on phishing attacks. Our focus is on identifying phishing website URLs by employing three supervised learning algorithms: K-Nearest Neighbors (KNN), XGBoost, and Decision Tree (DT). Then, A model was developed to detect phishing by simply inputting the URL, using the pre-built model for detection.
Related Work
This section discusses about study that has been done on finding phishing websites as shown in Table I, building on recent reviews and cutting-edge work [3].  Justin et al. [4] showed that using classification models and machine learning, they can find malicious sites better than blacklisting approaches. The normal website data they used came from DMOZ and Yahoo, while the phising website they used came from Spam scatter and Phishtank. They tested Naive Bayes, Support Vector Machine (SVM), and Logistic Regression. Of these, logistic regression worked the best.  It had the best automatic feature selection (95% to 99% accuracy) and made a linear representation of the training dataset that was easy to understand.
Godfrey et al. [5] used supervised machine learning, specifically the XGBoost algorithm, to classify phishing URLs.  They extracted features from URL properties using datasets from Phish Tank and the University of New Brunswick.  Their XGBoost model achieved 86.6% accuracy in detecting malicious websites, slightly outperforming a Multilayer Perceptron model (86.5%). This demonstrates that machine learning surpasses traditional blacklisting for phishing detection.
Mahajan et al. [6] investigated methods to prevent phishing and sought to identify the most effective machine learning model for detecting phishing websites. They compared different algorithms by looking at how accurate they were and how often they made mistakes (false positives and negatives). This showed how machine learning can fix the problems with traditional blacklist and heuristic methods.  They took a dataset of 36,711 URLs from Phishtank and Alexa then experiment with different training-testing data splits: 50/50, 70/30, and 90/10 to optimize the performance. The dataset had 19,653 phishing URLs and 17,058 real URLs.  They examined at three machine learning models: Decision Tree, SVM, Random Forest.  Random Forest worked the best, with a 97.14% success rate and the lowest rate of false negatives.  Their study also showed that bigger training datasets made detection more accurate.
Mohammad et al. [7] made a software tool for feature extraction to help people find phishing emails more accurately and avoid misclassifying malicious websites.  Two sets of URLs—2,500 phishing URLs from Phishtank and Millersmiles—and 450 real URLs were used.  The decision-tree-based C4.5, the separate-and-conquer RIPPER algorithm, the coverage algorithm PRISM, and the association-rule-based CBA were all put to the test.  The best results came from CBA, which had a 4.5% mistake rate.
Rathod et al. [8] used machine learning algorithms: LightGBM, XGBoost, Random Forest, CNN to classify phishing URLs.  Trained on 651,191 URLs, these models accurately detected malicious URLs, including phishing sites. Hyperparameter tuning improved performance.  The ensemble model, combining individual model predictions, achieved the highest accuracy (92.5%) and a precision of 89%.
Lakshmi et al. [9] investigated the application of machine learning to identify phishing websites.  Using external resources like blacklists and search engines to make guesses more accurate was a key part of their method for finding things.  They used supervised learning algorithms like Naïve Bayes, Decision Tree, Multilayer Perceptron to train classification models on a set of 100 real websites and 100 phishing websites.  Tenfold cross-validation was used to test how stable the models were.  It turned out that the decision tree approach worked the best.
Akanbi et al. [10] developed a novel method for identifying phishing websites through machine learning techniques.  To help the algorithm correctly understand and sort the URLs, they pre-processed the data using methods such as extract the features, dataset splitting, normalization, and importance assigned to attributes.  There were phishing and real website names in the dataset. Training and testing datasets were experimented using 50/50, 70/30, and 30/70 splits. They tried several machine learning algorithms, such as K-Nearest Neighbors, Decision Tree C4.5, Linear Regression, Support Vector Machine, to see how well they did at classifying data.  After training, pessimistic prunning was used on the Decision Tree to prevent overfitting. The data showed that pruning decision trees makes it easier to spot phishing websites.
Shahrivari et al. [11] did a study that compared different machine learning methods for finding phishing websites.  They used a PhishTank collection of about 11,000 sites, with about 4,900 phishing and 6,200 real ones, and found that Random Forest and XGBoost were the fastest and most accurate. Alam et al. [12] used a Kaggle dataset to test Random Forest and Decision Tree models for finding phishing attacks.  Using a confusion matrix, they chose 32 key traits and found that Random Forest was 97% accurate. Data on phishing websites from the UCI Machine Learning Repository was used in another work by Yahya et al. [13] to test KNN, Decision Tree, and Random Forest.  They started with 32 features and used the Boruta feature selection method to get it down to 15. Then they found that KNN gave the best results.
Proposed Method
Machine learning proficiently categorizes phishing websites.  This prevalent modeling methodology ascertains the legitimacy or maliciousness of a website.  Future study may enhance model accuracy by integrating supplementary features and data; expanded datasets will assist the model in recognizing varied phishing techniques. We compared the eager and lazy ways of learning using Decision Tree, KNN, and XGBoost models. The Pareto principle was used to decide how to divide the data into 80/20 groups for training and testing. This made sure that the review of performance was fair.
This research relies heavily on the dataset, as it forms the foundation of the entire research process [14]. A big phishing dataset from Kaggle [15]  was used in this study. It has 331,295 records and 10 features.    The researcher who compiled the dataset proposed features of phishing websites, clarifying the variables and distinguishing characteristics of legitimate and phishing websites. To ensure balanced representation, the imported dataset was sampled to 20,000 instances per class [16]. Then, this data was carefully preprocessed by getting rid of any missing, duplicate, or strange data points to make sure it was of good quality for further study [17].
The training part of the prepared dataset was used to train Decision Tree, K-Nearest Neighbors (KNN), and XGBoost how to classify the URL.  The training models were then put to the test with data from the testing set that they had never seen before to see how well they worked.  A confusion matrix was used to carefully look at performance. It showed important metrics like true positives, true negatives, false positives, false negatives, showing a clear picture how accurate and prone to mistake each model was.
We saved the best machine learning model learned on our dataset using the pickle module.  In machine learning, Pickle is often used to save learned models so that they can be used again without having to be trained again. This is especially helpful when putting models to use in production, making sure that they work well and consistently.  We saved our model using pickle for easier use in other programs, enabling real-time phishing detection and user protection.
Each model's performance was comprehensively analyzed using a confusion matrix, helping us analyze the three experiments.  We can use this matrix to figure out how accurate the Decision Tree, KNN, and XGBoost models were, which shows how well each one did [18].  We then assess the accuracy by dividing the number of correct predictions by the total prediction using Eq. (1). This gives a full picture of how well each model can tell the difference between phishing sites and real ones.  The correctness of the confusion matrix is very important for checking how strong and reliable our machine learning algorithms are. It helps us find the best model for finding phishing in the real world.
Accuracy=  (TP+TN)/(TP+TN+FP+FN)	(1)

 True positives (TP) are predictions that are right, and true negatives (TN) are predictions that are wrong.  On the other hand, incorrectly identified negative values thought to be positive are called false positives (FP), and mistakenly identifying something positive as negative is a false negative (FN).  From the confusion matrix, we can figure out error rate, sensitivity (also called recall), specificity, and precision, among other common metrics. The error rate in Eq. (2) is the proportion of inaccurate predictions to data points. Our machine learning model's performance and reliability depend on this statistic.  From 1.0 (all forecasts are inaccurate) to 0.0 (perfect predictions), it ranges. Reduced errors indicate a more accurate data classification and prediction model.  A larger error rate indicates more erroneous predictions, indicating the need for model modifications to be useful in practice.

Error Rate=  (FP+FN)/(TP+TN+FP+FN)	(2)
To find the sensitivity, we divide by splitting true positive cases identified correct prediction by the total number of real positives data in the dataset using Eq. (3). One important way assess a classification model's performance is to look at its sensitivity, which is also known as its recall or true positive rate. This metric checks how well the model finds the positives can correctly spot positive instances, which in the case of phishing detection means how well it finds phishing websites. It is very important to have a good sensitivity number so that the model can discover phishing websites and not miss any attempts to steal the information of the user. This lowers the chance that any phishing attempts will go unnoticed. Increasing sensitivity improves the phishing detection model's reliability and robustness. This makes sure that it provides strong defense protects against cyber threats.
Sensitivity=  TP/(TP+FN)	(3)
Specificity is calculated by Eq. (4) which divide the number of properly identified correct negative cases by the total number of negative cases in the dataset. This number, which is also called the "true negative rate," is very important to measure how well a classification model works.  How well a model can find true negatives is shown by its specificity. For phishing identification, this means being able to correctly pick out real websites.  Specificity ranges from 0.0 to 1.0. A specificity of 0.0 means that the site cannot be identified as valid at all, while a specificity of 1.0 means that it can be identified perfectly. Specificity depends on how well the model finds negative instances. A high specificity value is needed to make sure that the model doesn't mistakenly label phishing websites as real websites. This keeps the number of false positives to a minimum.  
Specificity=  TN/(TN+FP)	(4)
 Eq. (5) determines precision as the ratio of correctly detected positive cases to expected positive cases [19].  Classification model evaluation requires this measure, also known as positive predictive value.  It illustrates how accurate the model's positive predictions are, indicating its reliability.  Precision can be anywhere from 0.0 to 1.0. 0.0 means that none of the positive predictions are right, which is the worst result, and 1.0 means that all of the positive predictions are right in this case. Phishing detection relies on high precision to avoid mislabeling trustworthy websites as phishing sites.  It is very important to have high precision because it reduces the number of false reports that mark real websites as phishing sites. Precision is crucial in cybersecurity, where false positives are costly. Phishing detection model can give more reliable and accurate results by keeping a high level of precision. This makes total cybersecurity measures better.
Precision=  TP/(TP+FP)	(5)
Result and Discussion
Decision Tree: The First Experiment
Experiment one employs a Decision Tree algorithm. This is a supervised method for classifying or regressing outcomes. The goal is to learn easy decision rules that take into account all the variables and put URLs into some groups. This study used scikit-learn's DecisionTreeClassifier package. This data cleaning method identified missing, duplicate, unusually large, or unusually narrow values in the dataset. The data was be shuffled before partitioning. Eighty percent of the data becomes the training set, with the remaining 20% used for testing.
The efficacy of the first experiment is assessed using Eq. (1), which calculates the Decision Tree model's accuracy. Table II shows that the model was accurate about 88% of the time, which means that the goal of the experiment, which was to properly classify website types, was met. The confusion matrix is displayed in Fig. 1, which shows how the true positives, true negatives, false positives, false negatives are spread out. This gives us more information about how well the model works.
K-Nearest Neighbor: The Second Experiment
The KNN (K-Nearest Neighbors) method is flexible and can be used to solve many supervised learning problems, such as security cases. The KNN method has been used in several studies to categorize fake websites used for phising. In KNN, similar elements are grouped together [20]. This non-parametric classification algorithm generalizes when it needs to classify an instance. Because of its adaptability, the KNN method can handle a wide range of supervised learning challenges, including security-related ones [21]. Table II shows that, using the experimental model, a KNN model with K=15 achieved the highest accuracy, approximately 88.94%.
XGBoost: The Third Experiment
The XGBoost algorithm is used to run the third experiment. XGBoost is a more powerful and customized version of Gradient Boosting that is made to improve speed and performance. Its success depends on how well it can be used in different situations. XGBoost outperforms other leading algorithms by a factor of more than ten on a single machine, efficiently processing billions of data points even with constrained memory or distributed computing. Several important algorithmic improvements make it possible for this amazing scalability to happen. This includes a new tree algorithm for sparse datasets, a weighted quantile sketching method that works well in theory for learning trees with weighted instances, and parallel/distributed computing to make training and model discovery go faster. Out-of-core computation in XGBoost let data scientists handle datasets with hundreds of millions of instances on the desktop. Ultimately, the combination of these techniques creates an end-to-end system that can scale to even larger datasets with minimal cluster resources [22]. Table II shows that XGBoost is accurate about 90.24% of the time based on the plan for the experiment that was made.
Phising Detection Interface
The models that have been built will then be saved using 'pickle'. Python's pickle library is used for serializing and deserializing objects. Python objects undergo transformation into a byte sequence by serialization, or pickling, facilitating storage in files or transfer across networks. The opposite process, reconstructing a Python object from a byte stream, is called deserialization (or unpickling) [23].
By putting a URL within a machine learning algorithm through an easy-to-use Python interface, it is possible to tell if the URL is a phishing attempt as seen in Fig. 2.  Users can put in URLs and get instant feedback on how trustworthy thee URLs are.  String extraction methods are used to break down the URL so that it can be analyzed.  Things that are looked at 
Fig. 2. Validating Machine Learning Models
are the total length, the number of dots (which show possible subdomains), and the path depth (which shows how complicated the URL is).  There is also a look at the number of dashes (which are often used in phishing URLs), the appearance of "@" (which could send the browser somewhere else), and the use of an IP address rather than name of the website.  Other things are also taken into account, such as the length of the path, the use of numbers, and HTTPS.  To find 
phishing URLs, the Python interface changes the URL based on these extracted traits and sends it to the machine learning model.
There were two tests in this experiment: one category identified as potentially phishing and the other verified as real.  The main objective was to test how well the machine learning model could correctly spot harmful URLs by looking at different parts of them. The objective was to assess the model's capability to detect phishing attempts and to ensure the robustness of the system in flagging potentially harmful URLs. 
More tests were done on the system using real URLs to see how well it could find real websites and not mistakenly mark them as phishing attempts.  This important step made sure that the machine learning model could reliably tell the difference between URLs that are dangerous and those that are not. 
Conclusion
We successfully achieved its objective of developing a model to detect URLs considered as phishing.  Pickle was suggested as a way to store the learned model and then load it again, making it useful in a variety of situations.  This method makes sure that the model can be used effectively without having to be trained again. This lets it be added to real-time hacking detection systems on a number of different platforms.  As part of the study, several machine learning models were developed and tested to see how well they could spot phishing URLs.
The evaluation results we conducted show that among the various algorithms tested, XGBoost had the highest accuracy (90.24%), which is a great result.  With 88.66% accuracy, the Decision Tree model did the worst. KNN did a little better, with an 88.94% score.  As these results show, XGBoost is good at finding phishing URLs, which makes it a useful security tool.  More evaluation measures, like the confusion matrix, gave more information about how the model worked, which showed that XGBoost was strong and reliable. This high level of accuracy proves that XGBoost is good at finding phishing risks and keeping users safe from possible cyberattacks.
Adding more traits and data to the model could be one way to make it better in the future.  It could find more types of hacking attempts if it was exposed to bigger, more varied datasets.  Adding the model to real-time tools would protect against phishing right away.  Iterative testing and validation will keep things working well and help them react to new cyber threats.  This higher level of dependability and usefulness will greatly improve security.
Author Contributions
Ghulam Alvi Rahmat performed the research, experiments, data analysis, and manuscript drafting. Riyanarto Sarno conceived the idea, supervised, guided, and revised the manuscript. Agus Tri Haryono preprocessed data and trained the model. Kelly Rossa Sungkono provided machine learning expertise and helped design the research. Abdullah Faqih Septiyanto assisted with literature review and data analysis. All authors approved the final manuscript.
Acknowledgment 
This research was funded by Institut Teknologi Sepuluh Nopember (ITS) under Penelitian Kolaborasi Pusat and under the Project Scheme of the Publication Writing and Intellectual Property Rights (IPR) Incentive (Penulisan Publikasi dan Hak Kekayaan Intelektual/PPHKI) Program 2024

References

[1] 	Z. Alkhalil, C. Hewage, L. Nawaf and . I. Khan, "Phishing Attacks: A Recent Comprehensive Study and a New Anatomy," Frontiers in Computer Science, 2021. 
[2] 	E. Overby, S. A. Slaughter and B. Konsynski, "The Design, Use, and Consequences of," Information Systems Research, vol. 21, pp. 700-710, 2010. 
[3] 	L. Tang and . Q. H. Mahmoud, "A Survey of Machine Learning-Based Solutions for Phishing," Machine Learning & Knowledge Extraction, vol. 3, pp. 672-694, 2021. 
[4] 	J. Ma, L. K. Saul, S. Savage and G. M. Voelker, "Identifying Suspicious URLs: An Application of Large-Scale Online Learning," Proceedings of the 26th annual international conference on machine, pp. 681-688, 2009. 
[5] 	O. C. Godfrey, Y. G. Fwa and A. N. Edmund, "Phishing URL Detection: A Basic Machine Learning Approach," International journal of science & technoledge, 2024. 
[6] 	R. Mahajan and I. Siddavatam, "Phishing Website Detection using Machine Learning," International Journal of Computer Applications, vol. 181, no. 3, pp. 45-47, 2018. 
[7] 	R. M. Mohammad, F. Thabtah and L. McCluskey, "Intelligent rule-based phishing websites classification," IET Information Security, 2013. 
[8] 	S. Rathod, N. Panchal, A. Sarowa and V. Chavhan, "SaleSurf - Strengthening the Web's Armour, One URL at a Time - Malicious URL Detection using Machine Learning Models," International Journal For Multidisciplinary Research, 2024. 
[9] 	S. Lakshmi and V. MS, "Efficient prediction of phishing websites using supervised," International Conference on Communication Technology and System Design, 2011. 
[10] 	O. Akanbi, A. Zainal and A. Abunadi, "Phishing Website Classification: A Machine Learning Approach," Journal of Information Assurance and Security, vol. 9, pp. 222-234, 2014. 
[11] 	V. Shahrivari, M. M. Darabi and M. Izadi, "Phishing Detection Using Machine Learning," 2020. 
[12] 	M. N. Alam, D. Sarma, F. F. Lima, I. Saha, R. E. Ulfath and S. Hossain, "Phishing Attacks Detection using Machine Learning Approach," 2020 Third International Conference on Smart Systems and Inventive Technology, 2020. 
[13] 	F. Yahya, . R. I. W. Mahibol , C. K. Ying, M. B. Anai, S. A. Frankie, E. L. N. Wei and R. G. Utomo, " Detection of Phising Websites using Machine," 2021 International Conference on Data Science and Its Applications, 2021. 
[14] 	M. Yamin and R. Sarno, Periodicals of Engineering and Natural Sciences, vol. 11, no. 5, pp. 117-136, 10 2023. 
[15] 	S. Anjali, "Kaggle," 2024. [Online]. Available: https://www.kaggle.com/datasets/simaanjali/phising-detection-dataset.
[16] 	Salsabila, R. Sarno, I. Ghozali and K. R. Sungkono, "Improving cyberbullying detection through multi-level machine learning," International Journal of Electrical and Computer Engineering (IJECE), vol. 14, no. 2, pp. 1779-1787, 2024. 
[17] 	A. Sutranggono, R. Sarno and I. Ghozali, "Multi-Class Multi-Level Classification of Mental Health Disorders Based on Textual Data from Social Media," Journal of Information and Communication Technology, vol. 23, no. 1, pp. 77-104, 2024. 
[18] 	M. Malikhah, R. Sarno and S. I. Sabilla, "Ensemble Learning for Optimizing Classification of Pork Adulteration in Beef Based on Electronic Nose Dataset," International Journal of Intelligent Engineering and Systems, vol. 14, no. 4, pp. 44-55, 2021. 
[19] 	I. Ghozali, K. R. Sungkono, R. Sarno and R. Abdullah, "Synonym based feature expansion for Indonesian hate speech detection," International Journal of Electrical and Computer Engineering (IJECE), vol. 13, no. 1, 2023. 
[20] 	M. Jupri and R. Sarno, "Taxpayer Compliance Classification Using C4.5, SVM, KNN, Naive Bayes and MLP," in International Conference on Information and Communications Technology (ICOIACT), 2018. 
[21] 	F. Toolan and J. Carthy, "Feature selection for Spam and Phishing detection," 2010 eCrime Researchers Summit, 2011. 
[22] 	. T. Chen and C. Guestrin, "XGBoost: A Scalable Tree Boosting System," Proceedings of the 22nd acm sigkdd international conference on knowledge discovery and data mining, pp. 785-794, 2016. 
[23] 	"Docs Python," [Online]. Available: https://docs.python.org/3/library/pickle.html.