Если параметры и структура объекта изменятся, сеть надо переобучать. Особенно когда объект нестационарный. пока Вы сеть обучаете, объект изменяется!! Адаптивные сети очень громоздки. При синтезе регуляторов технологических процессов нейросеть можно заменить алгоритмом более простым раз в 1000 или более при большей точности. Но, лектор объясняет очень хорошо!
Вадим Леонардович, я пытаюсь увязать между собой две части лекции. Поэтому вопрос такой: использует ли функция neuralnet внутри себя метод скорейшего спуска, о котором так много говорилось в первой части лекции?
Да, используется модификация метода скорейшего спуска. Если разбираться с деталями, то в описании процедуры написано Training of neural networks using the backpropagation, resilient backpropagation with (Riedmiller, 1994) or without weight backtracking (Riedmiller, 1993) or the modified globally convergent version by Anastasiadis et al. (2005). The package allows flexible settings through custom-choice of error and activation function. Furthermore, the calculation of generalized weights (Intrator O & Intrator N, 1993) is implemented.
Доброго. Спасибо за лекцию. Можете подсказать, каким образом производится обратная стандартизация, т.к. часто сталкиваюсь с тем, что данные имеют сильный разброс и их приходится стандартизировать (использую z-score) и модель получается для стандартизированных данных, каким образом перейти от стандартизированной модели к "нормальной". Если сможете привести пример скрипта, то было бы здорово. Благодарю.
Вадим Леонардович, неужели не существует алгоритмов, которые позволят вычислить значения весов без использования бек-пропагейшн? И второй вопрос: можно ли строить модель не по принципу черного ящика, а по принципу понятных алгоритмов? С уважением, спасибо!
1. На сегодняшний день искать минимум функции проще всего методом скорейшего спуска... Теперь ответ на Ваш вопрос. Можно, но это тот случай, когда лекарство опаснее, чем болезнь. Итак, веса подбираем так, чтобы значение критерия качества (например, сумма квадратов ошибок) было минимальным. Нейронная сеть это функция, ее аргументы - веса. Дифференцируем по каждому весу, производную приравниваем к нулю. Получаем систему уравнений, решаем ее, находим веса. Уравнений столько же, сколько весов. Если весов много (тысяча, а есть нейронные сети и с 100000+ весов), решать такую систему сложнее, чем использовать метод скорейшего спуска.
2. Можно. Если интерпретируемость модели важнее, чем ее качество. Пример интерпретируемой модели - случайный лес. Но гораздо чаще аналитику важнее качество (например процент ошибок). Тогда он использует лучшую модель (например ту, у которой меньше процент ошибок). А тут нейронные сети все чаще (но не всегда) оказываются лучшими. Получается, что надо уметь их строить. Вариант, что "хотя моя модель делает на 10% больше ошибок, но зато она интерпретируема!" заказчика (да и Вас тоже) не устроит...
Почему говорят,что нейросеть обучается неделю или месяц. Как я понял, сама сеть обучается недолго, долго подбираются гиперпараметры,правильная архитектура и ищется глобальный минимум. Поправьте меня ,если я не прав
Прикроюсь авторитетами. Goodfellow, Bengio, Courville в книге Deep Learning пишут: It is quite common to invest days to months of time on hundreds of machines in order to solve even a single instance of the neural network training problem.
Если речь идёт о нейронной сети с миллионами параметров и большими наборами данных, то недели и месяцы на обучение -- это нормально. Для примера, на специальной, но не очень мощной GPU, нейросеть, в которой было ~80 слоёв с возможностью пропускать слои (shortcut connections), с набором данных ~10000 фотографий, в задаче распознавания ключевых точек на лице, обучение длилось сутки-двое
Регрессией называется задача апроксимации функции. Другими словами, подобрать такую сеть, чтобы она работала как наперед заданная функция. Об этом в видео не слова.
Действительно, где-то в 1960 году писались тексты, в которых регрессию и аппроксимацию функций не различали. Сейчас терминология изменилась. Предлагаю почитать введение в книге Friedman,Hastie,Tibshirani The elements of statistical learning
Спасибо! Лучший русскоязычный материал на эту тему!
Andrej Karpovich сколько шарю, действительно лучший, но все равно хуже АМЕРЕКАНЦев и британцев, они умнее и их больше
Если параметры и структура объекта изменятся, сеть надо переобучать. Особенно когда объект нестационарный. пока Вы сеть обучаете, объект изменяется!! Адаптивные сети очень громоздки. При синтезе регуляторов технологических процессов нейросеть можно заменить алгоритмом более простым раз в 1000 или более при большей точности. Но, лектор объясняет очень хорошо!
Большое спасибо за лекцию.
Спасибо за лекцию.
Коллеги понятно, прям аж ух...
Матрица вторых производных -- это Гессиан. Якобиан -- матрица первых производных для некоторой вектор-функции.
Верно, я ошибся. Слушатель в аудитории поправил сразу после лекции, а тут в комментариях только через 3 года...
Вадим Леонардович, я пытаюсь увязать между собой две части лекции. Поэтому вопрос такой: использует ли функция neuralnet внутри себя метод скорейшего спуска, о котором так много говорилось в первой части лекции?
Да, используется модификация метода скорейшего спуска.
Если разбираться с деталями, то в описании процедуры написано Training of neural networks using the backpropagation, resilient backpropagation with (Riedmiller,
1994) or without weight backtracking (Riedmiller, 1993) or the modified globally convergent version by Anastasiadis et al. (2005). The package allows flexible settings through custom-choice of error and activation function. Furthermore, the calculation of generalized weights (Intrator O & Intrator N, 1993) is implemented.
Доброго.
Спасибо за лекцию.
Можете подсказать, каким образом производится обратная стандартизация, т.к. часто сталкиваюсь с тем, что данные имеют сильный разброс и их приходится стандартизировать (использую z-score) и модель получается для стандартизированных данных, каким образом перейти от стандартизированной модели к "нормальной".
Если сможете привести пример скрипта, то было бы здорово.
Благодарю.
Начинаем решение со стандартизации, затем смотрим с 1:03:05
library(MASS)
data.1
А если используем при стандартизации z-score, то как "вернуться обратно"? Умножить на среднеквадратичное отклонение и прибавить матожидание (среднее)?
Да.
Вадим Леонардович, неужели не существует алгоритмов, которые позволят вычислить значения весов без использования бек-пропагейшн? И второй вопрос: можно ли строить модель не по принципу черного ящика, а по принципу понятных алгоритмов? С уважением, спасибо!
1. На сегодняшний день искать минимум функции проще всего
методом скорейшего спуска...
Теперь ответ на Ваш вопрос. Можно, но это тот случай, когда
лекарство опаснее, чем болезнь.
Итак, веса подбираем так, чтобы значение критерия качества
(например, сумма квадратов ошибок) было минимальным.
Нейронная сеть это функция, ее аргументы - веса.
Дифференцируем по каждому весу, производную приравниваем к нулю.
Получаем систему уравнений, решаем ее, находим веса.
Уравнений столько же, сколько весов.
Если весов много (тысяча, а есть нейронные сети и с 100000+ весов),
решать такую систему сложнее, чем использовать метод скорейшего спуска.
2. Можно. Если интерпретируемость модели важнее, чем ее качество.
Пример интерпретируемой модели - случайный лес.
Но гораздо чаще аналитику важнее качество (например процент ошибок). Тогда он
использует лучшую модель (например ту, у которой меньше процент ошибок).
А тут нейронные сети все чаще (но не всегда) оказываются лучшими.
Получается, что надо уметь их строить.
Вариант, что "хотя моя модель делает на 10% больше ошибок, но зато
она интерпретируема!" заказчика (да и Вас тоже) не устроит...
Средние Ошибки Нейросетей. Числа после названия - архитектура сети
MSE.5.3
Самое интересное неотобразилось. Метод скорейшего спуска упражнения...
а есть линк на плейлист?
Да, в описании ролика есть ссылка на весь плейлист
Почему говорят,что нейросеть обучается неделю или месяц. Как я понял, сама сеть обучается недолго, долго подбираются гиперпараметры,правильная архитектура и ищется глобальный минимум. Поправьте меня ,если я не прав
Прикроюсь авторитетами. Goodfellow, Bengio, Courville в книге Deep Learning пишут:
It is quite common to invest days to months of time on hundreds of machines in order to solve even a single instance of the neural network training problem.
Если речь идёт о нейронной сети с миллионами параметров и большими наборами данных, то недели и месяцы на обучение -- это нормально. Для примера, на специальной, но не очень мощной GPU, нейросеть, в которой было ~80 слоёв с возможностью пропускать слои (shortcut connections), с набором данных ~10000 фотографий, в задаче распознавания ключевых точек на лице, обучение длилось сутки-двое
Скорейший спуск и градиентный спуск это одно и то же?
Да
Тихо тихо ползи улитка по склону Фудзи.
До самой вершины.
Калеки, понятно! %))))))
И.П.ПАВЛОВ "ЗА СЛОВАМИ (формулками)НЕ ВИДИМ РЕАЛЬНОСТИ" Г.СЕЛЬЕ "КАК МНОГО ВОЗДЕЙСТВИЙ УКОРАЧИВАЮТ ЖИЗНЬ И КАК МАЛО ЕЁ УДЛИНЯЮТ"
Почему лекция называется "Нейронные сети в регрессионных задачах", если тут рассказывается об обучении нейронной сети и НИЧЕГО нет о задачи регрессии?
Начиная с 44 минуты именно о регрессии...
Регрессией называется задача апроксимации функции. Другими словами, подобрать такую сеть, чтобы она работала как наперед заданная функция. Об этом в видео не слова.
Действительно, где-то в 1960 году писались тексты,
в которых регрессию и аппроксимацию функций не различали.
Сейчас терминология изменилась.
Предлагаю почитать введение в книге
Friedman,Hastie,Tibshirani The elements of statistical learning
Хоть бы кто сказал что непонятно xD
Ужаснейшая подача информации. Сначала влепил лайкосик, обманчивое первичное впечатление, позитивный дядька ,а по ходу стало понятно....
Бесполезная лекция ,очень много воды.
Научись для начала говорить нормально, слушать противно.
Сделай лучше и выложи видео, мы посмотрим, я не спорю есть недочеты но так критично не стоит. Сделай лучше все тебя поблагодарят.
Вадим Леонардович сделал тонны полезного. Можно поинтересоваться вашим вкладом в науку или опенсорс?