Code to predict properties and their uncertainty.

ML model used: lgbm

Module Contents


quantile_regr_predint(x, y, jid, cv=2, n_jobs=-1, n_iter=10, random_state=508842607, scoring='neg_mean_absolute_error', prop='exfoliation_energy', write_files=True)

Perform Quantile regression and determine prediction intervals.

jarvis.ai.uncertainty.lgbm_quantile_uncertainty.quantile_regr_predint(x, y, jid, cv=2, n_jobs=- 1, n_iter=10, random_state=508842607, scoring='neg_mean_absolute_error', prop='exfoliation_energy', write_files=True)[source]

Perform Quantile regression and determine prediction intervals.

LOWER_ALPHA = 0.16 Mid model uses ls as loss function, not quantile, to

optimize for the mean, not the median

UPPER_ALPHA = 0.84 This choice of LOWER_ALPHA, UPPER_ALPHA gives a prediction interval ideally equal to 0.68, i.e. 1 standard deviation. However, the number of in-bound prediction must be computed for the specific fitted models, and that gives the true meaning of the uncertainties computed here. See: https://machinelearningmastery.com/prediction-intervals-for-machine-learning https://www.inovex.de/blog/uncertainty-quantification-deep-learning