JP2008269593A - ホップフィールドネットワーク - Google Patents

ホップフィールドネットワーク Download PDF

Info

Publication number
JP2008269593A
JP2008269593A JP2008087189A JP2008087189A JP2008269593A JP 2008269593 A JP2008269593 A JP 2008269593A JP 2008087189 A JP2008087189 A JP 2008087189A JP 2008087189 A JP2008087189 A JP 2008087189A JP 2008269593 A JP2008269593 A JP 2008269593A
Authority
JP
Japan
Prior art keywords
neuron
magnetic field
field parameter
neurons
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008087189A
Other languages
English (en)
Other versions
JP5207289B2 (ja
Inventor
Hiroshi Wakuya
寛 和久屋
Mari Miyazaki
真梨 宮崎
Seiki Yamashita
清貴 山下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Saga University NUC
Original Assignee
Saga University NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Saga University NUC filed Critical Saga University NUC
Priority to JP2008087189A priority Critical patent/JP5207289B2/ja
Publication of JP2008269593A publication Critical patent/JP2008269593A/ja
Application granted granted Critical
Publication of JP5207289B2 publication Critical patent/JP5207289B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

【課題】仮想磁場漸弱法による磁場パラメータ又はニューロン間の結合荷重係数を用いてより確実に最適解を求めるホップフィールドネットワークを提供する。
【解決手段】ニューロンの出力を求める場合に使用するニューロンの出力の算出式に磁場パラメータが含まれ、当該磁場パラメータは、磁場パラメータが初期値を負とし、時刻の経過により0、正、0となるように磁場パラメータ付与手段により求められるので、後説する実施形態の実験結果に示すようにより確実に最適解を求めることができる。また、ニューロン間の結合荷重係数を変化させることでネットワークのエネルギー状態を変化させて確実に最適解を求めることができる。
【選択図】図19

Description

本発明は、相互結合型ニューラルネットワークの一種であるホップフィールドネットワークに関する。
組合せ最適化問題とは、すべての組合せの中から、与えられた条件を最も満たすものを選ぶ問題である。例えば、スケジューリングや最近話題にあがる数独と呼ばれる脳力トレーニングゲームなどのように、組合せ最適化問題は企業活動や日常など様々な場所に現れる。
ところで、現在主流となっているノイマン型と呼ばれる直列逐次処理方式のコンピュータでは、組合せ総数が多くなった場合、その中から最適解を求めるためには多大な時間が必要であると言われている。このことは、一般に最適解を求めるまでに要する時間が長くなることを意味し、そのため解探索が困難な問題として位置づけられている。
このような経緯から、最適解を求める方法がいろいろと提案され、現在も様々な方面で研究され続けている。
このような要求を満たす解探索法の一つにホップフィールドネットワークと呼ばれるニューラルネットワークがある。ニューラルネットワークとは、人間の脳の構造を模倣して情報処理をするものである。このうちで、相互結合型ニューラルネットワークというものは、すべてのニューロンが互いに結合しており、その結合強度によってニューロンの値が変化していくものである。
John Hopfieldは、相互結合型ニューラルネットワークと物理学におけるスピングラス理論の構造上の類似性に着目し、ニューラルネットワークの世界にエネルギー関数の概念を導入した。これが、いわゆるホップフィールドネットワークの始まりである。このモデルは最急降下方向にのみ状態変化を引き起こすため、エネルギーは増加することがない。したがって、初期値によっては局所解に陥ることもあり、必ずしも最適解が求められるわけではない点に問題がある。
さて、このような局所解に陥るという問題の対策として、これまでに擬似焼きなまし法や仮想磁場漸弱法、ヒルクライミングタームなどが提案されている。擬似焼きなまし法はいわゆる温度パラメータを変化させ、徐々に冷却していく手法である。これに対して、仮想磁場漸弱法はいわゆる磁場パラメータを変化させ、これに対応するニューロンの閾値を操作する手法であるが、これらはいずれも物理学の世界で裏付けのある操作に基づいている。また、ヒルクライミングタームは特定のニューロンの値を変化させるもので、正解を導くことを最優先とした恣意的な操作である。
清水保希:"ホップフィールドネットワークを利用した組み合わせ最適化問題の解探索法に関する研究",平成14年度佐賀大学理工学部電気電子工学科卒業研究論文,2003
John Hopfieldは、相互結合型ニューラルネットワークと物理学におけるスピングラス理論の構造上の類似性に着目し、ニューラルネットワークの世界にエネルギー関数の概念を導入した。これが、いわゆるホップフィールドネットワークの始まりである。
しかしながら、このモデルは最急降下方向にのみ状態変化を引き起こすため、エネルギーは増加することがない。したがって、初期値によっては局所解に陥ることもあり、必ずしも最適解が求められるわけではない点に問題がある。
さて、このような局所解に陥るという問題の対策として、これまでに擬似焼きなまし法や仮想磁場漸弱法、ヒルクライミングタームなどが提案されている。擬似焼きなまし法はいわゆる温度パラメータを変化させ、徐々に冷却していく手法である。これに対して、仮想磁場漸弱法はいわゆる磁場パラメータを変化させ、これに対応するニューロンの閾値を操作する手法であるが、これらはいずれも物理学の世界で裏付けのある操作に基づいている。また、ヒルクライミングタームは特定のニューロンの値を変化させるもので、正解を導くことを最優先とした恣意的な操作である。
そこで、本発明では、物理学の世界で裏付けがある操作という前者の立場に着目したうえで、近年提案された仮想磁場漸弱法について、磁場パラメータを効率に与え、また、ニューロン間の結合荷重を変化させることでネットワークのエネルギー状態を変化させて最適解を求めるホップフィールドネットワークを提供することを目的とする。
本発明では、物理学の世界で裏付けがある操作という前者の立場に着目したうえで、近年提案された仮想磁場漸弱法について、磁場パラメータを効率に与える。
さて、これまで磁場パラメータは初期値を負の値に設定し、最終的に0になるように与えられていた(非特許文献1)。
そこで、本発明では、磁場パラメータを一度正方向に増加させた後、0にするという操作を行った場合のシミュレーションを通して、その有効性を説明する。
本発明に係るホップフィールドネットワークは、すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、任意のニューロンを選択するニューロン選択手段と、当該ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、時刻に応じた磁場パラメータを求める磁場パラメータ付与手段と、前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、前記磁場パラメータ付与手段は、磁場パラメータの初期値が負であり、時刻の経過に伴って漸次大きくなって磁場パラメータが0となり、少なくとも1回は磁場パラメータが正の値となって再び0となるように磁場パラメータを求める仮想磁場漸弱法を用いたものである。
このように本発明においては、ニューロンの出力を求める場合に使用するニューロンの出力の算出式に磁場パラメータが含まれ、当該磁場パラメータは、磁場パラメータが初期値を負とし、時刻の経過により0、正、0となるように磁場パラメータ付与手段により求められるので、後説する実施形態の実験結果に示すようにより確実に最適解を求めることができるという効果を奏する。
前記ニューロンの算出式の一般式は次の通りである。
Figure 2008269593
この式(1.1)は、基本的にはニューラルネットワークにおける出力ニューロンの算出式の一般式である。後説する実施形態には、クロスバ・スイッチ問題については式(3.17)、nクィーン問題については式(4.6)、ナンバー・プレイス問題については式(4.13)が該当する。ニューラルネットワークにおける出力ニューロンの一般式と異なるのは、Θiが磁場パラメータを含んで構成される点である。それぞれの式における閾値の式は、それぞれ式(3.18)、式(4.7)、式(4.14)であり、ニューロン毎に設定される閾値と磁場パラメータ関数を加算したものである。なお、式(1.1)と、式(3.18)、式(4.7)及び式(4.14)が若干異なるのは主に各問題に対して最適な配置のニューロンで式を組み立てているためである。また、対象となる問題に依存する値は、例えば、クロスバ・スイッチ問題にあっては、式(3.15)に示す係合係数を求める式及び式(3.16)に示す磁場パラメータを除く閾値を求める式である。このように問題によって、結合係数を求める式及び磁場パラメータを除く閾値を求める式は相違が生じるが、磁場パラメータの与え方については前説したように本発明の要部となって共通する。
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、磁場パラメータが0となり、正の値となって再び0となる時刻を繰り返し実行の終了時点とするものである。
繰り返し実行の終了時点は、繰り返し回数を設定した場合はその繰り返し回数の終了部分である。例えば、1000回を繰り返し回数とした場合には、998回、999回、1000回が繰り返し回数の終了部分となる。繰り返し回数を予め設定しない場合には出力ニューロンの変化がなくなる時点を繰り返し回数の終了部分とし、再度はじめから繰り返し実行することで本発明を適用することができる。
磁場パラメータの初期値又は繰り返し回数の入力を利用者から受け付ける手段を設け、当該利用者からの磁場パラメータの初期値又は繰り返し回数を受けた後に自動的に前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行する構成とすることもできる。そうすることで、初期値の調整又は繰り返し回数の調整を利用者が行いながら迅速に最適解を求めることができる。この場合において、繰り返し実行が終了した後に、ニューロンの状態を出力する構成が望ましい。
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、時刻の経過に伴って磁場パラメータの絶対値を小さくしながら負と正を順次繰り返すように磁場パラメータを求めるものである。
このように本発明においては、時刻の経過に伴って絶対値を小さくしながら負と正を順次繰り返すように磁場パラメータを求めるので、後説する実施形態の実験結果に示すようにさらに確実に最適解を求めることができるという効果を有する。
ここまでのホップフィールドネットワークについては、具体的には後記する第1の実施形態に詳説している。
本発明に係るホップフィールドネットワークは、すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、任意のニューロンを選択するニューロン選択手段と、当該ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、時刻に応じた磁場パラメータを求める磁場パラメータ付与手段と、前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、前記磁場パラメータ付与手段は、磁場パラメータの初期値が正であり、時刻の経過に伴って漸次小さくなって磁場パラメータが0となるように磁場パラメータを求める仮想磁場漸弱法を用いたものである。
このように本発明においては、ニューロンの出力を求める場合に使用するニューロンの出力の算出式に磁場パラメータが含まれ、当該磁場パラメータは、磁場パラメータが初期値を正とし、時刻の経過により0となるように磁場パラメータ付与手段により求められるので、後説する実施形態の実験結果に示したようにより確実に最適解を求めることができるという効果を有する。ここで、磁場パラメータの初期値を正とした場合には、0からさらに負の値とし、0と磁場パラメータをしなくとも、直接0とすることで正答率の改善することができるという効果を有する。
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、磁場パラメータが0となる時刻を繰り返し実行の終了時点またはその近傍とするものである。
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、磁場パラメータが0となった後に、少なくとも1回は磁場パラメータが負の値となって再び0となるものである。
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、磁場パラメータが0となり、負の値となって再び0となる時刻を繰り返し実行の終了時点またはその近傍とするものである。
これまで本発明をホップフィールドネットワークとして捉えてきたが、これまでの説明並びに実施形態からホップフィールドネットワークの磁場パラメータの付与方法としても本発明を把握することができる。
このように本発明においては、磁場パラメータの初期値を正とした場合で、さらに、時刻の経過に伴って磁場パラメータを順次0、負、0とするので、さらに正答率を改善することができるという効果を有する。
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、時刻の経過に伴って磁場パラメータの絶対値を小さくしながら正と負を順次繰り返すように磁場パラメータを求めるものである。
ここまでのホップフィールドネットワークについては、具体的には第2の実施形態に詳説している。これ以降のホップフィールドネットワークについては、具体的にはその他の実施形態に詳説している。
本発明に係るホップフィールドネットワークは、前記ニューロン選択手段で選択されたニューロン及び前記入力取得手段で取得した他のニューロンとの結合荷重を算出する結合荷重算出手段を備え、前記ニューロン選択手段、入力取得手段、結合荷重算出手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、前記結合荷重算出手段が、前記結合荷重に関する任意の結合荷重係数に基づいて、前記結合荷重を変化させて算出するものである。
このように本発明においては、ニューロンの出力を求める場合に使用するニューロンの出力の算出式にニューロン間の結合荷重が含まれ、当該結合荷重は、任意の結合荷重係数に基づいて変化させて算出されるため、ネットワークにおけるエネルギーが変化され、後説する実施形態の実験結果に示したように、より確実に組み合わせの最適解を求めることができるという効果を有する。
また、この場合ネットワークのエネルギー関数及びニューロンの出力の算出式は以下のようになる。
Figure 2008269593

Figure 2008269593
式(1.2)、(1.3)において、wが結合荷重で、kが結合荷重係数である。この式(1.2)から、結合荷重が含まれる項はニューロンの出力Vが2次であるのに対し、磁場パラメータを含む閾値θが含まれる項はニューロンの出力Vが1次であることから、結合荷重wの方が閾値θと比較してエネルギーに対する影響が大きいと考えられる。すなわち、ネットワークのエネルギーの変化の度合いをより大きく且つ綿密にすることで、確実で早く最適解を求めることができるという効果を奏する。
本発明に係るホップフィールドネットワークは、前記結合荷重算出手段が、前記ニューロン選択手段で選択されたニューロンと当該選択されたニューロン以外のニューロンとの結合状態に基づいて、各ニューロンごとに重み付けをして結合荷重係数を求める仮想磁場漸弱法を用いたものである。
このように本発明においては、ニューロン間の結合荷重について、各ニューロンごとに重み付けをして結合荷重係数を求めるため、ネットワークのエネルギーを緻密に変化させてより最適な解を早く求めることができるという効果を奏する。
本発明に係るホップフィールドネットワークは、すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、任意のニューロンを選択するニューロン選択手段と、前記ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、前記ニューロン選択手段で選択されたニューロン及び前記入力取得手段で取得した他のニューロンとの結合荷重を算出する結合荷重算出手段と、前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び前記結合荷重算出手段により算出した結合荷重に基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、前記ニューロン選択手段、入力取得手段、結合荷重算出手段及び出力ニューロン算出手段を順次繰り返し実行し、前記結合荷重算出手段が、前記結合荷重に関する任意の結合荷重係数に基づいて、前記結合荷重を変化させて算出するものである。
このように本発明においては、式(1.2)における第2項目の磁場パラメータを含む閾値θの値に依存することなく、結合荷重算出手段が結合荷重を変化させることでネットワークのエネルギーを変化させることができるため、処理を簡略化することができるという効果を奏する。
本発明に係るホップフィールドネットワークは、時刻に応じた磁場パラメータを求める磁場パラメータ付与手段を備え、前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力、前記結合荷重算出手段により算出した結合荷重及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、前記ニューロン選択手段、入力取得手段、結合荷重算出手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行するものである。
なお、ここでは、θをΘに改めて磁場パラメータ考慮し、従来通り負から0に変化させてもよいし、負、正、0と変化させてもよいし、負と正を繰り返しながら絶対値を小さくしてもよい。また、正から0に変化させてもよいし、正、負、0と変化させてもよいし、正と負を繰り返しながら絶対値を小さくしてもよい。すなわち、磁場パラメータの変化に依存させてもよいし、依存させなくてもよい。
本発明に係るホップフィールドネットワークは、前記結合荷重算出手段が、前記ニューロン選択手段で選択されたニューロンと当該選択されたニューロン以外のニューロンとの結合状態に基づいて、各ニューロンごとに重み付けをして結合荷重係数を求めるものである。
このように本発明においては、ニューロン間の結合荷重について、各ニューロンごとに重み付けをして結合荷重係数を求めるため、ネットワークのエネルギーを緻密に変化させてより最適な解を早く求めることができるという効果を奏する。
これら前記の発明の概要は、本発明に必須となる特徴を列挙したものではなく、これら複数の特徴のサブコンビネーションも発明となり得る。
(本発明の第1の実施形態)
[1.要素技術]
本章では、まずホップフィールドネットワークの基本的な概念であるニューラルネットワークについて紹介した後、ホップフィールドネットワークの構造や動作、スピングラス理論との類似性について説明する。そして、仮想磁場漸弱法の考え方について述べる。
[1.1 ニューラルネットワーク]
ニューラルネットワークとは、脳の情報処理方式を模擬しようというものである。そこでまず、脳の構造と情報処理方式について簡単に説明する。脳を構成している細胞は、140億個程度のニューロン(神経細胞)とその5〜10倍はあるというグリア細胞である(萩原将文,"ニューロ・ファジイ・遺伝的アルゴリズム",産業図書,1994)。
ニューロンの基本的な構造は図1に示すようなもので、ニューロンの本体にあたる細胞体、ニューロンの入力端子にあたる樹状突起、ニューロンの出力端子にあたる軸索、ニューロン間をつなげる役割を果たすシナプスから成る。ニューロンはそれを取り巻く細胞外液との間に膜電位と呼ばれる電位差をもっている。膜電位は通常−70[mV]程度を保っているが、他のニューロンから入力信号が加わると膜電位が上昇する。それぞれのニューロンは平均して他のニューロンと1000[個]程度のつながりをもっており、他のニューロンからの入力信号の総和による膜電位の変化が、ある決められた値(閾値)を超えるとニューロンが発火し、パルス(活動電位)を発生させて次のニューロンへと伝えていく。
この膨大なニューロン数とニューロン間のつながりが、人間特有の情報処理機能を実現しており、これをモデル化することで新しい情報処理原理を追求しようとしたものがニューラルネットワークである。現在、よく用いられるニューロンモデルは図2に示すようなものである。
この図の中で、x1、x2、・・・、xnは前段のニューロンの出力、yはこのニューロンの出力、そしてw1、w2、・・・、wnはこれらのニューロン間の結合の強さを表す。他の各ニューロンから、それぞれの結合荷重を通して入力される値の総和が閾値より大きければ、ニューロンが発火状態のときの出力を“1”、静止状態のときの出力を“0”とすると、上述の性質は以下のように表すことができる。
Figure 2008269593
Figure 2008269593
nは前段のニューロン数、θは閾値を表す。なお、fは閾値関数と呼ばれるもので,ニューラルネットワークの有する不思議な能力の源泉である。
[1.2 ホップフィールドネットワーク]
ホップフィールドネットワークとは、1982年に物理学者John Hopfieldが提案した相互結合型ニューラルネットワークの一つである。相互結合型ニューラルネットワークとは、すべてのニューロンが自分自身を除く他のすべてのニューロンと結合しており、図3に示すような構造をしている。ここで○(マル)はニューロンを、→(矢印)はニューロン間の結合を表している。いま、時刻tにおけるニューロンiの出力をVi(t)とおくと、次の時刻t+1における各ニューロンの出力は式(2.1)を参考にして
Figure 2008269593
で表される。
次に、ホップフィールドネットワークの動作について説明する。まず、各ニューロンの初期値を乱数で決定する。そして、式(2.1)による動作をすべてのニューロンに対して任意の順序で1つずつ行い、ニューロンの出力値の変化がなくなるまで繰り返す。このようにニューロンの状態遷移を一度に1つずつ行うことを非同期式と呼ぶ。なお、これに対して全ニューロンの状態遷移を一度に行うものを同期式と呼ぶ。
ホップフィールドネットワークでは、ニューロン間の結合荷重に関して次の特徴を仮定する。
Figure 2008269593
このとき式(2.4)並びにニューロンの状態遷移が非同期式であることから、次式のようなエネルギー関数が定義できる。
Figure 2008269593
ここに示すエネルギー関数は、本来、物理学のスピングラス理論の世界において定式化されるものである。このアイデアを相互結合型ニューラルネットワークへ導入することができたのは、両者の類似性に着目したためであり、このことにより、それまで困難とされていた組合せ最適化問題(多数の組合せの中から最適な解を求める問題。詳細については後説する。)を、比較的容易に解くことが可能であると示された。
さて、ここでスピングラス理論とホップフィールドネットワークとの対応関係を示す。
Figure 2008269593
表1に示すように、スピンの向きSi(t)をニューロンの出力Vi(t)に、スピン間の相互作用Jijをニューロン間の結合荷重wijに対応させると、スピングラスのエネルギーであるハミルトニアンH(t)からホップフィールドネットワークのエネルギーE(t)を式(2.5)のように定義できる。なお、スピングラスのエネルギー(ハミルトニアン)は以下のように定義されている。
Figure 2008269593
また、両者の包含関係は図4に示すようになり(Hiroshi Wakuya,"A new search method for combinatorial optimization problem inspired from the spin glass system",Abstracts of the 2nd International Conference on Brain-inspired Information Technology(BrainIT2005))、スピングラスの世界で成り立つ現象はホップフィールドネットワークでも成り立つが、ホップフィールドネットワークの世界で成り立つ現象が物理学の世界に存在しているわけではないことがわかる。
ホップフィールドネットワークを用いて組合せ最適化問題を解く場合、以下のような問題点がある。ホップフィールドネットワークは、式(2.5)で定義されるエネルギー関数を減少させる方向に式(2.1)に従って各ニューロンの状態遷移を行う。この時、エネルギーが増加する方向には決して動作しないため、必ずしも最適解を求められるわけではなく、ネットワークの初期状態によっては近似解となってしまうことも多い。ネットワークの各状態に対するエネルギーの増減を、山と谷が交互に存在する曲線として模式的に表したものが図5である。例えば、図5中の同じ山の左右にネットワークの初期状態としてAとBをとると、Aの場合は最適解に到達することができるが、Bの場合は局所解(近似解)に落ち込み、そこから脱出できなくなってしまうことがわかる。
この種の問題点への対策として、ボルツマンマシンとヒルクライミングタームをはじめとするいくつかの方法が提案されている。ボルツマンマシンでは、状態遷移に確率を導入したため、ネットワークの状態がエネルギーが増加する方向に動作することが許される。ニューロンの状態遷移は次式で計算される確率Pに従って出力が1に設定される(合原一幸,"ニューロ・ファジィ・カオス",オーム社,1993)。
Figure 2008269593
式(2.7)のui(t)は各ニューロンからの入力和、Tは温度パラメータを示す。なお、確率関数Pは、ui(t)→∞で1.0に近づき、ui(t)→−∞で値0に近づく非線形な関数で、シグモイド関数と呼ばれているものである。図6に示すように、シグモイド関数の形状は、温度パラメータの値の大きさによって傾きを変化させる。
始めは温度パラメータの値を大きく設定し、シグモイド関数の傾きをなめらかにすることで、入力和が小さくてもニューロンが発火しやすくなり、極小値から脱出する確率を大きくする。徐々に温度を下げることによって、入力和が小さい場合はニューロンが発火しにくくなり、最終的にはエネルギーの最も低い状態に収束し、最適解が求められるというこの方法は、金属材料を加熱して徐々に冷却して内部の欠陥を取り除く「焼きなまし」に似ていることから、擬似焼きなまし法と呼ばれている。またこの手法は、スピングラス理論においても成り立つ手法であり、スピンを高温から低温に徐々冷却すると、最終的にハミルトニアンが最も小さいスピンの安定状態を得ることができる。
ヒルクライミングタームとはネットワークの状態が局所解に陥った場合、そこから抜け出すために、ニューロンの値を操作するものである。例えば、組合せ最適化問題を解く場合に、「縦の並びに“1”が1つだけ」という制約条件があったとする。ニューロンの状態遷移の過程で、もし縦の並びがすべて“0”になった際に、その列のある1つのニューロンの出力を強制的に“1”にすることで局所解から脱出し、最適解を求めるきっかけをつくることができるのである。この操作は、最適解を求めるためには有効的な手法ではあるが、ニューラルネットワークの世界でしか適用がなく、物理学に裏付けのない恣意的な操作である。
[1.3 スピングラス理論]
ここではホップフィールドネットワークにエネルギー関数を導入する起源となったスピングラス理論について述べる。スピングラスとは、強磁性体と反強磁性体がランダムに並んでいる磁性体のことである(高山一,“スピングラス”,丸善,1991)。磁性体を構成する磁性原子は最小の単位磁石として振る舞い、これがスピンと呼ばれるものにあたる。以下では、スピンを模式的に上向きと下向きの矢印として扱い、その2つの状態しか存在しないものと仮定する。
強磁性体とは、隣接するスピン間で互いの向きを平行に揃えようとする強磁性相互作用が働いている磁性体であり、強磁性相互作用を直線(−)で表すと、図7(a)に示すように、スピンの向きがすべて同一方向を向いている状態として表すことができる。これに対して、反強磁性体とは、隣接するスピン間の向きを反平行に揃えようとする反強磁性相互作用が働いている磁性体であり、反強磁性相互作用を波線(〜)で表すと、図7(b)に示すように、スピンの向きが上下交互に並んでいる状態として表すことができる。定性的にはこのような説明ができるため、強磁性体は強い磁性を帯びることになるが、反強磁性体は磁性を帯びることはない。
一般のスピングラスモデルでは、どちらか一方の相互作用のみが働いている状態で存在していることは稀である。したがって、はじめに述べたように、強磁性体と反強磁性体がランダムに並んだものとなる。そのため、図8の×印で示したところのように、相互作用を満たすことのできないスピン配列が存在するようになる。このように相互作用を満たすことのできないスピン配列をフラストレーション(相互作用の競合)と呼び、フラストレーションの少ないスピン配列ほどエネルギーの小さい安定状態が得られる。
[1.4 仮想磁場漸弱法]
前述のように、ホップフィールドネットワークには一度エネルギーの谷に陥るとそこから抜け出せず、局所解(近似解)が求まるという問題点があった。この対策として、ボルツマンマシンやヒルクライミングタームが提案されていることは先に述べたが、近年、これに加えて新しく仮想磁場漸弱法が提案された。
仮想磁場漸弱法の動作原理を説明するにあたって、以下のような思考実験を考える。まず、図8のようなフラストレーションの少ない安定したスピンモデルに外部から強い磁場を加えてみよう。スピングラス理論によると、このような場合、スピンは外部磁場の向きに従うように方向を変化させるであろう。この状態から、磁場の大きさを少しずつ弱めていくと、スピン間の相互作用の強いところから順に各スピンの向きが変化し、最終的にハミルトニアンが小さく安定した状態に向かう(図9参照)。
さて、この思考実験をもとに考えられたものが、仮想磁場漸弱法である。ホップフィールドネットワークに強い仮想的な“磁場”を外部から加えると、スピンに対応するニューロンの状態が発火または静止になる。この状態から次第に仮想磁場の影響を弱めていくと各ニューロンの自由度が高まり、仮想的な磁場が消失した段階で通常のホップフィールドネットワークと等価となって、解が求められるというものである。表1で示したようにスピングラス理論の磁場はホップフィールドネットワークの閾値に対応するので、仮想磁場を変化させることは閾値を操作することと等価である。なお、原理としては、従来の擬似焼きなまし法に似ている点もあるが、温度パラメータではなく、磁場パラメータを操作する点が決定的にことなっている。具体的には、仮想磁場漸弱法がニューロンの閾値関数f(x)を左右に動かす手法であるのに対して、擬似焼きなまし法が閾値関数f(x)の傾きを変化させるという点で異なる。
[2.仮想磁場漸弱法による最適解探索]
本章では、前章で紹介した仮想磁場漸弱法の有効性について検討するため、クロスバ・スイッチ問題と呼ばれる組合せ最適化問題の中では特に制約条件の少ないものを取り上げて、計算機シミュレーションを行う。
[2.1 クロスバ・スイッチ問題とそのエネルギー関数の導出]
クロスバ・スイッチ問題とは、組合せ最適化問題の中でも特に条件の少ないと言われている問題で、「n×nのマスの中にn個の要素を縦あるいは横方向へ重ならないように配置する」というものである。もともとは、n人の発信者とn人の受信者の間を結ぶ、有線通信路における交換機を設定するものであった。この問題は組合せ最適化問題を解く上で基礎となる問題であり、スケジューリングなどに応用できる応用性のある問題でもある。
このクロスバ・スイッチ問題をホップフィールドネットワークに適した表現にすると、図10に示すようにn×nの行列状にニューロンを配置すればよい。このとき、最適解を求めるための制約条件は以下の2つである。
・条件1:それぞれの行(横の並び)には、“1”が1つだけ存在し、残りはすべて“0”とする。
・条件2:それぞれの列(縦の並び)には、“1”が1つだけ存在し、残りはすべて“0”とする。
時刻tにおける(x,y)のニューロンの出力をVxy(t)とおき、上述の2つの条件を満たした時にネットワークのエネルギーの値が0となるように、エネルギー関数E(t)を作ればよい。
まず、条件1であるが、これに関わるエネルギー関数をE1(t)とおくと、横方向のニューロンの出力の総和が1であればよいので、
Figure 2008269593
となる。また、同様にして、条件2に関わるエネルギー関数をE2(t)とおくと、縦方向のニューロンの出力の総和が1であればよいので、
Figure 2008269593
と表すことができる。
ここでA,Bを定数とすると、クロスバ・スイッチ問題のエネルギー関数E(t)は、
Figure 2008269593
である。ニューロンの結合荷重と閾値を求めるためにはこの式を展開して整理すればよい。
式(3.1)より、
Figure 2008269593
ここで、クロネッカーのデルタ
Figure 2008269593
を用いると、
Figure 2008269593
となるので、これを式(3.4)に代入して、
Figure 2008269593
となる。右辺第2項は式(3.5)よりa=xのときδxa=1となるので、
Figure 2008269593
よって、
Figure 2008269593
である。ところで、ここでニューロンの出力は“0”または“1”の2値であるため、
Figure 2008269593
としても構わない。したがって、式(3.7)は、
Figure 2008269593
と整理することができる。
式(3.2)についても、同様に変形すると、次のとおりである。
Figure 2008269593
ここで、式(3.11)と式(3.12)を式(3.3)に代入して整理し、クロスバ・スイッチ問題におけるエネルギー関数を求めると、
Figure 2008269593
となる。また、これをスピングラス理論におけるエネルギー関数の式(2.5)と比較すると、ニューロン(a,b)からニューロン(x,y)への結合荷重をwxy,abとし、ニューロン(x,y)の閾値をθxyとして、
Figure 2008269593
より
Figure 2008269593
Figure 2008269593
と求められる。
なお、式(3.13)の第3項目は、最適解が求められた時のエネルギーの値を0にするためのバイアス項であり、エネルギーの状態遷移には影響しない。
前述したように、仮想磁場漸弱法はスピングラス理論の磁場と等価である閾値を操作するものであるので、仮想磁場漸弱法を導入した場合のエネルギー関数は、磁場パラメータをθeとすると、
Figure 2008269593
Figure 2008269593
に従って状態遷移を行えばよい。このときのエネルギー関数は
Figure 2008269593
と表される。
図11は本実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークのブロック構成図である。
本実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークは、ホップフィールドネットワークを構成するニューロンの中から一のニューロンを選択するニューロン選択手段1と、このニューロン選択手段1で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段2と、時刻tに応じて磁場パラメータを求める磁場パラメータ付与手段3と、前記入力取得手段2により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段3で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段4と、ニューロンの状態を記録するニューロン状態記憶手段5とを備える。
前記磁場パラメータ付与手段3は、磁場パラメータの初期値が負であり、時刻の経過に伴って漸次大きくなって磁場パラメータが0となり、少なくとも1回は磁場パラメータが正の値となって再び0となるように磁場パラメータを求める機能を有する。例えば、式(3.21)により磁場パラメータを求める。なお、離散値となる繰り返し回数に応じた磁場パラメータの集合をメモリ上に予め用意し、繰り返し回数に応じて対応する磁場パラメータを出力する構成であってもよく、必ずしも式を用いる必要もない。また、式も磁場パラメータの初期値、繰り返し回数を与えると、2次元座標系でいうと2点の座標点(繰り返し回数=0、磁場パラメータ=初期値)、(繰り返し回数、磁場パラメータ=0)を与えることと同義となり、この座標点から自動的に式を生成し、生成した式を磁場パラメータ付与手段3が取り込み、ニューロン選択手段1、入力取得手段2、磁場パラメータ付与手段3及び出力ニューロン算出手段4を順次繰り返し回数だけ繰り返し実行し、最終的なニューロンの状態を利用者に出力する構成とすることもできる。そうすることで、利用者は磁場パラメータの初期値及び繰り返し回数を与えることで、自動的に最終的なニューロンの状態を得ることができ、適切な磁場パラメータの初期値及び繰り返し回数が与えられなくて問題を解くことができなかった場合であっても再度磁場パラメータの初期値及び繰り返し回数を与え、トライアンドエラーを繰り返して最終的に適切な磁場パラメータの初期値及び繰り返し回数を設定することができる。
前記出力ニューロン算出手段4は、式(3.17)に他のニューロンから選択されたニューロンへの入力及び磁場パラメータを代入してニューロンの出力を求める機能を有する。
ニューロン状態記憶手段5は、出力ニューロン算出手段4により求まったニューロンの出力を一時的に記憶し、全てのニューロンについてニューロンの出力が求まった時点で次の時刻のニューロンの出力に更新する機能を有する。
図12は本実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークを構築したコンピュータのハードウェア構成図の一例である。一般的なコンピュータに仮想磁場漸弱法を用いたホップフィールドネットワークを構築することができる。この一般的なコンピュータは、例えば、CPU101、メインメモリ102、MBチップセット103、ビデオカード104、HDD111、ブリッジ回路112、ネットワークインタフェース113、光学ドライブ121、キーボード122及びマウス123を含む。
図13は本実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークの動作フローチャートである。
ニューロン選択手段1が選択されていないニューロンの中から任意のニューロンを選択する(ステップS100)。入力取得手段2が、ニューロン選択手段1に選択されたニューロンへの入力を取得する(ステップS105)。磁場パラメータ付与手段3が、現在の繰り返し回数に応じた磁場パラメータを求める(ステップS110)。出力ニューロン算出手段4が入力取得手段2により取得された選択されたニューロンへの入力及び磁場パラメータ付与手段3により付与された磁場パラメータをニューロンの算出式に代入して現在選択されているニューロンの出力を求める(ステップS115)。ニューロン状態記憶手段5が出力ニューロン算出手段4が算出した選択されているニューロンの出力を一時的に記憶する(ステップS120)。ニューロン選択手段1が全てのニューロンを選択したか否かを判断し(ステップS125)、全てのニューロンを選択していない場合にはステップS100に戻り、全てのニューロンを選択している場合にはニューロン状態記憶手段5が一時記憶していた出力ニューロン算出手段4により算出されたニューロンの出力で現在のニューロンの状態を更新する(ステップS130)。現在の繰り返し回数が予め設定された所定回数を超えているか否かを判断し(ステップS135)、超えていないと判断した場合には繰り返し回数を1インクリメントしてステップS100に戻る。超えていると判断した場合には終了する。なお、繰り返し回数は利用者が与えるのではなく、ニューロンの状態が所定回数繰り返し実行しても変化しない場合に、繰り返し実行を停止する構成であってもよい。
次章以降においても、この図11ないし図13を用いた説明は同様であるため省略する。
[2.2 計算機シミュレーション]
前節で求めた状態遷移式とエネルギー関数を用いて計算機シミュレーションを行う。まず、定数A=B=1000とおき、繰り返し回数が10000[回]となるまで、式(3.17)に従ってニューロンの出力を更新する。なお、文献(Hiroshi Wakuya:"A new search method for combinatorial optimization problem inspired from the spin glass system"Abstracts of the 2nd International Conference on Brain-inspired Information Technology(BrainIT2005))において、磁場パラメータの与え方以外については開示されている。そこで、磁場パラメータの与え方について説示する。
[2.2.1 仮想磁場制御実験(1)〜一定の割合で変化させたとき〜]
また、繰り返し回数t=10000となるまで、以下の式に従ってニューロンの出力を更新する。
Figure 2008269593
これは、t=0のときθe(0)=−500とおき、t=5000のときθe(5000)=0となるようにするものである。また、ここでは乱数で決定した1000通りの異なる初期状態を用意し、領域数nを増減させたときの、仮想磁場漸弱法の導入前後の正答率を比較した。参考までに、とりうる組合せの総数と正解数およびその比率を表2に示す。ここで、とりうる組合せの総数は2n×n通り(n×nのマス目の上には、それぞれ“0”または“1”のどちらかが入るため、2の(n×n)乗通りの組合せが考えられる。)、正解の個数はn!通り(1行目のマスに“1”を1つだけ配置するのはn通り、それと同じ列に“1”が入らないように2行目のマスに“1”を1つだけ配置するのは(n−1)通り、・・・というように考えていくとn!通りの組合せが考えられる。)である。これによると、一般にnの増加とともに比率が減少し、正解を求めるのが困難になっていくことがわかる。なお、ここでは、式(3.20)で磁気パラメータを与えたが、初期値が負であり、繰り返し回数の増加に応じて大きくなり、最終的に0になる式であれば他の式であってもよい。
Figure 2008269593
次に計算機シミュレーションの結果を図14に示す。この図からもわかるように、従来のホップフィールドネットワークでは、領域数nが増加するにつれて正答率が下がっていくが、仮想磁場漸弱法を導入することによって、正答率が100[%]となることが確認できる。表2から、両手法とも正答率はnの増加とともに次第に低下していくと思われるが、さらに領域数nを増加させてn=80まで調べたところ、従来法では正答率が15[%]程度に低下してほぼ一定となったのに対し、提案法では正答率が100[%]を維持するという良好な結果を得た。
[2.2.2 仮想磁場制御実験(2)〜初期値の依存性について〜]
ここでは、t=5000の時に磁場パラメータが0となるように固定したまま、t=0における初期値θe(0)を変化させて、その影響について調べてみた。具体的には、式(3.21)に従って磁場パラメータを制御したときの正答率について上と同様に1000通りの異なる初期状態を用意して検討した。
Figure 2008269593
これは、図15に示すように磁場パラメータを変えていくものである。また、磁場パラメータの大きさによってネットワークへ及ぼす影響力が変化するため、どの程度の“外力”で効果が現れるのかを調べた。領域数nにより影響力の大きさも異なると予想されるため、ここではn=5,10,30について調べた。そのときの結果を図16に示す。
このとき、図16(a)によれば、磁場パラメータの初期値は広い範囲で正答率を改善させる効果が認められる。ここで、θe(0)≧−10000とし、さらに磁場パラメータの影響力を強めた場合についても調べたところ、正答率は100[%]となった。ただし、強力な仮想磁場を加えるということは、式(3.21)より閾値を極めて低く設定するということであり、初期の段階で全ニューロンが発火して“1”となってしまうことを意味する。すなわち、当初有していた多様な初期状態を排して、同一状態から開始するのと等価であり、1通りの解しか導くことができなくなる。したがって、正答率は100[%]か0[%]だけの2種類となる。また、図16(b)からは、θe(0)=−0.005という非常に小さい値でも効果を発揮することが確認できたが、θe(0)=−0.004では磁場パラメータの効果が消失し、従来法と同様の正答率となった。このように、磁場パラメータの効果の有無を隔てる範囲が小さいため、徐々に変化していく。
以上のことから、クロスバ・スイッチ問題においては、正答率は磁場パラメータの変化率には依存せず、そして、領域数nにかかわらず磁場パラメータの初期値がθe(0)≦−0.005であればよいことが判明した。
[2.2.3 仮想磁場制御実験(3)〜ニューロンの状態遷移について〜]
ここでは、各ニューロンの出力がどのように変化して正解に辿り着いているのかについて、上述のθe(0)=−500の場合を取り上げて調べてみた。図17にn=5のときのニューロンの状態遷移の一例を示すが、これによると、t=1でニューロンの出力が変化した以降は、仮想磁場が消失する直前のt=4999まで変化がない。そして、t=5000以降にいくつかのニューロンの出力が変化して、正解に辿り着いていることがわかる。このように、仮想磁場が0になった時点よりも後にニューロンの出力変化が認められる原因を追究するため、このときのθeの詳細な値について調べた。その結果、表3に示すように微小な値ではあるが、t=5000以降に磁場パラメータの値が正値となって残っていることが判明した。これは、式(3.20)の計算を10進数で行うと、ちょうど割り切れてt=5000の時に磁場パラメータθeが0となるが、コンピュータが2進数に基づいた演算を行っていることを考慮すると、実際には割り切れず、計算過程でわずかな誤差が累積されていき、最終的に磁場パラメータが正値になってしまった。そこで、このような状況にはならないようにt=5000の時に強制的にθe=0として、厳密な意味で式(3.20)を満足するようにして再び計算機シミュレーションを行ったところ、正答率は従来法と同様になり、仮想磁場漸弱法の効果が消失してしまうことが明らかになった。
Figure 2008269593
本章では、クロスバ・スイッチ問題という制約条件の少ない組合せ最適化問題において、仮想磁場漸弱法の有効性を確認することに主眼を置いて計算機シミュレーションを行った。ところで、この手法は仮想磁場を最初に負値として与えて徐々に増加させ、最終的には正値となるようにすることで、その効果を発揮していることが判明した。またこのとき、磁場パラメータの初期値は広い範囲で正答率を改善させる効果が認められたため、θe(0)の設定には、かなりの自由度がある。しかし、これはクロスバ・スイッチ問題の制約条件が少ないためとも考えられるので、次章では制約条件の多い組合せ最適化問題を取り上げ、磁場パラメータの効果的な与え方について、計算機シミュレーションを通して説示する。
本章では、クロスバ・スイッチ問題に仮想磁場漸弱法を適用した計算機シミュレーションを行った結果、正答率の著しい改善が認められた。その結果、仮想磁場漸弱法の有効性を確認することができた。なお、磁場パラメータを最終的に負値から一度正値とすることで、この効果が現れる。その詳細については次章で説示する。
[3.仮想磁場漸弱法における磁場パラメータの有効な決定法]
[3.1 エネルギー関数の導出]
前章では、クロスバ・スイッチ問題という制約条件の少ない組合せ最適化問題を取り上げ、これに仮想磁場漸弱法を導入した結果、磁場パラメータの初期値設定に関する自由度は大きく、負値から始めて最終的には符号が反転して正値になればよいことを確認した。そこで、同様のことが制約条件の増えた場合でも成立するかについて、nクィーン問題やナンバー・プレイス問題などの組合せ最適化問題を取り上げ、計算機シミュレーションを通して詳細に検討する。
まずここでは、[2.2 計算機シミュレーション]と同じように、上述の問題のエネルギー関数を求めてみることにする。そして、それぞれの問題を解くためのホップフィールドネットワークの構造を決定する。
[3.1.1 nクィーン問題の制約条件によるエネルギー関数の導出]
nクィーン問題とは、n×nの升目上に、チェスのコマであるクィーンn個を互いに効きが当たらないように配置する問題である。チェスのクィーンのコマは縦・横・斜め方向に何マスでも進めることができるので、nクィーン問題をホップフィールドネットワークに適した表現にすると、n×nの行列状にニューロンを配置し、クィーンを置く場所を“1”、それ以外を“0”とすればよい。このとき最適解を求めるための制約条件は以下の4つである。
・条件1:行列のそれぞれの行(横の並び)には、“1”が1つだけ存在し、残りはすべて0とする。
・条件2:行列のそれぞれの列(縦の並び)には、“1”が1つだけ存在し、残りはすべて0とする。
・条件3:行列のそれぞれの左上・右下の斜め方向には、“1”が1つだけで残りは“0”、あるいはすべて“0”とする。
・条件4:行列のそれぞれの左下・右上の斜め方向には、“1”が1つだけで残りは“0”、あるいはすべて“0”とする。
時刻tにおける(x,y)のニューロンの出力をVxy(t)とおき、上述の4つの条件をすべて満たした時にネットワークのエネルギーの値が0となるように、エネルギー関数E[nq](t)を作ればよい。まず条件1であるが、これに関わるエネルギー関数をE1 [nq](t)とおくと、横方向のニューロン出力の総和が1であればよいので、
Figure 2008269593
となる。同様にして、条件2に関わるエネルギー関数をE2 [nq]とおくと、縦方向のニューロンの出力の総和が1であればよいので、
Figure 2008269593
と表すことができる。ここまでは、2.2のクロスバ・スイッチ問題で言及した式(3.1)、(3.2)と同じであるが、ここではさらに条件3や条件4として、これに関わるエネルギー関数をE3 [nq](t)あるいはE4 [nq](t)とおくと、所定の方向に並んだ任意の2つのニューロン出力の積が0であればよいので、
Figure 2008269593
Figure 2008269593
と表される。なお、クロネッカーのデルタに着目すれば、式(4.3)よりx−a=y−bのときに値を持ち、これはxとyの増分に応じてaとbも増大する必要があり、左上・右下の斜め方向を指すことになる。同様に式(4.4)よりx+y=a+bのときに値を持ち、これはxやaの増分(減分)に応じてyやbが減少(増大)する必要があり、左下・右上の斜め方向を指すことになる。
前章でクロスバ・スイッチ問題のエネルギー関数を導出したようにして、nクィーン問題のエネルギー関数E[nq](t)を求めると、A、B、C、Dを定数として、
Figure 2008269593
となる。ただし、右辺第1項の(−2Cδx-a,y-b−2Dδx+y,a+b)という部分は、a≠xかつb≠yという条件のもとでのみ機能する。これを式(2.6)に示すハミルトニアンと比較すれば、結合荷重wxy,abと閾値θxyの値が求められる。
そして、磁場パラメータとしてθeを導入すると、nクィーン問題を解くホップフィールドネットワークは、
Figure 2008269593
Figure 2008269593
に従って、状態遷移を行えばよい。このときのエネルギー関数は、
Figure 2008269593
と表される。
[3.1.2 ナンバー・プレイス問題の制約条件によるエネルギー関数の導出]
ナンバー・プレイス問題とは、別名「数独」と呼ばれる「9×9の升目上に、縦・横各列と3×3の9個の正方形エリアに1から9の数字を重複しないように1つずつあてはめる」という問題のことである。広義には、「n×nの升目上に1からnまでの数字を縦・横重複しないように配置する」という場合にも用いられる。以下では、後者の意味として、この問題を扱うものとする。
このナンバー・プレイス問題をホップフィールドネットワークに適した表現にすると、図18に示すようにn×n×nの3次元状にニューロンを配置すればよい(武藤佳恭,“ニューラルコンピューティング”,コロナ社,1996)。ここで、x方向とy方向は従来の横方向と縦方向に対応するが、z方向(高さ方向)として、マス目に配置する数字に対応する情報を新たに用意する。例えば、(x,y)=(2,5)に“3”とおくのであればz=3の(2,5)要素を“1”とする。このとき、最適解を求めるための制約条件は以下の3つである。
・条件1:それぞれの行(横の並び)には、“1”が1つだけ存在し、残りはすべて“0”とする。
・条件2:それぞれの列(縦の並び)には、“1”が1つだけ存在し、残りはすべて“0”とする。
・条件3:それぞれの高さ方向には、“1”が1つだけで残りはすべて“0”とする。
時刻tにおける(x、y、z)のニューロンの出力をVxyz(t)とおき、上述の3つの条件をすべて満たした時、エネルギーの値が0となるように、エネルギー関数E[np](t)を作る。まず、条件1について、これに関わるエネルギー関数をE1 [np](t)とおくと、横方向のニューロン出力の総和が1であればよいので、
Figure 2008269593
となる。また、同様にして、条件2関わるエネルギー関数をE2 [np](t)とおくと、縦方向のニューロン出力の総和が1であればよいので、
Figure 2008269593
条件3に関わるエネルギー関数をE2 [np](t)とおくと、高さ方向のニューロン出力の総和が1であればよいので、
Figure 2008269593
と表すことができる。ここで、A、B、Cを定数とすると、ナンバー・プレイス問題のエネルギー関数E[np](t)は、
Figure 2008269593
となる。これを式(2.6)に示すハミルトニアンと比較すれば、結合荷重wxyz,abcと閾値θxyzの値が求められる。
そして、磁場パラメータとしてθe(t)を導入すると、ナンバー・プレイス問題を解くホップフィールドネットワークは、
Figure 2008269593
Figure 2008269593
に従って状態遷移を行えばよい。このときのエネルギー関数は
Figure 2008269593
と表される。
[3.2 計算機シミュレーション]
[3.2.1 実験方法]
前章で行ったクロスバ・スイッチ問題における計算機シミュレーションより、繰り返し回数は10000回より少なくても同様の結果を得られることが確認できた。そこで、ここでは計算時間を短縮するという目的から繰り返し回数tを30回としてニューロンの出力を更新する。このとき、乱数で決定した1000通りの初期値を用意して、領域数nを増加させたときの正答率を調べる。また、磁場パラメータの与え方による正答率の変化について検討するため、初期値θe(0)<0を変化させ、以下の3通りとしたときの結果を比較する。
Figure 2008269593
Figure 2008269593
Figure 2008269593
また、この(a)、(b)、(c)の磁場パラメータの変化を図示したものが図19である。
[3.2.2 実験結果(1)〜nクィーン問題のとき〜]
ここでは、nクィーン問題を取り上げるに当たり、斜め方向に関する制約条件を縦・横方向に関する制約条件よりも重視するため、定数A=B=1000、C=D=2000とおき、また上述の実験方法で磁場パラメータの初期値をθe(0)=−1として、計算機シミュレーションを行った。そのときの結果を図20に示す。この結果から、領域数n≦6の範囲では、(b)のような磁場パラメータの与え方が最も有効であるといえる。領域数nが大きくなった場合は、(c)のような磁場の与え方をした場合の方が全体的にみて正答率がよく、さらに(c)の場合は領域数nが大きくなっても最適解が求められている。また、(a)の磁場の与え方の正答率は、従来のホップフィールドネットワークと同様の結果となるため、仮想磁場漸弱法の有効性が消失してしまった。したがって、磁場パラメータは負値から始めて正方向に変化させることが重要であるといえる。
次に、磁場パラメータの初期値を変化させて、ネットワークへの影響を調べた結果、−1×103≦θe(0)≦−1×10-4の範囲では同様の正答率となった。このことから、nクィーン問題においても、磁場パラメータの初期値は広い範囲で正答率を改善させる効果のあることが認められた。換言すると、前章のクロスバ・スイッチ問題と同様に、θe(0)を設定する際は大きな自由度のあることが判明した。
[3.2.3 実験結果(2)〜ナンバー・プレイス問題のとき〜]
ここでは、ナンバー・プレイス問題を取り上げるに当たり、3つの制約条件を同等に扱うため、定数A=B=C=1000とおき、また上述の磁場パラメータの初期値をθe(0)=−1として、計算機シミュレーションを行った。このときの正答率は、従来のホップフィールドネットワークのときと同じで、変化が認められなかった。これは、磁場パラメータの初期値が小さく、ネットワークに及ぼす影響が小さかったためと考えられる。そこで、磁場パラメータの初期値を正答率に変化がみられるまで増加させていったところ、例えば、図21と図22に示すような結果が得られた。これらは、磁場パラメータの初期値をθe(0)=−10000、−15000とした場合で、両者とも(c)のような磁場パラメータの与え方をした場合に成績がよい。これは、領域数n=8においても最適解が求められていること、また正答率が全体的に(a)、(b)よりもよくなっているという2つの事実から明らかである。したがって、ナンバー・プレイス問題においても、やはり(c)のような磁場パラメータの与え方が効果的であるといえるだろう。
ところで、今回の計算機シミュレーションは、これまでの2つの組合せ最適化問題とは異なり、磁場パラメータの与え方を極端に強くしなければ効果を発揮することができなかった。これは、ナンバー・プレイス問題をニューラルネットワークで表現する際に、図18に示す通り3次元配列としたため、2次元配列で表現した場合よりも、磁場パラメータのネットワークに及ぼす影響力が弱くなってしまうためだと考えられる。そこで、領域数n=5の場合を例にとり、図23に磁場パラメータの初期値による正答率の変化を示す。このグラフからわかるように、磁場パラメータの値は小さすぎても効果はないが、反対に大きすぎると(c)のように正答率が0[%]となってしまう場合がある。前説したが、当初、多様性を示していたネットワークの初期状態にかかわらず、与える磁場パラメータの影響が強すぎると同一状態にそろってしまい、すべて同じ状態遷移をするためである。
[3.3 考察]
本実施形態では、計算機シミュレーションを通して検討した結果、仮想磁場漸弱法で用いる磁場パラメータは、負値から正値に変化させて与えることにより、その有効性が発揮できることを説示した。
また、今回は3通りの磁場パラメータの与え方を取り上げて検討を行った。
[4.結論]
本実施形態では、仮想磁場漸弱法において負の方向から0に向かって磁場パラメータを与えるという従来の発想を発展させ、負の方向から正の方向へ反転させて与えることで、著しい性能改善が達成できることを示した。また、3つの組合せ最適化問題を取り上げて、実際に組合せ最適解の探索を行うことにより、その有効性を説示した。
[5.動作メカニズム]
以下に、上記結論を導いた理由付けとして、仮想磁場漸弱法で用いる磁場パラメータによる動作の影響に着目し、解析的な手法を用いた検討を行った結果を示す。また、磁場パラメータを操作した際のエネルギー関数への影響についても、幾何学的な観点から検討した結果を示す。
[5.1 計算機シミュレーション]
ここでは、いくつかの組み合わせ最適化問題に対して、仮想磁場漸弱法を導入したホップフィールドネットワークを用いて、計算機シミュレーションによる解探索を行う。ニューロン出力の繰り返し計算回数は100回で、仮想磁場パラメータθは、図24に示すように、負値から正値に変化させ、その後、零に戻るような設定とする。この時のθe(t)を以下の式で定義する。
Figure 2008269593
また、ここでは乱数で決定した100通りの異なる初期状態を用意して領域数nを増減させたとき、仮想磁場漸弱法の導入前後で正答率がどのように変化するかを比較した。具体的には、クロスバ・スイッチ問題とnクイーン問題を取り上げ、シミュレーションした結果を図25に示す。上記にも示したが、クロスバ・スイッチ問題において2つの条件の重み付け係数をそれぞれA、Bとすると、エネルギー関数は以下のようになる。
Figure 2008269593
Figure 2008269593
Figure 2008269593
また、nクイーン問題において4つの条件の重み付け係数をそれぞれA、B、C、Dとすると、エネルギー関数は以下のようになる。
Figure 2008269593
Figure 2008269593
Figure 2008269593
ここで、A=B=100、C=D=200とした場合のそれぞれの問題をシミュレーションした。図25(a)はクロスバ・スイッチ問題の場合の結果であり、図25(b)はnクイーン問題の場合の結果である。図25(a)、(b)において、「導入前」とは仮想磁場漸弱法を導入していないホップフィールドネットワークによるシミュレーション結果であり、「導入後」とは仮想磁場漸弱法を導入したホップフィールドネットワークによるシミュレーション結果である。図25からわかる通り、どちらも従来(導入前)のホップフィールドネットワークでは、領域数nが増加するにつれて全体的に正答率は下がっていくが、仮想磁場漸弱法を導入することで正答率が改善されている。
[5.2 解析的手法による動作メカニズムの検討]
[5.2.1 クロスバ・スイッチ問題]
ここでは、磁場パラメータによる動作の影響について解析的な手法を用いて検討する。簡単のため、領域数nは3とし、(x,y)=(1,2)にのみ着目しているが、基本的に他の場合でも同様である。A=B=100、n=3、x=1、y=2なので、式(6.3)、(6,4)より、
Figure 2008269593
Figure 2008269593
となる。ただし、式(6.8)の右辺にはクロネッカーのデルタを含むため、
Figure 2008269593
である。一般に自己結合もないため
Figure 2008269593
となる。したがって、他のニューロンからの抑制性結合が実質的に働くのは、図26で■とした、「a=1∧b≠2」または「a≠1∧b=2」の部分である。そこで、これらをまとめると
Figure 2008269593
となる。ここでは仮想磁場パラメータの存在により、その値次第でニューロン(1,2)の発火と静止が決定される。したがって、ここでは発火に要する仮想磁場パラメータの大きさという観点からの検討を行う。このとき、ニューロンの出力は式(2.3)より、
Figure 2008269593
に従って更新されることになる。ただし、本実施系形態においては非同期式でニューロンの状態遷移を行うため、具体的には図27に示すタイミングで上に示した繰り返し計算を行う。すなわち、各時刻tをニューロンの個数nで等分し、便宜上、左上から右下に向かってニューロン1つずつに式(6.13)を適用していく。そして、右下まで1通り実行されると、時刻が1つ増加して、また左上から順番に式(6.13)を実行する。なお仮想磁場パラメータは、式(6.1)に示すとおり、時刻tの関数となっているので、繰り返し計算が1巡するまで同一の値を保持すると定める。
発火ニューロンがない場合、式(6.13)より
Figure 2008269593
となる。ここで、「1」を出力するためには、関数fの中身(200−θe)が0以上となれば良い。つまり、所定の領域に発火ニューロンがない場合に「1」を出力する条件はθe≦200で、θe>200のときは「0」を出力する。すなわち、このときの仮想磁場パラメータの臨界値θecは200である。
発火ニューロンが1個の場合、式(6.13)より
Figure 2008269593
となる。ここで、「1」を出力するためには、関数fの中身(0−θe)が0以上となれば良い。つまり、所定の領域に発火ニューロンが1個の場合に「1」を出力する条件はθe≦0で、このときの仮想磁場パラメータの臨界値θecは0である。
発火ニューロンが2個の場合、式(6.13)より
Figure 2008269593
となる。ここで、「1」を出力するためには、関数fの中身(−200−θe)が0以上となれば良い。つまり、所定の領域に発火ニューロンが2個の場合に「1」を出力する条件はθe≦200で、このときの仮想磁場パラメータの臨界値θecは−200である。同様に、発火ニューロンが3個、4個のときの磁場パラメータの臨海値はそれぞれ−400、−600となる。
このように、所定領域内の発火ニューロン数と、そのときに着目しているニューロンが発火する仮想磁場パラメータの臨界値をまとめたのが下記の表4である。左欄の数だけニューロンが発火していると、着目しているニューロンが発火するためには右欄の数値以下の仮想磁場が必要となっている。すなわち、所定領域内の発火ニューロンがない場合は、磁場パラメータθeが0から200の範囲にあれば着目しているニューロンは発火し、発火ニューロンが1個の場合は、磁場パラメータθeが−200から0の範囲にあれば発火する。以下2個〜4個の場合も同様である。
Figure 2008269593
この様子を模式的に表したものが図28で、灰色で塗られた領域であればニューロンが発火することを示している。換言すれば、仮想磁場パラメータによりこの灰色の領域がベルト状に上下し、仮想磁場が小さくなれば灰色の領域が増して、当該ニューロンが発火しやすくなることがわかる。さて、図28が単一のニューロンを表しているので、それを3×3に配置して、図26に示しているようなホップフィールドネットワークの各ニューロンと対応づけたとき、それぞれの状態遷移をまとめて図29のように表すことにする。図29中の○は当該ニューロンが静止状態であること、●は発火状態であることを表し、状態が変化したニューロンを丸印で囲んでいる。
図29において、初期状態t=0ではθe=50であるのため図29(a)のとおりであり、n=1となったとき、ニューロン(1,1)が発火から静止へと変化して図29(b)となる。このとき、同一の行と列にあるニューロンは受け取る発火ニューロン数が1つ減少して、矢印のとおり1段下方へ移動する。以下同様の手続きを繰り返し、n=2では変化なしで、n=3のときニューロン(1,3)が発火して図29(c)となり、この状態をしばらく維持する。t=26となったとき、仮想磁場パラメータθeが正となって臨界値を超え、灰色で示した発火領域のレベルが1段低下して図29(d)となる。これは、ちょうど図28(a)で示した状態である。そしてn=1のときは変化なしで、n=2のときニューロン(1,2)が静止して図29(e)となり、n=4のときニューロン(2,1)が静止して図29(f)、n=5のときニューロン(2,2)が発火して図29(g)となり、再びこの状態をしばらく維持する。t=75となったとき、仮想磁場パラメータθeが零となって臨界値を超え、灰色で示した発火領域のレベルが1段上昇して図29(h)となる。これは、ちょうど図28(b)で示した状態である。そして、これはちょうど条件を満たした状態のため、そのまま変化は生じず、解探索は終了してt=100で解が求まる。
[5.2.2 nクイーン問題]
クロスバ・スイッチ問題と同様にして、nクイーン問題について検討する。簡単のため、領域数nは4とし、(x,y)=(1,2)にのみ着目しているが、基本的に他の場合でも同様である。ここで、A=B=100、C=D=200、n=4、x=1、y=2なので、式(6.6)、(6.7)より、
Figure 2008269593
Figure 2008269593
となる。ただし、式(6.17)の右辺にはクロネッカーのデルタを含むため、
Figure 2008269593
となるのは、次の4つの条件を同時に満たすときである。すなわち、
1.第1項(1−δ1a)δ2b=0よりa=1∨b≠2
2.第2項(1−δ2b)δ1a=0よりa≠1∨b=2
3.第3項δ1-a,2-b=0より1−a≠2−b ∴a≠b−1
4.第4項δ1+2,a+b=0より1+2≠a+b ∴a+b≠3
である。一般に自己結合もないので、
Figure 2008269593
となる。したがって、他のニューロンからの抑制性結合が実質的に働くのはこれ以外の部分であり、ド・モルガンの定理を用いると、図30に示すとおりである。このうち、「a≠1∧b=2」または「a=1∧b≠2」を満たす部分と、「a=b−1」または「a+b=3」のいずれかで「a≠1∧b≠2」を満たす部分では値が異なる。そこで、これらをまとめると、
Figure 2008269593
となる。ここでも仮想磁場パラメータにより、その値次第でニューロン(1,2)の発火と静止が決定される。したがって、ここでは発火に要する仮想磁場パラメータの大きさという観点からの検討を行う。このとき、ニューロンの出力は式(2.3)より、
Figure 2008269593
に従って更新されることになる。ただし、クロスバ・スイッチ問題の場合と同様、ここでも非同期式でニューロンの状態遷移を行うため、図27のようなタイミングで上に示した繰り返し計算を行う。
発火ニューロンがない場合、式(6.22)より、
Figure 2008269593
となる。ここで、「1」を出力するためには、関数fの中身(200−θe)が0以上となれば良い。つまり、所定の領域に発火ニューロンがない場合に「1」を出力する条件はθe≦200で、θe>200のときは「0」を出力する。すなわち、このときの仮想磁場パラメータの臨界値θecは200である。
発火ニューロンが縦または横方向に1個の場合、式(6.22)より、
Figure 2008269593
となる。ここで、「1」を出力するためには、関数fの中身(0−θe)が0以上となれば良い。つまり、所定の領域に発火ニューロンが縦または横方向に1個の場合に「1」を出力する条件はθe≦0で、このときの仮想磁場パラメータの臨界値θecは0である。
発火ニューロンが斜め方向に1個の場合、式(6.22)より、
Figure 2008269593
となる。ここで、「1」を出力するためには、関数fの中身(−200−θe)が0以上となれば良い。つまり、所定の領域に発火ニューロンが斜め方向に1個の場合に「1」を出力する条件はθe≦−200で、このときの仮想磁場パラメータの臨界値θecは−200である。
発火ニューロンが縦または横方向に2個の場合、式(6.22)より、
Figure 2008269593
となる。ここで、「1」を出力するためには、関数fの中身(−200−θe)が0以上となれば良い。つまり、所定の領域に発火ニューロンが縦または横方向に2個の場合に「1」を出力する条件はθe≦200で、このときの仮想磁場パラメータの臨界値θecは−200である。
発火ニューロンが縦または横方向に1個、さらに斜め方向に1個の場合、式(6.22)より、
Figure 2008269593
となる。ここで、「1」を出力するためには、関数fの中身(−400−θe)が0以上となれば良い。つまり、所定の領域に発火ニューロンが縦または横方向に1個、さらに斜め方向に1個の場合に「1」を出力する条件はθe≦−400で、このときの仮想磁場パラメータの臨界値θecは−400である。
このように、所定領域内で縦、横方向あるいは斜め方向の発火ニューロン数と、そのときに着目しているニューロンが発火する仮想磁場パラメータの臨界値をまとめたのが下記の表5である。左欄の数だけニューロンが発火していると、着目しているニューロンが発火するためには右欄の数値以下の仮想磁場が必要となっている。すなわち、所定領域内に発火ニューロンがない場合は、磁場パラメータが0から200の範囲にあれば着目しているニューロンは発火し、発火ニューロンが縦、横方向に1個の場合は、仮想磁場パラメータが−200から0の範囲にあれば発火する。以下同様に発火ニューロン数と仮想磁場パラメータが関連付いている。
Figure 2008269593
この様子を模式的に表したのが図31で、灰色で塗られた領域であればニューロンが発火することを示している。換言すれば、仮想磁場パラメータによりこの灰色の領域が増減し、仮想磁場が小さくなれば灰色の領域が増して、当該ニューロンが発火しやすくなることがわかる。なお、これは図28を元にして2次元に拡張したものである。
さて、図31が単一のニューロンを表しているので、それを4×4に配置して、図30に示しているようなホップフィールドネットワークの各ニューロンと対応付けたとき、それぞれの状態遷移をまとめて図32のように表すことにする。図32中の○は当該ニューロンが静止状態であることを、●は発火状態であることを表し、状態が変化したニューロンを丸印で囲んでいる。
図32において、初期状態t=0ではθe=−50のため図32(a)のとおりであり、この状態をしばらく維持する。t=26となったとき、仮想磁場パラメータθeが正となって臨界値を超え、灰色で示した発火領域が減少して図32(b)となる。これはちょうど、図31(a)で示した状態である。そしてn=1のとき、ニューロン(1,1)が発火から静止へ変化して図32(c)となる。このとき、同一の行と列及び斜め方向にあるニューロンは受け取る発火ニューロン数が1つ減少して、それぞれ矢印のとおり下あるいは左へ移動する。以下同様の手続きを繰り返し、n=8のときニューロン(2,4)が静止して図32(d)となり、t=27でn=3のときニューロン(1,3)が発火して図32(e)となり、この状態をしばらく維持する。t=75となったとき、仮想磁場パラメータθeが零となって臨界値を超え、灰色で示した発火領域が増加して図32(f)となる。これはちょうど図31(b)で示した状態である。そして、n=5のときニューロン(2,1)が発火して図32(g)となり、n=14のときニューロン(4,2)が発火して図32(h)となり、t=76でn=13のときニューロン(4,1)が静止して図32(i)となる。そして、これはちょうど条件を満たした状態のため、そのまま変化は生じず、解探索は終了してt=100で解が求まる。
[5.3 エネルギー関数の形状に基づいた動作メカニズムの検討]
以下に、磁場パラメータを変えることで、どのようにして局所解から抜け出したのかをエネルギー関数という観点から検討する。
一例として、ここではクロスバ・スイッチ問題について検討する。なお当然のことながら、nクイーン問題においても同様の議論が成り立つ。まず図29の状態遷移をニューロンの発火を「1」、静止を「0」として描き直したものが図33であり、状態が変化したニューロンを丸印で囲んでいる。また、それぞれの状態で、仮想磁場パラメータθeが50、0、−50のときのエネルギー関数
Figure 2008269593
Figure 2008269593
を求め、描き分けたものが図34である。これは、図5の形状を実際に求めたものに相当する。
まずθe=50でt=0に動作を開始すると、横軸であるネットワークの状態Vが(a)の状態から(c)の状態になるまで斜面を降下する。その後、θeが増加してt=26で正値となった時点でエネルギー関数の形状が谷から山へと変わり、再び動き始めて状態(d)、状態(e)を経て状態(f)に到達し、t=76のときにθe=0となるのを待って解が得られたと解釈できる。
なお本来であれば、ホップフィールドネットワークはエネルギーが低くなる状態を探索して状態遷移を繰り返すはずであるが、ここでは簡単のため、これとは反対にホップフィールドネットワークの状態からエネルギーを算出し、減少していることを確かめている。
ところで前述したとおり、組み合わせ最適化問題におけるエネルギー局所解を回避する方法がこれまでにもいくつか提案されている。まず、擬似焼きなまし法であるが、これは、温度パラメータを高く設定することで"起伏がなだらかな状態"にしておき、ネットワークの探索範囲を広くする。その後、徐々に低くすることで元の形状に戻していき、その過程でエネルギーの低い領域に向かって探索範囲を狭め、解を求めるというものである。実際は本来の形状をしたエネルギー関数にノイズを付加して、徐々に弱めていくのであるが、定性的にはこのように解釈しても問題ないであろう。これに類似したヒルクライミングタームは、人為的にニューロン出力を反転させるため、文字通り山を登って飛び越えるものである。このようにしてみると、エネルギーの形状自体を変化させる仮想磁場漸弱法は、他のいずれの手法とも異なっていることは明らかである。
[5.4 動作メカニズムの検討における考察]
本章(5.動作メカニズム)において、クロスバ・スイッチ問題及びnクイーン問題の解探索を通して、その動作メカニズムについての検討を行った。仮想磁場漸弱法とは、他のニューロンからの信号の荷重和と閾値の関係によって当該ニューロンの出力を決定する際に、仮想磁場パラメータに対応する閾値を操作することでニューロンの出力制限を変えるというものである。その仮想磁場パラメータには、表4、表5で示したように、ニューロン出力が変わる臨界値が存在する。
また、仮想磁場パラメータを正へ振らせることで正答率が上がったのは、臨界値を超えてニューロンの発火のしやすさが変わったためである。
nクイーン問題については、100%の正答率を得ることができなかったが、これは局所解から抜け出すことができる磁場パラメータの臨界値に至らなかったためであると思われる。従って、仮想磁場パラメータの臨界値を事前に考慮して有効なパラメータ設定を行うことで高い正答率を得ることができると思われる。
[5.5 動作メカニズムの検討における結論]
メカニズムについて詳細な検討を行った結果、仮想磁場パラメータにはニューロン出力が変わる臨界値が存在することが明らかとなり、仮想磁場パラメータの極性を反転することで正答率が改善されたのは、臨界値を超えることでニューロンの発火のしやすさが変わったためであることが解明された。また、エネルギー関数という観点から仮想磁場漸弱法の動作メカニズムを検討した結果、仮想磁場パラメータを操作することでエネルギー関数の形状が変化し、その結果として局所解から抜け出し、最適解に到達していることが明らかとなった。
(本発明の第2の実施形態)
[ニューロンの出力の反転]
前説したようにクロスバ・スイッチ問題においての制約条件は次の通りであった。
・条件1:それぞれの行(横の並び)には、“1”が1つだけ存在し、残りはすべて“0”とする。
・条件2:それぞれの列(縦の並び)には、“1”が1つだけ存在し、残りはすべて“0”とする。
ここで、クロスバ・スイッチ問題の解答を得るという目的は変えず、次のように制約条件を変更した。
・条件1:それぞれの行(横の並び)には、“0”が1つだけ存在し、残りはすべて“1”とする。
・条件2:それぞれの列(縦の並び)には、“0”が1つだけ存在し、残りはすべて“1”とする。
このように制約条件を変更した場合であっても、同様にクロスバ・スイッチ問題を解けることは明らかである。同様のニューロン状態を得たいのであれば、新たな制約条件の下で求めたニューロン状態を最後に全て反転させればよい。
そうすると、ホップフィールドネットワークを含むニューラルネットワークにおいてニューロンの出力を反転することが可能である。ただし、新しい制約条件で仮想磁場漸弱法を用いたホップフィールドネットワークを実現するためには、式(3.1)及び式(3.2)はそれぞれ次の通りとなる。
Figure 2008269593
Figure 2008269593
そして、新しい制約条件を満たしたときに、次のEが0となるようにする。
Figure 2008269593
このエネルギー関数を展開して同様にニューロンの出力の算出式を求める。そして、このニューロンの出力の算出式を用いて、状態遷移を繰り返すことでクロスバ・スイッチ問題を解く。
上記ニューロンの出力の反転を用いてクロスバ・スイッチ問題を解いた場合の計算機シミュレーションの結果が図35である。仮想磁場漸弱法を用いないホップフィールドネットワークは領域数nの増加にともない正答率が低下する。一方、仮想磁場漸弱法を用いたホップフィールドネットワークで且つニューロンの出力の反転を適用した場合には、正答率が領域数によって変化せず常に100[%]を維持している。よって、ニューロンの出力を反転した仮想磁場漸弱法を用いたホップフィールドネットワークによって高い正解率でクロスバ・スイッチ問題を解けることが確認された。前記第1の実施形態と同様に、ナンバー・プレイス問題についても計算機シミュレーションを行った。シミュレーションの条件は次の通りである。
・ニューロンの状態を更新する繰り返し計算回数:20回
・乱数で決定した1000[通り]の初期状態を用意
・領域数nを増やしたときの正答率を調べる
このシミュレーション条件におけるナンバー・プレイス問題の結果は図36の通りである。仮想磁場漸弱法を用いたホップフィールドネットワークにおいてニューロンの出力を反転させた場合も、ニューロンの出力を反転させない場合に劣ることない正答率を維持しているだけでなく、若干上回っている。
さらに、t=0で磁場パラメータθe=0とした場合と、t=11でθe<0、t=12でθe=0とした場合での対比も行った(図37(a)参照)。その結果は図37(b)である。この結果から磁場パラメータの与え方として、繰り返し回数にともなって正から0へ、0から負へ、負から0へ遷移する磁場パラメータの与え方が望ましいことがわかる。
(その他の実施形態)
[1 結合荷重の算出]
第1の実施形態で示したように、ネットワークの状態とエネルギーの関係を検討することで本発明の仮想磁場漸弱法を用いたホップフィールドネットワークは、エネルギー関数の形状を変化させるような動きをしていたことがわかる。第1の実施形態及び第2の実施形態においては、閾値θの値に着目して操作を行ったが、本実施形態では結合荷重wを変化させる。すなわち、式(1.2)及び式(1.3)において、結合荷重係数kにより結合荷重を変化させる。
図38は、本実施形態に係るホップフィールドネットワークのブロック構成図である。第1の実施形態と異なる点は、磁場パラメータ出力手段3を備えていない点と、結合荷重算出手段6を備える点である。
結合荷重算出手段6は、入力取得手段2で取得したニューロンとニューロン選択手段1で選択したニューロン間の結合荷重を算出する処理を行う。結合荷重には結合荷重係数が与えられ(式(1.2)におけるk)、その結合荷重係数を変化させて算出する。そして、算出した結合荷重に基づいてニューロンの出力値が算出される。
なお、結合荷重係数は、ニューロンごとに重み付けをし(例えば、ニューロン間の距離等)、その重み付けに基づいて各ニューロンごとに変化させるようにしてもよいし、全てのニューロン間に一律に同じ値を与えるようにしてもよい。
また、結合荷重係数算出手段6は、ニューロン間の結合係数が予め登録された結合荷重係数データ(図示しない)に基づいて結合荷重を算出してもよい。
さらに、図38において、図11と同様に磁場パラメータ出力手段3を備える構成としてもよい。その場合には、結合荷重及び/又は磁場パラメータによりネットワークのエネルギーを緻密に制御することができるため、様々な組み合わせ最適化問題に対応することができる可能性がある。例えば、組み合わせ最適化問題の種類や複雑さの度合いに応じて結合荷重及び/又は磁場パラメータの変化を加えることで、従来は正答率が低かった問題についても正答率を上げることができる可能性がある。
さらにまた、磁場パラメータ出力手段3を備える構成とした場合には、磁場パラメータの出力値をθ=0に固定しておいてもよい。
図39は、本実施形態に係るホップフィールドネットワークの動作フローチャートである。ニューロン選択手段1が選択されていないニューロンの中から任意のニューロンを選択する(ステップS100)。入力取得手段2が、ニューロン選択手段1に選択されたニューロンへの入力を取得する(ステップS105)。結合荷重算出手段6が、選択されたニューロンと他のニューロン間の結合荷重を結合荷重係数に基づいて算出する(ステップS106)。出力ニューロン算出手段4が入力取得手段2により取得された選択されたニューロンへの入力、及び、結合荷重算出手段6により算出された結合荷重をニューロンの算出式に代入して現在選択されているニューロンの出力を求める(ステップS115)。ステップS120以降の処理については、第1の実施形態と同様であるため説明は省略する。
なお、図39において、図13と同様に磁場パラメータ出力手段3を備える場合には、ステップS110の磁場パラメータを求める処理を、ステップS106の結合荷重を算出する処理の後に入れてもよい。そうすることで、上述したように、結合荷重及び/又は磁場パラメータによりネットワークのエネルギーを緻密に制御することができるため、様々な組み合わせ最適化問題に対応することができる可能性がある。
さらにまた、磁場パラメータを求める処理を含める場合には、磁場パラメータの出力値をθ=0として求めるようにしてもよい。
[2 実験結果]
[2−1 クロスバ・スイッチ問題の場合]
図40は、クロスバ・スイッチ問題における正答率の変化を示すグラフである。図40(a)は、時間tにおける結合荷重係数kの値を示したグラフであり、k=1.0を中心にk=0.1からk=1.1までの値に変化させている。なお、ここでは、段階的にkの値を変化させたが、連続的に変化させても同様の結果が得られるはずである。図40(b)は、従来法と結合荷重係数kを変化させた場合との正答率の変化を示す。従来法はk=1と固定したままで、通常のホップフィールネットワークと同じである。
グラフから明らかなように、結合荷重係数kを変化させた場合は領域数nが10になった場合でも正答率が100%であるのに対し、従来法では15%〜20%を推移している。これは結合荷重係数kを変化させた場合には顕著な効果が認められることを示しており、第1の実施形態の場合と同等の効果を示していることがわかる。
[2−2 nクイーン問題の場合]
図41は、nクイーン問題における正答率の変化を示すグラフである。図41(a)は、図40(a)と同様に、時間tにおける結合荷重係数kの値を示したグラフであり、k=1.0を中心にk=0.1からk=1.1までの値に変化させている。なお、ここでは、段階的にkの値を変化させたが、連続的に変化させても同様の結果が得られるはずである。図41(b)は、従来法と結合荷重係数kを変化させた場合との正答率の変化を示す。従来法はk=1と固定したままで、通常のホップフィールネットワークと同じである。
nクイーン問題の場合は、クロスバ・スイッチ問題ほどの顕著な効果は見られなかったが、領域数n=6以外は全ての領域数において従来法より高い正答率となった。つまり、結合荷重係数kを変化させることで、一定の効果が認められたことを示している。
[3 考察]
磁場パラメータを含む閾値θ以外に、結合荷重wを操作した場合にもθを操作した場合と同様の結果を得ることができることが説示された。
[4 結論]
仮想磁場漸弱法を用いたホップフィールドネットワークは、エネルギー関数の形状を変化させるような動きをしていることから、結合荷重wを操作した場合も著しい性能改善が達成できることを示した。また、クロスバ・スイッチ問題については領域数が増えても正答率100%を維持するという顕著な効果が示され、nクイーン問題についても一定の効果があることが示された。
以上の前記各実施形態により本発明を説明したが、本発明の技術的範囲は実施形態に記載の範囲には限定されず、これら各実施形態に多様な変更又は改良を加えることが可能である。そして、かような変更又は改良を加えた実施の形態も本発明の技術的範囲に含まれる。このことは、特許請求の範囲及び課題を解決する手段からも明らかなことである。
ニューロンの基本的な構造図である。 一般的なニューロンのモデルである。 相互結合型ニューラルネットワークの構造である。 スピングラス理論とホップフィールドネットワークの包含関係を示す図である。 ホップフィールドネットワークのエネルギーのグラフである。 温度パラメータによるシグモイド関数の形状のグラフである。 強磁性秩序状態(a)と反強磁性秩序状態(b)を示す図である。 一般のスピングラスモデルである。 外部磁場を印加したときのスピングラスモデルである。 クロスバ・スイッチ問題のニューロ表現(n=4の場合)である。 本発明の第1の実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークのブロック構成図である。 本発明の第1の実施形態に係るコンピュータのハードウェア構成図である。 本発明の第1の実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークの動作フローチャートである。 領域数nによる正答率の変化のグラフである。 初期値を変化させたときの磁場パラメータの与え方である。 磁場パラメータの初期値θe(0)の違いによる正答率の変化である。 領域数n=5におけるニューロンの状態遷移の一例である。 ナンバー・プレイス問題のニューロンの配置である。 仮想磁場制御法の3つの例(模式図)である。 磁場パラメータの与え方による正答率の変化−nクィーン問題の場合である。 磁場パラメータの与え方による正答率の変化−ナンバープレイス問題の場合である。 磁場パラメータの与え方による正答率の変化−ナンバープレイス問題の場合である。 磁場パラメータの初期値による正答率の変化(n=5)である。 磁場パラメータの与え方を示す図である。 仮想磁場漸弱法の導入前後の正答率を変化を示す図である。 ニューロンの出力決定に関係する部分の一例を示す図である(クロスバ・スイッチ問題)。 各ニューロンの状態遷移を行うタイミングを示す図である。 発火ニューロン数、仮想磁場パラメータ及びニューロン出力の関係を示す図である(クロスバ・スイッチ問題)。 クロスバ・スイッチ問題の出力変化を示す図である。 ニューロンの出力決定に関係する部分の一例を示す図である(nクイーン問題)。 発火ニューロン数、仮想磁場パラメータ及びニューロン出力の関係を示す図である(nクイーン問題)。 nクイーン問題の出力変化を示す図である。 クロスバ・スイッチ問題におけるニューロンの状態遷移の一例を示す図である。 ネットワークの状態とエネルギーの関係を示すグラフである。 領域数nによる正答率の変化のグラフである。 領域数nによる正答率の変化のグラフである。 磁場パラメータの与え方及び領域数nによる正答率の変化のグラフである。 本発明のその他の実施形態に係るホップフィールドネットワークのブロック構成図である。 本発明のその他の実施形態に係るホップフィールドネットワークの動作フローチャートである。 クロスバ・スイッチ問題における荷重結合係数及び正答率の変化を示すグラフである。 nクイーン問題における荷重結合係数及び正答率の変化を示すグラフである。
符号の説明
1 ニューロン選択手段
2 入力取得手段
3 磁場パラメータ付与手段
4 出力ニューロン算出手段
5 ニューロン状態記憶手段
10 コンピュータ
101 CPU
102 メインメモリ
103 MBチップセット
104 ビデオカード
111 HDD
112 ブリッジ回路
113 ネットワークインタフェース
121 光学ドライブ
122 キーボード
123 マウス

Claims (13)

  1. すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、
    任意のニューロンを選択するニューロン選択手段と、
    当該ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、
    時刻に応じた磁場パラメータを求める磁場パラメータ付与手段と、
    前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、
    前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、
    前記磁場パラメータ付与手段は、磁場パラメータの初期値が負であり、時刻の経過に伴って漸次大きくなって磁場パラメータが0となり、少なくとも1回は磁場パラメータが正の値となって再び0となるように磁場パラメータを求めるホップフィールドネットワーク。
  2. 前記磁場パラメータ付与手段は、磁場パラメータが0となり、正の値となって再び0となる時刻を繰り返し実行の終了時点とする
    前記請求項1に記載のホップフィールドネットワーク。
  3. 前記磁場パラメータ付与手段は、時刻の経過に伴って磁場パラメータの絶対値を小さくしながら負と正を順次繰り返すように磁場パラメータを求める
    前記請求項1に記載のホップフィールドネットワーク。
  4. すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、
    任意のニューロンを選択するニューロン選択手段と、
    当該ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、
    時刻に応じた磁場パラメータを求める磁場パラメータ付与手段と、
    前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、
    前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、
    前記磁場パラメータ付与手段は、磁場パラメータの初期値が正であり、時刻の経過に伴って漸次小さくなって磁場パラメータが0となるように磁場パラメータを求めるホップフィールドネットワーク。
  5. 前記磁場パラメータ付与手段は、磁場パラメータが0となる時刻を繰り返し実行の終了時点またはその近傍とする
    前記請求項4に記載のホップフィールドネットワーク。
  6. 前記磁場パラメータ付与手段は、磁場パラメータが0となった後に、少なくとも1回は磁場パラメータが負の値となって再び0となる
    前記請求項4に記載のホップフィールドネットワーク。
  7. 前記磁場パラメータ付与手段は、磁場パラメータが0となり、負の値となって再び0となる時刻を繰り返し実行の終了時点またはその近傍とする
    前記請求項6に記載のホップフィールドネットワーク。
  8. 前記磁場パラメータ付与手段は、時刻の経過に伴って磁場パラメータの絶対値を小さくしながら正と負を順次繰り返すように磁場パラメータを求める
    前記請求項4に記載のホップフィールドネットワーク。
  9. 請求項1ないし8のいずれかに記載のホップフィールドネットワークにおいて、
    前記ニューロン選択手段で選択されたニューロン及び前記入力取得手段で取得した他のニューロンとの結合荷重を算出する結合荷重算出手段を備え、
    前記ニューロン選択手段、入力取得手段、結合荷重算出手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、
    前記結合荷重算出手段が、前記結合荷重に関する任意の結合荷重係数に基づいて、前記結合荷重を変化させて算出することを特徴とするホップフィールドネットワーク。
  10. 請求項9に記載のホップフィールドネットワークにおいて、
    前記結合荷重算出手段が、前記ニューロン選択手段で選択されたニューロンと当該選択されたニューロン以外のニューロンとの結合状態に基づいて、各ニューロンごとに重み付けをして結合荷重係数を求めることを特徴とするホップフィールドネットワーク。
  11. すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、
    任意のニューロンを選択するニューロン選択手段と、
    前記ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、
    前記ニューロン選択手段で選択されたニューロン及び前記入力取得手段で取得した他のニューロンとの結合荷重を算出する結合荷重算出手段と、
    前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び前記結合荷重算出手段により算出した結合荷重に基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、
    前記ニューロン選択手段、入力取得手段、結合荷重算出手段及び出力ニューロン算出手段を順次繰り返し実行し、
    前記結合荷重算出手段が、前記結合荷重に関する任意の結合荷重係数に基づいて、前記結合荷重を変化させて算出することを特徴とするホップフィールドネットワーク。
  12. 請求項11に記載のホップフィールドネットワークにおいて、
    時刻に応じた磁場パラメータを求める磁場パラメータ付与手段を備え、
    前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力、前記結合荷重算出手段により算出した結合荷重及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、
    前記ニューロン選択手段、入力取得手段、結合荷重算出手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行することを特徴とするホップフィールドネットワーク。
  13. 請求項12に記載のホップフィールドネットワークにおいて、
    前記結合荷重算出手段が、前記ニューロン選択手段で選択されたニューロンと当該選択されたニューロン以外のニューロンとの結合状態に基づいて、各ニューロンごとに重み付けをして結合荷重係数を求めることを特徴とするホップフィールドネットワーク。
JP2008087189A 2007-03-28 2008-03-28 ホップフィールドネットワーク Expired - Fee Related JP5207289B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008087189A JP5207289B2 (ja) 2007-03-28 2008-03-28 ホップフィールドネットワーク

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007085879 2007-03-28
JP2007085879 2007-03-28
JP2008087189A JP5207289B2 (ja) 2007-03-28 2008-03-28 ホップフィールドネットワーク

Publications (2)

Publication Number Publication Date
JP2008269593A true JP2008269593A (ja) 2008-11-06
JP5207289B2 JP5207289B2 (ja) 2013-06-12

Family

ID=40048937

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008087189A Expired - Fee Related JP5207289B2 (ja) 2007-03-28 2008-03-28 ホップフィールドネットワーク

Country Status (1)

Country Link
JP (1) JP5207289B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0476659A (ja) * 1990-07-13 1992-03-11 Toshiba Corp ニューラルネット
JPH07152715A (ja) * 1993-12-01 1995-06-16 Fujitsu Ltd ホップフィールド型ニューラルネットワークを用いたパターン学習装置,及び、パターン想起装置
JPH0877132A (ja) * 1994-08-31 1996-03-22 Victor Co Of Japan Ltd 相互結合型ニューラルネットワークの学習方法
JP2001075938A (ja) * 1999-08-19 2001-03-23 Masa Tou 情報処理方式及び装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0476659A (ja) * 1990-07-13 1992-03-11 Toshiba Corp ニューラルネット
JPH07152715A (ja) * 1993-12-01 1995-06-16 Fujitsu Ltd ホップフィールド型ニューラルネットワークを用いたパターン学習装置,及び、パターン想起装置
JPH0877132A (ja) * 1994-08-31 1996-03-22 Victor Co Of Japan Ltd 相互結合型ニューラルネットワークの学習方法
JP2001075938A (ja) * 1999-08-19 2001-03-23 Masa Tou 情報処理方式及び装置

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CSNG200100754009; 唐 政, 他4名: 'ホップフィールドネットワークにおける山登り学習法' 電子情報通信学会論文誌 第J83-A巻, 第3号, 20000325, p.319-331, 社団法人電子情報通信学会 *
JPN6012039251; Hiroshi Wakuya: 'A new search method for combinatorial optimization problem inspired by the spin glass system' International Congress Series vol.1291, 20060609, p.201-204 *
JPN6012056843; 唐 政, 他4名: 'ホップフィールドネットワークにおける山登り学習法' 電子情報通信学会論文誌 第J83-A巻, 第3号, 20000325, p.319-331, 社団法人電子情報通信学会 *
JPN7012003030; 宮崎 真梨, 他1名: '仮想磁場漸弱法における磁場パラメータ制御法-組み合わせ最適化問題の効率的な解探索を目指して-' 第3回人工頭脳工学シンポジウム講演論文集 , 20070304, p.12-13, 佐大Brain2006プロジェクト事務局 *
JPN7012003031; 宮崎 真梨: '仮想磁場漸弱法を用いた組み合わせ最適解探索時の磁場パラメータ制御法' 平成18年度 学士論文発表会アブストラクト , 20070219, 国立大学法人佐賀大学 *

Also Published As

Publication number Publication date
JP5207289B2 (ja) 2013-06-12

Similar Documents

Publication Publication Date Title
Rajendran et al. Low-power neuromorphic hardware for signal processing applications: A review of architectural and system-level design approaches
Katagiri et al. Genetic network programming-application to intelligent agents
Noothigattu et al. Interpretable multi-objective reinforcement learning through policy orchestration
Taiji et al. Dynamics of internal models in game players
Curran et al. Using PCA to efficiently represent state spaces
Mousavi et al. Applying q (λ)-learning in deep reinforcement learning to play atari games
Yang et al. DDPG with meta-learning-based experience replay separation for robot trajectory planning
JP5207289B2 (ja) ホップフィールドネットワーク
Suzuki et al. Cyclic coevolution of cooperative behaviors and network structures
KR20080052940A (ko) 게임 캐릭터 제어방법
Akinci et al. Evolving recurrent neural network controllers by incremental fitness shaping
Brejl et al. Exploring deep recurrent Q-Learning for navigation in a 3D environment
Cerezo et al. Solving Atari Games using fractals and entropy
Jones et al. A segmented attractor network for neuromorphic associative learning
Lawniczak et al. Cognitive Agents Success in Learning to Cross a CA Based Highway Comparison for Two Decision Formulas
Miekisz et al. Replicator dynamics with strategy dependent time delays
Wang et al. Reinforcement Learning with Elastic Time Steps
Capuozzo et al. A compact evolutionary algorithm for integer spiking neural network robot controllers
Nishimoto et al. The Evolution of Pre-play Communication in the Interactive Minority Game
Khan et al. Coevolution of neuro-developmental programs that play checkers
Anghel et al. Adaptive learning in random linear nanoscale networks
Ficici et al. Statistical reasoning strategies in the pursuit and evasion domain
Portegys Training artificial neural networks to learn a nondeterministic game
Polvichai et al. Applying dynamic networks and staged evolution for soccer robots
Lawniczak et al. Effects of Simulation Parameters on Naïve Creatures Learning to Safely Cross a Highway on Bimodal Threshold Nature of Success

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100702

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130115

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130213

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160301

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees