§
    ¦˜ºhÕl  ã            
       ó’  — d dl Z d dlZd dlZd dlmZ d dlmZ d dl	m
Z
 d dlmZmZ d dlmZmZmZmZ d dlmZmZ d dlmZmZmZ d dlmZ d d	lmZ d d
lmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z& d dl'm(Z(m)Z) d dl*m+Z+m,Z, d dl-m.Z. d dl/m0Z0m1Z1m2Z2m3Z3 d dl4m5Z5 d dl6m7Z7 d dl8m9Z9 d dl:m;Z; d dl<m=Z=m>Z>m?Z? d„ Z@d„ ZAd„ ZBd„ ZCd„ ZDd„ ZEd„ ZF e
jG        ¦   «         ZHeHjI        ZJeHjK        ZL e;eLd¬¦  «        ZM e;eLd¬¦  «        ZN ejO        eLeMeNf¦  «        ZPeJjQ        \  ZRZSePjQ        d         ZT eU ejV        eL¦  «        ¦  «        ZW eX eYejV        eLeMeNf¦  «        ¦  «        ZZd„ Z[d„ Z\d „ Z]d!„ Z^d"„ Z_d#„ Z`d$„ Zad%„ Zbd&„ Zcd'„ Zdd(„ Zeejf         g                    d)d*d+g¦  «        d,„ ¦   «         Zhd-„ Zid.„ Zjd/„ Zkd0„ Zld1„ Zmd2„ Znd3„ Zod4„ Zpd5„ Zqejf         g                    d6 ed¬7¦  «         e1 ed¬7¦  «        ¦  «         e0 ed¬7¦  «        ¦  «        g¦  «        d8„ ¦   «         Zr G d9„ d:e¦  «        Zs G d;„ d<e¦  «        Ztejf         u                    d=¦  «        ejf         g                    d> e1 etd?¬@¦  «        ¦  «         e
j        ¦   «         f e2 es¦   «         ¦  «         e
j        dAd ¬B¦  «        fg¦  «        dC„ ¦   «         ¦   «         ZvdD„ Zwejf         g                    dEe1e!fe2e$fg¦  «        dF„ ¦   «         Zxejf         g                    dGeXejy        ezg¦  «        dH„ ¦   «         Z{dI„ Z|dJ„ Z}dK„ Z~dL„ Zejf         g                    dMe0dNfe1dOfg¦  «        dP„ ¦   «         Z€dQ„ Z�dS )Ré    N)Ú	cpu_count)Údatasets)ÚClassifierMixinÚclone)Úload_linnerudÚmake_classificationÚmake_multilabel_classificationÚmake_regression)ÚDummyClassifierÚDummyRegressor)ÚGradientBoostingRegressorÚRandomForestClassifierÚStackingRegressor)ÚNotFittedError)ÚSimpleImputer)ÚLassoÚLinearRegressionÚLogisticRegressionÚOrthogonalMatchingPursuitÚPassiveAggressiveClassifierÚRidgeÚSGDClassifierÚSGDRegressor)Újaccard_scoreÚmean_squared_error)ÚGridSearchCVÚtrain_test_split)ÚOneVsRestClassifier)ÚClassifierChainÚMultiOutputClassifierÚMultiOutputRegressorÚRegressorChain)Úmake_pipeline)Ú	LinearSVC)ÚDecisionTreeClassifier)Úshuffle)Úassert_almost_equalÚassert_array_almost_equalÚassert_array_equalc                  ó  — t          j        dd¬¦  «        \  } }| d d…         |d d…         }}| dd …         |dd …         }}t          j        |¦  «        }t	          d¦  «        D ]N}t          d¬¦  «        }|                     ||d d …|f         ¦  «         |                     |¦  «        |d d …|f<   ŒOt          t          d¬¦  «        ¦  «        }|                     ||¦  «         |                     |¦  «        }	t          ||	¦  «         d S ©Né   r   ©Ú	n_targetsÚrandom_stateé2   ©r/   )
r   r
   ÚnpÚ
zeros_likeÚranger   ÚfitÚpredictr!   r'   )
ÚXÚyÚX_trainÚy_trainÚX_testÚy_testÚ
referencesÚnÚrgrÚy_preds
             úf/var/www/html/services/rag-service/venv/lib/python3.11/site-packages/sklearn/tests/test_multioutput.pyÚtest_multi_target_regressionrB   6   s  € ÝÔ#¨a¸aÐ@Ñ@Ô@�D€A€qØ˜˜"˜”v˜q  " œvˆW€GØ�r�s�s”V˜Q˜r˜s˜sœVˆF€Få”˜vÑ&Ô&€JÝ�1‰XŒXð /ð /ˆÝ'°QÐ7Ñ7Ô7ˆØ�Š�˜    A œÑ'Ô'Ð'ØŸ;š; vÑ.Ô.ˆ
�1�1�1�a�4ÑÐå
Õ8ÀaÐHÑHÔHÑ
IÔ
I€CØ‡G‚GˆG�WÑÔÐØ�[Š[˜Ñ Ô €Få˜
 FÑ+Ô+Ð+Ð+Ð+ó    c                  ó8  — t          j        dd¬¦  «        \  } }| d d…         |d d…         }}| dd …         |dd …         }}t          j        |¦  «        }d}t	          d¦  «        D ]}t          dd¬¦  «        }	|	                     |d |…         |d |…|f         ¦  «         |	                     ||d …         ||d …|f         ¦  «         |	                     |¦  «        |d d …|f<   Œ€t          t          dd¬¦  «        ¦  «        }	|	                     |d |…         |d |…         ¦  «         |	                     ||d …         ||d …         ¦  «         |	                     |¦  «        }
t          ||
¦  «         t          t          t          ¦  «        d¦  «        rJ ‚d S )	Nr,   r   r-   r0   é   é   ©r/   Úmax_iterÚpartial_fit)r   r
   r2   r3   r4   r   rI   r6   r!   r'   Úhasattrr   )r7   r8   r9   r:   r;   r<   r=   Ú
half_indexr>   Úsgrr@   s              rA   Ú(test_multi_target_regression_partial_fitrM   H   s©  € ÝÔ#¨a¸aÐ@Ñ@Ô@�D€A€qØ˜˜"˜”v˜q  " œvˆW€GØ�r�s�s”V˜Q˜r˜s˜sœVˆF€Få”˜vÑ&Ô&€JØ€JÝ�1‰XŒXð /ð /ˆÝ¨°AÐ6Ñ6Ô6ˆØ�Š˜   Ô,¨g°k°z°kÀ1°nÔ.EÑFÔFÐFØ�Š˜ 
  Ô,¨g°j°k°kÀ1°nÔ.EÑFÔFÐFØŸ;š; vÑ.Ô.ˆ
�1�1�1�a�4ÑÐå
�|¸ÀQÐGÑGÔGÑ
HÔ
H€Cà‡O‚O�G˜K˜Z˜KÔ(¨'°+°:°+Ô*>Ñ?Ô?Ð?Ø‡O‚O�G˜J˜K˜KÔ(¨'°*°+°+Ô*>Ñ?Ô?Ð?à�[Š[˜Ñ Ô €FÝ˜
 FÑ+Ô+Ð+ÝÕ+­EÑ2Ô2°MÑBÔBÐBÐBÐBÐBÐBrC   c                  ó
  — t          j        dd¬¦  «        \  } }t          t          d¬¦  «        ¦  «        }d}t	          j        t          |¬¦  «        5  |                     | |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Né   r   r-   r1   zat least two dimensions©Úmatch)r   r
   r!   r   ÚpytestÚraisesÚ
ValueErrorr5   )r7   r8   r?   Úmsgs       rA   Ú'test_multi_target_regression_one_targetrV   _   sÃ   € åÔ#¨a¸aÐ@Ñ@Ô@�D€A€qÝ
Õ8ÀaÐHÑHÔHÑ
IÔ
I€CØ
#€CÝ	Œ•z¨Ð	-Ñ	-Ô	-ð ð Ø�Š��1‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ÁA8Á8A<Á?A<c            	      óH  — t          j        dd¬¦  «        \  } }| d d…         |d d…         }}| dd …         }t          j        t          j        t          j        t          j        t          j        fD ]°}t          t          d¬¦  «        ¦  «        }t          t          d¬¦  «        ¦  «        }| 
                    ||¦  «         | 
                     ||¦  «        |¦  «         t          |                     |¦  «        |                      ||¦  «        ¦  «        ¦  «         Œ±d S r+   )r   r
   ÚspÚ
csr_matrixÚ
csc_matrixÚ
coo_matrixÚ
dok_matrixÚ
lil_matrixr!   r   r5   r'   r6   )r7   r8   r9   r:   r;   Úsparser?   Ú
rgr_sparses           rA   Ú#test_multi_target_sparse_regressionr`   h   s  € ÝÔ#¨a¸aÐ@Ñ@Ô@�D€A€qØ˜˜"˜”v˜q  " œvˆW€GØˆrˆsˆsŒV€Fõ 	ŒÝ
ŒÝ
ŒÝ
ŒÝ
Œðð Uð Uˆõ #¥5°aÐ#8Ñ#8Ô#8Ñ9Ô9ˆÝ)­%¸QÐ*?Ñ*?Ô*?Ñ@Ô@ˆ
à�Š�˜Ñ!Ô!Ð!Ø�Š�v�v˜g‘”¨Ñ0Ô0Ð0å˜CŸKšK¨Ñ/Ô/°×1CÒ1CÀFÀFÈ6ÁNÄNÑ1SÔ1SÑTÔTÐTÐTðUð UrC   c                  ód  — g d¢g d¢g} ddgddgg}ddg}t          t          ¦   «         ¦  «        }d}t          j        t          |¬¦  «        5  |                     | ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          d	¬
¦  «        ¦  «        }|                     | ||¦  «         d S )N©rO   é   r,   ©é   rF   é   çTã¥›Ä 	@çX9´Èv¾@gš™™™™™é?g333333ã?zdoes not support sample weightsrP   r   r1   )r!   r   rR   rS   rT   r5   r   )r7   r8   Úwr?   rU   s        rA   Ú$test_multi_target_sample_weights_apirj   }   sÿ   € Ø	ˆˆ�I�I�IÐ€AØ
�ˆ˜% ˜Ð(€AØ	ˆcˆ
€Aå
Õ8Ñ:Ô:Ñ
;Ô
;€CØ
+€CÝ	Œ•z¨Ð	-Ñ	-Ô	-ð ð Ø�Š��1�aÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ Õ8ÀaÐHÑHÔHÑ
IÔ
I€CØ‡G‚GˆAˆq�!ÑÔÐÐÐs   ÁA1Á1A5Á8A5c                  ó–  — g d¢g d¢g} ddgddgg}ddg}t          t          dd¬	¦  «        ¦  «        }|                     | ||¦  «         ddg}t          t          dd¬	¦  «        ¦  «        }|                     | ||¦  «         |                     | ¦  «        d         d         |                     | ¦  «        d         d         k    sJ ‚d S )
Nrb   rd   rg   rh   ç       @ç      ð?r   rF   rG   )r!   r   rI   r6   )r7   r8   ri   Úrgr_wr?   s        rA   Ú+test_multi_target_sample_weight_partial_fitro   Œ   sÝ   € à	ˆˆ�I�I�IÐ€AØ
�ˆ˜% ˜Ð(€AØ	ˆcˆ
€AÝ ¥¸1ÀqÐ!IÑ!IÔ!IÑJÔJ€EØ	×Ò�a˜˜AÑÔÐð 
ˆcˆ
€AÝ
�|¸ÀQÐGÑGÔGÑ
HÔ
H€CØ‡O‚O�A�q˜!ÑÔÐà�;Š;�q‰>Œ>˜!Ô˜QÔ 5§=¢=°Ñ#3Ô#3°AÔ#6°qÔ#9Ò9Ð9Ð9Ð9Ð9Ð9rC   c                  ó¤  — g d¢g d¢g} ddgddgg}ddg}t          t          d¬¦  «        ¦  «        }|                     | ||¦  «         g d¢g d¢g d¢g}ddgddgddgg}t          t          d¬¦  «        ¦  «        }|                     ||¦  «         g d	¢g d
¢g}t          |                     |¦  «        |                     |¦  «        ¦  «         d S )Nrb   rd   rg   rh   rl   rm   r   r1   ©g      ø?g      @ç      @©rr   g      @g      @)r!   r   r5   r'   r6   )ÚXwÚywri   rn   r7   r8   r?   r;   s           rA   Ú test_multi_target_sample_weightsrv   œ   sú   € à
ˆ)ˆ)�Y�Y�YÐ	€BØ�%ˆ.˜5 %˜.Ð	)€BØ	ˆcˆ
€AÝ Õ!:ÈÐ!JÑ!JÔ!JÑKÔK€EØ	‡I‚Iˆb�"�aÑÔÐð 
ˆˆ�I�I�I˜y˜y˜yÐ)€AØ
�ˆ˜% ˜¨%°¨Ð8€AÝ
Õ8ÀaÐHÑHÔHÑ
IÔ
I€CØ‡G‚GˆAˆq�M„M€Màˆoˆo˜˜˜Ð/€FÝ˜Ÿš FÑ+Ô+¨U¯]ª]¸6Ñ-BÔ-BÑCÔCÐCÐCÐCrC   rO   r1   rc   c                  ó@  — t          ddd¬¦  «        } t          | d¬¦  «        }|                     t          t          t
          ¦  «         |j        d         }|                     t          t          ¦  «         |j        d         }t          ¦   «         dk    r||usJ ‚d S d S )NÚlog_lossrO   rF   ©Úlossr/   rH   re   )Ún_jobsr   )r   r    rI   r7   r8   ÚclassesÚestimators_r   )Úsgd_linear_clfÚmorÚest1Úest2s       rA   Ú8test_multi_output_classification_partial_fit_parallelismr‚   ¼   s•   € Ý"¨
ÀÈQÐOÑOÔO€NÝ
 °qÐ
9Ñ
9Ô
9€CØ‡O‚O•A•q�'Ñ"Ô"Ð"ØŒ?˜1Ô€DØ‡O‚O•A•qÑÔÐØŒ?˜1Ô€DÝ�{„{�Q‚€à˜4ÐÐÐÐð €àÐrC   c                  óP  — t          dd¬¦  «        } t          | ¦  «        }|                     t          t          ¦  «         t          |d¦  «        rJ ‚t          ddd¬¦  «        } t          | ¦  «        }|                     t          t          ¦  «         t          |d¦  «        sJ ‚d S )NrO   rF   rG   Úpredict_probarx   ry   )r   r    r5   r7   r8   rJ   )r~   Úmulti_target_linears     rA   Ú'test_hasattr_multi_output_predict_probar†   É   s¨   € õ #°¸AÐ>Ñ>Ô>€NÝ/°Ñ?Ô?ÐØ×Ò�A�qÑ!Ô!Ð!ÝÐ*¨OÑ<Ô<Ð<Ð<Ð<õ #¨
ÀÈQÐOÑOÔO€NÝ/°Ñ?Ô?ÐØ×Ò�A�qÑ!Ô!Ð!ÝÐ&¨Ñ8Ô8Ð8Ð8Ð8Ð8Ð8rC   c                  ó  — t          dd¬¦  «        } ddi}d„ }t          | ||dd¬	¦  «        }t          |¦  «        }|                     t          t
          ¦  «         |                     t          ¦  «         t          dd¬¦  «        } t          | ¦  «        }|                     t          t
          ¦  «         d
}t          j        t          |¬¦  «        5  |                     t          ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NrO   rF   rG   rz   )Úhingerx   Úmodified_huberc                 ó*   — t          | d¦  «        rdS dS )Nr„   rm   g        )rJ   )Ú	estimatorr7   r8   s      rA   Úcustom_scorerz6test_multi_output_predict_proba.<locals>.custom_scorerÞ   s   € Ý�9˜oÑ.Ô.ð 	Ø�3à�3rC   r,   Úraise)Ú
param_gridÚscoringÚcvÚerror_scorez8probability estimates are not available for loss='hinge'rP   )
r   r   r    r5   r7   r8   r„   rR   rS   ÚAttributeError)r~   ÚparamrŒ   Úgrid_clfr…   Úerr_msgs         rA   Útest_multi_output_predict_probar–   Ù   sW  € Ý"°¸AÐ>Ñ>Ô>€NØÐ<Ð=€Eðð ð õ ØØØØØðñ ô €Hõ 0°Ñ9Ô9ÐØ×Ò�A�qÑ!Ô!Ð!à×%Ò%¥aÑ(Ô(Ð(õ #°¸AÐ>Ñ>Ô>€NÝ/°Ñ?Ô?ÐØ×Ò�A�qÑ!Ô!Ð!ØH€GÝ	Œ•~¨WÐ	5Ñ	5Ô	5ð -ð -Ø×)Ò)­!Ñ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -ð -ð -s   ÃC;Ã;C?ÄC?c                  óø  — t          ddd¬¦  «        } t          | ¦  «        }t          j        d         dz  }|                     t          d |…         t
          d |…         t          ¬¦  «         |                     t          ¦  «        }t          t          f|j        k    sJ ‚|                     t          |d …         t
          |d …         ¦  «         |                     t          ¦  «        }t          t          f|j        k    sJ ‚t          d¦  «        D ]æ}t          | ¦  «        } |                      t          d |…         t
          d |…|f         t          |         ¬¦  «         t          |                      t          ¦  «        |d d …|f         ¦  «         |                      t          |d …         t
          |d …|f         ¦  «         t          |                      t          ¦  «        |d d …|f         ¦  «         Œçd S )	Nrx   rO   rF   ry   r   rc   )r|   r,   )r   r    r7   ÚshaperI   r8   r|   r6   Ú	n_samplesÚ	n_outputsr4   r   r)   )r~   r…   rK   Úfirst_predictionsÚsecond_predictionsÚis         rA   Ú,test_multi_output_classification_partial_fitrž   ú   sÛ  € õ #¨
ÀÈQÐOÑOÔO€NÝ/°Ñ?Ô?Ðõ ”˜”˜q‘€JØ×#Ò#¥A k z k¤NµA°k°z°k´NÍGÐ#ÑTÔTÐTà+×3Ò3µAÑ6Ô6ÐÝ•yÐ!Ð%6Ô%<Ò<Ð<Ð<Ð<à×#Ò#¥A j k k¤NµA°j°k°k´NÑCÔCÐCØ,×4Ò4µQÑ7Ô7ÐÝ•yÐ!Ð%7Ô%=Ò=Ð=Ð=Ð=õ �1‰XŒXð Pð Pˆå˜~Ñ.Ô.ˆØ×"Ò"ÝˆkˆzˆkŒN�A˜k˜z˜k¨1˜nÔ-µw¸q´zð 	#ñ 	
ô 	
ð 	
õ 	˜>×1Ò1µ!Ñ4Ô4Ð6GÈÈÈÈ1ÈÔ6MÑNÔNÐNØ×"Ò"¥1 Z [ [¤>µ1°Z°[°[À!°^Ô3DÑEÔEÐEÝ˜>×1Ò1µ!Ñ4Ô4Ð6HÈÈÈÈAÈÔ6NÑOÔOÐOÐOðPð PrC   c                  óô   — t          ddd¬¦  «        } t          | ¦  «        }d}t          j        t          |¬¦  «        5  |                     t          t          ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrx   rO   rF   ry   z8classes must be passed on the first call to partial_fit.rP   )r   r    rR   rS   rT   rI   r7   r8   )r~   r…   rU   s      rA   ÚGtest_multi_output_classification_partial_fit_no_first_classes_exceptionr      s¸   € Ý"¨
ÀÈQÐOÑOÔO€NÝ/°Ñ?Ô?ÐØ
D€CÝ	Œ•z¨Ð	-Ñ	-Ô	-ð .ð .Ø×'Ò'­­1Ñ-Ô-Ð-ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .ð .ð .s   ¿!A-Á-A1Á4A1c                  óª  — t          dd¬¦  «        } t          | ¦  «        }|                     t          t          ¦  «         |                     t          ¦  «        }t          t          f|j        k    sJ ‚| 	                    t          ¦  «        }t          |¦  «        t          k    sJ ‚|D ]}t          t          f|j        k    sJ ‚Œt          t          j        t          j        |¦  «        d¬¦  «        |¦  «         t!          d¦  «        D ]Ç}t#          | ¦  «        }|                     t          t          d d …|f         ¦  «         t%          |                     t          ¦  «        ¦  «        t%          |d d …|f         ¦  «        k    sJ ‚t          t%          | 	                    t          ¦  «        ¦  «        t%          ||         ¦  «        ¦  «         ŒÈd S )Né
   rO   ©Ún_estimatorsr/   ©Úaxisr,   )r   r    r5   r7   r8   r6   r™   rš   r˜   r„   ÚlenÚ	n_classesr)   r2   ÚargmaxÚdstackr4   r   Úlist)ÚforestÚmulti_target_forestÚpredictionsr„   Úclass_probabilitiesr�   Úforest_s          rA   Ú test_multi_output_classificationr±   !  s¬  € õ $°À!ÐDÑDÔD€FÝ/°Ñ7Ô7Ðð ×Ò�A�qÑ!Ô!Ð!à%×-Ò-­aÑ0Ô0€KÝ•yÐ! [Ô%6Ò6Ð6Ð6Ð6à'×5Ò5µaÑ8Ô8€Måˆ}ÑÔ¥Ò*Ð*Ð*Ð*Ø,ð Cð CÐÝ�9Ð%Ð)<Ô)BÒBÐBÐBÐBÐBå•r”y¥¤¨=Ñ!9Ô!9ÀÐBÑBÔBÀKÑPÔPÐPõ �1‰XŒXð Sð SˆÝ˜‘-”-ˆØ�Š•A•q˜˜˜˜A˜”wÑÔÐÝ�G—O’O¥AÑ&Ô&Ñ'Ô'­4°¸A¸A¸A¸q¸DÔ0AÑ+BÔ+BÒBÐBÐBÐBÝ�4 × 5Ò 5µaÑ 8Ô 8Ñ9Ô9½4ÀÈaÔ@PÑ;QÔ;QÑRÔRÐRÐRð	Sð SrC   c                  ó(  — t          dd¬¦  «        } t          | ¦  «        }t          |¦  «        }|                     t          t
          ¦  «         |                     t          ¦  «        }t          t          f|j	        k    sJ ‚t          d¦  «        D ]}t          |¦  «        }|                     t          t
          d d …|f         ¦  «         t          |                     t          ¦  «        ¦  «        t          |d d …|f         ¦  «        k    sJ ‚Œ€d S )NÚautor   ©Údualr/   r,   )r$   r   r    r5   r7   r8   r6   r™   rš   r˜   r4   r   r«   )ÚsvcÚmulti_class_svcÚmulti_target_svcr®   r�   Úmulti_class_svc_s         rA   Ú%test_multiclass_multioutput_estimatorrº   >  s  € å
˜¨aÐ
0Ñ
0Ô
0€CÝ)¨#Ñ.Ô.€OÝ,¨_Ñ=Ô=Ðà×Ò��AÑÔÐà"×*Ò*­1Ñ-Ô-€KÝ•yÐ! [Ô%6Ò6Ð6Ð6Ð6õ �1‰XŒXð Lð LˆÝ  Ñ1Ô1ÐØ×Ò�Q¥ ! ! ! Q $¤Ñ(Ô(Ð(ÝÐ$×,Ò,­QÑ/Ô/Ñ0Ô0µD¸ÀQÀQÀQÈÀTÔ9JÑ4KÔ4KÒKÐKÐKÐKÐKðLð LrC   c            	      óà  — d} t           j                             | ¦  «        }|                     d¬¦  «        }t          j        g d¢¦  «                             dd¦  «        }t          j        g d¢¦  «                             dd¦  «        }t          j        ||gd¬¦  «        }t          t          d	| ¬
¦  «        ¦  «        }| 	                    ||¦  «         | 
                    |¦  «        }t          j        ddgddgddgddgddgg¦  «        t          j        g d¢g d¢g d¢g d¢g d¢g¦  «        g}t          t          |¦  «        ¦  «        D ]}	t          ||	         ||	         ¦  «         Œd S )Ni  )rF   rF   )Úsize)ÚbÚar¾   r½   r¾   rF   rO   )ÚdÚeÚfrÀ   r¿   r¥   Ú	liblinear)Úsolverr/   gšu)"�Î?g™¢u·_|è?gt“Ä³€å?gÑÙv˜þÔ?g/‰’�á?g¢íÚÖý Ý?gK[ÇaSÖ?g[ÒrOÖä?gaÊ]×q”ç?g?kDQ×Ð?)g 8öì¹Œà?g°ªŒ�Î?gèo|Ì‹<Ï?)g¨©§‡OWÌ?g˜Ú”#Kƒä?gÚz~ÿƒ›Á?)gP1s&qÅ?g„çþf^Ç?g„]=¼!Ìä?)gâ{Y;‚Ñ?gë®hJªá?g�L$$SÆ?)g»XA¡Ø	å?gó 7%®Ð?g™˜‘î¥ø´?)r2   ÚrandomÚRandomStateÚnormalÚarrayÚreshapeÚconcatenater    r   r5   r„   r4   r§   r'   )
ÚseedÚrngr7   Úy1Úy2ÚYÚclfÚy_resultÚy_actualr�   s
             rA   Ú3test_multiclass_multioutput_estimator_predict_probarÒ   P  s¨  € Ø€Dõ Œ)×
Ò
 Ñ
%Ô
%€Cð 	�
Š
˜ˆ
ÑÔ€Aõ 
ŒÐ+Ð+Ð+Ñ	,Ô	,×	4Ò	4°Q¸Ñ	:Ô	:€BÝ	ŒÐ+Ð+Ð+Ñ	,Ô	,×	4Ò	4°Q¸Ñ	:Ô	:€Bå
Œ˜˜B�x aÐ(Ñ(Ô(€Aå
Ý +¸DÐAÑAÔAñô €Cð ‡G‚GˆAˆq�M„M€Mà× Ò  Ñ#Ô#€Hå
Œà˜ZÐ(Ø˜ZÐ(Ø˜ZÐ(Ø˜ZÐ(Ø˜ZÐ(ðñ	
ô 	
õ 	Œà3Ð3Ð3Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4ðñ	
ô 	
ð€Hõ* •3�x‘=”=Ñ!Ô!ð 6ð 6ˆÝ˜H QœK¨°!¬Ñ5Ô5Ð5Ð5ð6ð 6rC   c                  óÔ  — g d¢g d¢g} ddgddgg}t          j        ddg¦  «        }t          dd¬	¦  «        }t          |¦  «        }|                     | ||¦  «         g d¢g d¢g d¢g}ddgddgddgg}t          dd¬	¦  «        }t          |¦  «        }|                     ||¦  «         g d
¢g d¢g}t          |                     |¦  «        |                     |¦  «        ¦  «         d S )Nrb   rd   r,   rc   rl   rm   r¢   rO   r£   rq   rs   )r2   Úasarrayr   r    r5   r'   r6   )	rt   ru   ri   r¬   Úclf_wr7   r8   rÏ   r;   s	            rA   Ú/test_multi_output_classification_sample_weightsrÖ     s  € à
ˆ)ˆ)�Y�Y�YÐ	€BØˆaˆ&�1�a�&Ð	€BÝ
Œ
�C˜�:ÑÔ€AÝ#°À!ÐDÑDÔD€FÝ! &Ñ)Ô)€EØ	‡I‚Iˆb�"�aÑÔÐð 
ˆˆ�I�I�I˜y˜y˜yÐ)€AØ
ˆQˆ�!�Q�˜!˜Q˜Ð €AÝ#°À!ÐDÑDÔD€FÝ
 Ñ
'Ô
'€CØ‡G‚GˆAˆq�M„M€Màˆoˆo˜˜˜Ð/€FÝ˜Ÿš FÑ+Ô+¨U¯]ª]¸6Ñ-BÔ-BÑCÔCÐCÐCÐCrC   c                  óæ  — g d¢g d¢g d¢g} ddgddgddgg}t          j        g d¢¦  «        }t          dd¬	¦  «        }t          |¦  «        }|                     | ||¦  «         g d¢g d¢g d¢g d¢g}ddgddgddgddgg}t          dd¬	¦  «        }t          |¦  «        }|                     ||¦  «         g d¢g}t          |                     |¦  «        |                     |¦  «        ¦  «         d S )
Nrb   rd   rq   r,   rc   )rl   rm   rm   rO   é   rG   )r2   rÔ   r   r    r5   r(   r6   )	rt   ru   ri   r~   rÕ   r7   r8   rÏ   r;   s	            rA   Ú;test_multi_output_classification_partial_fit_sample_weightsrÙ   “  s"  € à
ˆ)ˆ)�Y�Y�Y   Ð	0€BØˆaˆ&�1�a�&˜1˜a˜&Ð	!€BÝ
Œ
�?�?�?Ñ#Ô#€AÝ"°¸BÐ?Ñ?Ô?€NÝ! .Ñ1Ô1€EØ	‡I‚Iˆb�"�aÑÔÐð 
ˆˆ�I�I�I˜y˜y˜y¨/¨/¨/Ð:€AØ
ˆQˆ�!�Q�˜!˜Q˜ ! Q Ð(€AÝ"°¸BÐ?Ñ?Ô?€NÝ
 Ñ
/Ô
/€CØ‡G‚GˆAˆq�M„M€MØˆoˆoÐ€FÝ˜cŸkšk¨&Ñ1Ô1°5·=²=ÀÑ3HÔ3HÑIÔIÐIÐIÐIrC   c                  ó¼  — t          t          dd¬¦  «        ¦  «        } t          j        t          ¦  «        5  |                      t          t          ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j	        t          t          f¦  «        }|                      t          t          ¦  «         t          j        t          ¦  «        5  |                      t          |¦  «         d d d ¦  «         n# 1 swxY w Y   d}t          j        t          |¬¦  «        5  |                      t          t          d d …df         ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr³   r   r´   zUnknown label typerP   rO   )r    r$   rR   rS   r   Úscorer7   r8   r2   Úcolumn_stackrÌ   rÍ   r5   rT   )ÚmocÚy_newrU   s      rA   Útest_multi_output_exceptionsrß   ¦  sÓ  € õ  ¥	¨vÀAÐ FÑ FÔ FÑ
GÔ
G€CÝ	Œ•~Ñ	&Ô	&ð ð Ø�	Š	•!•Q‰Œˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ
 ŒO�R¥˜HÑ%Ô%€EØ‡G‚G�A�q�M„M€MÝ	Œ•zÑ	"Ô	"ð ð Ø�	Š	•!�UÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð €CÝ	Œ•z¨Ð	-Ñ	-Ô	-ð ð Ø�Š••1�Q�Q�Q˜�T”7ÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s5   ¸!A%Á%A)Á,A)Ã	C1Ã1C5Ã8C5Ä+EÅEÅEÚresponse_methodr„   r6   c                 óÜ   — t          t          ¦   «         ¦  «        }t          j        t          ¦  «        5   t          || ¦  «        t          ¦  «         ddd¦  «         dS # 1 swxY w Y   dS )zECheck that we raise the proper error when the estimator is not fittedN)r    r   rR   rS   r   Úgetattrr7   )rà   rÝ   s     rA   Ú"test_multi_output_not_fitted_errorrã   º  s¦   € õ  Õ 2Ñ 4Ô 4Ñ
5Ô
5€CÝ	Œ•~Ñ	&Ô	&ð )ð )Ø%���_Ñ%Ô%¥aÑ(Ô(Ð(ð)ð )ð )ñ )ô )ð )ð )ð )ð )ð )ð )ð )øøøð )ð )ð )ð )ð )ð )s   µA!Á!A%Á(A%c                  óÀ  — t          t          ¦   «         ¦  «        } t          | d¦  «        sJ ‚|                      t          t
          ¦  «         t          | d¦  «        sJ ‚t          t          d¬¦  «        ¦  «        } t          | d¦  «        rJ ‚d}t          j        t          |¬¦  «        5  |  
                    t          ¦  «         ddd¦  «         n# 1 swxY w Y   |                      t          t
          ¦  «         t          | d¦  «        rJ ‚t          j        t          |¬¦  «        5  |  
                    t          ¦  «         ddd¦  «         dS # 1 swxY w Y   dS )zVCheck the behavior for the delegation of predict_proba to the underlying
    estimatorr„   r³   ©rµ   z3'LinearSVC' object has no attribute 'predict_proba'rP   N)r    r   rJ   r5   r7   r8   r$   rR   rS   r’   r„   )rÝ   rU   s     rA   Ú(test_multi_output_delegate_predict_probaræ   Â  s¼  € õ
  Õ 2Ñ 4Ô 4Ñ
5Ô
5€CÝ�3˜Ñ(Ô(Ð(Ð(Ð(Ø‡G‚G�A�q�M„M€MÝ�3˜Ñ(Ô(Ð(Ð(Ð(õ  ¥	¨vÐ 6Ñ 6Ô 6Ñ
7Ô
7€CÝ�s˜OÑ,Ô,Ð,Ð,Ð,Ø
?€CÝ	Œ•~¨SÐ	1Ñ	1Ô	1ð ð Ø×Ò�!ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à‡G‚G�A�q�M„M€MÝ�s˜OÑ,Ô,Ð,Ð,Ð,Ý	Œ•~¨SÐ	1Ñ	1Ô	1ð ð Ø×Ò�!ÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s$   Â,CÃCÃCÄ+EÅEÅEc                  ót   — t          ddddd¬¦  «        \  } }t          j        d„ |D ¦   «         ¦  «        }| |fS )Niè  éd   é   r¢   r   )r™   Ú
n_featuresr¨   Ún_informativer/   c                 óR   — g | ]$}d „ t          |d¦  «        dd…         D ¦   «         ‘Œ%S )c                 ó,   — g | ]}t          |¦  «        ‘ŒS © )Úint)Ú.0Úyyys     rA   ú
<listcomp>zLgenerate_multilabel_dataset_with_correlations.<locals>.<listcomp>.<listcomp>à  s   € ÐDÐDÐD c�˜S™œÐDÐDÐDrC   z#06brc   N)Úformat)rð   Úyys     rA   rò   zAgenerate_multilabel_dataset_with_correlations.<locals>.<listcomp>à  s:   € ÐQÐQÐQÈÐDÐD­V°B¸Ñ-?Ô-?ÀÀÀÔ-CÐDÑDÔDÐQÐQÐQrC   )r   r2   rÇ   )r7   r8   ÚY_multis      rA   Ú-generate_multilabel_dataset_with_correlationsrö   Ø  sR   € õ Ø 3°"ÀBÐUVðñ ô �D€A€qõ ŒhÐQÐQÈqÐQÑQÔQÑRÔR€GØˆgˆ:ÐrC   c                  óV  — t          ¦   «         \  } }t          t          d¬¦  «        ¦  «        }|                     | |¦  «         |                     | ¦  «        }|j        |j        k    sJ ‚|                     | ¦  «        }|dk    }t          ||¦  «         t          |d¦  «        rJ ‚d S )Nr³   rå   r   r„   )	rö   r   r$   r5   r6   r˜   Údecision_functionr)   rJ   )r7   rÎ   Úclassifier_chainÚY_predÚ
Y_decisionÚY_binarys         rA   Ú5test_classifier_chain_fit_and_predict_with_linear_svcrý   ä  s±   € å8Ñ:Ô:�D€A€qÝ&¥y°fÐ'=Ñ'=Ô'=Ñ>Ô>ÐØ×Ò˜˜AÑÔÐà×%Ò% aÑ(Ô(€FØŒ<˜1œ7Ò"Ð"Ð"Ð"à!×3Ò3°AÑ6Ô6€Jà˜QŠ€HÝ�x Ñ(Ô(Ð(ÝÐ'¨Ñ9Ô9Ð9Ð9Ð9Ð9Ð9rC   c                  óˆ  — t          ¦   «         \  } }t          j        | ¦  «        }t          t	          ¦   «         ¦  «        }|                     ||¦  «         |                     |¦  «        }t          t	          ¦   «         ¦  «        }|                     | |¦  «         |                     | ¦  «        }t          ||¦  «         d S ©N)rö   rX   rY   r   r   r5   r6   r)   )r7   rÎ   ÚX_sparserù   ÚY_pred_sparseÚY_pred_denses         rA   Ú6test_classifier_chain_fit_and_predict_with_sparse_datar  ô  s²   € å8Ñ:Ô:�D€A€qÝŒ}˜QÑÔ€Hå&Õ'9Ñ';Ô';Ñ<Ô<ÐØ×Ò˜ 1Ñ%Ô%Ð%Ø$×,Ò,¨XÑ6Ô6€Må&Õ'9Ñ';Ô';Ñ<Ô<ÐØ×Ò˜˜AÑÔÐØ#×+Ò+¨AÑ.Ô.€Lå�} lÑ3Ô3Ð3Ð3Ð3rC   c                  ó   — t          ¦   «         \  } }| d d…d d …f         }| dd …d d …f         }|d d…d d …f         }|dd …d d …f         }t          t          ¦   «         ¦  «        }|                     ||¦  «         |                     |¦  «        }t          t          ¦   «         ¦  «        }|                     ||¦  «         |                     |¦  «        }	t          ||	d¬¦  «        t          ||d¬¦  «        k    sJ ‚d S )NiX  Úsamples©Úaverage)rö   r   r   r5   r6   r   r   )
r7   rÎ   r9   r;   ÚY_trainÚY_testÚovrÚ
Y_pred_ovrÚchainÚY_pred_chains
             rA   Ú+test_classifier_chain_vs_independent_modelsr    s$  € õ 9Ñ:Ô:�D€A€qØ����a�a�a�Œj€GØˆsˆtˆt�Q�Q�QˆwŒZ€FØ����a�a�a�Œj€GØˆsˆtˆt�Q�Q�QˆwŒZ€Få
Õ0Ñ2Ô2Ñ
3Ô
3€CØ‡G‚GˆG�WÑÔÐØ—’˜VÑ$Ô$€JåÕ.Ñ0Ô0Ñ1Ô1€EØ	‡I‚Iˆg�wÑÔÐØ—=’= Ñ(Ô(€Lå˜ °yÐAÑAÔAÅMØ�
 IðEñ Eô Eò ð ð ð ð ð rC   c            
      ó`  — t          ¦   «         \  } }t          t          ¦   «         ¦  «        t          t	          ¦   «         ¦  «        g}|D ]•}|                     | |¦  «         |                     | ¦  «        }|j        |j        k    sJ ‚d„ |j        D ¦   «         t          t          | j        d         | j        d         |j        d         z   ¦  «        ¦  «        k    sJ ‚Œ–|d                              | ¦  «        }|dk    }t          ||¦  «         t          |d         t          ¦  «        sJ ‚d S )Nc                 ó&   — g | ]}|j         j        ‘ŒS rî   )Úcoef_r¼   )rð   Úcs     rA   rò   z3test_base_chain_fit_and_predict.<locals>.<listcomp>#  s   € Ð8Ð8Ð8 �””Ð8Ð8Ð8rC   rO   ç      à?)rö   r"   r   r   r   r5   r6   r˜   r}   r«   r4   r„   r)   Ú
isinstancer   )r7   rÎ   Úchainsr  rú   ÚY_probrü   s          rA   Útest_base_chain_fit_and_predictr    s+  € å8Ñ:Ô:�D€A€qÝ�U™WœWÑ%Ô%¥Õ7IÑ7KÔ7KÑ'LÔ'LÐM€FØð 
ð 
ˆØ�	Š	�!�Q‰ŒˆØ—’˜qÑ!Ô!ˆØŒ|˜qœwÒ&Ð&Ð&Ð&Ø8Ð8 eÔ&7Ð8Ñ8Ô8½DÝ�!”'˜!”*˜aœg aœj¨1¬7°1¬:Ñ5Ñ6Ô6ñ=
ô =
ò 
ð 
ð 
ð 
ð 
ð �AŒY×$Ò$ QÑ'Ô'€FØ˜Š}€HÝ�x Ñ(Ô(Ð(å�f˜Q”i¥Ñ1Ô1Ð1Ð1Ð1Ð1Ð1rC   c                  óH  — t          ¦   «         \  } }t          j        | ¦  «        }t          t	          ¦   «         d¬¦  «        t          t          ¦   «         d¬¦  «        g}|D ]?}|                     ||¦  «         |                     |¦  «        }|j	        |j	        k    sJ ‚Œ@d S )Nr,   ©r�   )
rö   rX   rY   r   r   r"   r   r5   r6   r˜   )r7   rÎ   r   Úbase_chainsr  rú   s         rA   Ú7test_base_chain_fit_and_predict_with_sparse_data_and_cvr  .  sª   € å8Ñ:Ô:�D€A€qÝŒ}˜QÑÔ€HåÕ*Ñ,Ô,°Ð3Ñ3Ô3Ý•u‘w”w 1Ð%Ñ%Ô%ð€Kð ð 'ð 'ˆØ�	Š	�(˜AÑÔÐØ—’˜xÑ(Ô(ˆØŒ|˜qœwÒ&Ð&Ð&Ð&Ð&ð'ð 'rC   c                  ó   — t          ¦   «         \  } }t          t          ¦   «         ¦  «        t          t	          ¦   «         ¦  «        fD �]D}t          |¦  «                             dd¬¦  «        }|                     | |¦  «         t          |¦  «                             |j        ¬¦  «        }|                     | |¦  «         t          |j        |j        ¦  «         t          |j        ¦  «        t          t          d¦  «        ¦  «        k    sJ ‚t          |j        ¦  «        dk    sJ ‚t          t          |j        ¦  «        ¦  «        dk    sJ ‚t          |j        |j        ¦  «        D ]\  }}t#          |j        |j        ¦  «         Œ �ŒFd S )NrÄ   é*   )Úorderr/   ©r  re   )rö   r   r   r"   r   r   Ú
set_paramsr5   Úorder_r)   r«   r  r4   r§   ÚsetÚzipr}   r(   r  )r7   rÎ   r  Úchain_randomÚchain_fixedr€   r�   s          rA   Útest_base_chain_random_orderr&  <  sp  € å8Ñ:Ô:�D€A€qÝ!Õ"4Ñ"6Ô"6Ñ7Ô7½ÍÉÌÑ9PÔ9PÐQð >ñ >ˆÝ˜U‘|”|×.Ò.°XÈBÐ.ÑOÔOˆØ×Ò˜˜AÑÔÐÝ˜E‘l”l×-Ò-°LÔ4GÐ-ÑHÔHˆØ�Š˜˜1ÑÔÐÝ˜;Ô-¨|Ô/BÑCÔCÐCÝ�LÔ&Ñ'Ô'­4µ°a±´©>¬>Ò9Ð9Ð9Ð9Ý�<Ô&Ñ'Ô'¨1Ò,Ð,Ð,Ð,Ý•3�|Ô*Ñ+Ô+Ñ,Ô,°Ò1Ð1Ð1Ð1õ ˜lÔ6¸Ô8OÑPÔPð 	>ð 	>‰JˆD�$Ý% d¤j°$´*Ñ=Ô=Ð=Ð=ñ	>ð>ð >rC   c                  ól  — t          ¦   «         \  } }t          t          ¦   «         ¦  «        t          t	          ¦   «         ¦  «        fD ]ë}|                     | |¦  «         t          |¦  «                             d¬¦  «        }|                     | |¦  «         |                     | ¦  «        }|                     | ¦  «        }|j	        |j	        k    sJ ‚t          j        ||k    ¦  «        rJ ‚t          |t          ¦  «        rt          ||d¬¦  «        dk    sJ ‚ŒÕt          ||¦  «        dk     sJ ‚Œìd S )Nr,   r  r  r  gš™™™™™Ù?g      Ð?)rö   r   r   r"   r   r5   r   r   r6   r˜   r2   Úallr  r   r   )r7   rÎ   r  Úchain_cvÚ	Y_pred_cvrú   s         rA   Ú(test_base_chain_crossval_fit_and_predictr+  N  s4  € õ 9Ñ:Ô:�D€A€qå!Õ"4Ñ"6Ô"6Ñ7Ô7½ÍÉÌÑ9PÔ9PÐQð ;ð ;ˆØ�	Š	�!�Q‰ŒˆÝ˜‘<”<×*Ò*¨aÐ*Ñ0Ô0ˆØ�Š�Q˜ÑÔÐØ×$Ò$ QÑ'Ô'ˆ	Ø—’˜qÑ!Ô!ˆàŒ &¤,Ò.Ð.Ð.Ð.Ý”6˜& IÒ-Ñ.Ô.Ð.Ð.Ð.Ý�e�_Ñ-Ô-ð 	;Ý   I°yÐAÑAÔAÀCÒGÐGÐGÐGÐGå% a¨Ñ3Ô3°dÒ:Ð:Ð:Ð:Ð:ð;ð ;rC   r‹   )r¤   c                 ó  — |                       t          t          ¦  «         t          | j        t
          ¦  «        sJ ‚t          | j        ¦  «        t          k    sJ ‚t          t          | j        ¦  «        D ]\  }}t          ||¦  «         Œd S rÿ   )r5   r7   r8   r  Úclasses_r«   r§   rš   r#  r|   r)   )r‹   Úestimator_classesÚexpected_classess      rA   Útest_multi_output_classes_r0  b  s“   € ð ‡M‚M•!•QÑÔÐÝ�iÔ(­$Ñ/Ô/Ð/Ð/Ð/ÝˆyÔ!Ñ"Ô"¥iÒ/Ð/Ð/Ð/Ý/2µ7¸IÔ<NÑ/OÔ/Oð @ð @Ñ+ÐÐ+ÝÐ,Ð.>Ñ?Ô?Ð?Ð?ð@ð @rC   c                   ó    ‡ — e Zd Zdˆ fd„	Zˆ xZS )ÚDummyRegressorWithFitParamsNc                 óX   •— || _         t          ¦   «                              |||¦  «        S rÿ   ©Ú_fit_paramsÚsuperr5   ©Úselfr7   r8   Úsample_weightÚ
fit_paramsÚ	__class__s        €rA   r5   zDummyRegressorWithFitParams.fitu  ó%   ø€ Ø%ˆÔÝ‰wŒw�{Š{˜1˜a Ñ/Ô/Ð/rC   rÿ   ©Ú__name__Ú
__module__Ú__qualname__r5   Ú__classcell__©r;  s   @rA   r2  r2  t  ó=   ø€ € € € € ð0ð 0ð 0ð 0ð 0ð 0ð 0ð 0ð 0ð 0rC   r2  c                   ó    ‡ — e Zd Zdˆ fd„	Zˆ xZS )ÚDummyClassifierWithFitParamsNc                 óX   •— || _         t          ¦   «                              |||¦  «        S rÿ   r4  r7  s        €rA   r5   z DummyClassifierWithFitParams.fit{  r<  rC   rÿ   r=  rB  s   @rA   rE  rE  z  rC  rC   rE  z%ignore:`n_features_in_` is deprecatedzestimator, datasetÚprior)Ústrategyr,   r-   c                 ó’   — |\  }}t          j        |¦  «        }|                      |||¬¦  «         | j        D ]}d|j        v sJ ‚Œd S )N)Ú
some_paramrJ  )r2   r3   r5   r}   r5  )r‹   Údatasetr7   r8   rJ  Údummy_estimators         rA   Ú*test_multioutput_estimator_with_fit_paramsrM  €  sg   € ð �D€A€qÝ”˜qÑ!Ô!€JØ‡M‚M�!�Q :€MÑ.Ô.Ð.Ø$Ô0ð ;ð ;ˆØ˜Ô:Ð:Ð:Ð:Ð:Ð:ð;ð ;rC   c                  óZ  — t           j                             d¦  «        } t          j        dd¬¦  «        \  }}|                      |j        d         ¦  «        } G d„ dt          ¦  «        }t           |¦   «         ¦  «        }d|i} |j	        ||fi |¤Ž |j
        D ]}|j        |u sJ ‚Œd S )Nr   r,   r-   c                   ó   ‡ — e Zd Zˆ fd„Zˆ xZS )ú0test_regressor_chain_w_fit_params.<locals>.MySGDc                 óX   •— |d         | _          t          ¦   «         j        ||fi |¤Ž d S )Nr9  )Úsample_weight_r6  r5   )r8  r7   r8   r:  r;  s       €rA   r5   z4test_regressor_chain_w_fit_params.<locals>.MySGD.fit�  s6   ø€ Ø",¨_Ô"=ˆDÔØ�E‰GŒGŒK˜˜1Ð+Ð+ 
Ð+Ð+Ð+Ð+Ð+rC   r=  rB  s   @rA   ÚMySGDrP  œ  s8   ø€ € € € € ð	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,rC   rS  r9  )r2   rÄ   rÅ   r   r
   Úrandr˜   r   r"   r5   r}   rR  )rË   r7   r8   ÚweightrS  ÚmodelÚ	fit_paramÚests           rA   Ú!test_regressor_chain_w_fit_paramsrY  –  sá   € å
Œ)×
Ò
 Ñ
"Ô
"€CÝÔ#¨a¸aÐ@Ñ@Ô@�D€A€qØ�XŠX�a”g˜a”jÑ!Ô!€Fð,ð ,ð ,ð ,ð ,•ñ ,ô ,ð ,õ
 ˜5˜5™7œ7Ñ#Ô#€Eð ! &Ð)€IØ€E„Iˆa�Ð Ð �iÐ Ð Ð àÔ ð ,ð ,ˆØÔ! VÐ+Ð+Ð+Ð+Ð+ð,ð ,rC   zMultiOutputEstimator, Estimatorc                 óÜ  — t           j                             d¦  «        }|                     dd¦  «        |                     ddd¦  «        }}|                     ddg|j        dd	g¬
¦  «                             t          ¦  «        }t           j	        ||<   t          t          ¦   «          |¦   «         ¦  «        } | |¦  «                             ||¦  «                             ||¦  «         d S )Nr  r0   rc   rO   r  )r0   r,   r   g{®Gáz„?g®Gáz®ï?)Úp)r2   rÄ   rÅ   ÚrandnÚbinomialÚchoicer˜   ÚastypeÚboolÚnanr#   r   r5   rÛ   )ÚMultiOutputEstimatorÚ	EstimatorrË   r7   r8   ÚmaskÚpipes          rA   Útest_support_missing_valuesrf  «  sÊ   € õ Œ)×
Ò
 Ñ
#Ô
#€CØ�9Š9�R˜ÑÔ˜SŸ\š\¨!¨S°'Ñ:Ô:€q€AØ�:Š:�q˜!�f˜aœg¨$°¨ˆ:Ñ6Ô6×=Ò=½dÑCÔC€DÝŒf€A€d�Gå�™œ¨)¨)©+¬+Ñ6Ô6€DØÐ˜ÑÔ×"Ò" 1 aÑ(Ô(×.Ò.¨q°!Ñ4Ô4Ð4Ð4Ð4rC   Ú
order_typec                 ó  — g d¢g d¢g d¢g}ddgddgddgg} | ddg¦  «        }t          t          ¦   «         |¬¦  «        }|                     ||¦  «         g d¢g}ddgg}t          |                     |¦  «        |¦  «         d S )	Nrb   rd   rq   r,   rc   rO   r   r  )r   r   r5   r(   r6   )rg  r7   r8   r  r  r;   r<   s          rA   Ú!test_classifier_chain_tuple_orderri  ¾  s¨   € à	ˆˆ�I�I�I˜˜˜Ð/€AØ
ˆQˆ�!�Q�˜!˜Q˜Ð €AØˆJ˜˜1�vÑÔ€EåÕ2Ñ4Ô4¸EÐBÑBÔB€Eà	‡I‚Iˆa��O„O€OØˆoˆoÐ€FØ�!ˆfˆX€FÝ˜eŸmšm¨FÑ3Ô3°VÑ<Ô<Ð<Ð<Ð<rC   c                  ó"  — g d¢g d¢g d¢g} ddgddgddgg}t          ddg¦  «        }t          t          ¦   «         |¬¦  «        }t          j        t
          d¬	¦  «        5  |                     | |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nrb   rd   rq   r,   rc   rO   r  zinvalid orderrP   )Útupler   r   rR   rS   rT   r5   )r7   r8   r  r  s       rA   Ú)test_classifier_chain_tuple_invalid_orderrl  Ì  sä   € Ø	ˆˆ�I�I�I˜˜˜Ð/€AØ
ˆQˆ�!�Q�˜!˜Q˜Ð €AÝ�1�a�&‰MŒM€EåÕ2Ñ4Ô4¸EÐBÑBÔB€Eå	Œ•z¨Ð	9Ñ	9Ô	9ð ð Ø�	Š	�!�Q‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Á BÂBÂBc                 ó2  — t          ddddd¬¦  «        \  }}t          ||d¬¦  «        \  }}}}d}t          t          ¦   «         g d¢dd	¬
¦  «        }|                     ||¦  «         t          j        ||                      ¦   «         d         ¦  «        sJ ‚d S )Nrè   rF   r,   r   )r™   rê   r¨   Ún_labelsr/   r1   z�\[Chain\].*\(1 of 3\) Processing order 0, total=.*\n\[Chain\].*\(2 of 3\) Processing order 1, total=.*\n\[Chain\].*\(3 of 3\) Processing order 2, total=.*\n$)r   rO   rc   T©r  r/   Úverbose)r	   r   r   r%   r5   ÚrerQ   Ú
readouterr)	Úcapsysr7   r8   r9   r;   r:   r<   ÚpatternÚ
classifiers	            rA   Útest_classifier_chain_verboserv  ×  sÀ   € Ý)Ø !¨q¸1È1ðñ ô �D€A€qõ (8¸¸1È1Ð'MÑ'MÔ'MÑ$€GˆV�W˜fð	Að õ !ÝÑ Ô ØˆiˆiØØð	ñ ô €Jð ‡N‚N�7˜GÑ$Ô$Ð$ÝŒ8�G˜V×.Ò.Ñ0Ô0°Ô3Ñ4Ô4Ð4Ð4Ð4Ð4Ð4rC   c                 ó.  — t          ddd¬¦  «        \  }}t          ||d¬¦  «        \  }}}}d}t          t          ¦   «         g d¢dd¬	¦  «        }|                     ||¦  «         t          j        ||                      ¦   «         d         ¦  «        sJ ‚d S )
Né}   r,   r   )r™   r.   r/   r1   z�\[Chain\].*\(1 of 3\) Processing order 1, total=.*\n\[Chain\].*\(2 of 3\) Processing order 0, total=.*\n\[Chain\].*\(3 of 3\) Processing order 2, total=.*\n$)rO   r   rc   Tro  )r
   r   r"   r   r5   rq  rQ   rr  )	rs  r7   r8   r9   r;   r:   r<   rt  Ú	regressors	            rA   Útest_regressor_chain_verboserz  í  s³   € Ý S°AÀAÐFÑFÔF�D€A€qÝ'7¸¸1È1Ð'MÑ'MÔ'MÑ$€GˆV�W˜fð	Að õ
 ÝÑÔØˆiˆiØØð	ñ ô €Ið ‡M‚M�'˜7Ñ#Ô#Ð#ÝŒ8�G˜V×.Ò.Ñ0Ô0°Ô3Ñ4Ô4Ð4Ð4Ð4Ð4Ð4rC   c                  óü   — t          d¬¦  «        \  } }t          dt          d¬¦  «        fgt          ¦   «         d¬¦  «        }t	          |¬¦  «                             | |¦  «        }|                     | ¦  «         d	S )
zkTest that MultiOutputRegressor checks the fitted estimator for
    predict. Non-regression test for #16549.T)Ú
return_X_yÚsgdrO   r1   rc   )Ú
estimatorsÚfinal_estimatorr�   )r‹   N)r   r   r   r   r!   r5   r6   )r7   r8   ÚstackerÚregs       rA   Ú4test_multioutputregressor_ducktypes_fitted_estimatorr‚     sƒ   € õ  DÐ)Ñ)Ô)�D€A€qÝØ�L°aÐ8Ñ8Ô8Ð9Ð:Ý™œØðñ ô €Gõ ¨Ð
1Ñ
1Ô
1×
5Ò
5°a¸Ñ
;Ô
;€Cð ‡K‚K��N„N€N€N€NrC   zCls, methodr5   rI   c                 óú   — t          d¬¦  «        \  }} | t          ¦   «         ¦  «        }t          j        t          d¬¦  «        5   t          ||¦  «        ||d¬¦  «         ddd¦  «         dS # 1 swxY w Y   dS )zgCheck that we raise an error when passing metadata not requested by the
    underlying classifier.
    r0   )r™   zis only supported ifrP   rO   )ÚtestN)r   r   rR   rS   rT   râ   )ÚClsÚmethodr7   r8   rÏ   s        rA   Útest_fit_params_no_routingr‡    sÉ   € õ ¨Ð,Ñ,Ô,�D€A€qØ
ˆ#Õ)Ñ+Ô+Ñ
,Ô
,€Cå	Œ•zÐ)?Ð	@Ñ	@Ô	@ð +ð +Ø���VÑÔ˜Q ¨Ð*Ñ*Ô*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +s   ÁA0Á0A4Á7A4c                  óÈ   — t          t          ¦   «         ¦  «        } d}t          j        t          |¬¦  «        5  t          | d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz:This 'MultiOutputRegressor' has no attribute 'partial_fit'rP   rI   )r!   r   rR   rS   r’   râ   )rX  rU   s     rA   Ú*test_multioutput_regressor_has_partial_fitr‰    s¦   € õ Õ/Ñ1Ô1Ñ
2Ô
2€CØ
F€CÝ	Œ•~¨SÐ	1Ñ	1Ô	1ð $ð $Ý��]Ñ#Ô#Ð#ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ð $ð $s   ¹AÁAÁA)‚rq  Únumpyr2   rR   Úscipy.sparser^   rX   Újoblibr   Úsklearnr   Úsklearn.baser   r   Úsklearn.datasetsr   r   r	   r
   Úsklearn.dummyr   r   Úsklearn.ensembler   r   r   Úsklearn.exceptionsr   Úsklearn.imputer   Úsklearn.linear_modelr   r   r   r   r   r   r   r   Úsklearn.metricsr   r   Úsklearn.model_selectionr   r   Úsklearn.multiclassr   Úsklearn.multioutputr   r    r!   r"   Úsklearn.pipeliner#   Úsklearn.svmr$   Úsklearn.treer%   Úsklearn.utilsr&   Úsklearn.utils._testingr'   r(   r)   rB   rM   rV   r`   rj   ro   rv   Ú	load_irisÚirisÚdatar7   ÚtargetrÌ   rÍ   Úy3rÜ   r8   r˜   r™   rê   rš   r§   Úuniquer¨   r«   Úmapr|   r‚   r†   r–   rž   r    r±   rº   rÒ   rÖ   rÙ   rß   ÚmarkÚparametrizerã   ræ   rö   rý   r  r  r  r  r&  r+  r0  r2  rE  ÚfilterwarningsrM  rY  rf  rÇ   rk  ri  rl  rv  rz  r‚  r‡  r‰  rî   rC   rA   ú<module>r¨     sÑ  ðØ 	€	€	€	à Ð Ð Ð Ø €€€Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð Ø /Ð /Ð /Ð /Ð /Ð /Ð /Ð /ðð ð ð ð ð ð ð ð ð ð ð ð :Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9ðð ð ð ð ð ð ð ð ð ð
 .Ð -Ð -Ð -Ð -Ð -Ø (Ð (Ð (Ð (Ð (Ð (ð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð >Ð =Ð =Ð =Ð =Ð =Ð =Ð =Ø BÐ BÐ BÐ BÐ BÐ BÐ BÐ BØ 2Ð 2Ð 2Ð 2Ð 2Ð 2ðð ð ð ð ð ð ð ð ð ð ð ð +Ð *Ð *Ð *Ð *Ð *Ø !Ð !Ð !Ð !Ð !Ð !Ø /Ð /Ð /Ð /Ð /Ð /Ø !Ð !Ð !Ð !Ð !Ð !ðð ð ð ð ð ð ð ð ð ð,ð ,ð ,ð$Cð Cð Cð.ð ð ðUð Uð Uð*ð ð ð:ð :ð :ð Dð Dð Dð& €xÔÑÔ€à„I€Ø	„[€Ø€WˆR˜aÐ Ñ Ô €Ø€WˆR˜aÐ Ñ Ô €Ø€B„O�R˜˜R�LÑ!Ô!€ØœÑ €	ˆ:ØŒG�AŒJ€	ØˆC�	�”	˜"‘”ÑÔ€	Ø
ˆ$ˆsˆs�2”9˜r 2 r˜lÑ+Ô+Ñ
,Ô
,€ð	 ð 	 ð 	 ð9ð 9ð 9ð -ð -ð -ðBPð Pð Pð>.ð .ð .ðSð Sð Sð:Lð Lð Lð$,6ð ,6ð ,6ð^Dð Dð Dð(Jð Jð Jð&ð ð ð( „×ÒÐ*¨_¸iÐ,HÑIÔIð)ð )ñ JÔIð)ðð ð ð,	ð 	ð 	ð:ð :ð :ð 4ð 4ð 4ð ð ð ð.2ð 2ð 2ð&'ð 'ð 'ð>ð >ð >ð$;ð ;ð ;ð( „×ÒØàÐ¨AÐ.Ñ.Ô.ØÐÐ4Ð4À!ÐDÑDÔDÑEÔEØˆÐ.Ð.¸AÐ>Ñ>Ô>Ñ?Ô?ðñô ð@ð @ñô ð@ð0ð 0ð 0ð 0ð 0 .ñ 0ô 0ð 0ð0ð 0ð 0ð 0ð 0 ?ñ 0ô 0ð 0ð „×ÒÐCÑDÔDØ„×ÒØð "Ð!Ð">Ð">ÈÐ"PÑ"PÔ"PÑQÔQØ3ˆHÔ3Ñ5Ô5ð	
ð
 !Ð Ð!<Ð!<Ñ!>Ô!>Ñ?Ô?Ø$ˆHÔ$¨q¸qÐAÑAÔAð	
ð	ñô ð;ð ;ñô ñ EÔDð;ð,ð ,ð ,ð* „×ÒØ%ØÐ/Ð0Ð3GÈÐ2OÐPñô ð
5ð 
5ñô ð
5ð „×Ò˜¨¨b¬h¸Ð'>Ñ?Ô?ð
=ð 
=ñ @Ô?ð
=ðð ð ð5ð 5ð 5ð,5ð 5ð 5ð&ð ð ð  „×ÒØ�_ eÐ,Ð/DÀmÐ.TÐUñô ð+ð +ñô ð+ð$ð $ð $ð $ð $rC   