Ë
    ÷Q(h›À  ã                   ó0  — d 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
mZmZmZmZ ddlmZmZmZ ddlmZmZ ddlmZ ddl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$ 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/ ddgddgddgddgddgddggZ0g d¢Z1ddgddgddggZ2g d¢Z3 ejh                  «       Z5 e(d«      Z6e6jo                  e5jp                  jr                  «      Z:e5jv                  e:   e5_;        e5jp                  e:   e5_8        d„ Z<d„ Z=d„ Z>d„ Z?d„ Z@d„ ZAd„ ZBd„ ZCd „ ZDd!„ ZEd"„ ZFd#„ ZGd$„ ZHej’                  j•                  d%ej–                  ej˜                  f«      d&„ «       ZMd'„ ZNd(„ ZOej’                  j•                  d) ej–                  d*¬+«       ej˜                  «       g«      d,„ «       ZPej’                  j•                  d) ej>                  d*¬+«       ejD                  d*¬+«      g«      d-„ «       ZQd.„ ZRej’                  j•                  d/ej–                  d0fej˜                  d1fej>                  d0fejD                  d0fejF                  d0fgg d2¢¬3«      ej’                  j•                  d4dg eSe1«      z  d5g eSe1«      z  gd6d7g¬3«      d8„ «       «       ZTej’                  j•                  d9ej–                  d:fej˜                  d;fgd<d=g¬3«      ej’                  j•                  d4g d>¢g d?¢gd@dAg¬3«      dB„ «       «       ZUej’                  j•                  dCej–                  dDdEgdEdFgdGœfej˜                  dHdHgdHdHgdGœfgd<d=g¬3«      ej’                  j•                  dIg dJ¢dKfg dL¢dMfgdNdOg¬3«      dP„ «       «       ZVej’                  j•                  dQej–                  ej˜                  ejD                  gg dR¢¬3«      ej’                  j•                  d4g dJ¢g dL¢gdNdOg¬3«      dS„ «       «       ZWdT„ ZXej’                  j•                  dUe-«      dV„ «       ZYdW„ ZZdX„ Z[ej’                  j•                  dYe,«      dZ„ «       Z\ej’                  j•                  dYe,«      d[„ «       Z]ej’                  j•                  d\d]d^g«      ej’                  j•                  d_d`dag«      ej’                  j•                  dbdcddg«      de„ «       «       «       Z^df„ Z_dg„ Z`dh„ Zadi„ Zbdj„ Zcej@                  fdk„Zddl„ Zedm„ Zfdn„ Zgdo„ Zhdp„ Zidq„ Zjdr„ Zkej’                  jÙ                  ds«      dt„ «       Zmdu„ Zndv„ Zodw„ Zpdx„ Zqdy„ Zrdz„ Zsej’                  j•                  d{ej–                  ej˜                  g«      d|„ «       Ztej’                  j•                  d{ej–                  ej˜                  g«      d}„ «       Zud~„ Zvej’                  j•                  de d`d^ddd€œfe dad^dcd€œfe dad^ddd€œfe dad]dcd€œfe!d�dcd‚œfe!dƒdcd‚œfe!dƒdcd‚œfg«      d„„ «       Zwej’                  j•                  d…e#ee"f«      d†„ «       Zxej’                  j•                  dQej–                  ej>                  g«      d‡„ «       Zydˆ„ Zzej’                  j•                  d‰ej–                  ejö                  fej˜                  ejö                  fej>                  e|fejD                  e|fejF                  e|fg«      ej’                  j•                  dŠ eddd¬‹«       eddd¬‹«       edŒdŒd¬‹«      g«      d�„ «       «       Z}ej’                  j•                  d\d^dƒg«      dŽ„ «       Z~d�„ Zej’                  j•                  d�ej–                  efej>                  efg«      ej’                  j•                  d‘e�j                    e�d’«      g«      d“„ «       «       Z‚y)”zr
Testing for Support Vector Machine module (sklearn.svm)

TODO: remove hard coded numerical results when possible
é    N)Úassert_allcloseÚassert_almost_equalÚassert_array_almost_equalÚassert_array_equal)ÚbaseÚdatasetsÚlinear_modelÚmetricsÚsvm)Ú
make_blobsÚmake_classificationÚmake_regression)ÚConvergenceWarningÚNotFittedError)Úf1_score)Ú
rbf_kernel)Útrain_test_split)ÚOneVsRestClassifier)ÚSVRÚ	LinearSVCÚ	LinearSVRÚNuSVRÚOneClassSVMÚ_libsvm)Ú_validate_dual_parameter)Úcheck_random_stateÚshuffle)Ú	_IS_32BITÚCSR_CONTAINERSÚLIL_CONTAINERS)Ú_num_sampleséþÿÿÿéÿÿÿÿé   é   )r$   r$   r$   r%   r%   r%   é   )r$   r%   r%   é*   c                  ó‚  — t        j                  d¬«      j                  t        t        «      } t        | j                  ddgg«       t        | j                  ddg«       t        | j                  t        d   t        d   f«       t        | j                  dg«       t        | j                  t        «      t        «       y )NÚlinear©Úkernelç      Ð¿ç      Ð?r$   r&   ç        )r   ÚSVCÚfitÚXÚYr   Ú
dual_coef_Úsupport_Úsupport_vectors_Ú
intercept_Úpredict©Úclfs    úX/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sklearn/svm/tests/test_svm.pyÚtest_libsvm_parametersr;   7   s�   € ä
�'‰'˜Ô
"×
&Ñ
&¤q¬!Ó
,€CÜ�s—~‘~¨°¨ Ô7Ü�s—|‘| a¨ VÔ,Ü�s×+Ñ+¬a°©d´A°a±D¨\Ô:Ü�s—~‘~¨ uÔ-Ü�s—{‘{¤1“~¤qÕ)ó    c            	      óB  — dD ]   } t        j                  | ¬«      j                  t        j                  t        j
                  «      }t        j                  |j                  t        j                  «      t        j
                  k(  «      dkD  sJ ‚t        |d«      | dk(  k(  rŒ J ‚ t        j                  t        j                  |j                  «      «       t        j                  t        j                  t        j
                  j                  t        j                  «      «      \	  }}}}}}}}	}
|||||||dœ}t        j                  t        j                  fi |¤Ž}t        j                  |t        j
                  k(  «      dkD  sJ ‚t        j                  t        j                  t        j
                  j                  t        j                  «      d¬«      \	  }}}}}}}}	}
|||||||dœ}t        j                  t        j                  fi |¤ddi¤Ž}t        j                  |t        j
                  k(  «      dkD  sJ ‚t        j                   t        j                  t        j
                  j                  t        j                  «      d	dd
¬«      }t        j                  |t        j
                  k(  «      dkD  sJ ‚t        j                   t        j                  t        j
                  j                  t        j                  «      d	dd
¬«      }t        ||«       y )N)r)   Úrbfr*   çÍÌÌÌÌÌì?Úcoef_r)   )ÚsupportÚSVÚnSVÚsv_coefÚ	interceptÚprobAÚprobBgffffffî?r+   é   r   ©r+   Úrandom_seed)r   r/   r0   ÚirisÚdataÚtargetÚnpÚmeanr7   Úhasattrr   Úclasses_Úsortr   ÚastypeÚfloat64Úcross_validation)Úkr9   Úlibsvm_supportÚlibsvm_support_vectorsÚlibsvm_n_class_SVÚlibsvm_sv_coefÚlibsvm_interceptÚlibsvm_probAÚlibsvm_probBÚlibsvm_fit_statusÚlibsvm_n_iterÚmodel_paramsÚpredÚpred2s                 r:   Útest_libsvm_irisrc   A   sr  € ð ò 8ˆÜ�g‰g˜QÔ×#Ñ#¤D§I¡I¬t¯{©{Ó;ˆÜ�w‰w�s—{‘{¤4§9¡9Ó-´·±Ñ<Ó=ÀÒCÐCÐCÜ�s˜GÓ$¨¨h©Ó7Ð7Ð7ð8ô
 �s—|‘|¤R§W¡W¨S¯\©\Ó%:Ô;ô  	�‰”D—I‘IœtŸ{™{×1Ñ1´"·*±*Ó=Ó>ñØØØØØØØàØð "Ø$Ø Ø!Ø%ØØñ€Lô �?‰?œ4Ÿ9™9Ñ5¨Ñ5€DÜ�7‰7�4œ4Ÿ;™;Ñ&Ó'¨$Ò.Ð.Ð.ô 	�‰”D—I‘IœtŸ{™{×1Ñ1´"·*±*Ó=ÀhÔOñØØØØØØØàØð "Ø$Ø Ø!Ø%ØØñ€Lô �?‰?œ4Ÿ9™9ÑF¨ÑF¸XÒF€DÜ�7‰7�4œ4Ÿ;™;Ñ&Ó'¨$Ò.Ð.Ð.ä×#Ñ#Ü�	‰	”4—;‘;×%Ñ%¤b§j¡jÓ1°1¸XÐSTô€Dô �7‰7�4œ4Ÿ;™;Ñ&Ó'¨$Ò.Ð.Ð.ô
 ×$Ñ$Ü�	‰	”4—;‘;×%Ñ%¤b§j¡jÓ1°1¸XÐSTô€Eô �t˜UÕ#r<   c                  ó–
  — t        j                  d¬«      } t        j                  t        t        j
                  t        «      j                  «      }| j                  |t        «       t        j                  t        t        j
                  t        «      j                  «      }| j                  |«      }t        j                  t        «      5  | j                  |j                  «       d d d «       t        | j                  ddgg«       t        | j                  ddg«       t        | j                   dg«       t#        | j                  ddg«       t        |t$        «       t        j&                  |«      }t)        t+        t        «      «      D ]<  }| j                  D ]+  }t        j                  t        |   t        |   «      |||f<   Œ- Œ> | j                  |«      }t        |t$        «       d„ }t        j                  |¬«      } | j                  t        j
                  t        «      t        «       | j                  t        «      }t        | j                  ddgg«       t        | j                   dg«       t#        | j                  ddg«       t        |t$        «       t        j                  d¬«      } t        j                  d	¬«      }t        j                  t,        j.                  t,        j.                  j                  «      }| j                  |t,        j0                  «       |j                  t,        j.                  t,        j0                  «       | j                  |«      }t#        | j                  |j                  «       t#        | j                  |j                  «       t#        | j                   |j                   «       t3        t        j4                  |t,        j0                  k(  «      d
d¬«       t        j&                  |«      }t)        t+        t,        j.                  «      «      D ]P  }| j                  D ]?  }t        j                  t,        j.                  |   t,        j.                  |   «      |||f<   ŒA ŒR | j                  |«      }t3        t        j4                  |t,        j0                  k(  «      d
d¬«       t        j                  |¬«      } | j                  t,        j.                  t,        j0                  «       t3        t        j4                  |t,        j0                  k(  «      d
d¬«       y # 1 sw Y   �ŒWxY w)NÚprecomputedr*   r,   r-   r$   r&   r   c                 óB   — t        j                  | |j                  «      S ©N©rN   ÚdotÚT©ÚxÚys     r:   Úkfuncztest_precomputed.<locals>.kfunc²   s   € Ü�v‰v�a˜Ÿ™‹~Ðr<   r)   g®Gáz®ï?r%   ©Údecimal)r   r/   rN   ri   r1   Úarrayrj   r0   r2   r7   ÚpytestÚraisesÚ
ValueErrorr   r3   r4   r6   r   Útrue_resultÚ
zeros_likeÚrangeÚlenrK   rL   rM   r   rO   )r9   ÚKÚKTra   ÚiÚjrn   Úclf2s           r:   Útest_precomputedr~   ‘   sp  € ô �'‰'˜Ô
'€Cô 	�‰Œq”"—(‘(œ1“+—-‘-Ó €AØ‡G�GˆAŒq„Mä	�‰””2—8‘8œA“;—=‘=Ó	!€BØ�;‰;�r‹?€DÜ	�‰”zÓ	"ñ Ø�‰�B—D‘DÔ÷ô �s—~‘~¨°¨ Ô7Ü�s—|‘| a¨ VÔ,Ü�s—~‘~¨ sÔ+Ü˜cŸl™l¨Q°¨FÔ3Ü�tœ[Ô)ô 
�‰�rÓ	€BÜ”3”q“6‹]ò *ˆØ—‘ò 	*ˆAÜ—v‘vœa ™d¤A a¡DÓ)ˆBˆq�!ˆtŠHñ	*ð*ð �;‰;�r‹?€DÜ�tœ[Ô)ò
ô �'‰'˜Ô
€CØ‡G�GŒB�H‰H”Q‹KœÔØ�;‰;”q‹>€Dä�s—~‘~¨°¨ Ô7Ü�s—~‘~¨ sÔ+Ü˜cŸl™l¨Q°¨FÔ3Ü�tœ[Ô)ô �'‰'˜Ô
'€CÜ�7‰7˜(Ô#€DÜ
�‰Œt�y‰yœ$Ÿ)™)Ÿ+™+Ó&€AØ‡G�GˆAŒt�{‰{ÔØ‡H�HŒT�Y‰YœŸ™Ô$Ø�;‰;�q‹>€DÜ˜cŸl™l¨D¯M©MÔ:Ü˜cŸn™n¨d¯o©oÔ>Ü˜cŸn™n¨d¯o©oÔ>ÜœŸ™ ¬¯©Ñ 3Ó4°dÀAÕFô 	�‰�aÓ€AÜ”3”t—y‘y“>Ó"ò 9ˆØ—‘ò 	9ˆAÜ—f‘fœTŸY™Y q™\¬4¯9©9°Q©<Ó8ˆAˆa�ˆdŠGñ	9ð9ð �;‰;�q‹>€DÜœŸ™ ¬¯©Ñ 3Ó4°dÀAÕFä
�'‰'˜Ô
€CØ‡G�GŒD�I‰I”t—{‘{Ô#ÜœŸ™ ¬¯©Ñ 3Ó4°dÀAÖF÷wñ ús   ÃT>Ô>Uc                  ó  — t        j                  «       } t        j                  ddd¬«      t        j                  ddd¬«      t        j                  dd¬«      t        j
                  d¬«      t        j
                  d¬«      fD ]S  }|j                  | j                  | j                  «       |j                  | j                  | j                  «      dkD  rŒSJ ‚ t        j                  «       j                  | j                  t        j                  t        | j                  «      «      «       t        j
                  «       j                  | j                  t        j                  t        | j                  «      «      «       y )	Nr)   çš™™™™™Ù?ç      ð?)r+   ÚnuÚCç      $@©r+   rƒ   ©rƒ   g{®Gáz”?)r   Úload_diabetesr   r   r   r   r0   rL   rM   ÚscorerN   Úonesrx   )Údiabetesr9   s     r:   Útest_svrr‹   Ú   sü   € ô ×%Ñ%Ó'€Hä�	‰	˜ c¨SÔ1Ü�	‰	˜ c¨TÔ2Ü�‰�x 4Ô(Ü�‰˜ÔÜ�‰˜Ôðò @ˆð 	�‰�—‘˜xŸ™Ô/Ø�y‰y˜Ÿ™¨¯©Ó8¸4Ó?Ð?Ð?ð@ô ‡G�GƒI‡M�M�(—-‘-¤§¡¬¨X¯]©]Ó);Ó!<Ô=Ü‡M�MƒO×Ñ˜Ÿ™¤r§w¡w¬s°8·=±=Ó/AÓ'BÕCr<   c                  ó€  — t        j                  «       } t        j                  d¬«      j	                  | j
                  | j                  «      }|j                  | j
                  | j                  «      }t        j                  dd¬«      j	                  | j
                  | j                  «      }|j                  | j
                  | j                  «      }t        t        j                  j                  |j                  «      t        j                  j                  |j                  «      dd«       t        ||d«       y )Nç     @�@r†   r)   r…   r$   ç-Cëâ6?r%   )r   r‡   r   r   r0   rL   rM   rˆ   r   r   rN   ÚlinalgÚnormr@   r   )rŠ   ÚlsvrÚscore1ÚsvrÚscore2s        r:   Útest_linearsvrr•   î   sÆ   € ô ×%Ñ%Ó'€HÜ�=‰=˜3Ô×#Ñ# H§M¡M°8·?±?ÓC€DØ�Z‰Z˜Ÿ™ x§¡Ó7€Fä
�'‰'˜ SÔ
)×
-Ñ
-¨h¯m©m¸X¿_¹_Ó
M€CØ�Y‰Y�x—}‘} h§o¡oÓ6€Fä”B—I‘I—N‘N 4§:¡:Ó.´·	±	·±¸s¿y¹yÓ0IÈ1ÈfÔUÜ˜ ¨Õ*r<   c                  óü  — t        j                  «       } t        | j                  «      }t	        j
                  |«      }t        j                  ddd¬«      j                  | j                  | j                  |¬«      }|j                  | j                  | j                  «      }t        j                  ddd¬«      j                  | j                  | j                  «      }|j                  | j                  | j                  «      }t        t        j                  j                  |j                  «      t        j                  j                  |j                  «      dd«       t        ||d«       t!        d	«      }|j#                  d	d
|«      }t        j                  ddd¬«      j                  | j                  | j                  |¬«      }	|	j                  | j                  | j                  |¬«      }
t	        j$                  | j                  |d	¬«      }t	        j$                  | j                  |d	¬«      }t        j                  ddd¬«      j                  ||«      }|j                  ||«      }t        |
|d«       y )Nr�   çê-�™—q=i'  )rƒ   ÚtolÚmax_iter©Úsample_weightr$   rŽ   r%   r   é
   ©Úaxis)r   r‡   rx   rM   rN   r‰   r   r   r0   rL   rˆ   r   r�   r�   r@   r   r   ÚrandintÚrepeat)rŠ   Ú	n_samplesÚunit_weightr‘   r’   Úlsvr_no_weightr”   Úrandom_stateÚrandom_weightÚlsvr_unflatÚscore3ÚX_flatÚy_flatÚ	lsvr_flatÚscore4s                  r:   Útest_linearsvr_fit_sampleweightr¬   ü   sã  € ô ×%Ñ%Ó'€HÜ�H—O‘OÓ$€IÜ—'‘'˜)Ó$€KÜ�=‰=˜3 E°EÔ:×>Ñ>Ø�‰�x—‘°kð ?ó €Dð �Z‰Z˜Ÿ™ x§¡Ó7€Fä—]‘] S¨e¸eÔD×HÑHØ�‰�x—‘ó€Nð ×!Ñ! (§-¡-°·±ÓA€FäÜ
�	‰	�‰�t—z‘zÓ"¤B§I¡I§N¡N°>×3GÑ3GÓ$HÈ!ÈVôô ˜ ¨Ô*ô & aÓ(€LØ ×(Ñ(¨¨B°	Ó:€MÜ—-‘- #¨5¸5ÔA×EÑEØ�‰�x—‘°mð Fó €Kð ×ÑØ�‰�x—‘°mð ó €Fô �Y‰Y�x—}‘} m¸!Ô<€FÜ�Y‰Y�x—‘¨¸AÔ>€FÜ—‘ ¨¸Ô?×CÑCÀFÈFÓS€IØ�_‰_˜V VÓ,€Fä˜ ¨Õ*r<   c                  óè   — dgdgg} ddg}t        j                  d„ ¬«      }|j                  | |«       t        j                  t
        «      5  |j                  | «       d d d «       y # 1 sw Y   y xY w)Nr.   r�   g      à?c                 ó0   — t        j                  dgg«      S )Nr�   )rN   rq   rk   s     r:   ú<lambda>z!test_svr_errors.<locals>.<lambda>*  s   € ¤b§h¡h°°¨wÓ&7€ r<   r*   )r   r   r0   rr   rs   rt   r7   ©r1   rm   r9   s      r:   Útest_svr_errorsr±   %  sb   € Ø
ˆ��ˆ€AØ	ˆcˆ
€Aô �'‰'Ñ7Ô
8€CØ‡G�GˆAˆq„MÜ	�‰”zÓ	"ñ Ø�‰�AŒ÷÷ ñ ús   ÁA(Á(A1c                  ó¾  ‡— t        j                  «       Š‰j                  t        «       ‰j	                  t
        «      } t        | g d¢«       | j                  t        j                  d«      k(  sJ ‚t        ‰j                  dgd¬«       t        ‰j                  g d¢gd¬«       t        j                  t        «      5   ˆfd„«        d d d «       y # 1 sw Y   y xY w)N)r$   r#   r#   Úintpg°rh‘í|ó¿r&   ro   )ç      è?r´   r´   r´   c                  ó   •— ‰ j                   S rg   )r@   r8   s   €r:   r¯   ztest_oneclass.<locals>.<lambda>;  s   ø€ �—‘€ r<   )r   r   r0   r1   r7   rj   r   ÚdtyperN   r   r6   r3   rr   rs   ÚAttributeError)ra   r9   s    @r:   Útest_oneclassr¸   0  sš   ø€ ä
�/‰/Ó
€CØ‡G�GŒA„JØ�;‰;”q‹>€Dä�tš[Ô)Ø�:‰:œŸ™ &Ó)Ò)Ð)Ð)Ü˜cŸn™n¨v¨hÀÕBÜ˜cŸn™nÒ/KÐ.LÐVWÕXÜ	�‰”~Ó	&ñ Ü	Ô÷÷ ñ ús   Â?CÃCc                  óø  — t        j                  «       } t        d«      }d|j                  dd«      z  }t        j
                  |dz   |dz
  f   }d|j                  dd«      z  }t        j
                  |dz   |dz
  f   }|j                  ddd¬«      }t        j                  d	d
d	¬«      } | j                  |«       | j                  |«      }t	        j                  |dk(  «      dkD  sJ ‚| j                  |«      }t	        j                  |dk(  «      dkD  sJ ‚| j                  |«      }t        |dkD  j                  «       |dk(  «       | j                  |«      }	t        |	dkD  j                  «       |dk(  «       y )Nr%   ç333333Ó?éd   é   éüÿÿÿé   )r¼   r%   )ÚlowÚhighÚsizeçš™™™™™¹?r>   )r‚   r+   Úgammar$   r?   r#   r   )r   r   r   ÚrandnrN   Úr_Úuniformr0   r7   rO   Údecision_functionr   Úravel)
r9   Úrndr1   ÚX_trainÚX_testÚ
X_outliersÚy_pred_testÚy_pred_outliersÚdec_func_testÚdec_func_outlierss
             r:   Útest_oneclass_decision_functionrÑ   >  s`  € ä
�/‰/Ó
€CÜ
˜QÓ
€Cð 	ˆc�i‰i˜˜QÓÑ€AÜ�e‰e�A˜‘E˜1˜q™5�LÑ!€Gð 	ˆc�i‰i˜˜AÓÑ€AÜ�U‰U�1�q‘5˜!˜a™%�<Ñ €Fà—‘ ¨!°'�Ó:€Jô �/‰/˜S¨°cÔ
:€CØ‡G�GˆGÔð —+‘+˜fÓ%€KÜ�7‰7�; !Ñ#Ó$ sÒ*Ð*Ð*Ø—k‘k *Ó-€OÜ�7‰7�? bÑ(Ó)¨CÒ/Ð/Ð/Ø×)Ñ)¨&Ó1€MÜ˜¨Ñ)×0Ñ0Ó2°KÀ1Ñ4DÔEØ×-Ñ-¨jÓ9ÐÜÐ)¨AÑ-×4Ñ4Ó6¸È1Ñ8LÕMr<   c                  óÞ   — ddgddgddgg} t        j                  d¬«      j                  | «      }t        |j	                  ddgg«      |j                  ddgg«      |j                  z   «       y )Nr$   r%   ©rÃ   g       @)r   r   r0   r   Úscore_samplesrÇ   Úoffset_)rÊ   r9   s     r:   Útest_oneclass_score_samplesrÖ   \  sl   € Ø�1ˆv˜˜1�v  1˜vÐ&€GÜ
�/‰/ Ô
"×
&Ñ
& wÓ
/€CÜØ×Ñ˜C ˜:˜,Ó'Ø×Ñ  S˜z˜lÓ+¨c¯k©kÑ9õr<   c                  óN  — t        j                  dd¬«      } | j                  t        t        «       t        | j                  ddgg«       t        | j                  ddgg«      dg«       t        j                  ddgg«      | _
        t        | j                  ddgg«      d	g«       y )
Nr)   r�   r…   r,   r-   çš™™™™™¹¿r$   r.   r%   )r   r/   r0   r1   r2   r   r3   r7   rN   rq   Ú_dual_coef_r8   s    r:   Útest_tweak_paramsrÚ   e  s�   € ô �'‰'˜ SÔ
)€CØ‡G�GŒAŒq„MÜ�s—~‘~¨°¨ Ô7Ü�s—{‘{ T¨4 L >Ó2°Q°CÔ8Ü—h‘h  c 
˜|Ó,€C„OÜ�s—{‘{ T¨4 L >Ó2°Q°CÕ8r<   c            	      óö  — t        j                  ddd¬«      t        j                  dd¬«      fD �]F  } | j                  t        j
                  t        j                  «       | j                  t        j
                  «      }t        t        j                  |d«      t        j                  t        j
                  j                  d   «      «       t        j                  t        j                  |d«      | j                  t        j
                  «      k(  «      dkD  sJ ‚t!        | j                  t        j
                  «      t        j"                  | j%                  t        j
                  «      «      d«       �ŒI y )	NTr   r�   )Úprobabilityr¤   rƒ   )rÜ   r¤   r$   r?   é   )r   r/   ÚNuSVCr0   rK   rL   rM   Úpredict_probar   rN   Úsumr‰   ÚshaperO   Úargmaxr7   r   ÚexpÚpredict_log_proba)r9   Úprob_predicts     r:   Útest_probabilityræ   t  sö   € ô
 	�‰˜D¨q°CÔ8Ü�	‰	˜d°Ô3ðó 
ˆð 	�‰”—	‘	œ4Ÿ;™;Ô'à×(Ñ(¬¯©Ó3ˆÜ!¤"§&¡&¨°qÓ"9¼2¿7¹7Ä4Ç9Á9Ç?Á?ÐSTÑCUÓ;VÔWÜ�w‰w”r—y‘y ¨qÓ1°S·[±[ÄÇÁÓ5KÑKÓLÈsÒRÐRÐRäØ×ÑœdŸi™iÓ(¬"¯&©&°×1FÑ1FÄtÇyÁyÓ1QÓ*RÐTUö	
ñ
r<   c                  ó   — t        j                  ddd¬«      j                  t        j                  t        j
                  «      } t        j                  t        j                  | j                  j                  «      | j                  z   }t        || j                  t        j                  «      «       | j                  t        t        «       t        j                  t        | j                  j                  «      | j                  z   }| j                  t        «      }t        |j!                  «       | j                  t        «      «       t        || j"                  | j                  t        «      dkD  j%                  t&        «         «       t        j(                  g d¢«      }t        | j                  t        «      |d«       t        j                  dd	d¬
«      } | j                  t        t        «       t+        t        | j,                  | j.                  ¬«      }t        j                  || j0                  j                  «      | j                  z   }t        |j!                  «       | j                  t        «      «       y )Nr)   rÂ   Úovo)r+   rƒ   Údecision_function_shaper   )ç      ð¿g…ëQ¸å¿rê   g…ëQ¸å?r�   r�   r%   r>   r$   )r+   rÃ   ré   rÓ   )r   r/   r0   rK   rL   rM   rN   ri   r@   rj   r6   r   rÇ   r1   r2   r7   rÈ   rQ   rS   Úintrq   r   r5   rÃ   r3   )r9   ÚdecÚ
predictionÚexpectedÚrbfss        r:   Útest_decision_functionrð   ‡  s–  € ô
 �'‰'˜ SÀ%Ô
H×
LÑ
LÜ�	‰	”4—;‘;ó€Cô �&‰&”—‘˜CŸI™IŸK™KÓ
(¨3¯>©>Ñ
9€Cä˜c 3×#8Ñ#8¼¿¹Ó#CÔDð ‡G�GŒAŒq„MÜ
�&‰&”�C—I‘I—K‘KÓ
  3§>¡>Ñ
1€CØ—‘œQ“€JÜ˜cŸi™i›k¨3×+@Ñ+@ÄÓ+CÔDÜØ�C—L‘L #×"7Ñ"7¼Ó":¸QÑ">×!FÑ!FÄsÓ!KÑLôô �x‰xÒ;Ó<€HÜ˜c×3Ñ3´AÓ6¸À!ÔDô �'‰'˜ aÀÔ
G€CØ‡G�GŒAŒq„Mä”a˜×-Ñ-°S·Y±YÔ?€DÜ
�&‰&��s—~‘~×'Ñ'Ó
(¨3¯>©>Ñ
9€CÜ˜cŸi™i›k¨3×+@Ñ+@ÄÓ+CÕDr<   ÚSVMc                 óB  —  | dd¬«      j                  t        j                  t        j                  «      }|j	                  t        j                  «      }|j
                  t        t        j                  «      dfk(  sJ ‚t        |j                  t        j                  «      t        j                  |d¬«      «       t        ddd	¬
«      \  }}t        ||d	¬«      \  }}}} | dd¬«      j                  ||«      }|j	                  |«      }|j
                  t        |«      dfk(  sJ ‚t        |j                  |«      t        j                  |d¬«      «        | dd¬«      j                  ||«      }|j	                  |«      }|j
                  t        |«      dfk(  sJ ‚y )Nr)   Úovr©r+   ré   r&   r$   r�   éP   rH   r   )r¡   Úcentersr¤   ©r¤   rè   rœ   )r0   rK   rL   rM   rÇ   rá   rx   r   r7   rN   râ   r   r   )	rñ   r9   rì   r1   rm   rÊ   rË   Úy_trainÚy_tests	            r:   Útest_decision_function_shaperú   ¨  sR  € ñ
 �X°uÔ
=×
AÑ
AÜ�	‰	”4—;‘;ó€Cð ×
Ñ
¤§	¡	Ó
*€CØ�9‰9œœTŸY™Y›¨Ð+Ò+Ð+Ð+Ü�s—{‘{¤4§9¡9Ó-¬r¯y©y¸À1Ô/EÔFô  ¨A¸AÔ>�D€A€qÜ'7¸¸1È1Ô'MÑ$€GˆV�W˜fá
�X°uÔ
=×
AÑ
AÀ'È7Ó
S€CØ
×
Ñ
 Ó
'€CØ�9‰9œ˜V› aÐ(Ò(Ð(Ð(Ü�s—{‘{ 6Ó*¬B¯I©I°cÀÔ,BÔCñ �X°uÔ
=×
AÑ
AÀ'È7Ó
S€CØ
×
Ñ
 Ó
(€CØ�9‰9œ˜W› rÐ*Ò*Ð*Ñ*r<   c                  óÜ  — t         j                  } t         j                  }t        j                  dd¬«      j                  | |«      }t        j                  | |j                  j                  «      |j                  z   }t        |j                  «       |j                  | «      j                  «       «       t        j                  dd¬«      j                  | |«      }t        | |j                  |j                   ¬«      }t        j                  ||j"                  j                  «      |j                  z   }t        |j                  «       |j                  | «      j                  «       «       y )Nr)   rÂ   r…   r>   r$   )r+   rÃ   rÓ   )rK   rL   rM   r   r   r0   rN   ri   r@   rj   r6   r   rÈ   r7   r   r5   rÃ   r3   )r1   rm   Úregrì   rï   s        r:   Útest_svr_predictrý   Ã  sò   € ô
 	�	‰	€AÜ�‰€Aô �'‰'˜ SÔ
)×
-Ñ
-¨a°Ó
3€Cä
�&‰&��C—I‘I—K‘KÓ
  3§>¡>Ñ
1€CÜ˜cŸi™i›k¨3¯;©;°q«>×+?Ñ+?Ó+AÔBô �'‰'˜ aÔ
(×
,Ñ
,¨Q°Ó
2€Cä�a˜×-Ñ-°S·Y±YÔ?€DÜ
�&‰&��s—~‘~×'Ñ'Ó
(¨3¯>©>Ñ
9€CÜ˜cŸi™i›k¨3¯;©;°q«>×+?Ñ+?Ó+AÕBr<   c                  ó  — t        j                  ddi¬«      } | j                  t        t        «       t        | j                  t        «      dgdz  «       t        dddd	gd¬
«      \  }}t        j                  «       t        j                  d¬«      t        j                  «       fD ]W  } | j                  dddœ¬«       | j                  |d d |d d «       | j                  |dd  «      }t        |dd  |«      dkD  rŒWJ ‚ y )Nr$   rÂ   ©Úclass_weightr%   é   éÈ   rœ   g-²�ï§ê?gÇK7‰A`Å?)r¡   Ú
n_featuresÚweightsr¤   r   r÷   )r   r$   r»   rº   )r   r/   r0   r1   r2   r   r7   r   r	   ÚLogisticRegressionr   Ú
set_paramsr   )r9   ÚX_Úy_Úy_preds       r:   Útest_weightr
  Ù  så   € ä
�'‰'  3˜xÔ
(€Cà‡G�GŒAŒq„Mä˜cŸk™k¬!›n¨q¨c°A©gÔ6ä Ø "¨u°e¨nÈ1ô�F€Bˆô
 	×'Ñ'Ó)Ü�‰ 1Ô%Ü�‰‹	ðò 0ˆð
 	�‰¨°¡OˆÔ4Ø�‰��4�C�˜"˜T˜c˜(Ô#Ø—‘˜R  ˜XÓ&ˆÜ˜˜3˜4˜ &Ó)¨CÓ/Ð/Ð/ñ0r<   Ú	estimatorç{®Gáz„?r†   c                 óÄ  — ddgddgddgddgddgddgg}| j                  d¬«       dgdz  }| j                  |t        |¬	«       | j                  d
dgg«      }|t	        j
                  d«      k(  sJ ‚g d¢}| j                  |t        |¬	«       | j                  d
dgg«      }|dk  sJ ‚g d¢}| j                  |t        |¬	«       | j                  d
dgg«      }|dkD  sJ ‚y )Nr"   r   r#   r%   r$   r)   r*   r  rš   rê   r�   ©r„   rÂ   rÂ   rÂ   rÂ   rœ   ©r�   rÂ   r„   r„   rÂ   rÂ   )r  r0   r2   rÇ   rr   Úapprox©r  r1   r›   r	  s       r:   Ú'test_svm_classifier_sided_sample_weightr  ð  sÿ   € ð ˆaˆ�2�r�(˜Q ˜G a¨ V¨a°¨V°a¸°VÐ<€AØ×Ñ ÐÔ)ð �C˜!‘G€MØ‡M�M�!”Q m€MÔ4Ø×(Ñ(¨4°¨+¨Ó7€FØ”V—]‘] 1Ó%Ò%Ð%Ð%ò 3€MØ‡M�M�!”Q m€MÔ4Ø×(Ñ(¨4°¨+¨Ó7€FØ�AŠ:Ðˆ:â4€MØ‡M�M�!”Q m€MÔ4Ø×(Ñ(¨4°¨+¨Ó7€FØ�AŠ:Ð‰:r<   c                 óÄ  — ddgddgddgddgddgddgg}| j                  d¬«       dgdz  }| j                  |t        |¬	«       | j                  d
dgg«      }|t	        j
                  d«      k(  sJ ‚g d¢}| j                  |t        |¬	«       | j                  d
dgg«      }|dk  sJ ‚g d¢}| j                  |t        |¬	«       | j                  d
dgg«      }|dkD  sJ ‚y )Nr"   r   r#   r%   r$   r)   r*   r  rš   rê   r�   g      ø?r  r  )r  r0   r2   r7   rr   r  r  s       r:   Ú&test_svm_regressor_sided_sample_weightr  
  sÿ   € ð ˆaˆ�2�r�(˜Q ˜G a¨ V¨a°¨V°a¸°VÐ<€AØ×Ñ ÐÔ)ð �C˜!‘G€MØ‡M�M�!”Q m€MÔ4Ø×Ñ  s ˜}Ó-€FØ”V—]‘] 3Ó'Ò'Ð'Ð'ò 3€MØ‡M�M�!”Q m€MÔ4Ø×Ñ  s ˜}Ó-€FØ�CŠ<Ðˆ<â4€MØ‡M�M�!”Q m€MÔ4Ø×Ñ  s ˜}Ó-€FØ�CŠ<Ð‰<r<   c            
      óB  — t        j                  «       } | j                  t        t        «       | j
                  }| j                  d¬«       | j                  t        t        t        j                  dt        t        «      «      ¬«       t        || j
                  «       y )Nr»   r†   r  rš   )r   r/   r0   r1   r2   r3   r  rN   r    rx   r   )r9   Údual_coef_no_weights     r:   Ú$test_svm_equivalence_sample_weight_Cr  $  sb   € ä
�'‰'‹)€CØ‡G�GŒAŒq„MØŸ.™.ÐØ‡N�N�S€NÔØ‡G�GŒAŒq¤§	¡	¨$´´A³Ó 7€GÔ8ÜÐ'¨¯©Õ8r<   zEstimator, err_msgz:Invalid input - all samples have zero or negative weights.z6(negative dimensions are not allowed|nu is infeasible))r/   rÞ   r   r   r   )Úidsr›   ç333333Ó¿zweights-are-zerozweights-are-negativec                 ó®   —  | d¬«      }t        j                  t        |¬«      5  |j                  t        t
        |¬«       d d d «       y # 1 sw Y   y xY w©Nr)   r*   ©Úmatchrš   ©rr   rs   rt   r0   r1   r2   )Ú	EstimatorÚerr_msgr›   Úests       r:   Ú-test_negative_sample_weights_mask_all_samplesr"  .  sC   € ñ" ˜8Ô
$€CÜ	�‰”z¨Ô	1ñ 3Ø�‰””1 MˆÔ2÷3÷ 3ñ 3úó   ¥AÁAzClassifier, err_msgzJInvalid input - all samples with positive weights belong to the same classzspecified nu is infeasibler/   rÞ   )r   ç      à¿r   r$   r$   r$   )r$   r$   r$   r   rØ   r  zmask-label-1zmask-label-2c                 ó®   —  | d¬«      }t        j                  t        |¬«      5  |j                  t        t
        |¬«       d d d «       y # 1 sw Y   y xY wr  r  )Ú
Classifierr   r›   r9   s       r:   Ú.test_negative_weights_svc_leave_just_one_labelr'  D  sC   € ñ( ˜HÔ
%€CÜ	�‰”z¨Ô	1ñ 3Ø�‰””1 MˆÔ2÷3÷ 3ñ 3úr#  zClassifier, modelg6<½R–Ù?r€   gÕçj+ö—Ù?)ú	when-leftú
when-rightgioð…ÉTÕ?zsample_weight, mask_side)r$   r$  r$   r$   r$   r$   r(  )r$   r$   r$   r   r$   r$   r)  zpartial-mask-label-1zpartial-mask-label-2c                 ó†   —  | d¬«      }|j                  t        t        |¬«       t        |j                  ||   gd¬«       y )Nr)   r*   rš   çü©ñÒMbP?)Úrtol)r0   r1   r2   r   r@   )r&  Úmodelr›   Ú	mask_sider9   s        r:   Ú*test_negative_weights_svc_leave_two_labelsr/  ]  s8   € ñ  ˜HÔ
%€CØ‡G�GŒAŒq €GÔ.Ü�C—I‘I  iÑ 0Ð1¸Ö=r<   r  )r/   rÞ   r   c                 óì   —  | d¬«      }|j                  t        t        |¬«       t        j                  |j
                  «      j                  «       }|d   t        j                  |d   d¬«      k(  sJ ‚y )Nr)   r*   rš   r   r$   r+  )Úrel)	r0   r1   r2   rN   Úabsr@   rÈ   rr   r  )r  r›   r!  Úcoefs       r:   Ú!test_negative_weight_equal_coeffsr4  r  s\   € ñ ˜8Ô
$€CØ‡G�GŒAŒq €GÔ.Ü�6‰6�#—)‘)Ó×"Ñ"Ó$€DØ�‰7”f—m‘m D¨¡G°Ô6Ò6Ð6Ñ6r<   c                  ó,  — ddl m}  ddlm} t        j
                  d d …d d…f   t        j                  dz   }}t        j                  t        j                  |j                  «      t        j                  |dkD  «      d   d d d…   «      }t        j                  ||   «      } |d|||   ¬«      }t        j                  |«      dk(  sJ ‚t        j                  d¬	«      t        j                   d¬
«       | «       fD ]•  }|j#                  ||   ||   «      j%                  |«      }|j'                  d¬«       |j#                  ||   ||   «      j%                  |«      }	t)        j*                  ||d¬«      t)        j*                  ||	d¬«      k  rŒ•J ‚ y )Nr   )r  )Úcompute_class_weightr%   r$   Úbalanced)Úclassesrm   r)   r*   r÷   rÿ   Úmacro)Úaverage)Úsklearn.linear_modelr  Úsklearn.utilsr6  rK   rL   rM   rN   ÚdeleteÚarangerÁ   ÚwhereÚuniquerâ   r   r/   r   r0   r7   r  r
   r   )
r  r6  r1   rm   Ú
unbalancedr8  Úclass_weightsr9   r	  Úy_pred_balanceds
             r:   Útest_auto_weightrD  ‚  sd  € å7õ 3ä�9‰9’Q˜˜˜�UÑœTŸ[™[¨1™_€q€AÜ—‘œ2Ÿ9™9 Q§V¡VÓ,¬b¯h©h°q¸1±u«o¸aÑ.@ÁÀ1ÀÑ.EÓF€Jä�i‰i˜˜*™Ó&€GÙ(¨¸WÈÈ*ÉÔV€MÜ�9‰9�]Ó# qÒ(Ð(Ð(ô 	�‰�xÔ Ü�‰ 1Ô%ÙÓðò 
ˆð —‘˜˜:™¨¨*©Ó6×>Ñ>¸qÓAˆØ�‰ JˆÔ/ØŸ'™'Øˆj‰MØˆj‰Mó
÷ ‰'�!‹*ð 	ô ×Ñ  6°7Ô;¼w×?OÑ?OØˆ¨ô@
ó 
ð 	
ð 
ñ
r<   Úlil_containerc                 óP  — t         d d }t        j                  t        «      5  t	        j
                  «       j                  t        |«       d d d «       t	        j
                  «       t	        j                  d¬«      fD ]Ã  }t        j                  t        «      }|j                  d   rJ ‚t        j                  t        j                  t         d«      j                  «      }|d d …df   }|j                  d   rJ ‚|j                  d   rJ ‚|j                  ||«       t        |j!                  t        «      t"        «       ŒÅ t	        j
                  d¬«      }t        j                  t        «      5  |j                  t        t         «       d d d «       t	        j
                  «       j                  t        t         «      }t        j                  t        «      5  |j!                   | t        «      «       d d d «       t        j$                  t        «      j                  }|j                  t        j&                  t        |«      t         «       t        j                  t        «      5  |j!                  t        «       d d d «       t	        j
                  «       }|j                  t        t         «       t        j                  t        «      5  |j!                  |«       d d d «       y # 1 sw Y   �ŒŸxY w# 1 sw Y   �ŒjxY w# 1 sw Y   �ŒxY w# 1 sw Y   Œ’xY w# 1 sw Y   y xY w)	Nr#   r   r÷   ÚC_CONTIGUOUS)r%   r$   ÚF_CONTIGUOUSre   r*   )r2   rr   rs   rt   r   r/   r0   r1   r   rN   ÚasfortranarrayÚflagsÚascontiguousarrayÚtilerj   r   r7   ru   rq   ri   )rE  ÚY2r9   ÚXfÚyfÚXts         r:   Útest_bad_inputrQ  ¦  s&  € ô 
ˆ3ˆBˆ€BÜ	�‰”zÓ	"ñ Ü�‰‹	�‰”a˜Ô÷ô —‘“	œ3Ÿ=™=°aÔ8Ð9ò 8ˆÜ×ÑœqÓ!ˆØ—8‘8˜NÒ+Ð+Ð+Ü×!Ñ!¤"§'¡'¬!¨VÓ"4×"6Ñ"6Ó7ˆØ’�2�‰YˆØ—8‘8˜NÒ+Ð+Ð+Ø—8‘8˜NÒ+Ð+Ð+Ø�‰��BŒÜ˜3Ÿ;™;¤q›>¬;Õ7ð8ô �'‰'˜Ô
'€CÜ	�‰”zÓ	"ñ Ø�‰””1Œ÷ô �'‰'‹)�-‰-œœ1Ó
€CÜ	�‰”zÓ	"ñ &Ø�‰‘M¤!Ó$Ô%÷&ô 
�‰”!‹�‰€BØ‡G�GŒB�F‰F”1�b‹Mœ1ÔÜ	�‰”zÓ	"ñ Ø�‰”AŒ÷ô �'‰'‹)€CØ‡G�GŒAŒq„MÜ	�‰”zÓ	"ñ Ø�‰�BŒ÷ð ÷?ñ ú÷ ñ ú÷
&ñ &ú÷
ð ú÷
ð ús;   £)K)Å3K6ÇLÉ)LËLË)K3Ë6L ÌLÌLÌL%c                  ó¦  — t         j                  j                  d«      } d}t        j                  t         j                  «      j
                  }|| j                  |df¬«      z  }| j                  dd|¬«      }t        j                  «       }d}t        j                  t        |¬«      5  |j                  ||«       d d d «       y # 1 sw Y   y xY w)Nr   rœ   r%   )rÁ   z2The dual coefficients or intercepts are not finiter  )rN   ÚrandomÚRandomStateÚfinforT   ÚmaxrÆ   rŸ   r   r/   rr   rs   rt   r0   )Úrngr¡   Úfmaxr1   rm   r9   Úmsgs          r:   Útest_svc_nonfinite_paramsrZ  Í  s    € ä
�)‰)×
Ñ
 Ó
"€CØ€IÜ�8‰8”B—J‘JÓ×#Ñ#€DØˆs�{‰{ ¨A ˆ{Ó/Ñ/€AØ�‰�A�q˜yˆÓ)€Aä
�'‰'‹)€CØ
>€CÜ	�‰”z¨Ô	-ñ Ø�‰��1Œ÷÷ ñ ús   Â+CÃCc                  ó6  — t        j                  dd¬«      } | j                  t        t        «       | j                  t        «       t        j                  t        j                  t        j                  j                  t        j                  «      ddd¬«       y )Nr)   T)r+   rÜ   rH   r   rI   )r   r/   r0   r1   r2   rß   rj   r   rU   rK   rL   rM   rS   rN   rT   r8   s    r:   Útest_unicode_kernelr\  Û  s^   € ä
�'‰'˜¨tÔ
4€CØ‡G�GŒAŒq„MØ×Ñ”aÔÜ×ÑÜ�	‰	”4—;‘;×%Ñ%¤b§j¡jÓ1°1¸XÐSTör<   Úcsr_containerc                 óÔ   — t        j                  d¬«      } | ddgddgg«      }t        j                  t        d¬«      5  |j                  |ddg«       d d d «       y # 1 sw Y   y xY w)Nre   r*   r$   r   zSparse precomputedr  )r   r/   rr   rs   Ú	TypeErrorr0   )r]  r9   Úsparse_grams      r:   Útest_sparse_precomputedra  å  s]   € ä
�'‰'˜Ô
'€CÙ ! Q ¨!¨Q¨Ð 0Ó1€KÜ	�‰”yÐ(<Ô	=ñ %Ø�‰�˜a ˜VÔ$÷%÷ %ñ %ús   Á AÁA'c                 ó2  —  | g d¢g d¢g d¢g d¢g«      }t        j                  g d¢«      }t        j                  d¬«      }|j	                  ||«       |j
                  j                  j                  rJ ‚|j                  j                  j                  rJ ‚y )N)r   r$   r   r   )r   r   r   r$   )r   r   r$   r   )ç{®Gáz¤?rc  rÂ   g{®GázÄ?r)   r*   )	rN   rq   r   r   r0   r5   rL   rÁ   r3   )r]  rÊ   rø   r-  s       r:   Ú%test_sparse_fit_support_vectors_emptyrd  í  s{   € ñ š\ª<ºÂ|ÐTÓU€GÜ�h‰hÒ/Ó0€GÜ�G‰G˜8Ô$€EØ	‡I�Iˆg�wÔØ×%Ñ%×*Ñ*×/Ò/Ð/Ð/Ø×Ñ×$Ñ$×)Ò)Ð)Ð)Ð)r<   ÚlossÚhingeÚsquared_hingeÚpenaltyÚl1Úl2ÚdualTFc           	      ó@  — t        ddd¬«      \  }}t        j                  || |d¬«      }| |fdk(  s| ||fdk(  s||fdk(  r@t        j                  t
        d|›d	| ›d
|›�¬«      5  |j                  ||«       d d d «       y |j                  ||«       y # 1 sw Y   y xY w)NrH   r   )r¡   r  r¤   ©rh  re  rk  r¤   )rf  ri  )rf  rj  F)ri  Tz'Unsupported set of arguments.*penalty='z.*loss='z.*dual=r  )r   r   r   rr   rs   rt   r0   )re  rh  rk  r1   rm   r9   s         r:   Útest_linearsvc_parametersrn  ø  s¥   € ô ¨°qÀqÔI�D€A€qä
�-‰- ¨d¸ÈAÔ
N€Cà	ˆwˆ˜?Ò*Ø�'˜4Ð Ð$:Ò:Ø�Tˆ?˜lÒ*ä�]‰]Ýâš™dð$ô
ñ 	ð
 �G‰G�A�qŒM÷	ð 	ð 	�‰��1�÷	ð 	ús   Á%BÂBc                  ón  — t        j                  d¬«      j                  t        t        «      } | j
                  sJ ‚t        | j                  t        «      t        «       t        | j                  dgd¬«       t        j                  dddd¬«      j                  t        t        «      } t        | j                  t        «      t        «       t        j                  d	d
d¬«      j                  t        t        «      } t        | j                  t        «      t        «       t        j                  d	dd
d¬«      } | j                  t        t        «       t        | j                  t        «      t        «       | j                  t        «      }|dkD  j                  t        «      dz   }t        |t        «       y )Nr   r÷   r&   ro   ri  rg  Frm  rj  T)rh  rk  r¤   rf  r$   )r   r   r0   r1   r2   Úfit_interceptr   r7   rj   ru   r   r6   rÇ   rS   rë   )r9   rì   Úress      r:   Útest_linearsvcrr    s*  € ä
�-‰- QÔ
'×
+Ñ
+¬A¬qÓ
1€Cð ×ÒÐÐä�s—{‘{¤1“~¤{Ô3Ü˜cŸn™n¨q¨c¸1Õ=ô �-‰-Ø˜?°ÀQôç	�cŒ!ŒQƒið ô �s—{‘{¤1“~¤{Ô3ô �-‰- ¨4¸aÔ
@×
DÑ
DÄQÌÓ
J€CÜ�s—{‘{¤1“~¤{Ô3ô �-‰- ¨7¸ÈAÔ
N€CØ‡G�GŒAŒq„MÜ�s—{‘{¤1“~¤{Ô3ð ×
Ñ
¤Ó
"€CØ�‰7×
Ñ
œ3Ó
 !Ñ
#€CÜ�sœKÕ(r<   c                  óš  — t        j                  d¬«      j                  t        j                  t        j
                  «      } t        j                  dd¬«      }|j                  t        j                  t        j
                  «       | j                  t        j                  «      |j                  t        j                  «      k(  j                  «       dkD  sJ ‚| j                  |j                  k7  j                  «       sJ ‚t        |j                  t        j                  «      t        j                  |j                  t        j                  «      d¬«      «       t        j                  t        j                  |j                  j                  «      |j                   z   }t#        ||j                  t        j                  «      «       y )Nr   r÷   Úcrammer_singer)Úmulti_classr¤   r?   r$   r�   )r   r   r0   rK   rL   rM   r7   rO   r@   Úallr   rN   râ   rÇ   ri   rj   r6   r   )Úovr_clfÚcs_clfÚdec_funcs      r:   Útest_linearsvc_crammer_singerrz  /  s  € ä�m‰m¨Ô+×/Ñ/´·	±	¼4¿;¹;ÓG€GÜ�]‰]Ð'7ÀaÔH€FØ
‡J�JŒt�y‰yœ$Ÿ+™+Ô&ð �O‰OœDŸI™IÓ&¨&¯.©.¼¿¹Ó*CÑC×IÑIÓKÈcÒQÐQÐQð �M‰M˜VŸ\™\Ñ)×.Ñ.Ô0Ð0Ð0ô Ø�‰”t—y‘yÓ!Ü
�	‰	�&×*Ñ*¬4¯9©9Ó5¸AÔ>ôô �v‰v”d—i‘i §¡§¡Ó0°6×3DÑ3DÑD€HÜ˜h¨×(@Ñ(@ÄÇÁÓ(KÕLr<   c                  óÄ  — t        t        «      } t        j                  | «      }t	        j
                  d¬«      j                  t        t        «      }t	        j
                  ddd¬«      j                  t        t        |¬«      }t        |j                  t        «      |j                  t        «      «       t        |j                  |j                  dd«       t        d«      }|j                  dd	| «      }t	        j
                  ddd¬«      j                  t        t        |¬«      }|j                  t        «      }t        j                  t        |d¬
«      }t        j                  t        |d¬
«      }	t	        j
                  ddd¬«      j                  ||	«      }
|
j                  t        «      }t        ||«       t        |j                  |
j                  dd«       y )Nr   r÷   r—   éè  )r¤   r˜   r™   rš   r$   rŽ   rœ   r�   )rx   r1   rN   r‰   r   r   r0   r2   r   r7   rj   r   r@   r   rŸ   r    )r¡   r¢   r9   Úclf_unitweightr¤   r¥   Úlsvc_unflatÚpred1r¨   r©   Ú	lsvc_flatrb   s               r:   Útest_linearsvc_fit_sampleweightr�  D  sk  € ä”A“€IÜ—'‘'˜)Ó$€KÜ
�-‰- QÔ
'×
+Ñ
+¬A¬qÓ
1€CÜ—]‘]°°uÀtÔL×PÑPÜ	Œ1˜Kð Qó €Nô
 �~×-Ñ-¬aÓ0°#·+±+¼a³.ÔAÜ�C—I‘I˜~×3Ñ3°Q¸Ô?ô
 & aÓ(€LØ ×(Ñ(¨¨B°	Ó:€MÜ—-‘-¨Q°EÀDÔI×MÑMÜ	Œ1˜Mð Nó €Kð ×Ñ¤Ó"€Eä�Y‰Y”q˜-¨aÔ0€FÜ�Y‰Y”q˜-¨aÔ0€FÜ—‘¨1°%À$ÔG×KÑKØ�ó€Ið ×ÑœaÓ €Eä�u˜eÔ$Ü�K×%Ñ% y§¡¸¸6ÕBr<   c                  ó°   — t        dd¬«      \  } }dD ]A  }t        j                  |dd¬«      j                  | |«      j	                  | |«      }|dkD  rŒAJ ‚ y )Nr%   r   )Ú	n_classesr¤   )TFrt  )rp  ru  r¤   r?   )r   r   r   r0   rˆ   )r1   rm   rp  Úaccs       r:   Útest_crammer_singer_binaryr…  g  sa   € ä¨¸Ô;�D€A€qà&ò 
ˆä�M‰MØ+Ø,Øô÷
 ‰S��A‹Yß‰U�1�a‹[ð 	ð �S‹yÐˆyñ
r<   c                  ób  — t         j                  t         j                     } t        j                  d¬«      j                  t         j                  | «      }t        |j                  «      t        t         j                  «      k(  sJ ‚t        j                  |j                  t         j                  «      | k(  «      dkD  sJ ‚|j                  t         j                  «      }t         j                  t        j                  |d«         }t        ||j                  t         j                  «      «       y )Nr   r÷   gš™™™™™é?r$   )rK   Útarget_namesrM   r   r   r0   rL   ÚsetrQ   rN   rO   r7   rÇ   râ   r   )rM   r9   rì   ra   s       r:   Útest_linearsvc_irisr‰  x  sÈ   € ô ×ÑœtŸ{™{Ñ+€FÜ
�-‰- QÔ
'×
+Ñ
+¬D¯I©I°vÓ
>€CÜˆs�|‰|Ó¤¤D×$5Ñ$5Ó 6Ò6Ð6Ð6Ü�7‰7�3—;‘;œtŸy™yÓ)¨VÑ3Ó4°sÒ:Ð:Ð:à
×
Ñ
¤§	¡	Ó
*€CÜ×ÑœRŸY™Y s¨AÓ.Ñ/€DÜ�t˜SŸ[™[¬¯©Ó3Õ4r<   c           	      óÂ  — ddgddgddgddgg}g d¢} | ddddd	d
d¬«      }|j                   dk(  sJ |j                   «       ‚|j                  sJ ‚d|_         |j                  ||«       t        |j                  dd¬«       d|_         |j                  ||«       |j                  }|dk  sJ ‚d|_         |j                  ||«       |j                  }t        ||d¬«       y )Nr%   r$   r&   ©r   r   r$   r$   Tri  rg  Fr¾   gH¯¼šò×z>r   )rp  rh  re  rk  rƒ   r˜   r¤   rH   ro   r»   r#   r|  )Úintercept_scalingrp  r0   r   r6   r   )Ú
classifierr1   rm   r9   Ú
intercept1Ú
intercept2s         r:   Ú'test_dense_liblinear_intercept_handlingr�  …  só   € à
ˆQˆ�!�Q�˜!˜Q˜ ! Q Ð(€AÚ€AÙ
ØØØØØ
ØØô€Cð × Ñ  AÒ%Ð< s×'<Ñ'<Ó<Ð%Ø×ÒÐÐð €CÔØ‡G�GˆAˆq„MÜ˜Ÿ™¨°1Õ5ð  €CÔØ‡G�GˆAˆq„MØ—‘€JØ˜Š?Ðˆ?ð !€CÔØ‡G�GˆAˆq„MØ—‘€JÜ˜j¨*¸aÖ@r<   c                  óØ  — t        j                  «       j                  t        j                  t        j
                  «      } | j                  t        j                  «      }| j                  j                  «       | _        | j                  j                  «       | _	        | j                  t        j                  «      }t        ||«       ddgddgddgddgg}g d¢}t        j                  «       j                  ||«      } | j                  |«      }| j                  j                  «       | _        | j                  j                  «       | _	        | j                  |«      }t        ||«       y )Nr%   r$   r&   r‹  )r   r   r0   rK   rL   rM   rÇ   r@   Úcopyr6   r   r   )r9   ÚvaluesÚvalues2r1   rm   s        r:   Útest_liblinear_set_coefr•  ª  s  € ä
�-‰-‹/×
Ñ
œdŸi™i¬¯©Ó
5€CØ×"Ñ"¤4§9¡9Ó-€FØ—	‘	—‘Ó €C„IØ—^‘^×(Ñ(Ó*€C„NØ×#Ñ#¤D§I¡IÓ.€GÜ˜f gÔ.ð ˆQˆ�!�Q�˜!˜Q˜ ! Q Ð(€AÚ€Aä
�-‰-‹/×
Ñ
˜a Ó
#€CØ×"Ñ" 1Ó%€FØ—	‘	—‘Ó €C„IØ—^‘^×(Ñ(Ó*€C„NØ×#Ñ# AÓ&€GÜ�v˜wÕ'r<   c                  óÈ  — t        j                  d¬«      j                  t        j                  t        j
                  «      t        j                  d¬«      j                  t        j                  t        j
                  «      t        j                  d¬«      j                  t        j                  t        j
                  «      t        j                  d¬«      j                  t        j                  t        j
                  «      t        j                  d¬«      j                  t        j                  «      g} | D ]�  }t        j                  t        «      5  |j                  dt        j                  d«      «       d d d «       t        j                  t         t"        f«      5  |j$                  j'                  dd«       d d d «       Œ� y # 1 sw Y   ŒPxY w# 1 sw Y   Œ¦xY w)Nr)   r*   r@   r&   )r   r   r   )r   r/   r0   rK   rL   rM   rÞ   r   r   r   rr   rs   r·   Ú__setattr__rN   r>  ÚRuntimeErrorrt   r@   Ú__setitem__)Úsvmsr9   s     r:   Útest_immutable_coef_propertyr›  ¿  s1  € ô 	�‰�xÔ ×$Ñ$¤T§Y¡Y´·±Ó<Ü�	‰	˜Ô"×&Ñ&¤t§y¡y´$·+±+Ó>Ü�‰�xÔ ×$Ñ$¤T§Y¡Y´·±Ó<Ü�	‰	˜Ô"×&Ñ&¤t§y¡y´$·+±+Ó>Ü�‰˜xÔ(×,Ñ,¬T¯Y©YÓ7ð€Dð ò -ˆÜ�]‰]œ>Ó*ñ 	3Ø�O‰O˜G¤R§Y¡Y¨q£\Ô2÷	3ä�]‰]œL¬*Ð5Ó6ñ 	-Ø�I‰I×!Ñ! &¨!Ô,÷	-ð 	-ñ-÷	3ð 	3ú÷	-ð 	-ús   Å&GÆ$GÇG	ÇG!	c                  óø   — dd l } | j                  d«      }| j                  | j                  «       d   d«       t	        j
                  d¬«      }|j                  t        t        «       | j                  |d«       y )Nr   r$   )Úverbose)	ÚosÚdupÚdup2Úpiper   r   r0   r1   r2   )rž  Ústdoutr9   s      r:   Útest_linearsvc_verboser£  Ï  sW   € ãà�V‰V�A‹Y€FØ‡G�GˆB�G‰G‹I�a‰L˜!Ôô �-‰- Ô
"€CØ‡G�GŒAŒq„Mð ‡G�GˆF�AÕr<   c                  ót  — t        j                  d„ ddd¬«      } t        j                  | «      }|j	                  t
        j                  t
        j                  «       t        j                  dddd¬«      }|j	                  t
        j                  t
        j                  «       t        |j                  |j                  «       t        |j                  |j                  «       t        |j                  t
        j                  «      |j                  t
        j                  «      «       t        |j                  t
        j                  «      |j                  t
        j                  «      d¬«       t        |j                  t
        j                  «      |j                  t
        j                  «      «       y )	Nc                 óB   — t        j                  | |j                  «      S rg   rh   rk   s     r:   r¯   z5test_svc_clone_with_callable_kernel.<locals>.<lambda>â  ó   € œBŸF™F 1 a§c¡c›N€ r<   Tr   ró   )r+   rÜ   r¤   ré   r)   r¾   ro   )r   r/   r   Úcloner0   rK   rL   rM   r   r3   r6   r   r7   rß   rÇ   )Úsvm_callableÚ
svm_clonedÚsvm_builtins      r:   Ú#test_svc_clone_with_callable_kernelr«  Þ  s%  € ô —7‘7Ù*ØØØ %ô	€Lô —‘˜LÓ)€JØ‡N�N”4—9‘9œdŸk™kÔ*ä—'‘'Ø T¸ÐSXô€Kð ‡O�O”D—I‘IœtŸ{™{Ô+ä˜j×3Ñ3°[×5KÑ5KÔLÜ˜j×3Ñ3°[×5KÑ5KÔLÜ�z×)Ñ)¬$¯)©)Ó4°k×6IÑ6IÌ$Ï)É)Ó6TÔUäØ× Ñ ¤§¡Ó+Ø×!Ñ!¤$§)¡)Ó,Øõô
 Ø×$Ñ$¤T§Y¡YÓ/Ø×%Ñ%¤d§i¡iÓ0õr<   c                  óÂ   — t        j                  d„ ¬«      } t        j                  t        «      5  | j                  t        t        «       d d d «       y # 1 sw Y   y xY w)Nc                 ó   — | S rg   © rk   s     r:   r¯   z%test_svc_bad_kernel.<locals>.<lambda>   s   €  a€ r<   r*   )r   r/   rr   rs   rt   r0   r1   r2   )Úsvcs    r:   Útest_svc_bad_kernelr°  ÿ  s>   € Ü
�'‰'™Ô
(€CÜ	�‰”zÓ	"ñ Ø�‰””1Œ÷÷ ñ ús   ±AÁAc                  ó>  — t        j                  d„ ddd¬«      } d}t        j                  t        |¬«      5  | j                  t        j                  t        «      t        «       d d d «       t        j                  | j                  dk(  «      sJ ‚y # 1 sw Y   Œ.xY w)Nc                 óB   — t        j                  | |j                  «      S rg   rh   rk   s     r:   r¯   z2test_libsvm_convergence_warnings.<locals>.<lambda>  r¦  r<   Tr   r%   )r+   rÜ   r¤   r™   zoSolver terminated early \(max_iter=2\).  Consider pre-processing your data with StandardScaler or MinMaxScaler.r  )r   r/   rr   Úwarnsr   r0   rN   rq   r1   r2   rv  Ún_iter_)ÚaÚwarning_msgs     r:   Ú test_libsvm_convergence_warningsr·    sz   € Ü�‰Ù*¸È1ÐWXô	€Að	:ð ô 
�‰Ô(°Ô	<ñ Ø	�‰Œb�h‰h”q‹kœ1Ô÷ä�6‰6�!—)‘)˜q‘.Ô!Ð!Ñ!÷ð ús   ¸.BÂBc                  ó\  — d} t        j                  «       }t        j                  t        d¬«      5  |j                  | «       d d d «       t        j                  «       }t        j                  t        d¬«      5  |j                  | «       d d d «       y # 1 sw Y   ŒSxY w# 1 sw Y   y xY w)Nzfoo!z.*\bSVC\b.*\bnot\b.*\bfitted\br  z .*\bNuSVR\b.*\bnot\b.*\bfitted\b)r   r/   rr   rs   Ú	Exceptionr7   r   )r1   r9   s     r:   Útest_unfittedrº    s‚   € Ø€Aä
�'‰'‹)€CÜ	�‰”yÐ(IÔ	Jñ Ø�‰�AŒ÷ô �)‰)‹+€CÜ	�‰”yÐ(KÔ	Lñ Ø�‰�AŒ÷ð ÷	ð ú÷ð ús   ²BÁ;B"ÂBÂ"B+z-ignore::sklearn.exceptions.ConvergenceWarningc                  ó0  — t        j                  ddd¬«      } | j                  t        t        «      j                  t        «      }t        j                  ddd¬«      } | j                  t        t        «      j                  t        «      }t        ||«       y )NTr$   r   )rÜ   r™   r¤   )r   r/   r0   r1   r2   rß   r   )rµ  Úproba_1Úproba_2s      r:   Útest_consistent_probar¾    sd   € ä�‰˜D¨1¸1Ô=€AØ�e‰e”A”q‹k×'Ñ'¬Ó*€GÜ�‰˜D¨1¸1Ô=€AØ�e‰e”A”q‹k×'Ñ'¬Ó*€GÜ˜g wÕ/r<   c                  óh  — t        j                  dd¬«      } d}t        j                  t        |¬«      5  | j                  t        t        «       d d d «       t        | j                  t        «      sJ ‚| j                  dk(  sJ ‚t        j                  dd¬«      }t        j                  t        |¬«      5  |j                  t        j                  t        j                  «       d d d «       t        |j                  t        «      sJ ‚|j                  dk(  sJ ‚y # 1 sw Y   ŒÍxY w# 1 sw Y   ŒCxY w)Nr   r%   )r¤   r™   z@Liblinear failed to converge, increase the number of iterations.r  )r   r   rr   r³  r   r0   r1   r2   Ú
isinstancer´  rë   r   rK   rL   rM   )Úlsvcr¶  r‘   s      r:   Ú$test_linear_svm_convergence_warningsrÂ  (  sâ   € ô �=‰= a°!Ô4€DØT€KÜ	�‰Ô(°Ô	<ñ Ø�‰””AŒ÷ô �d—l‘l¤CÔ(Ð(Ð(Ø�<‰<˜1ÒÐÐä�=‰= a°!Ô4€DÜ	�‰Ô(°Ô	<ñ )Ø�‰”—‘œDŸK™KÔ(÷)ä�d—l‘l¤CÔ(Ð(Ð(Ø�<‰<˜1ÒÐÑ÷ð ú÷)ð )ús   µDÂ7/D(ÄD%Ä(D1c            	      ó  — t         j                  j                  d«      j                  dd«      } t         j                  j                  d«      j                  d«      }t	        j
                  d¬«      t	        j                  d¬«      t	        j                  «       fD ]h  }|j                  | |«       t        |j                  | «      t        j                  | |j                  j                  «       «      |j                  z   «       Œj y )Né   rœ   r&   é   r)   r*   )rN   rS  rT  rÄ   r   r   r   r   r0   r   r7   ri   r@   rÈ   r6   )r1   rm   r“   s      r:   Útest_svr_coef_signrÆ  ;  s»   € ô 	�	‰	×Ñ˜bÓ!×'Ñ'¨¨AÓ.€AÜ
�	‰	×Ñ˜bÓ!×'Ñ'¨Ó+€Aô 	�‰�xÔ Ü�	‰	˜Ô"Ü�‰‹ðò 
ˆð
 	�‰��1ŒÜ!Ø�K‰K˜‹NœBŸF™F 1 c§i¡i§o¡oÓ&7Ó8¸3¿>¹>ÑIõ	
ñ
r<   c                  ó†   — t        j                  d¬«      } | j                  t        t        «       | j
                  dk(  sJ ‚y )NF)rp  r.   )r   r   r0   r1   r2   r6   )rÁ  s    r:   Ú test_lsvc_intercept_scaling_zerorÈ  L  s1   € ô �=‰= uÔ-€DØ‡H�HŒQ”„NØ�?‰?˜cÒ!Ð!Ñ!r<   c                  óP  — t        j                  d¬«      } t        | d«      sJ ‚| j                  t        j
                  t        j                  «       t        | d«      sJ ‚t        j                  d¬«      } t        | d«      rJ ‚| j                  t        j
                  t        j                  «       t        | d«      rJ ‚d| _        t        | d«      sJ ‚d}t        j                  t        |¬«      5  | j                  t        j
                  «       d d d «       y # 1 sw Y   y xY w)NT)rÜ   rß   FzApredict_proba is not available when fitted with probability=Falser  )r   r/   rP   r0   rK   rL   rM   rÜ   rr   rs   r   rß   )ÚGrY  s     r:   Útest_hasattr_predict_probarË  T  sÝ   € ô 	�‰˜DÔ!€AÜ�1�oÔ&Ð&Ð&Ø‡E�EŒ$�)‰)”T—[‘[Ô!Ü�1�oÔ&Ð&Ð&ä�‰˜EÔ"€AÜ�q˜/Ô*Ð*Ð*Ø‡E�EŒ$�)‰)”T—[‘[Ô!Ü�q˜/Ô*Ð*Ð*ð €A„MÜ�1�oÔ&Ð&Ð&Ø
M€Cä	�‰”~¨SÔ	1ñ #Ø	�‰œŸ	™	Ô"÷#÷ #ñ #ús   Ã3 DÄD%c                  ó  — dD ]�  } t        | d¬«      \  }}t        j                  t        j                  fD ]L  }t	         |d¬«      «      j                  ||«      }t        |j                  |«      «      t        |«      k(  rŒLJ ‚ Œƒ y )N)r%   r&   r   )rö   r¤   ró   )ré   )r   r   r/   rÞ   r   r0   rx   r7   )rƒ  r1   rm   r  r9   s        r:   Ú&test_decision_function_shape_two_classrÍ  l  s}   € Øò 1ˆ	Ü )¸!Ô<‰ˆˆ1ÜŸ'™'¤3§9¡9Ð-ò 	1ˆIÜ%¡iÈÔ&NÓO×SÑSØ�1óˆCô �s—{‘{ 1“~Ó&¬#¨a«&Ó0Ð0Ð0ñ		1ñ1r<   c                  óÆ  — t        j                  ddgddgddgddgg«      } g d¢}t        j                  ddgddgg«      }t        j                  |ddgz  |ddgz  |ddgz  |ddgz  f«      }dgdz  dgdz  z   dgdz  z   dgdz  z   }t        j                  d	d
¬«      }|j                  | |«       |j                  |«      }t        ||«       |j                  |«      }t        t        j                  |d¬«      |«       |t        d«      |f   j                  d«      }t        j                  |«      dkD  sJ ‚t        j                  |d d …df   |d d …df   k  «      sJ ‚y )Nr$   r#   )r   r$   r%   r&   rH   rœ   r   r%   r&   r)   ró   rô   r�   rÝ   )r¾   r%   r.   )rN   rq   Úvstackr   r/   r0   r7   r   rÇ   râ   rw   ÚreshapeÚminrv  )	rÊ   rø   Úbase_pointsrË   rù   r9   r	  Údeci_valÚpred_class_deci_vals	            r:   Útest_ovr_decision_functionrÕ  v  s…  € ä�h‰h˜˜A˜  Q ¨"¨b¨°A°r°7Ð;Ó<€GÚ€Gô —(‘(˜Q ˜F R¨ HÐ-Ó.€Kô �Y‰Yà˜1˜a˜&Ñ Ø˜2˜q˜'Ñ!Ø˜2˜r˜(Ñ"Ø˜1˜b˜'Ñ!ð		
ó€Fð ˆS�1‰W˜�s˜Q‘wÑ !  q¡Ñ(¨A¨3°©7Ñ2€Fä
�'‰'˜¸5Ô
A€CØ‡G�GˆG�WÔà�[‰[˜Ó €Fô �v˜vÔ&à×$Ñ$ VÓ,€Hô ”r—y‘y °Ô2°FÔ;ð #¤5¨£8¨VÐ#3Ñ4×<Ñ<¸VÓDÐô �6‰6Ð%Ó&¨Ò,Ð,Ð,ô �6‰6Ð%¢a¨ dÑ+Ð.AÂ!ÀQÀ$Ñ.GÑGÔHÐHÑHr<   ÚSVCClassc                 óÞ   — t        d¬«      \  }} | dddd¬«      j                  ||«      }t        j                  t        d¬«      5   |j
                  |«       d d d «       y # 1 sw Y   y xY w)	Nr'   r÷   r)   rè   T)r+   ré   Ú
break_tiesr¤   zbreak_ties must be Falser  )r   r0   rr   rs   rt   r7   )rÖ  r1   rm   r   s       r:   Ú!test_svc_invalid_break_ties_paramrÙ  ¢  se   € ä 2Ô&�D€A€qá
Ø°À4ÐVXôç	�cˆ!ˆQƒið ô 
�‰”zÐ)CÔ	Dñ Øˆ�‰�AŒ÷÷ ñ ús   ÁA#Á#A,c                 óú  — | j                   dk(  rt        rt        j                  d«       t	        ddd¬«      \  }}t        j                  |dd…df   j                  «       |dd…df   j                  «       d«      }t        j                  |dd…d	f   j                  «       |dd…d	f   j                  «       d«      }t        j                  ||«      \  }}t        d
ddd¬«      } | dddi|¤Žj                  ||«      } |j                  t
        j                  |j                  «       |j                  «       f   «      }	 |j                  t
        j                  |j                  «       |j                  «       f   «      }
t        j                   |	t        j"                  |
d	¬«      k(  «      rJ ‚ | dddi|¤Žj                  ||«      } |j                  t
        j                  |j                  «       |j                  «       f   «      }	 |j                  t
        j                  |j                  «       |j                  «       f   «      }
t        j                   |	t        j"                  |
d	¬«      k(  «      sJ ‚y)zyTest if predict breaks ties in OVR mode.
    Related issue: https://github.com/scikit-learn/scikit-learn/issues/8277
    rÞ   zFailing test on 32bit OSr   r¼   r%   )r¤   r¡   r  Nr»   r$   r>   g    €„.Ar'   ró   )r+   rÃ   r¤   ré   rØ  Fr�   Tr®  )Ú__name__r   rr   Úxfailr   rN   ÚlinspacerÑ  rV  ÚmeshgridÚdictr0   r7   Úc_rÈ   rÇ   rv  râ   )rÖ  r1   rm   ÚxsÚysÚxxÚyyÚcommon_paramsr   ra   Údvs              r:   Útest_svc_ovr_tie_breakingrç  ®  s  € ð
 ×Ñ˜GÒ#­	ô
 	�‰Ð/Ô0ä 1°¸qÔA�D€A€qä	�‰�Q’q˜!�t‘W—[‘[“] A¢a¨ d¡G§K¡K£M°3Ó	7€BÜ	�‰�Q’q˜!�t‘W—[‘[“] A¢a¨ d¡G§K¡K£M°3Ó	7€BÜ�[‰[˜˜RÓ �F€BˆäØ˜C¨bÈ%ô€Mñ ñ Øðà
ñ÷ 
�cˆ!ˆQƒið ð ˆ3�;‰;”r—u‘u˜RŸX™X›Z¨¯©«Ð3Ñ4Ó5€DØ	ˆ×	Ñ	œrŸu™u R§X¡X£Z°·±³Ð%;Ñ<Ó	=€BÜ�v‰v�dœbŸi™i¨°Ô3Ñ3Ô4Ð4Ð4á
ñ Øðà
ñ÷ 
�cˆ!ˆQƒið ð ˆ3�;‰;”r—u‘u˜RŸX™X›Z¨¯©«Ð3Ñ4Ó5€DØ	ˆ×	Ñ	œrŸu™u R§X¡X£Z°·±³Ð%;Ñ<Ó	=€BÜ�6‰6�$œ"Ÿ)™) B¨QÔ/Ñ/Ô0Ð0Ñ0r<   c                  ó�   — dgdggddg}} t        j                  «       }|j                  | |«       t        |j                  d«       y )Nr.   r�   r   r$   r¾   )r   r/   r0   r   Ú_gammar°   s      r:   Útest_gamma_scalerê  Ô  s=   € ØˆE�C�5ˆ>˜A˜q˜6€q€Aä
�'‰'‹)€CØ‡G�GˆAˆq„MÜ˜Ÿ
™
 AÕ&r<   zSVM, params)rh  re  rk  Úepsilon_insensitive©re  rk  Úsquared_epsilon_insensitivec                 ót  — t        j                  ddgddgddgddgddgddgddgddgddgddgddgddgddgddgddgddggt        j                  d«      ¬«      }t        j                  g d¢t        j                  d«      ¬«      }t        j                  ||g«      }t        j                  |d|z
  g«      }t        j
                  t        |«      dz  ¬	«      }d
|t        |«      d  t        |||d
¬«      \  }}} | d¬«      } |j                  di |¤Ž |j                  dd¬«       t        j                  |«      j                  ||«      }t        j                  |«      j                  |||¬«      }	dD ]?  }
t        ||
«      sŒ t        ||
«      |«      } t        |	|
«      |«      }t        ||«       ŒA y )Nr$   r&   r%   r¾   Úfloat)r¶   )r$   r$   r$   r$   r%   r%   r%   r%   r$   r$   r$   r$   r%   r%   r%   r%   rë   )rá   r   r÷   r'   r—   r|  )r˜   r™   rš   )r7   rÇ   r®  )rN   rq   r¶   rÏ  Úhstackr‰   rx   r   r  r   r§  r0   rP   Úgetattrr   )rñ   Úparamsr1   rm   ÚX2Úy2r›   Úbase_estimatorÚest_no_weightÚest_with_weightÚmethodÚX_est_no_weightÚX_est_with_weights                r:   Ú&test_linearsvm_liblinear_sample_weightrû  Ü  sØ  € ô 	�‰à�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFØ�ˆFð!	
ô$ �h‰h�wÓô'	€Aô* 	�‰Ú8ÄÇÁÈÃô	€Aô 
�‰�A�q�6Ó	€BÜ	�‰�A�q˜1‘u�:Ó	€BÜ—G‘G¤# a£&¨1¡*Ô-€MØ€M”#�a“&�(ÐÜ# B¨¨MÈÔJÑ€BˆˆMá bÔ)€NØ€N×ÑÑ' Ò'Ø×Ñ %°$ÐÔ7Ü—J‘J˜~Ó.×2Ñ2°1°aÓ8€MÜ—j‘j Ó0×4Ñ4Ø
ˆB˜mð 5ó €Oð 3ò @ˆÜ�> 6Õ*Ø<œg m°VÓ<¸QÓ?ˆOØ @¤¨¸Ó @ÀÓ CÐÜ˜OÐ->Õ?ñ	@r<   ÚKlassc                 ó`  — t        j                  dgdgdgdgdgg«      }t        j                  |j                  d   «      } | «       }t	        |d«      rJ ‚|j                  ||«       |j                  d   |j                  j                  d   k(  sJ ‚|j                  j                  dk(  sJ ‚y )Nr   g)\�Âõ(Ü?gÍÌÌÌÌÌÜ?gq=
×£pÝ?r$   Ú
n_support_)	rN   rq   r>  rá   rP   r0   rþ  r5   rÁ   )rü  r1   rm   r!  s       r:   Útest_n_supportrÿ    s¡   € ô
 	�‰�1�#˜�v ˜v¨ v°¨sÐ3Ó4€AÜ
�	‰	�!—'‘'˜!‘*Ó€AÙ
‹'€CÜ�s˜LÔ)Ð)Ð)Ø‡G�GˆAˆq„MØ�>‰>˜!Ñ × 4Ñ 4× :Ñ :¸1Ñ =Ò=Ð=Ð=Ø�>‰>×Ñ !Ò#Ð#Ñ#r<   c                 ó2  — g d¢}t        j                  ddgddgddgddgddgg«      }t        j                  g d¢«      }d„ } |||«      }t        t        j                  ||j                  «      |«        | |¬«      j                  ||«      } | d¬«      j                  ||«      } | d	¬«      j                  ||«      }|j                  ||«      |j                  ||«      k(  sJ ‚|j                  ||«      |j                  ||«      k(  sJ ‚t        |d
«      r©t        |j                  |«      |j                  |«      «       t        |j                  |«      |j                  |«      «       t        |j                  |«      |j                  |«      «       t        |j                  |«      |j                  |«      «       yt        |j                  |«      |j                  |«      «       t        |j                  |«      |j                  |«      «       y)zETest using a custom kernel that is not fed with array-like for floats)zA AÚAÚBzB BzA Br%   r   r$   )r$   r$   r%   r%   r$   c           	      ó¬  — t        | d   t        «      sJ ‚t        | «      }t        |«      }t        j                  ||f«      }t        |«      D ]ƒ  }t        ||«      D ]r  }| |   j                  d«      ||   j                  d«      z  |||f<   |||fxx   | |   j                  d«      ||   j                  d«      z  z  cc<   |||f   |||f<   Œt Œ… |S )Nr   r  r  )rÀ  Ústrr!   rN   Úzerosrw   Úcount)ÚX1ró  Ú
n_samples1Ú
n_samples2ry   ÚiiÚjjs          r:   Ústring_kernelz9test_custom_kernel_not_array_input.<locals>.string_kernel,  sà   € Ü˜"˜Q™%¤Ô%Ð%Ð%Ü! "Ó%ˆ
Ü! "Ó%ˆ
Ü�H‰H�j *Ð-Ó.ˆÜ˜
Ó#ò 	&ˆBÜ˜B 
Ó+ò &�Ø˜r™FŸL™L¨Ó-°°2±·±¸SÓ0AÑA��"�b�&‘	Ø�"�b�&“	˜R ™VŸ\™\¨#Ó.°°B±·±¸cÓ1BÑBÑB“	Ø˜b "˜f™I��"�b�&’	ñ&ð	&ð
 ˆr<   r*   r)   re   rÇ   N)rN   rq   r   ri   rj   r0   rˆ   rP   r   rÇ   r7   )	r  rL   r1   rm   r  ry   Úsvc1Úsvc2Úsvc3s	            r:   Ú"test_custom_kernel_not_array_inputr  %  s³  € ò +€DÜ
�‰�1�a�&˜1˜a˜& 1 a &¨1¨a¨&°1°a°&Ð9Ó:€AÜ
�‰’Ó!€Aò
ñ 	�d˜DÓ!€AÜ”r—v‘v˜a §¡“~ qÔ)á˜MÔ*×.Ñ.¨t°QÓ7€DÙ˜HÔ%×)Ñ)¨!¨QÓ/€DÙ˜MÔ*×.Ñ.¨q°!Ó4€Dà�:‰:�d˜AÓ $§*¡*¨Q°Ó"2Ò2Ð2Ð2Ø�:‰:�d˜AÓ $§*¡*¨Q°Ó"2Ò2Ð2Ð2ÜˆtÐ(Ô)Ü˜×.Ñ.¨tÓ4°d×6LÑ6LÈQÓ6OÔPÜ˜×.Ñ.¨tÓ4°d×6LÑ6LÈQÓ6OÔPÜ˜4Ÿ<™<¨Ó-¨t¯|©|¸A«Ô?Ü˜4Ÿ<™<¨Ó-¨t¯|©|¸A«Õ?ä˜Ÿ™ TÓ*¨D¯L©L¸«OÔ<Ü˜Ÿ™ TÓ*¨D¯L©L¸«OÕ<r<   c                  ó  — t        j                  d¬«      j                  t        t        «      } d| j
                  d<   d}t        j                  t        |¬«      5  | j                  t        «       ddd«       y# 1 sw Y   yxY w)z¡Check that SVC raises error when internal representation is altered.

    Non-regression test for #18891 and https://nvd.nist.gov/vuln/detail/CVE-2020-28975
    r)   r*   i@B r   z.The internal representation of SVC was alteredr  N)
r   r/   r0   r1   r2   Ú
_n_supportrr   rs   rt   r7   )r9   rY  s     r:   Ú-test_svc_raises_error_internal_representationr  K  s`   € ô
 �'‰'˜Ô
"×
&Ñ
&¤q¬!Ó
,€CØ€C‡N�N�1Ñà
:€CÜ	�‰”z¨Ô	-ñ Ø�‰”AŒ÷÷ ñ ús   ÁA:Á:Bzestimator, expected_n_iter_typeÚdataset)rƒ  Ún_informativer¤   r¾   c                 ó,  — |\  }} | d¬«      j                  ||«      j                  }t        |«      |k(  sJ ‚| t        j                  t        j
                  fv r:t        t        j                  |«      «      }|j                  ||dz
  z  dz  fk(  sJ ‚y y )Nr)   r*   r$   r%   )
r0   r´  Útyper   r/   rÞ   rx   rN   r@  rá   )r  Úexpected_n_iter_typer  r1   rm   Ún_iterrƒ  s          r:   Útest_n_iter_libsvmr  X  sŒ   € ð0 �D€A€qÙ˜hÔ'×+Ñ+¨A¨qÓ1×9Ñ9€FÜ�‹<Ð/Ò/Ð/Ð/Ø”S—W‘WœcŸi™iÐ(Ñ(ÜœŸ	™	 !›Ó%ˆ	Ø�|‰| 	¨Y¸©]Ñ ;¸qÑ @ÐBÒBÐBÑBð )r<   c           	      óÈ   — t        d| ddt        j                  t        «      «      }|du sJ ‚t        d| ddt        j                  t        «      j                  «      }|du sJ ‚y )NÚautorj  ró   FT©r   rN   Úasarrayr1   rj   rì  s     r:   Útest_dual_autor  x  sT   € ô $ F¨D°$¸¼r¿z¹zÌ!»}ÓM€DØ�5‰=Ðˆ=ä# F¨D°$¸¼r¿z¹zÌ!»}¿¹ÓO€DØ�4‰<Ð‰<r<   c            	      ó   — t        ddddt        j                  t        «      «      } | du sJ ‚t        ddddt        j                  t        «      «      } | du sJ ‚t        ddddt        j                  t        «      j                  «      } | d	u sJ ‚y )
Nr  rf  rj  ró   Trë  rg  ri  Fr  )rk  s    r:   Útest_dual_auto_edge_casesr!  ‚  sƒ   € ä# F¨G°T¸5Ä"Ç*Á*ÌQÃ-ÓP€DØ�4‰<Ðˆ<Ü#ØÐ% t¨U´B·J±J¼q³Mó€Dð �4‰<Ðˆ<ä#Ø�  u¬b¯j©j¼«m¯o©oó€Dð �5‰=Ð‰=r<   zEstimator, make_datasetÚC_infÚinfc                 óÔ   —  ||¬«      \  }} | |¬«      j                  ||«      } | d¬«      j                  ||«      }t        |j                  |«      |j                  |«      «       y)zªCheck that we can pass `C=inf` that is equivalent to a very large C value.

    Non-regression test for
    https://github.com/scikit-learn/scikit-learn/issues/29772
    r÷   r†   g    _ BN)r0   r   r7   )r  Úmake_datasetr"  Úglobal_random_seedr1   rm   Úestimator_C_infÚestimator_C_larges           r:   Útest_svm_with_infinite_Cr)  ‘  sc   € ñ Ð%7Ô8�D€A€qÙ %Ô(×,Ñ,¨Q°Ó2€OÙ! DÔ)×-Ñ-¨a°Ó3ÐäÐ%×-Ñ-¨aÓ0°/×2IÑ2IÈ!Ó2LÕMr<   )ƒÚ__doc__ÚnumpyrN   rr   Únumpy.testingr   r   r   r   Úsklearnr   r   r	   r
   r   Úsklearn.datasetsr   r   r   Úsklearn.exceptionsr   r   Úsklearn.metricsr   Úsklearn.metrics.pairwiser   Úsklearn.model_selectionr   Úsklearn.multiclassr   Úsklearn.svmr   r   r   r   r   r   Úsklearn.svm._classesr   r<  r   r   Úsklearn.utils.fixesr   r   r    Úsklearn.utils.validationr!   r1   r2   rj   ru   Ú	load_irisrK   rW  ÚpermutationrM   rÁ   ÚpermrL   r;   rc   r~   r‹   r•   r¬   r±   r¸   rÑ   rÖ   rÚ   ræ   rð   ÚmarkÚparametrizer/   rÞ   rú   rý   r
  r  r  r  rx   r"  r'  r/  r4  rD  rQ  rZ  r\  ra  rd  rn  rr  rz  r�  r…  r‰  r�  r•  r›  r£  r«  r°  r·  rº  Úfilterwarningsr¾  rÂ  rÆ  rÈ  rË  rÍ  rÕ  rÙ  rç  rê  rû  rÿ  r  r  Úndarrayrë   r  r  r!  r#  rï  r)  r®  r<   r:   ú<module>r?     sš  ðñó Û ÷ó ÷ ?Õ >ß MÑ M÷õ %Ý /Ý 4Ý 2÷÷ õ :ß 5ß IÑ IÝ 1ð 	ˆ"€X��Bˆx˜"˜b˜ A q 6¨A¨q¨6°A°q°6Ð:€Ú€Øˆ"€X��1ˆv˜˜1�vÐ€Ú€ð €x×ÑÓ€Ù˜Ó€Ø
‡��t—{‘{×'Ñ'Ó(€Ø�I‰I�d‰O€„	Ø�k‰k˜$Ñ€„ò*òM$ò`FGòRDò(+ò&+òRòòNò<ò9ò
ò&EðB ‡�×Ñ˜ §¡¨#¯)©)Ð 4Ó5ñ+ó 6ð+ò4Cò,0ð. ‡�×Ñ˜ w s§w¡w°¤¸	¸¿	¹	»Ð&DÓEñó Fðð2 ‡�×Ñ˜ w s§w¡w°¤¸	¸¿	¹	ÀDÔ8IÐ&JÓKñó Lðò29ð ‡�×ÑØà	�‰ÐNÐOØ	�‰ÐLÐMØ	�‰ÐNÐOØ	�‰ÐPÐQØ	�‰ÐVÐWðò 	8ð ó 
ð ‡�×ÑØØ€S‰3ˆq‹6�\�D�6™C ›F‘?Ð#Ø	Ð3Ð4ð ó ñ
3óó
ð 3ð ‡�×ÑØð �G‰Gðð	
ð 
�‰Ð0Ð1ð	ð 
�Ðð ó ð ‡�×ÑØÚÒ4Ð5Ø	˜Ð(ð ó ñ
3óóð&3ð ‡�×ÑØà	�‰ ¨ ¸cÀ6¸]ÑKÐLØ	�‰ 6¨6Ð"2À6È6ÐBRÑSÐTðð 
�Ðð ó ð ‡�×ÑØÚ˜[Ð)Ò,>ÀÐ+MÐNØ	Ð!7Ð8ð ó ñ
>óóð>ð ‡�×ÑØ�#—'‘'˜3Ÿ9™9 c§i¡iÐ0Ò6Oð ó ð ‡�×ÑØÚÒ.Ð/Ø	Ð!7Ð8ð ó ñ
7óóð7ò!
ðH ‡�×Ñ˜¨.Ó9ñ#ó :ð#òLòð ‡�×Ñ˜¨.Ó9ñ%ó :ð%ð ‡�×Ñ˜¨.Ó9ñ*ó :ð*ð ‡�×Ñ˜ '¨?Ð!;Ó<Ø‡�×Ñ˜ T¨4 LÓ1Ø‡�×Ñ˜ $¨ Ó/ñó 0ó 2ó =ðò*)ò>Mò* CòFò"
5ð 8;·}±}ó "AòJ(ò*-ò òòBò
"ò	ð ‡�×ÑÐKÓLñ0ó Mð0òò&
ò""ò#ò01ò)IðX ‡�×Ñ˜ c§g¡g¨s¯y©yÐ%9Ó:ñó ;ðð ‡�×Ñ˜ c§g¡g¨s¯y©yÐ%9Ó:ñ"1ó ;ð"1òJ'ð ‡�×ÑØà	 ¨oÀuÑMÐNØ	 ¨oÀtÑLÐMØ	 ¨oÀuÑMÐNØ	 ¨g¸tÑDÐEØ	Ð2¸DÑAÐBØ	Ð:ÀDÑIÐJØ	Ð:ÀDÑIÐJðóñ,@óð,@ð^ ‡�×Ñ˜ ;°°UÐ";Ó<ñ
$ó =ð
$ð ‡�×Ñ˜ s§w¡w°·±Ð&8Ó9ñ"=ó :ð"=òJ
ð ‡�×ÑØ%à	�‰�"—*‘*ÐØ	�‰�B—J‘JÐØ	�‰�#ˆØ	�‰�CÐØ	�‰˜#Ððó	ð ‡�×ÑØá a°qÀqÔIÙ a°qÀqÔIÙ a°qÀqÔIðóñCóó	ð$Cð ‡�×Ñ˜ /Ð3PÐ!QÓRñó Sðòð ‡�×ÑØØ	‡g�gÐ"Ð# c§g¡g¨Ð%?Ð@óð ‡�×Ñ˜ 2§6¢6©5°«<Ð"8Ó9ñ
Nó :ó	ñ

Nr<   