#!/usr/bin/env python # coding: utf-8 # # PyCaret 2 Regression Example # This notebook is created using PyCaret 2.0. Last updated : 31-07-2020 # In[1]: # check version from pycaret.utils import version version() # # 1. Loading Dataset # In[2]: from pycaret.datasets import get_data data = get_data('insurance') # # 2. Initialize Setup # In[3]: from pycaret.regression import * reg1 = setup(data, target = 'charges', session_id=123, log_experiment=True, experiment_name='insurance1') # # 3. Compare Baseline # In[4]: best_model = compare_models(fold=5) # # 4. Create Model # In[5]: lightgbm = create_model('lightgbm') # In[6]: import numpy as np lgbms = [create_model('lightgbm', learning_rate=i) for i in np.arange(0.1,1,0.1)] # In[8]: print(len(lgbms)) # # 5. Tune Hyperparameters # In[9]: tuned_lightgbm = tune_model(lightgbm, n_iter=50, optimize = 'MAE') # In[10]: tuned_lightgbm # # 6. Ensemble Model # In[11]: dt = create_model('dt') # In[12]: bagged_dt = ensemble_model(dt, n_estimators=50) # In[13]: boosted_dt = ensemble_model(dt, method = 'Boosting') # # 7. Blend Models # In[14]: blender = blend_models() # # 8. Stack Models # In[15]: stacker = stack_models(estimator_list = compare_models(n_select=5, fold = 5, whitelist = models(type='ensemble').index.tolist())) # # 9. Analyze Model # In[16]: plot_model(dt) # In[17]: plot_model(dt, plot = 'error') # In[18]: plot_model(dt, plot = 'feature') # In[19]: evaluate_model(dt) # # 10. Interpret Model # In[20]: interpret_model(lightgbm) # In[21]: interpret_model(lightgbm, plot = 'correlation') # In[22]: interpret_model(lightgbm, plot = 'reason', observation = 12) # # 11. AutoML() # In[23]: best = automl(optimize = 'MAE') best # # 12. Predict Model # In[24]: pred_holdouts = predict_model(lightgbm) pred_holdouts.head() # In[25]: new_data = data.copy() new_data.drop(['charges'], axis=1, inplace=True) predict_new = predict_model(best, data=new_data) predict_new.head() # # 13. Save / Load Model # In[26]: save_model(best, model_name='best-model') # In[27]: loaded_bestmodel = load_model('best-model') print(loaded_bestmodel) # In[28]: from sklearn import set_config set_config(display='diagram') loaded_bestmodel[0] # In[29]: from sklearn import set_config set_config(display='text') # # 14. Deploy Model # In[30]: deploy_model(best, model_name = 'best-aws', authentication = {'bucket' : 'pycaret-test'}) # # 15. Get Config / Set Config # In[31]: X_train = get_config('X_train') X_train.head() # In[32]: get_config('seed') # In[33]: from pycaret.regression import set_config set_config('seed', 999) # In[34]: get_config('seed') # # 16. MLFlow UI # In[ ]: get_ipython().system('mlflow ui') # # End # Thank you. For more information / tutorials on PyCaret, please visit https://www.pycaret.org