
    ^iA                         d Z ddlm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d
lmZ ddlmZ dedee   dej"                  fdZdeddfdZy)zTests for inference.    )TypeN)logit   )DMatrix)train   )validate_leaf_output)get_basescore)DevicedeviceDMatrixTreturnc                    d}d}d}d}d}t         j                  j                  d      }|j                  ||      }|j	                  d||      }	 |||	      }
t        ||dd	|
|
      }|j                  d| i        |t        j                  d|f            }|j                  |d      }|j                  d   dk(  sJ |j                  |
dd      }|j                  d   |k(  sJ |j                  d   |k(  sJ |j                  d   |k(  sJ |j                  d   |k(  sJ t        ||       t        j                  d      }|j                  |
dd|fd      }|d   }t        j                  |j                        ||z  |z  k(  sJ t        ddid|
      }|j                  d| i       |j                  |
d      j                  |fk(  sJ |S )z$Run tests for leaf index prediction.d         
   i  r   )lowhighsizehist)num_parallel_tree	num_classtree_method)num_boost_roundr   )shapeT)	pred_leaf)r   strict_shaper   r      )r   iteration_ranger   )r   .r   )r   dtrain)nprandomRandomStaterandnrandintr   	set_paramonespredictr   r	   int32prod)r   r   rowscolsclassesr   r   rngXymboosterempty
empty_leafleafn_itersslicedfirsts                     X/var/www/html/hubwallet-dev/venv/lib/python3.12/site-packages/xgboost/testing/predict.pyrun_predict_leafr;      s   DDGO
))


%C		$Ad3AAA!2 !	

 	
'G x()RWWAt9-.E$7JA!###??14?@D::a=D   ::a=O+++::a=G###::a=----01hhqkG__	G	  F 6NE775;;7->#>#HHHH ]F+QqIGx()??1?-33w>>>K    c                 R   ddl m} d} |d      \  }}t        |d| dt        ||      d	      }t        j
                  j                  t        |      |       |j                  t        ||            }t	        j                  |j                  t        |      t        j                  
      }t        |||      }t        dd| d|d	      }t        j
                  j                  t        |      d       |j                  |      }	t        j
                  j                  ||	       y)z/Test for the relation between score and margin.r   )make_classificationg      ?i  )random_statezbinary:logistic)
base_score	objectiver   r   )r!   r   )
fill_valuedtype)base_marging?N)sklearn.datasetsr>   r   r   r"   testingassert_allcloser
   r)   fullr   r   float32)
r   r>   	interceptr0   r1   r3   predt_0marginXypredt_1s
             r:   run_base_margin_vs_base_scorerO   F   s    4ID1DAq /@FSq!}G
 JJ}W5yAoogam,GWWQWWy)9LF	A6	*B):fMG
 JJ}W5s;oob!GJJw0r<   )__doc__typingr   numpyr"   scipy.specialr   corer   trainingr   sharedr	   updaterr
   utilsr   ndarrayr;   rO    r<   r:   <module>r[      sV          ( " 3V 3tG} 3 3l1& 1T 1r<   