Ë
    8Ò^jÃ  ã                   ó(   — d Z ddlmZ ddlmZ dd„Zy)z&This module contains utility routines.é    )Úis_classifier)Ú
_BinMapperNc                 óî  — |dvrt        dj                  |«      «      ‚| j                  «       }|d   dk(  rt        d«      ‚|d   rt        d«      ‚dd	|d
k(  rdnddddœ}i d||d      “d|d   “d|d   “d|d   “d|d   “d|d   “d|d   “d|d   “dd“dd “d!d"“d#|d$   rd%nd&“d'd(“d)d*“d+t	        «       j
                  “d,d-“d.|d/   “}|d   d0k(  r'|d
kD  r"|dxx   d
z  cc<   |�|dxx   ||dz
  z  z  cc<   d2d3|d
k(  rd4nd5d6d7dœ}d8d9||d      |d   |d   |d   |d   xs d"|d   |d   d |d$   rd
nd"|d$   d"k(  d:|d/   d;œ}d<d3|d
k(  rd=nd>d1d?dœ}||d      |d   |d   |d   |d   |d   d@dAt        |d$   «      dBœ	}	|dCk(  r#d"dDlm}
m	} t        | «      r |
dHi |¤ŽS  |dHi |¤ŽS |dEk(  r#d"dFlm}m} t        | «      r |dHi |¤ŽS  |dHi |¤ŽS d"dGlm}m} t        | «      r |dHi |	¤ŽS  |dHi |	¤ŽS )Ia¦  Return an unfitted estimator from another lib with matching hyperparams.

    This utility function takes care of renaming the sklearn parameters into
    their LightGBM, XGBoost or CatBoost equivalent parameters.

    # unmapped XGB parameters:
    # - min_samples_leaf
    # - min_data_in_bin
    # - min_split_gain (there is min_split_loss though?)

    # unmapped Catboost parameters:
    # max_leaves
    # min_*
    )ÚlightgbmÚxgboostÚcatboostz:accepted libs are lightgbm, xgboost, and catboost.  got {}ÚlossÚautozaauto loss is not accepted. We need to know if the problem is binary or multiclass classification.Úearly_stoppingz%Early stopping should be deactivated.Úregression_l2Úregression_l1é   ÚbinaryÚ
multiclassÚgammaÚpoisson)Úsquared_errorÚabsolute_errorÚlog_lossr   r   Ú	objectiveÚlearning_rateÚn_estimatorsÚmax_iterÚ
num_leavesÚmax_leaf_nodesÚ	max_depthÚmin_data_in_leafÚmin_samples_leafÚ
reg_lambdaÚl2_regularizationÚmax_binÚmax_binsÚmin_data_in_biné   Úmin_sum_hessian_in_leafgü©ñÒMbP?Úmin_split_gainr   Ú	verbosityÚverboseé
   iöÿÿÿÚboost_from_averageTÚenable_bundleFÚsubsample_for_binÚpoisson_max_delta_stepgê-�™—q=Úfeature_fraction_bynodeÚmax_featuresr   Nz
reg:linearÚ LEAST_ABSOLUTE_DEV_NOT_SUPPORTEDzreg:logisticzmulti:softmaxz	reg:gammazcount:poissonÚhistÚ	lossguideéÿÿÿÿ)Útree_methodÚgrow_policyr   r   r   Ú
max_leavesr   Úlambdar!   Úmin_child_weightr'   ÚsilentÚn_jobsÚcolsample_bynodeÚRMSEÚLoglossÚ
MultiClassÚPoissonÚMedianÚNewton)	Úloss_functionr   Ú
iterationsÚdepthr   r!   Úfeature_border_typeÚleaf_estimation_methodr(   r   )ÚLGBMClassifierÚLGBMRegressorr   )ÚXGBClassifierÚXGBRegressor)ÚCatBoostClassifierÚCatBoostRegressor© )Ú
ValueErrorÚformatÚ
get_paramsÚNotImplementedErrorr   Ú	subsampleÚboolr   rG   rH   r   r   rI   rJ   r   rK   rL   )Ú	estimatorÚlibÚ	n_classesÚsklearn_paramsÚlightgbm_loss_mappingÚlightgbm_paramsÚxgboost_loss_mappingÚxgboost_paramsÚcatboost_loss_mappingÚcatboost_paramsrG   rH   rI   rJ   rK   rL   s                   úy/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/sklearn/ensemble/_hist_gradient_boosting/utils.pyÚget_equivalent_estimatorr_   
   s†  € ð  Ð5Ñ5ÜØH×OÑOÐPSÓTó
ð 	
ð ×)Ñ)Ó+€Nà�fÑ Ò'ÜðBó
ð 	
ð Ð&Ò'Ü!Ð"IÓJÐJð )Ø)Ø )¨Q¢‘H°LØØñÐðØÐ*¨>¸&Ñ+AÑBðà˜¨Ñ8ðð 	˜ zÑ2ðð 	�nÐ%5Ñ6ð	ð
 	�^ KÑ0ðð 	˜NÐ+=Ñ>ðð 	�nÐ%8Ñ9ðð 	�> *Ñ-ðð 	˜1ðð 	" 4ðð 	˜!ðð 	˜>¨)Ò4‘R¸#ðð 	˜dðð 	˜ðð 	œZ›\×3Ñ3ðð  	! %ð!ð" 	" >°.Ñ#Að#€Oð( �fÑ Ò+°	¸A²àÐ1Ó2°aÑ7Ó2ð
 Ð Ø˜OÓ,°	¸YÈ¹]Ñ0KÑKÓ,ð &Ø<Ø&/°1¢n‘N¸/ØØ"ñÐð Ø"Ø)¨.¸Ñ*@ÑAØ'¨Ñ8Ø& zÑ2Ø$Ð%5Ñ6Ø# KÑ0Ò5°AØ Ð!4Ñ5Ø! *Ñ-Ø Ø(¨Ò3‘Q¸Ø  Ñ+¨qÑ0ØØ*¨>Ñ:ñ€Nð&  à<Ø!*¨a¢‘I°\ØØñÐð /¨~¸fÑ/EÑFØ'¨Ñ8Ø$ ZÑ0Ø Ñ,Ø$Ð%8Ñ9Ø! *Ñ-Ø'Ø"*Ü˜ yÑ1Ó2ñ
€Oð ˆjÒß:ä˜Ô#Ù!Ñ4 OÑ4Ð4á Ñ3 ?Ñ3Ð3à	�	Ò	ß7ä˜Ô#Ù Ñ2 >Ñ2Ð2áÑ1 .Ñ1Ð1÷ 	Cä˜Ô#Ù%Ñ8¨Ñ8Ð8á$Ñ7 Ñ7Ð7ó    )r   N)Ú__doc__Úsklearn.baser   Ú0sklearn.ensemble._hist_gradient_boosting.binningr   r_   rM   r`   r^   ú<module>rd      s   ðÙ ,õ
 'Ý GôK8r`   