I am beginner at python and I'm looking to implement a multi-objective optimization problem using the NSGA2 algorithm in Pymoo.
Here's a description of the problem:
- I want to build a logistic regression model using a feature F (datatype = pd.Series) and target T (datatype = pd.Series, 0's and 1's)
- The feature F is of the form: F = aA + bB + cC. Where A, B and C three distinct features (also pd.Series, and same len as F) and a, b and c are some scalars (optimization variables) within the range [amin, amax], [bmin, bmax] and [cmin, cmax]
- Objective 1: maximize F1-score
- Objective 2: maximize ROC AUC
- Constraint 1: 0 <= log-likelihood <= some ref. value
I already have the code setup to use sklearn and fit a logistic regression model using F and T and return respective model performance metrics (F1-score, ROC-AUC and Log-likelihood)
I'm new to the Pymoo library, and I'm struggling with defining the problem/execute. I'd appreciate if you could point me to any simple examples, hopefully ones that also deal with similar problems.
thanks!