1 / 1 / 0
Регистрация: 05.03.2021
Сообщений: 50
|
||||||
Шаг градиентного спуска. Решение СНУ18.10.2021, 10:44. Показов 7307. Ответов 9
Здравствуйте, разбираюсь с методами спуска. В данном примере решаю СНУ градиентным спуском (простейшая реализация). Возникло непонимание с выбором шага сходимости. Если его считать по формулам №1 и №2 или вообще сделать не изменяющимся, то корни находятся верно. При использовании формулы №3 возникают проблемы. Почему так ? Есть какая-то общая формула для выбора шага или совет, которым нужно придерживаться?
0
|
18.10.2021, 10:44 | |
Ответы с готовыми решениями:
9
Метод градиентного спуска, для ряда Тейлора
Метод градиентного спуска |
1 / 1 / 0
Регистрация: 05.03.2021
Сообщений: 50
|
|
18.10.2021, 12:17 [ТС] | |
Gdez,Да, я пробовал. Так все работает, но разве третий вариант не должен предполагает наиболее быструю сходимость? Я хотел ускорить алгоритм, сделав alpha изменяющимся. Формула же вроде правильная. Или я что-то не понимаю?
0
|
![]() 8815 / 4468 / 1862
Регистрация: 27.03.2020
Сообщений: 7,287
|
|||||||||||
18.10.2021, 12:55 | |||||||||||
![]() Решение
ppasha, извиняюсь
![]() Поэтому начальную точку желательно брать с аргументами < 1. И второе -> обычно вводят ограничение на счетчик "к" (чтобы долго не считало) -> в коде -> cnt (при выводе пишет количество циклов; можно убрать из "return'a")
ppasha, добавил вычисление функции в конечной точке
![]()
1
|
1 / 1 / 0
Регистрация: 05.03.2021
Сообщений: 50
|
|
18.10.2021, 12:59 [ТС] | |
Gdez, Да, действительно. Если взять (0, 0), (0.3, 0.3), (0.4, 0.2), ... , то более-менее на корни правильно определяет, хотя если брать, к примеру, (0.3, 0.6), то уже перестаёт работать. Не знал об этом. Где можно подробнее все эти тонкости изучить? Есть какая-нибудь универсальная формула для переменного шага? Как его на практике обычно вычисляют ?
Добавлено через 1 минуту Gdez, а разве на практике это не губит скорость?
0
|
![]() 8815 / 4468 / 1862
Регистрация: 27.03.2020
Сообщений: 7,287
|
|
18.10.2021, 13:13 | |
ppasha, http://www.machinelearning.ru/... ого_спуска
Глава "Градиентный метод с дроблением шага". Там описывается доп условие для выбора alpha[k]
1
|
5454 / 2818 / 566
Регистрация: 07.11.2019
Сообщений: 4,648
|
|
18.10.2021, 15:07 | |
ppasha, у вас функция содержит гармонические функции. Не удивительно, что у нее может быть множество локальных экстремумов. В какой экстремум попадет - зависит от начальной точки.
1
|
18.10.2021, 15:07 | |
Помогаю со студенческими работами здесь
10
Сделать для градиентного спуска остановку алгоритма при условии. На какой итерации остановится градиентный спуск? Решение СЛАУ методом градиентного спуска решение задачи методом скорейшего градиентного спуска Решение методом градиентного спуска системы уравнений Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
Чем асинхронная логика (схемотехника) лучше тактируемой, как я думаю, что помимо энергоэффективности - ещё и безопасность.
Hrethgir 14.05.2025
Помимо огромного плюса в энергоэффективности, асинхронная логика - тотальный контроль над каждым совершённым тактом, а значит - безусловная безопасность, где безконтрольно не совершится ни одного. . .
|
Многопоточные приложения на C++
bytestream 14.05.2025
C++ всегда был языком, тесно работающим с железом, и потому особеннно эффективным для многопоточного программирования. Стандарт C++11 произвёл революцию, добавив в язык нативную поддержку потоков,. . .
|
Stack, Queue и Hashtable в C#
UnmanagedCoder 14.05.2025
Каждый опытный разработчик наверняка сталкивался с ситуацией, когда невинный на первый взгляд List<T> превращался в узкое горлышко всего приложения. Причина проста: универсальность – это прекрасно,. . .
|
Как использовать OAuth2 со Spring Security в Java
Javaican 14.05.2025
Протокол OAuth2 часто путают с механизмами аутентификации, хотя по сути это протокол авторизации. Представьте, что вместо передачи ключей от всего дома вашему другу, который пришёл полить цветы, вы. . .
|
Анализ текста на Python с NLTK и Spacy
AI_Generated 14.05.2025
NLTK, старожил в мире обработки естественного языка на Python, содержит богатейшую коллекцию алгоритмов и готовых моделей. Эта библиотека отлично подходит для образовательных целей и. . .
|
Реализация DI в PHP
Jason-Webb 13.05.2025
Когда я начинал писать свой первый крупный PHP-проект, моя архитектура напоминала запутаный клубок спагетти. Классы создавали другие классы внутри себя, зависимости жостко прописывались в коде, а о. . .
|
Обработка изображений в реальном времени на C# с OpenCV
stackOverflow 13.05.2025
Объединение библиотеки компьютерного зрения OpenCV с современным языком программирования C# создаёт симбиоз, который открывает доступ к впечатляющему набору возможностей. Ключевое преимущество этого. . .
|
POCO, ACE, Loki и другие продвинутые C++ библиотеки
NullReferenced 13.05.2025
В C++ разработки существует такое обилие библиотек, что порой кажется, будто ты заблудился в дремучем лесу. И среди этого многообразия POCO (Portable Components) – как маяк для тех, кто ищет. . .
|
Паттерны проектирования GoF на C#
UnmanagedCoder 13.05.2025
Вы наверняка сталкивались с ситуациями, когда код разрастается до неприличных размеров, а его поддержка становится настоящим испытанием. Именно в такие моменты на помощь приходят паттерны Gang of. . .
|
Создаем CLI приложение на Python с Prompt Toolkit
py-thonny 13.05.2025
Современные командные интерфейсы давно перестали быть черно-белыми текстовыми программами, которые многие помнят по старым операционным системам. CLI сегодня – это мощные, интуитивные и даже. . .
|