Нейронные сети для больших повторяющихся наборов входов - PullRequest
0 голосов
/ 15 октября 2018

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

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

Теперь представьте, что нас попросили построить систему, которая может обрабатывать любое количество участников от 2 до 400 участников (просто для того, чтобы выбрать конкретное число).

Из того, что я узнал "Традиционные "Нейронные сети до сих пор, наш выбор:

  1. Создайте много разных нейронных сетей для каждого числа участников: n = 2, 3, 4, 5, ..., 400.
  2. Обучите одну нейронную сеть, принимая данные от 400 участников.Когда часть данных относится к гонке с менее чем 400 участниками (это будет большой процент данных), просто установите все оставшиеся статистические данные на 0.

Предполагая, что это сработает, есть лиесть ли основания ожидать, что один метод будет работать лучше, чем другой?

Первый более специализирован, но у вас гораздо меньше данных о тренировках на сеть, поэтому я предполагаю, что он будет работать примерно так же?

Существует ли стандартный способ решения подобных проблем?

Мы могли бы представить (упрощенно), что нейронная сеть сначала классифицирует силу каждого участника, и, следовательно, каждый раз, когда добавляется новый участник, он должен применить тот же самый анализ к этим новым входам, потенциально намекая на то, что может быть «умный» способ уменьшить общий объем требуемой работы.

Это просто крик для сверточной нейронной сети?

1 Ответ

0 голосов
/ 15 октября 2018

Между вашими двумя вариантами вариант 1 будет включать в себя многократные усилия для тренировки разных размеров и, вероятно, будет очень медленным в результате обучения.

Вариант 2 немного более работоспособен, но сети потребуется дополнительное обучение на входах разных размеров.

Другой вариант, который, я думаю, будет наиболее вероятным, состоит в том, чтобы обучить только нейронную сеть, чтобы выбрать победителя между двумя участниками, и использовать это для создания рейтинга посредством множества сравнений между парами.Такой подход описан здесь .

. Мы можем представить (упрощенно), что нейронная сеть сначала классифицирует силу каждого участника, и, следовательно, каждый раз, когда добавляется новый участникнеобходимо применить этот же анализ к этим новым данным, потенциально намекая на то, что может существовать «умный» способ сократить общий объем требуемой работы.

Я думаю, что у вас есть ключИдея здесь.Поскольку мы хотим провести точно такой же анализ для каждого участника (при условии, что не имеет значения, является ли он участником 1 или участником 400), это идеальная проблема для разделения веса .Это означает, что веса нейронов, выполняющих первоначальный анализ участника, идентичны для каждого участника.Когда эти веса меняются для одного участника, они меняются для всех участников.

В то время как CNN действительно используют распределение веса, нам не нужно использовать CNN, чтобы использовать эту технику.Детали того, как вы это сделаете, будут зависеть от вашей среды.

...