Как вывести двумерную матрицу из нейронной сети в Керасе с применением Softmax для каждого столбца? - PullRequest
0 голосов
/ 22 мая 2019

Я пытаюсь реализовать нейронную сеть, которая выводит 2-D матрицу с активацией softmax для каждого столбца.

Я сделал это с помощью приведенного ниже кода, но он кажется очень медленным, когда количество столбцов увеличивается.

input = Input(shape=[100])
h1 = Dense(200, activation='relu')(input)
output = []
for i in range(n_cols):
    output.append(Dense(n_rows, activation='softmax')(h1))
outputs = concatenate(output, axis=1)
model = Model(inputs=input, outputs=output)

Может ли кто-нибудь предложить мне более быстрые способы? Любая помощь будет оценена.

1 Ответ

0 голосов
/ 22 мая 2019

Вы можете попробовать использовать список , который, как известно, обычно быстрее, чем циклы for.

Вместо:

output = []
for i in range(n_cols):
    output.append(Dense(n_rows, activation='softmax')(h1))

Вы можете попробовать:

output = [(Dense(n_rows, activation='softmax')(h1)) for i in range(n_cols)]

В общем, чем больше столбцов вы добавите, тем медленнее будет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...