jpgianfaldoni / MLBugDetection

https://jpgianfaldoni.github.io/MLBugDetection/
https://jpgianfaldoni.github.io/MLBugDetection/
MIT License
1 stars 1 forks source link

Seria possível sugerir valores de start e stop para a execução de check_monotonicity? #25

Open fbarth opened 2 years ago

fbarth commented 2 years ago

Ao executar check_monotonicity(model, row, attr, start, stop, steps=1000) precisamos saber o valor mínimo e máximo de attr.

Seria possível sugerir valores de start e stop para a execução de check_monotonicity? Assim, o usuário não precisaria se preocupar com a definição destes valores.

Observação: vale lembrar que não temos acesso aos dados de treinamento. Uma instância do modelo carregada via pkl fornece estipo de informação?

fbarth commented 2 years ago

Sem esta funcionalidade, este tipo de rotina não é válida:

row = X_train.loc[0:0]

N = 4

atributos = X_train.columns.to_list()
important = pd.DataFrame({'attr': atributos, 'value': model.feature_importances_})
most_import = important.sort_values(by='value', ascending=False)[0:N]['attr'].to_list()

print(most_import)

results = []
for attr in most_import:
    print(f'Attribute: {attr}')
    r = check_monotonicity(model, row, attr, -10, 100, steps=1000)
    results.append(r)