HPI_tpot_pipeline.py 1015 B

12345678910111213141516171819202122232425262728293031
  1. import numpy as np
  2. from sklearn.ensemble import VotingClassifier
  3. from sklearn.linear_model import LogisticRegression
  4. from sklearn.model_selection import train_test_split
  5. from sklearn.pipeline import make_pipeline, make_union
  6. from sklearn.preprocessing import FunctionTransformer, MaxAbsScaler, MinMaxScaler
  7. # NOTE: Make sure that the class is labeled 'class' in the data file
  8. tpot_data = np.recfromcsv(
  9. "PATH/TO/DATA/FILE", delimiter="COLUMN_SEPARATOR", dtype=np.float64
  10. )
  11. features = np.delete(
  12. tpot_data.view(np.float64).reshape(tpot_data.size, -1),
  13. tpot_data.dtype.names.index("class"),
  14. axis=1,
  15. )
  16. (
  17. training_features,
  18. testing_features,
  19. training_classes,
  20. testing_classes,
  21. ) = train_test_split(features, tpot_data["class"], random_state=42)
  22. exported_pipeline = make_pipeline(
  23. MaxAbsScaler(), MinMaxScaler(), LogisticRegression(C=49.0, dual=True, penalty="l2")
  24. )
  25. exported_pipeline.fit(training_features, training_classes)
  26. results = exported_pipeline.predict(testing_features)