
    Ki>                     (	   S SK rS SKrS SKJr  S SKJrJrJrJ	r	  S SK
JrJrJr  S SKJr  S SKJr  S SKJrJrJrJrJr  S SKJr  S S	KJrJrJr  \R<                  " S
S/SS/SS
/SS/SS/SS//5      r/ SQr \R<                  " SS/SS/SS//5      r!/ SQr"\R<                  " / SQ/ SQ/ SQ/ SQ/ SQ/5      r#/ SQr$\R<                  " / SQ/ SQ/ SQ/5      r%/ SQr&\RN                  " 5       r(\RR                  RU                  S 5      r+\+RY                  \(RZ                  R\                  5      r/\(R`                  \/   \(l0        \(RZ                  \/   \(l-        \" SSS S9u  r1r2S r3\Rh                  Rj                  \\Rh                  Rm                  S\\ \!/\#\$\%/\1SS \2SS \1SS /\(R`                  \(RZ                  \(R`                  //5      \Rh                  Rm                  S / S!Q5      \Rh                  Rm                  S"\\-   5      S# 5       5       5       5       5       r7\Rh                  Rm                  S$\5      S% 5       r8\Rh                  Rm                  S&\5      S' 5       r9\\Rh                  Rm                  S$\5      \Rh                  Rm                  S / S(Q5      S) 5       5       5       r:\Rh                  Rm                  S$\5      S* 5       r;\Rh                  Rm                  S&\5      S+ 5       r<\Rh                  Rm                  S,\=" \\5      5      S- 5       r>\Rh                  Rm                  S$\5      S. 5       r?\Rh                  Rm                  S$\5      S/ 5       r@\Rh                  Rm                  S&\5      S0 5       rAS1 rB\Rh                  Rm                  S\S\!/\#S\%/\1SS S\1SS /\(R`                  S\(R`                  //5      \Rh                  Rm                  S / S!Q5      \Rh                  Rm                  S"\\-   5      \S2 5       5       5       5       rC\Rh                  Rm                  S$\5      S3 5       rD\Rh                  Rm                  S&\5      S4 5       rE\Rh                  Rm                  S&\5      S5 5       rF\Rh                  Rj                  S6 5       rGg)7    N)sparse)basedatasetslinear_modelsvm)load_digits
make_blobsmake_classification)ConvergenceWarning)test_svm)assert_allcloseassert_array_almost_equalassert_array_equalignore_warningsskip_if_32bit)safe_sparse_dot)CSR_CONTAINERSDOK_CONTAINERSLIL_CONTAINERS      )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   r   r   )r   r   r   )r   r   r   )r   r   r   d   
   )	n_samplescentersrandom_statec                    [         R                  " U 5      nU R                  UR                  5       U5        [        R
                  " U5      (       a  UR                  5       nOUnUR                  X5        [        R
                  " UR                  5      (       d   e[        R
                  " UR                  5      (       d   e[        U R                  UR                  R                  5       5        [        U R                  UR                  R                  5       5        U R                  S:X  aU  [        R
                  " UR                  5      (       d   e[        U R                  UR                  R                  5       5        [        U R                  UR                  5        [        U R                  U5      UR                  U5      5        [        U R                  U5      UR                  U5      5        [        U R                  U5      UR                  U5      5        [        U [         R"                  5      (       a  SnO<[%        U S5      (       a)  [        U R'                  U5      UR'                  U5      SS9  Sn[        R
                  " U5      (       a4  [(        R*                  " [,        US9   U R                  U5        S S S 5        g g ! , (       d  f       g = f)Nlinearz>cannot use sparse input in 'OneClassSVM' trained on dense datapredict_proba   decimalz6cannot use sparse input in 'SVC' trained on dense datamatch)r   clonefittoarrayr   issparsesupport_vectors_
dual_coef_r   kernelcoef_r   support_predictdecision_function
isinstancer   OneClassSVMhasattrr"   pytestraises
ValueError)	dense_svmX_trainy_trainX_test
sparse_svmX_test_densemsgs          _/var/www/html/dynamic-report/venv/lib/python3.13/site-packages/sklearn/svm/tests/test_sparse.pycheck_svm_model_equalrA   4   s     I&JMM'//#W-v~~'NN7$??:667777??:001111I..
0K0K0S0S0UVI((**?*?*G*G*IJ8#z//0000!)//:3C3C3K3K3MNI&&
(;(;<I%%l3Z5G5G5OP##L1:3O3OPV3W ##L1$$\2 )S__--N9o..%''5((0
 Gv]]:S1f% 21 11s   5K
KzX_train, y_train, X_testP   r.   )r!   polyrbfsigmoidsparse_containerc                 \    U" U 5      n [         R                  " SUSSSS9n[        XPX5        g)z3Check that sparse SVC gives the same result as SVC.r   Tr   ovo)gammar.   probabilityr   decision_function_shapeN)r   SVCrA   r:   r;   r<   r.   rF   clfs         r@   test_svcrO   a   s7     w'G
'' %C #8    csr_containerc                   ^  [        SS9u  pT " USS 5      nUS S US S p![        SSS9nT " U5      n[        R                  " SSS	S
9R	                  X5      R
                  n[        R                  " SSS	S
9R	                  XR5      nUR
                  n[        XhR                  5       40 UD6  U 4S jn	U	" U5      n
U	" U5      nU
R                  (       a   eUR                  (       a   e[        R                  " SSS	S
9R	                  X5      nUR
                  n[        UR                  5       UR                  5       40 UD6  [        UR                  U5      UR                  U5      40 UD6  g )NT)
return_X_y2   r   g-q=g+=)rtolatolr!   r   )r.   rJ   r   c                 X  > / n/ n[        S[        U R                  5      5       Hf  n[        U R                  US-
  US-    6 nUR	                  U R
                  U   S S S2   5        UR	                  U R                  U   S S S2   5        Mh     T" XU R                  4U R                  S9$ )Nr   r   )shape)rangelenindptrsliceextenddataindicesrX   )Xnew_datanew_indicesi	row_slicerQ   s        r@   scramble_indices/test_unsorted_indices.<locals>.scramble_indices   s    q#ahh-(AqxxAA67IOOAFF9-dd34qyy3DbD9: ) hQXX>aggNNrP   )
r   dictr   rL   r)   r/   r   r*   has_sorted_indicesr"   )rQ   r`   yr<   tolsX_sparse
coef_dense
sparse_svccoef_sortedre   X_sparse_unsortedX_test_unsortedunsorted_svccoef_unsorteds   `             r@   test_unsorted_indicesrs   |   sl   
 $'DA1R9%FSb61Sb6qU'DQHxTBFFqLRR  dKOOJ ""KJ 3 3 5>>O )2&v.O 3333111177(1MQQL !&&MM))+[-@-@-BKdK  1  ( rP   lil_containerc                    S nU " [         5      n[        R                  " SS9R                  U[        5      n[        R                  " US9R                  U[        5      n[        UR                  U5      UR                  U5      5        g )Nc                 ,    [        XR                  5      $ N)r   Txri   s     r@   kfunc*test_svc_with_custom_kernel.<locals>.kfunc   s    q##&&rP   r!   r.   r`   r   rL   r)   Yr   r1   )rt   r{   X_spclf_lin	clf_mylins        r@   test_svc_with_custom_kernelr      sg    ' DggX&**43Gu%))$2Iwt,i.?.?.EFrP   )r!   rC   rD   c                    U " [         R                  5      n[        R                  " US9R	                  U[         R
                  5      n[        R                  " US9R	                  [         R                  [         R
                  5      n[        UR                  UR                  R                  5       5        [        UR                  UR                  R                  5       5        [        UR                  [         R                  5      UR                  U5      5        US:X  a/  [        UR                  UR                  R                  5       5        g g )Nr}   r!   )irisr^   r   rL   r)   targetr   r,   r*   r-   r1   r/   )rQ   r.   iris_data_spsp_clfrN   s        r@   test_svc_irisr      s    
 !+LWWF#''dkkBF
''
 
$
$TYY
<CC((&*A*A*I*I*KLCNNF$5$5$=$=$?@CKK		*FNN<,HI		6<<#7#7#9: rP   c                 b   U " [         R                  5      n[        R                  " SSSS9nUR	                  U[         R
                  5      n[        XR                  R                  5      UR                  -   n[        XCR                  U5      5        UR	                  [        [        5        [        R                  " [        UR                  R                  5      UR                  -   nUR!                  [        5      n[        UR#                  5       UR                  [        5      5        [        XSR$                  UR                  [        5      S:  R'                  [(        5      R#                  5          5        [        R*                  " / SQ5      n[-        UR                  [        5      USS9  g )	Nr!   皙?rH   )r.   CrK   r   )      gQr   gQ?      ?r   r   r$   )r   r^   r   rL   r)   r   r   r/   rx   
intercept_r   r2   r`   r   npdotr1   ravelclasses_astypeintarrayr   )rQ   r   svcrN   dec
predictionexpecteds          r@   test_sparse_decision_functionr      s    !+L
''S%
HC
'',
,C
,		
4s~~
ECC..|<= GGAqM
&&CIIKK
 3>>
1CQJCIIK!6!6q!9:LL#"7"7":Q">!F!Fs!K!Q!Q!ST xx;<Hc33A6!LrP   c                 T   [         R                  " 5       nU " [        5      n[        S S n[        R
                  " [        5         UR                  X#5        S S S 5        UR                  U[        5        [        UR                  [        5      [        5        g ! , (       d  f       NH= f)Nr   )r   rL   r`   r   r6   r7   r8   r)   r   r1   rx   true_result)rt   rN   r   Y2s       r@   
test_errorr      sl     '')CD	
3BB	z	" 
# GGD!s{{1~{3	 
#	"s   B
B'zlil_container, dok_containerc                    U " [         5      nU" [        5      n[        R                  " SS9R	                  [         [
        5      n[        R                  " SS9R	                  U[
        5      nUR                  (       d   e[        UR                  UR                  SS9  [        UR                  UR                  SS9  [        UR                  [         5      UR                  U5      5        UR	                  [        [        5        UR	                  U[        5        [        UR                  UR                  SS9  [        UR                  UR                  SS9  g )Nr   r   r#   r$   )r`   X2r   	LinearSVCr)   r   fit_interceptr   r/   r   r   r1   r   )rt   dok_containerr   X2_sprN   r   s         r@   test_linearsvcr      s    
 D"E
--Q
'
+
+Aq
1C]]*..tQ7FciiqAcnnf.?.?KCKKNFNN4$89GGBO
JJubciiqAcnnf.?.?KrP   c                 x   U " [         R                  5      n[        R                  " SS9R	                  U[         R
                  5      n[        R                  " SS9R	                  [         R                  [         R
                  5      nUR                  UR                  :X  d   e[        UR                  UR                  SS9  [        UR                  UR                  SS9  [        UR                  [         R                  5      UR                  U5      5        [        R                  " UR                  U5      SS9n[        XCR                  [         R                  5      5        UR                  5         [!        XCR                  U5      5        UR                  5         [!        XBR                  U5      5        g )Nr   r   r   r$   )axis)r   r^   r   r   r)   r   r   r   r/   r   r   r1   r   argmaxr2   sparsifyr   )rQ   r   r   rN   preds        r@   test_linearsvc_irisr     s!    !+L]]*..|T[[IF
--Q
'
+
+DIIt{{
CC 4 4444ciiqAcnnf.?.?KCKK		*FNN<,HI 99V--l;!DDD++dii01 LLNt[[67
OOt^^L9:rP   c                 x   [        SSSS/SS9u  pU " U5      n[        R                  " 5       [        R                  " SS9[        R
                  " 5       4 Ha  nUR                  SS0S	9  UR                  US S
 US S
 5        UR                  US
S  5      n[        R                  " XBS
S  :H  5      S:  a  Ma   e   g )N   r   g-?gK7A`?r   )r   
n_featuresweightsr   r      )class_weight      )r
   r   LogisticRegressionr   r   rL   
set_paramsr)   r1   r   sum)rQ   X_y_rN   y_preds        r@   test_weightr   '  s     !#u~AFB 
r	B'')1%	
 	QF+4C"Tc(#RX&vvf34()R///rP   c                 F   U " [         5      n[        R                  " 5       nUR                  U[        5        [        UR                  [         S   /5      S/5        S/S-  S/S-  -   nUR                  U[        US9  [        UR                  [         S   /5      S/5        g )Nr   r   r   r   r   )sample_weight       @r~   )rt   r   rN   r   s       r@   test_sample_weightsr   :  s     D
'')CGGD!s{{AaD6*SE2EAIq(MGGD!=G1s{{AaD6*SE2rP   c                  L    [         R                  " [        R                  5        g rw   )r   'test_dense_liblinear_intercept_handlingr   r    rP   r@   (test_sparse_liblinear_intercept_handlingr   H  s    44S]]CrP   c                 V    U" U 5      n [         R                  " SUS9n[        XPX5        g )Nr   )rI   r.   )r   r4   rA   rM   s         r@   test_sparse_oneclasssvmr   M  s(     w'G
//&
1C#8rP   c                    [         R                  " / SQ5      n[         R                  " / SQ[         R                  S9n[         R                  " S/S-  S/S-  -   S/S	-  -   S
/S-  -   [         R                  S9nU " XU45      n[         R                  " / SQ5      n[        R                  " SS9R                  UR                  5       U5      n[        R                  " SS9R                  UR                  5       U5      n[        UR                  UR                  R                  5       5        [        UR                  UR                  R                  5       5        g )N)g!FO?gJ:o?g[?g?)   r   #      )dtyper      r       r   &   r#   r   )Pr           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   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   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   int32r   rL   r)   r*   tocoor   r,   r-   )rQ   r^   r_   r[   r`   ri   rN   r   s           r@   test_sparse_realdatar   a  s	   
 88ABD hh~RXX6GXXqcAgb(A383qcAg=RXXNFtf-.A
Q	
S	Aj ''
"
&
&qyy{A
6CWWH%))!'')Q7Fs++V-D-D-L-L-NOs~~v'8'8'@'@'BCrP   c                    [         R                  " SS SSS9n[        R                  " U5      nU " [        5      nUR                  U[        5        UR                  U5      nUR                  U5        [         R                  " SS SSS9nUR                  [        [        5      R                  [        5      n[        Xd5        g )Nr   c                     XR                   -  $ rw   rx   ry   s     r@   <lambda><test_sparse_svc_clone_with_callable_kernel.<locals>.<lambda>  s
    SSrP   Tr   )r   r.   rJ   r   c                 B    [         R                  " XR                  5      $ rw   )r   r   rx   ry   s     r@   r   r     s    33rP   )
r   rL   r   r(   r`   r)   r   r1   r"   r   )rt   abr   r   r9   
pred_denses          r@   *test_sparse_svc_clone_with_callable_kernelr     s     	!0dQRSA

1ADEE$N99T?DOOD
/TPQI q!$,,Q/Jz(rP   c                     [         R                  " SS SSSS9nSn[        R                  " [        US9   UR                  U " [        5      [        5        S S S 5        g ! , (       d  f       g = f)Nr   c                     XR                   -  $ rw   r   ry   s     r@   r   test_timeout.<locals>.<lambda>  s
    SSrP   Tr   )r   r.   rJ   r   max_iterzoSolver terminated early \(max_iter=1\).  Consider pre-processing your data with StandardScaler or MinMaxScaler.r&   )r   rL   r6   warnsr   r)   r`   r   )rt   spwarning_msgs      r@   test_timeoutr     sW    	
(dUV
B	:  
(	<
}Q# 
=	<	<s   !A
A-c                     [         R                  " SSSS9n [        [        S9   U R	                  [
        [        5      R                  [
        5      nS S S 5        [         R                  " SSSS9n [        [        S9   U R	                  [
        [        5      R                  [
        5      nS S S 5        [        WW5        g ! , (       d  f       Nt= f! , (       d  f       N,= f)NTr   r   )rJ   r   r   )category)	r   rL   r   r   r)   r`   r   r"   r   )r   proba_1proba_2s      r@   test_consistent_probar     s    D11=A	"4	5%%1+++A. 
6D11=A	"4	5%%1+++A. 
6GW% 
6	5 
6	5s   .C =.C 
C
C)Hnumpyr   r6   scipyr   sklearnr   r   r   r   sklearn.datasetsr   r	   r
   sklearn.exceptionsr   sklearn.svm.testsr   sklearn.utils._testingr   r   r   r   r   sklearn.utils.extmathr   sklearn.utils.fixesr   r   r   r   r`   r   rx   r   r   r   T2true_result2	load_irisr   randomRandomStaterngpermutationr   sizepermr^   X_blobsy_blobsrA   markthread_unsafeparametrizerO   rs   r   r   r   r   zipr   r   r   r   r   r   r   r   r   r   r   rP   r@   <module>r     s      5 5 I I 1 &  2  HHr2hR2r(QFQFQFCDHHr2hAA'( XX XX|Y	23iiA
t{{''(IIdO	kk$RaH (&Z 	
Aq		R	"ws|WRS\2	DKK+	 #GH+^n-LM9 N I  9 .9. :.b .9G :G .9#<=; > : ; .9M :M6 .9
4 :
4 "C$GLL, .9; :;2 .90 :0$ .9
3 :
3D
 	
D!	T2	"tWRS\*	D$))$	 #GH+^n-LM9  N I9 .9gD :gDT .9) :)& .9	$ :	$ & &rP   