ó
V¾÷Xc           @` s:  d  Z  d d l m Z d d l m Z d d l m Z d d l Z e e d ƒ r‰ e e d ƒ r‰ d d l Z e j e j	 ƒ  e j
 Bƒ n  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 e Z d „  Z d e j f d „  ƒ  YZ e d k r6e j ƒ  n  d S(   s   Tests for 1D LSTM.i    (   t   absolute_import(   t   division(   t   print_functionNt   getdlopenflagst   setdlopenflags(   t   lstm1d(   t   constant_op(   t   gradient_checker(   t   gradients_impl(   t	   variables(   t   testc          G` s   t  j j d |  ƒ j d ƒ S(   Nt   sizet   f(   t   npt   randomt   uniformt   astype(   R   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm1d_test.pyt   _rand(   s    t
   Lstm1DTestc           B` s5   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z RS(   c      	   C` s±   |  j  ƒ  Ÿ t j t d d d ƒ ƒ } t j | d ƒ } t j ƒ  j ƒ  g  t j	 ƒ  D] } | j
 ^ qW } |  j t | ƒ d ƒ | j ƒ  } |  j t | j ƒ d ƒ Wd  QXd  S(   Ni   i   i   i   i   (   i   i   i   (   t   test_sessionR   t   constantR   R   t   ndlstm_baseR	   t   global_variables_initializert   runt   trainable_variablest   namet   assertEqualt   lent   evalt   tuplet   shape(   t   selft   inputst   outputst   vt   namest   result(    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm1d_test.pyt   testSequenceToSequenceDims.   s    "c      	   C` s¡   |  j  ƒ   d } d } t j t | Œ  ƒ } t j | d d t ƒ} t j ƒ  j	 ƒ  t
 j | | ƒ } t
 j | | ƒ d j ƒ  } |  j | j | ƒ Wd  QXd  S(	   Ni   i   i   i   t   dynamici    (   i   i   i   (   i   i   i   (   R   R   R   R   R   R   t   FalseR	   R   R   R   t	   gradientsR   R   R   (   R   R   t   output_sizeR    R!   R(   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm1d_test.pyt   testSequenceToSequenceGradient8   s    c         C` s•   |  j  ƒ  ƒ d } d	 } t j t | Œ  ƒ } t j | d d d d t ƒ} t j ƒ  j	 ƒ  t
 j | | ƒ d j ƒ  } |  j | j | ƒ Wd  QXd  S(
   Ni   i   i   i   t   reverseR&   i    (   i   i   i   (   i   i   i   (   R   R   R   R   R   R   R'   R	   R   R   R   R(   R   R   R   (   R   R   R)   R    R!   R(   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm1d_test.pyt%   testSequenceToSequenceGradientReverseK   s    c      	   C` s±   |  j  ƒ  Ÿ t j t d d d ƒ ƒ } t j | d ƒ } t j ƒ  j ƒ  g  t j	 ƒ  D] } | j
 ^ qW } |  j t | ƒ d ƒ | j ƒ  } |  j t | j ƒ d ƒ Wd  QXd  S(   Ni   i   i   i   i   (   i   i   (   R   R   R   R   R   t   sequence_to_finalR	   R   R   R   R   R   R   R   R   R   (   R   R    R!   R"   R#   R$   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm1d_test.pyt   testSequenceToFinalDims]   s    "c      	   C` sy   |  j  ƒ  g t j t d d d ƒ ƒ } t j | d ƒ } t j ƒ  j ƒ  | j	 ƒ  } |  j
 t | j ƒ d ƒ Wd  QXd  S(   Ni   i   i   i   (   i   i   i   (   R   R   R   R   R   t   sequence_softmaxR	   R   R   R   R   R   R   (   R   R    R!   R$   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm1d_test.pyt   testSequenceSoftmaxDimsg   s    (   t   __name__t
   __module__R%   R*   R,   R.   R0   (    (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm1d_test.pyR   ,   s
   	
			
t   __main__(   t   __doc__t
   __future__R    R   R   t   syst   hasattrt   ctypesR   R   t   RTLD_GLOBALt   numpyR   t    tensorflow.contrib.ndlstm.pythonR   t
   lstm1d_libt   tensorflow.python.frameworkR   t   tensorflow.python.opsR   R   R	   t   tensorflow.python.platformR
   R   t   TestCaseR   R1   t   main(    (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm1d_test.pyt   <module>   s&   	D