
    -i"#                     |   S SK rS SKrS SKJr  S SKJr  S SKJrJ	r	  S SK
Jr  S SKJrJrJr  S SKJr  \" 5       r\" S5      r\R(                  " \R*                  R,                  S    5      r\R1                  \5        \R*                  \   r\R4                  \   r " S	 S
\5      r\R:                  R=                  SSS/5      \R:                  R=                  SSS/5      \R:                  R=                  SS/\Q5      S 5       5       5       r\R:                  R=                  SSS/5      \R:                  R=                  SS/\Q5      S 5       5       r S r!\R:                  R=                  SS/\Q5      \R:                  R=                  SS5      S 5       5       r"\R:                  R=                  S/ SQ5      S 5       r#S r$S r%S r&S r'\R:                  R=                  SSS/5      \R:                  R=                  SSS/5      \R:                  R=                  SS/\Q5      S 5       5       5       r(\R:                  R=                  SSS/5      \R:                  R=                  SS/\Q5      S 5       5       r)\R:                  R=                  SS/\Q5      \R:                  R=                  SS5      S  5       5       r*S! r+g)"    N)ClassifierMixin)	load_iris)PassiveAggressiveClassifierPassiveAggressiveRegressor)check_random_state)assert_almost_equalassert_array_almost_equalassert_array_equal)CSR_CONTAINERS   c                   6    \ rS rSr      SS jrS rS rSrg)MyPassiveAggressive   Nc                 @    Xl         X l        X0l        X@l        XPl        g N)Cepsilonlossfit_interceptn_iter)selfr   r   r   r   r   random_states          e/var/www/html/venv/lib/python3.13/site-packages/sklearn/linear_model/tests/test_passive_aggressive.py__init__MyPassiveAggressive.__init__   s     	*    c           	      ~   UR                   u  p4[        R                  " U[        R                  S9U l        SU l        [        U R                  5       GHf  n[        U5       GHR  nU R                  X   5      nU R                  S;   a  [        SX&   U-  -
  S5      nO2[        [        R                  " XrU   -
  5      U R                  -
  S5      n[        R                  " X   X   5      n	U R                  S;   a  [        U R                  X-  5      n
O'U R                  S;   a  XSS	U R                  -  -  -   -  n
U R                  S;   a  W
X&   -  n
OW
[        R                   " X&   U-
  5      -  n
U =R                  XU   -  -  sl        U R"                  (       d  GM=  U =R
                  U
-  sl        GMU     GMi     g )
N)dtype        hingesquared_hinge   r   )r!   epsilon_insensitive)r"   squared_epsilon_insensitive      ?   )shapenpzerosfloat64wbranger   projectr   maxabsr   dotminr   signr   )r   Xy	n_samples
n_featurestipr   sqnormsteps              r   fitMyPassiveAggressive.fit'   s^    !	*BJJ7t{{#A9%LL&99 ::q14!8|Q/DrvvaA$h/$,,>BDad+99 @@tvvt}5DYY"RRC1tvv:,>#>?D99 ::ADLDBGGAD1H--D$1+%%%%FFdNFF+ & $r   c                 \    [         R                  " XR                  5      U R                  -   $ r   )r)   r2   r,   r-   )r   r5   s     r   r/   MyPassiveAggressive.projectD   s    vva 466))r   )r   r-   r   r   r   r   r,   )r&   g{Gz?r!   Tr#   N)__name__
__module____qualname____firstlineno__r   r>   r/   __static_attributes__ r   r   r   r      s%     #:*r   r   averageFTr   csr_containerc           	      Z   U b  U " [         5      O[         n[        SSUSUS S9nUR                  U[        5        UR	                  U[        5      nUS:  d   eU(       aM  [        US5      (       d   e[        US5      (       d   e[        US5      (       d   e[        US	5      (       d   eg g )
Nr&      r#   )r   max_iterr   r   rH   tolHzG?_average_coef_average_intercept_standard_intercept_standard_coef)r5   r   r>   r6   scorehasattr)rI   r   rH   dataclfrS   s         r   test_classifier_accuracyrW   H   s      -8=aD
%
#C GGD!IIdAE4<<sO,,,,s01111s12222s,----	 r   c                    [         R                  " [        5      nU b  U " [        5      O[        n[	        SUSS9n[        S5       H  nUR                  U[        U5        M     UR                  U[        5      nUS:  d   eU(       aM  [        US5      (       d   e[        US5      (       d   e[        US5      (       d   e[        US	5      (       d   eg g )
Nr      r   rH   rL   rK   rN   rO   rP   rQ   rR   )	r)   uniquer6   r5   r   r.   partial_fitrS   rT   )rI   rH   classesrU   rV   r9   rS   s          r   test_classifier_partial_fitr^   _   s     iilG,8=aD
%1gPQ
RC2Ya) IIdAE4<<sO,,,,s01111s12222s,----	 r   c                  R   [        SS9R                  [        [        5      n [	        U R
                  [        R                  " [        5      5        U R                  [        S S 2S S24   [        R                  [           5        [	        U R
                  [        R                  5        g )NrY   rL   )
r   r>   r5   r6   r
   classes_r)   r[   iristarget_namesrV   s    r   test_classifier_refitrf   p   sh    
%q
1
5
5a
;Cs||RYYq\2GGAa"fIt((+,s||T%6%67r   r   r    c                 B   [         R                  5       nSU[         S:g  '   [        U SS9nUR                  [        U5        Ub  U" [        5      O[        n[        U SSS S9nUR                  XB5        [        UR                  UR                  R                  5       SS9  g )Nra   r#   r'   r   r   F)r   rL   shufflerM   decimal)
r6   copyr   r>   r5   r   r	   r,   coef_ravel)r   rI   y_binclf1rU   clf2s         r   test_classifier_correctnessrr   y   s     FFHEE!q&MD3DHHQ,8=aD&D1eQUVDHHTdffdjj&6&6&8!Dr   response_method)predict_probapredict_log_proba	transformc                     [        SS9n[        R                  " [        5         [	        X5        S S S 5        g ! , (       d  f       g = fNd   r`   )r   pytestraisesAttributeErrorgetattr)rs   rV   s     r   !test_classifier_undefined_methodsr~      s.     &s
3C	~	&% 
'	&	&s	   9
Ac                     [         R                  " SS/SS/SS/SS/SS//5      n / SQn[        SSS SS	9nUR                  X5        [	        UR                  S
S//5      [         R                  " S/5      5        [        SSSS0SS	9nUR                  X5        [	        UR                  S
S//5      [         R                  " S/5      5        g )N      r   皙r&   r   r#   r#   r#   ra   ra   皙?ry   )r   rL   class_weightr   g?r#   gMbP?ra   )r)   arrayr   r>   r
   predictX2y2rV   s      r   test_class_weightsr      s    	D$<$T4L3*sCjQ	RB	B
%
$SC GGBOs{{S$K=1288QC=A &
1e*3C GGBO s{{S$K=1288RD>Br   c                      [        SSS9n [        R                  " [        5         U R	                  [
        [        [        R                  " [        5      S9  S S S 5        g ! , (       d  f       g = f)Nbalancedry   r   rL   )r]   )	r   rz   r{   
ValueErrorr\   r5   r6   r)   r[   re   s    r   &test_partial_fit_weight_class_balancedr      s@    
%:
LC	z	"1biil3 
#	"	"s   2A  
A.c                  R   SS/SS/SS/SS//n / SQn[        SS S S9nUR                  X5        [        SS SS9nUR                  X5        [        SS SSS.S9nUR                  X5        [        UR                  UR                  S	S
9  [        UR                  UR                  S	S
9  g )Nr#   r   )r   r   r#   r#   r   )r   rM   r   r         ?)r   r#   r'   rj   )r   r>   r   rm   )r   r   rV   clf_balancedclf_weighteds        r   test_equal_class_weightr      s    a&1a&1a&1a&	)B	B
%D
ICGGBO /$ZXLR.
4##&6L R 		<#5#5qA		<#5#5qAr   c                      [         R                  " SS/SS/SS/SS/SS//5      n / SQn[        SS0SS	9n[        R                  " [
        5         UR                  X5        S S S 5        g ! , (       d  f       g = f)
Nr   r   r   r&   r   r   r   ry   r   )r)   r   r   rz   r{   r   r>   r   s      r   test_wrong_class_weight_labelr      sg    	D$<$T4L3*sCjQ	RB	B
%As8c
JC	z	" 
#	"	"s   A++
A9c                    [         R                  5       nSU[         S:g  '   U b  U " [        5      O[        n[        SUSUSS9nUR	                  XC5        UR                  U5      n[        R                  " Xc-
  S-  5      S:  d   eU(       aM  [        US	5      (       d   e[        US
5      (       d   e[        US5      (       d   e[        US5      (       d   eg g )Nra   r#   r&   r   rY   )r   r   r   rH   rL   r'   333333?rO   rP   rQ   rR   )	r6   rl   r5   r   r>   r   r)   meanrT   )rI   r   rH   ro   rU   regpreds          r   test_regressor_mser      s     FFHEE!q&M,8=aD
$
#C GGD;;tD77DLQ&'#---sO,,,,s01111s12222s,----	 r   c                    [         R                  5       nSU[         S:g  '   U b  U " [        5      O[        n[        SUSS9n[	        S5       H  nUR                  X25        M     UR                  U5      n[        R                  " Xb-
  S-  5      S:  d   eU(       aM  [        US	5      (       d   e[        US
5      (       d   e[        US5      (       d   e[        US5      (       d   eg g )Nra   r#   r   ry   rZ   2   r'   r   rO   rP   rQ   rR   )
r6   rl   r5   r   r.   r\   r   r)   r   rT   )rI   rH   ro   rU   r   r9   r   s          r   test_regressor_partial_fitr      s     FFHEE!q&M,8=aD
$!Ws
SC2Y$ ;;tD77DLQ&'#---sO,,,,s01111s12222s,----	 r   )r$   r%   c                 B   [         R                  5       nSU[         S:g  '   [        U SS9nUR                  [        U5        Ub  U" [        5      O[        n[        S U SSS9nUR                  XB5        [        UR                  UR                  R                  5       SS9  g )Nra   r#   r'   rh   F)rM   r   rL   ri   rj   )
r6   rl   r   r>   r5   r   r	   r,   rm   rn   )r   rI   ro   reg1rU   reg2s         r   test_regressor_correctnessr      s     FFHEE!q&MD3DHHQ,8=aD%$TAuUDHHTdffdjj&6&6&8!Dr   c                      [        SS9n [        R                  " [        5         U R	                  [
        5        S S S 5        g ! , (       d  f       g = frx   )r   rz   r{   r|   rv   r5   )r   s    r    test_regressor_undefined_methodsr   	  s0    
$c
2C	~	&a 
'	&	&s   A
A),numpyr)   rz   sklearn.baser   sklearn.datasetsr   sklearn.linear_modelr   r   sklearn.utilsr   sklearn.utils._testingr   r	   r
   sklearn.utils.fixesr   rc   r   arangerU   r(   indicesri   r5   targetr6   r   markparametrizerW   r^   rf   rr   r~   r   r   r   r   r   r   r   r   rG   r   r   <module>r      s     ( & X , 
 /{!"%
))DIIOOA&
'   W IIgKK.*/ .*b UDM24-84*A.*AB. C 9 3.( UDM24*A.*AB. C 3.8 4*A.*AB!;<E = CE J&&C,4B( UDM24-84*A.*AB. C 9 3., UDM24*A.*AB. C 3." 4*A.*AB!WXE Y CEr   