根据行和列在Keras中生成矩阵

时间:2018-10-13 16:23:04

标签: matrix lambda keras layer

我如何在Keras中创建一个层,以给定尺寸(例如m,n)的矩阵输出具有基于行和列的值的单元格? 这是论坛:

A[i, 2j] = i / (10**(2*j))
A[i, 2j+1] = i / (10**(2*j))

我试图查看lamba函数,但看来Keras仅传递了单元格值,而不传递了索引!其他任何选项(不是循环)

1 个答案:

答案 0 :(得分:0)

您可以执行以下操作:

from keras.layers import Input
import keras.backend as K
import numpy as np


def CustomConstantInput(m, n):
    x = np.arange(m)
    y = 10 ** (2 * (np.arange(n) // 2))
    matrix = x[:, None] / y[None, :]
    print(matrix)
    fixed_input = K.constant(matrix)
    return Input(tensor=fixed_input)


t = CustomConstantInput(3, 4)