Гибридные нейросети. - страница 2

 
В смысле, очень много весов у сети, и поэтому долго обучается? Сколько весов? Сколько времени обучается?
 
joo >>:
В смысле, очень много весов у сети, и поэтому долго обучается? Сколько весов? Сколько времени обучается?


О да, сеть на первых этапах полносвязная, ну или по типу сетей свертки, но там слоев много). И это все счастье множиться на 10 и начинает спариваться. Обсчитывать приходится каждого, т.е. имеем 10х. А если возникла идея обучить профитному трюку, то приходится на каждом поколении просчитывать весь временной интервал, через каждого потомка прогонять. Эта операция меня вообсче убила своей ресурсоемкостью и я возвращаюсь к своему первоначальному вопросу.
 
IlyaA писал(а) >>

О да, сеть на первых этапах полносвязная, ну или по типу сетей свертки, но там слоев много). И это все счастье множиться на 10 и начинает спариваться. Обсчитывать приходится каждого, т.е. имеем 10х. А если возникла идея обучить профитному трюку, то приходится на каждом поколении просчитывать весь временной интервал, через каждого потомка прогонять. Эта операция меня вообсче убила своей ресурсоемкостью и я возвращаюсь к своему первоначальному вопросу.

Кол-во слоев?

 
gumgum >>:

Кол-во слоев?


По старинке [50]-60-39-2. Полносвязная.
 
IlyaA писал(а) >>

По старинке [50]-60-39-2. Полносвязная.

А про генетический код, глянь в личку

 

Так и не ответили на мой вопрос: "Сколько весов? Сколько времени обучается?"

Но, насколько я понял, в колонии всего лишь 10 особей. Это очень мало. И зря Вы всем в популяции позволяете скрещиваться. Это не эффективно.

Видимо, к тому же, что и с алгоритмом не всё ладно, раз очень долго работает.

Я использую популяцию из 200 особей. У каждой особи до 300000 генов. Обучение происходит в течении 10 минут.

Попробуйте сначала погонять простенькую функцию с двумя переменными, например такую:

F=MathPow(MathCos(2*x*x)-1.1,2)+MathPow(MathSin(0.5*x)-1.2,2)-MathPow(MathCos(2*y*y)-1.1,2)+MathPow(MathSin(0.5*y)-1.2,2)

c диапазоном поиска от -5 до 5. На этом отрезке переменных функция имеет 1 глобальный максимум(x=-3.315699..; y=-3.072485...) и один глобальный минимум(x=3.0702175...; y=3.3159335...)

У меня генетик ищет минимум за 380 милли секунд. И за такое же время максимум.

Оптимизируйте алгоритм на простых функциях. Потом приступите к обучению нейросетей.

 

Вчера написал сетку 10-15-10-1

идем дальше...

 
joo >>:

Но, насколько я понял, в колонии всего лишь 10 особей. Это очень мало. И зря Вы всем в популяции позволяете скрещиваться. Это не эффективно.

Я использую популяцию из 200 особей. У каждой особи до 300000 генов. Обучение происходит в течении 10 минут.

Где я написал, что они у меня все скрещиваются? Конечно нет 80%-20% коридор.

Про XOR вы не прочитали чтоли?

Раскройте структуру сетки (которая по 200 экземпляров).

Рекомендуете увеличить популяцию? Если вам не сложно, поставьте маленький эксперимент. Сколько займет обучение простенькой задачи (время, кол-во популяций) для 200 особей и для 25 особей. Остальное оставим без изменений. В этом месте я совсем не экспериментировал.

 

Параметры оптимизации: 

1. Коридор вероятностей продолжения рода 80-20%

2. Шаг изм. веса 0,1-0,001

3. Вер-ть мутации гена 20-50%

 
gumgum >>:

Вчера написал сетку 10-15-10-1

идем дальше...


симпатично. 2 входящих бара?