что то там не очень подробно расписано.
столкнулся с проблемой определения точки минимума - нашел градиент, а вот как шаг найти непойму:
min := func( Q.x - step*dFdx(Q.x,Q.y), Q.y - step*dFdy(Q.x,Q.y) ); где Q - исходная точка, dFdx и dFdy производные функции, step - шаг
на одних функциях нормально все находится, а на других не понятно как находить шаг...
что то там не очень подробно расписано.
столкнулся с проблемой определения точки минимума - нашел градиент, а вот как шаг найти непойму:
min := func( Q.x - step*dFdx(Q.x,Q.y), Q.y - step*dFdy(Q.x,Q.y) ); где Q - исходная точка, dFdx и dFdy производные функции, step - шаг
на одних функциях нормально все находится, а на других не понятно как находить шаг...
Хмм, а на каких функциях шаг нормально находится?
что значит унимодальна?
попробовал просчитать после нормлазиции функции(вернее исходных данных) -вроде помогло, но не будет ли каких нибудь искажений
я для начала просчитал простенькую функцию f = x^2+ y^2 -xy, брал шаг ~0.5 - нашлось быстро.
потом взял функцию минимума квадратов авторегрессии SSE = [y(t)-(b0+b1*yt-1+b2*yt-2)]^2 с данным без нормализации и нефига не получилось - градиент нереально стал расти, нужно оптимизировать шаг.
потом взял туже функцию но массив yt пронормализовал, с шагом 0.5 неполучилось, а с 0.2 норм, и пришел к выводу что есть параметры по которым надо задавать/находить шаг, а не просто перебирать -)
ps на листочке все считал ))
1. гладкая
2. имеет один локальный экстремум
ЗЫ. Экстремум - это минимум или максимум
ЗЗЫ. Минимум - это минимальное значение функции
ЗЗЗЫ. Максимум - это максимальное значение функции
ЗЗЗЗЫ Функция - это... фу... ищите сами...
я для начала просчитал простенькую функцию f = x^2+ y^2 -xy, брал шаг ~0.5 - нашлось быстро.
потом взял функцию минимума квадратов авторегрессии SSE = [y(t)-(b0+b1*yt-1+b2*yt-2)]^2 с данным без нормализации и нефига не получилось - градиент нереально стал расти, нужно оптимизировать шаг.
потом взял туже функцию но массив yt пронормализовал, с шагом 0.5 неполучилось, а с 0.2 норм, и пришел к выводу что есть параметры по которым надо задавать/находить шаг, а не просто перебирать -)
ps на листочке все считал ))
Берите шаг не больше, чем 1/(кол-во точек), ну и нормализация, да.
Есть способ найти оптимальное значение шага оптимизации (даже звучит и то страшно) но он далеко не простой....
<added> Подумал еще... Честно говоря, не уверен, что способ существует. У себя в нейронках использую адаптивный шаг,
ну а в общем случае... наверное сильно зависит от вида оптимизируемой функции.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
подскажите где можно найти инфу про алгоритм градиентного спуска? нужно оптимизировать перебор параметров, а раньше вообще с данной проблемой не сталкивался. помогите плиз советом