(57)【要約】【課題】従来の人工ニューラル・ネットワーク（ＡＮＮ）（１２０）、データベース・ブロック（２２０）、および比較／更新回路（２３０）から構成される改良ＡＮＮ（１２０’）を提供すること。【解決手段】従来のＡＮＮは、複数のｎ個のニューロン（１３０）によって形成され、各ニューロンは、プロトタイプを専用に保存するプロトタイプ・メモリ（１４０）、およびＡＮＮに提示された入力パターンとそこに格納されたプロトタイプとの間の距離を評価する距離評価機構（１５０）を備える。データベース・ブロックは、３つのデータベース、すなわち、ｐ個のプロトタイプの全体をそれぞれ最大ｎ個のプロトタイプを格納できるｓ個のスライスに配分して含む第１のデータベース（２２２）、ＡＮＮに提示されたｑ個の入力パターン（クエリ）を格納することのできる第２のデータベース（２２４）、および認識／分類フェーズ中に実行された前記評価の結果であるｑ個の距離を格納することのできる第３のデータベース（２２６）から構成される。比較／更新回路の役割は、前記距離を同じ入力パターンについて算出済の距離（または初期化時の設定）と比較し、その比較結果に基づいて、格納済の前記距離を更新し、または更新しないことである。
2005521118.tif 000002
【特許請求の範囲】
【請求項１】
認識／分類フェーズ中にｎ個のニューロンで構成されたＡＮＮを用いて、複数のｑ個の入力パターンをｐ個のプロトタイプと比較し、そこから結果を生成するように適合された改良ＡＮＮであって、プロトタイプの数はニューロンの数より大きく（ｐ＞ｎ）、
ａ）複数のｎ個のニューロンによって形成されたＡＮＮであって、各ニューロンが、プロトタイプを専用に格納するプロトタイプ・メモリと、前記ＡＮＮに提示された入力パターンとプロトタイプ・メモリに格納された前記プロトタイプとの比較に基づき評価のローカル結果を生成する評価機構とを備え、それによって、前記ＡＮＮが認識／分類フェーズ中に、指定されたパラメータの数ｋに相当するｋ個（ｋ≧１）のグローバル結果を生成するＡＮＮと、
ｂ）少なくとも３つのデータベース、すなわち、前記ｐ個のプロトタイプを最大ｎ個のプロトタイプからなるｓ個のスライスに配分して格納する第１のデータベース、ＡＮＮに提示された前記ｑ個の入力パターン（すなわち、クエリ）を格納する第２のデータベース、およびｑ×ｋ個の値を格納する第３のデータベースと、
ｃ）前記評価によって得た結果を、事前定義された判定基準に従って、先行スライスの同じ入力パターンについて算出済の結果（または初期化時の既定値）と比較し、その評価に基づいて、格納済の前記結果を更新し、または更新しないように構成された比較／更新手段と、
ｄ）プロトタイプ・データを前記プロトタイプ・メモリに、入力パターン・データを前記距離評価機構に、前記評価機構からの結果データを前記第３のデータベースに転送するように適合されたデータ・バス手段とを含む改良ＡＮＮ。
【請求項２】
前記第１、第２、および第３のデータベースが、Ｒ／Ｗメモリである、請求項１に記載の改良ＡＮＮ。
【請求項３】
前記第１、第２、および第３のデータベースが、独立ユニットである、請求項２に記載の改良ＡＮＮ。
【請求項４】
それによってニューラル・システムを形成するコンピュータをさらに含む、請求項１に記載の改良ＡＮＮ。
【請求項５】
前記第１、第２、および第３のデータベースが、前記コンピュータのＲＡＭメモリの一部分である、請求項４に記載の改良ＡＮＮ。
【請求項６】
前記第１、第２、および第３のデータベースを含むデータベース・ブロックと、
前記コンピュータと前記データベース・ブロックの間でデータを転送し、またアドレス・コントローラを直接または間接に介して前記データベースおよび前記ＡＮＮを適切にアドレスするための制御信号を生成するように適合されたインタフェース手段とをさらに含む、請求項５に記載の改良ＡＮＮ。
【請求項７】
前記指定されたパラメータが、距離を含む、請求項１に記載の改良ＡＮＮ。
【請求項８】
各ニューロン内の前記評価機構が、前記ＡＮＮに提示された入力パターンとそこに格納された前記プロトタイプとの間の前記距離を計算するように適合された距離評価機構である、請求項７に記載の改良ＡＮＮ。
【請求項９】
前記事前定義された判定基準が、最小距離の判定である、請求項８に記載の改良ＡＮＮ。
【請求項１０】
前記指定されたパラメータが、カテゴリをさらに含み、前記評価機構が、前記プロトタイプに関連づけられた前記カテゴリを格納するカテゴリ・レジスタを含む、請求項８に記載の改良ＡＮＮ。
【請求項１１】
限られた数のニューロンを有する人工ニューラル・ネットワーク（ＡＮＮ）で処理することのできるプロトタイプの数を増加させる方法であって、
ａ）複数のｎ個のニューロンによって形成されたＡＮＮであって、各ニューロンが、プロトタイプを専用に格納するプロトタイプ・メモリと、前記ＡＮＮに提示された入力パターンとプロトタイプ・メモリに格納された前記プロトタイプとの比較に基づき評価の結果を生成する評価機構とを備え、それによって、前記ＡＮＮが認識／分類フェーズ中に、指定されたパラメータの数ｋに相当するｋ個（ｋ≧１）のグローバル結果を生成するＡＮＮを提供するステップと、
ｂ）ニューロンの数ｎよりも多いｐ個の処理されるべきプロトタイプを含み、そのｐ個のプロトタイプを最大ｎ個のプロトタイプからなるｓ個のスライスのそれぞれに配分する第１のデータベースを提供するステップと、
ｃ）前記ＡＮＮに提示されるｑ個の入力パターン（すなわち、クエリ）を含む第２のデータベースを提供するステップと、
ｄ）前記評価によるｑ×ｋ個の値を格納することができる第３のデータベースを提供するステップと、
ｅ）処理されるべきプロトタイプのスライスｉ（ｉ＝１〜ｓ）をｎ個のニューロンのプロトタイプ・メモリにロードするステップと、
ｆ）評価を行うためにランクｊ（ｊ＝１〜ｑ）の入力パターンを前記ＡＮＮに提示するステップと、
ｇ）前記結果を、同じランクの入力パターンについて得た格納済の結果（または初期化時に格納された値）と比較し、その比較に応じて、前記第３のデータベースの対応するメモリ・ロケーションに前記結果を格納し、または格納しないステップと、
ｈ）前記入力パターンがすべて前記ＡＮＮに提示されるまで、ステップｆ）およびｇ）を繰り返すステップと、
ｉ）前記スライスがすべてロードされるまで、ステップｅ）からｈ）を繰り返し、その結果、評価プロセスの終了時に、前記第３のデータベースに含まれる結果が最終的結果になるステップとを含む方法。
【請求項１２】
前記指定されたパラメータが、距離およびカテゴリを含み、前記事前定義された判定基準が、最小距離の判定を含み、したがって、各入力パターンについての前記最終的結果が、前記最小距離および関連するカテゴリである、請求項１１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人工ニューラル・ネットワーク（artificial neuralnetwork）に関し、より詳細には、入力空間マッピング（input space mapping）に基づく人工ニューラル・ネットワーク（ＡＮＮ）で処理することのできるプロトタイプの数を仮想的に増加させるように適合された方法および回路に関する。その結果、１組の入力パターンを、前記ＡＮＮ内に物理的に存在するニューロンの数より多い複数のプロトタイプと比較できるようになり、その点で従来のＡＮＮよりも機能が拡張された改良ＡＮＮが開示される。改良ＡＮＮは、限られた数のニューロンしか有していない従来のＡＮＮを用いて、必要とされるハードウェアを極端に増加させることなく、無制限の数のプロトタイプを処理することができるため、即時性を要する高度な応用例にも十分適応できる。
【背景技術】
【０００２】
現在のデータ処理では、認識、予測、計算に関する多数のタスクが、入力データを特徴づけるのに使用される基準データベース（reference database）を用いて実行される。これらの基準データベースには、解決すべき課題に応じて、サブイメージ、サブ信号、データのサブセット、およびこれらの組合せであるパターンが含まれる。これらの基準データベースに格納されるパターンのことを、以下本明細書では、プロトタイプと呼称する。当業者に周知であるように、プロトタイプは一般に、ベクトル、すなわちｎ次元空間内の配列によって表される。新しい（未知の）パターン（以下本明細書では、入力パターンと呼ぶ）を基準データベースを用いて特徴づけるための周知の方法は、Ｋ最近接近傍（ＫＮＮ：K-Nearest-Neighbor）や影響領域（ＲＯＩ：RegionOf Influence）などの入力空間マッピング・アルゴリズムに基づいている。入力パターンと格納された各プロトタイプとの間の距離を計算して、所定の閾値に応じて、または応じずに、最も近いプロトタイプを見つけることが、これらのアルゴリズムにおける基本原理となっている。ＺＩＳＣニューロン（ＺＩＳＣはＩＢＭコーポレーションの登録商標である）と呼ばれる新しいタイプの革新的な基本プロセッサを含み、そのような入力空間マッピング・アルゴリズムに基づいた人工ニューラル・ネットワークが、ＩＢＭコーポレーションに譲渡された米国特許第５６２１８６３号に記載されている。ＺＩＳＣニューロンの本質的な特徴は、並列動作が可能であること、すなわち、入力パターンがＡＮＮに提示されると、すべてのＺＩＳＣニューロンがその入力パターンと各々に格納されたプロトタイプとの間の距離を同時に計算することにある。したがって、プロトタイプ数に線形に依存する、距離評価プロセス（distanceevaluation process）のソフトウェア・エミュレーションの応答時間とは異なり、ＺＩＳＣ  ＡＮＮの応答時間は、プロトタイプの数がいくつであろうと、距離評価プロセス全体で見れば一定となる。
【０００３】
図１は、ＺＩＳＣ  ＡＮＮで現在に至るまで実施されている距離評価技法の主要原理を説明するのに使用される基本的なハードウェアである。ここで図１を参照すると、ニューラル・システム１００のアーキテクチャが示されている。ニューラル・システム１００は、パーソナル・コンピュータなどのホスト・コンピュータ１１０と、１２０で参照される従来のＺＩＳＣ  ＡＮＮとを含み、ＺＩＳＣ  ＡＮＮ１２０は、複数のニューロン１３０−１〜１３０−ｎ（以降、総称的に１３０で参照）を含む。ＡＮＮ１２０を物理的に、数個のＺＩＳＣチップ、例えば、１つのチップに３６個のニューロンを含むＺＩＳＣ０３６チップを搭載したプリント回路基板で構成することができる。簡略化のため、各ニューロン、例えば１３０−１は、概略的に２つの基本要素、すなわち、ニューロンが学習フェーズ中に入力ベクトルを学習したときにプロトタイプを専用に格納するプロトタイプ・メモリ１４０−１、および距離評価機構（evaluator）１５０−１に省略している。データ・イン・バス１６０は順次、１組の入力パターン構成要素をＡＮＮ１２０のすべてのニューロン１３０に並列に提供し、データ・アウト・バス１７０は、距離評価プロセスの結果、つまり一般には距離およびカテゴリ（別のまたは追加の指定パラメータを想定することもできる）をホスト１１０に転送する。上記の米国特許第５６２１８６３号に教示されているように、入力パターンは、データ・バス１６０を介して各ニューロン１３０に与えられると、距離評価機構１５０によって各ニューロンに格納されているプロトタイプと比較される。結果は一般に、１対の値、すなわち距離およびカテゴリから構成される。カテゴリ・レジスタは、簡略化のため、図１には示されていないが、距離評価機構１５０に含まれるものとする。図１から明らかなように、ＺＩＳＣ  ＡＮＮのアーキテクチャでは、ＡＮＮを構成するすべてのニューロンで、すべての距離評価を同時に実行する。
【０００４】
明らかに、図１に示す従来のＡＮＮ１２０は、ニューロンの数ｎによって決定される固定数までのプロトタイプしか格納することができない。この場合、プロトタイプの数ｐは、ｐ≦ｎのようになる。しかし、現在の即時性（real time）を要する応用例においては、プロトタイプ構成要素の数ｍやＡＮＮの要求精度などの複数の要因に応じて、使用されるＺＩＳＣニューロンは数個から数１０万個と様々であり得る。要求されるのと同数のＺＩＳＣニューロンを使用することは必ずしも現実的とは限らないと考えられる。１片の半導体に数１００万個のトランジスタを集積できるようになった、近年に達成された飛躍的な集積レベルの増加によって、１つのシリコン・チップに数１００個のニューロンを実際に埋め込む可能性が開かれたばかりである。言い換えると、１枚の大きなプリント回路基板に数１０００個のニューロンを集積することが可能となるに過ぎない。その結果、数１０万個のニューロンから物理的に構成されるＡＮＮを構築することは、きわめて複雑でかつ高価なものとなり得る。
【０００５】
したがって、現在および将来の即時性を要する応用例の要件を満たすために、複雑でしたがって高価なハードウェアを必要とせずに、必要な数のプロトタイプを処理することのできるＺＩＳＣ  ＡＮＮを実現することが真に必要とされている。したがって、本発明の方法および回路の主要な目的は、先に述べた図１に示す従来のＡＮＮのアーキテクチャがもつ制約および短所を改善することである。
【特許文献１】米国特許第５６２１８６３号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、本発明の主要な目的は、従来の入力空間マッピングに基づく人工ニューラル・ネットワーク（ＡＮＮ）で処理することのできるプロトタイプの数を仮想的に増加させるように適合された、方法および回路を提供することである。
【０００７】
本発明の別の目的は、従来のＡＮＮで、前記ＡＮＮに物理的に存在するニューロンの数よりもはるかに多数のプロトタイプを処理できるように適合された、方法および回路を提供することである。
【０００８】
本発明のさらに別の目的は、ニューロンの数には全く依存しない数のプロトタイプを処理できるように適合された、従来のＡＮＮに基づき構成された改良ＡＮＮを提供することである。
【０００９】
本発明の別の目的は、従来のＡＮＮのハードウェアの複雑さを著しく増すことなく、従来のＡＮＮで処理できるプロトタイプの数を仮想的に増加させるように適合された、方法および回路を提供することである。
【００１０】
本発明のさらに別の目的は、非常に低コストで、従来のＡＮＮで処理できるプロトタイプの数を仮想的に増加させるように適合された、方法および回路を提供することである。
【課題を解決するための手段】
【００１１】
上記およびその他の関連する目的は、本発明の改良ＡＮＮおよび方法によって達成される。
【００１２】
認識／分類（recognition/classification）フェーズ中にｎ個のニューロンで構成されたＡＮＮを用いて、複数のｑ個の入力パターンをｐ個のプロトタイプと比較し、そこから結果を生成するように適合された改良ＡＮＮであって、プロトタイプの数はニューロンの数より大きく（ｐ＞ｎ）、
複数のｎ個のニューロンによって形成されたＡＮＮであって、各ニューロンが、プロトタイプを専用に格納するプロトタイプ・メモリと、前記ＡＮＮに提示された入力パターンとプロトタイプ・メモリに格納されたプロトタイプとの比較に基づき評価のローカル（local；部分的）結果を生成する評価機構（evaluator）とを備え、それによって、前記ＡＮＮが認識／分類フェーズ中に、指定されたパラメータの数ｋに相当するｋ個（ｋ≧１）のグローバル（global；全体的）結果を生成するＡＮＮと、
少なくとも３つのデータベース、すなわち、ｐ個のプロトタイプを最大ｎ個のプロトタイプからなるｓ個のスライスに配分して格納する第１のデータベース、ＡＮＮに提示されたｑ個の入力パターン（すなわち、クエリ；query（照会））を格納する第２のデータベース、ｑ×ｋ個の値を格納する第３のデータベースと、
前記評価によって得た結果を、事前定義された判定基準に従って、先行スライスの同じ入力パターンについて算出済の既に設定された結果（または初期化時の既定値）と比較し、その評価に基づいて、前記格納済の結果を更新し、または更新しないように構成された比較／更新（compare/update）手段と、
プロトタイプ・データをプロトタイプ・メモリに、入力パターン・データを距離評価機構に、評価機構からの結果データを前記第３のデータベースに転送するように適合されたデータ・バス手段とを含む改良ＡＮＮが最初に開示される。
【００１３】
限られた数のニューロンを有する人工ニューラル・ネットワーク（ＡＮＮ）で処理することのできるプロトタイプの数を増加させる方法であって、
ａ）複数のｎ個のニューロンによって形成されたＡＮＮであって、各ニューロンが、プロトタイプを専用に格納するプロトタイプ・メモリと、ＡＮＮに提示された入力パターンとプロトタイプ・メモリに格納されたプロトタイプとの比較に基づき評価のローカル結果を生成する評価機構とを備え、それによって、ＡＮＮが認識／分類フェーズ中に、指定されたパラメータの数ｋに相当するｋ個（ｋ≧１）のグローバル結果を生成するＡＮＮを提供するステップと、
ｂ）ニューロンの数ｎよりも多いｐ個の処理されるべきプロトタイプを含み、そのｐ個のプロトタイプを最大ｎ個のプロトタイプを含むｓ個のスライスのそれぞれに配分する第１のデータベースを提供するステップと、
ｃ）ＡＮＮに提示されるｑ個の入力パターン（すなわち、クエリ）を含む第２のデータベースを提供するステップと、
ｄ）前記評価によるｑ×ｋ個の値を格納することができる第３のデータベースを提供するステップと、
ｅ）処理されるべきプロトタイプのスライスｉ（ｉ＝１〜ｓ）をｎ個のニューロンのプロトタイプ・メモリにロードするステップと、
ｆ）評価を行うためにランクｊ（ｊ＝１〜ｑ）の入力パターンをＡＮＮに提示するステップと、
ｇ）結果を、同じランクの入力パターンについて得た格納済の結果（または初期化時に格納された値）と比較し、その比較に応じて、前記第３のデータベースの対応するメモリ・ロケーションに結果を格納し、または格納しないステップと、
ｈ）入力パターンがすべてＡＮＮに提示されるまで、ステップｆ）およびｇ）を繰り返すステップと、
ｉ）スライスがすべてロードされるまで、ステップｅ）からｈ）を繰り返し、その結果、評価プロセスの終了時に、第３のデータベースに含まれる結果が最終的結果になるステップとを含む方法も開示される。
【００１４】
本発明の特徴であると考えられる新規な特徴を、特許請求の範囲に記載する。しかし、本発明自体、さらに本発明のその他の目的および利点は、以下の例示的な好ましい実施形態の詳細な説明を、添付の図面と併せて読むことにより、最もよく理解することができるであろう。
【発明を実施するための最良の形態】
【００１５】
本発明が解決する問題は、ｎ個の物理的なニューロンから構成された従来のＡＮＮで、ｎよりも大きく数桁大きい場合でもｐ個のプロトタイプを処理することである。本発明の主要な特徴によれば、処理されるべきすべてのプロトタイプ構成要素は、一般には読出し／書込み（Ｒ／Ｗ）メモリであるメモリ内に格納（save）され、その結果、第１のデータベースを形成する。前記第１のデータベースに格納された構成要素の値は、いつでも必要な場合に読み出して、その構成要素の値をＡＮＮのニューロンに復元（restore）することができる。同様に、評価すべきｑ個の入力パターンもすべて、一般にはＲ／Ｗメモリである他のメモリ内に格納され、第２のデータベースを形成する。最後に、距離評価プロセスの結果、より一般的には認識フェーズ（すなわち、通常のように距離およびカテゴリ値にのみ限定されず、他のどのようなパラメータでも指定できる）の結果も、Ｒ／Ｗメモリ内に格納され、第３のデータベースを形成する。この結果は、距離評価プロセスの過程における「中間」結果であり、距離評価プロセスが完了したときに「最終」結果となる。応用に応じて、これらのＲ／Ｗメモリは、ホスト１１０のＲＡＭメモリの一部分として存在するかまたは独立のメモリ・ユニットとして実現される。
【００１６】
図２には、認識フェーズに関与するプロトタイプの数が従来のＡＮＮ１２０で物理的に使用可能なＺＩＳＣニューロンの数よりも多い、本発明による改良ＡＮＮを実現するために変更された、図１のニューラル・システム１００のアーキテクチャが示されている。複数の図面で、同じ部分（対応する部分）を指定するために、同じ参照番号（プライム符号付き）が使用される。
【００１７】
次に図２に移ると、番号２００が付された新規なニューラル・システムのアーキテクチャは、ホスト・コンピュータ１１０、および１２０’で参照される改良ＺＩＳＣ  ＡＮＮから構成される。改良ＡＮＮ１２０’はさらに、図１の従来のＡＮＮ１２０、インタフェース回路２１０、３つのデータベース２２２、２２４、２２６から構成されるデータベース・ブロック２２０、そして最後に比較／更新回路２３０を含む。インタフェース回路２１０の役割は、ホスト・コンピュータ１１０からデータを受信して、そのデータをデータベース・ブロック２２０の３つのデータベースに適切に割り振ることであり、またそれとは逆に、前記データベースの内容をホスト・コンピュータ１１０に転送することである。図２から明らかなように、データベース・ブロック２２０は、３つのデータベースを含んでいる。第１のデータベース２２２はプロトタイプを含み、第２のデータベース２２４は入力パターンを含み、第３のデータベース２２６は距離評価プロセスの結果を含む。第１のデータベース２２２はプロトタイプ（prototype）データベースとも呼ばれ、s個のサブ・データベース、すなわちスライス２２２−１〜２２２−ｓに分割される。各スライスは最大ｎ個のプロトタイプを格納するように適合される。その結果、最後のスライスを除く各スライスは、ｎ個のプロトタイプを含み、最後のスライスは、残りのプロトタイプを含む。第１のデータベースは、ｐ×ｍ個の値（満杯の場合は、ｎ×ｓ×ｍ個の値）を含む。第２のデータベース２２４はクエリ（Query）・データベースとも呼ばれる。これは、改良ＡＮＮ１２０’に提示される入力パターンがしばしば、文字通りクエリ（照会）と呼ばれるためである。したがって、第２のデータベース２２４は、ｑ×ｍ個の値を含む。最後に、第３のデータベース２２６は、結果（Result）データベースとも呼ばれ、認識／分類フェーズ中に実行される距離評価プロセスの中間結果を含み、このプロセスの完了時に、最終的な距離ＤＩＳＴおよび関連するカテゴリＣＡＴを含む。結果が距離パラメータおよびカテゴリ・パラメータに制限されるとすれば、第３のデータベースは、２×ｑ個の値を含む。その他の指定パラメータも想定できるため、ｋ個の異なる指定パラメータがある場合、第３のデータベース２２６は、ｋ×ｑ個の値を含む。比較／更新回路２３０は、各クエリ（入力パターン提示）についてＡＮＮが生成したグローバル結果を、第３のデータベース２２６に格納済の対応する結果と比較し、必要な場合は、格納されている結果を更新する。アドレス・コントローラ２４０は、インタフェース回路２１０と協調して、正しいデータを選択するための適切なアドレスを３つのデータベースに送信する。ホスト・コンピュータ１１０内でデータベース・ブロック２２０を実現する特別な場合には、アドレス・コントローラ２４０の機能をホスト・コンピュータ自体が果たすことに留意されたい。
【００１８】
次に本発明の方法を、３００で参照されるフローチャートを示す図３を用いて説明する。このフローチャートは、本発明の方法に基づくアルゴリズムを説明している。１からスライスの数ｓまでの値をとるｉ（サブ・データベース、すなわちスライス・インデクス）、および１から与えられる入力パターン、すなわちクエリの数ｑまでの値をとるｊ（クエリ・インデクス）の２つの現行変数（current variable）を使用する。プロセスはボックス３０１から開始する。ボックス３０２で、第１の現行変数ｉが１に設定され、ｑ個の入力パターンすべてについて、最終距離およびカテゴリ値が、それぞれ例えば、最大距離値（Ｍａｘ）および０に初期化される。Ｍａｘは符号（コード）化できる最大値であることに留意されたい。ボックス３０３から明らかなように、現行スライスに格納されたすべてのプロトタイプの構成要素が、ＡＮＮ１２０のｎ個のニューロンにロードされ、第２の現行変数ｊが１に設定される。これで、ニューラル・システム２００が第１のクエリを処理する準備が整う。ボックス３０４で、クエリがＡＮＮに提示され、そのクエリの基準値として距離ｄｉｓｔと関連するカテゴリｃａｔが決定されるが、これらはまだ中間結果である。計算された距離ｄｉｓｔは、ボックス３０５で、ＤＩＳＴ（ｊ）と比較される。ｄｉｓｔ＜ＤＩＳＴ（ｊ）の場合、ボックス３０６で、ＤＩＳＴ（ｊ）とＣＡＴ（ｊ）が、ＤＩＳＴ（ｊ）＝ｄｉｓｔ、ＣＡＴ（ｊ）＝ｃａｔに更新される。ｄｉｓｔ≧ＤＩＳＴ（ｊ）の場合、またはボックス３０６で更新が行われた後、ボックス３０７で、最後のクエリが処理されたかどうか判定する新しいテスト（ｊ＝ｑ？）が実行される。まだ処理されていない場合、すなわちｊ＜ｑの場合、ボックス３０８で、変数ｊがインクリメント、すなわちｊ＝ｊ＋１に変更され、次にボックス３０４で示される、新しいクエリが提示される。反対にｊ＝ｑの場合、これは、そのスライスｉについて、すべてのクエリが処理されたことを意味しており、次に（もしあれば）別のスライスを取り扱わなければならない。そのため、ボックス３０９で、変数ｉがインクリメント（ｉ＝ｉ＋１）される。ボックス３１０で、変数ｉが終値に達したか、すなわちｉ＝ｓかどうかを判定する新しいテストが実行される。終値に達した場合（Ｙ）、これは、処理すべきスライスがもはや存在しないことを意味しており、処理はブロック３１１で停止する。距離評価プロセス（認識フェーズ）の終了時、そのときデータベース２２６に格納されている値を、先に述べた最終結果とする。最終結果（最小距離ＤＩＳＴおよび関連するカテゴリＣＡＴ）が、次にホスト・コンピュータ１１０に対して利用可能となる。終値に達していない場合（Ｎ）、処理はボックス３０３に戻って続けられる。
【００１９】
図４には、図３を参照して説明した方法の変形が示されている。このケースでは、ボックス３０２’（図４）から明らかなように、ボックス３０２（図３）で実行した距離（ＤＩＳＴ）およびカテゴリＣＡＴの初期化はもはや必要ではない。その一方で今度は、ボックス３１２で実行されるｉ＝１（第１スライス）かどうかをテストするための追加のステップが必要になる。第１スライスではない場合、処理はボックス３０５で実行されるテストに進み、第１スライスの場合、処理はボックス３０６に直ちに移る。
【００２０】
上記の例では、結果は距離およびカテゴリのみから構成されるが、上記の議論は、さらに多くの距離（またはカテゴリ）および／またはその他の指定パラメータ（例えば、閾値など）にも一般化できることに留意されたい。
【００２１】
図３に示された本発明の方法を、次に図５〜図１５を参照しながら説明する。
【００２２】
図５〜図１５には、データベース・ブロック２２０と、改良ＡＮＮ１２０’のうちの従来のＡＮＮ１２０のみが示されている。図２と一致させるために、ＡＮＮ１２０のニューロンの個数は３個（ｎ＝３）に制限してある。説明のため、構成要素を３個（ｍ＝３）ずつそれぞれ有するプロトタイプが５個（ｐ＝５）必要とされ、４個の入力パターン（ｑ＝４）を分類しなければならない応用例を仮定する。図５〜図１５から明らかなように、各主要処理ステップでの３つのデータベース（２２２、２２４、２２６）の内容が示されており、改良ＡＮＮ１２０’のアクティブな部分／バスは太線で示されている。
【００２３】
ここで図５を参照すると、３つのプロトタイプＢ１（５，９，１２）、Ｂ２（１３，９，９）、Ｂ３（２，１９，３）、および２つのプロトタイプＢ４（１４，３，７）、Ｂ５（１１，６，１３）がそれぞれ、プロトタイプ・データベース２２２の２２２−１および２２２−２で参照される第１および第２のスライスの特定のメモリ・ロケーションに格納されている。図５から明らかなように、４つの入力パターンＡ１（５，１５，９）、Ａ２（７，３，１２）、Ａ３（１８，４，３）、およびＡ４（１１，６，１３）が、クエリ・データベース２２４の４つのメモリ・ロケーション（２２４−１から２２４−４）に格納されている。この好ましい実施形態では、各入力パターンの提示についてＡＮＮが算出した距離評価プロセスのグローバル結果、すなわち距離およびカテゴリは、結果データベース２２６の４つのメモリ・ロケーション（２２６−１から２２６−４）内の２つのポジション（距離は下側、カテゴリは上側）に格納される。結果データベース２２６には、クエリ・データベース２２４に存在するメモリ・ロケーション（２２４−１から２２４−４）と同数のメモリ・ロケーション（２２６−１から２２６−４）が存在する。初期化時、結果データベース２２６の各メモリ・ロケーションについて、上側ポジションの内容、すなわちカテゴリは何でもよいが、下側ポジションには最大距離Ｍａｘが格納される。先に述べたように、図５では、カテゴリ・レジスタが、距離評価機構の一部として示されている。
【００２４】
図６を参照すると、第１のメモリ・スライス（２２２−１）にあるプロトタイプＢ１〜Ｂ３の構成要素がそれぞれ、対応するニューロンのプロトタイプ・メモリにバス１６０”を介してロードされる。説明のため、各プロトタイプに関連するカテゴリをそのランクにしてあること、つまり、プロトタイプＢ１のカテゴリを１としてあることに留意されたい。
【００２５】
図７を参照すると、第１の入力パターンＡ１（第１のクエリ）が、バス１６０’を介してＡＮＮ１２０に提示され、距離が計算される。このケースでは、Ｌ１ノルム（norm）が使用される（計算技法の詳細については上記の米国特許を参照のこと）。各ニューロン１３０−１、１３０−２、１３０−３毎に算出された３つの距離、すなわち９、１４、１３は、ローカル結果である。算出された最小距離の値は、第１のプロトタイプに対応する９である。この距離および関連するカテゴリの値、すなわち９および１がそれぞれ、第１の入力パターンの提示に対するＡＮＮ１２０の反応を表すグローバル結果であり、バス１７０を介してメモリ・ロケーション２２６−１の対応するポジションに格納される。
【００２６】
図８を参照すると、同様のプロセスが入力パターンＡ２に対して適用され、最小距離および関連するカテゴリ値、すなわち８および１がそれぞれ、メモリ・ロケーション２２６−２の対応するポジションに格納される。
【００２７】
図９を参照すると、入力パターンＡ３の提示に対してプロセスが繰り返される。プロトタイプＢ２によって算出された１６が最小距離であり、したがってカテゴリは２（Ｂ２のカテゴリ）である。これらの値がそれぞれ、メモリ・ロケーション２２６−３の対応するポジションに格納される。
【００２８】
図１０を参照すると、最後の入力パターンＡ４の提示に対してプロセスが繰り返される。最小距離（すなわち、９）はプロトタイプＢ２によって算出され、したがってカテゴリは２である。これらの値がそれぞれ、メモリ・ロケーション２２６−４の対応するポジションに格納される。
【００２９】
プロセスのこの段階で、第１のスライス内のすべてのプロトタイプが処理され、プロセスは次に、第２のスライス内のプロトタイプを用いて続行される。先に述べたように、Ｍａｘはニューラル・システム２００で符号化できる最大距離であるので、すべての距離が必ずこの値より小さいか、または等しく、各クエリで結果データベース２２６の対応するメモリ・ロケーションの距離ポジション内にＭａｘ値が上書きされる。
【００３０】
図１１を参照すると、プロトタイプＢ４、Ｂ５を含む第２のスライス２２２−２が、ＡＮＮの最初の２つのニューロンにバス１６０”を介してロードされる。それに伴い、対応するカテゴリ・レジスタ内のカテゴリが変更されることに留意されたい。
【００３１】
次に入力パターンＡ１〜Ａ４が新たにＡＮＮ１２０に対して提示されて、それらが新しい１組のプロトタイプに対して処理され始める。
【００３２】
図１２を参照すると、入力パターンＡ１が提示され、格納されたプロトタイプＢ４およびＢ５との距離が計算される。これらの距離は、先に算出された距離よりも大きいので、メモリ・ロケーション２２６−１の内容は変更されない。
【００３３】
図１３を参照すると、入力パターンＡ２の提示は、メモリ・ロケーション２２６−２の内容の変更をもたらさない。これは、算出された距離、すなわち８が、格納済の距離と等しいためである。
【００３４】
図１４を参照すると、入力パターンＡ３の提示によって距離値９が導き出され、この値はメモリ・ロケーション２２６−３に格納済の距離１６よりも小さいので、上書きが行われる。その結果、９が新しい距離値となり、４が新しいカテゴリとなる。
【００３５】
図１５を参照すると、入力パターンＡ４の提示によって距離値０が導き出され、この値はメモリ・ロケーション２２６−４に格納済の距離９よりも小さいので、上書きが行われる。その結果、０が新しい距離値となり、５が新しいカテゴリとなる。
【００３６】
したがって、ニューラル・システム２００は、５つのプロトタイプを格納でき、次にプロトタイプを２ステップに分けてロードするというコストのみで、物理的に３つのニューロンのみで構成されるＡＮＮの支援を受けて、４つの入力パターンＡ１〜Ａ４をこれら５つのプロトタイプと比較することができる。さらに、上述の説明は、本発明の別の主要な特徴によれば、クエリの数ｑ（ｑ＝４）が、ニューロンの数ｎ（ｎ＝３）およびプロトタイプの数ｐ（ｐ＝５）に全く依存しないことを明らかに示している。その結果、処理されるプロトタイプの数が、ニューロンの数よりもはるかに大きくなることが可能である。イメージ処理に関して実験が行なわれ、１０６個より多いプロトタイプおよび同数のクエリを、せいぜい１０３個の物理的ニューロンで構成されるＡＮＮで処理できることが示された。この場合、スライスの数sは１０３個であった。
【００３７】
ＺＩＳＣニューロンに基づいて好ましい実施形態を説明したが、本発明を、単一命令多重データ動作モードで動作するどのような種類の基本プロセッサとでも使用することができることは理解されよう。
【００３８】
添付の特許請求の範囲に表された本発明の主旨および範囲から逸脱することなく、本明細書で例示的に説明した方法および回路に様々な変更を施し得ることは、当業者には明らかであろう。
【図面の簡単な説明】
【００３９】
【図１】ホスト・コンピュータの制御下でＺＩＳＣニューロンを使用する従来のＡＮＮから構成され、各ニューロンがＡＮＮに提示される入力パターンと基準としてそこに格納されたプロトタイプとの間の距離を計算する、ニューラル・システムのアーキテクチャの概略図である。
【図２】処理できるプロトタイプの数ｐがＡＮＮで物理的に使用可能なＺＩＳＣニューロンの数ｎよりも大きい本発明による改良ＡＮＮを実現するために変更された、図１に示すニューラル・システムのアーキテクチャの図である。
【図３】本発明の方法の主なステップを要約したフローチャートである。
【図４】図３のフローチャートに変更を施したフローチャートである。
【図５】本発明の方法を説明するために示した詳細な一例の図である。
【図６】本発明の方法を説明するために示した詳細な一例の図である。
【図７】本発明の方法を説明するために示した詳細な一例の図である。
【図８】本発明の方法を説明するために示した詳細な一例の図である。
【図９】本発明の方法を説明するために示した詳細な一例の図である。
【図１０】本発明の方法を説明するために示した詳細な一例の図である。
【図１１】本発明の方法を説明するために示した詳細な一例の図である。
【図１２】本発明の方法を説明するために示した詳細な一例の図である。
【図１３】本発明の方法を説明するために示した詳細な一例の図である。
【図１４】本発明の方法を説明するために示した詳細な一例の図である。
【図１５】本発明の方法を説明するために示した詳細な一例の図である。
【図１】
2005521118.tif 000003
【図２】
2005521118.tif 000004
【図３】
2005521118.tif 000005
【図４】
2005521118.tif 000006
【図５】
2005521118.tif 000007
【図６】
2005521118.tif 000008
【図７】
2005521118.tif 000009
【図８】
2005521118.tif 000010
【図９】
2005521118.tif 000011
【図１０】
2005521118.tif 000012
【図１１】
2005521118.tif 000013
【図１２】
2005521118.tif 000014
【図１３】
2005521118.tif 000015
【図１４】
2005521118.tif 000016
【図１５】
2005521118.tif 000017
【国際調査報告】
2005521118.tif 000018
2005521118.tif 000019