Тензорное моделирование

1

Я начал изучение в тензорном потоке и возможности моделирования.

У меня есть несколько нормализованных изображений 400x500, которые хранятся в виде массивов numpy.

Они организованы как: 180 для обучения категории A, 20 для тестирования категории A, 50 для обучения категории B и 11 для категории тестирования.

На данный момент я использую вводную модель:

model = keras.Sequential([
    keras.layers.Flatten(input_shape=(400, 500)),
    keras.layers.Dense(12, activation=tf.nn.relu),
    keras.layers.Dense(8, activation=tf.nn.sigmoid)
    keras.layers.Dense(2, activation=tf.nn.softmax)])

model.compile(optimizer=tf.train.AdamOptimizer(),
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

model.fit(train_images, train_labels, epochs=5, batch_size = 5)

train_images содержит [0-199] категории A и [200-249] категории B изображений. train_labels содержит соответствующие метки.

Во время исполнения точность всегда составляет около 0,78, независимо от количества используемых эпох. Потеря также не меняется.

0,78, похоже, близка к соотношению между категориями A и B.

Я был бы признателен за любую помощь, которая помогла бы уйти.

Спасибо.

  • 0
    Вы должны посмотреть на ложный / истинный отрицательный счет, он скажет вам, если вы узнали что-то.
  • 0
    Вы также можете использовать вес на этикетках, которые не сбалансированы
Теги:
tensorflow

1 ответ

0

Я думаю, что ваша модель слишком проста. У вас есть три плотных слоя с несколькими нейронами, которые не кажутся чем-то, что могло бы распознать некоторые сложные функции при вводе размера 200000. Сначала вы должны попробовать несколько сверточных слоев.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню