a
    +=ic                     @   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)rmspropZGradientDescentV1c                   C   s   t jjjdS NMbP?)tfcompatv1trainZGradientDescentOptimizer r   r   x/home/droni/.local/share/virtualenvs/DPS-5Je3_V2c/lib/python3.9/site-packages/keras/distribute/optimizer_combinations.py<lambda>"       r   Z	AdagradV1c                   C   s   t jjjdS r
   )r   r   r   r   ZAdagradOptimizerr   r   r   r   r   &   r   ZAdamV1c                   C   s   t jjjjdddS )Nr      epsilon)r   r   r   r   ZAdamOptimizerr   r   r   r   r   )   r   ZFtrlV1c                   C   s   t jjjdS r
   )r   r   r   r   ZFtrlOptimizerr   r   r   r   r   ,   r   Z	RmsPropV1c                   C   s   t jjjdS r
   )r   r   r   r   ZRMSPropOptimizerr   r   r   r   r   /   r   ZAdadeltaKerasV2c                   C   s
   t dS r
   )adadelta_keras_v2ZAdadeltar   r   r   r   r   ;   r   ZAdagradKerasV2c                   C   s
   t dS r
   )adagrad_keras_v2ZAdagradr   r   r   r   r   >   r   ZAdamKerasV2c                   C   s   t jdddS Nr   g      ?r   )adam_keras_v2Adamr   r   r   r   r   A   r   ZAdamExperimentalc                   C   s
   t dS r
   )adam_experimentalr   r   r   r   r   r   D   r   ZAdamaxKerasV2c                   C   s   t jdddS r   )adamax_keras_v2ZAdamaxr   r   r   r   r   G   r   ZNadamKerasV2c                   C   s   t jdddS r   )nadam_keras_v2ZNadamr   r   r   r   r   J   r   ZFtrlKerasV2c                   C   s
   t dS r
   )ftrl_keras_v2ZFtrlr   r   r   r   r   M   r   ZGradientDescentKerasV2c                   C   s
   t dS r
   )gradient_descent_keras_v2ZSGDr   r   r   r   r   Q   r   ZRmsPropKerasV2c                   C   s
   t dS r
   )rmsprop_keras_v2ZRMSpropr   r   r   r   r   U   r   c                   C   s<   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.)distributionZ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   s    




r.   c                   C   s<   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 r"   )r   r$   r%   r&   r'   r(   r)   r*   r+   r,   optimizers_v2r   r   r   r   distributions_and_v2_optimizerso   s    




r0   c                   C   s<   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 r"   )r   r$   r%   r&   r'   r(   r)   r*   r+   r,   optimizers_v1_and_v2r   r   r   r   &distributions_and_v1_and_v2_optimizers}   s    




r2   )0__doc__Ztensorflow.compat.v2r   v2r   Z'keras.optimizers.optimizer_experimentalr   r   Zkeras.optimizers.optimizer_v2r   r   r   r   r   r   r   r   r   r   r    r   r   r	   r!   r$   r%   r&   ZNamedObjectZ gradient_descent_optimizer_v1_fnZadagrad_optimizer_v1_fnZadam_optimizer_v1_fnZftrl_optimizer_v1_fnZrmsprop_optimizer_v1_fnr-   Zadadelta_optimizer_keras_v2_fnZadagrad_optimizer_keras_v2_fnZadam_optimizer_keras_v2_fnZadam_experimental_fnZadamax_optimizer_keras_v2_fnZnadam_optimizer_keras_v2_fnZftrl_optimizer_keras_v2_fnZ&gradient_descent_optimizer_keras_v2_fnZrmsprop_optimizer_keras_v2_fnr/   r1   r.   r0   r2   r   r   r   r   <module>   s   













