ó
¾÷Xc           @   s|   d  d l  Z d a d a d a d „  Z d „  Z d „  Z d „  Z d	 „  Z	 d
 „  Z
 d „  Z d „  Z d „  Z d „  Z d S(   iÿÿÿÿNt   float32gH¯¼šò×z>t   channels_lastc           C   s   t  S(   sÁ   Returns the value of the fuzz
    factor used in numeric expressions.

    # Returns
        A float.

    # Example
    ```python
        >>> keras.backend.epsilon()
        1e-08
    ```
    (   t   _EPSILON(    (    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   epsilon	   s    c         C   s
   |  a  d S(   s=  Sets the value of the fuzz
    factor used in numeric expressions.

    # Arguments
        e: float. New value of epsilon.

    # Example
    ```python
        >>> from keras import backend as K
        >>> K.epsilon()
        1e-08
        >>> K.set_epsilon(1e-05)
        >>> K.epsilon()
        1e-05
    ```
    N(   R   (   t   e(    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   set_epsilon   s    c           C   s   t  S(   sõ   Returns the default float type, as a string
    (e.g. 'float16', 'float32', 'float64').

    # Returns
        String, the current default float type.

    # Example
    ```python
        >>> keras.backend.floatx()
        'float32'
    ```
    (   t   _FLOATX(    (    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   floatx.   s    c         C   s>   |  d d d h k r. t  d t |  ƒ ƒ ‚ n  t |  ƒ a d S(   s,  Sets the default float type.

    # Arguments
        String: 'float16', 'float32', or 'float64'.

    # Example
    ```python
        >>> from keras import backend as K
        >>> K.floatx()
        'float32'
        >>> K.set_floatx('float16')
        >>> K.floatx()
        'float16'
    ```
    t   float16R    t   float64s   Unknown floatx type: N(   t
   ValueErrort   strR   (   R   (    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt
   set_floatx>   s    c         C   s   t  j |  d t ƒS(   s#  Cast a Numpy array to the default Keras float type.

    # Arguments
        x: Numpy array.

    # Returns
        The same Numpy array, cast to its new type.

    # Example
    ```python
        >>> from keras import backend as K
        >>> K.floatx()
        'float32'
        >>> arr = numpy.array([1.0, 2.0], dtype='float64')
        >>> arr.dtype
        dtype('float64')
        >>> new_arr = K.cast_to_floatx(arr)
        >>> new_arr
        array([ 1.,  2.], dtype=float32)
        >>> new_arr.dtype
        dtype('float32')
    ```
    t   dtype(   t   npt   asarrayR   (   t   x(    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   cast_to_floatxT   s    c           C   s   t  S(   s  Returns the default image data format
    convention ('channels_first' or 'channels_last').

    # Returns
        A string, either `'channels_first'` or `'channels_last'`

    # Example
    ```python
        >>> keras.backend.image_data_format()
        'channels_first'
    ```
    (   t   _IMAGE_DATA_FORMAT(    (    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   image_data_formato   s    c         C   s4   |  d d h k r$ t  d |  ƒ ‚ n  t |  ƒ a d S(   sƒ  Sets the value of the data format convention.

    # Arguments
        data_format: string. `'channels_first'` or `'channels_last'`.

    # Example
    ```python
        >>> from keras import backend as K
        >>> K.image_data_format()
        'channels_first'
        >>> K.set_image_data_format('channels_last')
        >>> K.image_data_format()
        'channels_last'
    ```
    R   t   channels_firsts   Unknown data_format:N(   R
   R   R   (   t   data_format(    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   set_image_data_format   s    c         C   s   t  |  d ƒ r t St Sd S(   so  Returns whether `x` is a Keras tensor.

    # Arguments
        x: a potential tensor.

    # Returns
        A boolean: whether the argument is a Keras tensor.

    # Examples
    ```python
        >>> from keras import backend as K
        >>> np_var = numpy.array([1, 2])
        >>> K.is_keras_tensor(np_var)
        False
        >>> keras_var = K.variable(np_var)
        >>> K.is_keras_tensor(keras_var)  # A variable is not a Tensor.
        False
        >>> keras_placeholder = K.placeholder(shape=(2, 4, 5))
        >>> K.is_keras_tensor(keras_placeholder)  # A placeholder is a Tensor.
        True
    ```
    t   _keras_shapeN(   t   hasattrt   Truet   False(   R   (    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   is_keras_tensor•   s    c         C   sI   |  d d h k r$ t  d |  ƒ ‚ n  |  d k r9 d } n d } | a d S(   sf  Legacy setter for `image_data_format`.

    # Arguments
        dim_ordering: string. `'tf'` or `'th'`.

    # Example
    ```python
        >>> from keras import backend as K
        >>> K.image_data_format()
        'channels_first'
        >>> K.set_image_data_format('channels_last')
        >>> K.image_data_format()
        'channels_last'
    ```
    t   tft   ths   Unknown dim_ordering:R   R   N(   R
   R   (   t   dim_orderingR   (    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   set_image_dim_ordering´   s    	c           C   s   t  d k r d Sd Sd S(   s+   Legacy getter for `image_data_format`.
    R   R   R   N(   R   (    (    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   image_dim_orderingÎ   s    (   t   numpyR   R   R   R   R   R   R   R   R   R   R   R   R   R    (    (    (    s3   /tmp/pip-build-isqEY4/keras/keras/backend/common.pyt   <module>   s   									