top of page

Final Project: Gormiti Land and Creature Analysis



Problem Statement:


The goal of this project is to analyze a dataset representing the characteristics of some

Gormiti creatures. We want to build a model that can classify the land which a Gormiti

belongs to (Rockland, Iceland, Fireland, Windland).


The provided dataset includes the following information:

ID: unique identifier of a Gormiti creature.

Gormiti_Type: type of the Gormiti creature.

Nature: nature of the Gormiti creature.

Deadly: boolean representing if the Gormiti creature is very dangerous.

Growth_rate: growth rate of the Gormiti creature.

Strength: strength of the Gormiti creature.

Ray: type of ray that gave the Gormiti creature its superpowers.

Ability: specific ability of the Gormiti creature.

Attack: boolean representing if the Gormini creature attacks of not.

Against_Fire: average score of the Gormiti creature on battles against Gormitis

of type Fire.

Against_Meka: average score of the Gormiti creature on battles against Gormitis

of type Meka.

Against_Lava: average score of the Gormiti creature on battles against Gormitis

of type Lava.

Against_Wind: average score of the Gormiti creature on battles against Gormitis

of type Wind.

Against_Rock: average score of the Gormiti creature on battles against Gormitis

of type Rock.

Gormiti_Land: the land the Gormiti creature belongs to (target feature).


In order to build the desired predictive model, develop the following tasks and answer

the following questions.



Tasks


1. Load and explore the dataset. Eventually perform data engineering (handling

missing values, encoding categorical values, etc.).



2. Train a Softmax Regression model able to predict the Gormiti_Land class.


(a) Perform features pre-processing if necessary. Discuss your choices and the

performed actions.

(b) Train a regularized model by applying l2 regularization (default regularization

when you perform multinominal LogisticRegression on sklearn): tune

the hyperparameter C (eventually with grid search) in order to optimize the

generalization performances of the model. What happens if you increase the

value of C?

(c) Evaluate the trained model on the provided test set. Verify that the trained

model is not overfitting. Discuss the obtained results.



3. Train a DecisionTree model able to predict the Gormiti_Land class.


(a) Perform features pre-processing if necessary. Discuss your choices and the

performed actions.

(b) Search for good hyperparameter values for the DecisionTreeClassifier:

make a choice on the hyperparameters you might tune and provide com-

ments on your choice. Specify which hyperparameter might require a tuning

procedure, and which is the effect of the tuning procedure on the final model.

(c) Evaluate the trained model on the provided test set. Verify that the trained

model is not overfitting. Discuss the obtained results.



4. Train a Random Forest model able to predict the Gormiti_Land class.


(a) Perform features pre-processing if necessary. Discuss your choices and the

performed actions.

(b) Search for good hyperparameter values for the RandomForestClassifier:

make a choice on the hyperparameters you might tune and provide com-

ments on your choice. Specify which hyper-parameter might require a tuning

procedure (comment the hyperparameters related to the ensemble only, since

the ones related to the DecisionTree have been discussed above).

(c) Which are the 2 most important features for the trained model?

(d) Provide an out-of-bag evaluation of the trained model.

(e) Evaluate the trained model on the provided test set. Verify that the trained

model is not overfitting. Discuss the obtained results.



5. Train an AdaBoost model able to predict the Gormiti_Land class.


(a) Perform features pre-processing if necessary. Discuss your choices and the

performed actions.


(b) Search for good hyperparameter values for the AdaBoostClassifier: make

a choice on the hyperparameters you might tune and provide comments on

your choice. Specify which hyper-parameter might require a tuning proce-

dure.


(c) Evaluate the trained model on the provided test set. Verify that the trained

model is not overfitting. Discuss the obtained results.



6. Train a Soft Voting Classifier model able to predict the Gormiti_Land class.


(a) Combine the models trained above into an ensemble, using a soft voting

classifier. Select the models which allow soft voting and comment on this

choice. Eventually include other models (trained with different algorithms)

to the ensemble.

(b) Evaluate the trained model on the provided test set. Discuss the obtained

results.

(c) How much better does the voting classifier perform compared to the individ-

ual classifiers?



7. Train a Blender classifier able to predict the Gormiti_Land class.


(a) Exploit the predictions performed by a set of models: a Softmax Regression

model, a Decision Tree model, a Random Forest model and an AdaBoost

model. Use the best hyperparameters values identified above for all the ex-

ploited models.


(b) Evaluate the trained stacking ensemble model on the provided test set. Dis-

cuss the obtained results.


8. Compare the performances of the previously trained classifiers and ensemble

models evaluating them on the provided test set.



Sample:





This project can be used as final year project, capstone project, personal portfolio project, resume, proof of concept.


If you need implementation for the above problem or any of its variants, feel free to contact us.

bottom of page