Language: Python
Code at Github

In this data-driven world, it is vital to learn how to utilize the massive amounts of data available for extracting meaningful insights which could be done using powerful machine learning methods that are based on the abstract idea of artificial intelligence. Artificial Intelligence is the mimicking of human intelligence by machines with the use of potent algorithms. Within this domain, Machine Learning (ML) is a subset, that focuses on machines' ability to make predictions without explicit programming by recognizing patterns from the data. The project aims to explore and compare regression and classification machine learning techniques on two distinct datasets used in each task.

Data
For regression, the dataset- Online News Popularity contains a diverse set of features outlining articles published by Mashable over two years. The objective is to predict the number of shares (denoted by shares) these articles receive. For classification, a dataset containing consumer demographic attributes and coupon redemption rates was used. This dataset comprises categorical variables that reflect essential information for predicting whether customers would accept coupons. You can find this dataset on In-Vehicle Coupon Recommendation.

Model Performance
Logistic Regression and LDA: Both models showed an accuracy of around 61% on training and testing sets, but struggled with class imbalance, affecting their precision and recall.
K-Nearest Neighbors (KNN): Achieved 72% accuracy on the training set but dropped to 62% on the testing set, indicating overfitting despite balanced precision, recall, and F1-score. XGBoost: Emerged as the best-performing model, showcasing high accuracy and balanced performance across different metrics.
Other Models: Random Forest and SVM also performed well, while Decision Tree showed potential overfitting issues.

AUC-ROC Analysis
The AUC-ROC curve was used to evaluate the trade-off between sensitivity and specificity. XGBoost, Random Forest, and SVM demonstrated superior predictive power compared to Logistic Regression, LDA, and KNN.

Insights and Recommendations
The analysis provided several actionable insights:
Age and Gender Targeting: Promotions targeting drivers aged 21-50 and tailoring offers for male and female drivers could increase coupon acceptance.
Travel Patterns: Solo diners, especially in the evening, are more likely to redeem coupons. Exclusive discounts for solo diners could boost redemption rates.
Weather Impact: Coupons distributed during sunny weather, particularly for restaurants and coffee houses, have higher acceptance rates. Scheduling coupon releases based on weather forecasts could be beneficial.
Income Levels: Employed individuals, with higher income levels, can be targeted with smaller discount coupons for better acceptance.

Conclusion
The project highlighted the potential of XGBoost and SVM in predictive modeling for both regression and classification tasks. Despite some limitations, such as class imbalance and a lack of diverse features in the dataset, the study provided valuable insights into consumer behavior and predictive analytics.
Future work could focus on incorporating additional features, such as purchase history and location, to improve model accuracy. Advanced techniques like ensemble learning and neural networks could further enhance predictive performance.