2014-09-05 2 views
1

Первых проверочной ссылки:MATLAB нейронной сеть инициализация веса в нескольких петлях

http://www.mathworks.com/matlabcentral/newsreader/view_thread/331830#911882

Это предлагаемый метод, чтобы создать нейронную сеть с train/test/validation наборами данных. У меня есть алгоритм оптимизации для оптимизации нейронных сетей входов, количества нейронов и слоев (максимум 2) с этой структурой, представленных здесь:

http://www.mathworks.com/matlabcentral/answers/152947-finding-best-neural-network-structure-using-optimization-algorithms-and-cross-validation

Как вы видите, это основная петля структура:

*Position_1(for weight initialization)* 

for i=1:num_of_loops 
*Position_2(for weight initialization)* 

- repeating cross validation 
for i=1:num_of_kfolds 
*Position_3(for weight initialization)* 
- Cross validation loop 

end 
    end 

Первый вопрос: где я должен инициализировать веса (с configure функции patternent нейронной сети (у меня есть бинарная проблема классификации) положение 1, положение 2 или положение 3

.?

Второй вопрос: где я должен положить rng(0). В первой ссылке мы имеем эту функцию перед циклом взаимной проверки. Почему я должен использовать эту функцию, и где я должен установить ее для моей предложенной структуры?

Ps. Я использую внешний контур (i=1:num_of_loops), чтобы иметь более надежные выходы. после нахождения лучшей модели я буду использовать все нейронные сети наилучшей структуры модели (num_of_loops*num_of_kfolds), вставить в них данные выборочной выборки и средние значения между выходами.

Спасибо.

ответ

1

Похоже, что на ваш вопрос в MathsWorks был задан очень большой вопрос.

Вопрос 1: Что касается первого вопроса, то как ваш предыдущий вопрос here, так и номер MathsWorks указал, что позиция 3 является подходящим местом для инициализации весов.

Вопрос 2: Как указано here, «ГСЧ один раз и только один раз перед внешним контуром»

+0

Спасибо за ответ. Таким образом, мы должны сохранять «rng» и называть его при каждом вызове этих кодов алгоритмом оптимизации как функцию затрат или использовать только «rng» перед циклом ourter и иметь как случайные числа во всех циклах и разные в каждом вызове функции стоимости? – user2991243

+0

Мое понимание с rng заключается в том, что он инициализирует генератор случайных чисел для последующего использования с разработкой ваших моделей. Таким образом, вы можете определить конкретные числа для предсказуемой последовательности чисел (повторите один и тот же эксперимент дважды). Надеюсь это поможет! –

Смежные вопросы