Я собираюсь построить нейронную сеть, которая имеет архитектуру более чем одного выходного уровня. Более конкретно, он предназначен для построения параллельных процедур поверх ряда сверточных слоев. Одна ветвь - вычислять результаты классификации (softmax-like); другой - получить результаты регрессии. Тем не менее, я застрял в разработке модели, а также в выборе функций потерь (критерий).Реализация факела нейронной сети с несколькими выходами
I. Должен ли я использовать контейнер для факелов nn.Parallel()
или nn.Concat()
для слоев ответвления поверх слоев conv (nn.Sequential()
)? Каков различие, за исключением формата данных.
II. Из-за выходных данных функция потери классификации и функция потери регрессии должны комбинироваться линейно. Мне интересно, выбирается ли nn.MultiCriterion()
или nn.ParallelCriterion()
относительно определенного контейнера. Или мне нужно настроить новый класс критериев.
III. Может ли кто-нибудь, кто сделал подобную работу, сказать мне, если факел нуждается в дополнительной настройке для реализации backprop для обучения. Я отношусь к проблеме структуры данных факельных контейнеров.