Files

4.6 KiB

In [2]:
import numpy as np
from keras.models import Model
from keras.layers import Input
from keras.layers.convolutional import UpSampling1D
from keras import backend as K
In [3]:
def format_decimal(arr, places=6):
    return [round(x * 10**places) / 10**places for x in arr]

UpSampling1D

[convolutional.UpSampling1D.0] length 2 upsampling on 3x5 input

In [5]:
data_in_shape = (3, 5)
L = UpSampling1D(length=2)

layer_0 = Input(shape=data_in_shape)
layer_1 = L(layer_0)
model = Model(input=layer_0, output=layer_1)

# set weights to random (use seed for reproducibility)
np.random.seed(230)
data_in = 2 * np.random.random(data_in_shape) - 1
print('')
print('in shape:', data_in_shape)
print('in:', format_decimal(data_in.ravel().tolist()))
result = model.predict(np.array([data_in]))
print('out shape:', result[0].shape)
print('out:', format_decimal(result[0].ravel().tolist()))
in shape: (3, 5)
in: [0.262, 0.764609, -0.482897, -0.371755, 0.871769, 0.490033, -0.986894, -0.960468, 0.373039, 0.911356, 0.00298, 0.270652, 0.749006, 0.692235, 0.471778]
out shape: (6, 5)
out: [0.262, 0.764609, -0.482897, -0.371755, 0.871769, 0.262, 0.764609, -0.482897, -0.371755, 0.871769, 0.490033, -0.986894, -0.960468, 0.373039, 0.911356, 0.490033, -0.986894, -0.960468, 0.373039, 0.911356, 0.00298, 0.270652, 0.749006, 0.692235, 0.471778, 0.00298, 0.270652, 0.749006, 0.692235, 0.471778]

[convolutional.UpSampling1D.0] length 3 upsampling on 4x4 input

In [6]:
data_in_shape = (4, 4)
L = UpSampling1D(length=3)

layer_0 = Input(shape=data_in_shape)
layer_1 = L(layer_0)
model = Model(input=layer_0, output=layer_1)

# set weights to random (use seed for reproducibility)
np.random.seed(231)
data_in = 2 * np.random.random(data_in_shape) - 1
print('')
print('in shape:', data_in_shape)
print('in:', format_decimal(data_in.ravel().tolist()))
result = model.predict(np.array([data_in]))
print('out shape:', result[0].shape)
print('out:', format_decimal(result[0].ravel().tolist()))
in shape: (4, 4)
in: [0.562988, 0.168418, -0.14658, -0.369311, 0.653777, 0.806859, -0.922124, 0.830445, -0.878989, -0.638546, -0.855401, -0.082476, 0.416718, -0.03353, -0.949107, -0.866195]
out shape: (12, 4)
out: [0.562988, 0.168418, -0.14658, -0.369311, 0.562988, 0.168418, -0.14658, -0.369311, 0.562988, 0.168418, -0.14658, -0.369311, 0.653777, 0.806859, -0.922124, 0.830445, 0.653777, 0.806859, -0.922124, 0.830445, 0.653777, 0.806859, -0.922124, 0.830445, -0.878989, -0.638546, -0.855401, -0.082476, -0.878989, -0.638546, -0.855401, -0.082476, -0.878989, -0.638546, -0.855401, -0.082476, 0.416718, -0.03353, -0.949107, -0.866195, 0.416718, -0.03353, -0.949107, -0.866195, 0.416718, -0.03353, -0.949107, -0.866195]
In [ ]: