example español tensorflow theano keras

español - keras vs tensorflow



Vector shift(Roll) en Tensorflow (1)

Simplemente tuve que hacer esto yo mismo, y no creo que haya una operación tensorflow para hacer np.roll desafortunadamente. Sin embargo, su código anterior parece básicamente correcto, excepto que no se desplaza por ri, sino por (x.shape [1] - ri).

También debe tener cuidado al elegir su entero aleatorio que es del rango (1, x.shape [1] +1) en lugar de rango (0, x.shape [1]), como si ri fuera 0, entonces x [:, 0: ri] estaría vacío.

Entonces, lo que sugeriría sería algo más parecido (para avanzar a lo largo de la dimensión 1):

x_len = x.get_shape().as_list()[1] i = np.random.randint(0,x_len) # The amount you want to roll by y = tf.concat([x[:,x_len-i:], x[:,:x_len-i]], axis=1)

EDITAR: agregó dos puntos faltantes después del comentario correcto de Han.

Digamos que queremos procesar imágenes (o vectores ndim) usando Keras / TensorFlow. Y queremos, para una regularización sofisticada, cambiar cada entrada por un número aleatorio de posiciones a la izquierda (porciones que fluyen hacia arriba reapareciendo en el lado derecho).

¿Cómo podría ser visto y resuelto?

1)

¿Hay alguna variación en la función numpy roll para TensorFlow?

2)

x - 2D tensor ri - random integer concatenate(x[:,ri:],x[:,0:ri], axis=1) #executed for each single input to the layer, ri being random again and again (I can live with random only for each batch)