Численные методы обучения по прецедентам (практика, В.В. Стрижов)

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Статья на сайте machinelearning.ru)
(Статья на сайте machinelearning.ru)
Строка 18: Строка 18:
# Описание алгоритма в терминах поставленной задачи.
# Описание алгоритма в терминах поставленной задачи.
# Вычислительный эксперимент, поставленный для изучения свойств данного алгоритма. Раздел обязательно содержит описание графиков, иллюстрирующих работу алгоритма и слово «Результат» (вывод).
# Вычислительный эксперимент, поставленный для изучения свойств данного алгоритма. Раздел обязательно содержит описание графиков, иллюстрирующих работу алгоритма и слово «Результат» (вывод).
-
# Ссылка на программную реализацию.
+
# Ссылка на программную реализацию. Например: [https://mlalgorithms.svn.sourceforge.net/svnroot/mlalgorithms/DataGenerationExample/ DataGenerationExample].
# Ссылка на список статей сайта machinelearning.ru по данной тематике (необязательно).
# Ссылка на список статей сайта machinelearning.ru по данной тематике (необязательно).
# Список литературы, откуда был взят алгоритм.
# Список литературы, откуда был взят алгоритм.

Версия 13:42, 15 февраля 2009

Содержание

Московский физико-технический институт, Факультет управления и прикладной математики

’’Численные методы обучения по прецедентам’’ — практические занятия, включающие прикладные аспекты создания алгоритмов машинного обучения. Семестровый курс содержит 32 часа практических занятий. В ходе занятий студент получает несколько заданий на исследование свойств алгоритмов. Результатом практики являются отчеты о выполнении заданий. Все задания нужно сдать по меньшей мере за неделю до экзамена, чтобы успеть получить рецензию и исправить недочеты.


Статья предназначена прежде всего для студентов группы 674, она будет наполняться в течение этого семестра.


Содержание отчета

Отчет состоит из следующих материалов:

  • статья на сайте machinelearning.ru,
  • отчет о вычислительном эксперименте,
  • исходный код алгоритма.

Статья на сайте machinelearning.ru

Статья должна иметь следующие разделы:

  1. Краткое введение в тему работы, содержащее определение алгоритма.
  2. Постановка задачи в математической нотации, содержащая обязательные слова «Дано» (задано), и «Найти» (требуется).
  3. Описание алгоритма в терминах поставленной задачи.
  4. Вычислительный эксперимент, поставленный для изучения свойств данного алгоритма. Раздел обязательно содержит описание графиков, иллюстрирующих работу алгоритма и слово «Результат» (вывод).
  5. Ссылка на программную реализацию. Например: DataGenerationExample.
  6. Ссылка на список статей сайта machinelearning.ru по данной тематике (необязательно).
  7. Список литературы, откуда был взят алгоритм.

Рекомендуемые название разделов:

  1. (без названия)
  2. Постановка задачи
  3. Алгоритм (вариант — Описание алгоритма)
  4. Пример (вариант — Вычислительный эксперимент)
  5. Исходный код
  6. Смотри также
  7. Литература

Рекомендуемое название статьи: «Название вашего алгоритма (пример)».

Образец статьи: Логистическая регрессия (пример)

Вычислительный эксперимент

Вычислительный эксперимент состоит следующих шагов:

  1. Порождение модельных данных или загрузка реальных данных.
  2. Предобработка данных (если требуется).
  3. Визуализация данных (если требуется).
  4. Выполнение алгоритма, получение результатов.
  5. Исследование результатов работы алгоритма (если требуется).
  6. Визуализация результатов.
  7. Выводы.

Образец отчета о вычислительном эксперименте и способ его автоматического получения см. здесь. Отчет должен содержать цель исследования (она может отличаться от постановки задачи), результаты визуализации, полученные результаты и выводы. Основные элементы отчета (перечисленные в предыдущем предложении), наиболее важные строки кода и графики должны попасть в раздел «Вычислительный эксперимент» статьи на сайте machinelearning.ru.

Написание исходного кода

Работа с репозиторием

Исходный код должен находится в репозитории | https://mlalgorithms.svn.sourceforge.net/svnroot/mlalgorithms. О том, как работать с репозиторием, см. здесь. Права на добавление файлов в репозиторий можно получить у Константина Скипора.

В репозитории находятся следующие папки общего пользования:

  • data – реальные данные для загрузки, общие для всех проектов (данные к конкретному заданию можно хранить в папке AlgorithmName или AlgorithmName\data),
  • common – функции общего пользования, относящиеся к алгоритмам,
  • utilities – вспомогательные функции общего пользования, относящиеся к вводу данных и рисованию графиков.

В репозитории нужно создать папку, название папки – название задания (алгоритма). В папке должен лежать основной файл demoAlgorithmName – файл отчета о вычислительном эксперименте (и, возможно, файл loadDataName – файл порождения модельных данных или загрузки реальных данных). Дополнительные файлы могут лежать в той же папке или в подпапках.

В процессе автоматической генерации отчета появляется папка html, которую, вместе с файлами .html и .gif, можно также загрузить в репозиторий.


Совет: не загружайте в репозиторий вспомогательный файл операционной системы Thumbs.db, он вам будет мешать.


Программирование

Рекомендации программистам и введение в Матлаб см. здесь. Настоятельно рекомендуется прочесть соглашение об именах в статье Документирование функций Matlab. Там же рассказано о создании отчетов о вычислительных экспериментах.

Полезные материалы, сводный список ссылок

Личные инструменты