Ë
    ÷Q(hŠ  ã                   ó’   — d dl Zd dlZd dlmZ d dlmZ d dlmZ d dl	m
Z
 d„ Zej                  j                  dg d¢«      d	„ «       Zy)
é    N)Úfmin_ncg)ÚConvergenceWarning)Úassert_array_almost_equal)Ú
_newton_cgc            	      ó  ‡‡— t         j                  j                  d«      } | j                  d¬«      Št        j                  d«      }ˆfd„}ˆfd„Šˆfd„}ˆˆfd„}t        t        ||‰|d	¬
«      d   t        ||‰|¬«      «       y )Nr   )é
   r   )Úsizer   c                 óN   •— ‰j                  | «      }d|j                  |«      z  S ©Ng      à?)Údot)ÚxÚAxÚAs     €ú_/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sklearn/utils/tests/test_optimize.pyÚfuncztest_newton_cg.<locals>.func   s#   ø€ Ø�U‰U�1‹XˆØ�b—X‘X˜b“\Ñ!Ð!ó    c                 óX   •— ‰j                   j                  ‰j                  | «      «      S ©N©ÚTr   ©r   r   s    €r   Úgradztest_newton_cg.<locals>.grad   s   ø€ Ø�s‰s�w‰w�q—u‘u˜Q“xÓ Ð r   c                 ó’   •— |j                  ‰j                  j                  ‰j                  | j                  «       «      «      «      S r   )r   r   Úall)r   Úpr   s     €r   Úhessztest_newton_cg.<locals>.hess   s-   ø€ Ø�u‰u�Q—S‘S—W‘W˜QŸU™U 1§5¡5£7›^Ó,Ó-Ð-r   c                 ó   •—  ‰| «      ˆfd„fS )Nc                 óX   •— ‰j                   j                  ‰j                  | «      «      S r   r   r   s    €r   ú<lambda>z3test_newton_cg.<locals>.grad_hess.<locals>.<lambda>   s   ø€  !§#¡#§'¡'¨!¯%©%°«(Ó"3€ r   © )r   r   r   s    €€r   Ú	grad_hessz!test_newton_cg.<locals>.grad_hess   s   ø€ Ù�A‹wÓ3Ð3Ð3r   g»½×Ùß|Û=)Útol)ÚfÚx0ÚfprimeÚfhess_p)ÚnpÚrandomÚRandomStateÚnormalÚonesr   r   r   )Úrngr$   r   r   r!   r   r   s        @@r   Útest_newton_cgr-   
   sw   ù€ ô �)‰)×
Ñ
 Ó
"€CØ�
‰
˜ˆ
Ó!€AÜ	�‰�‹€Bô"ô!ô.õ4ô Ü�9˜d D¨"°%Ô8¸Ñ;Ü�4˜B t°TÔ:õr   Úverbose)r   é   é   c           
      ó^  ‡‡— t        j                  d«      Št        j                  ddgt        ¬«      Št	        ˆˆfd„ˆˆfd„ˆˆfd„t        j
                  ‰j                  d   «      |¬«       | j                  «       }|dk(  r|j                  d	k(  sJ ‚g d
¢}|D ]  }||j                  v rŒJ ‚ |dk\  rg d¢}|D ]  }||j                  v rŒJ ‚ |dk\  �r¤t        j                  ddgddgg«      dz  Št        j                  ddg«      Št        j                  t        «      5  t	        ˆˆfd„ˆˆfd„ˆˆfd„t        j                  ddg«      |¬«       ddd«       | j                  «       }g d¢}|D ]  }||j                  v rŒJ ‚ t        j                  ddgddgg«      Št        j                  ddg«      Št        j                  t        «      5  t	        ˆˆfd„ˆˆfd„ˆˆfd„‰|d¬«       ddd«       | j                  «       }dg}|D ]  }||j                  v rŒJ ‚ t        j                  d«      Št        j                  ddg«      Št        j                  t        «      5  t	        ˆˆfd„ˆˆfd„ˆˆfd„t        j                  ddg«      |d¬«       ddd«       | j                  «       }d g}|D ]  }||j                  v rŒJ ‚ t        j                  g d!¢«      Št        j                  g d"¢«      Št        j                  t        «      5  t	        ˆˆfd#„ˆˆfd$„ˆˆfd%„t        j                  ‰«      |dd¬&«       ddd«       | j                  «       }d'g}|D ]  }||j                  v rŒJ ‚ yy# 1 sw Y   �Œ'xY w# 1 sw Y   �Œ˜xY w# 1 sw Y   ŒúxY w# 1 sw Y   Œ[xY w)(z0Test the std output of verbose newton_cg solver.r0   r/   )Údtypec                 ó   •— ‰| z  ‰z
  ˆfd„fS )Nc                 ó   •— ‰| z  S r   r    ©Úzr   s    €r   r   z<test_newton_cg_verbosity.<locals>.<lambda>.<locals>.<lambda>+   s   ø€ °!°a±%€ r   r    ©r   r   Úbs    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>+   s   ø€ ˜Q ™U Q™Y«Ð8€ r   c                 ó&   •— d| z  ‰z  | z  ‰| z  z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>,   s   ø€ �s˜Q‘w ‘{ Q‘¨¨Q©Ñ.€ r   c                 ó   •— ‰| z  ‰z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>-   s   ø€ �q˜1‘u˜q‘y€ r   r   )r!   r   r   r$   r.   Ú )zNewton-CG iter = 1zCheck Convergencezmax |gradient|zSolver did converge at loss = )z(Inner CG solver iteration 1 stopped withzsum(|residuals|) <= tolzLine Searchztry line search wolfe1z!wolfe1 line search was successfulg      ð?é   gêŒ 9Y>)Fç       @c                 ó   •— ‰| z  ‰z
  ˆfd„fS )Nc                 ó   •— ‰| z  S r   r    r5   s    €r   r   z<test_newton_cg_verbosity.<locals>.<lambda>.<locals>.<lambda>S   ó   ø€ ¸!¸a¹%€ r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>S   ó   ø€  Q¨¡U¨Q¡Y³Ð$@€ r   c                 ó&   •— d| z  ‰z  | z  ‰| z  z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>T   ó   ø€ ˜s Q™w¨™{¨Q™°°Q±Ñ6€ r   c                 ó   •— ‰| z  ‰z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>U   ó   ø€ ˜q 1™u q™y€ r   ç       ÀN)z%wolfe1 line search was not successfulz-check loss |improvement| <= eps * |loss_old|:z,check sum(|gradient|) < sum(|gradient_old|):z#last resort: try line search wolfe2g      @c                 ó   •— ‰| z  ‰z
  ˆfd„fS )Nc                 ó   •— ‰| z  S r   r    r5   s    €r   r   z<test_newton_cg_verbosity.<locals>.<lambda>.<locals>.<lambda>i   r@   r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>i   rA   r   c                 ó&   •— d| z  ‰z  | z  ‰| z  z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>j   rC   r   c                 ó   •— ‰| z  ‰z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>k   rE   r   )r!   r   r   r$   r.   Úmaxiterztiny_|p| = eps * ||p||^2c                 ó   •— ‰| z  ‰z
  ˆfd„fS )Nc                 ó   •— ‰ | z  S r   r    r5   s    €r   r   z<test_newton_cg_verbosity.<locals>.<lambda>.<locals>.<lambda>   s   ø€ ¸1¸"¸q¹&€ r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>   s   ø€  Q¨¡U¨Q¡YÓ0@Ð$A€ r   c                 ó&   •— d| z  ‰z  | z  ‰| z  z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>€   rC   r   c                 ó   •— ‰| z  ‰z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>�   rE   r   é   z9Inner CG solver iteration 0 fell back to steepest descent)gü©ñÒMbP?r/   g     @�@)rF   r/   r=   c                 ó   •— ‰| z  ‰z
  ˆfd„fS )Nc                 ó   •— ‰| z  S r   r    r5   s    €r   r   z<test_newton_cg_verbosity.<locals>.<lambda>.<locals>.<lambda>‘   r@   r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>‘   rA   r   c                 ó&   •— d| z  ‰z  | z  ‰| z  z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>’   rC   r   c                 ó   •— ‰| z  ‰z
  S r   r    r7   s    €€r   r   z*test_newton_cg_verbosity.<locals>.<lambda>“   rE   r   )r!   r   r   r$   r.   rK   Úmaxinnerz*Inner CG solver stopped reaching maxiter=1)r'   ÚeyeÚarrayÚfloatr   ÚzerosÚshapeÚ
readouterrÚoutÚpytestÚwarnsÚRuntimeWarningr   ÚdiagÚ	ones_like)Úcapsysr.   ÚcapturedÚmsgÚmr   r8   s        @@r   Útest_newton_cg_verbosityrf   $   sˆ  ù€ ô 	�‰ˆq‹	€AÜ
�‰�!�Q�œuÔ%€AäÜ8Ü.Ü Ü�8‰8�A—G‘G˜A‘JÓØõð × Ñ Ó"€Hà�!‚|Ø�|‰|˜rÒ!Ð!Ð!ò
ˆð ò 	%ˆAØ˜Ÿ™Ò$Ð$Ð$ð	%ð �!‚|ò
ˆð ò 	%ˆAØ˜Ÿ™Ò$Ð$Ð$ð	%ð �!ƒ|ô �H‰H�s˜A�h  A Ð'Ó(¨4Ñ/ˆÜ�H‰H�c˜3�ZÓ ˆô �\‰\œ.Ó)ñ 	ÜÜ@Ü6Ü(Ü—8‘8˜T 1˜IÓ&Øõ÷	ð ×$Ñ$Ó&ˆò
ˆð ò 	%ˆAØ˜Ÿ™Ò$Ð$Ð$ð	%ô
 �H‰H�s˜A�h  I Ð/Ó0ˆÜ�H‰H�d˜A�YÓˆÜ�\‰\Ô,Ó-ñ 	ÜÜ@Ü6Ü(ØØØõ÷	ð ×$Ñ$Ó&ˆà&ð
ˆð ò 	%ˆAØ˜Ÿ™Ò$Ð$Ð$ð	%ô �F‰F�1‹IˆÜ�H‰H�d˜A�YÓˆÜ�\‰\œ.Ó)ñ 		ÜäAÜ6Ü(Ü—8‘8˜S #˜JÓ'ØØõ÷		ð ×$Ñ$Ó&ˆàGð
ˆð ò 	%ˆAØ˜Ÿ™Ò$Ð$Ð$ð	%ô �G‰G’NÓ#ˆÜ�H‰H’^Ó$ˆÜ�\‰\Ô,Ó-ñ 		ÜÜ@Ü6Ü(Ü—<‘< “?ØØØõ÷		ð ×$Ñ$Ó&ˆà8ð
ˆð ò 	%ˆAØ˜Ÿ™Ò$Ð$Ð$ñ	%ðg ÷	ñ 	ú÷,	ñ 	ú÷*		ð 		ú÷&		ð 		ús0   Ä&2M=ÇN
É+3NÌ2N#Í=NÎ
NÎN Î#N,)Únumpyr'   r]   Úscipy.optimizer   Úsklearn.exceptionsr   Úsklearn.utils._testingr   Úsklearn.utils.optimizer   r-   ÚmarkÚparametrizerf   r    r   r   ú<module>rn      sC   ðÛ Û Ý #å 1Ý <Ý -òð4 ‡�×Ñ˜¢IÓ.ñy%ó /ñy%r   