KNN Classification with Python
Budget: $30 – $250 USD
Firstly, you must be proficient in Python and Jupyter Notebook to document and structure your code properly. The ability to write clear and comprehensive comments is essential so that anyone can follow your process without prior knowledge of the work.
Data manipulation and cleaning skills are crucial, particularly for importing and handling the Mushroom dataset. This includes managing missing values, which in this case involves using the KNeighborsClassifier to manually impute missing values. You will need to understand feature engineering, specifically one-hot encoding for feature data and label encoding for response data.
Machine learning skills are required to implement and train models. You need to know how to train KNN models for imputation and understand why you shouldn't one-hot encode response data for this step. Additionally, you should be able to train and evaluate RandomForestClassifier and LogisticRegression models, understanding the impact of hyperparameters and using magic commands to measure training time.
After training the models, you must compute and interpret accuracy, precision, and recall scores. This involves splitting the data into training and testing sets, evaluating model performance, and understanding the significance of these metrics.
Dimensionality reduction using PCA requires an understanding of variance and the ability to reduce dimensions while retaining a significant percentage of the variance. You need to compare the performance of models trained on both full and reduced datasets, analyzing and documenting the impact of dimensionality reduction on training time and model performance.
Throughout the notebook, you must provide detailed explanations of each step, particularly any deviations from the outlined procedure. This includes discussing why one-hot encoding the response data is not suitable for training certain models, the implications of PCA, and the comparison of model performance before and after dimensionality reduction.
Data manipulation and cleaning skills are crucial, particularly for importing and handling the Mushroom dataset. This includes managing missing values, which in this case involves using the KNeighborsClassifier to manually impute missing values. You will need to understand feature engineering, specifically one-hot encoding for feature data and label encoding for response data.
Machine learning skills are required to implement and train models. You need to know how to train KNN models for imputation and understand why you shouldn't one-hot encode response data for this step. Additionally, you should be able to train and evaluate RandomForestClassifier and LogisticRegression models, understanding the impact of hyperparameters and using magic commands to measure training time.
After training the models, you must compute and interpret accuracy, precision, and recall scores. This involves splitting the data into training and testing sets, evaluating model performance, and understanding the significance of these metrics.
Dimensionality reduction using PCA requires an understanding of variance and the ability to reduce dimensions while retaining a significant percentage of the variance. You need to compare the performance of models trained on both full and reduced datasets, analyzing and documenting the impact of dimensionality reduction on training time and model performance.
Throughout the notebook, you must provide detailed explanations of each step, particularly any deviations from the outlined procedure. This includes discussing why one-hot encoding the response data is not suitable for training certain models, the implications of PCA, and the comparison of model performance before and after dimensionality reduction.