- •Линейные пространства векторов. Скалярное произведение. Понятие базиса и линейной независимости элементов линейного пространства. Преобразования базиса.
- •Определение матрицы. Операции с матрицами (умножение на скаляр, сложение, умножение матриц, транспонирование матриц). Обратная матрица и методы ее получения. Функции от матриц.
- •Производные. Необходимое и достаточное условие дифференцируемости функции. Частные производные. Полный дифференциал. Производная и дифференциал сложной функции.
- •Градиент функции. Производные по направлению. Необходимые и достаточные условия экстремума функции многих переменных. Условные экстремумы. Метод множителей Лагранжа.
- •Задачи аппроксимации функций (интерполяция, экстраполяция, приближение в среднем). Способы построения интерполяционного полинома. Аппроксимации на основе ортогональных базисов. Понятие сплайна.
- •Численные методы оптимизации: методы Ньютона и секущей, методы покоординатного и градиентного спуска. Улучшение сходимости градиентных методов.
- •Численные методы оптимизации, основанные на случайных числах. Метод Монте-Карло, линейный случайный поиск, метод оптимизации отжигом.
- •Прямые и итерационные методы решения систем линейных алгебраических уравнений. Методы для систем с матрицами специального вида (ленточные, треугольные, положительно-определенные).
- •Линейные пространства функций (примеры). Скалярное произведение и норма. Операторы над линейными пространствами функций. Функционалы. Собственные числа и функции оператора в пространстве l2.
- •Определение вероятности. Вероятностная модель и вероятностное пространство. Вероятность случайного события и методы ее статистического оценивания по выборке.
- •Модель случайной величины. Закон, функция, плотность распределения. Квантили и моменты распределений, методы их статистического оценивания по выборке.
- •Вероятностные и толерантные интервалы: сходства и различия. Понятия точечного и интервального оценивания. Доверительные интервалы. Несмещенные и эффективные оценки.
- •Параметрическое оценивание распределений случайной величины. Метод моментов. Метод наибольшего правдоподобия и его численная реализация. Способы проверки качества параметрического оценивания.
- •Статистические гипотезы и статистические критерии. Односторонние и двусторонние критерии. Критерии согласия. Параметрические критерии. Ошибки первого и второго рода. Мощность критерия.
- •Модель многомерной случайной величины. Совместные и условные распределения. Условные моменты распределений и их оценивание по выборке. Многомерное распределение Гаусса и его свойства.
- •Случайные процессы и временные ряды. Понятие стационарности. Ковариационная (корреляционная функция). Теорема Карунена-Лоэва. Спектральная плотность случайных процессов.
- •Алгоритмы на графах. Алгоритмы обхода (поиска на) графах. Обнаружение кратчайшего пути и минимального цикла в графе. Построение остовного дерева.
- •Основные понятия машинного обучения. Отличие машинного обучения от статистики. Методы на обучении с учителем. Методы на обучении без учителя. Метрики качества алгоритмов машинного обучения.
- •Цикл обучения. Понятия обучающей и тестовой выборки. Отложенная выборка. Кросс-валидация. Понятия недообучения и переобучения. Дилемма смещения и разброса. Размерность Вапника-Червоненкиса.
- •Понятия классификации и кластеризации. Метрические, иерархические, вероятностные методы классификации и кластеризации. Dbscan и kNn. Оценка качества классификации и кластеризации.
- •Понятие искусственной нейронной сети. Типы нейронных сетей. Понятие стохастического градиента для обучения нейронной сети. Многослойный перцептрон. Сверточные нейронные сети.
- •Методы снижения размерности данных. Метод главных компонент. Метод канонических корреляций. Методы факторного анализа. Нелинейные методы снижения размерности.
- •Принцип повышения размерности пространства. Метод опорных векторов. Понятие и свойства ядра. Метод Kernel-Trick.
- •Построение списка решений и дерева решений. Редукция деревьев решений. Понятие бэггинга и бустинга для деревьев решений. Случайный лес и способы его построения.
- •Обучение с подкреплением. Модели агентов и отклика среды. Задачи, решаемые обучением с подкреплением.
- •Ассоциативный анализ и задача о "покупательской корзине". Алгоритмы аprior и fp-Growth.
- •Способы представления знаний. Модели графов знаний. Полнота графов знаний. Методы прямого и обратного вывода по графам знаний. Онтологическая модель и средства ее реализации.
- •Экспертные методы в принятии решений. Принятие решений при многих критериях. Множество Парето. Экспертные системы поддержки принятия решений.
- •Методы машинного обучения для анализа текстовой информации. Понятие эмбеддинга. Методы построения и использования эмбеддингов при работе с текстом.
- •Генеративные методы машинного обучения. Генеративно-состязательные сети. Вариационные автокодировщики. Байесовские сети. Принципы работы, оценка качества.
Численные методы оптимизации: методы Ньютона и секущей, методы покоординатного и градиентного спуска. Улучшение сходимости градиентных методов.
Численные методы оптимизации: методы Ньютона и секущей, методы покоординатного и градиентного спуска.
Метод Ньютона – это итерационный алгоритм оптимизации, который использует вторую производную функции для нахождения минимума или максимума. Он начинает с начального предположения о решении , а затем использует производную и вторую производную функции для обновления предположения , пока не сходится к оптимальному решению.
Метод Ньютона сходится быстро, но может потребовать значительных вычислительных ресурсов для вычисления второй производной.
Углубимся в математику процесса. Пусть – исследуемая функция ошибки. Тогда для поиска минимума будем двигаться в направлении наклона аппроксимирующей ее функции, в качестве которой выступит уравнение касательной в случайной точке:
: .
Для этого зададим базовое правило обновления весов исследуемой функции ошибки как: или .
Метод Ньютона предлагает усложнить аппроксимирующую функцию до полинома Тейлора 2 порядка: .
Исходя из условия минимума , установим, что он достигается в точке: , где .
Тогда правило обновления весов функции ошибок сведется к следующему уравнению: .
Чтобы иметь возможность контролировать скорость обучения, введем параметр шага обучения: .
Метод секущей – это аналогичный итерационный алгоритм оптимизации, который использует только первую производную функции для нахождения минимума или максимума. Он начинает с двух начальных предположений о решении, а затем использует наклон касательной линии между этими двумя точками для обновления предположений, пока не сходится к оптимальному решению.
Метод секущей менее вычислительно затратен, чем метод Ньютона, но может сходиться медленнее.
Градиентный спуск – это итерационный алгоритм оптимизации, который направлен на поиск минимума функции путем следования отрицательному градиенту функции.
Другими словами, он движется в направлении крутого спуска, пока не достигнет локального минимума. Алгоритм начинает с начального предположения и затем обновляет параметры на каждой итерации, пока не сходится к минимуму. Математически и идейно очень близок к методу Ньютона, также может быть представлен в двух вариантах: для случая оптимизации одного единственного параметра или нескольких одновременно.
Методы координатной оптимизации, с другой стороны, представляют собой алгоритмы оптимизации, которые оптимизируют один параметр за один раз, сохраняя остальные параметры фиксированными. Эти методы особенно полезны, когда объективная функция может быть разложена на несколько независимых подпроблем.
Методы координатной оптимизации могут быть циклическими или рандомизированными. В циклических методах параметры обновляются в фиксированном порядке, в то время как в рандомизированных методах параметры обновляются в случайном порядке.
Градиентный спуск обычно быстрее, чем методы координатной оптимизации, но он может застрять в локальных минимумах. Методы оптимизации координат, с другой стороны, медленнее, но более надежны, вычислительно эффективны и могут решать невыпуклые задачи.
Улучшение сходимости градиентных методов. Чтобы улучшить сходимость градиентных методов, можно использовать несколько приемов:
1. График скорости обучения. Скорость обучения определяет размер шага обновления параметров. Фиксированная скорость обучения может привести к тому, что алгоритм будет сходиться медленно или проскочит минимум. График скорости обучения, уменьшающийся со временем, может помочь алгоритму сходиться быстрее и точнее.
2. Момент. Момент – это техника, которая помогает алгоритму преодолеть локальные минимумы и ускорить сходимость. Он добавляет долю предыдущего обновления к текущему обновлению, что помогает алгоритму двигаться в направлении глобального минимума.
3. Адаптивная скорость обучения. Адаптивные скорости обучения регулируют скорость обучения в зависимости от величины градиента. Это помогает алгоритму быстрее сходиться на участках с крутыми градиентами и избегать проскакивания на участках с плоскими градиентами.
4. Пакетная нормализация. Пакетная нормализация – это техника, которая нормализует входные данные для каждого слоя нейронной сети. Это помогает стабилизировать градиент и улучшить сходимость.
5. Инициализация весов. Правильная инициализация весов помогает алгоритму сходиться быстрее и избегать локальных минимумов. Случайная инициализация с соответствующей дисперсией может помочь предотвратить попадание всех весов в одну и ту же область пространства параметров.
6. Регуляризация. Методы регуляризации, такие как L1 или L2 регуляризация, могут помочь предотвратить перебор и улучшить эффективность обобщения. Это может помочь алгоритму сходиться быстрее и избегать локальных минимумов.