Байесовские методы машинного обучения (курс лекций, Д.П. Ветров, Д.А. Кропотов)/Задание 2

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

(Различия между версиями)
Перейти к: навигация, поиск

Anton (Обсуждение | вклад)
(Новая: __NOTOC__ [[Байесовские методы машинного обучения (курс лекций, Д.П. Ветров, Д.А. Кропотов)|Перейти к основн...)
К следующему изменению →

Версия 13:25, 20 ноября 2010


Перейти к основной странице спецкурса

Начало выполнения задания: 22 ноября 2010 г.
Срок сдачи: 6 декабря 2010 г., 23:59.

Модель Изинга

Прямоугольная система соседства
Прямоугольная система соседства
Треугольная система соседства
Треугольная система соседства

Модель Изинга — математическая модель статистической физики, предназначенная для описания намагничивания материала. Каждой вершине кристаллической решётки (рассматриваются не только трёхмерные, но и одно- и двумерные случаи) сопоставляется число, называемое спином и равное +1 или −1 («поле вверх»/«поле вниз»). Каждому из 2^N возможных вариантов расположения спинов (где N — число атомов решётки) приписывается энергия, получающаяся из попарного взаимодействия спинов соседних атомов J и действия внешнего магнитного поля H:
 
E(X) = -\left( \sum_{(i,j) \in E} J_{ij}x_i x_j + \sum_{i=1}^N H_i x_i \right),
где x_i - переменные, соответствующие спинам, E - система соседства (в данном задании рассматривается 2 системы соседства: прямоугольная и треугольная) . Вероятность нахождения в каждом конкретном состоянии задается распределением Гиббса:

P(X) = \frac{1}{Z} \exp{\left( -\beta E(X) \right)}, \qquad \beta = \frac{1}{kT},
где Z - нормировочная константа, T - температура, k - параметр.

Если J_{ij} = 1 ,то вещество называется ферромагнетиком. Если J_{ij} = -1, то вещество называется антиферромагнетиком.

Вариант 1

Описание задания

Провести исследование модели Изинга методом Монте-Карло. В качестве алгоритма генерации выборки использовать метод Гиббса. Генерацию каждого элемента решетки проводить по следующим формулам:

p(x_i = 1 | X_{/\{i\}}) = \frac{1}{1 + \exp(-2\beta b_i)}, \qquad b_i = \sum_{j: (i, j) \in E} J_{ij}x_j + H_i,

p(x_i = -1 | X_{/\{i\}}) = \frac{\exp(-2\beta b_i)}{1 + \exp(-2\beta b_i)}.

Задание

Пример иллюстрации состояния модели Изинга размера 20 на 20.
Пример иллюстрации состояния модели Изинга размера 20 на 20.
  1. Вывести формулы для метода Гиббса генерации выборки методом Гиббса (вывод вставить в отчет).
  2. Реализовать процедуру подсчета математического ожидания и дисперсии энергии (нормированной на количество спинов N), математического ожидания квадрата общей намагниченности модели \mu = \left(\sum_{i=1}^N x_i \right) / N методов Гиббса (с заданным числом итераций) для заданных параметров \beta и заданного внешнего магнитного поля H. (Требования по эффективности реализации: 1000 итераций метода Гиббса для решетки размером 20 на 20 и 100 значений параметра \beta должны выполнятся не более 100 секунд. В отчете привести соответствующие замеры времени работы кода.)
  3. Построить графики зависимости \mathbb{E}E, \sqrt{\mathbb{D}E}, \sqrt{\mathbb{E}(\mu^2)} от температуры для треугольной и четырехугольной систем соседства, ферромагнетика и антиферромагнетика (всего 4 модели). Проинтерпретировать полученные результаты (в частности идентифицировать, локализовать и изучить фазовый переход). Для построения графиков использовать следующие значения параметров:
    • размер решетки 20 на 20 (N = 400)
    • k = 1
    • 10000 итераций метода Гиббса для каждой из температур
    • для ферромагнетика J_{ij} = 1, для антиферромагнетика J_{ij} = -1
    • внешнее магнитное поле H_i = 0
    • температуры T = 0.5 : 0.1 : 10;
  4. Для ферромагнетика с четырехугольной системой связности привести (картинками) характерные состояния для разных температур в окрестности фазового перехода. Проинтерпретировать результаты. Рассмотреть не менее одного примера для не менее 5 разных температур. Параметры генерации те же, что и в пункте 3.
  5. Исследовать влияние фазового перехода в ферромагнетике с прямоугольной системой соседства от равномерного внешнего магнитного поля. Параметры модели взять такие же как в пункте 3.
  6. Выполнить пункт 4 в присутствии внешнего магнитного поля следующей структуры: на половине решетки H = 1, на другой половине H = -1.
  7. Сравнить результаты применения метода Монте-Карло с результатами применения вариационного подхода. Рассмотреть ферромагнетик с прямоугольной системой соседства. Реализацию вариационного подхода взять у товарища, выполняющего вариант 2. Привести графики математического ожидания и дисперсии энергии, корня из математического ожидания намагниченности в одних осях для двух подходов.

Оформление задания

Выполненное задание следует отправить письмом по адресу bayesml@gmail.com с заголовком письма «Задание 2 <Номер_группы> <ФИО>». Убедительная просьба присылать выполненное задание только один раз с окончательным вариантом. Новые версии будут рассматриваться только в самом крайнем случае.

В качестве программной среды реализации настоятельно рекомендуется использовать MATLAB. Тем не менее, никаких ограничений на выбор среды реализации не накладывается.

Присланный вариант задания должен содержать в себе:

  • ФИО исполнителя, номер группы и номер варианта задания.
  • Текстовый файл в формате PDF, содержащий описание проведенных исследований.
  • Все исходные коды с необходимыми комментариями.
  • Дополнительные комментарии или материалы, если необходимо.

Исходные коды должны включать в себя реализацию метода Гиббса для прямоугольной и треугольной систем соседств в виде отдельных функций. Прототипы функций имеют следующий вид:

Метод Гиббса
[E, magnet, samples] = generateIsing4(vS, hS, J, H, iter, betaAll) - прямоугольная система соседства
[E, magnet, samples] = generateIsing6(vS, hS, J, H, iter, betaAll) - треугольная система соседства
ВХОД
vS — размер решетки по вертикали;
hS — размер решетки по горизонтали;
J - параметр J модели. Все J_{ij} одинаковы и равны J.
H - внешнее магнитное поле, матрица размера vS на hS.
iter - количество итераций метода Гиббса
betaAll - вектор значений параметра \beta, для которых надо применить метод Гиббса. Длина вектора - \beta_0.
ВЫХОД
E - значения энергий на 1 спин, массив размера iter на \beta_0.
magnet — значения магнетизации на 1 спин, массив размера iter на \beta_0.
samples — примеры положений модели для всех температур, массив размера vS на hS на \beta_0.

Рекомендации

  • Лучше реализовывать метод векторно по параметру \beta, то есть проводить вычисления для всех температур сразу.
  • Начинать метод Гиббса лучше с наиболее вероятной для данной модели конфигурации.
  • Для оценки глобальных параметров лучше выкинуть значения, полученные на первой трети итераций метода Гиббса.
  • В качестве примера ситуации можно взять ситуацию, сгенерированную на последней итерации метода Гиббса.


Вариант 2

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