Практикум «Вычислительные методы распознавания и прогнозирования»

Практикум ведет к.ф.-м.н. Юрий Викторович Чехович.

Материалы, необходимые для выполнения практикума, находятся в архиве
practicalwork.zip [3,696 Kb].

Цели практикума:
— освоение приемов практической разработки и реализации алгоритмов классификации;
— освоение приемов объектно-ориентированного программирования, обеспечивающих совместную разработку и повторное использование кода;
— получение навыков тестирования и документирования программных продуктов;
— формирование культуры проведения вычислительных экспериментов.

Задания практикума в 6—7 семестрах заключаются в самостоятельной программной реализации алгоритмов, рассмотренных в курсе «Математические методы обучения по прецедентам» (метод выбирает студент, но для получения отличной оценки необходимо реализовать хотя бы один метод «со звездочкой»):
— Линейный дискриминант Фишера (сферические гауссовские плотности, матрицу обращать не надо);
— *Линейный дискриминант Фишера (гауссовские плотности произвольного вида, с обращением ковариационной матрицы);
— Байесовское решающее правило с квадратичной разделяющей поверхностью (без обращения матрицы);
— *Байесовское решающее правило с квадратичной разделяющей поверхностью (с обращением матрицы);
— Метод k ближайших соседей с выбором k по скользящему контролю с одним отделяемым объектом;
— *Метод k ближайших соседей с оптимизацией весов объектов;
— Метод потенциальных функций (итерационный алгоритм);
— *Метод радиальных базисных функций (обучение с помощью EM-алгоритма);
— Байесовское решающее правило с восстановлением плотностей классов по Парзену-Розенблатту.
— *Регрессионный метод (на основе ортогонализации Грама-Шмидта);
— *Логистическая регрессия;

Несколько правил, которых необходимо придерживаться при выполнении практикума:
— использовать язык C++,
— переопределять предоставленный абстрактный базовый класс CLearner,
— хранить матричные данные в объектах класса CmaMatrix,
— реализовать отдельные модули для тестирования своих алгоритмов.