10/10/2013 1 PHENIX WEEKLY PLANNING Oct. 10, 2013 Don Lynch.
2013 10 18_machine_learning_lecture_06
description
Transcript of 2013 10 18_machine_learning_lecture_06
Генетические алгоритмы
И. Куралёнок, Н. Поваров
Яндекс
СПб, 2013
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 1 из 16
Содержание
1 Генетические алгоритмы2 Свойства генетических алгоритмов3 Differential evolution4 No free lunch theorem
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 2 из 16
Идея
Кажется природа решает ту же задачу.⇒ Можно подсмотреть механизмы⇒ Популяция позволяет говорить о "производных"⇒ Внутри популяции можно исследовать зависимостии использовать их⇒ Просто объяснять, но нужен специальный"масонский"языкОтсебятена: генетические алгоритмы скорее языкописания перебора.
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 3 из 16
Этапы генетического алгоритма
1 Выбрать начальную популяцию2 Измерить "приспособленность"особей3 Повторить до сходимости
1 Выбрать представителей популяции для размножения2 Породить новых особей с помощью скрещивания и
мутаций3 Измерить приспособленность "детей"4 Заменить наименее приспособленных "детьми"
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 4 из 16
Выбор начальной позиции
Как любые переборные методы генетика существеннозависима от начальных позиций.Можно так:
Сводят пространство решений в [0, 1]n и берутравномерно рандомные точкиСводят к 0, 1k с помощью бинаризации и берутортыДелают предварительное сэмплирование
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 5 из 16
Выбор особей для размножения
Выбор особей - ключевой момент!Можно так:
Выбирать с вероятностью, пропорциональной"приспособленности"Предварительно делать shuffle"приспособленности"От "приспособленности"зависит очередностьМожно выбирать равномерно из популяции (поклассике нельзя)Любые комбинации :)
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 6 из 16
Скрещивание
Хочется сохранить лучшие черты, однако какиелучшие не ясно. Значит устроим случайный процесс!
Потомок имеет связанные "куски"ДНК родителей:
n-point crossover;cut’n’splice;равномерное скрещивание.
Родители влияют на направление развитияМного родителей
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 7 из 16
Мутация
Использование только скрещивания может привести квырождению популяции (genetic drift) Rigtharrowмутация. Мутация очень похожа на фазу выбора новойточки в MCMC/случайном блуждании.
Элементарные строковые преобразованияИнвертирование битаСлучайная мутация компонента
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 8 из 16
Мутация vs Скрещивание
Мутация - способ "вылезти"из локальныхэкстремумов, скрещивание - глубину "влезания"вэкстремумы. Есть несколько лагерей:
Скрещивание круче, так как быстро бежит.Мутация нужна только, чтобы убедиться, чтодругих хороших направлений нет.Мутация круче, так как обходит всё. Скрещиваниетолько немного ускоряет процесс.
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 9 из 16
Замещение элементов популяциипотомками
Меняем % "худших"стариковВводим "penalty"за старость и меняем толькоесли потомок лучшеСтарикам здесь не место
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 10 из 16
Основные pros и consГенетику легко сделать, но сложно понять как она работает.Хорошо:
очень много вариантов отобразить наше понимание область (любойуспех легко объяснить :));
легко понять непрофессионалу;
легко программируется;
в отличии от сэмплирования можно применять методы первогопорядка, применяя в качестве градиента разности элементовпопуляции.
Плохо:
Когда не работает непонятно за что хвататься;
Результаты зачастую не повторяются на другом множестве(так какнезя понять сложность модели);
большое поле для псевдонауки.
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 11 из 16
Алгоритм Differential Evolution
arg maxλ∈Rn
F (λ)
1 Выбрать начальную популяцию рандомом2 До сходимости, для каждого элемента популяции
x ∈ P :1 выбрать a, b, c ∈ P чтобы все отличались;2 k ∼ U(1..n);3 y = (yi) для каждого i
1 r ∼ U((0, 1))
2 yi =
{ai + F (bi − ci ), i = k |r < Cyi = xi
4 Заменить старый элемент новым, если новые лучше.3 Выбрать лучшего представителя получившейся
популяции.И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 12 из 16
Постановка вопроса
Целых 2 занятия мы обходим пространство решений.Может быть есть лучший из всех методов обхода? Вкачестве аналогии:Ресторан: способ обхода пространства решенийБлюдо: конкретная задача, требующая оптимизацииЦена: значение целевой функции на обойденной
части пространства
Theorem (No free lunch theorem)Все рестораны в среднем одинаково дороги
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 13 из 16
NFL: формальная формулировка
dm = {(d xm(1), d
ym(1)), . . . , (d
xm(m), d y
m(m))}f : X → YF = YX
p(f ) = 1F
Theorem (David Wolpert and William G.Macready (1997))Для любых двух способов обхода a1 и a2:∑
f p(dym|f ,m, a1) =
∑f p(d
ym|f ,m, a2)∑
f p(dym|f0,M ,m, a1) =
∑f p(d
ym|f0,M ,m, a2)
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 14 из 16
NFL: следствия
Нам всем хватит работы :)Полоса белая, полоса чернаяНужно искать близкие задачи
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 15 из 16
Домашнее задание
Кто согласен с основным утверждением лекции, чтогенетика это только альтернативный способ описанияперебора:
Фитим ln(x)Датасет старыйПолином ищем генетикой
Кто не согласен:ДоводыПримеры
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2013 Стр. 16 из 16