
    &Vfy                         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	Z
dd
ZddZddZddZddZddZddZddZddZdS )    N)floatx)softmax)SeedGenerator)	draw_seed)make_default_seed              ?c                     |pt                      }t          |          }t          j                            |          }|                    | ||                              |          S )N)sizelocscale)r   r   nprandomdefault_rngnormalastype)shapemeanstddevdtypeseedrngs         [/var/www/html/software/conda/lib/python3.11/site-packages/keras/src/backend/numpy/random.pyr   r   
   sV    VXXET??D
)


%
%C::5d&:99@@GGG    c                     |pt                      }t          |          }t          j                            |          }|                    | ||                              |          S )N)r   lowhigh)r   r   r   r   r   uniformr   )r   minvalmaxvalr   r   r   s         r   r   r      sV    VXXET??D
)


%
%C;;EvF;;;BB5IIIr   int64c                 p   t          |          }t          j                            |          }g }| D ]]}t	          |          }t          j        |j        d                   }|                    |||          }	|                    |	           ^t          j	        |          
                    |          S )N)r   p)r   r   r   r   r   aranger   choiceappendarrayr   )
logitsnum_samplesr   r   r   outputlogits_instanceprobabilitiesclassessampless
             r   categoricalr0      s    T??D
)


%
%CF!  00)O1"566**W;-*HHg8F""5)))r   int32c                     t          |          }t          j                            |          }|                    ||| |          }|S )N)r   r   r   r   )r   r   r   r   integers)r   r   r    r   r   r   r+   s          r   randintr4   $   s@    T??D
)


%
%C\\f6U\KKFMr   c                    |pt                      }t          |          }t          j                            |          }|d|z  z
  }|d|z  z   }t          j        |           }t          j        d          }	|	j        d         |k     rQ|                    |||          }
|
|
|k    |
|k    z           }t          j	        |	|          }	|	j        d         |k     Q|	d |         
                    |                              |           S )N   r   )r   r   r   )r   r   r   r   r   prodemptyr   r   r'   r   reshape)r   r   r   r   r   r   lower_boundupper_bound
flat_shaperandom_numbersbatchvalids               r   truncated_normalr@   +   s   VXXET??D
)


%
%CV#KV#KJXa[[N 
q
!J
.
.

t6

CC u+0DEF >599 
q
!J
.
. +:+&--e44<<UCCCr   c                      j         }t          |          }d|z
  }| j        }n fdt          |          D             }t          j                            |          }|                    |          |k     }t	          j        | j                  }t	          j	        | |z  
                    |          t	          j                             S )Nr	   c                 8    g | ]\  }}||nj         |         S )N)r   ).0ininputss      r   
<listcomp>zdropout.<locals>.<listcomp>Q   s;     
 
 
1 AAFLO
 
 
r   )r   )r   r   r   	enumerater   r   r   r   broadcast_towherer   
zeros_like)rF   ratenoise_shaper   r   	keep_probr   masks   `       r   dropoutrP   E   s    LET??Dd
I l
 
 
 
!+..
 
 

 )


%
%C;;K;((94D?4..D8v	!))%00"-2G2G  r   c                     t          |          }t          j                            |          }|                    | |          S )N)axis)r   r   r   r   permuted)xrR   r   r   s       r   shufflerU   ^   s8    T??D
)


%
%C<<<%%%r   c                     |pt                      }t          |          }t          j                            |          }|                    |d|                               |          S )Nr	   )r   r   )r   r   r   r   r   gammar   )r   alphar   r   r   s        r   rW   rW   d   sV    VXXET??D
)


%
%C99U#E92299%@@@r   c                     |pt                      }t          |          }t          j                            |          }|                    |||                               |          }|S )N)rE   r$   r   )r   r   r   r   r   binomialr   )r   countsr-   r   r   r   samples          r   rZ   rZ   k   sZ    VXXET??D
)


%
%C\\Fm%\@@GGNNFMr   c                     |pt                      }t          |          }t          j                            |          }|                    |||                               |          }|S )N)abr   )r   r   r   r   r   betar   )r   rX   r`   r   r   r   r\   s          r   r`   r`   s   sZ    VXXET??D
)


%
%CXXEX2299%@@FMr   )r   r	   NN)r!   N)r1   N)NN)r   N)numpyr   keras.src.backend.configr   keras.src.backend.numpy.nnr   keras.src.random.seed_generatorr   r   r   r   r   r0   r4   r@   rP   rU   rW   rZ   r`    r   r   <module>rf      sM       + + + + + + . . . . . . 9 9 9 9 9 9 5 5 5 5 5 5 = = = = = =H H H HJ J J J	* 	* 	* 	*   D D D D4   2& & & &A A A A        r   