2016-05-10 3 views
6

Я ищу так называемый «DropConnect» в TensorFlow. Я знаю, как использовать «выпадение» в нейронной сети Tensorflow, но я не мог понять, какой метод для «DropConnect», или если он недоступен, может ли кто-нибудь предложить мне, как его реализовать?
Во всяком случае, я пробовал «отсева», «распад веса» и «раннюю остановку», но я по-прежнему страдал от переобучения. Есть ли лучшее решение для переобучения в TensorFlow?Dropconnect in Tensorflow

+0

[Этот ответ] (https://stackoverflow.com/a/44416128/656912) довольно много покрывает его. – orome

+1

Возможный дубликат [Могу ли я использовать 'tf.nn.dropout \" для реализации DropConnect?] (Https://stackoverflow.com/questions/44355229/can-i-use-tf-nn-dropout-to-implement -dropconnect) – Alex

ответ

5

DropConnect устанавливает произвольно выбранное подмножество весов в сети до нуля. Вы можете реализовать его, рассматривая долю весов в каждом слое как ноль во время обучения и обновляя все веса во время backpropagation.

Кроме того, вы можете использовать классические методы, чтобы избежать переобучения.

  1. Соберите больше данных или создайте их с помощью различных методов преобразования данных.
  2. Уменьшить количество функций.
  3. Уменьшить сложность модели.
Смежные вопросы