o
    i e                     @   s  d Z ddlm  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dlmZ ddlmZ dd	lmZ dd
lmZ ejjjddd Zejjjddd Zejjjddd Zejjjddd Zejjjddd Z eeee gZ!ejjjddd Z"ejjjddd Z#ejjjddd Z$ejjjddd Z%ejjjddd Z&ejjjd d!d Z'ejjjd"d#d Z(ejjjd$d%d Z)ejjjd&d'd Z*e)e#gZ+e!e+ Z,d(d) Z-d*d+ Z.d,d- Z/dS ).z?Strategy and optimizer combinations for combinations.combine().    N)adam)adadelta)adagrad)adamax)ftrl)gradient_descent)nadam)rmspropGradientDescentV1c                   C      t jjjdS NMbP?)tfcompatv1trainGradientDescentOptimizer r   r   Z/var/www/myenv/lib/python3.10/site-packages/keras/src/distribute/optimizer_combinations.py<lambda>"       r   	AdagradV1c                   C   r   r   )r   r   r   r   AdagradOptimizerr   r   r   r   r   &   r   AdamV1c                   C   s   t jjjjdddS )Nr      epsilon)r   r   r   r   AdamOptimizerr   r   r   r   r   )   s    FtrlV1c                   C   r   r   )r   r   r   r   FtrlOptimizerr   r   r   r   r   ,   r   	RmsPropV1c                   C   r   r   )r   r   r   r   RMSPropOptimizerr   r   r   r   r   /   r   AdadeltaKerasV2c                   C   
   t dS r   )adadelta_keras_v2Adadeltar   r   r   r   r   ;      
 AdagradKerasV2c                   C   r#   r   )adagrad_keras_v2Adagradr   r   r   r   r   >   r&   AdamKerasV2c                   C      t jdddS Nr   g      ?r   )adam_keras_v2Adamr   r   r   r   r   A       AdamExperimentalc                   C   r#   r   )adam_experimentalr.   r   r   r   r   r   D   r&   AdamaxKerasV2c                   C   r+   r,   )adamax_keras_v2Adamaxr   r   r   r   r   G   r/   NadamKerasV2c                   C   r+   r,   )nadam_keras_v2Nadamr   r   r   r   r   J   r/   FtrlKerasV2c                   C   r#   r   )ftrl_keras_v2Ftrlr   r   r   r   r   M   r&   GradientDescentKerasV2c                   C   r#   r   )gradient_descent_keras_v2SGDr   r   r   r   r   Q   r&   RmsPropKerasV2c                   C   r#   r   )rmsprop_keras_v2RMSpropr   r   r   r   r   U   r&   c                   C   <   t jjjjt jjjjt jjjjt jjjjt jjjj	gt
dS zKA common set of combination with DistributionStrategies and
    Optimizers.)distributionoptimizer_fn)r   __internal__testcombinationscombine
distributeone_device_strategy"mirrored_strategy_with_gpu_and_cpumirrored_strategy_with_two_gpus-mirrored_strategy_with_two_gpus_no_merge_calloptimizers_v1r   r   r   r   distributions_and_v1_optimizersa      




rO   c                   C   rA   rB   )r   rE   rF   rG   rH   rI   rJ   rK   rL   rM   optimizers_v2r   r   r   r   distributions_and_v2_optimizerso   rP   rR   c                   C   rA   rB   )r   rE   rF   rG   rH   rI   rJ   rK   rL   rM   optimizers_v1_and_v2r   r   r   r   &distributions_and_v1_and_v2_optimizers}   rP   rT   )0__doc__tensorflow.compat.v2r   v2r   keras.src.optimizersr   r1   keras.src.optimizers.legacyr   r$   r   r(   r-   r   r3   r   r9   r   r<   r   r6   r	   r?   rE   rF   rG   NamedObject gradient_descent_optimizer_v1_fnadagrad_optimizer_v1_fnadam_optimizer_v1_fnftrl_optimizer_v1_fnrmsprop_optimizer_v1_fnrN   adadelta_optimizer_keras_v2_fnadagrad_optimizer_keras_v2_fnadam_optimizer_keras_v2_fnadam_experimental_fnadamax_optimizer_keras_v2_fnnadam_optimizer_keras_v2_fnftrl_optimizer_keras_v2_fn&gradient_descent_optimizer_keras_v2_fnrmsprop_optimizer_keras_v2_fnrQ   rS   rO   rR   rT   r   r   r   r   <module>   s   













