JPH08329244A - 最小誤差記憶装置 - Google Patents
最小誤差記憶装置Info
- Publication number
- JPH08329244A JPH08329244A JP7136406A JP13640695A JPH08329244A JP H08329244 A JPH08329244 A JP H08329244A JP 7136406 A JP7136406 A JP 7136406A JP 13640695 A JP13640695 A JP 13640695A JP H08329244 A JPH08329244 A JP H08329244A
- Authority
- JP
- Japan
- Prior art keywords
- error
- read
- input
- category
- unit
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/22—Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
- G06F7/24—Sorting, i.e. extracting data from one or more carriers, rearranging the data in numerical or other ordered sequence, and rerecording the sorted data on the original carrier or on a different carrier or set of carriers sorting methods in general
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
(57)【要約】
【目的】多重ループ制御が不要でアドレス生成が簡単で
あるとともに、同一カテゴリの最小誤差検知も同時に実
行可能とする。 【構成】結果記憶メモリ18から読み出され、第1のレ
ジスタ12に一時的に保持された読出誤差と、誤差計算
部11より入力され、第2のレジスタ13に一時的に保
持された入力誤差とを、第2のセレクタ15において比
較する。そして、その比較の結果、読出誤差が入力誤差
より小さいときには、読出誤差を結果記憶メモリ18内
の元の位置に書き込み、読出誤差が入力誤差より大きい
ときには、入力誤差を、読出誤差のあった元の位置に書
き込むとともに、その読出誤差をも含めてそれ以後の読
出誤差を、結果記憶メモリ18内に順次繰り下げて書き
込む処理を行う。
あるとともに、同一カテゴリの最小誤差検知も同時に実
行可能とする。 【構成】結果記憶メモリ18から読み出され、第1のレ
ジスタ12に一時的に保持された読出誤差と、誤差計算
部11より入力され、第2のレジスタ13に一時的に保
持された入力誤差とを、第2のセレクタ15において比
較する。そして、その比較の結果、読出誤差が入力誤差
より小さいときには、読出誤差を結果記憶メモリ18内
の元の位置に書き込み、読出誤差が入力誤差より大きい
ときには、入力誤差を、読出誤差のあった元の位置に書
き込むとともに、その読出誤差をも含めてそれ以後の読
出誤差を、結果記憶メモリ18内に順次繰り下げて書き
込む処理を行う。
Description
【産業上の利用分野】本発明は、音声認識や文字認識等
に用いられるパターン認識において、得られた誤差を小
さい順(又は得られた類似度の高い順)に並び替えて記
憶する最小誤差記憶装置に関する。
に用いられるパターン認識において、得られた誤差を小
さい順(又は得られた類似度の高い順)に並び替えて記
憶する最小誤差記憶装置に関する。
【0001】
【従来の技術】音声認識や文字認識等に用いられるパタ
ーン認識では、未知の入力パターンと、未知の入力パタ
ーンと同等の手法で得られた複数個の既知の標準パター
ンとを記憶しておき、これら両パターンに基づく誤差計
算(又は類似度計算)を行い、この計算結果の中から、
誤差の小さい(又は類似度の高い)標準パターンを複数
個だけ採用し、これらを誤差の小さい順(又は類似度の
高い順)に並び替えて結果記憶メモリに記憶させてい
る。そして、この結果記憶メモリに記憶された複数個の
誤差(又は類似度)に基づいて、未知の入力パターンを
特定している。
ーン認識では、未知の入力パターンと、未知の入力パタ
ーンと同等の手法で得られた複数個の既知の標準パター
ンとを記憶しておき、これら両パターンに基づく誤差計
算(又は類似度計算)を行い、この計算結果の中から、
誤差の小さい(又は類似度の高い)標準パターンを複数
個だけ採用し、これらを誤差の小さい順(又は類似度の
高い順)に並び替えて結果記憶メモリに記憶させてい
る。そして、この結果記憶メモリに記憶された複数個の
誤差(又は類似度)に基づいて、未知の入力パターンを
特定している。
【0002】このようなパターン認識では、上述の如
く、結果記憶メモリに類似度の高い順に記憶する場合
と、誤差の小さい順に記憶する場合とがあるが、これら
は表裏一体の関係であることから、ここでは誤差の小さ
い順にN個を記憶する場合を例示して説明する。
く、結果記憶メモリに類似度の高い順に記憶する場合
と、誤差の小さい順に記憶する場合とがあるが、これら
は表裏一体の関係であることから、ここでは誤差の小さ
い順にN個を記憶する場合を例示して説明する。
【0003】N個の誤差を小さい順に並び替える方法と
しては、既知の“ソートアルゴリズム”があり、その代
表的な方法で誤差を小さいものから順に並び替える処理
を図12に示す。
しては、既知の“ソートアルゴリズム”があり、その代
表的な方法で誤差を小さいものから順に並び替える処理
を図12に示す。
【0004】誤差を小さい順にN個記憶したい場合に
は、結果記憶メモリにはN個の記憶領域〔アドレス
(0)からアドレス(N−1)まで〕が必要となる(ス
テップS51)。そして、このアルゴリズムの実行結果
は、図13に示す結果記憶メモリのアドレス(0)から
アドレス(N−1)に記憶されることになる。
は、結果記憶メモリにはN個の記憶領域〔アドレス
(0)からアドレス(N−1)まで〕が必要となる(ス
テップS51)。そして、このアルゴリズムの実行結果
は、図13に示す結果記憶メモリのアドレス(0)から
アドレス(N−1)に記憶されることになる。
【0005】すなわち、結果記憶メモリの先頭アドレス
(I=0)の内容Aを読み出し、次に、このアドレスに
隣接するアドレス(J=I+1)を算出し、アドレス
(J)で示す結果記憶メモリの内容Bを読み出す(ステ
ップS52〜S54)。
(I=0)の内容Aを読み出し、次に、このアドレスに
隣接するアドレス(J=I+1)を算出し、アドレス
(J)で示す結果記憶メモリの内容Bを読み出す(ステ
ップS52〜S54)。
【0006】そして、両者A,Bの大小比較を行い(ス
テップS55)、A<Bの場合には何もせずにステップ
S57へと動作を進め、A≧Bの場合には、AとBとを
入れ替えて(ステップS56)、ステップS57へと動
作を進める。すなわち、ステップS56では、Aをアド
レス(J)で示すメモリの内容とし、Bをアドレス
(I)で示すメモリの内容とする。
テップS55)、A<Bの場合には何もせずにステップ
S57へと動作を進め、A≧Bの場合には、AとBとを
入れ替えて(ステップS56)、ステップS57へと動
作を進める。すなわち、ステップS56では、Aをアド
レス(J)で示すメモリの内容とし、Bをアドレス
(I)で示すメモリの内容とする。
【0007】そして、ステップS57でアドレス(I)
を更新して、ステップS53からの処理を繰り返すとい
った動作を(N−1)回行うことにより(ステップS5
8)、アドレス(N−1)には、アドレス(0)からア
ドレス(N−1)までの中で最大値のものが記憶される
ことになる。
を更新して、ステップS53からの処理を繰り返すとい
った動作を(N−1)回行うことにより(ステップS5
8)、アドレス(N−1)には、アドレス(0)からア
ドレス(N−1)までの中で最大値のものが記憶される
ことになる。
【0008】この後、結果記憶メモリの処理アドレスを
アドレス(0)からアドレス(N−2)として、上記と
同様の処理を(N−2)回行うことにより、アドレス
(N−2)には、アドレス(0)からアドレス(N−
2)までの中で最大値のものが記憶されることになる。
アドレス(0)からアドレス(N−2)として、上記と
同様の処理を(N−2)回行うことにより、アドレス
(N−2)には、アドレス(0)からアドレス(N−
2)までの中で最大値のものが記憶されることになる。
【0009】このような処理を、結果記憶メモリの処理
アドレスがアドレス(0)となるまで繰り返し行い、す
なわち(N−3)回、(N−4)回、・・・、1回と順
次行うことにより、記憶結果メモリには、先頭アドレス
(0)からアドレス(N−1)まで、値の小さい順番に
誤差が記憶されることになる。
アドレスがアドレス(0)となるまで繰り返し行い、す
なわち(N−3)回、(N−4)回、・・・、1回と順
次行うことにより、記憶結果メモリには、先頭アドレス
(0)からアドレス(N−1)まで、値の小さい順番に
誤差が記憶されることになる。
【0010】上記の処理をメモリアクセス回数に注目し
てみると、条件分岐によって変動するが、最短経路で
は、
てみると、条件分岐によって変動するが、最短経路で
は、
【0011】
【数1】 最長経路では、
【0012】
【数2】 となる。
【0013】
【発明が解決しようとする課題】アクセス回数は、処理
時間に影響を与える重要な要素であり、アクセス回数が
少ない程処理時間は短くなるが、上記の処理方法では、
同じアドレスを数回〔アドレス(0)では(N−1)
回、アドレス(1)では(N−2)回等〕アクセスする
必要があり、処理時間がかかるといった問題がある。
時間に影響を与える重要な要素であり、アクセス回数が
少ない程処理時間は短くなるが、上記の処理方法では、
同じアドレスを数回〔アドレス(0)では(N−1)
回、アドレス(1)では(N−2)回等〕アクセスする
必要があり、処理時間がかかるといった問題がある。
【0014】また、上記の処理をハードウエアとして構
成する場合には、隣接するアドレス生成や、多重ループ
制御等が必要となるため、規模が大きくかつ複雑になる
といった問題もある。
成する場合には、隣接するアドレス生成や、多重ループ
制御等が必要となるため、規模が大きくかつ複雑になる
といった問題もある。
【0015】パターン認識では、標準パターンの数が膨
大であるため、上記のアルゴリズムをそのまま適用する
ことは、現実的でない。そのため、必要な個数に絞り込
む処理が必要となる。
大であるため、上記のアルゴリズムをそのまま適用する
ことは、現実的でない。そのため、必要な個数に絞り込
む処理が必要となる。
【0016】つまり、入力パターンと標準パターンとの
誤差計算を行う毎に、記憶されているN個の中の最大値
を求め、計算結果がこれより小さい場合は、これを計算
結果と置き換えるわけである。これにより、最小値をも
つN個がランダムに記憶されることになる。
誤差計算を行う毎に、記憶されているN個の中の最大値
を求め、計算結果がこれより小さい場合は、これを計算
結果と置き換えるわけである。これにより、最小値をも
つN個がランダムに記憶されることになる。
【0017】ところで、パターン認識における最小誤差
記憶(すなわち、値の小さい順番に誤差を記憶)におい
て、もう一つ考慮しなければならない課題がある。それ
は、同一カテゴリの処理である。
記憶(すなわち、値の小さい順番に誤差を記憶)におい
て、もう一つ考慮しなければならない課題がある。それ
は、同一カテゴリの処理である。
【0018】パターン認識では、同一カテゴリについ
て、複数個の標準パターンを用意しておくのが一般的で
ある。そのため、最小誤差記憶の場合、同一カテゴリに
ついては統合し、図14に示すように、「カテゴリ内の
最小誤差を、そのカテゴリの代表として採用する」こと
を行っている。
て、複数個の標準パターンを用意しておくのが一般的で
ある。そのため、最小誤差記憶の場合、同一カテゴリに
ついては統合し、図14に示すように、「カテゴリ内の
最小誤差を、そのカテゴリの代表として採用する」こと
を行っている。
【0019】つまり、上述した誤差の大小関係に加え、
カテゴリ内での大小関係も考慮する必要がある。そのた
め、カテゴリをも考慮して上記従来の処理方法を採用す
ることは、処理時間がさらに増大するとともに、ハード
ウエア構成についても、さらに規模が大きくかつ複雑な
ものとなるといった問題がある。
カテゴリ内での大小関係も考慮する必要がある。そのた
め、カテゴリをも考慮して上記従来の処理方法を採用す
ることは、処理時間がさらに増大するとともに、ハード
ウエア構成についても、さらに規模が大きくかつ複雑な
ものとなるといった問題がある。
【0020】本発明はこのような問題点を解決すべく創
案されたもので、その目的は、多重ループ制御が不要で
アドレス生成が簡単であるとともに、同一カテゴリの最
小誤差検知も同時に実行できる最小誤差記憶装置を提供
することにある。
案されたもので、その目的は、多重ループ制御が不要で
アドレス生成が簡単であるとともに、同一カテゴリの最
小誤差検知も同時に実行できる最小誤差記憶装置を提供
することにある。
【0021】
【課題を解決するための手段】上記課題を解決するた
め、本発明の請求項1記載の最小誤差記憶装置は、計算
により求められた入力パターンと標準パターンとの誤差
を最小のものから順番に複数個記憶する第1の記憶部
と、この第1の記憶部に記憶された複数個の誤差を小さ
い順に順次読み出す第1の読み出し処理部と、この第1
の読み出し処理部により順次読み出された誤差を一時的
に保持する第1の保持部と、誤差計算部より入力された
誤差を一時的に保持する第2の保持部と、前記第1の保
持部に保持された読出誤差と前記第2の保持部に保持さ
れた入力誤差との比較を行い、読出誤差が入力誤差より
小さいときには読出誤差を前記第1の記憶部内の元の位
置に書き込み、読出誤差が入力誤差より大きいときには
入力誤差を読出誤差のあった元の位置に書き込むととも
に、その読出誤差をも含めてそれ以後の読出誤差を前記
第1の記憶部内に順次繰り下げて書き込む処理を行う第
1の書き込み処理部とを備えた構成とする。
め、本発明の請求項1記載の最小誤差記憶装置は、計算
により求められた入力パターンと標準パターンとの誤差
を最小のものから順番に複数個記憶する第1の記憶部
と、この第1の記憶部に記憶された複数個の誤差を小さ
い順に順次読み出す第1の読み出し処理部と、この第1
の読み出し処理部により順次読み出された誤差を一時的
に保持する第1の保持部と、誤差計算部より入力された
誤差を一時的に保持する第2の保持部と、前記第1の保
持部に保持された読出誤差と前記第2の保持部に保持さ
れた入力誤差との比較を行い、読出誤差が入力誤差より
小さいときには読出誤差を前記第1の記憶部内の元の位
置に書き込み、読出誤差が入力誤差より大きいときには
入力誤差を読出誤差のあった元の位置に書き込むととも
に、その読出誤差をも含めてそれ以後の読出誤差を前記
第1の記憶部内に順次繰り下げて書き込む処理を行う第
1の書き込み処理部とを備えた構成とする。
【0022】また、本発明の請求項2記載の最小誤差記
憶装置は、計算により求められた入力パターンと標準パ
ターンとの誤差を最小のものから順番に複数個記憶する
とともに、この複数個の誤差のそれぞれに対応したカテ
ゴリを誤差に対応付けて記憶する第2の記憶部と、この
第2の記憶部に記憶された複数個の誤差及びカテゴリ
を、誤差の小さい順に順次読み出す第2の読み出し処理
部と、この第2の読み出し処理部により順次読み出され
た誤差及びカテゴリを一時的に保持する第3の保持部
と、誤差計算部より入力された誤差及び対応するカテゴ
リを一時的に保持する第4の保持部と、前記第3の保持
部に保持された読出誤差と前記第4の保持部に保持され
た入力誤差との比較を行い、読出誤差が入力誤差より小
さいときには読出誤差及びカテゴリを前記第2の記憶部
内の元の位置に書き込み、読出誤差が入力誤差より大き
いときには入力誤差及びカテゴリを読出誤差及びカテゴ
リがあった元の位置に書き込むとともに、その読出誤差
及びカテゴリをも含めてそれ以後の読出誤差及びカテゴ
リを前記第2の記憶部内に順次繰り下げて書き込む処理
を行う第2の書き込み処理部と、この第2の書き込み処
理部での処理と並行して前記第3の保持部に保持された
カテゴリと前記第4の保持部に保持されたカテゴリとの
比較を行い、読出誤差が入力誤差より小さいときに両カ
テゴリが一致したときには、その一致したカテゴリ及び
読出誤差を前記第2の記憶部内の元の位置に書き込み処
理し、読出誤差が入力誤差より大きいときに両カテゴリ
が一致したときには、その一致したカテゴリ及び読出誤
差を前記第2の記憶部から削除する処理を、前記第2の
書き込み処理部での処理に優先して行う第3の書き込み
処理部とを備えた構成とする。
憶装置は、計算により求められた入力パターンと標準パ
ターンとの誤差を最小のものから順番に複数個記憶する
とともに、この複数個の誤差のそれぞれに対応したカテ
ゴリを誤差に対応付けて記憶する第2の記憶部と、この
第2の記憶部に記憶された複数個の誤差及びカテゴリ
を、誤差の小さい順に順次読み出す第2の読み出し処理
部と、この第2の読み出し処理部により順次読み出され
た誤差及びカテゴリを一時的に保持する第3の保持部
と、誤差計算部より入力された誤差及び対応するカテゴ
リを一時的に保持する第4の保持部と、前記第3の保持
部に保持された読出誤差と前記第4の保持部に保持され
た入力誤差との比較を行い、読出誤差が入力誤差より小
さいときには読出誤差及びカテゴリを前記第2の記憶部
内の元の位置に書き込み、読出誤差が入力誤差より大き
いときには入力誤差及びカテゴリを読出誤差及びカテゴ
リがあった元の位置に書き込むとともに、その読出誤差
及びカテゴリをも含めてそれ以後の読出誤差及びカテゴ
リを前記第2の記憶部内に順次繰り下げて書き込む処理
を行う第2の書き込み処理部と、この第2の書き込み処
理部での処理と並行して前記第3の保持部に保持された
カテゴリと前記第4の保持部に保持されたカテゴリとの
比較を行い、読出誤差が入力誤差より小さいときに両カ
テゴリが一致したときには、その一致したカテゴリ及び
読出誤差を前記第2の記憶部内の元の位置に書き込み処
理し、読出誤差が入力誤差より大きいときに両カテゴリ
が一致したときには、その一致したカテゴリ及び読出誤
差を前記第2の記憶部から削除する処理を、前記第2の
書き込み処理部での処理に優先して行う第3の書き込み
処理部とを備えた構成とする。
【0023】
【作用】請求項1記載の発明の作用について述べる。
【0024】第1の読み出し処理部により第1の記憶部
から読み出され、第1の保持部に一時的に保持された読
出誤差と、誤差計算部より入力され、第2の保持部に一
時的に保持された入力誤差とを、第1の書き込み処理部
において比較する。
から読み出され、第1の保持部に一時的に保持された読
出誤差と、誤差計算部より入力され、第2の保持部に一
時的に保持された入力誤差とを、第1の書き込み処理部
において比較する。
【0025】第1の書き込み処理部は、その比較の結
果、読出誤差が入力誤差より小さいときには、読出誤差
を第1の記憶部内の元の位置に書き込み、読出誤差が入
力誤差より大きいときには、入力誤差を読出誤差のあっ
た元の位置に書き込むとともに、その読出誤差をも含め
てそれ以後の読出誤差を、第1の記憶部内に順次繰り下
げて書き込む処理を行う。
果、読出誤差が入力誤差より小さいときには、読出誤差
を第1の記憶部内の元の位置に書き込み、読出誤差が入
力誤差より大きいときには、入力誤差を読出誤差のあっ
た元の位置に書き込むとともに、その読出誤差をも含め
てそれ以後の読出誤差を、第1の記憶部内に順次繰り下
げて書き込む処理を行う。
【0026】すなわち、図5に示す例で言えば、入力誤
差である入力(17)が、第1の記憶部内のアドレス
(3)に書き込まれ、アドレス(3)に書き込まれてい
た誤差(20)は、一つ繰り下がったアドレス(4)
に、アドレス(4)に書き込まれていた誤差(20)
は、一つ繰り下がったアドレス(5)にと、順次繰り下
がって書き込まれる。
差である入力(17)が、第1の記憶部内のアドレス
(3)に書き込まれ、アドレス(3)に書き込まれてい
た誤差(20)は、一つ繰り下がったアドレス(4)
に、アドレス(4)に書き込まれていた誤差(20)
は、一つ繰り下がったアドレス(5)にと、順次繰り下
がって書き込まれる。
【0027】つまり、計算結果を割り込ませることで、
それまで実行されて記憶されている結果を活用できる利
点がある。
それまで実行されて記憶されている結果を活用できる利
点がある。
【0028】請求項2記載の発明の作用について述べ
る。
る。
【0029】第2の読み出し処理部により第2の記憶部
から読み出され、第3の保持部に一時的に保持された読
出誤差及びカテゴリと、誤差計算部より入力され、第4
の保持部に一時的に保持された入力誤差及びカテゴリと
のうち、読出誤差と入力誤差とを第2の書き込み処理部
において比較する。そして、第2の書き込み処理部で
は、請求項1に記載した第1の書き込み処理部と同様の
処理を行う。
から読み出され、第3の保持部に一時的に保持された読
出誤差及びカテゴリと、誤差計算部より入力され、第4
の保持部に一時的に保持された入力誤差及びカテゴリと
のうち、読出誤差と入力誤差とを第2の書き込み処理部
において比較する。そして、第2の書き込み処理部で
は、請求項1に記載した第1の書き込み処理部と同様の
処理を行う。
【0030】一方、第3の書き込み処理部は、第2の書
き込み処理部での処理と並行し、かつ第2の書き込み処
理部での処理に優先して、次の処理を実行する。
き込み処理部での処理と並行し、かつ第2の書き込み処
理部での処理に優先して、次の処理を実行する。
【0031】すなわち、第3の保持部に保持されたカテ
ゴリと、第4の保持部に保持されたカテゴリとの比較を
行い、読出誤差が入力誤差より小さいときに両カテゴリ
が一致したときには、その一致したカテゴリ及び読出誤
差を、第2の記憶部内の元の位置に書き込み処理し、読
出誤差が入力誤差より大きいときに両カテゴリが一致し
たときには、その一致したカテゴリ及び入力誤差を、第
2の記憶部から削除する処理を行う。
ゴリと、第4の保持部に保持されたカテゴリとの比較を
行い、読出誤差が入力誤差より小さいときに両カテゴリ
が一致したときには、その一致したカテゴリ及び読出誤
差を、第2の記憶部内の元の位置に書き込み処理し、読
出誤差が入力誤差より大きいときに両カテゴリが一致し
たときには、その一致したカテゴリ及び入力誤差を、第
2の記憶部から削除する処理を行う。
【0032】つまり、図9に示す例で言えば、同図
(c),(d)に示すように、第3の保持部に保持され
たアドレス(8)の読出誤差及びカテゴリ(80,9
0)と、第4の保持部に保持された入力誤差及びカテゴ
リ(26,90)との比較では、読出誤差(80)が入
力誤差(26)より大きいときに両カテゴリが一致する
ことから、このときにはその一致したカテゴリ(90)
及び入力誤差(80)のアドレス(8)の内容を削除す
る処理を行う、また、同図(e),(f)に示すよう
に、第3の保持部に保持されたアドレス(1)の読出誤
差及びカテゴリ(10,90)と、第4の保持部に保持
された入力誤差及びカテゴリ(18,90)との比較で
は、読出誤差(10)が入力誤差(18)より小さいと
きに両カテゴリが一致することから、このときにはその
一致したカテゴリ(90)及び入力誤差(10)を元の
アドレス(1)の位置に書き込み処理する。すなわち、
この場合はソートされない。
(c),(d)に示すように、第3の保持部に保持され
たアドレス(8)の読出誤差及びカテゴリ(80,9
0)と、第4の保持部に保持された入力誤差及びカテゴ
リ(26,90)との比較では、読出誤差(80)が入
力誤差(26)より大きいときに両カテゴリが一致する
ことから、このときにはその一致したカテゴリ(90)
及び入力誤差(80)のアドレス(8)の内容を削除す
る処理を行う、また、同図(e),(f)に示すよう
に、第3の保持部に保持されたアドレス(1)の読出誤
差及びカテゴリ(10,90)と、第4の保持部に保持
された入力誤差及びカテゴリ(18,90)との比較で
は、読出誤差(10)が入力誤差(18)より小さいと
きに両カテゴリが一致することから、このときにはその
一致したカテゴリ(90)及び入力誤差(10)を元の
アドレス(1)の位置に書き込み処理する。すなわち、
この場合はソートされない。
【0033】つまり、計算結果を割り込ませることで、
それまで実行されて記憶されている結果を活用しつつ、
同一カテゴリの処理も同時に行える利点がある。
それまで実行されて記憶されている結果を活用しつつ、
同一カテゴリの処理も同時に行える利点がある。
【0034】
【実施例】以下、本発明の一実施例を図面を参照して説
明する。
明する。
【0035】図1は、本発明の最小誤差記憶装置の電気
的構成を示すブロック図であり、請求項1に対応してい
る。
的構成を示すブロック図であり、請求項1に対応してい
る。
【0036】すなわち、誤差計算部11、第1のレジス
タ12、第2のレジスタ13、第1のセレクタ14、第
2のセレクタ15、コンパレータ16、バッファ17、
結果記憶メモリ18及び制御部19によって構成されて
いる。また、図2は、本発明の最小誤差記憶装置の他の
実施例を示しており、図1に示す結果記憶メモリ18を
シフトレジスタ又はFiFo(ファースト・イン・ファ
ースト・アウト)を用いて構成したものである。両者の
違いは、結果記憶にメモリを用いるか、シフトレジスタ
を用いるかであり、最小誤差記憶の原理自体は同じもの
である。
タ12、第2のレジスタ13、第1のセレクタ14、第
2のセレクタ15、コンパレータ16、バッファ17、
結果記憶メモリ18及び制御部19によって構成されて
いる。また、図2は、本発明の最小誤差記憶装置の他の
実施例を示しており、図1に示す結果記憶メモリ18を
シフトレジスタ又はFiFo(ファースト・イン・ファ
ースト・アウト)を用いて構成したものである。両者の
違いは、結果記憶にメモリを用いるか、シフトレジスタ
を用いるかであり、最小誤差記憶の原理自体は同じもの
である。
【0037】図2に示す回路構成では、アドレス生成が
不要であるため、回路規模を更に軽減できる利点があ
る。また、図1及び図2に示す結果記憶メモリ18は、
所望するN個の結果に見合う記憶容量が必要であり、初
期値として無限大、回路では最大値を与えておく。記憶
個数が少ない場合には、図2に示す回路構成の方が有利
である。
不要であるため、回路規模を更に軽減できる利点があ
る。また、図1及び図2に示す結果記憶メモリ18は、
所望するN個の結果に見合う記憶容量が必要であり、初
期値として無限大、回路では最大値を与えておく。記憶
個数が少ない場合には、図2に示す回路構成の方が有利
である。
【0038】また、各図には示されていないが、結果記
憶メモリ18は、外部回路例えばCPU等に接続されて
おり、結果記憶メモリ18の初期化や結果の読み出し
は、これら外部回路で行うものとする。
憶メモリ18は、外部回路例えばCPU等に接続されて
おり、結果記憶メモリ18の初期化や結果の読み出し
は、これら外部回路で行うものとする。
【0039】第1のレジスタ12は、結果記憶メモリ1
8から読み出した内容Bを保持するレジスタである。第
2のレジスタ13は、誤差計算部11からの入力A又は
第1のレジスタ12の内容Bのいずれかを保持するレジ
スタである。
8から読み出した内容Bを保持するレジスタである。第
2のレジスタ13は、誤差計算部11からの入力A又は
第1のレジスタ12の内容Bのいずれかを保持するレジ
スタである。
【0040】また、第1のセレクタ14は、第2のレジ
スタ13に、誤差計算部11からの入力Aを保持させる
か、第1のレジスタ12の内容Bを保持させるかの選択
を行う選択回路であり、制御部19からの切替信号S1
は、実行時はB側を、そうでない場合はA側を選択する
切替信号となっている。
スタ13に、誤差計算部11からの入力Aを保持させる
か、第1のレジスタ12の内容Bを保持させるかの選択
を行う選択回路であり、制御部19からの切替信号S1
は、実行時はB側を、そうでない場合はA側を選択する
切替信号となっている。
【0041】また、第2のセレクタ15は、第1のレジ
スタ12の内容B又は第2のレジスタ13の内容Aのい
ずれかを書き込むための選択回路であり、コンパレータ
16からの切替信号S2は、コンパレータ16の出力結
果により、A<Bの場合はA側を、A≧Bの場合はB側
を選択する切替信号となっている。
スタ12の内容B又は第2のレジスタ13の内容Aのい
ずれかを書き込むための選択回路であり、コンパレータ
16からの切替信号S2は、コンパレータ16の出力結
果により、A<Bの場合はA側を、A≧Bの場合はB側
を選択する切替信号となっている。
【0042】コンパレータ16は、第1のレジスタ12
の内容Bと、第2のレジスタ13の内容Aとを比較する
回路である。
の内容Bと、第2のレジスタ13の内容Aとを比較する
回路である。
【0043】バッファ17は、読み込み時には結果記憶
メモリ18の内容Bが第1のレジスタ12に入力される
ように、書き込み時には第2のセレクタ15の出力Yが
結果記憶メモリ18に入力されるように制御する回路で
ある。
メモリ18の内容Bが第1のレジスタ12に入力される
ように、書き込み時には第2のセレクタ15の出力Yが
結果記憶メモリ18に入力されるように制御する回路で
ある。
【0044】制御部19は、結果記憶メモリ18のアド
レス生成、メモリの読み出し/書き込み、ループ制御、
各レジスタ12,13への保持信号発生、バッファ制御
等を行う回路である。
レス生成、メモリの読み出し/書き込み、ループ制御、
各レジスタ12,13への保持信号発生、バッファ制御
等を行う回路である。
【0045】なお、誤差計算部11自体の構成について
は、本発明の範囲外であり、また従来より行われている
ものであるので、ここでは説明を省略する。
は、本発明の範囲外であり、また従来より行われている
ものであるので、ここでは説明を省略する。
【0046】すなわち、本発明の最小誤差記憶装置によ
れば、ハードウエア構成は、誤差計算部11からの誤差
と、結果記憶メモリ18から読み出した結果(誤差)と
を保持する第1及び第2のレジスタ12,13、両誤差
の大小関係を判定するコンパレータ16、第1及び第2
のレジスタ12,13のどちらの内容を書き込むかを選
択する第1及び第2のセレクタ14,15といったシン
プルな構成となっている。また、図2では、結果記憶メ
モリ18をシフトレジスタで構成しているため、Bから
Aへの入れ替えが容易に行える。
れば、ハードウエア構成は、誤差計算部11からの誤差
と、結果記憶メモリ18から読み出した結果(誤差)と
を保持する第1及び第2のレジスタ12,13、両誤差
の大小関係を判定するコンパレータ16、第1及び第2
のレジスタ12,13のどちらの内容を書き込むかを選
択する第1及び第2のセレクタ14,15といったシン
プルな構成となっている。また、図2では、結果記憶メ
モリ18をシフトレジスタで構成しているため、Bから
Aへの入れ替えが容易に行える。
【0047】次に、上記構成の最小誤差記憶装置の動作
について、図3に示すフローチャート、図4に示す処理
図を適宜参照して説明する。
について、図3に示すフローチャート、図4に示す処理
図を適宜参照して説明する。
【0048】入力パターンと辞書(標準パターン)との
誤差を計算し、この計算した誤差を逐次並び替えて記憶
していくことにより、結果記憶メモリ18の内容は、
誤差を計算し、この計算した誤差を逐次並び替えて記憶
していくことにより、結果記憶メモリ18の内容は、
【0049】
【数3】M(0)≦M(1)≦M(2)≦・・・≦M
(I)≦・・・≦M(N−1) ただし、I=0,1,2,・・・,N−1 M(I):アドレスIのメモリ内容 の関係が成立しているはずである。
(I)≦・・・≦M(N−1) ただし、I=0,1,2,・・・,N−1 M(I):アドレスIのメモリ内容 の関係が成立しているはずである。
【0050】この関係を利用するとき、メモリ内容をア
ドレス(0)から順次読み出していき、計算された誤差
がメモリの内容より小さくなったアドレス(I)へ入力
誤差を割り込ませ、それ以降についてはアドレス(I)
の内容をアドレス(I+1)へ移動していくことで、ソ
ート動作が可能であることがわかる。
ドレス(0)から順次読み出していき、計算された誤差
がメモリの内容より小さくなったアドレス(I)へ入力
誤差を割り込ませ、それ以降についてはアドレス(I)
の内容をアドレス(I+1)へ移動していくことで、ソ
ート動作が可能であることがわかる。
【0051】そこで、ここでは上記のようにして、最小
誤差N個が結果記憶メモリ18のアドレス(1),
(2),・・・,(N−1)に小さい順に記憶されてお
り、誤差計算部11によって計算された誤差Aが、第2
のレジスタ13に保持されているものとして、本実施例
の動作を説明する。
誤差N個が結果記憶メモリ18のアドレス(1),
(2),・・・,(N−1)に小さい順に記憶されてお
り、誤差計算部11によって計算された誤差Aが、第2
のレジスタ13に保持されているものとして、本実施例
の動作を説明する。
【0052】すなわち、結果記憶メモリ18のアドレス
(I=0)の内容Bを読み出して第1のレジスタ12に
保持し(ステップS1,S2)、各レジスタ12,13
に保持された内容A,Bの大小比較を行う(ステップS
3)。
(I=0)の内容Bを読み出して第1のレジスタ12に
保持し(ステップS1,S2)、各レジスタ12,13
に保持された内容A,Bの大小比較を行う(ステップS
3)。
【0053】そして、A<Bの場合には、Aをアドレス
(I)の内容とし、その後BをAに置き換える(ステッ
プS4)。また、A≧Bの場合には、Bを読み込んだ元
のアドレス(I)に戻す(ステップS5)。
(I)の内容とし、その後BをAに置き換える(ステッ
プS4)。また、A≧Bの場合には、Bを読み込んだ元
のアドレス(I)に戻す(ステップS5)。
【0054】そして、ステップS6でアドレス(I)を
更新して、ステップS2からの処理を繰り返すといった
動作をN回行うことにより(ステップS7)、結果記憶
メモリ18には、最小値順に並び替えられた誤差がアド
レス(0)からアドレス(N−1)に記憶されることに
なる。
更新して、ステップS2からの処理を繰り返すといった
動作をN回行うことにより(ステップS7)、結果記憶
メモリ18には、最小値順に並び替えられた誤差がアド
レス(0)からアドレス(N−1)に記憶されることに
なる。
【0055】本実施例によれば、メモリアクセス回数
は、条件分岐に依存せず、対象となるアドレス(I)に
ついて、読み込み/書き込みが各1回行われるだけであ
る。すなわち、T=2・Nである。つまり、上記した従
来の処理方法よりもメモリアクセス回数が軽減されてい
るので、その分高速な処理が可能となる。
は、条件分岐に依存せず、対象となるアドレス(I)に
ついて、読み込み/書き込みが各1回行われるだけであ
る。すなわち、T=2・Nである。つまり、上記した従
来の処理方法よりもメモリアクセス回数が軽減されてい
るので、その分高速な処理が可能となる。
【0056】また、図4及び図5からも分かるように、
隣接するアドレスの生成や多重ループ制御も不要である
ので、ハードウエアとして実現する場合の回路規模も簡
素化できることが分かる。
隣接するアドレスの生成や多重ループ制御も不要である
ので、ハードウエアとして実現する場合の回路規模も簡
素化できることが分かる。
【0057】ここで、結果記憶メモリ18の記憶個数が
10(N=10)の場合の実施例について、図5に示す
動作概念図及び図6に示す動作過程の一覧表を適宜参照
して説明する。ただし、図5において(a)が実行前の
結果記憶メモリ18の内容、(b)が実行後の結果記憶
メモリ18の内容である。
10(N=10)の場合の実施例について、図5に示す
動作概念図及び図6に示す動作過程の一覧表を適宜参照
して説明する。ただし、図5において(a)が実行前の
結果記憶メモリ18の内容、(b)が実行後の結果記憶
メモリ18の内容である。
【0058】処理の実行前に、誤差計算部11の計算結
果として、現時点の入力誤差(17)が第2のレジスタ
13に記憶されているものとする。
果として、現時点の入力誤差(17)が第2のレジスタ
13に記憶されているものとする。
【0059】この条件で上記の処理を実行した結果、図
5及び図6に示す実施例では、入力誤差である入力(1
7)が、結果記憶メモリ18のアドレス(3)に書き込
まれ(図5及び図6において符号21により示す)、ア
ドレス(3)に書き込まれていた誤差(20)は、一つ
繰り下がったアドレス(4)に、アドレス(4)に書き
込まれていた誤差(20)は、一つ繰り下がったアドレ
ス(5)にと、順次繰り下がって書き込まれ、実行前の
最後のアドレス(9)に書き込まれていた誤差(90)
が除外されることになる。
5及び図6に示す実施例では、入力誤差である入力(1
7)が、結果記憶メモリ18のアドレス(3)に書き込
まれ(図5及び図6において符号21により示す)、ア
ドレス(3)に書き込まれていた誤差(20)は、一つ
繰り下がったアドレス(4)に、アドレス(4)に書き
込まれていた誤差(20)は、一つ繰り下がったアドレ
ス(5)にと、順次繰り下がって書き込まれ、実行前の
最後のアドレス(9)に書き込まれていた誤差(90)
が除外されることになる。
【0060】つまり、メモリの内容が入力値(入力誤
差)より小さい場合はメモリの内容がそのまま残り、メ
モリの内容が入力値(入力誤差)より大きくなった時点
で、その入力値がメモリに取り込まれ、その後のメモリ
の内容がシフトされ、最大値が除外されることになる。
差)より小さい場合はメモリの内容がそのまま残り、メ
モリの内容が入力値(入力誤差)より大きくなった時点
で、その入力値がメモリに取り込まれ、その後のメモリ
の内容がシフトされ、最大値が除外されることになる。
【0061】ここで、標準パターン数をP、最小誤差と
して記憶する個数をNとして、実際の最小誤差の記憶に
要するメモリのアクセス回数を算出する。
して記憶する個数をNとして、実際の最小誤差の記憶に
要するメモリのアクセス回数を算出する。
【0062】本発明では、アクセス回数T1は、
【0063】
【数4】T1=P+2・P′・N であるのに対して、既知のソートアルゴリズムを使って
最小誤差を記憶する方法では、アクセス回数T2は、
最小誤差を記憶する方法では、アクセス回数T2は、
【0064】
【数5】T2=P・(N+1)+N・(N−1) となる。
【0065】算出式の前項は、標準パターンの中でN位
以内に入っているかを判断するメモリアクセスであり、
後の項は、N個の並び替えに必要なメモリアクセス回数
である。N位以内に入っているかどうかを判断するに
は、本発明では常に決められたメモリアドレスに最大値
が記憶されているため、各標準パターンについて1回行
うだけでよいが、既知のソートアルゴリズムを使った場
合には、N個の最小誤差がランダムに記憶されているこ
とから、この記憶されているN個の中から最大値を検出
し、それと入れ替えることが必要である。
以内に入っているかを判断するメモリアクセスであり、
後の項は、N個の並び替えに必要なメモリアクセス回数
である。N位以内に入っているかどうかを判断するに
は、本発明では常に決められたメモリアドレスに最大値
が記憶されているため、各標準パターンについて1回行
うだけでよいが、既知のソートアルゴリズムを使った場
合には、N個の最小誤差がランダムに記憶されているこ
とから、この記憶されているN個の中から最大値を検出
し、それと入れ替えることが必要である。
【0066】実際に最小誤差の対象となるパターン数
P′は、
P′は、
【0067】
【数6】 2・P′・N=P・(N+1)+N・(N−1)−P より、
【0068】
【数7】P′≦(P+N−1)/2 である。すなわち、標準パターン数の半分以下が実際の
最小誤差記憶の対象になれば、本発明の方がメモリアク
セス回数を少なくすることができる。
最小誤差記憶の対象になれば、本発明の方がメモリアク
セス回数を少なくすることができる。
【0069】また、本実施例では、結果記憶メモリ18
をシフトレジスタ形式として構成できる利点がある。シ
フトレジスタで構成した場合には、通常のメモリアクセ
ス速度に比べて半分以下の速度でよく、処理時間を等価
的に速くすることが可能である。
をシフトレジスタ形式として構成できる利点がある。シ
フトレジスタで構成した場合には、通常のメモリアクセ
ス速度に比べて半分以下の速度でよく、処理時間を等価
的に速くすることが可能である。
【0070】次に、同一カテゴリを考慮した場合の処理
について説明する。
について説明する。
【0071】図7は、本発明の最小誤差記憶装置の電気
的構成を示すブロック図であり、請求項2に対応してい
る。
的構成を示すブロック図であり、請求項2に対応してい
る。
【0072】すなわち、誤差計算部11、第1のレジス
タ12、第2のレジスタ13、第1のセレクタ14、第
2のセレクタ15、コンパレータ16、バッファ17、
制御部19を備えており、これらの構成は図1及び図2
に示したものと同様であるので、ここでは説明を省略す
る。
タ12、第2のレジスタ13、第1のセレクタ14、第
2のセレクタ15、コンパレータ16、バッファ17、
制御部19を備えており、これらの構成は図1及び図2
に示したものと同様であるので、ここでは説明を省略す
る。
【0073】本実施例では、上記構成の他に、第3のレ
ジスタ32、第4のレジスタ33、第2のコンパレータ
34、第3のコンパレータ35、第3のセレクタ36、
第4のセレクタ37、第5のセレクタ38、第6のセレ
クタ39、制御部40、切替制御部41及び結果記憶メ
モリ42を備えた構成となっている。
ジスタ32、第4のレジスタ33、第2のコンパレータ
34、第3のコンパレータ35、第3のセレクタ36、
第4のセレクタ37、第5のセレクタ38、第6のセレ
クタ39、制御部40、切替制御部41及び結果記憶メ
モリ42を備えた構成となっている。
【0074】第3のレジスタ32は、結果記憶メモリ4
2から読み出したカテゴリDを保持するレジスタであ
る。第4のレジスタ33は、誤差計算部11からの入力
c又は第3のレジスタ32の内容Dのいずれかを保持す
るレジスタである。
2から読み出したカテゴリDを保持するレジスタであ
る。第4のレジスタ33は、誤差計算部11からの入力
c又は第3のレジスタ32の内容Dのいずれかを保持す
るレジスタである。
【0075】第3のセレクタ36は、第3のレジスタ3
2のカテゴリD又は入力カテゴリcのいずれかを書き込
むための選択回路であり、切替信号S1は、実行時には
D側を、そうでない場合はc側を選択する切替信号とな
っている。
2のカテゴリD又は入力カテゴリcのいずれかを書き込
むための選択回路であり、切替信号S1は、実行時には
D側を、そうでない場合はc側を選択する切替信号とな
っている。
【0076】第2のコンパレータ34は、入力カテゴリ
cと第4のレジスタ33のカテゴリCとの一致を判定す
る。第3のコンパレータ35は、入力カテゴリcと第3
のレジスタ32のカテゴリDとの一致を判定する。
cと第4のレジスタ33のカテゴリCとの一致を判定す
る。第3のコンパレータ35は、入力カテゴリcと第3
のレジスタ32のカテゴリDとの一致を判定する。
【0077】第4のセレクタ37は、各コンパレータ3
4,35の判定結果を選択するものであり、切替信号S
2は、第1のコンパレータ16の出力A<B、第4のセ
レクタ37の出力TF及び第3のコンパレータ35の出
力D=cの組み合わせによって決定される。
4,35の判定結果を選択するものであり、切替信号S
2は、第1のコンパレータ16の出力A<B、第4のセ
レクタ37の出力TF及び第3のコンパレータ35の出
力D=cの組み合わせによって決定される。
【0078】第5のセレクタ38は、第3のレジスタ3
2の内容D又は第4のレジスタ33の内容Cのいずれか
を書き込むための選択回路であり、切替信号S2は、第
4のセレクタ37の出力TFによって切り替えられる。
2の内容D又は第4のレジスタ33の内容Cのいずれか
を書き込むための選択回路であり、切替信号S2は、第
4のセレクタ37の出力TFによって切り替えられる。
【0079】第6のセレクタ39は、第5のセレクタ3
8の出力であるカテゴリを書き込むか、第2のセレクタ
15の出力である誤差を書き込むかを決める選択回路で
ある。
8の出力であるカテゴリを書き込むか、第2のセレクタ
15の出力である誤差を書き込むかを決める選択回路で
ある。
【0080】結果記憶メモリ42は、誤差を記憶する領
域MGと、カテゴリを記憶する領域MCとを独立させて
いるが、連続したメモリ空間に配置して、≪誤差≫、≪
カテゴリ≫、・・・といった記憶形式としても、時分割
処理で行えば問題はない。
域MGと、カテゴリを記憶する領域MCとを独立させて
いるが、連続したメモリ空間に配置して、≪誤差≫、≪
カテゴリ≫、・・・といった記憶形式としても、時分割
処理で行えば問題はない。
【0081】次に、上記構成の最小誤差記憶装置の動作
について、図8に示すフローチャートを適宜参照して説
明する。ただし、最小誤差順に並び替える処理は、図3
乃至図6に示した処理と同様であるので、ここでは説明
を省略し、同一カテゴリの処理についてのみ説明を行う
ものとする。
について、図8に示すフローチャートを適宜参照して説
明する。ただし、最小誤差順に並び替える処理は、図3
乃至図6に示した処理と同様であるので、ここでは説明
を省略し、同一カテゴリの処理についてのみ説明を行う
ものとする。
【0082】本実施例においては、請求項1に対応した
上記実施例での処理と同様にして、最小誤差N個が対応
するカテゴリと共に、結果記憶メモリ42のアドレス
(1),(2),・・・,(N−1)に誤差の小さい順
に記憶されており、誤差計算部11によって計算された
誤差Aが第2のレジスタ13に、対応するカテゴリCが
第4のレジスタ33にそれぞれ保持されているものとす
る(ステップS11)。また、図8に用いているRF、
TF、WFはカテゴリに対応するためのフラグであり、
実行前にクリアされているが(ステップS12)、次の
条件で有効(=1)となる。
上記実施例での処理と同様にして、最小誤差N個が対応
するカテゴリと共に、結果記憶メモリ42のアドレス
(1),(2),・・・,(N−1)に誤差の小さい順
に記憶されており、誤差計算部11によって計算された
誤差Aが第2のレジスタ13に、対応するカテゴリCが
第4のレジスタ33にそれぞれ保持されているものとす
る(ステップS11)。また、図8に用いているRF、
TF、WFはカテゴリに対応するためのフラグであり、
実行前にクリアされているが(ステップS12)、次の
条件で有効(=1)となる。
【0083】すなわち、結果記憶メモリ42から読み出
したカテゴリ(以下、読出カテゴリという)と、誤差計
算部11より入力されたカテゴリ(以下、入力カテゴリ
という)とが同じときRF=1、ソート実行中に入力カ
テゴリと同じカテゴリを書き込んだときWF=1、結果
記憶メモリ42に書き込もうとするカテゴリが入力カテ
ゴリと同じときTF=1となる。
したカテゴリ(以下、読出カテゴリという)と、誤差計
算部11より入力されたカテゴリ(以下、入力カテゴリ
という)とが同じときRF=1、ソート実行中に入力カ
テゴリと同じカテゴリを書き込んだときWF=1、結果
記憶メモリ42に書き込もうとするカテゴリが入力カテ
ゴリと同じときTF=1となる。
【0084】上記条件において、次に結果記憶メモリ4
2のアドレス(I=0)の内容を読み出し、そのうちの
読出誤差Bを第1のレジスタ12に、読出カテゴリDを
第3のレジスタ32にそれぞれ保持させる(ステップS
13,S14)。そして、読出カテゴリDが入力カテゴ
リCと同じ場合には、RFを有効(=1)とし(ステッ
プS16、同じでない場合にはRFを無効(=0)とし
て(ステップS17)、ステップS18への処理へと進
む。
2のアドレス(I=0)の内容を読み出し、そのうちの
読出誤差Bを第1のレジスタ12に、読出カテゴリDを
第3のレジスタ32にそれぞれ保持させる(ステップS
13,S14)。そして、読出カテゴリDが入力カテゴ
リCと同じ場合には、RFを有効(=1)とし(ステッ
プS16、同じでない場合にはRFを無効(=0)とし
て(ステップS17)、ステップS18への処理へと進
む。
【0085】ステップS18では、各レジスタ12,1
3に保持された内容A,Bの大小比較を行う。そして、
A<Bであって、Aに対するカテゴリが入力カテゴリC
と同じである場合には(ステップS18,S24)、T
Fを有効(=1)とし(ステップS25)、Aをアドレ
ス(I)のMG領域の内容とし、その後BをAに置き換
える(ステップS26)。また、Cをアドレス(I)の
MC領域の内容とし、その後DをCに置き換えて(ステ
ップS27)、ステップS32へと動作を進める。
3に保持された内容A,Bの大小比較を行う。そして、
A<Bであって、Aに対するカテゴリが入力カテゴリC
と同じである場合には(ステップS18,S24)、T
Fを有効(=1)とし(ステップS25)、Aをアドレ
ス(I)のMG領域の内容とし、その後BをAに置き換
える(ステップS26)。また、Cをアドレス(I)の
MC領域の内容とし、その後DをCに置き換えて(ステ
ップS27)、ステップS32へと動作を進める。
【0086】また、A≧Bであって、RF、WFのいず
れかが無効(=0)である場合には(ステップS18,
S19,S20)、ステップS28へと動作を進める。
そして、ステップS28において、Bに対するカテゴリ
が入力カテゴリCと同じである場合には、TFを有効
(=1)とし(ステップS29)、Bをアドレス(I)
のMG領域の内容とし(ステップS30)、Dをアドレ
ス(I)のMC領域の内容として(ステップS31)、
ステップS32へと動作を進める。
れかが無効(=0)である場合には(ステップS18,
S19,S20)、ステップS28へと動作を進める。
そして、ステップS28において、Bに対するカテゴリ
が入力カテゴリCと同じである場合には、TFを有効
(=1)とし(ステップS29)、Bをアドレス(I)
のMG領域の内容とし(ステップS30)、Dをアドレ
ス(I)のMC領域の内容として(ステップS31)、
ステップS32へと動作を進める。
【0087】また、A≧Bであって、RF、WFの両方
が有効(=1)である場合には(ステップS18,S1
9,S20)、ステップS21へと動作を進めて、TF
を有効(=1)とする。ここで、本来はBをアドレス
(I)に戻すところであるが、すでに同一カテゴリが存
在しているので、Bは書き込むことができない。
が有効(=1)である場合には(ステップS18,S1
9,S20)、ステップS21へと動作を進めて、TF
を有効(=1)とする。ここで、本来はBをアドレス
(I)に戻すところであるが、すでに同一カテゴリが存
在しているので、Bは書き込むことができない。
【0088】そこで、Aをアドレス(I)のMG領域の
内容とし、その後BをAに置き換える(ステップS2
2)。また、Cをアドレス(I)のMC領域の内容と
し、その後DをCに置き換えて(ステップS23)、ス
テップS32へと動作を進める。
内容とし、その後BをAに置き換える(ステップS2
2)。また、Cをアドレス(I)のMC領域の内容と
し、その後DをCに置き換えて(ステップS23)、ス
テップS32へと動作を進める。
【0089】そして、ステップS32において、RFが
有効(=1)であった場合には、そのカテゴリを除外す
るため、Aを最大値とする(ステップS33)。そし
て、同一カテゴリを書き込んだ場合には、WFを有効
(=1)とする(ステップS34)。
有効(=1)であった場合には、そのカテゴリを除外す
るため、Aを最大値とする(ステップS33)。そし
て、同一カテゴリを書き込んだ場合には、WFを有効
(=1)とする(ステップS34)。
【0090】そして、ステップS35でアドレス(I)
を更新して、ステップS14からの処理を繰り返すとい
った動作をN回行うことにより(ステップS36)、結
果記憶メモリ42には、最小値順に並び替えられた誤差
が、そのときのカテゴリの対応付けもなされた状態で、
アドレス(0)からアドレス(N−1)に記憶されるこ
とになる。
を更新して、ステップS14からの処理を繰り返すとい
った動作をN回行うことにより(ステップS36)、結
果記憶メモリ42には、最小値順に並び替えられた誤差
が、そのときのカテゴリの対応付けもなされた状態で、
アドレス(0)からアドレス(N−1)に記憶されるこ
とになる。
【0091】次に、結果記憶メモリ42の記憶個数が、
誤差及びカテゴリのそれぞれについて10(N=10)
の場合の実施例について、図9に示す動作概念図及び図
10及び図11にそれぞれ示す動作過程の一覧表を適宜
参照して説明する。
誤差及びカテゴリのそれぞれについて10(N=10)
の場合の実施例について、図9に示す動作概念図及び図
10及び図11にそれぞれ示す動作過程の一覧表を適宜
参照して説明する。
【0092】ただし、図9において、入力(誤差:0
0、カテゴリ00)に対する実行前の結果記憶メモリ4
2の内容を同図(a)、実行後の結果記憶メモリ42の
内容を同図(b)に示しており、入力(誤差:26、カ
テゴリ90)に対する実行前の結果記憶メモリ42の内
容を同図(c)、実行後の結果記憶メモリ42の内容を
同図(d)に示しており、入力(誤差:18、カテゴリ
90)に対する実行前の結果記憶メモリ42の内容を同
図(e)、実行後の結果記憶メモリ42の内容を同図
(f)に示している。
0、カテゴリ00)に対する実行前の結果記憶メモリ4
2の内容を同図(a)、実行後の結果記憶メモリ42の
内容を同図(b)に示しており、入力(誤差:26、カ
テゴリ90)に対する実行前の結果記憶メモリ42の内
容を同図(c)、実行後の結果記憶メモリ42の内容を
同図(d)に示しており、入力(誤差:18、カテゴリ
90)に対する実行前の結果記憶メモリ42の内容を同
図(e)、実行後の結果記憶メモリ42の内容を同図
(f)に示している。
【0093】すなわち、(a)、(b)は1番目の例で
ある初期状態での動作を示しており、(c),(d)は
2番目の例を示しており、(e)、(f)は3番目の例
を示している。また、図10は、図9(c)、(d)に
対応した一覧表であり、図11は図9(e)、(f)に
対応した一覧表である。
ある初期状態での動作を示しており、(c),(d)は
2番目の例を示しており、(e)、(f)は3番目の例
を示している。また、図10は、図9(c)、(d)に
対応した一覧表であり、図11は図9(e)、(f)に
対応した一覧表である。
【0094】1番目の例では、アドレス(1)に入力誤
差(00)と、そのときの入力カテゴリ(00)とが書
き込まれている。
差(00)と、そのときの入力カテゴリ(00)とが書
き込まれている。
【0095】2番目の例では、入力カテゴリ(90)と
同じカテゴリ(90)が結果記憶メモリ42のアドレス
(8)にも書き込まれており、そのときの誤差(80)
が入力誤差26よりも大きい場合である。
同じカテゴリ(90)が結果記憶メモリ42のアドレス
(8)にも書き込まれており、そのときの誤差(80)
が入力誤差26よりも大きい場合である。
【0096】この場合には、誤差(80)が入力誤差
(26)より大きいときに両カテゴリが一致することか
ら、このときにはその一致したカテゴリ(90)及び誤
差(80)をアドレス(8)の内容から削除する処理を
行う。
(26)より大きいときに両カテゴリが一致することか
ら、このときにはその一致したカテゴリ(90)及び誤
差(80)をアドレス(8)の内容から削除する処理を
行う。
【0097】これにより、結果記憶メモリ42に記憶さ
れていたアドレス(8)の同一カテゴリ(90)の内容
が削除され、かつ結果記憶メモリ42には、小さい順に
誤差が記憶されていることになる。
れていたアドレス(8)の同一カテゴリ(90)の内容
が削除され、かつ結果記憶メモリ42には、小さい順に
誤差が記憶されていることになる。
【0098】3番目の例では、入力カテゴリ(90)と
同じカテゴリ(90)が結果記憶メモリ42のアドレス
(1)にも書き込まれており、そのときの誤差(10)
が入力誤差18よりも小さい場合である。
同じカテゴリ(90)が結果記憶メモリ42のアドレス
(1)にも書き込まれており、そのときの誤差(10)
が入力誤差18よりも小さい場合である。
【0099】この場合には、誤差(10)が入力誤差
(18)より小さいときに両カテゴリが一致することか
ら、このときにはその一致したカテゴリ(90)及び誤
差(10)を元のアドレス(1)の位置に書き込み処理
する。すなわち、この場合はソートされないようになっ
ている。
(18)より小さいときに両カテゴリが一致することか
ら、このときにはその一致したカテゴリ(90)及び誤
差(10)を元のアドレス(1)の位置に書き込み処理
する。すなわち、この場合はソートされないようになっ
ている。
【0100】以上述べてきた各実施例は、誤差に着目し
て、誤差を小さい順に並べ替える場合について説明して
いるが、類似度に着目して、類似度の高い順に並べ替え
る場合も同様に行うことが可能である。この場合、図3
では大小関係の判定条件を入れ替え、図8でも大小関係
の判定条件を入れ替え、A=0とすることで対応でき
る。この場合の初期値は0とする。
て、誤差を小さい順に並べ替える場合について説明して
いるが、類似度に着目して、類似度の高い順に並べ替え
る場合も同様に行うことが可能である。この場合、図3
では大小関係の判定条件を入れ替え、図8でも大小関係
の判定条件を入れ替え、A=0とすることで対応でき
る。この場合の初期値は0とする。
【0101】
【発明の効果】本発明の請求項1記載の最小誤差記憶装
置によれば、第1の読み出し処理部により第1の記憶部
から読み出され、第1の保持部に一時的に保持された読
出誤差と、誤差計算部より入力され、第2の保持部に一
時的に保持された入力誤差とを、第1の書き込み処理部
において比較する。第1の書き込み処理部は、その比較
の結果、読出誤差が入力誤差より小さいときには、読出
誤差を第1の記憶部内の元の位置に書き込み、読出誤差
が入力誤差より大きいときには、入力誤差を読出誤差の
あった元の位置に書き込むとともに、その読出誤差をも
含めてそれ以後の読出誤差を、第1の記憶部内に順次繰
り下げて書き込む処理を行うように構成したので、多重
ループ制御が不要でアドレス生成が簡単であるため、小
規模の回路構成で制御の容易な最小誤差記憶装置が実現
できる。
置によれば、第1の読み出し処理部により第1の記憶部
から読み出され、第1の保持部に一時的に保持された読
出誤差と、誤差計算部より入力され、第2の保持部に一
時的に保持された入力誤差とを、第1の書き込み処理部
において比較する。第1の書き込み処理部は、その比較
の結果、読出誤差が入力誤差より小さいときには、読出
誤差を第1の記憶部内の元の位置に書き込み、読出誤差
が入力誤差より大きいときには、入力誤差を読出誤差の
あった元の位置に書き込むとともに、その読出誤差をも
含めてそれ以後の読出誤差を、第1の記憶部内に順次繰
り下げて書き込む処理を行うように構成したので、多重
ループ制御が不要でアドレス生成が簡単であるため、小
規模の回路構成で制御の容易な最小誤差記憶装置が実現
できる。
【0102】また、本発明の請求項1記載の最小誤差記
憶装置は、第2の書き込み処理部での処理と並行し、か
つ第2の書き込み処理部での処理に優先して、第3の保
持部に保持されたカテゴリと、第4の保持部に保持され
たカテゴリとの比較を行い、読出誤差が入力誤差より小
さいときに両カテゴリが一致したときには、その一致し
たカテゴリ及び読出誤差を、第2の記憶部内の元の位置
に書き込み処理し、読出誤差が入力誤差より大きいとき
に両カテゴリが一致したときには、その一致したカテゴ
リ及び入力誤差を、第2の記憶部から削除する処理を行
うように構成したので、多重ループ制御が不要でアドレ
ス生成が簡単であり、かつ同一カテゴリの最小誤差検知
も同時に実行できる、小規模の回路構成で制御の容易な
最小誤差記憶装置が実現できる。
憶装置は、第2の書き込み処理部での処理と並行し、か
つ第2の書き込み処理部での処理に優先して、第3の保
持部に保持されたカテゴリと、第4の保持部に保持され
たカテゴリとの比較を行い、読出誤差が入力誤差より小
さいときに両カテゴリが一致したときには、その一致し
たカテゴリ及び読出誤差を、第2の記憶部内の元の位置
に書き込み処理し、読出誤差が入力誤差より大きいとき
に両カテゴリが一致したときには、その一致したカテゴ
リ及び入力誤差を、第2の記憶部から削除する処理を行
うように構成したので、多重ループ制御が不要でアドレ
ス生成が簡単であり、かつ同一カテゴリの最小誤差検知
も同時に実行できる、小規模の回路構成で制御の容易な
最小誤差記憶装置が実現できる。
【図1】本発明の最小誤差記憶装置の電気的構成を示す
ブロック図であり、請求項1に対応している。
ブロック図であり、請求項1に対応している。
【図2】本発明の最小誤差記憶装置の他の実施例を示す
ブロック図であり、請求項1に対応している。
ブロック図であり、請求項1に対応している。
【図3】請求項1に対応した最小誤差記憶装置の動作を
説明するフローチャートである。
説明するフローチャートである。
【図4】請求項1に対応した最小誤差記憶装置の動作処
理図である。
理図である。
【図5】請求項1に対応した最小誤差記憶装置の動作概
念図である。
念図である。
【図6】図5に示した動作概念図に対応した動作過程の
一覧表である。
一覧表である。
【図7】本発明の最小誤差記憶装置の電気的構成を示す
ブロック図であり、請求項2に対応している。
ブロック図であり、請求項2に対応している。
【図8】請求項2に対応した最小誤差記憶装置の動作を
説明するフローチャートである。
説明するフローチャートである。
【図9】請求項2に対応した最小誤差記憶装置の動作概
念図である。
念図である。
【図10】図9(c)、(d)に示した動作概念図に対
応した動作過程の一覧表である。
応した動作過程の一覧表である。
【図11】図9(e)、(f)に示した動作概念図に対
応した動作過程の一覧表である。
応した動作過程の一覧表である。
【図12】従来の方法で誤差を小さいものから順に並び
替える処理動作を説明するフローチャートである。
替える処理動作を説明するフローチャートである。
【図13】従来のメモリアクセス回数を説明するための
図である。
図である。
【図14】同一カテゴリを考慮した誤差の並び替えを説
明するための図である。
明するための図である。
11 誤差計算部 12 第1のレジスタ 13 第2のレジスタ 14 第1のセレクタ 15 第2のセレクタ 16 コンパレータ 17 バッファ 18,42 結果記憶メモリ 19,40 制御部 32 第3のレジスタ 33 第4のレジスタ 34 第2のコンパレータ 35 第3のコンパレータ 36 第3のセレクタ 37 第4のセレクタ 38 第5のセレクタ 39 第6のセレクタ 41 切替制御部41
Claims (2)
- 【請求項1】 計算により求められた入力パターンと標
準パターンとの誤差を最小のものから順番に複数個記憶
する第1の記憶部と、 この第1の記憶部に記憶された複数個の誤差を小さい順
に順次読み出す第1の読み出し処理部と、 この第1の読み出し処理部により順次読み出された誤差
を一時的に保持する第1の保持部と、 誤差計算部より入力された誤差を一時的に保持する第2
の保持部と、 前記第1の保持部に保持された読出誤差と前記第2の保
持部に保持された入力誤差との比較を行い、読出誤差が
入力誤差より小さいときには読出誤差を前記第1の記憶
部内の元の位置に書き込み、読出誤差が入力誤差より大
きいときには入力誤差を読出誤差のあった元の位置に書
き込むとともに、その読出誤差をも含めてそれ以後の読
出誤差を前記第1の記憶部内に順次繰り下げて書き込む
処理を行う第1の書き込み処理部とを備えたことを特徴
とする最小誤差記憶装置。 - 【請求項2】 計算により求められた入力パターンと標
準パターンとの誤差を最小のものから順番に複数個記憶
するとともに、この複数個の誤差のそれぞれに対応した
カテゴリを誤差に対応付けて記憶する第2の記憶部と、 この第2の記憶部に記憶された複数個の誤差及びカテゴ
リを、誤差の小さい順に順次読み出す第2の読み出し処
理部と、 この第2の読み出し処理部により順次読み出された誤差
及びカテゴリを一時的に保持する第3の保持部と、 誤差計算部より入力された誤差及び対応するカテゴリを
一時的に保持する第4の保持部と、 前記第3の保持部に保持された読出誤差と前記第4の保
持部に保持された入力誤差との比較を行い、読出誤差が
入力誤差より小さいときには読出誤差及びカテゴリを前
記第2の記憶部内の元の位置に書き込み、読出誤差が入
力誤差より大きいときには入力誤差及びカテゴリを読出
誤差及びカテゴリがあった元の位置に書き込むととも
に、その読出誤差及びカテゴリをも含めてそれ以後の読
出誤差及びカテゴリを前記第2の記憶部内に順次繰り下
げて書き込む処理を行う第2の書き込み処理部と、 この第2の書き込み処理部での処理と並行して前記第3
の保持部に保持されたカテゴリと前記第4の保持部に保
持されたカテゴリとの比較を行い、読出誤差が入力誤差
より小さいときに両カテゴリが一致したときには、その
一致したカテゴリ及び読出誤差を前記第2の記憶部内の
元の位置に書き込み処理し、読出誤差が入力誤差より大
きいときに両カテゴリが一致したときには、その一致し
たカテゴリ及び読出誤差を前記第2の記憶部から削除す
る処理を、前記第2の書き込み処理部での処理に優先し
て行う第3の書き込み処理部とを備えたことを特徴とす
る最小誤差記憶装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP13640695A JP3215598B2 (ja) | 1995-06-02 | 1995-06-02 | 最小誤差記憶装置 |
| US08/657,671 US5953454A (en) | 1995-06-02 | 1996-05-31 | Minimum distance storage device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP13640695A JP3215598B2 (ja) | 1995-06-02 | 1995-06-02 | 最小誤差記憶装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH08329244A true JPH08329244A (ja) | 1996-12-13 |
| JP3215598B2 JP3215598B2 (ja) | 2001-10-09 |
Family
ID=15174425
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP13640695A Expired - Fee Related JP3215598B2 (ja) | 1995-06-02 | 1995-06-02 | 最小誤差記憶装置 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5953454A (ja) |
| JP (1) | JP3215598B2 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000349793A (ja) * | 1999-06-04 | 2000-12-15 | Toshiba Corp | ネットワーク装置及びネットワーク方法 |
| US7366352B2 (en) * | 2003-03-20 | 2008-04-29 | International Business Machines Corporation | Method and apparatus for performing fast closest match in pattern recognition |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4718102A (en) * | 1983-01-19 | 1988-01-05 | Communication Intelligence Corporation | Process and apparatus involving pattern recognition |
| JPS63231525A (ja) * | 1987-03-19 | 1988-09-27 | Nippon Telegr & Teleph Corp <Ntt> | ソ−ト処理装置 |
| US5303381A (en) * | 1990-07-19 | 1994-04-12 | Canon Kabushiki Kaisha | Method and apparatus for sorting sequential input signals by concurrently comparing successive input signals among signals in first and second memory sections |
-
1995
- 1995-06-02 JP JP13640695A patent/JP3215598B2/ja not_active Expired - Fee Related
-
1996
- 1996-05-31 US US08/657,671 patent/US5953454A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| US5953454A (en) | 1999-09-14 |
| JP3215598B2 (ja) | 2001-10-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6326400B2 (ja) | ||
| GB1563620A (en) | Multistage sorter with concurrent access to interstage buffer memories | |
| US20210158212A1 (en) | Learning method and learning apparatus | |
| JP2601586B2 (ja) | 配置要素の配置配線方法 | |
| CN114518841A (zh) | 存储器中处理器和使用存储器中处理器输出指令的方法 | |
| CN118642761A (zh) | 指令依赖构建方法、装置、设备及可读存储介质 | |
| JP2752634B2 (ja) | ソート処理装置 | |
| US5857186A (en) | Parallel merge sorting apparatus with an accelerated section | |
| JPH08329244A (ja) | 最小誤差記憶装置 | |
| JP2006059477A (ja) | 試験装置及び試験方法 | |
| JP2636088B2 (ja) | 情報処理装置 | |
| JP4106021B2 (ja) | 人工ニューラル・ネットワークにおけるプロトタイプの数を仮想的に増加させる方法および回路 | |
| CN113544684B (zh) | 数据置换装置、数据置换方法、计算机程序产品 | |
| EP4148628A1 (en) | Data processing apparatus, data processing method, and data processing program | |
| JPH06105459B2 (ja) | ベクトル処理装置 | |
| JP2908331B2 (ja) | リストベクトル処理システム | |
| JP3076168B2 (ja) | 確率的探索方式 | |
| JPH07101382B2 (ja) | マ−ジ処理装置 | |
| JPH0520350A (ja) | ベクトル処理装置 | |
| JP4784514B2 (ja) | リストベクトル処理装置及び方法 | |
| JPH08202576A (ja) | トレース型論理解析装置の情報記憶方式 | |
| JP3442921B2 (ja) | データ検査装置 | |
| JP2861435B2 (ja) | パイプライン形演算装置 | |
| JP2989962B2 (ja) | ベクトル処理装置 | |
| JP3293544B2 (ja) | 補助記憶装置を用いたソート方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |