alteryx / alteryx/evalml

AutoMLSearch execution leads to Segmentation Fault

Aperta
#3,629 5 commenti 0 reazioni 1 assegnatario Rivendicata da @cp2boston Vedi su GitHub
bug
Lingua principale
Python
Stelle
850
Fork
96
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

[A clear and concise description of what the bug is.]

PROBLEM:
=========
AutoMLSearch execution leads to Segmentation Fault
Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)

#### Code Sample, a copy-pastable example to reproduce your bug.

Environment:
(serverless-machine-learning) akram@ISHERIFF-M-RBNA models % uname -a
Darwin ISHERIFF-M-RBNA 21.5.0 Darwin Kernel Version 21.5.0: Tue Apr 26 21:08:22 PDT 2022; root:xnu-8020.121.3~4/RELEASE_X86_64 x86_64
(serverless-machine-learning) akram@ISHERIFF-M-RBNA models %
(serverless-machine-learning) akram@ISHERIFF-M-RBNA models % python3 -V
Python 3.9.7
(serverless-machine-learning) akram@ISHERIFF-M-RBNA models %

```python
# Your code here

## Evaluating Different Models by using the Auto-ML framework ""EVALML"" in this module.

print("\nImporting to Auto-ML based Training ...##")

import evalml ## AutoML technique to be used here This package is required only if you are doing automatic Data cleaning and Pre-processing without any Manual steps.
from PreProcess_Data import Xtrain,Xtest,Ytrain,Ytest
from evalml import AutoMLSearch
evalml.problem_types.ProblemTypes.all_problem_types

from sklearn.metrics import accuracy_score
from matplotlib import pyplot as plt

X_train, X_test, y_train, y_test = Xtrain,Xtest,Ytrain,Ytest

print("\n\n\tRunning Auto ML based training\n")

automl = AutoMLSearch(X_train=Xtrain, y_train=Ytrain, problem_type='binary')
print(automl.search())

automl.rankings
print(automl.best_pipeline)

best_pipeline=automl.best_pipeline

print(best_pipeline)

#GeneratedPipeline(parameters={'Imputer':{'categorical_impute_strategy': 'most_frequent', 'numeric_impute_strategy': 'mean',
# 'categorical_fill_value': None, 'numeric_fill_value': None}, 'Logistic Regression Classifier'
#:{'penalty': 'l2', 'C': 1.0, 'n_jobs': -1, 'multi_class': 'auto', 'solver': 'lbfgs'},})

automl.describe_pipeline(automl.rankings.iloc[0]["id"])

### Evaluate on hold out of the data samples
best_pipeline.score(X_test, y_test, objectives=["auc","f1","Precision","Recall"])

automl_auc.rankings
automl_auc.describe_pipeline(automl_auc.rankings.iloc[0]["id"])

best_pipeline_auc = automl_auc.best_pipeline
# get the score on holdout data
best_pipeline_auc.score(X_test, y_test, objectives=["auc"])

## Pickling the trained model
best_pipeline.save("AutomML_Eval_model.pkl")

check_model=automl.load('model.pkl')
check_model.predict_proba(X_test).to_dataframe()

```
>>> Debugged it with pdb as well and with breakpoints, print statements

================================================================
OUTPUT:
=======

/Users/akram/opt/anaconda3/envs/serverless-machine-learning/bin/python /Users/akram/AKRAM_CODE_FOLDER/ML/Washington_ML/serverless-machine-learning/ML_Proj_Template/ml1/models/Auto_Eval_Training.py

Importing to Auto-ML based Training ...##
::Reading of Input Data is Sucessfull::

MI_dir_L5_weight MI_dir_L5_mean ... HpHp_L0.01_covariance HpHp_L0.01_pcc
0 1.000000 60.000000 ... 0.000000e+00 0.000000e+00
1 1.000000 60.000000 ... 0.000000e+00 0.000000e+00
2 1.000000 60.000000 ... 0.000000e+00 0.000000e+00
3 1.000000 590.000000 ... 0.000000e+00 0.000000e+00
4 1.927179 590.000000 ... 0.000000e+00 0.000000e+00
... ... ... ... ... ...
9994 1.000000 330.000000 ... 4.240000e-29 0.000000e+00
9995 1.998594 330.000000 ... -1.110000e-28 -3.820000e-18
9996 1.000000 60.000016 ... 1.240000e-28 1.110000e-16
9997 1.000000 330.000000 ... 2.530000e-29 1.740000e-18
9998 1.999917 330.000000 ... -6.640000e-29 -4.560000e-18

[9999 rows x 115 columns]
MI_dir_L5_weight MI_dir_L5_mean ... HpHp_L0.01_covariance HpHp_L0.01_pcc
0 1.000000 60.0 ... 0.0 0.0
1 1.000000 60.0 ... 0.0 0.0
2 1.000000 60.0 ... 0.0 0.0
3 1.000000 590.0 ... 0.0 0.0
4 1.927179 590.0 ... 0.0 0.0

[5 rows x 115 columns]
The shape of Input dataset is : (9999, 115)
The shape of Input malicious dataset is : (9999, 115)
Clean/ Benign Traffic is 0 1
1 1
2 1
3 1
4 1
..
9994 1
9995 1
9996 1
9997 1
9998 1
Name: Out, Length: 9999, dtype: int64
Malicious Traffic is 0 0
1 0
2 0
3 0
4 0
..
9994 0
9995 0
9996 0
9997 0
9998 0
Name: Out, Length: 9999, dtype: int64
Concatenated Data Shape is (19998, 116)
combined1 shape is (19998, 116)
After remove: (19998, 114)

The OUTPUT is :
[0 1 1 ... 0 0 1]

OUTPUT SHAPE : (19998,)

Running Auto ML based training

Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.