@yuichirominato 2018.07.11更新 209views

Reinforcement Learning Using Quantum Boltzmann Machines

強化学習 機械学習 深層学習 量子アニーリング

はじめに

量子アニーリングやシミュレーテッドアニーリングでの強化学習の方法を確認するため、ボルツマンマシンを用いたRBM/DBM/QBM学習の方法を論文から確認したいと思います。今回は実機ではなく、量子アルゴリズムシミュレーションを中心として行います。

参考文献

Reinforcement Learning Using Quantum Boltzmann Machines
Daniel Crawford, Anna Levit, Navid Ghadermarzy, Jaspreet S. Oberoi, Pooya Ronagh
(Submitted on 17 Dec 2016 (v1), last revised 25 Dec 2016 (this version, v2))

https://arxiv.org/abs/1612.05695

概要

量子アニーリングをベースとして、制限付きボルツマンマシンと、複層のディープボルツマンマシン、そして横磁場の影響の残る段階での学習を行う量子ボルツマンマシンの3種類をシミュレーションを通じて学習を評価する。特にディープボルツマンマシンや量子ボルツマンマシンは古典計算機では本質的に効率的な学習は難しいので、量子性を用いたアナログ計算機の特性が活かせると思われる。

引用:https://arxiv.org/abs/1612.05695

課題

今回は迷路の課題を設定している。

引用:https://arxiv.org/abs/1612.05695

Wは壁、Rは報酬、Pはペナルティ。強化学習でこの迷路の報酬の期待値を最大にするように学んでもらう。

State(状態)

状態は迷路の中でのエージェントの位置で、状態sは縦横のマス目の位置の値をとる。

S={1, …, r} x {1, …, c}

Action(行動)

どの状態でもエージェントは下記5つの行動をとることができる。

a ∈ {↑,↓,←,→,stay}

エージェントが取りうる行動は、留まるもしくは上下左右に移動するの5通り設定する。

移動できない場所への移動

a : S → S.

そのような移動は留まるような行動とする。

時間割引率

強化学習における割引率を0.8にしている。

報酬の設定など

固定報酬は200、可変の報酬はベルヌーイ分布で200Ber(0.5)で期待値が100に。

アルゴリズムごとの性能比較

各迷路で3つのアルゴリズムの比較をしている。
RBMは二層のボルツマンマシンで、値の更新は古典計算。
DBMは量子アニーリングのシミュレーションSQAでの更新。
QBMも横磁場の影響を残しながらのSQAでの更新。

様々な迷路でのパラメータを変更した過程でQBMが良い結果を残している。

迷路サイズに対するアルゴリズムの性能

RBMとDBMの比較において、迷路サイズを大きくした時のFidelityを求めている。RBM/DBM共にhidden layerの数は20として、DBMの方がいい結果が出ている。

具体的アルゴリズム手順、SQA

SQAアルゴリズムは鈴木トロッタ展開を用いた経路積分の量子アニーリングを使用している。

横磁場の強さは$\Gamma$が20から0.01もしくは2.00まで変化。逆温度$\beta$は2.00で固定、レプリカのトロッタ数は25としている。

SQAやトロッタに関しては、下記参照お願いします。

「量子アニーリング、イジングモデルとフレームワーク」
https://blog.mdrft.com/post/6

アルゴリズム1、 RBM


RBMはシグモイド関数を使用して隠れ層の期待値を計算。それによってRBMの結合荷重を更新している。

アルゴリズム2、DBM

DBMは複層のボルツマンマシンで、下記の通りの手順でアルゴリズムを実行。

自由エネルギーは、

更新にはアルゴリズムはSQAもしくはSAが使用できる。
また、これまで出てこなかったのが、隠れ層同士の接続部分の計算で下記の通りに与えられる。

アルゴリズム3、QBM

最後のアルゴリズムはQBMで横磁場の影響を考慮しながらDBMをアップデートする。

自由エネルギーは下記式で表される。

$\Gamma$は最後まで落とさず2.00くらいでとめて測定をする。

Recommended


Wikiへ移動