Как вводятся данные в керас? - PullRequest
0 голосов
/ 16 мая 2019

Может кто-нибудь объяснить логику, как каждый вход подается в нейронную сеть, используя python с керасом.Я работаю с набором текстовых данных, так что, очевидно, это слово, но как каждое слово подается в сеть в качестве входных данных?Ниже приведен код:

model = models.Sequential()
model.add(layers.Dense(8, activation='relu', input_shape=(4000,)))
model.add(layers.Dense(8, activation='relu'))
model.add(layers.Dense(1, activation='sigmoid'))
model.compile(optimizer='rmsprop',loss='binary_crossentropy',metrics=['accuracy'])

1 Ответ

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

Есть несколько способов сделать это. Вы должны преобразовать каждое слово в фиксированный размерный вектор.

Есть снова несколько методов.

  1. В качестве базового метода вы можете использовать 'one-hot-vector'
  2. Или вы можете преобразовать слова во вложение, что может снова включать несколько методов:

    а. Используйте предварительно обученное вложение

    б. Создайте свои собственные вложения для слов, которые присутствуют в вашем наборе данных

  3. Затем включает выбор фиксированной длины входов (скажем, 50 или 100 слов)

  4. В случае простых нейронных сетей вы можете просто объединить все векторы слов (фиксированная длина курса) и подать его на входной слой вашей нейронной сети.

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