Jump to content

Построение деревьев навыков

Построение деревьев навыков (CST) — это иерархический алгоритм обучения с подкреплением , который может строить деревья навыков на основе набора образцов траекторий решения, полученных в результате демонстрации. CST использует пошаговый алгоритм обнаружения точек изменения MAP ( максимум апостериорный ), чтобы сегментировать каждую демонстрационную траекторию на навыки и интегрировать результаты в дерево навыков. CST был представлен Джорджем Конидарисом , Скоттом Куиндерсмой , Эндрю Барто и Родериком Групеном в 2010 году. [1]

Алгоритм

[ редактировать ]

CST состоит в основном из трех частей: обнаружение точки изменения, выравнивание и слияние. Основное внимание CST уделяется онлайн-обнаружению точек изменения. Алгоритм обнаружения точек изменения используется для сегментации данных по навыкам и использует сумму дисконтированного вознаграждения. в качестве целевой переменной регрессии. Каждому навыку присвоена соответствующая абстракция. Фильтр частиц используется для управления вычислительной сложностью CST.

Алгоритм обнаружения точки изменения реализован следующим образом. Данные за раз и модели Q с предыдущим даны. Предполагается, что алгоритм может соответствовать сегменту по времени. до t с использованием модели q с вероятностью соответствия . Для расчета используется модель линейной регрессии с гауссовским шумом. . Априорный гауссов шум имеет нулевое среднее значение и следующую за ним дисперсию. . Далее следует априор для каждого веса. .

Вероятность соответствия вычисляется по следующему уравнению.

Затем CST вычисляет вероятность точки изменения в момент времени j с моделью q , и с использованием алгоритма Витерби .

Описания параметров и переменных следующие:

: вектор из m базисных функций, оцениваемых в состоянии
𝛾: Гамма-функция
m : количество базисных функций q.
D : матрица размером m на m с на диагонали и нули в других местах

длина навыка l Предполагается, что подчиняется геометрическому распределению с параметром p

k : Ожидаемая длина навыка

Используя описанный выше метод, CST может сегментировать данные в цепочку навыков. Временная сложность обнаружения точки изменения равна и размер хранилища , где N — количество частиц, L — время вычисления , и есть поменять точки.

Следующий шаг – выравнивание. CST необходимо согласовать компоненты навыков, поскольку точки изменения не происходят в одних и тех же местах. Таким образом, при сегментировании второй траектории после сегментирования первой траектории имеется смещение относительно местоположения точки изменения на второй траектории. Это смещение следует за смесью гауссиан.

Последний шаг – слияние. CST объединяет цепочки навыков в дерево навыков. CST объединяет пару сегментов траектории, назначая один и тот же навык. Все траектории имеют одну и ту же цель и объединяют две цепочки, начиная с их последних сегментов. Если два сегмента статистически похожи, они объединяются. Эта процедура повторяется до тех пор, пока не удастся объединить пару сегментов навыков. используются для определения того, лучше моделируется пара траекторий как один навык или как два разных навыка.

Псевдокод

[ редактировать ]

Следующий псевдокод описывает алгоритм обнаружения точки изменения:

particles := [];
Process each incoming data point
for t = 1:T do
    //Compute fit probabilities for all particles      
    for p ∈ particles do
        p_tjq := (1 − G(t − p.pos − 1)) × p.fit_prob × model_prior(p.model) × p.prev_MAP 
        p.MAP := p_tjq × g(t−p.pos) / (1 − G(t − p.pos − 1))
    end
    // Filter if necessary
    if the number of particles ≥ N then
        particles := particle_filter(p.MAP, M)
    end
    // Determine the Viterbi path
    for t = 1 do
        max_path := []
        max_MAP := 1/|Q|
    else
        max_particle := maxp p.MAP
        max_path := max_particle.path ∪ max_particle
        max_MAP := max_particle.MAP
    end
    // Create new particles for a changepoint at time t
    for q ∈ Q do
        new_p := create_particle(model=q, pos=t, prev_MAP=max_MAP, path=max_path)
        p := p ∪ new_p
    end
    // Update all particles
    for p ∈ P do
        particles := update_particle(current_state, current_reward, p)      
    end
end
// Return the most likely path to the final point
return max_path
function update_particle(current_state, current_reward, particle) is
    p := particle
    r_t := current_reward
    // Initialization
    if t = 0 then
        p.A := zero matrix(p.m, p.m)
        p.b := zero vector(p.m)
        p.z := zero vector(p.m)
        p.sum r := 0
        p.tr1 := 0
        p.tr2 := 0
    end if
    // Compute the basis function vector for the current state
    Φt := p.Φ (current state)
    // Update sufficient statistics
    p.A := p.A + ΦtΦT
t
p.z := 𝛾p.z + Φt p.b := p.b + rt p.z p.tr1 := 1 + 𝛾2 p.tr1 p.sum r := sum p.r + r2
t
p.tr1 + 2𝛾rt p.tr2 p.tr2 := 𝛾p.tr2 + rt p.tr1 p.fit_prob := compute_fit_prob(p, v, u, delta, 𝛾)

Предположения

[ редактировать ]

CTS предполагает, что продемонстрированные навыки образуют дерево, функция вознаграждения предметной области известна и лучшей моделью для объединения пары навыков является модель, выбранная для представления обоих по отдельности.

Преимущества

[ редактировать ]

CST — гораздо более быстрый алгоритм обучения, чем цепочка навыков . CST можно применять для изучения политик более высокого уровня. Даже неудачный эпизод может улучшить навыки. Навыки, приобретенные с помощью агентно-ориентированных функций, можно использовать для решения других задач.

Использование

[ редактировать ]

CST использовался для приобретения навыков в ходе демонстрации на людях в области PinBall . Его также использовали для приобретения навыков в результате демонстрации человеком на мобильном манипуляторе.

См. также

[ редактировать ]
  1. ^ Дживанандам, Ниваш (13 сентября 2021 г.). «Недооцененные, но увлекательные концепции машинного обучения №5 — CST, PBWM, SARSA и картографирование Sammon» . Журнал Analytics India . Проверено 5 декабря 2021 г.
  • Конидарис, Джордж; Скотт Куиндерсма; Эндрю Барто ; Родерик Групен (2010). «Построение деревьев навыков для агентов обучения с подкреплением на основе демонстрационных траекторий». Достижения в области нейронных систем обработки информации 23 .
  • Конидарис, Джордж; Эндрю Барто (2009). «Открытие навыков в областях непрерывного обучения с подкреплением с использованием цепочки навыков». Достижения в области нейронных систем обработки информации 22 .
  • Фернхед, Пол ; Чжэнь Лю (2007). «Онлайн-вывод по множественным точкам изменения». Журнал Королевского статистического общества .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: d9afe875e1638d4b85eac498e1bf3767__1688699760
URL1:https://arc.ask3.ru/arc/aa/d9/67/d9afe875e1638d4b85eac498e1bf3767.html
Заголовок, (Title) документа по адресу, URL1:
Constructing skill trees - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)