Skip to content

Naive Bayesian Classifier from scratch using PyTorch and analysis of alcohol consumption

Notifications You must be signed in to change notification settings

ConsciousML/Naive-Bayes-Classifier-from-scratch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Naive-Bayes-Classifier-From-Scratch

Objective

The goal of this project is to implement a Naive Bayes Classifier from scratch in Pytorch. During this experiment, we will try to have some insights about the effect of alcohol on students behavior and success.

Blog Post

You can find the blog post related to this project here.

Dataset

The Student Alcohol Consumption will be utilized. This dataset contains very interesting data that has a lot of information about Portuguese students such as:

  • school - student's school (binary: 'GP' - Gabriel Pereira or 'MS' - Mousinho da Silveira)
  • sex - student's sex (binary: 'F' - female or 'M' - male)
  • age - student's age (numeric: from 15 to 22)
  • address - student's home address type (binary: 'U' - urban or 'R' - rural)
  • famsize - family size (binary: 'LE3' - less or equal to 3 or 'GT3' - greater than 3)
  • Pstatus - parent's cohabitation status (binary: 'T' - living together or 'A' - apart)
  • Medu - mother's education (numeric: 0 - none, 1 - primary education (4th grade), 2 – 5th to 9th grade, 3 – secondary education or 4 – higher education)
  • Fedu - father's education (numeric: 0 - none, 1 - primary education (4th grade), 2 – 5th to 9th grade, 3 – secondary education or 4 – higher education)
  • Mjob - mother's job (nominal: 'teacher', 'health' care related, civil 'services' (e.g. administrative or police), 'at_home' or 'other')
  • Fjob - father's job (nominal: 'teacher', 'health' care related, civil 'services' (e.g. administrative or police), 'at_home' or 'other')
  • reason - reason to choose this school (nominal: close to 'home', school 'reputation', 'course' preference or 'other')
  • guardian - student's guardian (nominal: 'mother', 'father' or 'other')
  • traveltime - home to school travel time (numeric: 1 - 1 hour)
  • studytime - weekly study time (numeric: 1 - 10 hours)
  • failures - number of past class failures (numeric: n if 1<=n<3, else 4)
  • schoolsup - extra educational support (binary: yes or no)
  • famsup - family educational support (binary: yes or no)
  • paid - extra paid classes within the course subject (Math or Portuguese) (binary: yes or no)
  • activities - extra-curricular activities (binary: yes or no)
  • nursery - attended nursery school (binary: yes or no)
  • higher - wants to take higher education (binary: yes or no)
  • internet - Internet access at home (binary: yes or no)
  • romantic - with a romantic relationship (binary: yes or no)
  • famrel - quality of family relationships (numeric: from 1 - very bad to 5 - excellent)
  • freetime - free time after school (numeric: from 1 - very low to 5 - very high)
  • goout - going out with friends (numeric: from 1 - very low to 5 - very high)
  • health - current health status (numeric: from 1 - very bad to 5 - very good)
  • absences - number of school absences (numeric: from 0 to 93)
  • G1 - first period grade (numeric: from 0 to 20)
  • G2 - second period grade (numeric: from 0 to 20)
  • G3 - final grade (numeric: from 0 to 20, output target)
  • Dalc - workday alcohol consumption (numeric: from 1 - very low to 5 - very high)
  • Walc - weekend alcohol consumption (numeric: from 1 - very low to 5 - very high)

Setup

In order to install the conda environment needed to run the notebook, run the following line:

conda env create --file requirements.yml
conda activate torch

About

Naive Bayesian Classifier from scratch using PyTorch and analysis of alcohol consumption

Topics

Resources

Stars

Watchers

Forks