(57)【要約】【課題】自己組織化マップを用いたパターン生成方法を提供する。【解決手段】自己組織化マップの学習後、競合層の各ニューロンと入力層の一のニューロンの間の結合係数と、競合層の各ニューロンの信号とを合成して入力層の一のニューロンの信号を求め、これから全ての入力層のニューロンの信号を求めて入力層のパターンとして生成しているので、これまで学習した入力層のニューロンの信号を反映した入力層のパターンを自己組織化マップを用いて生成することができる。【選択図】図５
2008071255.tif 000002
【特許請求の範囲】
【請求項１】
学習した自己組織化マップの競合層のニューロンと入力層のニューロンの間の結合係数と競合層のニューロンの信号から次式にて入力層のパターンとして生成するパターン生成ステップを含む
自己組織化マップを用いたパターン生成方法。
【数１】
2008071255.tif 000018
【請求項２】
さらに次式を満たす
【数２】
2008071255.tif 000019
前記請求項１に記載の自己組織化マップを用いたパターン生成方法。
【請求項３】
パターン生成ステップでの一のニューロンと生成したパターンを関連付けて記録するステップと、
競合層のニューロンと生成パターンの記録に基づき生成パターンをマップの競合層のニューロンの配置位置に対応させて出力するステップとを新たに含む
前記請求項２に記載の自己組織化マップを用いたパターン生成方法。
【請求項４】
競合学習時の入力データに対応する競合層の勝者ニューロンを記録するステップと、
記録した勝者ニューロン並びに記録した一のニューロン及び生成したパターンから、生成したパターンのうち勝者ニューロンに係る生成パターンを特定するステップと、
特定した生成パターンを他の生成パターンと識別可能に表示するステップとを新たに含む
前記請求項３に記載の自己組織化マップを用いたパターン生成方法。
【請求項５】
競合学習時の入力データに対応する競合層の勝者ニューロンを記録するステップと、
パターン生成ステップでの一のニューロンと生成したパターンを関連付けて記録するステップと、
記録した勝者ニューロン並びに記録した一のニューロン及び生成したパターンから、生成したパターンのうち勝者ニューロンに係る生成パターンを特定するステップと、
特定した生成パターンを他の生成パターンと識別可能に表示するステップとを新たに含む
前記請求項２に記載の自己組織化マップを用いたパターン生成方法。
【請求項６】
競合学習時の入力データに対応する競合層の勝者ニューロンを入力データに関連付けて記録するステップと、
入力データに関連付けて記録した勝者ニューロンに基づき競合学習時の入力データをマップの競合層のニューロンの配置位置に対応させてマップとともに出力するステップと、
使用者からマップ上のニューロンの選択を受け付けるステップとを新たに含み、
使用者から受け付けた選択されたニューロンを競合層上の任意の１つのニューロンとする
前記請求項２に記載の自己組織化マップを用いたパターン生成方法。
【請求項７】
学習した自己組織化マップの競合層のニューロンと入力層のニューロンの間の結合係数と競合層のニューロンの信号から式（１）にて入力層のパターンとして生成するパターン生成手段としてコンピュータを機能させるための
自己組織化マップを用いたパターン生成プログラム。
【請求項８】
学習した自己組織化マップの競合層のニューロンと入力層のニューロンの間の結合係数と競合層のニューロンの信号から式（１）にて入力層のパターンとして生成するパターン生成手段を含む
自己組織化マップを用いたパターン生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習に用いた入力データの性質を有するパターンを生成するパターン生成方法に関する。
【背景技術】
【０００２】
自己組織化マップ（ＳＯＭ）［非特許文献１］とは、与えられた情報の中に潜むデータ構造を自動的に抽出し、その隣接関係を保存しながら高次元空間から２次元平面への写像を行う座標変換機である。
ＳＯＭとは視覚系の情報処理にヒントを得た神経回路モデルの一種で、図１２に示すような入力層と競合層から成る２層構造をしている。
【０００３】
それぞれのニューロン数をｎ個とＮ個とすると、入力層の各ニューロンの信号をｘ＝（ｘ1、ｘ2、…、ｘn）、入力層から競合層のｉ番目のニューロンへの結合荷重をｗi＝（ｗi1、ｗi2、…、ｗin）とおいたとき、競合層の各ニューロンの出力ｙiは、
【０００４】
【数３】
2008071255.tif 000003
【０００５】
【数４】
2008071255.tif 000004
で与えられる。
【０００６】
これはｘに最も似ているｗi*を持った“勝者ニューロン”のみを「１」とし、それ以外は「０」とするものである。図１３（ａ）はある競合層のニューロンと入力層のニューロンとの対応及び結合係数の関係を示している。図１３（ｂ）は勝者ニューロンに係る結合係数のベクトルと入力ベクトルの関係を示している。さらに、図１４（ａ）は他の競合層のニューロンに係る結合係数のベクトルも示している。この図から勝者ニューロンに係る結合係数のベクトルが入力ベクトルに最も近似していることが分かる。図１４（ｂ）は競合層のニューロンに係る結合係数のベクトルを協調学習により更新していることを示す。
【０００７】
まず初期状態として、乱数で決定した結合荷重を用意し、入力層に学習データ｛ｘp｜ｐ＝１，２，…，Ｐ｝を与える。
各信号に対する勝者ニューロンがより強く反応するような競合学習と、その近傍ニューロンに対しても距離に応じて同様の操作を施す協調学習を繰り返すことで、類似した入力信号に対しては近隣のニューロンが応答するような位相保持マッピングを形成できる。
【０００８】
このとき、通常は獲得された位相保持マッピングからデータ構造に潜む規則性を発見したり、未知データに対する勝者の出現場所から既知データのいずれに分類されるかを判別することに用いられる。
また、このような２次元情報への可視化機能に着目して、これまでに様々な分野への応用が試みられているが、その多くは情報の解析ツールとしての活用に限定されているようである。
【０００９】
自己組織化関係（ＳＯＲ）ネットワーク［非特許文献２］のように、ＳＯＭの入力層を２群に分割して入出力関係を学習するものも一部にはあるが、まだまだ少数派である。
【００１０】
自己組織化マップを使用するものではないが、逆解を得ることができるニューラルネットワークの学習により逆解を求める方法が特開平７−２８７６８号公報に開示されている。
【００１１】
この背景技術のニューラルネットワークの学習により逆解を求める方法は、入力層、中間層及び出力層から構成されるニューラルネットワークと学習パターンを備え、ニューラルネットワークの該入力層の前段に該入力層と同数のニューロンユニットを有する補助入力層を設け、入力層と該補助入力層の結合係数を任意の係数で固定結合し、ニューラルネットワークを学習パターンで学習させ、学習終了後、入力層と補助入力層の結合係数の固定結合を解除し、ニューラルネットワークの入力層から出力層までの結合係数を固定結合し、出力パターンが所望の値となるような所定の学習パターンを用いてニューラルネットワークの学習を行うものである。
【００１２】
このような背景技術のニューラルネットワークの学習により逆解を求める方法によれば、ニューラルネットワークの学習においては、逆解用のアルゴリズムを用いずに学習アルゴリズムをそのまま利用しているため、別のシステム開発を必要としない。
【非特許文献１】T.Kohonen(1982) "Self-organized formation of topologically correct feature maps." Biological Cybernetics, 43: 59-69
【非特許文献２】T.Yamakawa and K.Horio(1999) "Self-organizing relationship(SOR) network." IEICE Trans. Fundamentals, E82-A: 1674-1677
【特許文献１】特開平７−２８７６８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
前記自己組織化マップを用いると、入力データ群をマップ表示することができるため入力データ群の分析を行うことが可能となる。また、新たな入力データを入力することで、既に学習した入力データ群との関係でどのような入力データであるのかを把握することも可能である。ここで、入力データは部分的に欠損している場合でも、その入力データの特徴を理解することができる。
【００１４】
しかしながら、自己組織化マップを用いても新たな入力データを生成することはできないという課題を有する。これは、自己組織化マップが、前説したように、高次元空間から２次元平面への写像を行う座標変換機であり、逆に、２次元平面から高次元空間の入力データを生成することが極めて難しいからである。
【００１５】
前記背景技術のニューラルネットワークの学習により逆解を求める方法は、一般的なニューラルネットワークを改良して用いたものであり、教師なし学習アルゴリズムの自己組織化マップを用いるものではない。よって、前記背景技術の方法では教師データが必須となる。また、通常のニューラルネットワークの構成並びに学習段階と比べると、複雑化している。
そこで、本発明では、自己組織化マップを用いたパターン生成方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明は、従来の「入力層→競合層」という信号の流れとは異なり、敢えて「競合層→入力層」という反対方向に信号を伝搬させることで、学習データに類似した新しいパターンを生成するものである。
まず、学習後のＳＯＭにおいて、競合層上の任意の１つのニューロンｊ*の出力を１と定め、それ以外をすべて０とする。式で表すと次の通りである。
【００１７】
【数５】
2008071255.tif 000005
そして、入力層の各ニューロンｘkの値を
【００１８】
【数６】
2008071255.tif 000006
によって決定する。ここで入力層に浮かび上がったものが、新しく生成されたパターンである。
次に、本発明を項目毎に説示する。
【００１９】
（１）  複数の競合層のニューロンを用いたパターン生成
本発明に係る自己組織化マップを用いたパターン生成方法は、学習した自己組織化マップの競合層のニューロンと入力層のニューロンの間の結合係数と競合層のニューロンの信号から式（１）にて入力層のパターンとして生成するパターン生成ステップを含むものである。
【００２０】
このように本発明においては、自己組織化マップの学習後、競合層の各ニューロンと入力層の一のニューロンの間の結合係数と、競合層の各ニューロンの信号とを合成して入力層の一のニューロンの信号を求め、これから全ての入力層のニューロンの信号を求めて入力層のパターンとして生成しているので、これまで学習した入力層のニューロンの信号を反映した入力層の信号を自己組織化マップを用いて生成することができるという効果を奏する。
【００２１】
競合層の各ニューロンの信号は後記するように競合層の任意の一のニューロンの信号を１とし、他のニューロンの信号を０とする他、使用者から直接競合層のニューロンの信号を受け付ける、使用者が選択した競合層のニューロンに基づいて競合層のニューロンの信号を自動的に生成する、自動的に抽出した競合層のニューロンに基づいて競合層のニューロンの信号を自動的に生成する、使用者が選択した又は自動的に抽出した競合層のニューロンに基づいて一定の分布を有した競合層のニューロンの信号を自動的に生成する（協調学習時と同様に近傍関数を用いて選択した又は自動的に抽出したニューロンの近傍程値の大きい信号を生成する）などの方法がある。
なお、ハードウェアの構成要素の中からステップの主体を選択するとすれば、ＣＰＵが該当する。勿論、コンピュータが主体となってもよい。
【００２２】
（２）  一の競合層のニューロンを用いたパターン生成
本発明に係る自己組織化マップを用いたパターン生成方法は必要に応じて、さらに式（２）を満たすものである。
このように本発明においては、競合層のある一のニューロンと入力層のニューロンの結合係数と競合層のある一のニューロンの信号から入力層のニューロンのパターンとして出力しているので、競合層のある一のニューロンが学習時の勝者ニューロンであるとき勝者ニューロンに係る入力データと生成されるデータが略同一となる場合もあるが、競合層のある一のニューロンが学習時の勝者ニューロンでないとき勝者ニューロンとの距離に応じて相関性の異なるパターンを得ることができるという効果を有する。
【００２３】
（３）  自己組織化マップに基づく生成パターンの出力方法
本発明に係る自己組織化マップを用いたパターン生成方法は必要に応じて、パターン生成ステップでの一のニューロンと生成したパターンを関連付けて記録するステップと、競合層のニューロンと生成パターンの記録に基づき生成パターンをマップの競合層のニューロンの配置位置に対応させて出力するステップとを新たに含むものである。
このように本発明においては、マップでのニューロンの配置位置に合わせて生成したパターンを出力しているので、ニューロンの配列番号に従って出力した場合と比べ使用者が生成したパターンを把握し易いという効果を有する。
【００２４】
（４）  勝者ニューロンに係る生成パターンの顕示方法
本発明に係る自己組織化マップを用いたパターン生成方法は必要に応じて、競合学習時の入力データに対応する競合層の勝者ニューロンを記録するステップと、記録した勝者ニューロン並びに記録した一のニューロン及び生成したパターンから、生成したパターンのうち勝者ニューロンに係る生成パターンを特定するステップと、特定した生成パターンを他の生成パターンと識別可能に表示するステップとを新たに含むものである。
【００２５】
このように本発明においては、勝者ニューロンに係る生成パターンを顕示しているので、学習の程度にも依存するが通常学習時に使用した入力データと略同一となる勝者ニューロンに係る生成パターンとその他のパターンとを見比べることで、どの入力データと他の入力データの影響を受けて新たにパターンが生成されたのだということを使用者が理解することができるという効果を有する。
ここでは、勝者ニューロンに係る生成パターンを顕示出力したが、勝者ニューロンに係る生成パターンの代わりに勝者ニューロンに係る入力データを顕示出力してもよいし、勝者ニューロンに係る生成パターンとともに勝者ニューロンに係る入力データを顕示出力してもよい。
【００２６】
（５）  マップ上の勝者ニューロンに係る入力データの表示とそれを用いたパターン生成の使用者による指定
本発明に係る自己組織化マップを用いたパターン生成方法は必要に応じて、競合学習時の入力データに対応する競合層の勝者ニューロンを入力データに関連付けて記録するステップと、入力データに関連付けて記録した勝者ニューロンに基づき競合学習時の入力データをマップの競合層のニューロンの配置位置に対応させてマップとともに出力するステップと、使用者からマップ上のニューロンの選択を受け付けるステップとを新たに含み、使用者から受け付けた選択されたニューロンを競合層上の任意の１つのニューロンとするものである。
【００２７】
このように本発明においては、勝者ニューロンに係る入力データをマップ上に表示し、その表示に対する使用者からのマップ上のニューロンの指定を受け付け、指定を受け付けたニューロンを競合層上の任意の１つのニューロンとしてパターンを生成するので、勝者ニューロンに係る入力データの性質を捉えて組み合せた生成されるであろうパターンを想定しながら、使用者が競合層上のニューロンを指定することができるともに、処理上も使用者が必要とみなしたパターンのみを生成することもでき無駄がないという効果を有する。
【００２８】
前記（１）ないし（５）の各発明は、所謂当業者で明らかであるように、方法以外に、装置（自己組織化マップを用いたパターン生成装置）、プログラム（自己組織化マップを用いたパターン生成プログラム）としても把握することができる。後説する実施形態においては、自己組織化マップを用いたパターン生成装置として本発明を説示している。また、本発明は自己組織化マップ装置に取り込まれる機能として実現することができる他、単体で実現することもできる。自己組織化マップ装置により作成された自己組織化マップを取り込み、本発明の動作を行うこともできる。
これら前記の発明の概要は、本発明に必須となる特徴を列挙したものではなく、これら複数の特徴のサブコンビネーションも発明となり得る。
【発明を実施するための最良の形態】
【００２９】
（本発明の第１の実施形態）
本発明の実施の形態を図面に基づいて詳細に説明する。本発明は多くの異なる形態で実施可能である。したがって、本実施形態の記載内容のみで解釈すべきではない。また、本実施の形態の全体を通して同じ要素には同じ符号を付けている。
【００３０】
本実施の形態では、主に装置について説明するが、所謂当業者であれば明らかな通り、本発明はコンピュータで使用可能なプログラム及び方法としても実施できる。また、本発明は、ハードウェア、ソフトウェア、または、ソフトウェア及びハードウェアの実施形態で実施可能である。プログラムは、ハードディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、光記憶装置または磁気記憶装置等の任意のコンピュータ可読媒体に記録できる。さらに、プログラムはネットワークを介した他のコンピュータに記録することができる。
【００３１】
［１．ブロック構成］
図１は本実施形態に係る自己組織化マップを用いたパターン生成装置のブロック構成図である。
パターン生成装置のモジュール構成は、入力部２１、出力部２２、競合学習部２３、協調学習部２４及びパターン生成部２５からなる。
入力部２１は処理すべきデータを取り込む機能を有する。例えば、入力データを取り込む。
出力部２２は処理したデータを送り出す機能を有する。例えば、生成データを送り出す。
競合学習部２３は、入力層から競合層の各ニューロンへの結合係数と入力データの距離を次式で計算し、入力ベクトルと重みベクトルの距離が最小となるニューロンを勝者ニューロンとして選択する機能を有する。
【００３２】
【数７】
2008071255.tif 000007
協調学習部２４は、競合学習部が選択した勝者ニューロンとマップ上でこの勝者ニューロンの近傍にあるニューロンを次式に基づき更新する。
【００３３】
【数８】
2008071255.tif 000008
【００３４】
【数９】
2008071255.tif 000009
【００３５】
パターン生成部２５は、競合学習部２３及び協調学習部２４による学習後に、競合層の任意の１つのニューロンに対し、前記式（５）（６）を適用し、入力層の信号を生成する機能を有する。競合層のニューロン１つを用いて、入力層の信号が生成されることになる。また、学習状況にも依存するが、勝者ニューロンを用いて生成された入力層の信号は勝者ニューロンに係る入力データ（勝者ニューロンが選択されることになった学習時に入力層のニューロンに入力された入力データ）と略同一となる。学習回数が少ないと相関性が小さくなる傾向が生じる場合がある。
【００３６】
［２．ハードウェア構成］
図２は本実施形態に係る自己組織化マップを用いたパターン生成装置を構築したコンピュータのハードウェア構成図である。
パターン生成装置が構築されるコンピュータは、ＣＰＵ(Central Processing Unit)２０、ＤＲＡＭ(Dynamic Random Access Memory)等のメインメモリ１０、ＲＯＭ３１、外部記憶装置であるＨＤ(hard disk)３２、ネットワークに接続するための拡張カードであるＬＡＮカード３３、入力装置であるマウス３４及びキーボード３５、画面表示機能を有するビデオカード３６、音声の入出力機能を有するサウンドカード３７、出力装置であるディスプレイ３０とスピーカー３８、ＣＤ−ＲＯＭからデータを読み出すＣＤ−ＲＯＭドライブ３９からなる。
ＣＤ−ＲＯＭ等の外部記憶媒体に記録されているパターン生成プログラムをコンピュータのＨＤに複製し、パターン生成プログラムが読み出し可能となって実行できる状態とする所謂インストールを行うことでコンピュータ上にパターン生成装置が構築されることになる。
【００３７】
［３．動作］
動作の主体は、［１．ブロック構成］での各構成要素を割り当てるが、ソフトウェアの分野において通常モジュール構成は一つに定まるものではなく、所謂当業者であれば適宜変更することが可能であるため、その一例を示すことになる。
動作の主体は、ハードウェア的な観点からすればコンピュータ又はプロセッサとなる。
【００３８】
［３．１  学習］
図３は本実施形態に係るパターン生成装置の学習動作フローチャートである。
予め、入力層と競合層の間の結合係数の初期値を乱数を用いて設定する（Ｓ１０１）。
入力部２１は入力データを取り込む（Ｓ１１１）。
競合学習部２３は入力層のニューロンと競合層のあるニューロンとの結合係数と入力データとの距離を求める（Ｓ１２１）。
競合学習部２３は次の競合層のニューロンがあるか否かを判断する（Ｓ１３１）。
Ｓ１３１で次の競合層のニューロンがある場合には、Ｓ１１１に戻る。
Ｓ１３１で次の競合層のニューロンがない場合には、競合学習部２３は結合係数との距離が最小となるニューロンを選択する（Ｓ１４１）。なお、全ての入力データに対応する勝者ニューロンは勝者ニューロンを求めた時点で、入力データと関連付けて記録することが望ましい。図４は競合層上で選択された勝者ニューロンを例示している。また、図５（ａ）は後説する［４．具体的な適用例］でも使用する入力データ群であり、図５（ｂ）は入力データと勝者ニューロンの関連付けを示している。ここで、入力データと勝者ニューロンではなく、入力データとマップ上の位置を代わりに関連付けて記録してもよいし、入力データ、勝者ニューロン及びマップ上の位置を関連付けて記録してもよい。
【００３９】
協調学習部２４は学習すべき重みの差分を結合係数毎に求める（Ｓ１５１）。
協調学習部２４は求めた重みの差分を対応する結合係数に更新する（Ｓ１６１）。
協調学習部２４は次の結合係数があるか否かを判断する（Ｓ１７１）。
Ｓ１７１で次の結合係数がある場合には、Ｓ１５１に戻る。
Ｓ１７１で次の結合係数がない場合には、所定の学習回数に到達したか否かを判断する（Ｓ１８１）。
Ｓ１８１で所定の学習回数に到達していない場合には、Ｓ１１１に戻る。
Ｓ１８１で所定の学習回数に到達している場合には終了する。
【００４０】
［３．２  パターン生成］
図６は本実施形態に係るパターン生成装置のパターン生成動作フローチャートである。
パターン生成部２５は、競合層のあるニューロンと入力層のニューロンの結合係数を取り出す（Ｓ２０１）。ここで、取り出したデータに対して非線形変換を適用することもできる。非線形変換としては、ある値を超えると出力を出す閾値関数やＳ字型の形状をしたいわゆるシグモイド関数を適用することができる。このことによって、例えば、取り扱いデータが画像であれば、シャープな画像を得ることができる。
次式は非線形変換を適用した逆投影によるパターン生成を示す。
【００４１】
【数１０】
2008071255.tif 000010
非線形変換に用いる閾値関数の例が次式である。ｚ＝０を境界として０と１に分ける。
【００４２】
【数１１】
2008071255.tif 000011
非線形変換に用いるシグモイド関数の例が次式である。ｚ＝０を境界として０と１で飽和する。
【００４３】
【数１２】
2008071255.tif 000012
これ以外にも、逆正接関数（tan-1）や双曲線正接関数（tanh）などを用いてシグモイド関数を表すことがある。
【００４４】
パターン生成部２５は、取り出したデータを入力層の入力データの形式へ変換する（Ｓ２１１）。具体的には、入力データのデータ形式に変換すること、適切な階調を与える。当然処理すべき内容は入力データの種類により異なる。
出力部２２は、生成したパターンを出力する（Ｓ２２１）。
パターン生成部２５は次の競合層のニューロンがあるか否かを判断する（Ｓ２３１）。本実施形態では、全ての競合層のニューロンをそれぞれ用いて入力層の信号を生成する。よって、使用者が指定した競合層のニューロンのみを用いて入力層の信号を生成する構成であってもよい。
Ｓ２３１で競合層のニューロンがある場合には、Ｓ２０１に戻る。
Ｓ２３１で競合層のニューロンがない場合には、終了する。
【００４５】
［４．具体的な適用例］
ここでは提案法の有効性を検討するため、非常に単純な画像データを用いた計算機シミュレーションを行う。勿論、写真、ＣＧ、設計図などの画像データであってもよいし、画像データでなくとも本実施形態に係るパターン生成装置を使用することができる。例えば、天候データ、交通データなどにも適用することができ、自己組織化マップに適用可能なデータであれば本実施形態に係るパターン生成装置も対応することができる。
具体的には、いわゆる“顔文字”をサンプルとして取り上げる。
【００４６】
顔文字は電子メールなどでしばしば用いられるもので、種々の文字フォントを組み合わせて、人の様々な表情を描画するものである。言い換えると、記号を組み合わせて人の表情を表した文字列である。
今回は説明の便宜上、図５に示すようなものをビットマップの組み合せで表現したが、文字情報で表すこともできる。
１文字は１２８ドット（縦１６［ドット］×横８［ドット］）で構成され、これを１１文字並べて１つの顔文字を作成したため、入力層には１４０８個（１２８［ドット］×１１［文字］）のニューロンを用意した（図７（ａ）参照）。
【００４７】
また、競合層のニューロンは４００個（２０×２０）とした（図７（ｂ）参照）。このような条件のもと、通常の競合と協調に基づいたＳＯＭの学習を約１０００回繰り返した。学習回数は任意の回数に設定することができる。
前説［３．１  学習］の学習終了後［３．２  パターン生成］を実行し、つまり、競合層のニューロンに１を割り当てて、他はすべて０としたとき、上述の式（５）（６）を用いて入力層に出現した画像を図８に示す。
【００４８】
ここで、「黒地に白抜き」となって反転している部分が学習に用いた画像（図５（ａ）参照）に対する勝者ニューロンであり、全体で３０ヵ所になる。前記Ｓ１４１で勝者ニューロンが選択された場合にその勝者ニューロンを記録し、［３．２  パターン生成］で生成されたパターンと競合層のニューロンを関連付けて記録することで、勝者ニューロンに関わる生成されたパターンを特定することができる。また、生成したパターンは対応する競合層のマップ位置に合わせて出力している。これは生成されたパターンと対応する競合層のニューロンを関連付けて記録しているため可能となる。実際に、ディスプレイ３０に競合層のマップ位置に対応付けて生成パターンを出力することで、使用者が生成パターンの相互関係を把握することができる。
残りの３７０個については、獲得された特徴マップを逆投影して生成した画像である。
【００４９】
この結果を一瞥すると、概して学習に用いた画像の間を補間するような連続的変化が認められる。
したがって、任意の２つの画像の間には両者を内挿するようなものが生成されている。
例えば図８（ｂ）において、上から１０行目、左から３列目のニューロンは「（＋．＋）｝」という新規の画像を生成している。
また、別の試行では「（ＦｏＦ）」を生成していた。
【００５０】
このように新しい画像を生成する能力を確認できたが、今回はビットマップで表現したため、対応するフォントが存在せずに文字情報で表記できない事例もあった。つまり、生成した文字とコンピュータに導入されているフォント内の文字が相違し、生成した文字をフォント内の文字で表現することができないということである。
【００５１】
（その他の実施形態）
［入力データの適合性］
競合層への入力データが複数種類になってくると、その入力データの適合性が問題となる。競合層へのどのような入力データであっても何らかしらのパターンは生成されるものの、どの学習時の入力層への入力データにもまったく類似しないパターンが生成されることがある。通常このようなパターンは利用されない。そして、競合層への入力データを複数種類入力しても使用者の所望のパターンが生成されない状況に陥る。そこで、このような状況を回避すべく、ある競合層への入力データに基づく生成されたパターンが学習時の入力パターンと所定以上の相関を有するか否かを判断する。
【００５２】
図９は本実施形態に係るパターン生成装置の入力データの適合動作フローチャートである。ここで、競合層入力データ生成部と入力データ適合判断部を新たに備える。
パターン生成部２５が競合層の結合係数を取り出す（Ｓ３０１）。
競合層入力データ生成部が競合層への入力データを生成する（Ｓ３１１）。ここでは入力データを生成しているが、入力データは使用者に指定された入力データを取り込む構成であってもよい。また、生成した入力データは正規化して用いることもできる。正規化は例えば次の式により行う。
【００５３】
【数１３】
2008071255.tif 000013
【００５４】
より具体的に入力データの生成について例示する。前記第１の実施形態では競合層の全てのニューロンについてパターンを生成していた。そこで、使用者に競合層のニューロンの選択を促し、使用者が選択した競合層のニューロンに基づき入力データを生成する。使用者が選択したニューロンが１つの場合は第１の実施形態と同様である。使用者の用途としては、学習時の入力層のある入力データと学習時の入力層の他の入力データの特徴を２つ有するパターンを生成したい場合には学習時の入力層のある入力データに係る勝者ニューロンのマップ上の位置と学習時の入力層の他の入力データに係る勝者ニューロンのマップ上の位置との中間に位置するニューロンを選択することで、その場合の所望のパターンを生成することができる。図１０は複数の競合層のニューロンから一の入力層のニューロンの信号を生成することを説明するモデルである。
【００５５】
次に、複数の競合層のニューロンを使用者が選択した場合には、選択したニューロンの比率を受け付ける構成が望ましい。そして、使用者が影響を与えたい程度が高い程選択したニューロンに大きな比率を与える。例えば、選択した競合層の第１のニューロンに３０［％］、第２のニューロンに２０［％］、第３のニューロンに１０［％］といった具合に比率を指定する。勿論、適当な値を使用者から受け付けて前説した正規化を実行してもよい。
次式は複数の競合層のニューロンを用いて入力層の信号を生成するための式である。なお、単一の競合層のニューロンを用いて入力層の信号を生成するための式は、前記式（５）である。
【００５６】
【数１４】
2008071255.tif 000014
パターン生成部２５が取り出した結合係数と生成した競合層への入力データを次式で合成する（Ｓ３２１）。
【００５７】
【数１５】
2008071255.tif 000015
【００５８】
Ｓ２１１の形式変換後、入力データ適合判断部は、学習時の各入力データと生成データとの相関係数を求め、第１の閾値以上であるか否かを判断する（Ｓ３３１）。２画像の相関係数を求める技術は、公知・慣用技術であるため、ここでの詳細な説明は省略する。具体的には、相関係数を用いたパターンマッチングなどの技術を適用することができる。
Ｓ３３１で所定の相関を有しないと判断された場合には、Ｓ３１１に戻る。
Ｓ３３１で所定の相関を有すると判断された場合には、出力部２２が生成データを出力する（Ｓ２２１）。
【００５９】
［競合層の入力データの生成］
前記第１の実施形態においては、パターン生成時おいては、競合層のあるニューロンを１とし、他のニューロンを０とした競合層への入力データに対する出力データを生成パターンとして出力したと把握することもできる。
【００６０】
このような競合層への入力データの他、単一のニューロンに集中させるのではなく、ある広がりを有した分散パターンの入力データを適用することもできる。そうすることで、より複数の競合層のニューロンの性質を帯びたパターンを生成することができる。
【００６１】
具体的には、一のニューロンを中心として、そのニューロンの近傍程値が大きくなるように信号を生成する。自己組織化マップの協調学習時に用いる式（９）などの近傍関数を用いて競合層のニューロンの信号を生成することで実現することができる。
【００６２】
近傍関数を用いる他、図１１（ｂ）に示すように、等差数列を用いることもできる。式中ｍがある一のニューロンからの距離を示す。図１１（ａ）がその距離を示す。中心となるある一のニューロンの距離の値が１である。ある一のニューロンに対して隣接する上下左右のニューロンはそれぞれ２である。ある一のニューロンから対象のニューロンに到達するまでに経るニューロンの数に１を加えたものが距離となる。図１１（ｃ）の数列であってもよい。さらには次の式から求めてもよい。
【００６３】
【数１６】
2008071255.tif 000016
ここでは、一のニューロンを中心とする具体例を示したが、複数の一のニューロンであっても可能である。２つの場合、式（１６）は次式となる。
【００６４】
【数１７】
2008071255.tif 000017
【００６５】
［生成パターンの入力データへの組み入れ］
前記第１の実施形態においては、入力データ群について学習して自己組織化マップを形成し、形成した自己組織化マップを用いて新たなパターンを生成した。新たなパターンは学習時の入力層の入力データに比べると、使用者が望んだものであるが目標とするものと比べると劣るといった状況に陥ることは多々ある。
そこで、ここでは、生成した新たなパターンの中で使用者が望むパターンを含めて再度学習して自己組織化マップを形成した後にパターンを新たに生成させるものである。
【００６６】
新たな学習時における入力データは、前の学習時の入力層の入力データに使用者が選択したパターンを含ませる構成であってもよいが、より好ましくは、学習時の入力層の入力データ中使用者の意図にそぐわない入力データは省くことが望ましい。さらには、使用者が選択したパターンを中心としてマップ上の所定範囲内（距離は式（１６）を用いてもよい）にあるニューロンに係る入力データと使用者が選択したパターンを新たな入力データとすることもできる。そうすることで、使用者が選択したパターンを中心とした詳細なカスタマイズがなされた新たなパターンを得ることができる。
【００６７】
［顔文字での類似文字での代替出力］
前記第１の実施形態においては、顔文字をビットマップで表現しているが、実際にはコンピュータに登録されているフォント内の記号で顔文字を構成することが好ましい。しかしながら、登録されているフォント内の記号と相違する画像である場合には顔文字を表現することができない。そこで、コンピュータに登録されているフォント内の記号と生成された画像の相関から最も適合するフォント内の記号を選択して出力する構成にすることもできる。
【００６８】
ここで、入力された画像とフォント内の文字の相関から類似するフォント内の文字を出力する技術はかな漢字変換を実現し日本語を入力するためのソフトウェア上で慣用技術となっており、所謂当業者であれば適宜実施が可能であるため詳細は省略する。具体的には、特徴点抽出照合法、画像マッチング法などを適用することができる。
【００６９】
以上の前記各実施形態により本発明を説明したが、本発明の技術的範囲は実施形態に記載の範囲には限定されず、これら各実施形態に多様な変更又は改良を加えることが可能である。そして、かような変更又は改良を加えた実施の形態も本発明の技術的範囲に含まれる。このことは、特許請求の範囲及び課題を解決する手段からも明らかなことである。
【図面の簡単な説明】
【００７０】
【図１】本発明の第１の実施形態に係る自己組織化マップを用いたパターン生成装置のブロック構成図である。
【図２】本発明の第１の実施形態に係る自己組織化マップを用いたパターン生成装置を構築したコンピュータのハードウェア構成図である。
【図３】本発明の第１の実施形態に係る自己組織化マップを用いたパターン生成装置の学習動作フローチャートである。
【図４】本発明の第１の実施形態に係るパターン生成装置のマップ上の勝者ニューロンの例示である。
【図５】本発明の第１の実施形態に係るパターン生成装置の入力データ群の例である。
【図６】本発明の第１の実施形態に係る自己組織化マップを用いたパターン生成装置のパターン生成動作フローチャートである。
【図７】本発明の第１の実施形態に関わるパターン生成装置の具体的適用例である。
【図８】本発明の第１の実施形態に係るパターン生成装置の出力データの例である。
【図９】本発明のその他の実施形態に関わるパターン生成装置のパターン生成動作フローチャートである。
【図１０】本発明のその他の実施形態に係る複数の競合層のニューロンを用いて一の入力層のニューロンの信号を生成することを説明するモデル図である。
【図１１】本発明のその他の実施形態に係る一のニューロンから距離が離れる程値を小さくした競合層のニューロンの信号例である。
【図１２】ＳＯＭの２層構造を示すモデル図である。
【図１３】ある競合層のニューロンと入力層のニューロンとの対応及び結合係数の関係、並びに、勝者ニューロンに係る結合係数のベクトルと入力ベクトルの関係を説明する図である。
【図１４】他の競合層のニューロンに係る結合係数のベクトル、並びに、競合層のニューロンに係る結合係数のベクトルの協調学習による更新を説明する図である。
【符号の説明】
【００７１】
１０  メインメモリ
２０  ＣＰＵ
２１  入力部
２２  出力部
２３  競合学習部
２４  協調学習部
２５  パターン生成部
３０  ディスプレイ
３１  ＲＯＭ
３２  ＨＤ
３３  ＬＡＮカード
３４  マウス
３５  キーボード
３６  ビデオカード
３７  サウンドカード
３８  スピーカー
３９  ＣＤ−ＲＯＭドライブ
【図１】
2008071255.tif 000020
【図２】
2008071255.tif 000021
【図３】
2008071255.tif 000022
【図４】
2008071255.tif 000023
【図５】
2008071255.tif 000024
【図６】
2008071255.tif 000025
【図７】
2008071255.tif 000026
【図８】
2008071255.tif 000027
【図９】
2008071255.tif 000028
【図１０】
2008071255.tif 000029
【図１１】
2008071255.tif 000030
【図１２】
2008071255.tif 000031
【図１３】
2008071255.tif 000032
【図１４】
2008071255.tif 000033