Ë
    ÷Q(h„  ã                   óÎ  — d Z ddlZddlZddlZddlmZ ddlZddlZddl	Z	ddl
mZmZmZ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 dd	lmZmZmZmZ dd
lm Z  g d¢Z! edd¬«      \  Z"Z# e«       jI                  e"dd «      Z%e#dd Z& edd¬«      \  Z"Z# e«       jI                  e"dd «      Z'e#dd Z(e%e&fe'e(fgZ) eddddd¬«      \  Z*Z+ ee+«      Z+e*e+fgZ, e«       Z-e-j\                  Z/e-j`                  Z1d„ Z2d„ Z3d„ Z4e	jj                  jm                  de)«      d„ «       Z7e	jj                  jm                  de,«      d„ «       Z8e	jj                  jm                  de)«      d„ «       Z9e	jj                  jm                  de,«      d„ «       Z:d„ Z;d„ Z<d „ Z=d!„ Z>d"„ Z?d#„ Z@d$„ ZAd%„ ZBd&„ ZCd'„ ZDd(„ ZEd)„ ZFd*„ ZGe	jj                  jm                  d+e «      d,„ «       ZHd-„ ZId.„ ZJe	jj                  jm                  d/eeg«      d0„ «       ZKd1„ ZLd2„ ZMe	jj                  jm                  d/eeg«      d3„ «       ZNd4„ ZOe	jj                  j¡                  d5«      d6„ «       ZQd7„ ZRd8„ ZSd9„ ZTe	jj                  jm                  d:ejª                  ej¬                  g«      e	jj                  jm                  d;eeg«      d<„ «       «       ZWd=„ ZXe	jj                  jm                  d;eeg«      d>„ «       ZYe	jj                  jm                  d/eeg«      d?„ «       ZZe	jj                  jm                  d/eeg«      e	jj                  jm                  d@g dA¢«      dB„ «       «       Z[e	jj                  jm                  d/eeg«      dC„ «       Z\dD„ Z]y)EzD
Testing for Multi-layer Perceptron module (sklearn.neural_network)
é    N)ÚStringIO)Úload_digitsÚ	load_irisÚmake_multilabel_classificationÚmake_regression)ÚConvergenceWarning)Úroc_auc_score)ÚMLPClassifierÚMLPRegressor)ÚLabelBinarizerÚMinMaxScalerÚscale)Úassert_allcloseÚassert_almost_equalÚassert_array_equalÚignore_warnings)ÚCSR_CONTAINERS)ÚidentityÚlogisticÚtanhÚrelué   T)Ún_classÚ
return_X_yéÈ   é   é
   g      4@g      Y@é   )Ú	n_samplesÚ
n_featuresÚbiasÚnoiseÚrandom_statec            
      ó   — t         d d } t        d d }g }t        j                  d«      }d„ }|D ]‡  }t	        d|d¬«      }t        t        ¬«      5  |j                  | |«       d d d «       |j                  t        j                   ||j                  d   «       ||j                  d   «      g«      «       Œ‰ t        t        |«      dz
  «      D ]   }||   ||dz      kD  j                  «       rŒ J ‚ y # 1 sw Y   Œ’xY w)	Néd   r   c                 óR   — t        j                  t        j                  | «      «      S ©N)ÚnpÚsumÚabs)Úxs    úc/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sklearn/neural_network/tests/test_mlp.pyú<lambda>ztest_alpha.<locals>.<lambda>G   s   € œRŸV™V¤B§F¡F¨1£IÓ.€ ó    r   é   )Úhidden_layer_sizesÚalphar#   ©Úcategoryr   )ÚX_digits_binaryÚy_digits_binaryr(   Úaranger
   r   r   ÚfitÚappendÚarrayÚcoefs_ÚrangeÚlenÚall)ÚXÚyÚalpha_vectorsÚalpha_valuesÚabsolute_sumr1   ÚmlpÚis           r,   Ú
test_alpharE   @   s÷   € ä˜˜Ð€AÜ˜˜Ð€Aà€MÜ—9‘9˜Q“<€LÙ.€Làò 
ˆÜ¨r¸ÈQÔOˆÜÔ&8Ô9ñ 	Ø�G‰G�A�qŒM÷	à×ÑÜ�H‰H‘l 3§:¡:¨a¡=Ó1±<ÀÇ
Á
È1ÁÓ3NÐOÓPõ	
ð	
ô ”3�|Ó$ qÑ(Ó)ò ?ˆØ˜aÑ  =°°Q±Ñ#7Ñ7×<Ñ<Õ>Ð>Ð>ñ?÷	ð 	ús   ÁC4Ã4C=	c            
      óè  — t        j                  g d¢g«      } t        j                  dg«      }t        dddddddd¬«      }dgdz  |_        dgdz  |_        d|_        t        j                  dd	gd
dgddgg«      |j                  d<   t        j                  dgd	gg«      |j                  d<   t        j                  ddg«      |j                  d<   t        j                  dg«      |j                  d<   g dz  |_        g dz  |_        d|_        d|_	        d|_
        d|_        dg|j                  dz
  z  |_        dg|j                  dz
  z  |_        d|_        d|_        t         j                  |_        g |_        d|_        |j                  D �cg c]  }t        j$                  |«      ‘Œ c}|_        |j                  D �cg c]  }t        j$                  |«      ‘Œ c}|_        |j+                  | |ddg¬«       t-        |j                  d   t        j                  ddgddgddgg«      d¬«       t-        |j                  d   t        j                  dgdgg«      d¬«       t-        |j                  d   t        j                  ddg«      d¬«       t-        |j                  d   t        j                  d«      d¬«       t-        |j/                  | «      d   dd¬«       y c c}w c c}w )N)g333333ã?çš™™™™™é?gffffffæ?r   Úsgdçš™™™™™¹?r   r/   r   )ÚsolverÚlearning_rate_initr1   Ú
activationr#   Úmax_iterr0   Úmomentumçš™™™™™É?g333333Ó?ç      à?ç      ð?r   ©ÚclassesgJ+‡¹?g—uÿXˆÉ?gàª¡Ã2ìÒ?g©„'ôú“¸?g.ÁNV±�ß?gÉV—Sbb¿)ÚdecimalgñFæ‘?¨?g#0Ö70¹Ã?gðûY,¹?g¿·éÏ~¤¸?gZd;ßO�í?)r   r/   gÙÎ÷Sã¥ç?)r(   r9   r
   r:   Úintercepts_Ú
n_outputs_Ú_coef_gradsÚ_intercept_gradsÚn_features_in_Ún_iter_Úlearning_rate_Ú	n_layers_Úout_activation_Út_ÚinfÚ
best_loss_Úloss_curve_Ú_no_improvement_countÚ
zeros_likeÚ_intercept_velocityÚ_coef_velocityÚpartial_fitr   Úpredict_proba)r>   r?   rC   Ú
interceptsÚcoefss        r,   Útest_fitrj   U   s¡  € ä
�‰’/Ð"Ó#€AÜ
�‰�!�‹€AÜ
ØØØØØØØØô	€Cð ��q‘€C„JØ�c˜A‘g€C„OØ€C„NÜ—H‘H˜s C˜j¨3°¨*°s¸A°hÐ?Ó@€C‡J�Jˆq�MÜ—H‘H˜s˜e c U˜^Ó,€C‡J�Jˆq�MÜŸ™ 3¨ *Ó-€C‡O�O�AÑÜŸ™ 3 %›€C‡O�O�AÑØ˜1‘f€C„OØ ™6€CÔØ€CÔð €C„KØ€CÔð €C„Mð �c˜SŸ]™]¨QÑ.Ñ/€C„OØ˜3 #§-¡-°!Ñ"3Ñ4€CÔà$€CÔØ€C„FÜ—V‘V€C„NØ€C„OØ !€CÔà47·O±OöØ&0Œ�‰�jÕ!ò€CÔð =@¿J¹JÖG°5œ"Ÿ-™-¨Õ.ÒG€CÔà‡O�O�A�q 1 a &€OÔ)ô> Ø�
‰
�1‰Ü
�‰�5˜(Ð# i°Ð%:¸YÈ	Ð<RÐSÓTØõô
 ˜Ÿ
™
 1™¤r§x¡x°'°¸X¸JÐ0GÓ'HÐRSÕTÜ˜Ÿ™¨Ñ*¬B¯H©H°hÀÐ5HÓ,IÐSTÕUÜ˜Ÿ™¨Ñ*¬B¯H©H°VÓ,<ÀaÕHô ˜×)Ñ)¨!Ó,¨TÑ2°EÀ1ÖEùòiùò Hs   ÆK*ÇK/c                  ól  ‡‡‡‡‡‡‡— dD �]  } d}d}t         j                  j                  d¬«      }|j                  ||«      Šdt        j                  t        j
                  |«      dz   | «      z   }t        «       j                  |«      Št        D �]Š  }t        |dddd	dd¬
«      Št        j                  «       5  t        j                  dt        «       ‰j                  ‰|«       d d d «       t        j                  ‰j                   ‰j"                  z   D �cg c]  }|j%                  «       ‘Œ c}«      }‰j&                  d   g‰j(                  gz   ‰j*                  gz   }g Šg Šg Šg Š‰j-                  ‰«       t/        ‰j0                  dz
  «      D ]Ë  }	‰j-                  t        j2                  ‰j&                  d   ||	dz      f«      «       ‰j-                  t        j2                  ‰j&                  d   ||	dz      f«      «       ||	   }
||	dz      }‰j-                  t        j2                  |
|f«      «       ‰j-                  t        j2                  |«      «       ŒÍ ˆˆˆˆˆˆˆfd„} ||«      \  }}t        j4                  t        j6                  |«      «      }t        j6                  |d«      }t        j8                  |«      }d}t/        |«      D ]4  }	|d d …|	f   |z  } |||z   «      d    |||z
  «      d   z
  |dz  z  ||	<   Œ6 t;        ||«       �Œ� �Œ y # 1 sw Y   �Œ=xY wc c}w )N)r   r   é   r   é*   )Úseedr/   Úlbfgsçñhãˆµøä>rO   )rL   r0   rJ   r1   rK   rM   r#   Úignorer   c           	      ó2   •— ‰j                  | ‰‰‰‰‰‰«      S r'   )Ú_loss_grad_lbfgs)Útr>   ÚYÚactivationsÚ
coef_gradsÚdeltasÚintercept_gradsrC   s    €€€€€€€r,   Úloss_grad_funz$test_gradient.<locals>.loss_grad_funæ   s%   ø€ Ø×+Ñ+Ø�q˜!˜[¨&°*¸oóð r.   g       @)r(   ÚrandomÚRandomStateÚrandÚmodr6   r   Úfit_transformÚACTIVATION_TYPESr
   ÚwarningsÚcatch_warningsÚsimplefilterr   r7   Úhstackr:   rU   ÚravelÚshaper0   rV   r8   r;   r\   ÚemptyÚzerosÚsizeÚeyer   )Ún_labelsr   r    r#   r?   rL   ÚlÚthetaÚlayer_unitsrD   Úfan_inÚfan_outrz   ÚvalueÚgradÚnumgradÚnÚEÚepsilonÚdthetar>   ru   rv   rw   rx   ry   rC   s                       @@@@@@@r,   Útest_gradientr˜   ¶   sä  þ€ ð ó :/ˆØˆ	Øˆ
Ü—y‘y×,Ñ,°"Ð,Ó5ˆØ×Ñ˜i¨Ó4ˆØ”—‘”r—y‘y Ó+¨aÑ/°Ó:Ñ:ˆÜÓ×*Ñ*¨1Ó-ˆä*ó 2	/ˆJÜØ%Ø#%ØØØ#&ØØôˆCô ×(Ñ(Ó*ñ Ü×%Ñ% hÔ0BÔCØ—‘˜˜1”÷ô —I‘I°#·*±*¸s¿¹Ñ2NÖO¨Q˜qŸw™w�yÒOÓPˆEàŸ7™7 1™:˜,¨#×*@Ñ*@Ð)AÑAÀSÇ^Á^ÐDTÑTˆKàˆKØˆFØˆJØ ˆOà×Ñ˜qÔ!Ü˜3Ÿ=™=¨1Ñ,Ó-ò :�Ø×"Ñ"¤2§8¡8¨Q¯W©W°Q©Z¸ÀQÈÁUÑ9KÐ,LÓ#MÔNØ—‘œbŸh™h¨¯©°©
°KÀÀAÁÑ4FÐ'GÓHÔIà$ Q™�Ø% a¨!¡eÑ,�Ø×!Ñ!¤"§(¡(¨F°GÐ+<Ó"=Ô>Ø×&Ñ&¤r§x¡x°Ó'8Õ9ð:÷ò ñ
 *¨%Ó0‰MˆU�DÜ—h‘hœrŸw™w u›~Ó.ˆGÜ—‘˜˜qÓ!ˆAÜ—‘�q“	ˆAØˆGä˜1“Xò $�Øš1˜a˜4™ 7Ñ*�á! %¨&¡.Ó1°!Ñ4±}ÀUÈVÁ^Ó7TÐUVÑ7WÑWØ˜s‘]ñ$�˜’
ð$ô
   ¨Ö.òe2	/ñ:/÷$ñ üò Ps   Â<-L$ÄL1Ì$L.zX,yc           	      ól  — | d d }|d d }| dd  }|j                   d   |j                  j                  f}t        D ]w  }t	        ddddd|¬«      }|j                  ||«       |j                  |«      }|j                  ||«      dkD  sJ ‚|j                   d   |j                  j                  f|k(  rŒwJ ‚ y )	Né–   r   ro   é2   Tr/   )rJ   r0   rM   Úshuffler#   rL   çffffffî?)r†   ÚdtypeÚkindr€   r
   r7   ÚpredictÚscore)	r>   r?   ÚX_trainÚy_trainÚX_testÚexpected_shape_dtyperL   rC   Ú	y_predicts	            r,   Útest_lbfgs_classificationr§   ù   sÍ   € ð
 ��ˆg€GØ��ˆg€GØˆsˆtˆW€FØ"ŸL™L¨™O¨W¯]©]×-?Ñ-?Ð@Ðä&ò Rˆ
ÜØØ!ØØØØ!ô
ˆð 	�‰�˜Ô!Ø—K‘K Ó'ˆ	Ø�y‰y˜ 'Ó*¨TÒ1Ð1Ð1Ø—‘ Ñ" I§O¡O×$8Ñ$8Ð9Ð=QÓQÐQÐQñRr.   c           
      óÊ   — t         D ]Z  }t        dddddd|¬«      }|j                  | |«       |dk(  r|j                  | |«      d	kD  rŒBJ ‚|j                  | |«      d
kD  rŒZJ ‚ y )Nro   r›   r   çü©ñÒMbP?Tr/   )rJ   r0   rM   Útolrœ   r#   rL   r   rG   g\�Âõ(\ï?)r€   r   r7   r¡   )r>   r?   rL   rC   s       r,   Útest_lbfgs_regressionr«     s{   € ô 'ò *ˆ
ÜØØ!ØØØØØ!ô
ˆð 	�‰��1ŒØ˜Ò#Ø—9‘9˜Q “? TÓ)Ð)Ð)ð —9‘9˜Q “? TÓ)Ð)Ð)ñ*r.   c           
      óæ   — d}t         D ]Z  }t        ddd|dd|¬«      }t        j                  t        «      5  |j                  | |«       ||j                  k\  sJ ‚	 d d d «       Œ\ y # 1 sw Y   ŒgxY w)Nr   ro   r›   rš   Tr/   )rJ   r0   rM   Úmax_funrœ   r#   rL   )r€   r
   ÚpytestÚwarnsr   r7   rZ   ©r>   r?   r­   rL   rC   s        r,   Ú test_lbfgs_classification_maxfunr±   '  s   € ð €Gä&ò *ˆ
ÜØØ!ØØØØØ!ô
ˆô �\‰\Ô,Ó-ñ 	*Ø�G‰G�A�qŒMØ˜cŸk™kÒ)Ð)Ñ)÷	*ð 	*ñ*÷	*ð 	*ús   ·$A'Á'A0	c                 óè   — d}t         D ][  }t        dddd|dd|¬«      }t        j                  t        «      5  |j                  | |«       ||j                  k\  sJ ‚	 d d d «       Œ] y # 1 sw Y   ŒhxY w)	Nr   ro   r›   g        rš   Tr/   )rJ   r0   rª   rM   r­   rœ   r#   rL   )r€   r   r®   r¯   r   r7   rZ   r°   s        r,   Útest_lbfgs_regression_maxfunr³   <  s‚   € ð €Gä&ò *ˆ
ÜØØ!ØØØØØØ!ô	
ˆô �\‰\Ô,Ó-ñ 	*Ø�G‰G�A�qŒMØ˜cŸk™kÒ)Ð)Ñ)÷	*ð 	*ñ*÷	*ð 	*ús   ¸$A(Á(A1	c            	      ó¸  — ddgddgddgddgg} g d¢}d	D ]·  }t        d
d|ddd¬«      }t        t        ¬«      5  |j                  | |«       |j                  j
                  }|j                  | |«       |j                  j
                  }d d d «       |dk(  rk(  rŒˆJ ‚|dk(  sŒ�|j                  t        d|j                  «      z  k(  rŒ·J ‚ y # 1 sw Y   ŒGxY w)Nr   r   r/   é   rl   éþÿÿÿéüÿÿÿ)r/   r/   r/   r   )Ú
invscalingÚconstantrH   é   g      Ð?T)rJ   r0   Úlearning_raterM   Úpower_tÚ
warm_startr2   r¹   r¸   é	   )	r
   r   r   r7   Ú
_optimizerr»   rK   Úpowr¼   )r>   r?   r»   rC   Úprev_etaÚpost_etas         r,   Útest_learning_rate_warmstartrÃ   R  sî   € à
ˆQˆ�!�Q�˜!˜Q˜ " b Ð*€AÚ€AØ3ò PˆÜØØ Ø'ØØØô
ˆô Ô&8Ô9ñ 	4Ø�G‰G�A�qŒMØ—~‘~×3Ñ3ˆHØ�G‰G�A�qŒMØ—~‘~×3Ñ3ˆH÷		4ð ˜JÒ&Ø˜xÓ'Ð'Ð'Ø˜lÓ*Ø×)Ñ)¬C°°s·{±{Ó,CÑCÀxÓOÐOÐOñ%P÷	4ð 	4ús   ¹ACÃC	c            	      ó”  — t        ddd¬«      \  } }t        ddddddd	¬
«      }|j                  | |«       |j                  | |«      dkD  sJ ‚t        ddddddd	¬«      }t	        d«      D ]  }|j                  | |g d¢¬«       Œ |j                  | |«      dkD  sJ ‚t        d¬«      }|j                  | |«      j                  | «       y )Nr›   r   T©r   r#   Úreturn_indicatorro   rp   rš   r   rO   )rJ   r0   r1   rM   r#   rL   rK   g
×£p=
ï?rH   )rJ   r0   rM   r#   rL   r1   rK   r%   )r   r/   r   r   rº   rR   çÍÌÌÌÌÌì?©Úearly_stopping)r   r
   r7   r¡   r;   rf   r    )r>   r?   rC   rD   s       r,   Útest_multilabel_classificationrÊ   k  så   € ô *Ø 1°tô�D€A€qô ØØØØØØØô€Cð ‡G�GˆAˆq„MØ�9‰9�Q˜‹?˜TÒ!Ð!Ð!ô ØØØØØØØô€Cô �3‹Zò 7ˆØ�‰˜˜1¢oˆÕ6ð7à�9‰9�Q˜‹?˜SÒ Ð Ð ô  tÔ
,€CØ‡G�GˆAˆqƒM×Ñ˜!Õr.   c                  ó˜   — t        ddd¬«      \  } }t        ddddd¬	«      }|j                  | |«       |j                  | |«      d
kD  sJ ‚y )Nr   rl   é   )r   Ú	n_targetsr#   ro   r›   ç{®Gáz„?r/   )rJ   r0   rM   rª   r#   rÇ   )r   r   r7   r¡   ©r>   r?   rC   s      r,   Útest_multioutput_regressionrÐ   ‘  sQ   € ä S°AÀBÔG�D€A€qÜ
Ø¨2¸ÀÐTUô€Cð ‡G�GˆAˆq„MØ�9‰9�Q˜‹?˜SÒ Ð Ñ r.   c                  óà   — ddgg} dg}t        d¬«      }|j                  | |ddg¬«       t        j                  t        «      5  |j                  | |ddg¬«       d d d «       y # 1 sw Y   y xY w)Nr   r   r   rH   ©rJ   r/   rR   )r
   rf   r®   ÚraisesÚ
ValueError©r>   r?   Úclfs      r,   Útest_partial_fit_classes_errorr×   ›  sk   € à
ˆQˆˆ€AØ	
ˆ€AÜ
˜uÔ
%€CØ‡O�O�A�q 1 a &€OÔ)Ü	�‰”zÓ	"ñ .Ø�‰˜˜1 q¨! fˆÔ-÷.÷ .ñ .ús   ÁA$Á$A-c            	      óÆ  — t         D ]Ì  \  } }t        dddddd¬«      }t        t        ¬«      5  |j	                  | |«       d d d «       |j                  | «      }t        dddd¬	«      }t        d«      D ])  }|j                  | |t        j                  |«      ¬
«       Œ+ |j                  | «      }t        ||«       |j                  | |«      dkD  rŒÌJ ‚ y # 1 sw Y   Œ—xY w)NrH   r%   r/   r   rp   rO   )rJ   rM   r#   rª   r1   rK   r2   )rJ   r#   r1   rK   rR   r�   )Úclassification_datasetsr
   r   r   r7   r    r;   rf   r(   Úuniquer   r¡   )r>   r?   rC   Úpred1rD   Úpred2s         r,   Útest_partial_fit_classificationrÝ   ¥  sÞ   € ô (ò &‰ˆˆ1ÜØØØØØØ"ô
ˆô Ô&8Ô9ñ 	Ø�G‰G�A�qŒM÷	à—‘˜A“ˆÜØ q°Èô
ˆô �s“ò 	8ˆAØ�O‰O˜A˜q¬"¯)©)°A«,ˆOÕ7ð	8à—‘˜A“ˆÜ˜5 %Ô(Ø�y‰y˜˜A‹ Ó%Ð%Ð%ñ)&÷	ð 	ús   ®CÃC 	c                  óÄ   — t        d¬«      } | j                  dgdgdggg d¢g d¢¬«       | j                  d	ggd
g«       | j                  dgdgdgd	ggg d¢«      dkD  sJ ‚y )Nr   )r#   r/   r   r   )ÚaÚbÚc)rß   rà   rá   ÚdrR   rº   râ   )r
   rf   r¡   )rÖ   s    r,   Útest_partial_fit_unseen_classesrã   À  sl   € ô  QÔ
'€CØ‡O�O�a�S˜1˜# ˜s�O¢_Ò>R€OÔSØ‡O�O�a�S�E˜C˜5Ô!Ø�9‰9�q�c˜A˜3   a SÐ)Ò+?Ó@À1ÒDÐDÑDr.   c            
      ó   — t         } t        }dD ]ñ  }t        ddddd| j                  d   |¬«      }t	        j
                  «       5  t	        j                  d	t        «       |j                  | |«       d d d «       |j                  | «      }t        dddd| j                  d   |¬
«      }t        d«      D ]  }|j                  | |«       Œ |j                  | «      }t        ||«       |j                  | |«      }|dkD  rŒñJ ‚ y # 1 sw Y   Œ“xY w)N)r   rÇ   rH   r%   r   r/   rÎ   r   )rJ   rM   rL   r#   rK   Ú
batch_sizerN   rq   )rJ   rL   rK   r#   rå   rN   gÍÌÌÌÌÌä?)ÚX_regÚy_regr   r†   r�   r‚   rƒ   r   r7   r    r;   rf   r   r¡   )r>   r?   rN   rC   rÛ   rD   rÜ   r¡   s           r,   Útest_partial_fit_regressionrè   Ê  s  € ô 	€AÜ€Aàò ˆÜØØØØØ#Ø—w‘w˜q‘zØô
ˆô ×$Ñ$Ó&ñ 	Ü×!Ñ! (Ô,>Ô?Ø�G‰G�A�qŒM÷	ð —‘˜A“ˆÜØØØ#ØØ—w‘w˜q‘zØô
ˆô �s“ò 	"ˆAØ�O‰O˜A˜qÕ!ð	"ð —‘˜A“ˆÜ˜˜uÔ%Ø—	‘	˜!˜Q“ˆØ�t‹|Ðˆ|ñ9÷	ð 	ús   Á-DÄD	c                  óæ   — ddgddgg} ddg}t        j                  t        «      5  t        d¬«      j	                  | |dg¬«       d d d «       t        t        d	¬«      d
«      rJ ‚y # 1 sw Y   Œ"xY w)Nr   r   r/   rµ   r   rH   rÒ   rR   ro   rf   )r®   rÓ   rÔ   r
   rf   Úhasattr)r>   r?   s     r,   Útest_partial_fit_errorsrë   ï  sz   € à
ˆQˆ�!�Q�Ð€AØ	
ˆAˆ€Aô 
�‰”zÓ	"ñ CÜ˜UÔ#×/Ñ/°°1¸q¸cÐ/ÔB÷Cô ”}¨GÔ4°mÔDÐDÐDÐD÷	Cð Cús   ¦ A'Á'A0c                  ó
  — t         j                  j                  d«      } d}t        j                  t         j                  «      j
                  }|| j                  |df¬«      z  }| j                  |¬«      }t        «       }d}t        j                  t        |¬«      5  t        j                  «       5  t        j                  d«       |j                  ||«       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nr   r   r   )r‰   zrSolver produced non-finite parameter weights. The input data may contain large values and need to be preprocessed.©Úmatchrq   )r(   r{   r|   ÚfinfoÚfloat64ÚmaxÚuniformÚstandard_normalr   r®   rÓ   rÔ   r�   r‚   rƒ   r7   )Úrngr   Úfmaxr>   r?   rÖ   Úmsgs          r,   Útest_nonfinite_paramsr÷   ü  sØ   € ô �)‰)×
Ñ
 Ó
"€CØ€IÜ�8‰8”B—J‘JÓ×#Ñ#€DØˆs�{‰{ ¨A ˆ{Ó/Ñ/€AØ×Ñ ÐÓ+€Aä
‹.€Cð	/ð ô 
�‰”z¨Ô	-ñ Ü×$Ñ$Ó&ñ 	ä×!Ñ! (Ô+Ø�G‰G�A�qŒM÷	÷ð ÷	ð 	ú÷ð ús$   ÂC9Â4(C-ÃC9Ã-C6	Ã2C9Ã9Dc                  ó  — t         d d } t        d d }t        ddd¬«      }t        t        ¬«      5  |j                  | |«       d d d «       |j                  | «      }|j                  | «      }|j                  d   d}}|j                  d¬	«      }|j                  d¬	«      }|j                  ||fk(  sJ ‚t        ||«       t        |t        j                  |«      «       t        ||d d …df   «      d
k(  sJ ‚y # 1 sw Y   Œ·xY w)Nr›   rl   r   r/   )r0   rL   r#   r2   r   r   ©ÚaxisrQ   )r4   r5   r
   r   r   r7   rg   Úpredict_log_probar†   Úargmaxr   r   r(   Úlogr	   ©	r>   r?   rÖ   Úy_probaÚy_log_probar   Ú	n_classesÚ	proba_maxÚproba_log_maxs	            r,   Útest_predict_proba_binaryr    sø   € ä˜˜Ð€AÜ˜˜Ð€Aä
¨1¸ÐRSÔ
T€CÜ	Ô"4Ô	5ñ Ø�‰��1Œ÷à×Ñ Ó"€GØ×'Ñ'¨Ó*€KàŸW™W Q™Z¨�	€Yà—‘ A�Ó&€IØ×&Ñ&¨AÐ&Ó.€Mà�=‰=˜Y¨	Ð2Ò2Ð2Ð2Ü�y -Ô0Ü�K¤§¡¨£Ô1ä˜˜G¢A q D™MÓ*¨cÒ1Ð1Ñ1÷ð ús   ±C:Ã:Dc                  ó  — t         d d } t        d d }t        d¬«      }t        t        ¬«      5  |j                  | |«       d d d «       |j                  | «      }|j                  | «      }|j                  d   t        j                  |«      j                  }}|j                  d¬«      }|j                  d¬«      }|j                  ||fk(  sJ ‚t        ||«       t        |t        j                  |«      «       y # 1 sw Y   Œ¼xY w)Nr   rl   )r0   r2   r   r/   rù   )ÚX_digits_multiÚy_digits_multir
   r   r   r7   rg   rû   r†   r(   rÚ   r‰   rü   r   r   rý   rþ   s	            r,   Útest_predict_proba_multiclassr  (  sä   € ä�s˜Ð€AÜ�s˜Ð€Aä
¨1Ô
-€CÜ	Ô"4Ô	5ñ Ø�‰��1Œ÷à×Ñ Ó"€GØ×'Ñ'¨Ó*€KàŸW™W Q™Z¬¯©°1«×):Ñ):�	€Yà—‘ A�Ó&€IØ×&Ñ&¨AÐ&Ó.€Mà�=‰=˜Y¨	Ð2Ò2Ð2Ð2Ü�y -Ô0Ü�K¤§¡¨£Õ1÷ð ús   ¯C=Ã=Dc                  ó  — t        ddd¬«      \  } }|j                  \  }}t        ddd¬«      }|j                  | |«       |j	                  | «      }|j                  ||fk(  sJ ‚t        |dkD  |«       |j                  | «      }|j                  d	¬
«      }|j                  d	¬
«      }|j                  d	«      d	z
  j                  |j                  d	«      d	z
  «      dkD  sJ ‚t        ||«       t        |t        j                  |«      «       y )Nr›   r   TrÅ   ro   é   ©rJ   r0   r#   rP   r/   rù   g»½×Ùß|Û=)r   r†   r
   r7   rg   r   rû   rü   r)   Údotr   r(   rý   )	r>   ru   r   r  rÖ   rÿ   r   r  r  s	            r,   Útest_predict_proba_multilabelr  =  sû   € ô *Ø 1°tô�D€A€qð Ÿ7™7Ñ€Iˆyä
˜w¸2ÈAÔ
N€CØ‡G�GˆAˆq„MØ×Ñ Ó"€Gà�=‰=˜Y¨	Ð2Ò2Ð2Ð2Ü�w ‘} aÔ(à×'Ñ'¨Ó*€KØ—‘ A�Ó&€IØ×&Ñ&¨AÐ&Ó.€Mà�K‰K˜‹N˜QÑ×#Ñ# G§K¡K°£N°QÑ$6Ó7¸%Ò?Ð?Ð?Ü�y -Ô0Ü�K¤§¡¨£Õ1r.   c                  ó  — t        dddd¬«      \  } }dD ]¯  }t        dddd|¬«      }t        dddd|¬«      }t        j                  «       5  t        j                  dt
        «       |j                  | |«       |j                  | |«       d d d «       t        j                  |j                  d   |j                  d   «      rŒ¯J ‚ t        ddddd	¬«      }t        ddddd
¬«      }t        j                  «       5  t        j                  dt
        «       |j                  | |«       |j                  | |«       d d d «       t        j                  |j                  d   |j                  d   «      rJ ‚y # 1 sw Y   ŒëxY w# 1 sw Y   ŒHxY w)Nr›   rl   r/   r   )r   r    rÍ   r#   )TF)r0   rM   rå   r#   rœ   rq   TF)
r   r   r�   r‚   rƒ   r   r7   r(   Úarray_equalr:   )r>   r?   rœ   Úmlp1Úmlp2s        r,   Útest_shuffler  U  sw  € ä R°AÀÐQRÔS�D€A€qð !ò >ˆÜØ ØØØØô
ˆô Ø ØØØØô
ˆô ×$Ñ$Ó&ñ 	Ü×!Ñ! (Ô,>Ô?Ø�H‰H�Q˜ŒNØ�H‰H�Q˜ŒN÷	ô
 �~‰~˜dŸk™k¨!™n¨d¯k©k¸!©nÕ=Ð=Ð=ð)>ô. Ø q°QÀQÐPTô€Dô Ø q°QÀQÐPUô€Dô 
×	 Ñ	 Ó	"ñ Ü×Ñ˜hÔ(:Ô;Ø�‰��AŒØ�‰��AŒ÷ô
 �~‰~˜dŸk™k¨!™n¨d¯k©k¸!©nÔ=Ð=Ð=Ð=÷'	ð 	ú÷ð ús   Á?E5Ã;?FÅ5E>	ÆF
Úcsr_containerc                 óT  — t         d d }t        d d } | |«      }t        ddd¬«      }|j                  ||«       |j	                  |«      }|j                  ||«       |j	                  |«      }t        ||«       |j	                  |«      }|j	                  |«      }t        ||«       y )Nr›   ro   é   r/   r  )r4   r5   r
   r7   r    r   r   )r  r>   r?   ÚX_sparserC   rÛ   rÜ   s          r,   Útest_sparse_matricesr    s™   € ô 	˜˜Ð€AÜ˜˜Ð€AÙ˜QÓ€HÜ
˜w¸2ÈAÔ
N€CØ‡G�GˆAˆq„MØ�K‰K˜‹N€EØ‡G�GˆH�aÔØ�K‰K˜Ó!€EÜ˜˜uÔ%Ø�K‰K˜‹N€EØ�K‰K˜Ó!€EÜ�u˜eÕ$r.   c                  ó’   — ddgddgg} ddg}t        ddd¬	«      }|j                  | |«       |j                  |j                  kD  sJ ‚y )
Nr   r   r/   rµ   r   rP   é¸  rH   )rª   rM   rJ   )r
   r7   rM   rZ   rÕ   s      r,   Útest_tolerancer  �  sP   € ð ˆQˆ�!�Q�Ð€AØ	
ˆAˆ€AÜ
˜C¨$°uÔ
=€CØ‡G�GˆAˆq„MØ�<‰<˜#Ÿ+™+Ò%Ð%Ñ%r.   c                  óT  — ddgddgg} ddg}t        dddd¬«      }t        j                  }t        «       xt        _        }t	        t
        ¬	«      5  |j                  | |«       d d d «       |j                  | |«       |t        _        d
|j                  «       v sJ ‚y # 1 sw Y   Œ;xY w)Nr   r   r/   rµ   r   rH   r   )rJ   rM   Úverboser0   r2   Ú	Iteration)	r
   ÚsysÚstdoutr   r   r   r7   rf   Úgetvalue)r>   r?   rÖ   Ú
old_stdoutÚoutputs        r,   Útest_verbose_sgdr#  š  sš   € à
ˆQˆ�!�Q�Ð€AØ	
ˆAˆ€AÜ
˜u¨q¸"ÐQRÔ
S€CÜ—‘€JÜ"›*Ð$„C„J�ä	Ô"4Ô	5ñ Ø�‰��1Œ÷à‡O�O�A�qÔà„C„JØ˜&Ÿ/™/Ó+Ñ+Ð+Ñ+÷ð ús   ÁBÂB'ÚMLPEstimatorc                 ó  — t         d d }t        d d }d} | |ddd¬«      }|j                  ||«       |j                  |j                  kD  sJ ‚|j
                  �J ‚t        |j                  t        «      sJ ‚|j                  }|j                  }t        |«      |k(  sJ ‚||z   |d   kD  sJ ‚||z   |d   kD  sJ ‚ | |ddd	¬«      }|j                  ||«       |j                  �J ‚|j                  �J ‚|j
                  €J ‚y )
Nr%   rO   r  rH   T)rª   rM   rJ   rÉ   r¶   éÿÿÿÿF)r4   r5   r7   rM   rZ   r`   Ú
isinstanceÚvalidation_scores_ÚlistÚbest_validation_score_rñ   )r$  r>   r?   rª   Úmlp_estimatorÚvalid_scoresÚbest_valid_scores          r,   Útest_early_stoppingr.  ª  s>  € ä˜˜Ð€AÜ˜˜Ð€AØ
€CÙ Ø˜$ u¸Tô€Mð ×Ñ�a˜ÔØ×!Ñ! M×$9Ñ$9Ò9Ð9Ð9à×#Ñ#Ð+Ð+Ð+Ü�m×6Ñ6¼Ô=Ð=Ð=à ×3Ñ3€LØ$×;Ñ;ÐÜˆ|ÓÐ 0Ò0Ð0Ð0Ø˜cÑ! L°Ñ$4Ò4Ð4Ð4Ø˜cÑ! L°Ñ$4Ò4Ð4Ð4ñ !Ø˜$ u¸Uô€Mð ×Ñ�a˜ÔØ×+Ñ+Ð3Ð3Ð3Ø×/Ñ/Ð7Ð7Ð7Ø×#Ñ#Ð/Ð/Ñ/r.   c                  óÊ   — ddgddgg} ddg}t        dddd	¬
«      }|j                  | |«       |j                  |j                  kD  sJ ‚d|j                  j
                  kD  sJ ‚y )Nr   r   r/   rµ   r   rP   r  rH   Úadaptive)rª   rM   rJ   r»   g�íµ ÷Æ°>)r
   r7   rM   rZ   r¿   r»   rÕ   s      r,   Útest_adaptive_learning_rater1  É  sh   € Ø
ˆQˆ�!�Q�Ð€AØ	
ˆAˆ€AÜ
˜C¨$°uÈJÔ
W€CØ‡G�GˆAˆq„MØ�<‰<˜#Ÿ+™+Ò%Ð%Ð%Ø�#—.‘.×.Ñ.Ò.Ð.Ñ.r.   c                  óv  — t         } t        }t        j                  dgdz  dgdz  z   «      }t        j                  dgdz  dgdz  z   dgdz  z   «      }t        j                  dgdz  dgdz  z   dgdz  z   «      }t        j                  dgd	z  dgd	z  z   dgd
z  z   dgd
z  z   «      }t        j                  dgdz  dgdz  z   dgdz  z   dgdz  z   dgdz  z   «      }t	        ddddd¬«      j                  | |«      }|j                  | |«       |j                  | |«       ||||fD ]ƒ  }t	        ddddd¬«      j                  | |«      }dt        j                  |«      z  }	t        j                  t        t        j                  |	«      ¬«      5  |j                  | |«       d d d «       Œ… y # 1 sw Y   Œ�xY w)Nr   éK   r/   é(   r   éF   r›   r   é%   é&   r
  rº   ro   Trm   rÎ   )r0   rJ   r½   r#   rª   z}warm_start can only be used where `y` has the same classes as in the previous call to fit. Previously got [0 1 2], `y` has %srí   )ÚX_irisÚy_irisr(   r9   r
   r7   rÚ   r®   rÓ   rÔ   ÚreÚescape)
r>   r?   Ú
y_2classesÚ
y_3classesÚy_3classes_altÚ
y_4classesÚ
y_5classesrÖ   Úy_iÚmessages
             r,   Útest_warm_startrC  Ò  sÓ  € Ü€AÜ€Aä—‘˜1˜# ™( a S¨2¡XÑ-Ó.€JÜ—‘˜1˜# ™( a S¨2¡XÑ-°°°b±Ñ8Ó9€JÜ—X‘X˜q˜c B™h¨!¨¨r©Ñ1°Q°C¸"±HÑ<Ó=€NÜ—‘˜1˜# ™( a S¨2¡XÑ-°°°b±Ñ8¸A¸3À¹8ÑCÓD€JÜ—‘˜1˜# ™( a S¨2¡XÑ-°°°b±Ñ8¸A¸3À¹8ÑCÀqÀcÈBÁhÑNÓO€Jô Ø W¸ÈBÐTXôç	�cˆ!ˆQƒið ð ‡G�GˆAˆq„MØ‡G�GˆAˆzÔà˜N¨J¸
ÐCò ˆÜØ ØØØØô
÷ ‰#ˆa�‹)ð 	ð2ä46·I±I¸c³NñCð 	ô
 �]‰]œ:¬R¯Y©Y°wÓ-?Ô@ñ 	Ø�G‰G�A�sŒO÷	ð 	ñ÷	ð 	ús   ÆF/Æ/F8	c                 óL  — t         t        }}d} | ddd|¬«      }t        j                  «       5  t        j                  dt
        «       |j                  ||«       ||j                  k(  sJ ‚|j                  ||«       ||j                  k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr   r   rH   T)r0   rJ   r½   rM   rq   )r8  r9  r�   r‚   rƒ   r   r7   rZ   )r$  r>   r?   rM   rÖ   s        r,   Útest_warm_start_full_iterationrE  ô  s—   € ô ”6€q€AØ€HÙ
Ø U°tÀhô€Cô 
×	 Ñ	 Ó	"ñ 'Ü×Ñ˜hÔ(:Ô;Ø�‰��1ŒØ˜3Ÿ;™;Ò&Ð&Ð&Ø�‰��1ŒØ˜3Ÿ;™;Ò&Ð&Ñ&÷'÷ 'ñ 'ús   ¯A!BÂB#c                  óÊ   — t         d d } t        d d }d}d}dD ]H  }t        ||d|¬«      }|j                  | |«       |j                  |dz   k(  sJ ‚||j
                  kD  rŒHJ ‚ y )Nr%   rÎ   r  )r   rl   r   r›   r%   rH   ©rª   rM   rJ   Ún_iter_no_changer/   )r4   r5   r
   r7   rb   rZ   )r>   r?   rª   rM   rH  rÖ   s         r,   Útest_n_iter_no_changerI    s‰   € ô 	˜˜Ð€AÜ˜˜Ð€AØ
€CØ€Hð 0ò &ÐÜØ˜h¨uÐGWô
ˆð 	�‰��1Œð ×(Ñ(Ð,<¸qÑ,@Ò@Ð@Ð@Ø˜#Ÿ+™+Ó%Ð%Ð%ñ&r.   z-ignore::sklearn.exceptions.ConvergenceWarningc                  óð   — t         d d } t        d d }d}t        j                  }d}t	        ||d|¬«      }|j                  | |«       |j                  |k(  sJ ‚|j                  |j                  dz
  k(  sJ ‚y )Nr%   g    eÍÍAr  rH   rG  r/   )r4   r5   r(   r_   r
   r7   rZ   rb   )r>   r?   rª   rH  rM   rÖ   s         r,   Útest_n_iter_no_change_infrK    s‰   € ô 	˜˜Ð€AÜ˜˜Ð€Að €Cô —v‘vÐØ€HÜ
Ø˜(¨5ÐCSô€Cð ‡G�GˆAˆq„Mð �;‰;˜(Ò"Ð"Ð"ð ×$Ñ$¨¯©°a©Ò7Ð7Ñ7r.   c                  óÄ   — ddgddgddgddgg} g d¢}t        d¬«      }t        j                  t        d	¬
«      5  |j	                  | |«       d d d «       y # 1 sw Y   y xY w)Nr/   r   r   rº   rl   )r   r   r   r/   TrÈ   z0The least populated class in y has only 1 memberrí   )r
   r®   rÓ   rÔ   r7   rÏ   s      r,   Útest_early_stopping_stratifiedrM  5  se   € à
ˆQˆ�!�Q�˜!˜Q˜ ! Q Ð(€AÚ€Aä
 tÔ
,€CÜ	�‰ÜÐLô
ñ ð 	�‰��1Œ÷÷ ñ ús   ºAÁAc                  óf  — t        ddddd¬«      } | j                  t        d d t        d d «       | j	                  t        dd  «      }| j                  t        dd  «      }t        ddddd¬«      }|j                  t        d d j                  t        j                  «      t        d d «       |j	                  t        dd  j                  t        j                  «      «      }|j                  t        dd  j                  t        j                  «      «      }t        ||«       t        ||d¬	«       y )
Nrp   ©rl   r   r/   r%   rI   ©r1   r0   r#   rM   rª   é,  rÎ   ©Úrtol)r
   r7   ÚX_digitsÚy_digitsr    rg   Úastyper(   Úfloat32r   r   )Úmlp_64Úpred_64Úproba_64Úmlp_32Úpred_32Úproba_32s         r,   Ú"test_mlp_classifier_dtypes_castingr^  A  sý   € äØ v¸AÈÐQUô€Fð ‡J�JŒx˜˜ˆ~œx¨¨˜~Ô.Ø�n‰nœX c d˜^Ó,€GØ×#Ñ#¤H¨S¨T NÓ3€HäØ v¸AÈÐQUô€Fð ‡J�JŒx˜˜ˆ~×$Ñ$¤R§Z¡ZÓ0´(¸4¸C°.ÔAØ�n‰nœX c d˜^×2Ñ2´2·:±:Ó>Ó?€GØ×#Ñ#¤H¨S¨T N×$9Ñ$9¼"¿*¹*Ó$EÓF€Hä�w Ô(Ü�H˜h¨UÖ3r.   c                  ó´  — t        ddddd¬«      } | j                  t        d d t        d d «       | j	                  t        dd  «      }t        ddddd¬«      }|j                  t        d d j                  t        j                  «      t        d d «       |j	                  t        dd  j                  t        j                  «      «      }t        ||d¬	«       y )
Nrp   rO  r/   rš   r©   rP  rQ  gü©ñÒMb@?rR  )	r   r7   rT  rU  r    rV  r(   rW  r   )rX  rY  r[  r\  s       r,   Ú!test_mlp_regressor_dtypes_castingr`  U  s¸   € ÜØ v¸AÈÐQUô€Fð ‡J�JŒx˜˜ˆ~œx¨¨˜~Ô.Ø�n‰nœX c d˜^Ó,€GäØ v¸AÈÐQUô€Fð ‡J�JŒx˜˜ˆ~×$Ñ$¤R§Z¡ZÓ0´(¸4¸C°.ÔAØ�n‰nœX c d˜^×2Ñ2´2·:±:Ó>Ó?€Gä�G˜W¨5Ö1r.   rž   Ú	Estimatorc                 ó¾  — t         j                  | «      t        }} |ddddd¬«      }|j                  |d d |d d «       |j	                  |dd  «      }t        |j                  D �cg c]  }|j                  | k(  ‘Œ c}«      sJ ‚t        |j                  D �cg c]  }|j                  | k(  ‘Œ c}«      sJ ‚|t        k(  r|j                  | k(  sJ ‚y y c c}w c c}w )Nrp   rO  r/   r›   rI   rP  rQ  )
rT  rV  rU  r7   r    r=   rU   rž   r:   r   )rž   ra  r>   r?   rC   ÚpredÚ	interceptÚcoefs           r,   Útest_mlp_param_dtypesrf  e  sÐ   € ô
 �?‰?˜5Ó!¤8€q€AÙ
Ø v¸AÈÐPTô€Cð ‡G�GˆAˆdˆsˆG�Q�t˜�WÔØ�;‰;�q˜˜�wÓ€Dä¸#¿/¹/ÖJ¨Y�	—‘ 5Ó(ÒJÔKÐKÐKä°·
±
Ö;¨�—
‘
˜eÓ#Ò;Ô<Ð<Ð<à”LÒ Ø�z‰z˜UÒ"Ð"Ñ"ð !ùò	 Kùâ;s   Á(CÂCc                 óD  — t        dddd¬«      }dggdg}}|j                  ||«       | dz  }t        j                  ||«       t        j                  |«      }dggd	g}}t        d«      D ]  }|j                  ||«       Œ |j                  |«      }	t        |	|d
¬«       y)zYLoading from MLP and partial fitting updates weights. Non-regression
    test for #19626.)rm   rm   rÎ   r   )r0   r#   rK   rM   r   rº   zmlp.pklr/   ç-Cëâ6?rR  N)	r   r7   ÚjoblibÚdumpÚloadr;   rf   r    r   )
Útmp_pathÚpre_trained_estimatorÚfeaturesÚtargetÚpickled_fileÚload_estimatorÚfine_tune_featuresÚfine_tune_targetÚ_Úpredicted_values
             r,   Ú(test_mlp_loading_from_joblib_partial_fitrv  y  s¿   € ô )Ø ¨rÀdÐUXôÐð ˜�u˜q˜cˆf€Hð ×Ñ˜h¨Ô/ð ˜iÑ'€LÜ
‡K�KÐ% |Ô4Ü—[‘[ Ó.€Nð ./¨C¨5°1°#Ð(Ðä�3‹Zò IˆØ×"Ñ"Ð#5Ð7GÕHðIð %×,Ñ,Ð-?Ó@€OÜ�OÐ%5¸DÖAr.   c                 óÂ  — t        j                  d«      }t        j                  j	                  d«      }|j                  |j                  dd«      ddg¬«      }|j                  t        j                  dd«      d	¬
«      } | dd¬«      }t        j                  «       5  t        j                  dt        «       |j                  ||«       ddd«       y# 1 sw Y   yxY w)z¸Check that feature names are preserved when early stopping is enabled.

    Feature names are required for consistency checks during scoring.

    Non-regression test for gh-24846
    Úpandasr   r   r   Ú	colname_aÚ	colname_b)ÚdataÚcolumnsr/   Ú	colname_y)r{  ÚnameTrO   )rÉ   Úvalidation_fractionÚerrorN)r®   Úimportorskipr(   r{   r|   Ú	DataFrameÚrandnÚSeriesÚfullr�   r‚   rƒ   ÚUserWarningr7   )ra  Úpdrô   r>   r?   Úmodels         r,   Útest_preserve_feature_namesr‰  ”  s°   € ô 
×	Ñ	˜XÓ	&€BÜ
�)‰)×
Ñ
 Ó
"€Cà
�‰˜#Ÿ)™) B¨Ó*°[À+Ð4NˆÓO€AØ
�	‰	”r—w‘w˜r 1“~¨Kˆ	Ó8€Aá T¸sÔC€Eä	×	 Ñ	 Ó	"ñ Ü×Ñ˜g¤{Ô3Ø�	‰	�!�QŒ÷÷ ñ ús   Â-CÃCc                 óŒ  —  | dddd¬«      }t        j                  «       5  t        j                  dt        «       |j	                  t
        t        «       t        |j                  «      }|j                  d¬«       |j	                  t
        t        «       ddd«       t        |j                  «      kD  sJ ‚y# 1 sw Y   Œ$xY w)	z0Check that early stopping works with warm start.r   r   T)rM   r#   r½   rÉ   rq   é   ©rM   N)
r�   r‚   rƒ   r   r7   r8  r9  r<   r(  Ú
set_params)r$  rC   Ún_validation_scoress      r,   Ú'test_mlp_warm_start_with_early_stoppingr�  ©  s¢   € ñ Ø !°ÀTô€Cô 
×	 Ñ	 Ó	"ñ  Ü×Ñ˜hÔ(:Ô;Ø�‰”œÔÜ! #×"8Ñ"8Ó9ÐØ�‰ ˆÔ#Ø�‰”œÔ÷ ô ˆs×%Ñ%Ó&Ð)<Ò<Ð<Ñ<÷ ð  ús   ¡A6B:Â:CrJ   )rH   Úadamro   c                 óÄ  —  | |dddt         j                  d¬«      }t        j                  t        «      5  |j                  t        t        «       ddd«       |j                  dk(  sJ ‚|j                  d¬«       t        j                  t        «      5  |j                  t        t        «       ddd«       |j                  dk(  sJ ‚y# 1 sw Y   ŒzxY w# 1 sw Y   Œ'xY w)	z­Check that we stop the number of iteration at `max_iter` when warm starting.

    Non-regression test for:
    https://github.com/scikit-learn/scikit-learn/issues/24764
    TFr   r   )rJ   r½   rÉ   rM   rH  r#   Nr‹  rŒ  )
r(   r_   r®   r¯   r   r7   r8  r9  rZ   r�  )r$  rJ   rˆ  s      r,   Ú"test_mlp_warm_start_no_convergencer’  ¸  s»   € ñ ØØØØÜŸ™Øô€Eô 
�‰Ô(Ó	)ñ "Ø�	‰	”&œ&Ô!÷"à�=‰=˜BÒÐÐà	×Ñ˜bÐÔ!Ü	�‰Ô(Ó	)ñ "Ø�	‰	”&œ&Ô!÷"à�=‰=˜BÒÐÑ÷"ð "ú÷
"ð "ús   ¶C
ÂCÃ
CÃCc                 óà   —  | dd¬«      j                  t        t        «      }d}t        j                  t
        |¬«      5  |j                  t        t        «       ddd«       y# 1 sw Y   yxY w)zoCheck partial fit does not fail after fit when early_stopping=True.

    Non-regression test for gh-25693.
    Tr   )rÉ   r#   z0partial_fit does not support early_stopping=Truerí   N)r7   r8  r9  r®   rÓ   rÔ   rf   )r$  rC   rö   s      r,   Útest_mlp_partial_fit_after_fitr”  Ó  sS   € ñ  d¸Ô
;×
?Ñ
?ÄÌÓ
O€Cà
<€CÜ	�‰”z¨Ô	-ñ (Ø�‰œ¤Ô'÷(÷ (ñ (ús   Á A$Á$A-c                  óÄ  — t        dddddddddd	d
¬«      } t        j                  «       5  t        j                  dt        «       t        j                  dt
        «       | j                  t        t        «       ddd«       t        | j                  d   «      t        t        j                  «      k(  sJ ‚t        | j                  d   t        «      sJ ‚y# 1 sw Y   Œ]xY w)z²Test that a diverging model does not raise errors when early stopping is enabled.

    Non-regression test for:
    https://github.com/scikit-learn/scikit-learn/issues/29504
    r%   r   rH   rh  r¹   r/   Tr‹  r   r   )r0   rL   rJ   r1   r»   rK   rœ   rM   rÉ   rH  r#   rq   Nr&  )r   r�   r‚   rƒ   ÚRuntimeWarningr   r7   r8  r9  Ústrr(  r(   Únanr'  Úfloat)rC   s    r,   Útest_mlp_diverging_lossrš  à  sÆ   € ô ØØØØØ ØØØØØØô€Cô 
×	 Ñ	 Ó	"ñ  ô 	×Ñ˜h¬Ô7Ü×Ñ˜hÔ(:Ô;Ø�‰”œÔ÷ ô ˆs×%Ñ% bÑ)Ó*¬c´"·&±&«kÒ9Ð9Ð9Ü�c×,Ñ,¨RÑ0´%Ô8Ð8Ñ8÷ ð  ús   «ACÃC)^Ú__doc__r:  r  r�   Úior   ri  Únumpyr(   r®   Úsklearn.datasetsr   r   r   r   Úsklearn.exceptionsr   Úsklearn.metricsr	   Úsklearn.neural_networkr
   r   Úsklearn.preprocessingr   r   r   Úsklearn.utils._testingr   r   r   r   Úsklearn.utils.fixesr   r€   rT  rU  r   r  r  r4   r5   rÙ   ræ   rç   Úregression_datasetsÚirisr{  r8  ro  r9  rE   rj   r˜   ÚmarkÚparametrizer§   r«   r±   r³   rÃ   rÊ   rÐ   r×   rÝ   rã   rè   rë   r÷   r  r  r  r  r  r  r#  r.  r1  rC  rE  rI  ÚfilterwarningsrK  rM  r^  r`  rW  rð   rf  rv  r‰  r�  r’  r”  rš  © r.   r,   ú<module>r«     sÿ  ðñó 
Û 
Û Ý ã Û Û ÷ó õ 2Ý )ß >ß EÑ E÷ó õ /â;Ð á ¨°tÔ<Ñ €ˆ(á“×-Ñ-¨h°t¸¨nÓ=€Ø˜$˜3�€á ¨°tÔ<Ñ €ˆ(á“.×.Ñ.¨x¸¸¨~Ó>€Ø˜4˜C�.€ð �^Ð$Ø�oÐ&ðÐ ñ
 Ø˜b t°5Àqô�€€uñ 	ˆe‹€Ø˜u�~Ð&Ð áƒ{€à	�‰€Ø	�‰€ò?ò*^FòB@/ðF ‡�×Ñ˜Ð 7Ó8ñRó 9ðRð0 ‡�×Ñ˜Ð 3Ó4ñ*ó 5ð*ð( ‡�×Ñ˜Ð 7Ó8ñ*ó 9ð*ð( ‡�×Ñ˜Ð 3Ó4ñ*ó 5ð*ò*Pò2#òL!ò.ò&ò6Eò"òJ
Eòò*2ò.2ò*2ò0'>ðT ‡�×Ñ˜¨.Ó9ñ%ó :ð%ò &ò,ð  ‡�×Ñ˜¨-¸Ð)FÓGñ0ó Hð0ò</òðD ‡�×Ñ˜¨-¸Ð)FÓGñ'ó Hð'ò$&ð( ‡�×ÑÐKÓLñ8ó Mð8ò2	ò4ò(2ð  ‡�×Ñ˜ 2§:¡:¨r¯z©zÐ":Ó;Ø‡�×Ñ˜ }°lÐ&CÓDñ#ó Eó <ð#ò$Bð6 ‡�×Ñ˜ }°lÐ&CÓDñó Eðð( ‡�×Ñ˜¨-¸Ð)FÓGñ=ó Hð=ð ‡�×Ñ˜¨-¸Ð)FÓGØ‡�×Ñ˜Ò#;Ó<ñó =ó Hðð2 ‡�×Ñ˜¨-¸Ð)FÓGñ	(ó Hð	(ó9r.   