Terrorism classification using XGB framework
XGB or XGBoost stands for eXtreme Gradient Boosting. It tries to predict models using a gradient boosting framework. A large number of developers contribute to the XGB open-source. It has nearly 4000 commits on GitHub. Some of the special features of this algorithm are:-
- Solves a variety of problems such as classification, regression, etc.
- Platform independent
- Easily attaches to different cloud services.
- Supports various programming languages such as c,c++, java,python,etc.
The three main forms of gradient boosting which are gradient boosting, Regularised gradient boosting and Stochastic gradient boosting is supported in the XGB algorithm.
It can be easily installed by cloning it from its Github repository.
Now, let us try to code the classifier into python:
# Write Python3 code here # Importing the libraries import numpy as np import matplotlib.pyplot as plt import pandas as pd # Importing the dataset dataset = pd.read_csv('Churn_Modelling.csv') X = dataset.iloc[:, 3:13].values y = dataset.iloc[:, 13].values # Encoding categorical data from sklearn.preprocessing import LabelEncoder, OneHotEncoder labelencoder_X_1 = LabelEncoder() X[:, 1] = labelencoder_X_1.fit_transform(X[:, 1]) labelencoder_X_2 = LabelEncoder() X[:, 2] = labelencoder_X_2.fit_transform(X[:, 2]) onehotencoder = OneHotEncoder(categorical_features = ) X = onehotencoder.fit_transform(X).toarray() X = X[:, 1:] # Splitting the dataset into the Training set and Test set from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split( X, y, test_size = 0.2, random_state = 0) # Fitting XGBoost to the training data import xgboost as xgb my_model = xgb.XGBClassifier() my_model.fit(X_train, y_train) # Predicting the Test set results y_pred = my_model.predict(X_test) # Making the Confusion Matrix from sklearn.metrics import confusion_matrix cm = confusion_matrix(y_test, y_pred)
Accuracy will be about 0.8645
Implement this algorithm on the Global Terrorism Database(GTD) for the required result.
I hope you would have clearly understood the concept of the XGB classier algorithm. For any classification and suggestions comment down below.