JP3817866B2 - Data conversion device and coefficient determination device thereof - Google Patents

Data conversion device and coefficient determination device thereof Download PDF

Info

Publication number
JP3817866B2
JP3817866B2 JP30408097A JP30408097A JP3817866B2 JP 3817866 B2 JP3817866 B2 JP 3817866B2 JP 30408097 A JP30408097 A JP 30408097A JP 30408097 A JP30408097 A JP 30408097A JP 3817866 B2 JP3817866 B2 JP 3817866B2
Authority
JP
Japan
Prior art keywords
coefficient
coefficient value
data group
value
values
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.)
Expired - Fee Related
Application number
JP30408097A
Other languages
Japanese (ja)
Other versions
JPH10191091A (en
Inventor
和昌 村井
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP30408097A priority Critical patent/JP3817866B2/en
Publication of JPH10191091A publication Critical patent/JPH10191091A/en
Application granted granted Critical
Publication of JP3817866B2 publication Critical patent/JP3817866B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Image Processing (AREA)
  • Processing Of Color Television Signals (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、適宜の個数の離散値の係数により規定されるデータ変換装置において、所定の入力データに対応する理想出力データとの誤差が小さい出力を得るための係数を決定する方法、および装置に関する。本発明は例えば離散値の係数を持つ階層型ニューラルネットワークによる色変換装置の係数決定や、代表点テーブルおよび補間を用いた色変換の代表点値決定に適用できる。
【0002】
【従来の技術】
適宜の個数の離散値の係数により規定されるデータ変換装置では、取り得る係数の範囲を限れば、各係数の取りうる値の種類は有限である。従って、全ての係数の組合せについて誤差を評価すれば、その中には少なくとも1つの最適な係数が存在する。そして、このように係数の全空間を検索する手法によれば確実に最適な係数を得ることが可能である。しかしながら、一般的にはこの組合せは膨大な数となるために、係数を算出する手法としては現実的ではない。そこで、各データ変換装置の特性を基に、演繹的な方法や、各種の近似的な方法によって係数を算出することが一般的である。
【0003】
離散値の係数を含むデータ変換装置において、与えられた任意の入出力対応に対して最適な係数が演繹的に定まる場合は、その手法により係数を定めることが可能であり、従来の技術を用いても課題となることはない。
【0004】
一方、係数が演繹的に定まる場合でも、離散値の係数とはならない場合がある。例えば、離散値の係数からなる行列演算によるデータ変換装置においては、誤差が最小となる各係数は演繹的に算出できるものの、算出結果は離散値とはならず、これを四捨五入、切上げ、切捨て等により離散値に丸める操作が必要となる。丸めにより、各係数は最適値とは異なる値となるために、誤差が大きくなることが一般的である。
【0005】
同様に、行列演算などの手法であっても、演算過程において有効精度が限られる場合、例えば有限精度の固定小数点の積和演算による場合には、データ変換装置の演算過程において、計算過程の丸めなどによって更に精度が低下する。このような場合、最適な係数を算出するために計算過程の丸めなどの特性を考慮する必要があるが、係数と誤差の対応が非常に複雑な関係となるために、従来は考慮されることはなかった。従来技術により精度を向上するためには、一般的には計算過程における有効精度や、係数の刻みを細かくするなどの技術が用いられてきた。
【0006】
代表点テーブルおよび補間を用いるデータ変換装置では、入力の各次元の代表点からなる格子点に、変換後のデータを予めテーブルに記録し、補間を行うことにより変換結果を得る。このようなデータ変換装置においてテーブルに記録される係数は、代表点の変換後のデータが用いられることが一般的である。一般に、補間により補間誤差が発生するが、格子点以外の入力の変換誤差も考慮して格子点に記録される係数を最適化する手法はなかった。従来技術により精度を向上するためには、一般的には入力次元の代表点の数を増やすという技術が用いられてきた。
【0007】
係数が連続値であり、誤差を各係数で偏微分できるデータ変換装置については、微分方程式の逐次近似による係数の決定方法が知られている。特に、ニューラルネットワークでは、バックプロパゲーション法に代表される係数算出方法が一般的に用いられている。
【0008】
しかしながら、離散値の係数を含む場合に関しては、それらの係数では誤差を偏微分することは不可能であり、バックプロパゲーションに代表される上述の方法を用いることができない。
【0009】
そこで、従来は、同構成で、偏微分可能なデータ変換装置を構成できる場合については、予め、連続値で係数を算出し、その結果を丸めることによって離散値の係数を得る技術が用いられてきた。この場合には、前述の行列式と同じように、丸めによって精度が低下するなどの課題があった。
【0010】
また、ハードウェアによる学習では、同様の微分方程式を有限精度で近似したバックプロパゲーションに類する技術が用いられてきた。この技術では、逆伝搬する誤差が計算精度を下回った時点で学習が停止してしまうという課題があった。
【0011】
さらに、有限精度の固定小数点演算によるニューラルネットワークなどでは、固定小数点の行列式と同様に、計算過程の丸めなどの影響があり、係数と誤差の関係は更に複雑になるために、実際に最適な離散値を獲得することは困難であった。従来技術により精度を向上するためには、一般的には計算過程における有効精度や、係数の刻みを細かくするなどの技術が用いられてきた。有効精度や、係数の刻みを細かくする場合、データ変換装置の構成が複雑になる。
【0012】
また、この手法では、微分方程式を逐次近似によって解く必要があるので、この方法に基づく装置の構成が複雑になるという課題があった。
【0013】
ニューラルネットワークに限定すると、構成が比較的簡単な学習方法としては、特開平4−282476号公報(米国特許明細書第5459817号)にあるように、係数の更新差分量を乱数により発生し、更新前後の二者択一によって係数を更新する手法があった。この手法では各シナプスごとに乱数を発生する機構が必要となる。更に、更新量自体は制御せず、符号のみを乱数によって制御するために、学習の初期から、逐次学習が進行した段階まで、更新量を制御してはいない。そのため、学習の速度に課題が生じる上に、二者択一の構成を適切に行わなければ極少に収束するという課題があった。
【0014】
【発明が解決しようとする課題】
以上述べた方法のうち、係数の全空間を検索する手法を除いては、各データ変換装置の構成に基づいて係数を算出する方法が異なり、これらの方法に基づく装置を構成した場合には、装置の構成が複雑になるという課題があった。また、前述したように、係数の全空間を検索する手法に基づく装置は、構成は簡単なものの、膨大な空間を検索するので、現実的ではなかった。
【0015】
データ変換装置の精度を向上する目的では、装置や方法の構成を変更する必要があった。
【0016】
また、微係数に基づいて係数を更新する場合については、微分方程式を構成することが必須要件であり、桁落ちなどの微分不可能な対応については微分方程式が構成できず、係数を決定できなかった。
【0017】
そこで、本発明は、係数自体や計算過程の丸めなどの影響等も考慮した上で、各データ変換装置の構成によらず、かつ、係数の全空間を検索する手法より短時間に誤差が少ない係数を算出することを課題とする。
【0018】
【課題を解決するための手段】
本発明は、誤差の計算と、誤差に依存した確率的な係数の選択に基づいた操作の繰り返しによって誤差を低減することにより、誤差の小さい係数を算出することを特徴とする。
【0019】
すなわち、本発明によれば、上述の目的を達成するために、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において係数を最適化する係数決定装置に、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の入力データ群に対する出力データ群を算出する手段と、上記少なくとも2つの係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを設けるようにしている。
【0020】
この構成においては、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。したがって係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0021】
また、この構成においては、上記係数値選択手段が、上記少なくとも2つの係数値におけるそれぞれの誤差に、所定の分布に従う乱数をそれぞれ加え、その和の最小値を与える係数値を選択する手段を有するようにすることができる。
【0022】
また、上記誤差ないしは微係数の大きさに対する上記確率の漸減の程度、もしくは、上記所定のステップs1とs2を、もしくはその双方を、誤差の履歴に応じて制御する手段とを設けるようにしてもよい。
【0023】
また、上記誤差の大きさに対する上記確率の漸減の程度を誤差の履歴に応じて制御する手段は、乱数についての上記所定の分布を制御する手段によるようにしてもよい。
【0024】
また、上記離散的な値を取る少なくとも1つの係数は、m次元の入力データに対応するm次元の代表点のテーブルの各代表点ごとに、それぞれn個の出力に相当する離散値を予め記録し、出力に相当する値を補間することによってn次元の出力を得るデータ変換装置の上記代表点の出力に相当する値であって、適宜の入力値群について誤差及び理想出力値群を規定することにより係数を更新する手段を有するようにすることができる。
【0025】
また、本発明によれば、上述の目的を達成するために、データ変換装置に、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換手段と、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の入力データ群に対する出力データ群を算出する手段と、上記少なくとも2つの係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを設けている。
【0026】
この構成においても、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。したがって係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0027】
また、本発明によれば、上述の目的を達成するために、色変換装置に、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の第1の色データをn次元の第2の色データに変換する色変換手段と、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の第1の色データ群に対する第2の色データ群を算出する手段と、上記少なくとも2つの係数値について算出した第2の色データ群と上記所定の第1の色データ群に対応する理想の第2の色データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを設けている。
【0028】
この構成においても、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。したがって係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0029】
また、この構成においては、上記誤差を色差とすることができる。
【0030】
また、本発明によれば、上述の目的を達成するために、カラー画像形成装置(例えばカラー複写機やカラー印刷機)に、m次元の第1の色データを受け取る手段と、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じて上記m次元の第1の色データをn次元の第2の色データに変換する色変換手段と、上記色変換手段から出力された上記第2の色データに基づいて所定の出力動作を行う出力手段と、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の第1の色データ群に対する第2の色データ群を算出する手段と、上記少なくとも2つの係数値について算出した第2の色データ群と上記所定の第1の色データ群に対応する理想の第2の色データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを設けるようにしている。
【0031】
この構成においても、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。したがって係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0032】
また、この構成においては、上記出力手段は上記第2の色データを後続の色変換手段を介して受け取るようにしてもよい。
【0033】
また、本発明によれば、上述の目的を達成するために、電子機器に、m次元の入力データを受け取る手段と、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じて上記m次元の入力データをn次元の出力データに変換するデータ変換手段と、上記データ変換手段から出力されたn次元の出力データに基づいて所定の出力動作を行う出力手段と、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の入力データ群に対する出力データ群を算出する手段と、上記少なくとも2つの係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを設けるようにしている。
【0034】
この構成においても、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。したがって係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0035】
また、本発明によれば、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において係数を最適化する係数決定装置に、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出する手段と、上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、上記微係数に基づいて、確率的ないしは確定的に係数を更新する係数値更新手段とを設けるようにしている。
【0036】
ここで、現在の係数値を含む適宜の区間からp種類の係数を得るのに代えて、現在の係数値にp種類の所定の関数を施すことによりp種類の係数値を算出することができる。この関数は、任意の関数をとることができるが、とくに、適宜の離散値を現在の係数値に加えて関数値とすることも可能であり、また、適宜の値を、現在の係数値に乗じて、その結果の積を離散値に丸めた値を関数値とすることもできる。上記pの個数および、上記所定のp種類の関数を、誤差の履歴に応じて制御する手段をさらに設けてもよい。また、上記所定の関数は、適宜の離散値を、現在の係数値に加えて関数値とするものでもよい。また、上記所定の関数は、適宜の値を、現在の係数値に乗じて、もしくは、現在の係数値を適宜の値で除して、その結果の積または商を離散値に丸めた値を関数値とするものでもよい。
【0037】
この構成においては、候補係数値について誤差を算出し、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0038】
また、この構成において、現在の係数値、現在の係数値に所定のステップs1を加えた係数値、及び、現在の係数値から所定のステップs2を減じた係数値のうち少なくとも1つが上記p種類の係数に含まれるようにすることができる。
【0039】
また、上記微係数の大きさに対する上記確率の漸減の程度および上記所定のステップs1とs2の一方または双方を、誤差の履歴に応じて制御する手段を設けるようにしてもよい。
【0040】
また、上記離散的な値を取る少なくとも1つの係数は、m次元の入力データに対応するm次元の代表点のテーブルの各代表点ごとに、それぞれn個の出力に相当する離散値を予め記録し、出力に相当する値を補間することによってn次元の出力を得るデータ変換装置の上記代表点の出力に相当する値であって、適宜の入力値群について誤差及び理想出力値群を規定することにより係数を更新する手段を設けるようにしてもよい。
【0041】
また、本発明によれば、上述の目的を達成するために、データ変換装置に、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換手段と、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出する手段と、上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な適宜の計数値から誤差への関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、上記微係数に基づいて、確率的ないしは確定的に係数を更新する係数値更新手段とを設けるようにしている。
【0042】
この構成においても、候補係数値について誤差を算出し、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0043】
また、本発明によれば、上述の目的を達成するために、色変換装置に、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の第1の色データをn次元の第2の色データに変換する色変換手段と、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について第2の色データ群を算出する手段と、上記p種類の係数値について算出した第2の色データ群と上記所定の第1の色データ群に対応する理想の第2の色データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、上記微係数に基づいて、確率的ないしは確定的に係数を更新する係数値更新手段とを設けるようにしている。
【0044】
この構成においても、候補係数値について誤差を算出し、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0045】
また、この構成において、上記誤差を色差とすることができる。
【0046】
また、本発明によれば、上述の目的を達成するために、カラー画像形成装置(たとえばカラー複写機やカラー印刷機)に、m次元の第1の色データを受け取る手段と、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じて上記m次元の第1の色データをn次元の第2の色データに変換する色変換手段と、上記色変換手段から出力された上記第2の色データに基づいて所定の出力動作を行う出力手段と、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について第2の色データ群を算出する手段と、上記p種類の係数値について算出した第2の色データ群と上記所定の第1の色データ群に対応する理想の第2の色データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、上記微係数に基づいて、確率的ないしは確定的に係数を更新する係数値更新手段とを設けるようにしている。
【0047】
この構成においても、候補係数値について誤差を算出し、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0048】
また、この構成においては、上記出力手段は上記第2の色データを後続の色変換手段を介して受け取るようにしてもよい。
【0049】
また、本発明によれば、上述の目的を達成するために、電子機器に、m次元の入力データを受け取る手段と、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じて上記m次元の入力データをn次元の出力データに変換するデータ変換手段と、上記データ変換手段から出力されたn次元の出力データに基づいて所定の出力動作を行う出力手段と、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出する手段と、上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、上記微係数に基づいて、確率的ないしは確定的に係数を更新する係数値更新手段とを設けるようにしている。
【0050】
この構成においても、候補係数値について誤差を算出し、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0051】
また、本発明によれば、上述の目的を達成するために、離散的な結合係数、あるいは、離散的な閾値、あるいはその双方を少なくとも1つ含むk個の係数をもつニューラルネットワークにおいて係数値の最適化を行う係数決定装置に、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の入力データ群に対する出力データ群を算出する手段と、上記少なくとも2つの係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを設けるようにしている。
【0052】
この構成においても、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。したがって係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0053】
また、本発明によれば、上述の目的を達成するために、データ変換装置に、離散的な結合係数、あるいは、離散的な閾値、あるいはその双方を少なくとも1つ含むk個の係数をもつニューラルネットワークと、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の入力データ群に対する出力データ群を算出する手段と、上記少なくとも2つの係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを設けるようにしている。
【0054】
この構成においても、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。したがって係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0055】
また、本発明によれば、上述の目的を達成するために、離散的な結合係数、あるいは、離散的な閾値、あるいはその双方を少なくとも1つ含むk個の係数をもつニューラルネットワークにおいて係数値を最適化する係数決定装置に、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出する手段と、上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、上記微係数に基づいて、確率的ないしは確定的に係数を更新する係数値更新手段とを設けるようにしている。
【0056】
この構成においても、候補係数値について誤差を算出し、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0057】
また、本発明によれば、上述の目的を達成するために、データ変換装置に、離散的な結合係数、あるいは、離散的な閾値、あるいはその双方を少なくとも1つ含むk個の係数をもつニューラルネットワークと、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出する手段と、上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、上記微係数に基づいて、確率的ないしは確定的に係数を更新する係数値更新手段とを設けるようにしている。
【0058】
この構成においても、候補係数値について誤差を算出し、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0059】
また、本発明によれば、上述の目的を達成するために、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において係数値を最適化する係数決定装置に、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の入力データ群に対する出力データ群を算出する手段と、上記少なくとも2つの係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段と、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出する手段と、上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、上記微係数に基づいて、確率的ないしは確定的に係数を更新する係数値更新手段とを設け、上記係数値選択手段による係数値の選択を1回以上実行した後、上記係数値更新手段による係数値の更新を1回以上実行するようにしている。
【0060】
この構成においては、まず、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。この後、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0061】
また、本発明によれば、上述の目的を達成するために、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を決定する方法において、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の入力データ群に対する出力データ群を算出するステップと、上記少なくとも2つの係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択するステップとを実行するようにしている。
【0062】
この構成においても、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。したがって係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0063】
また、本発明によれば、上述の目的を達成するために、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を決定する方法において、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出するステップと、上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出するステップと、上記微係数に基づいて、確率的ないしは確定的に係数を更新するステップとを実行するようにしている。
【0064】
この構成においても、候補係数値について誤差を算出し、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0065】
また、本発明によれば、上述の目的を達成するために、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を決定する方法において、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の入力データ群に対する出力データ群を算出するステップと、上記少なくとも2つの係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択するステップと、上記新たな係数値が選択された後、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出するステップと、上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出するステップと、上記微係数に基づいて、確率的ないしは確定的に係数を更新するステップとを実行し、上記係数値の選択を1回以上実行した後、上記係数値の更新を1回以上実行するするようにしている。
【0066】
この構成においては、まず、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。この後、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0067】
また、本発明によれば、上述の目的を達成するために、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を設定する方法において、上記データ変換装置本体と同等な機能を有する標準データ変換装置において、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より所定のステップs1だけ大きな係数値、および上記現在の係数値より所定のステップs2だけ小さい係数値のうち少なくとも2つの係数値について所定の入力データ群に対する出力データ群を算出するステップと、上記少なくとも2つの係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択するステップと、選択した係数を上記データ変換装置本体の係数として設定するステップとを実行するようにしている。
【0068】
この構成においても、候補係数値について誤差を算出し、この誤差が小さい候補係数値ほど高い確率で新たな係数値とするようにしている。したがって係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0069】
また、本発明によれば、上述の目的を達成するために、離散的な値を取る少なくとも1つの係数を含むk個の係数に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を設定する方法において、上記データ変換装置本体と同等のデータ変換機能を有する基準データ変換装置において、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出するステップと、上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出するステップと、上記微係数に基づいて、確率的ないしは確定的に係数を更新するステップと、更新した係数を上記データ変換装置本体の係数として設定するステップとを実行するようにしている。
【0070】
この構成においても、候補係数値について誤差を算出し、この誤差に基づいて誤差の関数を想定し、この関数に基づいて現在の係数値における誤差の関数の微係数を求めるようにしている。そしてこの微係数に基づいて新たな係数値を求めている。係数値の更新の繰り返しにより、係数値の最適化を行うことができる。
【0071】
【発明の実施の態様】
以下、本発明の実施例について説明する。
[実施例1]
図1は、本発明の実施例1の構成を示すものであり、この図において、データ変換装置の係数最適化システムは、入力バッファ11、データ変換装置12、出力バッファ13、理想出力メモリ14、誤差算出部15、誤差履歴メモリ16、乱数分布制御部17、ステップ制御部18および係数更新部19を有している。入力バッファ11は外部から与えられたm次元の入力データを記憶するものである。データ変換装置12は、離散的な値をとる係数を用いてm次元の入力データをn次元の出力データに変換するものである。出力バッファ13はデータ変換装置12から出力されたn次元の出力データを記憶する。誤差算出部15は出力データと理想出力データとの誤差を算出し、この誤差を係数更新部19および誤差履歴メモリ16に送出する。乱数分布制御部17は誤差の履歴に応じて乱数の分布を可変し、またステップ制御部18も誤差の履歴に応じてステップの大きさを可変する。これにより、アニーリングが行われる。係数更新部19は誤差と乱数との和が最少となる係数値を新たな係数値とする。
【0072】
つぎに係数の最適化について詳細に説明する。m次元の入力データと、それに対応するn次元の理想出力データがj組与えれられた場合について説明する。すなわち、入力データxと理想出力データyは、{x1,y1},{x2,y2},…,{xi,yi}…,{xj,yj}であり、各入力データxiは、m次元で、xi=(xi1,xi2,…,xim)であり、各理想出力データyiは、n次元で、yi=(yi1,yi2,…,yin)であるとする。このデータ変換装置のk個の係数(w1,w2,…,wp,…,wk)は、予め適宜の初期値、一例としては、丸めなどによる従来の手法で決定した係数や、全て0などにより初期化しておく。このデータ変換装置に、m次元のデータxiを与えた時の出力を、f(xi|w1,w2,…,wp,…,wk)とする。このときの理想出力yiとの誤差を、d(yi,f(xi|w1,w2,…,wp,…,wk))とする。ここで、dはn次元の適宜の距離、例えばユークリッド距離などとする。本実施例では、このデータ変換装置の誤差を、各データの誤差の和
【0073】
【数1】
E(w1,w2,…,wp,…,wk
=Σi=1・・・jd(yi,f(xi|w1,w2,…,wp,…,wk))
とする。
【0074】
いま、k個の係数のうち、p番目の係数wpに着目し、現在の係数値に対する誤差E0、すなわち、E0=E(w1,w2,…,wp,…,wk)、現在の係数値より所定のステップsだけ大きな係数値に対する誤差E+、すなわち、E+=E(w1,w2,…,wp+s,…,wk)、および、現在の係数値より所定のステップsだけ小さな係数値に対する誤差E-、すなわち、E-=E(w1,w2,…,wp−s,…,wk)の3種類の誤差を算出する。この実施例では加算の場合の所定のステップと、減算の場合の所定のステップはいずれの場合もsとしているが、加算の場合の所定のステップと、減算の場合の所定のステップは必ずしも等しい値とする必要はない。
【0075】
次に、これらの誤差に、所定の区間[0,T]に一様な分布に基づく乱数Nをそれぞれに加算し、
【0076】
【数2】
0=E0+N
+=E++N
-=E-+N
を得る。ここで、e0,e+,e-のうち、e0が最小であれば、wpは更新しない。e+が最小であれば、wpにsを加え、更新する。e-が最小であれば、wpからsを減じ、更新する。
【0077】
この操作を各係数wp(p=1,2,…,k)について適用する。この最適化の操作が1巡した時点で、このデータ変換装置の誤差を求め、所定の値以下になるか、ほぼ収束する状態、もしくは、所定の回数まで繰り返す。その際、最小の誤差となった場合には、「最適な係数」として係数を記録し、前述の所定の区間を決定するTに、1よりも大きい所定の値を乗じることによって、Tを増加させる。一方、誤差が最適化を1巡行う前に比較して、増加してしまった場合には、Tに1よりも小さい所定の値を乗じて、Tを減少させる。所定のステップsについても同様の操作を行うが、最小ステップ未満の値とはしない。
【0078】
以上により、学習が終了した時点で、最終的に記録された「最適な係数」を出力する。
【0079】
つぎに、第2図に示す、本実施例の最も簡素な一例を用いて係数決定の具体的な手順を示す。1入力1出力で、2つの整数の係数w1とw2を持つ下記の式によるデータ変換装置について説明する。
【0080】
【数3】
y=x・w1+w2
ここで、xはデータ変換装置の入力、yはデータ変換装置の出力である。所定のステップを、s1=s2=1として、このデータ変換装置に、入力群と、対応する理想出力群として、以下の値を供給する。
【0081】
【表1】

Figure 0003817866
本実施例による係数を決定する方法により、w1とw2と初期値をいずれも0とする。この場合、誤差としては、合計のユークリッド距離を用いる。まず、w1について、誤差と、誤差に区間[0…2]の一様乱数を加えたものを算出する。その結果、次表のように算出されたとする。
【0082】
【表2】
Figure 0003817866
この結果に基づき、w1は更新しない。次に、w2について、同様に、誤差と、誤差に同上の乱数を加えたものを算出する。その結果、次表のように算出されたとする。
【0083】
【表3】
Figure 0003817866
この結果に基づき、w2も更新しない。この状況は、いずれの変数も変更しない方が誤差が小さいという極少の状況の例である。本実施例では誤差を付加しているので、引続きこの計算を繰り返し、所定の確率によってこのような極少から脱出できる。
【0084】
この時点で誤差を評価し、2を得る。誤差が大きいので、引続き、w1について、誤差と、誤差に乱数を加えたものを算出する。その結果、次表のように算出されたとする。
【0085】
【表4】
Figure 0003817866
この結果に基づき、w1は1に更新する。更に、w2について、同様に、誤差と、誤差に乱数を加えたものを算出する。その結果、次表のように算出されたとする。
【0086】
【表5】
Figure 0003817866
この結果に基づき、w2は−1に更新する。この時点で誤差を評価し、0を得る。誤差が十分に小さいので、係数の最適化を終了する。
【0087】
以上に例を以て示したように、本実施例によれば、誤差は次第に減少し、所定の乱数を付加することによって誤差が極少となる点から、所定の確率によって脱出し、より誤差の小さい係数を得ることができる。
【0088】
以上に示した簡単な例では、最適化を2巡した時点で最適化が終了したが、現実的な係数決定では、より複雑な係数を決定する必要があることが一般的である。この場合、乱数の大きさが大きいまま最適化を進めると、最適化が概ね終了しても、最終的な係数には収束しにくい。そこで、誤差が小さい係数がより高い確率で選択されるように、乱数の大きさを小さくし、収束を進めるようにする。一方、乱数が小さすぎると極少を脱出できなくなる場合がある。本実施例では誤差の履歴により、確率を制御することによってこの課題を解決した。
【0089】
また、以上に示した簡単な例では所定のステップは、s1,s2とも1を用いたが、処理を高速化するためと、極少からより高い確率で脱出できる目的で、誤差の履歴により、所定のステップを制御している。また、s1,s2に異なる値を用い、実質的により小さいステップ、すなわちs1、s2、|s1−s2|の最大公約数による最適化を可能にする。
【0090】
以上、簡単な例を以て作用を説明したが、本実施例によれば複雑なデータ変換装置においても、同様の動作をする。
【0091】
本方式においては、データ変換装置の誤差は、装置内の丸めや精度を含めた誤差による評価を行っている。従って、このような誤差を含めた上で、より誤差の少ない係数を、全探査よりも高速に算出することが可能である。
【0092】
[実施例2]
つぎにデータ変換装置として離散的な係数をとるニューラルネットワークを用いて色変換を行う実施例2について説明する。図3は本実施例の構成を示し、この図において、図1と対応する箇所には対応する符号を付して詳細な説明を省略する。図3において、入力バッファ11は入力データとして印刷のC(サイアン)、M(マジェンタ)、Y(イエロー)、K(墨)の面積率を保持している。ニューラルネットワークを用いた色変換装置21はC、M、Y、Kの面積率をCIE L***(D50)色座標に変換するものである。ニューラルネットワークの係数は離散的であり、係数更新部19によって最適化されていく。変換された色座標データは出力バッファ13にストアされ、色差算出部22によって出力色座標データと理想色座標データとの色差が算出される。色差自乗平均算出部23は色差の自乗平均を算出し、これが誤差とされる。
【0093】
つぎに色変換装置21の係数の最適化について詳細に説明する。上述のとおり、色変換装置21は、印刷のC、M、Y、Kの面積率を、印刷結果のCIE L***(D50)色座標に変換するものである。この色変換装置21の係数決定には、、入力として、IT8/7.3 extended setに基づく928組のCMYK面積率を、理想出力には、各面積率に基づいて印刷を行い、印刷結果をD50光源により測色し、CIE L***色座標としたものを用いる。すなわち、入力データxと理想出力データyは、{x1,y1},{x2,y2},…,{xi,yi}…,{x928,y928}であり、各入力データxiは、4次元で、xi=(Ci,Mi,Yi,Ki)であり、各理想出力データyiは、3次元で、yi=(Li,ai,bi)であるとする。このデータ変換装置のk個の係数(w1,w2,…,wp,…,wk)は、予め全て0に初期化しておく。このデータ変換装置に、データxiを与えた時の出力を、g(xi|w1,w2,…,wp,…,wk)とする。このときの理想出力yiとの誤差を、ΔE色差、すなわち、CIE L**b*色空間上のユークリッド距離ΔE(yi,g(xi|w1,w2,…,wp,…,wk))とする。本実施例では、この色変換装置の誤差を、各色の自乗平均誤差、すなわち、
【0094】
【数4】
Figure 0003817866
とする。
【0095】
いま、k個の係数のうち、p番目の係数wpに着目し、現在の係数値に対する誤差E0、すなわち、E0=E(w1,w2,…,wp,…,wk)と、現在の係数値より所定のステップs1だけ大きな係数値に対する誤差E+、すなわち、E+=E(w1,w2,…,wp+s1,…,wk)、及び、現在の係数値より所定のステップs2だけ小さな係数値に対する誤差E、すなわち、E-=E(w1,w2,…,wp−s2,…,wk)の3種類の誤差を算出する。この実施例では加算の場合の所定のステップを異なる値としているが、加算の場合の所定のステップと、減算の場合の所定のステップは必ずしも異なる値とする必要はない。
【0096】
次に、これらの誤差に基づいて、より低い誤差のものが、より高い確率で選ばれる適宜の関数によって、いずれか1つを選択する。E0が選択された場合、wpは更新しない。E+が選択された場合、wpにs1を加え、更新する。E-が選択された場合、wpからs2を減じ、更新する。
【0097】
この操作を各重みwp(p=1,2,…,k)について適用する。この最適化の操作が1巡した時点で、この色変換装置の誤差を求め、所定の値以下になるか、ほぼ収束する状態、もしくは、所定の回数まで繰り返す。その際、最小の誤差となった場合には、「最適な係数」として係数を記録し、前述の所定のステップsに、1よりも大きい所定の値を乗じることによって、sを増加させる。一方、誤差が最適化を1巡行う前に比較して、増加してしまった場合には、s1やS2に1よりも小さい所定の値を乗じて、s1やS2を減少させるが、最小ステップ以下未満の値とはしない。
【0098】
以上により、学習が終了した時点で、最終的に記録された「最適な係数」を出力する。
【0099】
[実施例3]
つぎに係数が離散値をとるテーブルと補間とを用いる色変換装置を用いた実施例3について説明する。図4は実施例3の構成を示しており、この図において、図1と対応する箇所には対応する符号を付して詳細な説明を省略する。図4において、入力バッファ11は入力データとしてCIE L*** (D50)色座標データをストアしている。色変換装置31は、係数が離散値をとるテーブルと補間とを用いて、CIE L*** (D50)色座標を入力し、所定の印刷装置のC、M、Y、Kの面積率を算出するものである。本実施例では、各格子点に記憶する値は離散値とする。この変換装置31の詳細は後述する。C、M、Y、Kの面積率は出力バッファ13にストアされ、これに基づいて印刷装置32を駆動して印刷出力を得る。こののち印刷出力を測定してCIE L***(D50)色座標データを得る。この色座標データは測定値バッファ33にストアされる。理想出力データメモリ14には入力データ自体がストアされ、この入力データと測定値バッファ33の色座標データとの色差が色差算出部22で算出され、平均色差が平均色差算出部34で算出され、誤差とされる。
【0100】
つぎに変換装置31の係数の最適化について詳細に説明する。変換装置31は、入力空間上のL*軸、a*軸、b*軸の各々の代表点、例えば、各軸10点からなる3次元の表に、予め変換後のCMYK各面積率を記録し、色変換に際しては、入力した色座標を含む直方体の各頂点に相当する格子点の変換値を、直方体内の位置に応じて補間を行い、変換結果を得るものであり、補間方法としては、4面体補間法、プリズム補間法、cubic補間法などが知られている。本実施例はこれらの補間方法のいずれの場合でも適用することができる。
【0101】
一般的に、各格子点に記憶される変換値は、各代表点の変換値をテーブルの精度によって丸めた値であり、いずれの補間方法においても、入出力の対応によっては補間誤差が発生する。
【0102】
所定の係数における、この色変換装置の誤差を次の手順により求めた平均色差とする。十分に細かい所定の間隔、例えば、各次元とも格子点の代表値の間隔の16分の1の間隔で、所定のの係数によって色変換し、CMYKの各面積率を算出する。この算出結果をもとに印刷を行い、測色値と、変換前の色座標との色差を算出し、全入力範囲についての平均の色差を誤差とする。この際、実際に印刷を行って、測色することに換えて、プリンタをモデル化したものを用いて印刷後の予測値を推定しても良い。
【0103】
本実施例は、補間後の平均の色差が最小になるように、各格子点の値を最適化することを目的とし、以下の最適化を行う。
【0104】
まず、全ての格子点について、各格子点(L,A,B)のテーブルに記憶する離散値の係数{C(L,A,B),M(L,A,B),Y(L,A,B),K(L,A,B)}を、対応する変換値をテーブルの精度によって丸めた値により初期化する。T及びsをそれぞれ適宜の初期値とする。各格子点に、色再現範囲内で、彩度の低いものから順に通し番号を付け、引続き、色再現範囲外の格子点について、変換前後の色差が小さい順に通し番号を付ける。つぎに以下の処理プを行う。
処理(1):通し番号が小さい順に、Kの格子点値を、処理(1.1)〜(1.3)の操作により最適化する。
処理(1.1):現在のKの値に所定のステップsを加え、色変換装置の誤差を算出する。
処理(1.2):現在のKの値から所定のステップs及びステップの最小単位を減じ、色変換装置の誤差を算出する。
【0105】
この際、全入力範囲に換えて、この係数が影響を持つ範囲に限って色差の平均を求めてもよい。例えば、4面体補間法、プリズム補間法、cubic補間法では、それぞれ当該格子点を頂点に持つ4面体、3角柱、直方体に含まれる部分のみについて平均を求めても良い。
処理(1.3):上記処理(1.1)の誤差と処理(1.2)の誤差に所定の区間[0,T]に一様な分布に基づく乱数をそれぞれに加算し、処理(1.1)の誤差と乱数の和が、処理(1.2)の誤差と乱数の和よりも小さい場合には現在のKの値に所定のステップsを加え、更新する。そうでない場合には、現在のKの値から所定のステップs及びステップの最小単位を減じ更新する。
処理(2):上記処理(1)の操作を、全ての格子点のKに適用する。この最適化の操作が1巡した時点で、この色変換装置の誤差を求め、所定の値以下になるか、ほぼ収束する状態、もしくは、所定の回数まで繰り返す。その際、最小の誤差となった場合には、「Kが最適な係数」として係数を記録し、前述の所定の区間を決定するTに、1よりも大きい所定の値を乗じることによって、Tを増加させる。一方、誤差が最適化を1巡行う前に比較して、増加してしまった場合には、Tに1よりも小さい所定の値を乗じて、Tを減少させる。所定のステップsについても同様の操作を行うが、最小ステップ未満の値とはしない。
【0106】
次に、「Kが最適な係数」を初期値として、T及びsをそれぞれ適宜の初期値とし以下の処理を実行する。
処理(3):通し番号が小さい順に、CMYの格子点値を、処理(3.1)〜(3.5)の操作により最適化する。
処理(3.1):現在のCの値に所定のステップsを加え、色変換装置の誤差を算出する。
処理(3.2):現在のCの値から所定のステップs及びステップの最小単位を減じ、色変換装置の誤差を算出する。
処理(3.3):上記処理(3.1)の誤差と処理(3.2)の誤差に所定の区間[0,T]に一様な分布に基づく乱数をそれぞれに加算し、処理(3.1)の誤差と乱数の和が処理(3.2)の誤差と乱数の和よりも小さい場合には現在のCの値に所定のステップsを加え、更新する。そうでない場合には、現在のCの値から所定のステップs及びステップの最小単位を減じ更新する。
処理(3.4):処理(3.1)〜(3.3)の操作をCに換えてMについて適用する。
処理(3.5):処理(3.1)〜(3.3)の操作をCに換えてYについて適用する。
処理(4):上記処理(3)の操作を、全ての格子点に適用する。この最適化の操作が1巡した時点で、この色変換装置の誤差を求め、所定の値以下になるか、ほぼ収束する状態、もしくは、所定の回数まで繰り返す。その際、最小の誤差となった場合には、「最適な係数」として係数を記録し、前述の所定の区間を決定するTに、1よりも大きい所定の値を乗じることによって、Tを増加させる。一方、誤差が最適化を1巡行う前に比較して、増加してしまった場合には、Tに1よりも小さい所定の値を乗じて、Tを減少させる。所定のステップsについてもTと同様の操作を行うが、最小ステップ未満の値とはしない。
【0107】
以上により、学習が終了した時点で、最終的に記録された「最適な係数」を出力する。
【0108】
[実施例4]
つぎに離散的な係数値と誤差との間に想定可能な連続的な関数を導入して係数の最適化を行う実施例4について説明する。図5は実施例4の構成を示しており、この図において図3と対応する箇所には対応する符号を付して詳細な説明をその省略する。図5において、2次関数決定部41はE0、E-、E+の誤差に基づいて2次関数を決定し、微係数算出部42はこの2次関数のE0における微係数を算出する。係数更新部43は温度(アニーリングにおける温度)および微係数に応じて係数を決定する。これについては後に詳述する。
【0109】
つぎにこの実施例における色変換装置21の係数の最適化について詳細に説明する。色変換装置21は、本実施単独で最適化を行ってもよいし、また、本実施例に先だって実施例2により適宜回数最適化を行った後に本実施例による最適化を行ってもよい。誤差などの諸定義は実施例2と同じである。
【0110】
いま、k個の係数のうち、p番目の係数wpに着目し、現在の係数値に対する誤差E0、すなわち、E0=E(w1,w2,…,wp,…,wk)と、現在の係数値より所定のステップs1だけ大きな係数値に対する誤差E+、すなわち、E+=E(w1,w2,…,wp+s1,…,wk)、及び、現在の係数値より所定のステップs2だけ小さな係数値に対する誤差E、すなわち、E-=E(w1,w2,…,wp−s2,…,wk)の3種類の誤差を算出する。この3点の誤差より、2次関数を推定し、wpにおける微係数E’pを算出する。
【0111】
温度tに応じて、微係数E’pが大きければ高い確率で1(それ以外は0)となる確率変数X+(E’p;t)と、微係数E’pが小さければ高い確率で1(それ以外は0)となる確率変数X-(E’p;t)によって、係数wpを、以下の値によって更新する。ここで、確率変数X+とX-は、温度が高いほど不確定的に、温度が低いほど確定的に微係数の影響を受けるものとする。
【0112】
【数5】
wp←wp+s1・X+(E’p;t)−s2・X-(E’p;t)
この実施例では加算の場合の所定のステップを異なる値としているが、加算の場合の所定のステップと、減算の場合の所定のステップは必ずしも異なる値とする必要はない。
【0113】
この操作を各重みwp(p=1,2,…,k)について適用する。この最適化の操作が1巡した時点で、この色変換装置の誤差を求め、所定の値以下になるか、ほぼ収束する状態、もしくは、所定の回数まで繰り返す。その際、最小の誤差となった場合には、「最適な係数」として係数を記録し、前述の所定のステップs1、s2と温度tに、1よりも大きい所定の値を乗じることによって、ステップと温度を増加させる。一方、誤差が最適化を1巡行う前に比較して、増加してしまった場合には、s1、s2と温度tに1よりも小さい所定の値を乗じて、ステップと温度をを減少させる。但し各ステップは、最小ステップ以下未満の値とはしない。
【0114】
以上により、学習が終了した時点で、最終的に記録された「最適な係数」を出力する。
【0115】
尚、本実施例では3点を取り、2次関数により微係数を算出したが、2点以上の点を取れば適宜の関数によって微係数を定めることができる。
【0116】
また、以上では、3点をとっていたが、p種類の適宜の関数f1(w)、f2(w)…fp(w)を用いてp種類の係数を算出することができる。
【0117】
ここで、例として、p=4の場合、
【0118】
【数6】
1(w)=w+1
2(w)=w+2
3(w)=w+3
4(w)=w+4
とすることができる。微係数を算出する場合では、現在の係数を含む区間でなくても現在の値の微係数を推定することが可能であるから、関数値が現在の係数を含む区間でなくてもよい。
【0119】
また、別の例として、p=5の場合、
【0120】
【数7】
1(w)=floor(w×0.98)
2(w)=floor(w×0.99)
3(w)=w
4(w)=ceil(w/0.99)
5(w)=ceil(w/0.98)
としてもよい。ここで、floorは切り捨て、ceilは切り上げによる丸めである。ここでは、係数の取り得る離散値に丸める操作の例として切り捨てや切り上げを用いて例を示したが、丸める操作は任意の方法を取ることができる。
【0121】
[適用例]
つぎに本発明の適用例について説明する。
【0122】
図6は、本発明のデータ変換装置を利用した電子機器を示しており、この図において、電子機器100はデータ変換装置110を有している。データ変換装置110は上述した実施例と同様なものであり、変換用の係数として離散値をとっている。データ変換装置110は係数最適化部111により上述した実施例と同様な手法で最適化が行われる。
【0123】
この場合、基準となるデータ変換装置で予め係数の最適化を行い、これを電子機器100のデータ変換装置110にインストールするようにしてもよい。この後、さらに係数最適化部111で最終的な最適化処理を行うようにしてもよい。
【0124】
図7は本発明のデータ変換装置を利用したカラー画像形成装置(カラー複写機やカラー印刷機)を示しており、この図において、画像形成装置200はデータ変換装置からなる2つの色変換装置210、220を有している。入力部230から入力された色データは色変換部210、220で逐次色変換され、出力部240に供給され、印刷出力される。この例では色変換装置210、220の両方もしくは一方において本発明のデータ変換装置の係数最適化を行える。
【0125】
図8は、本発明のデータ変換装置を利用したロボット装置を示しており、この図において、ロボット300はデータ変換装置310を備えており、位置入力部320からの位置入力に応じて姿勢等の制御を行うようになっている。誤差検出部330は誤差を検出し、これに応じてデータ変換装置の係数の最適化が行われる。
【0126】
【発明の効果】
以上説明したように、本発明によれば、離散的な値を取る係数を用いてデータの変換を行う場合であっても、係数の値を簡易かつ安定して学習させることができる。
【図面の簡単な説明】
【図1】 本発明の実施例1の構成を示す図である。
【図2】 上述実施例の詳細を具体的に説明する図である。
【図3】 本発明の実施例2の構成を示す図である。
【図4】 本発明の実施例3の構成を示す図である。
【図5】 本発明の実施例4の構成を示す図である。
【図6】 本発明の適用例を説明する図である。
【図7】 本発明の適用例を説明する図である。
【図8】 本発明の適用例を説明する図である。
【符号の説明】
11 入力バッファ
12 データ変換装置
13 出力バッファ
14 理想出力メモリ
15 誤差算出部
16 誤差履歴メモリ
17 乱数分布制御部
18 ステップ制御部
19 係数更新部
100 電子機器
200 カラー画像形成装置
300 ロボット[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a method and apparatus for determining a coefficient for obtaining an output with a small error from ideal output data corresponding to predetermined input data in a data conversion apparatus defined by an appropriate number of discrete value coefficients. . The present invention can be applied to, for example, determination of coefficients of a color conversion device using a hierarchical neural network having discrete coefficient values, and determination of representative point values for color conversion using a representative point table and interpolation.
[0002]
[Prior art]
In a data conversion apparatus defined by an appropriate number of discrete-value coefficients, if the range of possible coefficients is limited, the types of values that each coefficient can take are limited. Therefore, if errors are evaluated for all combinations of coefficients, there is at least one optimum coefficient. In addition, according to the method of searching the entire space of coefficients in this way, it is possible to surely obtain an optimum coefficient. However, in general, there are an enormous number of such combinations, and this is not practical as a method for calculating coefficients. Therefore, it is common to calculate the coefficients by a priori method or various approximate methods based on the characteristics of each data converter.
[0003]
In a data conversion device that includes discrete value coefficients, if the optimal coefficient is determined a priori for any given input / output response, the coefficient can be determined by that method, using conventional techniques. But it won't be a problem.
[0004]
On the other hand, even if the coefficient is determined a priori, it may not be a discrete coefficient. For example, in a data conversion device using matrix operations consisting of coefficients of discrete values, each coefficient that minimizes the error can be calculated a priori, but the calculation result is not a discrete value, and this is rounded, rounded up, rounded down, etc. Therefore, an operation of rounding to a discrete value is required. Since each coefficient becomes a value different from the optimum value due to rounding, the error generally increases.
[0005]
Similarly, even in the case of a technique such as matrix operation, when the effective accuracy is limited in the operation process, for example, in the case of finite precision fixed-point product-sum operation, the calculation process is rounded in the operation process of the data converter. Etc., the accuracy further decreases. In such a case, it is necessary to consider characteristics such as rounding of the calculation process in order to calculate the optimum coefficient. However, since the correspondence between the coefficient and the error has a very complicated relationship, it is conventionally considered. There was no. In order to improve accuracy by conventional techniques, techniques such as effective accuracy in calculation processes and finer increments of coefficients have been generally used.
[0006]
In a data conversion apparatus using a representative point table and interpolation, the converted data is recorded in advance in a table at a grid point composed of input representative points of each dimension, and a conversion result is obtained by performing interpolation. As a coefficient recorded in the table in such a data conversion apparatus, data after conversion of representative points is generally used. In general, an interpolation error occurs due to interpolation, but there has been no method for optimizing the coefficients recorded at the grid points in consideration of input conversion errors other than the grid points. In order to improve the accuracy by the conventional technique, generally, a technique of increasing the number of representative points of the input dimension has been used.
[0007]
For a data conversion device in which a coefficient is a continuous value and an error can be partially differentiated by each coefficient, a coefficient determination method by successive approximation of a differential equation is known. In particular, in a neural network, a coefficient calculation method represented by a back propagation method is generally used.
[0008]
However, in the case of including discrete-value coefficients, it is impossible to perform partial differentiation of errors with these coefficients, and the above-described method represented by back-propagation cannot be used.
[0009]
Therefore, conventionally, in the case where a data converter capable of partial differentiation can be configured with the same configuration, a technique has been used in which a coefficient is calculated in advance as a continuous value and the result is rounded to obtain a discrete value coefficient. It was. In this case, as with the above-described determinant, there is a problem that accuracy is reduced by rounding.
[0010]
In learning by hardware, a technique similar to backpropagation in which similar differential equations are approximated with finite precision has been used. This technique has a problem in that learning stops when the error of back propagation falls below the calculation accuracy.
[0011]
Furthermore, in the case of neural networks using finite precision fixed-point operations, as with fixed-point determinants, there is an influence such as rounding of the calculation process, and the relationship between coefficients and errors becomes more complicated, so the optimum optimum is actually achieved. It was difficult to obtain discrete values. In order to improve accuracy by conventional techniques, techniques such as effective accuracy in calculation processes and finer increments of coefficients have been generally used. When the effective accuracy and the coefficient increment are made fine, the configuration of the data conversion apparatus becomes complicated.
[0012]
In addition, this method has a problem that the configuration of the apparatus based on this method becomes complicated because it is necessary to solve the differential equation by successive approximation.
[0013]
As a learning method having a relatively simple configuration when limited to a neural network, a coefficient update difference amount is generated by a random number and updated as disclosed in JP-A-4-282476 (US Pat. No. 5,459,817). There was a method to update the coefficient by the alternative of before and after. This method requires a mechanism that generates random numbers for each synapse. Furthermore, since the update amount itself is not controlled and only the code is controlled by a random number, the update amount is not controlled from the initial stage of learning to the stage where the sequential learning progresses. For this reason, there is a problem in that the speed of learning arises, and there is a problem that convergence will be minimal if the alternative configuration is not properly performed.
[0014]
[Problems to be solved by the invention]
Of the methods described above, except for the method of searching the entire space of the coefficients, the method of calculating the coefficients is different based on the configuration of each data conversion device, and when a device based on these methods is configured, There has been a problem that the configuration of the apparatus becomes complicated. Further, as described above, an apparatus based on a technique for searching the entire space of coefficients is not realistic because it searches a huge space, although the configuration is simple.
[0015]
In order to improve the accuracy of the data conversion apparatus, it is necessary to change the configuration of the apparatus and method.
[0016]
In addition, when updating a coefficient based on a differential coefficient, it is essential to construct a differential equation, and for a non-differentiable correspondence such as a digit loss, a differential equation cannot be constructed and the coefficient cannot be determined. It was.
[0017]
Therefore, the present invention has less errors in a shorter time than the method of searching the entire space of coefficients, regardless of the configuration of each data conversion apparatus, taking into account the influence of the coefficients themselves and the rounding of the calculation process. It is an object to calculate a coefficient.
[0018]
[Means for Solving the Problems]
The present invention is characterized in that a coefficient having a small error is calculated by reducing the error by repeating an operation based on calculation of the error and selection of a probabilistic coefficient depending on the error.
[0019]
That is, according to the present invention, in order to achieve the above-described object, m-dimensional input data is converted into n-dimensional output data according to k coefficients including at least one coefficient that takes discrete values. A coefficient determination device for optimizing a coefficient in a data conversion apparatus, for each coefficient having a discrete value, a current coefficient value, a coefficient value larger than the current coefficient value by a predetermined step s1, and the current Means for calculating an output data group for a predetermined input data group for at least two coefficient values among coefficient values smaller than the coefficient value by a predetermined step s2, and an output data group calculated for the at least two coefficient values and the predetermined value The probability that the smaller the error from the ideal output data group corresponding to the input data group is, the higher the probability is, and one of the at least two coefficient values is newly set. And it is provided with a coefficient value selecting means for selecting as a number.
[0020]
In this configuration, an error is calculated for a candidate coefficient value, and a candidate coefficient value having a smaller error is set to a new coefficient value with a higher probability. Therefore, the coefficient value can be optimized by repeatedly updating the coefficient value.
[0021]
Further, in this configuration, the coefficient value selecting means includes means for adding a random number according to a predetermined distribution to each error in the at least two coefficient values and selecting a coefficient value that gives a minimum value of the sum. Can be.
[0022]
Also, a means for controlling the degree of the gradual decrease of the probability with respect to the magnitude of the error or derivative, or the predetermined steps s1 and s2, or both according to the error history may be provided. Good.
[0023]
The means for controlling the degree of gradual decrease of the probability with respect to the magnitude of the error according to the error history may be a means for controlling the predetermined distribution of random numbers.
[0024]
In addition, at least one coefficient taking the discrete value is recorded in advance as a discrete value corresponding to n outputs for each representative point in the m-dimensional representative point table corresponding to the m-dimensional input data. The value corresponding to the output of the representative point of the data conversion apparatus that obtains the n-dimensional output by interpolating the value corresponding to the output, and defining the error and the ideal output value group for the appropriate input value group Thus, a means for updating the coefficient can be provided.
[0025]
Further, according to the present invention, in order to achieve the above-described object, the data conversion apparatus receives m-dimensional input data according to k coefficients including at least one coefficient taking a discrete value. For each of the data conversion means for converting to output data and the coefficient taking the discrete value, a current coefficient value, a coefficient value larger by a predetermined step s1 than the current coefficient value, and a predetermined value from the current coefficient value Means for calculating an output data group for a predetermined input data group with respect to at least two coefficient values among the coefficient values small by step s2, and the output data group calculated for the at least two coefficient values and the predetermined input data group. A factor for selecting one of the at least two coefficient values as a new coefficient value with a probability that the smaller the error from the corresponding ideal output data group is, the higher the probability is. Are provided and a value selection means.
[0026]
Also in this configuration, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Therefore, the coefficient value can be optimized by repeatedly updating the coefficient value.
[0027]
Further, according to the present invention, in order to achieve the above-described object, the color conversion device receives m-dimensional first color data according to k coefficients including at least one coefficient taking a discrete value. color conversion means for converting to n-dimensional second color data; and for each of the coefficients taking discrete values, a current coefficient value, a coefficient value larger than the current coefficient value by a predetermined step s1, and the above Means for calculating a second color data group for a predetermined first color data group for at least two coefficient values of coefficient values smaller than the current coefficient value by a predetermined step s2, and calculating for the at least two coefficient values; Any one of the at least two coefficient values has a probability of increasing as the error between the second color data group and the ideal second color data group corresponding to the predetermined first color data group decreases. The new A coefficient value selecting means for selecting as a number is provided.
[0028]
Also in this configuration, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Therefore, the coefficient value can be optimized by repeatedly updating the coefficient value.
[0029]
In this configuration, the error can be a color difference.
[0030]
Further, according to the present invention, in order to achieve the above object, the color image forming apparatus (for example, a color copying machine or a color printing machine) receives the m-dimensional first color data, discrete values, and the like. Color conversion means for converting the m-dimensional first color data into n-dimensional second color data in accordance with k coefficients including at least one coefficient taking the above, and the color conversion means output from the color conversion means For each of the output means for performing a predetermined output operation based on the second color data and the coefficient having the discrete value, a current coefficient value, a coefficient value larger than the current coefficient value by a predetermined step s1, And means for calculating a second color data group for a predetermined first color data group for at least two coefficient values of coefficient values smaller than the current coefficient value by a predetermined step s2, and the at least two coefficient values One of the at least two coefficient values has a probability that it increases as the error between the calculated second color data group and the ideal second color data group corresponding to the predetermined first color data group decreases. Coefficient value selection means for selecting one as a new coefficient value is provided.
[0031]
Also in this configuration, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Therefore, the coefficient value can be optimized by repeatedly updating the coefficient value.
[0032]
In this configuration, the output means may receive the second color data via a subsequent color conversion means.
[0033]
Further, according to the present invention, in order to achieve the above-described object, the electronic device is provided with means for receiving m-dimensional input data and k coefficients including at least one coefficient taking a discrete value. Data conversion means for converting the m-dimensional input data into n-dimensional output data; output means for performing a predetermined output operation based on the n-dimensional output data output from the data conversion means; For each coefficient that takes a value, at least two coefficient values are selected from the current coefficient value, a coefficient value that is larger than the current coefficient value by a predetermined step s1, and a coefficient value that is smaller than the current coefficient value by a predetermined step s2. Means for calculating an output data group for a predetermined input data group, corresponding to the output data group calculated for the at least two coefficient values and the predetermined input data group That at a probability becomes higher as a small error from the ideal output data group, so that provided the coefficient value selecting means for selecting one of the at least two coefficient values as a new coefficient value.
[0034]
Also in this configuration, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Therefore, the coefficient value can be optimized by repeatedly updating the coefficient value.
[0035]
In addition, according to the present invention, coefficients are optimized in a data conversion apparatus that converts m-dimensional input data into n-dimensional output data according to k coefficients including at least one coefficient taking discrete values. For the coefficient determination device, for each coefficient taking the discrete value, means for calculating an output data group for p kinds of coefficient values in an appropriate section including the current coefficient value, and for the p kinds of coefficient values An error between the calculated output data group and the ideal output data group corresponding to the predetermined input data group is calculated, and a calculation means for obtaining p types of errors, and a differential in the current coefficient value from the p types of errors. Assuming a possible predetermined function from the coefficient value to the error, a differential coefficient calculating means for calculating the differential coefficient at the current coefficient value, and a function for updating the coefficient probabilistically or deterministically based on the above-mentioned differential coefficient Numeric It is to be provided and new means.
[0036]
Here, instead of obtaining p kinds of coefficients from an appropriate section including the current coefficient value, p kinds of coefficient values can be calculated by applying p kinds of predetermined functions to the current coefficient value. . This function can be an arbitrary function. In particular, an appropriate discrete value can be added to the current coefficient value to obtain a function value, and the appropriate value can be changed to the current coefficient value. A value obtained by multiplying and rounding the product of the result to a discrete value can also be used as a function value. Means may be further provided for controlling the number of p and the predetermined p types of functions according to an error history. The predetermined function may be a function value obtained by adding an appropriate discrete value to the current coefficient value. Further, the predetermined function is obtained by multiplying an appropriate value by a current coefficient value or dividing the current coefficient value by an appropriate value and rounding the product or quotient of the result to a discrete value. It may be a function value.
[0037]
In this configuration, an error is calculated for the candidate coefficient value, an error function is assumed based on this error, and a differential coefficient of the error function in the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0038]
In this configuration, at least one of the current coefficient value, the coefficient value obtained by adding the predetermined step s1 to the current coefficient value, and the coefficient value obtained by subtracting the predetermined step s2 from the current coefficient value is the above-mentioned p types. It can be included in the coefficient.
[0039]
Further, means for controlling the degree of the gradual decrease of the probability with respect to the magnitude of the derivative and one or both of the predetermined steps s1 and s2 according to an error history may be provided.
[0040]
In addition, at least one coefficient taking the discrete value is recorded in advance as a discrete value corresponding to n outputs for each representative point in the m-dimensional representative point table corresponding to the m-dimensional input data. The value corresponding to the output of the representative point of the data conversion apparatus that obtains the n-dimensional output by interpolating the value corresponding to the output, and defining the error and the ideal output value group for the appropriate input value group Thus, means for updating the coefficient may be provided.
[0041]
Further, according to the present invention, in order to achieve the above-described object, the data conversion apparatus receives m-dimensional input data according to k coefficients including at least one coefficient taking a discrete value. Data conversion means for converting to output data; means for calculating an output data group for p types of coefficient values in an appropriate section including the current coefficient value for each of the coefficients having discrete values; An error between the output data group calculated for the type of coefficient value and the ideal output data group corresponding to the predetermined input data group is calculated to obtain p types of errors, and from the p types of errors, the current Assuming a function from an appropriate differentiable count value to an error in the coefficient value of, and a differential coefficient calculation means for calculating a differential coefficient at the current coefficient value, and a coefficient stochastic or deterministically based on the above differential coefficient Update And it is provided with a coefficient value updating means.
[0042]
Also in this configuration, an error is calculated for the candidate coefficient value, an error function is assumed based on this error, and a differential coefficient of the error function in the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0043]
Further, according to the present invention, in order to achieve the above-described object, the color conversion device receives m-dimensional first color data according to k coefficients including at least one coefficient taking a discrete value. Color conversion means for converting to n-dimensional second color data, and second color data for p-type coefficient values in an appropriate section including the current coefficient value for each of the coefficients having discrete values. Calculating an error between the means for calculating the group, the second color data group calculated for the p kinds of coefficient values, and the ideal second color data group corresponding to the predetermined first color data group; Assuming a calculation means for obtaining p types of errors and a predetermined function from the coefficient values to the errors that can be differentiated in the current coefficient values from the p types of errors, a differential coefficient in the current coefficient values is calculated. Based on the derivative calculation means and the above derivative, And it is provided with a coefficient value updating means for updating the coefficients Joteki.
[0044]
Also in this configuration, an error is calculated for the candidate coefficient value, an error function is assumed based on this error, and a differential coefficient of the error function in the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0045]
In this configuration, the error can be a color difference.
[0046]
Further, according to the present invention, in order to achieve the above-mentioned object, the color image forming apparatus (for example, a color copying machine or a color printing machine) receives the m-dimensional first color data and the discrete values. Color conversion means for converting the m-dimensional first color data into n-dimensional second color data in accordance with k coefficients including at least one coefficient taking the above, and the color conversion means output from the color conversion means The output means for performing a predetermined output operation based on the second color data, and the second of the p types of coefficient values in the appropriate section including the current coefficient value for each of the coefficients having the discrete values. An error between the means for calculating the color data group, the second color data group calculated for the p kinds of coefficient values, and the ideal second color data group corresponding to the predetermined first color data group is calculated. Calculating means for obtaining p types of errors, and the above p types Assuming a predetermined function from the coefficient value to the error, which is differentiable from the error of the current coefficient value, and based on the differential coefficient calculating means for calculating the differential coefficient in the current coefficient value, Coefficient value updating means for updating the coefficient stochastically or deterministically is provided.
[0047]
Also in this configuration, an error is calculated for the candidate coefficient value, an error function is assumed based on this error, and a differential coefficient of the error function in the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0048]
In this configuration, the output means may receive the second color data via a subsequent color conversion means.
[0049]
Further, according to the present invention, in order to achieve the above-described object, the electronic device is provided with means for receiving m-dimensional input data and k coefficients including at least one coefficient taking a discrete value. Data conversion means for converting the m-dimensional input data into n-dimensional output data; output means for performing a predetermined output operation based on the n-dimensional output data output from the data conversion means; For each coefficient that takes a value, means for calculating an output data group for p types of coefficient values in an appropriate section including the current coefficient value, an output data group calculated for the p types of coefficient values, and the predetermined value A calculation means for calculating an error from the ideal output data group corresponding to the input data group and obtaining p types of errors, and from the p types of errors to a coefficient value to an error that can be differentiated in the current coefficient value. Place As a function, a differential coefficient calculation unit that calculates a differential coefficient at the current coefficient value, and a coefficient value update unit that updates the coefficient stochastically or deterministically based on the differential coefficient are provided. .
[0050]
Also in this configuration, an error is calculated for the candidate coefficient value, an error function is assumed based on this error, and a differential coefficient of the error function in the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0051]
Further, according to the present invention, in order to achieve the above-described object, the coefficient value is determined in a neural network having k coefficients including at least one of discrete coupling coefficients and / or discrete threshold values. For each of the coefficients that take the discrete values, the coefficient determination device that performs the optimization has a current coefficient value, a coefficient value that is larger than the current coefficient value by a predetermined step s1, and a predetermined value that is greater than the current coefficient value. Means for calculating an output data group for a predetermined input data group for at least two coefficient values of coefficient values smaller by step s2, and corresponding to the output data group calculated for the at least two coefficient values and the predetermined input data group One of the at least two coefficient values is replaced with a new coefficient value with a probability that the smaller the error from the ideal output data group is, the higher the probability is. And it is provided with a coefficient value selecting means for selecting and.
[0052]
Also in this configuration, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Therefore, the coefficient value can be optimized by repeatedly updating the coefficient value.
[0053]
Further, according to the present invention, in order to achieve the above-mentioned object, the data conversion apparatus includes a neural network having k coefficients including at least one of discrete coupling coefficients and / or discrete threshold values. For each of the network and the coefficient taking the discrete value, a current coefficient value, a coefficient value larger than the current coefficient value by a predetermined step s1, and a coefficient value smaller than the current coefficient value by a predetermined step s2. Means for calculating an output data group for a predetermined input data group for at least two coefficient values, an output data group calculated for the at least two coefficient values, and an ideal output data group corresponding to the predetermined input data group, A coefficient value selection that selects one of the at least two coefficient values as a new coefficient value with a probability that the error becomes higher as the error of And it is provided with a means.
[0054]
Also in this configuration, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Therefore, the coefficient value can be optimized by repeatedly updating the coefficient value.
[0055]
Further, according to the present invention, in order to achieve the above-mentioned object, the coefficient value is calculated in a neural network having k coefficients including at least one of discrete coupling coefficients and / or discrete threshold values. A coefficient determination device to be optimized has means for calculating an output data group for p kinds of coefficient values in an appropriate section including a current coefficient value, for each of the coefficients having the discrete values, An error between the output data group calculated for the coefficient value and an ideal output data group corresponding to the predetermined input data group is calculated, and a calculation means for obtaining p types of errors, and the current relation from the p types of errors. Assuming a specific function that can be differentiated numerically from the coefficient value to the error, the derivative calculation means for calculating the derivative at the current coefficient value, and the probability or confirmation based on the derivative And it is provided with a coefficient value updating means for updating the coefficients.
[0056]
Also in this configuration, an error is calculated for the candidate coefficient value, an error function is assumed based on this error, and a differential coefficient of the error function in the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0057]
Further, according to the present invention, in order to achieve the above-mentioned object, the data conversion apparatus includes a neural network having k coefficients including at least one of discrete coupling coefficients and / or discrete threshold values. For each of the network and the coefficient taking the discrete value, a means for calculating an output data group for p types of coefficient values in an appropriate section including the current coefficient value, and calculation for the p types of coefficient values An error between the output data group and the ideal output data group corresponding to the predetermined input data group is calculated to obtain p types of errors; from the p types of errors, the current coefficient value can be differentiated. Supposing a predetermined function from the coefficient value to the error, a derivative calculating means for calculating a derivative in the current coefficient value, and a function for updating the coefficient probabilistically or deterministically based on the derivative And it is provided with a value updating means.
[0058]
Also in this configuration, an error is calculated for the candidate coefficient value, an error function is assumed based on this error, and a differential coefficient of the error function in the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0059]
According to the present invention, in order to achieve the above-mentioned object, m-dimensional input data is converted into n-dimensional output data according to k coefficients including at least one coefficient taking discrete values. A coefficient determination device for optimizing a coefficient value in a data conversion apparatus, for each coefficient having a discrete value, a current coefficient value, a coefficient value larger than the current coefficient value by a predetermined step s1, and the current Means for calculating an output data group for a predetermined input data group for at least two coefficient values among coefficient values smaller than the coefficient value by a predetermined step s2, and the output data group calculated for the at least two coefficient values and the predetermined value The probability that the smaller the error from the ideal output data group corresponding to the input data group is, the higher the probability is that it becomes higher, and one of the at least two coefficient values is newly associated Coefficient value selecting means for selecting values, means for calculating an output data group for p kinds of coefficient values in an appropriate section including the current coefficient value, for each of the coefficients having discrete values, and the p An error between the output data group calculated for the type of coefficient value and the ideal output data group corresponding to the predetermined input data group is calculated to obtain p types of errors, and from the p types of errors, the current Assuming a predetermined function from the coefficient value to the error that can be differentiated in the coefficient value, a derivative calculation means for calculating the derivative in the current coefficient value, and based on the derivative, probabilistically or deterministically Coefficient value updating means for updating the coefficient is provided, and after the coefficient value selection by the coefficient value selection means is executed at least once, the coefficient value update by the coefficient value update means is executed at least once. .
[0060]
In this configuration, first, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Thereafter, an error function is assumed based on this error, and a differential coefficient of the error function at the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0061]
According to the present invention, in order to achieve the above-mentioned object, m-dimensional input data is converted into n-dimensional output data according to k coefficients including at least one coefficient taking discrete values. In the method of determining the coefficient value in the data converter, for each coefficient having the discrete value, a current coefficient value, a coefficient value larger than the current coefficient value by a predetermined step s1, and the current coefficient A step of calculating an output data group for a predetermined input data group for at least two coefficient values among coefficient values smaller than a numerical value by a predetermined step s2, and an output data group calculated for the at least two coefficient values and the predetermined input One of the at least two coefficient values is newly added with a probability that the smaller the error from the ideal output data group corresponding to the data group, the higher the error. And so as to execute and selecting a coefficient value.
[0062]
Also in this configuration, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Therefore, the coefficient value can be optimized by repeatedly updating the coefficient value.
[0063]
According to the present invention, in order to achieve the above-mentioned object, m-dimensional input data is converted into n-dimensional output data according to k coefficients including at least one coefficient taking discrete values. In the method for determining the coefficient value in the data converter, for each coefficient having the discrete value, calculating an output data group for p types of coefficient values in an appropriate section including the current coefficient value; Calculating a difference between the output data group calculated for the p kinds of coefficient values and an ideal output data group corresponding to the predetermined input data group, and obtaining p kinds of errors; and from the p kinds of errors, Assuming a predetermined function from a coefficient value to an error that is differentiable in the current coefficient value, calculating a derivative in the current coefficient value, and, based on the derivative, probabilistic or It is to be executed and updating the coefficients Joteki.
[0064]
Also in this configuration, an error is calculated for the candidate coefficient value, an error function is assumed based on this error, and a differential coefficient of the error function in the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0065]
According to the present invention, in order to achieve the above-mentioned object, m-dimensional input data is converted into n-dimensional output data according to k coefficients including at least one coefficient taking discrete values. In the method of determining the coefficient value in the data converter, for each coefficient having the discrete value, a current coefficient value, a coefficient value larger than the current coefficient value by a predetermined step s1, and the current coefficient A step of calculating an output data group for a predetermined input data group for at least two coefficient values among coefficient values smaller than a numerical value by a predetermined step s2, and an output data group calculated for the at least two coefficient values and the predetermined input One of the at least two coefficient values is newly added with a probability that the smaller the error from the ideal output data group corresponding to the data group, the higher the error. Output data for p types of coefficient values in an appropriate section including the current coefficient value for each of the coefficients taking discrete values after the step of selecting as a coefficient value and the new coefficient value is selected Calculating a group; and calculating means for calculating an error between the output data group calculated for the p kinds of coefficient values and an ideal output data group corresponding to the predetermined input data group, and obtaining p kinds of errors; Assuming a predetermined function from the coefficient value to the error that can be differentiated from the p types of errors from the current coefficient value, calculating a differential coefficient at the current coefficient value, and based on the differential coefficient, The coefficient is updated probabilistically or deterministically, the coefficient value is selected one or more times, and then the coefficient value is updated one or more times.
[0066]
In this configuration, first, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Thereafter, an error function is assumed based on this error, and a differential coefficient of the error function at the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0067]
According to the present invention, in order to achieve the above-mentioned object, m-dimensional input data is converted into n-dimensional output data according to k coefficients including at least one coefficient taking discrete values. In the method of setting the coefficient value in the data converter, in a standard data converter having a function equivalent to that of the main body of the data converter, for each coefficient taking the discrete value, a current coefficient value, the current Calculating an output data group for a predetermined input data group for at least two coefficient values among a coefficient value larger than the coefficient value by a predetermined step s1 and a coefficient value smaller than the current coefficient value by a predetermined step s2; The error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the predetermined input data group is small. The step of selecting any one of the at least two coefficient values as a new coefficient value and the step of setting the selected coefficient as a coefficient of the data conversion device main body are executed with a probability of becoming higher. ing.
[0068]
Also in this configuration, an error is calculated for a candidate coefficient value, and a candidate coefficient value with a smaller error is set to a new coefficient value with a higher probability. Therefore, the coefficient value can be optimized by repeatedly updating the coefficient value.
[0069]
According to the present invention, in order to achieve the above-mentioned object, m-dimensional input data is converted into n-dimensional output data according to k coefficients including at least one coefficient taking discrete values. In the method of setting the coefficient value in the data conversion apparatus, the reference data conversion apparatus having a data conversion function equivalent to that of the data conversion apparatus main body includes a current coefficient value for each of the coefficients taking the discrete values. Calculating an output data group for p types of coefficient values in an appropriate section; and calculating an error between the output data group calculated for the p types of coefficient values and an ideal output data group corresponding to the predetermined input data group. Assuming a calculation means for calculating and obtaining p types of errors, and a predetermined function from coefficient values to errors that can be differentiated from the p types of errors in the current coefficient value, A step of calculating a differential coefficient in the coefficient value, a step of updating the coefficient probabilistically or deterministically based on the differential coefficient, and a step of setting the updated coefficient as a coefficient of the data converter main body I am doing so.
[0070]
Also in this configuration, an error is calculated for the candidate coefficient value, an error function is assumed based on this error, and a differential coefficient of the error function in the current coefficient value is obtained based on this function. Then, a new coefficient value is obtained based on this differential coefficient. By repeatedly updating the coefficient value, the coefficient value can be optimized.
[0071]
BEST MODE FOR CARRYING OUT THE INVENTION
Examples of the present invention will be described below.
[Example 1]
FIG. 1 shows a configuration of a first embodiment of the present invention. In this figure, a coefficient optimization system of a data conversion apparatus includes an input buffer 11, a data conversion apparatus 12, an output buffer 13, an ideal output memory 14, An error calculation unit 15, an error history memory 16, a random number distribution control unit 17, a step control unit 18, and a coefficient update unit 19 are included. The input buffer 11 stores m-dimensional input data given from the outside. The data converter 12 converts m-dimensional input data into n-dimensional output data using coefficients that take discrete values. The output buffer 13 stores n-dimensional output data output from the data converter 12. The error calculation unit 15 calculates an error between the output data and the ideal output data, and sends this error to the coefficient update unit 19 and the error history memory 16. The random number distribution control unit 17 varies the random number distribution according to the error history, and the step control unit 18 also varies the step size according to the error history. Thereby, annealing is performed. The coefficient updating unit 19 sets a coefficient value that minimizes the sum of the error and the random number as a new coefficient value.
[0072]
Next, optimization of coefficients will be described in detail. A case where j sets of m-dimensional input data and corresponding n-dimensional ideal output data are given will be described. That is, the input data x and the ideal output data y are expressed as {x1, Y1}, {X2, Y2}, ..., {xi, Yi} ..., {xj, Yj} And each input data xiIs m-dimensional and xi= (Xi1, Xi2, ..., xim) And each ideal output data yiIs n-dimensional and yi= (Yi1, Yi2, ..., yin). K coefficients (w1, W2, ..., wp, ..., wk) Is initialized in advance with an appropriate initial value, for example, a coefficient determined by a conventional method such as rounding, or all zeros. In this data converter, m-dimensional data xiIs given by f (xi| w1, W2, ..., wp, ..., wk). Ideal output y at this timeiAnd d (yi, F (xi| w1, W2, ..., wp, ..., wk)). Here, d is an appropriate n-dimensional distance, such as the Euclidean distance. In this embodiment, the error of this data conversion apparatus is calculated by adding the error of each data.
[0073]
[Expression 1]
E (w1, W2, ..., wp, ..., wk)
= Σi = 1 ... jd (yi, F (xi| w1, W2, ..., wp, ..., wk))
And
[0074]
Now, of the k coefficients, the p-th coefficient wpThe error E with respect to the current coefficient value0That is, E0= E (w1, W2, ..., wp, ..., wk), An error E for a coefficient value larger than the current coefficient value by a predetermined step s.+That is, E+= E (w1, W2, ..., wp+ S, ..., wk) And an error E for a coefficient value smaller than the current coefficient value by a predetermined step s.-That is, E-= E (w1, W2, ..., wp-S, ..., wk) Three types of errors are calculated. In this embodiment, the predetermined step in the case of addition and the predetermined step in the case of subtraction are s in both cases, but the predetermined step in the case of addition and the predetermined step in the case of subtraction are not necessarily the same value. It is not necessary to.
[0075]
Next, a random number N based on a uniform distribution in a predetermined section [0, T] is added to each of these errors,
[0076]
[Expression 2]
e0= E0+ N
e+= E++ N
e-= E-+ N
Get. Where e0, E+, E-E0If is the smallest, wpWill not be updated. e+If is the smallest, wpS is added to and updated. e-If is the smallest, wpSubtract from s and update.
[0077]
This operation is performed for each coefficient wp(P = 1, 2,..., K). When this optimization operation completes one round, the error of the data conversion apparatus is obtained, and the error is repeated until it reaches a predetermined value or is almost converged, or a predetermined number of times. At that time, if the minimum error occurs, the coefficient is recorded as an “optimum coefficient”, and T is increased by multiplying T, which determines the predetermined section, by a predetermined value greater than 1. Let On the other hand, if the error has increased compared to before performing one round of optimization, T is decreased by multiplying T by a predetermined value smaller than 1. The same operation is performed for the predetermined step s, but the value is not less than the minimum step.
[0078]
As described above, when the learning is finished, the finally recorded “optimum coefficient” is output.
[0079]
Next, a specific procedure for determining the coefficient will be described using the simplest example of this embodiment shown in FIG. 1 input 1 output, 2 integer coefficients w1And w2A data conversion apparatus having the following formula will be described.
[0080]
[Equation 3]
y = x · w1+ W2
Here, x is an input of the data converter, and y is an output of the data converter. The predetermined step is s1= S2= 1, the following values are supplied to the data converter as an input group and a corresponding ideal output group.
[0081]
[Table 1]
Figure 0003817866
By the method of determining the coefficients according to this embodiment, w1And w2And the initial value is 0. In this case, the total Euclidean distance is used as the error. First, w1Is calculated by adding an error and a uniform random number in the interval [0... 2] to the error. As a result, it is calculated as shown in the following table.
[0082]
[Table 2]
Figure 0003817866
Based on this result, w1Will not be updated. Then w2Similarly, the error and the error plus the same random number are calculated. As a result, it is calculated as shown in the following table.
[0083]
[Table 3]
Figure 0003817866
Based on this result, w2Also do not update. This situation is an example of a minimal situation where the error is smaller when neither variable is changed. Since an error is added in the present embodiment, this calculation is continuously repeated, and it is possible to escape from such a minimum with a predetermined probability.
[0084]
At this point, the error is evaluated and 2 is obtained. Since the error is large, w1For, calculate the error and the error plus a random number. As a result, it is calculated as shown in the following table.
[0085]
[Table 4]
Figure 0003817866
Based on this result, w1Is updated to 1. In addition, w2Similarly, an error and a value obtained by adding a random number to the error are calculated. As a result, it is calculated as shown in the following table.
[0086]
[Table 5]
Figure 0003817866
Based on this result, w2Is updated to -1. At this point, the error is evaluated and 0 is obtained. Since the error is sufficiently small, the coefficient optimization is finished.
[0087]
As described above by way of example, according to this embodiment, the error gradually decreases, and the error is minimized by adding a predetermined random number. Can be obtained.
[0088]
In the simple example shown above, the optimization is completed when the optimization is performed twice, but it is general that a more complex coefficient needs to be determined in the practical coefficient determination. In this case, if optimization is performed while the size of the random number is large, even if the optimization is almost completed, it is difficult to converge to the final coefficient. Therefore, the size of the random number is reduced and the convergence is advanced so that a coefficient with a small error is selected with a higher probability. On the other hand, if the random number is too small, it may be impossible to escape the minimum. In this embodiment, this problem is solved by controlling the probability based on the error history.
[0089]
In the simple example shown above, the predetermined step is s.1, S2Although 1 is used for both, a predetermined step is controlled by a history of errors for the purpose of speeding up the processing and for the purpose of being able to escape from the minimum with a higher probability. Also, s1, S2Using different values for and substantially smaller steps, ie s1, S2, | S1-S2Allows optimization by the greatest common divisor of |.
[0090]
Although the operation has been described with a simple example, the same operation is performed even in a complicated data conversion apparatus according to the present embodiment.
[0091]
In this method, the error of the data conversion apparatus is evaluated by an error including rounding and accuracy in the apparatus. Accordingly, it is possible to calculate a coefficient having a smaller error at a higher speed than in the entire search, including such an error.
[0092]
[Example 2]
Next, a second embodiment in which color conversion is performed using a neural network that takes discrete coefficients as a data conversion apparatus will be described. FIG. 3 shows the configuration of the present embodiment. In this figure, portions corresponding to those in FIG. In FIG. 3, the input buffer 11 holds C (Cyan), M (magenta), Y (yellow), and K (black) area ratios for printing as input data. The color conversion device 21 using a neural network calculates C, M, Y, and K area ratios as CIE*a*b*(D50) Conversion into color coordinates. The coefficients of the neural network are discrete and are optimized by the coefficient update unit 19. The converted color coordinate data is stored in the output buffer 13, and the color difference calculation unit 22 calculates the color difference between the output color coordinate data and the ideal color coordinate data. The color difference square average calculation unit 23 calculates the square average of the color differences, and this is regarded as an error.
[0093]
Next, optimization of the coefficients of the color conversion device 21 will be described in detail. As described above, the color conversion device 21 determines the area ratio of C, M, Y, and K for printing as CIE L for printing results.*a*b*(D50) Conversion into color coordinates. In determining the coefficients of the color conversion device 21, 928 sets of CMYK area ratios based on IT8 / 7.3 extended set are used as inputs, and printing is performed based on each area ratio as an ideal output. Color measurement with D50 light source, CIE L*a*b*Use color coordinates. That is, the input data x and the ideal output data y are expressed as {x1, Y1}, {X2, Y2}, ..., {xi, Yi} ..., {x928, Y928} And each input data xiIs four-dimensional and xi= (Ci, Mi, Yi, Ki) And each ideal output data yiIs three-dimensional and yi= (Li, Ai, Bi). K coefficients (w1, W2, ..., wp, ..., wk) Are initialized to 0 in advance. In this data converter, data xiIs given as g (xi| w1, W2, ..., wp, ..., wk). Ideal output y at this timeiError with ΔE color difference, that is, CIE L*a*b * Euclidean distance ΔE (y in color spacei, G (xi| w1, W2, ..., wp, ..., wk)). In this embodiment, the error of the color conversion device is calculated by calculating the root mean square error of each color, that is,
[0094]
[Expression 4]
Figure 0003817866
And
[0095]
Now, of the k coefficients, the p-th coefficient wpThe error E with respect to the current coefficient value0That is, E0= E (w1, W2, ..., wp, ..., wk) And a predetermined step s from the current coefficient value1Error E for large coefficient values+That is, E+= E (w1, W2, ..., wp+ S1, ..., wk) And a predetermined step s from the current coefficient value2Error E for small coefficient values, ie E-= E (w1, W2, ..., wp-S2, ..., wk) Three types of errors are calculated. In this embodiment, the predetermined step for addition is a different value, but the predetermined step for addition and the predetermined step for subtraction do not necessarily have to be different values.
[0096]
Next, based on these errors, one of the lower errors is selected by an appropriate function that is selected with a higher probability. E0If is selected, wpWill not be updated. E+If is selected, wpIn1Add and update. E-If is selected, wpTo s2Reduce and update.
[0097]
Repeat this operation for each weight wp(P = 1, 2,..., K). When this optimization operation completes one cycle, the error of this color conversion device is obtained and repeated until it reaches a predetermined value or substantially converges or until a predetermined number of times. At that time, when the error becomes the minimum, the coefficient is recorded as “optimum coefficient”, and s is increased by multiplying the predetermined step s by a predetermined value larger than 1. On the other hand, if the error has increased compared to before performing one round of optimization, s1And S2Is multiplied by a predetermined value less than 1, and s1And S2Is not reduced below the minimum step.
[0098]
As described above, when the learning is finished, the finally recorded “optimum coefficient” is output.
[0099]
[Example 3]
Next, a description will be given of a third embodiment using a color conversion device using a table in which coefficients take discrete values and interpolation. FIG. 4 shows the configuration of the third embodiment. In this figure, portions corresponding to those in FIG. In FIG. 4, the input buffer 11 receives CIE L as input data.*a*b*  (D50) Color coordinate data is stored. The color conversion device 31 uses a table in which coefficients take discrete values and interpolation, and CIE L*a*b*  (D50) The color coordinates are input, and the C, M, Y, and K area ratios of a predetermined printing apparatus are calculated. In this embodiment, the value stored in each grid point is a discrete value. Details of the conversion device 31 will be described later. The area ratios of C, M, Y, and K are stored in the output buffer 13, and based on this, the printing device 32 is driven to obtain a print output. After this, print output is measured and CIE L*a*b*(D50) Color coordinate data is obtained. This color coordinate data is stored in the measurement value buffer 33. The ideal output data memory 14 stores the input data itself, the color difference between the input data and the color coordinate data of the measurement value buffer 33 is calculated by the color difference calculation unit 22, and the average color difference is calculated by the average color difference calculation unit 34. It is considered an error.
[0100]
Next, optimization of the coefficient of the conversion device 31 will be described in detail. The conversion device 31 has an L on the input space.*Axis, a*Axis, b*The CMYK area ratios after conversion are recorded in advance in a representative point of each axis, for example, a three-dimensional table consisting of 10 points on each axis, and at the time of color conversion, it corresponds to each vertex of a rectangular parallelepiped including the input color coordinates The conversion value of the lattice point is interpolated according to the position in the rectangular parallelepiped to obtain the conversion result. As the interpolation method, tetrahedral interpolation method, prism interpolation method, cubic interpolation method and the like are known. . This embodiment can be applied to any of these interpolation methods.
[0101]
In general, the conversion value stored in each grid point is a value obtained by rounding the conversion value of each representative point according to the accuracy of the table. In any interpolation method, an interpolation error occurs depending on the correspondence between input and output. .
[0102]
The error of the color conversion device in a predetermined coefficient is defined as an average color difference obtained by the following procedure. Color conversion is performed by a predetermined coefficient at a sufficiently fine predetermined interval, for example, an interval of 1/16 of the interval between the representative values of the grid points in each dimension, and each area ratio of CMYK is calculated. Printing is performed based on the calculation result, the color difference between the colorimetric value and the color coordinate before conversion is calculated, and the average color difference over the entire input range is regarded as an error. At this time, instead of actually performing printing and measuring the color, the predicted value after printing may be estimated using a modeled printer.
[0103]
The present embodiment aims to optimize the value of each grid point so that the average color difference after interpolation is minimized, and performs the following optimization.
[0104]
First, for all grid points, the coefficients of discrete values {C (L, A, B), M (L, A, B), Y (L, L) stored in the table of each grid point (L, A, B) are used. A, B), K (L, A, B)} are initialized with values obtained by rounding the corresponding conversion values according to the precision of the table. Let T and s be appropriate initial values. Each grid point is assigned a serial number in order from the lowest saturation within the color reproduction range. Subsequently, a serial number is assigned to the grid points outside the color reproduction range in ascending order of color difference before and after conversion. Next, the following processing steps are performed.
Process (1): The grid point values of K are optimized by the operations of processes (1.1) to (1.3) in ascending order of serial numbers.
Process (1.1): A predetermined step s is added to the current value of K, and the error of the color conversion device is calculated.
Process (1.2): A predetermined step s and a minimum unit of steps are subtracted from the current value of K, and an error of the color conversion device is calculated.
[0105]
At this time, instead of the entire input range, the average of color differences may be obtained only in the range in which this coefficient has an influence. For example, in the tetrahedral interpolation method, the prism interpolation method, and the cubic interpolation method, an average may be obtained only for a portion included in a tetrahedron, a triangular prism, or a rectangular parallelepiped having the lattice point as a vertex.
Process (1.3): Random numbers based on a uniform distribution in the predetermined section [0, T] are added to the error in process (1.1) and the error in process (1.2), respectively, and the process ( If the sum of the error in 1.1) and the random number is smaller than the sum of the error in the process (1.2) and the random number, a predetermined step s is added to the current K value to update it. Otherwise, the current value of K is updated by subtracting the predetermined step s and the minimum unit of steps.
Process (2): The operation of the process (1) is applied to K of all grid points. When this optimization operation completes one cycle, the error of this color conversion device is obtained and repeated until it reaches a predetermined value or substantially converges or until a predetermined number of times. At that time, if the error becomes the smallest, the coefficient is recorded as “K is the optimum coefficient”, and T for determining the predetermined section is multiplied by a predetermined value larger than 1 to calculate T Increase. On the other hand, if the error has increased compared to before performing one round of optimization, T is decreased by multiplying T by a predetermined value smaller than 1. The same operation is performed for the predetermined step s, but the value is not less than the minimum step.
[0106]
Next, the following processing is executed with “K is an optimum coefficient” as an initial value and T and s as appropriate initial values.
Process (3): The CMY grid point values are optimized by the operations of processes (3.1) to (3.5) in ascending order of serial numbers.
Process (3.1): A predetermined step s is added to the current C value to calculate the error of the color conversion apparatus.
Process (3.2): The error of the color conversion device is calculated by subtracting the predetermined step s and the minimum unit of steps from the current C value.
Process (3.3): Random numbers based on a uniform distribution in a predetermined section [0, T] are added to the error of process (3.1) and the error of process (3.2), respectively, and the process ( If the sum of the error in 3.1) and the random number is smaller than the sum of the error in the process (3.2) and the random number, a predetermined step s is added to the current C value to update it. Otherwise, the current value of C is updated by subtracting the predetermined step s and the minimum unit of steps.
Process (3.4): The operations of processes (3.1) to (3.3) are applied to M instead of C.
Process (3.5): The operations of processes (3.1) to (3.3) are changed to C and applied to Y.
Process (4): The operation of the process (3) is applied to all grid points. When this optimization operation completes one cycle, the error of this color conversion device is obtained and repeated until it reaches a predetermined value or substantially converges or until a predetermined number of times. At that time, if the minimum error occurs, the coefficient is recorded as an “optimum coefficient”, and T is increased by multiplying T, which determines the predetermined section, by a predetermined value greater than 1. Let On the other hand, if the error has increased compared to before performing one round of optimization, T is decreased by multiplying T by a predetermined value smaller than 1. The same operation as T is performed for the predetermined step s, but the value is not less than the minimum step.
[0107]
As described above, when the learning is finished, the finally recorded “optimum coefficient” is output.
[0108]
[Example 4]
Next, a description will be given of a fourth embodiment in which the coefficient is optimized by introducing a continuous function that can be assumed between the discrete coefficient value and the error. FIG. 5 shows a configuration of the fourth embodiment. In this figure, portions corresponding to those in FIG. 3 are denoted by corresponding reference numerals, and detailed description thereof is omitted. In FIG. 5, the quadratic function determining unit 41 is E0, E-, E+A quadratic function is determined on the basis of the error of the differential function.0The derivative at is calculated. The coefficient updating unit 43 determines a coefficient in accordance with the temperature (temperature in annealing) and the differential coefficient. This will be described in detail later.
[0109]
Next, optimization of the coefficients of the color conversion device 21 in this embodiment will be described in detail. The color conversion device 21 may perform the optimization by the present embodiment alone, or may perform the optimization by the present embodiment after performing the number of optimizations according to the second embodiment prior to the present embodiment. Various definitions such as error are the same as those in the second embodiment.
[0110]
Now, of the k coefficients, the p-th coefficient wpThe error E with respect to the current coefficient value0That is, E0= E (w1, W2, ..., wp, ..., wk) And a predetermined step s from the current coefficient value1Error E for large coefficient values+That is, E+= E (w1, W2, ..., wp+ S1, ..., wk) And a predetermined step s from the current coefficient value2Error E for small coefficient values, ie E-= E (w1, W2, ..., wp-S2, ..., wk) Three types of errors are calculated. From this three-point error, a quadratic function is estimated and wpDerivative E 'inpIs calculated.
[0111]
Depending on the temperature t, the derivative E 'pIs a random variable X with a high probability of 1 (otherwise 0)+(E ’pT) and the derivative E 'pIs a random variable X with a high probability of 1 (otherwise 0)-(E ’p; By t), the coefficient wpIs updated with the following values: Where the random variable X+And X-Is uncertainly affected by higher temperatures and deterministically affected by lower temperatures.
[0112]
[Equation 5]
wp ← wp+ S1・ X+(E ’pT) -s2・ X-(E ’pT)
In this embodiment, the predetermined step for addition is a different value, but the predetermined step for addition and the predetermined step for subtraction do not necessarily have to be different values.
[0113]
Repeat this operation for each weight wp(P = 1, 2,..., K). When this optimization operation completes one cycle, the error of this color conversion device is obtained and repeated until it reaches a predetermined value or substantially converges or until a predetermined number of times. At that time, if the minimum error occurs, the coefficient is recorded as “optimum coefficient”, and the predetermined step s described above is performed.1, S2And the temperature t are multiplied by a predetermined value greater than 1 to increase the step and temperature. On the other hand, if the error has increased compared to before performing one round of optimization, s1, S2And the temperature t are multiplied by a predetermined value less than 1 to reduce the step and temperature. However, each step does not have a value less than the minimum step.
[0114]
As described above, when the learning is finished, the finally recorded “optimum coefficient” is output.
[0115]
In this embodiment, three points are taken and the derivative is calculated by a quadratic function. However, if two or more points are taken, the derivative can be determined by an appropriate function.
[0116]
Also, in the above, three points were taken, but p kinds of appropriate functions f1(W), f2(W) ... fpP types of coefficients can be calculated using (w).
[0117]
Here, as an example, when p = 4,
[0118]
[Formula 6]
f1(W) = w + 1
f2(W) = w + 2
fThree(W) = w + 3
fFour(W) = w + 4
It can be. In the case of calculating the derivative, it is possible to estimate the derivative of the current value even if it is not a section including the current coefficient. Therefore, the function value may not be a section including the current coefficient.
[0119]
As another example, when p = 5,
[0120]
[Expression 7]
f1(W) = floor (w × 0.98)
f2(W) = floor (w × 0.99)
fThree(W) = w
fFour(W) = ceil (w / 0.99)
fFive(W) = ceil (w / 0.98)
It is good. Here, floor is rounded down and ceil is rounded up. Here, as an example of the operation of rounding to a discrete value that can be taken by the coefficient, an example is shown using rounding down or rounding up, but the rounding operation can take any method.
[0121]
[Application example]
Next, application examples of the present invention will be described.
[0122]
FIG. 6 shows an electronic apparatus using the data conversion apparatus of the present invention. In this figure, the electronic apparatus 100 has a data conversion apparatus 110. The data converter 110 is the same as that in the above-described embodiment, and takes discrete values as conversion coefficients. The data conversion apparatus 110 is optimized by the coefficient optimization unit 111 in the same manner as in the above-described embodiment.
[0123]
In this case, the coefficient may be optimized in advance by the reference data conversion device and installed in the data conversion device 110 of the electronic device 100. Thereafter, the coefficient optimization unit 111 may further perform final optimization processing.
[0124]
FIG. 7 shows a color image forming apparatus (a color copying machine or a color printing machine) using the data conversion apparatus of the present invention. In this figure, the image forming apparatus 200 includes two color conversion apparatuses 210 including data conversion apparatuses. , 220. The color data input from the input unit 230 is sequentially color-converted by the color conversion units 210 and 220, supplied to the output unit 240, and printed out. In this example, the coefficient conversion of the data conversion apparatus of the present invention can be optimized in both or one of the color conversion apparatuses 210 and 220.
[0125]
FIG. 8 shows a robot apparatus using the data conversion apparatus of the present invention. In this figure, the robot 300 includes a data conversion apparatus 310, and the posture and the like according to the position input from the position input unit 320. It comes to perform control. The error detection unit 330 detects an error, and the coefficient of the data conversion device is optimized accordingly.
[0126]
【The invention's effect】
As described above, according to the present invention, even when data is converted using a coefficient having a discrete value, the coefficient value can be learned easily and stably.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a first exemplary embodiment of the present invention.
FIG. 2 is a diagram specifically explaining details of the above-described embodiment.
FIG. 3 is a diagram showing a configuration of a second exemplary embodiment of the present invention.
FIG. 4 is a diagram showing a configuration of Example 3 of the present invention.
FIG. 5 is a diagram illustrating a configuration of a fourth embodiment of the present invention.
FIG. 6 is a diagram illustrating an application example of the present invention.
FIG. 7 is a diagram illustrating an application example of the present invention.
FIG. 8 is a diagram illustrating an application example of the present invention.
[Explanation of symbols]
11 Input buffer
12 Data converter
13 Output buffer
14 Ideal output memory
15 Error calculator
16 Error history memory
17 Random number distribution controller
18 Step controller
19 Coefficient update unit
100 electronic equipment
200 color image forming apparatus
300 robots

Claims (33)

個の係数(ただし、離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の入力データ群に対する出力データ群を算出する手段と、
上記少なくとも2つの係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを有することを特徴とする係数決定装置。
In a data converter for converting m-dimensional input data into n-dimensional output data according to k coefficients (however, including at least one coefficient taking discrete values) ,
For each of the coefficients taking discrete values, the current coefficient value, the coefficient value larger by the step width s1 of addition than the current coefficient value, and the coefficient value smaller by the step width s2 of subtraction than the current coefficient value. Means for calculating an output data group for an input data group for optimization for at least two coefficient values;
Any one of the at least two coefficient values has a probability of increasing as the error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the optimization input data group decreases. And a coefficient value selecting means for selecting as a new coefficient value.
上記係数値選択手段は、上記少なくとも2つの係数値におけるそれぞれの誤差に、所定の値域の乱数をそれぞれ加え、その和の最小値を与える係数値を選択する手段を有することを特徴とする請求項1記載の係数決定装置。  The coefficient value selection means includes means for adding a random number in a predetermined range to each error in the at least two coefficient values and selecting a coefficient value that gives a minimum value of the sum. 1 is a coefficient determination device. 上記誤差の大きさに対する上記確率の漸減の程度、もしくは、上記ステップ幅s1とs2を、もしくはその双方を、誤差の履歴に応じて制御する手段とを有することを特徴とする請求項2記載の係数決定装置。 3. The device according to claim 2, further comprising means for controlling the degree of gradual decrease of the probability with respect to the magnitude of the error and / or the step widths s1 and s2 in accordance with an error history. Coefficient determination device. 上記誤差の大きさに対する上記確率の漸減の程度を誤差の履歴に応じて制御するために上記乱数の所定の値域の大きさを制御することを特徴とする請求項3記載の係数決定装置。 4. The coefficient determination apparatus according to claim 3, wherein a size of a predetermined range of the random number is controlled in order to control the degree of gradual decrease of the probability with respect to the size of the error according to an error history. 上記離散的な値を取る少なくとも1つの係数は、m次元の入力データに対応するm次元の代表点のテーブルの各代表点ごとに、それぞれn個の出力に相当する離散値を予め記録し、出力に相当する値を補間することによってn次元の出力を得るデータ変換装置の上記代表点の出力に相当する値であって、最適化用の入力データ群について誤差及び理想出力値群を規定することにより係数を更新する手段を有すことを特徴とする請求項1、2、3または4記載の係数決定装置。The at least one coefficient that takes the discrete value records in advance a discrete value corresponding to n outputs for each representative point in the table of m-dimensional representative points corresponding to m-dimensional input data, A value corresponding to the output of the representative point of the data conversion apparatus that obtains an n-dimensional output by interpolating a value corresponding to the output, and defines an error and an ideal output value group for the input data group for optimization. 5. The coefficient determination apparatus according to claim 1, further comprising means for updating the coefficient. 個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換手段と、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の入力データ群に対する出力データ群を算出する手段と、
上記少なくとも2つの係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを有することを特徴とするデータ変換装置。
data conversion means for converting m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient taking discrete values) ;
For each of the coefficients taking discrete values, the current coefficient value, the coefficient value larger by the step width s1 of addition than the current coefficient value, and the coefficient value smaller by the step width s2 of subtraction than the current coefficient value. Means for calculating an output data group for an input data group for optimization for at least two coefficient values;
Any one of the at least two coefficient values has a probability of increasing as the error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the optimization input data group decreases. And a coefficient value selecting means for selecting a new coefficient value.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の第1の色データをn次元の第2の色データに変換する色変換手段と、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の第1の色データ群に対する第2の色データ群を算出する手段と、
上記少なくとも2つの係数値について算出した第2の色データ群と上記最適化用の第1の色データ群に対応する理想の第2の色データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを有することを特徴とする色変換装置。
color conversion means for converting m-dimensional first color data into n-dimensional second color data according to k coefficients (including at least one coefficient taking discrete values) ;
For each of the coefficients taking discrete values, the current coefficient value, the coefficient value larger by the step width s1 of addition than the current coefficient value, and the coefficient value smaller by the step width s2 of subtraction than the current coefficient value. Means for calculating a second color data group for the first color data group for optimization for at least two coefficient values;
With the probability that the smaller the error between the second color data group calculated for the at least two coefficient values and the ideal second color data group corresponding to the first color data group for optimization, the higher the value. A color conversion apparatus comprising: coefficient value selection means for selecting any one of at least two coefficient values as a new coefficient value.
上記誤差が色差であることを特徴とする請求項7記載の色変換装置。  8. The color conversion apparatus according to claim 7, wherein the error is a color difference. m次元の第1の色データを受け取る手段と、
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じて上記m次元の第1の色データをn次元の第2の色データに変換する色変換手段と、
上記色変換手段から出力された上記第2の色データに基づいて所定の出力動作を行う出力手段と、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の第1の色データ群に対する第2の色データ群を算出する手段と、
上記少なくとも2つの係数値について算出した第2の色データ群と上記最適化用の第1の色データ群に対応する理想の第2の色データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを有することを特徴とするカラー画像形成装置。
means for receiving m-dimensional first color data;
color conversion means for converting the m-dimensional first color data into n-dimensional second color data according to k coefficients (including at least one coefficient taking discrete values) ;
Output means for performing a predetermined output operation based on the second color data output from the color conversion means;
For each of the coefficients taking discrete values, the current coefficient value, the coefficient value larger by the step width s1 of addition than the current coefficient value, and the coefficient value smaller by the step width s2 of subtraction than the current coefficient value. Means for calculating a second color data group for the first color data group for optimization for at least two coefficient values;
With the probability that the smaller the error between the second color data group calculated for the at least two coefficient values and the ideal second color data group corresponding to the first color data group for optimization, the higher the value. A color image forming apparatus comprising: coefficient value selection means for selecting any one of at least two coefficient values as a new coefficient value.
上記出力手段から出力された上記第2の色データを第3の色データに変換する他の色変換手段をさらに有する請求項9記載のカラー画像形成装置。The color image forming apparatus according to claim 9 , further comprising another color conversion unit that converts the second color data output from the output unit into third color data . m次元の入力データを受け取る手段と、
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じて上記m次元の入力データをn次元の出力データに変換するデータ変換手段と、
上記データ変換手段から出力されたn次元の出力データに基づいて所定の出力動作を行う出力手段と、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の入力データ群に対する出力データ群を算出する手段と、
上記少なくとも2つの係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを有することを特徴とする電子機器。
means for receiving m-dimensional input data;
data conversion means for converting the m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient taking discrete values) ;
Output means for performing a predetermined output operation based on the n-dimensional output data output from the data conversion means;
For each of the coefficients taking discrete values, the current coefficient value, the coefficient value larger by the step width s1 of addition than the current coefficient value, and the coefficient value smaller by the step width s2 of subtraction than the current coefficient value. Means for calculating an output data group for an input data group for optimization for at least two coefficient values;
Any one of the at least two coefficient values has a probability of increasing as the error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the optimization input data group decreases. And a coefficient value selection means for selecting a new coefficient value.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において、
上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について最適化用の入力データ群から出力データ群を算出する手段と、
上記p種類の係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類(pは2以上の整数)の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなる係数値更新手段とを有することを特徴とする係数決定装置。
In a data conversion device that converts m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient that takes discrete values) ,
Means for calculating an output data group from an input data group for optimization for p kinds of coefficient values in an appropriate section including a current coefficient value for each of the coefficients taking discrete values;
An error between the output data group calculated for the p types of coefficient values and an ideal output data group corresponding to the optimization input data group is calculated, and a calculation for obtaining p types (p is an integer of 2 or more) is obtained. Means,
A differential coefficient calculating means for calculating a differential coefficient in the current coefficient value assuming a predetermined function from the coefficient value to the error that can be differentiated from the p kinds of errors in the current coefficient value;
Based on the above derivative, stochastically updating the coefficients, coefficient determination apparatus characterized by having a larger coefficient value updating means in accordance with the progress of the optimization process are further the probability of a coefficient update.
現在の係数値、現在の係数値に加算のステップs1を加えた係数値、及び、現在の係数値から減算のステップs2を減じた係数値のうち少なくとも1つが上記p種類の係数に含まれることを特徴とする請求項12の係数決定装置。The p-type coefficient includes at least one of a current coefficient value, a coefficient value obtained by adding an addition step width s1 to the current coefficient value, and a coefficient value obtained by subtracting a subtraction step width s2 from the current coefficient value. 13. The coefficient determination apparatus according to claim 12, wherein 上記微係数の大きさに対する上記確率の漸減の程度および上記ステップ幅s1とs2の一方または双方を、誤差の履歴に応じて制御する手段とを有することを特徴とする請求項12または13記載の係数決定装置。14. The method according to claim 12, further comprising means for controlling the degree of gradual decrease of the probability with respect to the magnitude of the derivative and one or both of the step widths s1 and s2 in accordance with an error history. Coefficient determination device. 上記離散的な値を取る少なくとも1つの係数は、m次元の入力データに対応するm次元の代表点のテーブルの各代表点ごとに、それぞれn個の出力に相当する離散値を予め記録し、出力に相当する値を補間することによってn次元の出力を得るデータ変換装置の上記代表点の出力に相当する値であって、最適化用の入力データ群について誤差及び理想出力値群を規定することにより係数を更新する手段を有すことを特徴とする請求項12、13また14記載の係数決定装置。The at least one coefficient that takes the discrete value records in advance a discrete value corresponding to n outputs for each representative point in the table of m-dimensional representative points corresponding to m-dimensional input data, A value corresponding to the output of the representative point of the data conversion apparatus that obtains an n-dimensional output by interpolating a value corresponding to the output, and defines an error and an ideal output value group for the input data group for optimization. 15. A coefficient determination apparatus according to claim 12, 13 or 14, further comprising means for updating the coefficient. 個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換手段と、
上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について最適化用の入力データ群から出力データ群を算出する手段と、
上記p種類(pは2以上の整数)の係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な適宜の計数値から誤差への関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなる係数値更新手段とを有することを特徴とするデータ変換装置。
data conversion means for converting m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient taking discrete values) ;
Means for calculating an output data group from an input data group for optimization for p kinds of coefficient values in an appropriate section including a current coefficient value for each of the coefficients taking discrete values;
Calculation for calculating the error between the output data group calculated for the coefficient values of p types (p is an integer of 2 or more) and the ideal output data group corresponding to the input data group for optimization to obtain p types of errors Means,
Assuming a function from an appropriate count value that can be differentiated in the current coefficient value from the p types of errors, a differential coefficient calculating means for calculating a differential coefficient in the current coefficient value;
Based on the above derivative, stochastically updating the coefficients, the data conversion apparatus characterized by having a coefficient updating means probability of further coefficient update increases with progress of the processing of the optimization.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の第1の色データをn次元の第2の色データに変換する色変換手段と、
上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について最適化用の第1の色データ群から第2の色データ群を算出する手段と、
上記p種類の係数値について算出した第2の色データ群と上記最適化用の第1の色データ群に対応する理想の第2の色データ群との誤差を算出し、p種類(pは2以上の整数)の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなる係数値更新手段とを有することを特徴とする色変換装置。
color conversion means for converting m-dimensional first color data into n-dimensional second color data according to k coefficients (including at least one coefficient taking discrete values) ;
Means for calculating a second color data group from the first color data group for optimization with respect to each of the coefficients taking the discrete values for p kinds of coefficient values in an appropriate section including the current coefficient value. When,
An error between the second color data group calculated for the p types of coefficient values and the ideal second color data group corresponding to the first color data group for optimization is calculated, and p types (p is Calculating means for obtaining an error of an integer of 2 or more;
A differential coefficient calculating means for calculating a differential coefficient in the current coefficient value assuming a predetermined function from the coefficient value to the error that can be differentiated from the p kinds of errors in the current coefficient value;
Based on the above derivative, stochastically updating the coefficients, the color conversion apparatus characterized by having a larger coefficient value updating means in accordance with the progress of the optimization process are further the probability of a coefficient update.
上記誤差が色差であることを特徴とする請求項17記載の色変換装置。  The color conversion apparatus according to claim 17, wherein the error is a color difference. m次元の第1の色データを受け取る手段と、
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じて上記m次元の第1の色データをn次元の第2の色データに変換する色変換手段と、
上記色変換手段から出力された上記第2の色データに基づいて所定の出力動作を行う出力手段と、
上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類(pは2以上の整数)の係数値について最適化用の第1の色データ群から第2の色データ群を算出する手段と、
上記p種類の係数値について算出した第2の色データ群と上記最適化用の第1の色データ群に対応する理想の第2の色データ群との誤差を算出し、p種類の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなる係数値更新手段とを有することを特徴とするカラー画像形成装置。
means for receiving m-dimensional first color data;
color conversion means for converting the m-dimensional first color data into n-dimensional second color data according to k coefficients (including at least one coefficient taking discrete values) ;
Output means for performing a predetermined output operation based on the second color data output from the color conversion means;
For each of the coefficients having the discrete values, the p-type (p is an integer of 2 or more) coefficient values in an appropriate section including the current coefficient value are second to the second color data for optimization . Means for calculating the color data group of
An error between the second color data group calculated for the p kinds of coefficient values and the ideal second color data group corresponding to the first color data group for optimization is calculated, and the p kinds of errors are calculated. Calculating means to obtain;
A differential coefficient calculating means for calculating a differential coefficient in the current coefficient value assuming a predetermined function from the coefficient value to the error that can be differentiated from the p kinds of errors in the current coefficient value;
Based on the above derivative, stochastically updating the coefficients, further color image forming apparatus characterized by having a larger coefficient value updating means in accordance with the progress of the probability of the coefficient updating of the optimization process.
上記出力手段は上記第2の色データを後続の色変換手段を介して受け取る請求項19記載のカラー画像形成装置。  20. The color image forming apparatus according to claim 19, wherein the output unit receives the second color data via a subsequent color conversion unit. m次元の入力データを受け取る手段と、
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じて上記m次元の入力データをn次元の出力データに変換するデータ変換手段と、
上記データ変換手段から出力されたn次元の出力データに基づいて所定の出力動作を行う出力手段と、
上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類(pは2以上の整数)の係数値について最適化用の入力データ群から出力データ群を算出する手段と、
上記p種類の係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなる係数値更新手段とを有することを特徴とする電子機器。
means for receiving m-dimensional input data;
data conversion means for converting the m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient taking discrete values) ;
Output means for performing a predetermined output operation based on the n-dimensional output data output from the data conversion means;
For each coefficient having a discrete value, an output data group is calculated from the input data group for optimization with respect to p kinds (p is an integer of 2 or more) of coefficient values in an appropriate interval including the current coefficient value. Means to
Calculating means for calculating an error between the output data group calculated for the p kinds of coefficient values and an ideal output data group corresponding to the optimization input data group, and obtaining p kinds of errors;
A differential coefficient calculating means for calculating a differential coefficient in the current coefficient value assuming a predetermined function from the coefficient value to the error that can be differentiated from the p kinds of errors in the current coefficient value;
Electronic device based on the differential coefficients, stochastically updating the coefficient, the probability of further coefficients update is characterized by having a larger coefficient value updating means in accordance with the progress of the optimization process.
個の係数(離散的な結合係数、あるいは、離散的な閾値、あるいはその双方を少なくとも1つ含む)をもつニューラルネットワークにおいて、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の入力データ群に対する出力データ群を算出する手段と、
上記少なくとも2つの係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを有することを特徴とするニューラルネットワークの係数決定装置。
In a neural network having k coefficients (including at least one discrete coupling coefficient and / or discrete threshold) ,
For each of the coefficients taking discrete values, the current coefficient value, the coefficient value larger by the step width s1 of addition than the current coefficient value, and the coefficient value smaller by the step width s2 of subtraction than the current coefficient value. Means for calculating an output data group for an input data group for optimization for at least two coefficient values;
Any one of the at least two coefficient values has a probability of increasing as the error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the optimization input data group decreases. And a coefficient value selecting means for selecting a coefficient value as a new coefficient value.
個の係数(離散的な結合係数、あるいは、離散的な閾値、あるいはその双方を少なくとも1つ含む)をもつニューラルネットワークと、上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の入力データ群に対する出力データ群を算出する手段と、
上記少なくとも2つの係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段とを有することを特徴とするデータ変換装置。
a neural network having k coefficients (including at least one of discrete coupling coefficients and / or discrete thresholds) and a current coefficient value for each of the coefficients taking the discrete values, Output data for an input data group for optimization with respect to at least two coefficient values among a coefficient value larger than the current coefficient value by an addition step width s1 and a coefficient value smaller than the current coefficient value by a subtraction step width s2. Means for calculating the group;
Any one of the at least two coefficient values has a probability of increasing as the error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the optimization input data group decreases. And a coefficient value selecting means for selecting a new coefficient value.
個の係数(離散的な結合係数、あるいは、離散的な閾値、あるいはその双方を少なくとも1つ含む)をもつニューラルネットワークにおいて、
上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について最適化用の入力データ群から出力データ群を算出する手段と、
上記p種類の係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類(pは2以上の整数)の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなる係数値更新手段とを有することを特徴とするニューラルネットワークの係数決定装置。
In a neural network having k coefficients (including at least one discrete coupling coefficient and / or discrete threshold) ,
Means for calculating an output data group from an input data group for optimization for p kinds of coefficient values in an appropriate section including a current coefficient value for each of the coefficients taking discrete values;
An error between the output data group calculated for the p types of coefficient values and an ideal output data group corresponding to the optimization input data group is calculated, and a calculation for obtaining p types (p is an integer of 2 or more) is obtained. Means,
A differential coefficient calculating means for calculating a differential coefficient in the current coefficient value assuming a predetermined function from the coefficient value to the error that can be differentiated from the p kinds of errors in the current coefficient value;
Based on the above derivative, stochastically updating the coefficients, further coefficient determiner neural network and having a larger coefficient value updating means in accordance with the progress of processing of the probability optimization coefficient update.
個の係数(離散的な結合係数、あるいは、離散的な閾値、あるいはその双方を少なくとも1つ含む)をもつニューラルネットワークと、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類(pは2以上の整数)の係数値について最適化用の入力データ群から出力データ群を算出する手段と、
上記p種類の係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなる係数値更新手段とを有することを特徴とするニューラルネットワークの係数決定装置およびニューラルネットワークによるデータ変換装置。
For each of the neural network having k coefficients (including at least one of discrete coupling coefficients and / or discrete thresholds) and the coefficient taking the discrete value, the current coefficient value is Means for calculating an output data group from an input data group for optimization with respect to p kinds (p is an integer of 2 or more) of coefficient values in an appropriate interval including:
Calculating means for calculating an error between the output data group calculated for the p kinds of coefficient values and an ideal output data group corresponding to the optimization input data group, and obtaining p kinds of errors;
A differential coefficient calculating means for calculating a differential coefficient in the current coefficient value assuming a predetermined function from the coefficient value to the error that can be differentiated from the p kinds of errors in the current coefficient value;
Based on the above derivative, stochastically updating the coefficients, coefficient determination device and a neural network characterized by having a larger coefficient value updating means in accordance with further progress of the process of the probability optimization coefficient update Data conversion device using neural network.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の入力データ群に対する出力データ群を算出する手段と、
上記少なくとも2つの係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択する係数値選択手段と、
上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類(pは2以上の整数)の係数値について出力データ群を算出する手段と、
上記p種類の係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなる係数値更新手段とを有し、
上記係数値選択手段による係数値の選択を1回以上実行した後、上記係数値更新手段による係数値の更新を1回以上実行する係数決定装置。
In a data conversion device that converts m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient that takes discrete values) ,
For each of the coefficients taking the discrete value, a current coefficient value, a coefficient value larger by the addition step width s1 than the current coefficient value, and a coefficient value smaller by the subtraction step width s2 than the current coefficient value. Means for calculating an output data group for an input data group for optimization with respect to at least two coefficient values,
Any one of the at least two coefficient values has a probability of increasing as the error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the optimization input data group decreases. Coefficient value selection means for selecting as a new coefficient value;
Means for calculating an output data group for p kinds (p is an integer of 2 or more) of coefficient values in an appropriate section including the current coefficient value for each of the coefficients having discrete values;
Calculating means for calculating an error between the output data group calculated for the p kinds of coefficient values and an ideal output data group corresponding to the optimization input data group, and obtaining p kinds of errors;
A differential coefficient calculating means for calculating a differential coefficient in the current coefficient value assuming a predetermined function from the coefficient value to the error that can be differentiated from the p kinds of errors in the current coefficient value;
Based on the above derivative, stochastically updating the coefficients, and a larger coefficient value updating means in accordance with the progress of the optimization process is further probability coefficient update,
A coefficient determination device that executes coefficient value update by the coefficient value update means once or more after the coefficient value selection means executes the coefficient value selection one or more times.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を決定する方法において、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の入力データ群に対する出力データ群を算出するステップと、
上記少なくとも2つの係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択するステップとを有することを特徴とする係数決定方法。
In the method of determining the coefficient value in a data conversion device that converts m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient that takes discrete values) ,
For each of the coefficients taking the discrete value, a current coefficient value, a coefficient value larger by the addition step width s1 than the current coefficient value, and a coefficient value smaller by the subtraction step width s2 than the current coefficient value. Calculating an output data group for an input data group for optimization for at least two coefficient values,
Any one of the at least two coefficient values has a probability of increasing as the error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the optimization input data group decreases. Selecting a new coefficient value as a coefficient value.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を決定する方法において、
上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類(pは2以上の整数)の係数値について最適化用に入力データ群から出力データ群を算出するステップと、
上記p種類の係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出するステップと、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなるようにするステップとを有することを特徴とする係数決定方法。
In the method of determining the coefficient value in a data conversion device that converts m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient that takes discrete values) ,
For each of the coefficients having discrete values, an output data group is calculated from the input data group for optimization with respect to p kinds (p is an integer of 2 or more) of coefficient values in an appropriate interval including the current coefficient value. And steps to
Calculating means for calculating an error between the output data group calculated for the p kinds of coefficient values and an ideal output data group corresponding to the optimization input data group, and obtaining p kinds of errors;
Assuming a predetermined function from the coefficient value to the error that is differentiable from the p kinds of errors in the current coefficient value, and calculating a differential coefficient in the current coefficient value;
Based on the above derivative, stochastically updating the coefficients, coefficient determination method characterized by a step of further probability coefficient updating to be larger in accordance with the progress of the optimization process.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を決定する方法において、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の入力データ群に対する出力データ群を算出するステップと、
上記少なくとも2つの係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択するステップと、
上記新たな係数値が選択された後、上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類の係数値について出力データ群を算出するステップと、
上記p種類の係数値について算出した出力データ群と上記所定の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出するステップと、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなるようにするステップとを有し、
上記係数値の選択を1回以上実行した後、上記係数値の更新を1回以上実行するすることを特徴とする係数決定方法。
In the method of determining the coefficient value in a data conversion device that converts m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient that takes discrete values) ,
For each of the coefficients taking the discrete value, a current coefficient value, a coefficient value larger by the addition step width s1 than the current coefficient value, and a coefficient value smaller by the subtraction step width s2 than the current coefficient value. Calculating an output data group for an input data group for optimization for at least two coefficient values,
Any one of the at least two coefficient values has a probability of increasing as the error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the optimization input data group decreases. Selecting as a new coefficient value;
Calculating an output data group for p kinds of coefficient values in an appropriate section including a current coefficient value for each of the coefficients taking the discrete values after the new coefficient value is selected;
Calculating means for calculating an error between the output data group calculated for the p kinds of coefficient values and an ideal output data group corresponding to the predetermined input data group, and obtaining p kinds of errors;
Assuming a predetermined function from the coefficient value to the error that is differentiable from the p kinds of errors in the current coefficient value, and calculating a differential coefficient in the current coefficient value;
Based on the above derivative, stochastically updating the coefficients, and a step to be larger in accordance with the progress of the optimization process is further probability coefficient update,
A coefficient determination method, wherein the coefficient value is updated once or more after the coefficient value is selected one or more times.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を設定する方法において、
上記データ変換装置本体と同等な機能を有する標準データ変換装置において、
上記離散的な値を取る係数の各々について、現在の係数値、上記現在の係数値より加算のステップs1だけ大きな係数値、および上記現在の係数値より減算のステップs2だけ小さい係数値のうち少なくとも2つの係数値について最適化用の入力データ群に対する出力データ群を算出するステップと、
上記少なくとも2つの係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差が小さいほど高くなる確率で、上記少なくとも2つの係数値のいずれか1つを新たな係数値として選択するステップと、
選択した係数を上記データ変換装置本体の係数として設定するステップとを有することを特徴とする係数設定方法。
In a method of setting the coefficient value in a data conversion apparatus that converts m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient taking discrete values) ,
In the standard data converter having the same function as the data converter main body,
For each of the coefficients taking the discrete value, a current coefficient value, a coefficient value larger by the addition step width s1 than the current coefficient value, and a coefficient value smaller by the subtraction step width s2 than the current coefficient value. Calculating an output data group for an input data group for optimization for at least two coefficient values,
Any one of the at least two coefficient values has a probability of increasing as the error between the output data group calculated for the at least two coefficient values and the ideal output data group corresponding to the optimization input data group decreases. Selecting as a new coefficient value;
And a step of setting the selected coefficient as a coefficient of the data converter main body.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において上記係数値を設定する方法において、
上記データ変換装置本体と同等のデータ変換機能を有する基準データ変換装置において、
上記離散的な値を取る係数の各々について、現在の係数値を含む適宜の区間中のp種類(pは2以上の整数)の係数値について最適化用の入力データ群から出力データ群を算出するステップと、
上記p種類の係数値について算出した出力データ群と上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る算出手段と、
上記p種類の誤差から、上記現在の係数値において微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出するステップと、
上記微係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなるようにするステップと、
更新した係数を上記データ変換装置本体の係数として設定するステップとを有することを特徴とする係数設定方法。
In a method of setting the coefficient value in a data conversion apparatus that converts m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient taking discrete values) ,
In a reference data converter having a data conversion function equivalent to that of the data converter main body,
For each coefficient having a discrete value, an output data group is calculated from the input data group for optimization with respect to p kinds (p is an integer of 2 or more) of coefficient values in an appropriate interval including the current coefficient value. And steps to
Calculating means for calculating an error between the output data group calculated for the p kinds of coefficient values and an ideal output data group corresponding to the optimization input data group, and obtaining p kinds of errors;
Assuming a predetermined function from the coefficient value to the error that is differentiable from the p kinds of errors in the current coefficient value, and calculating a differential coefficient in the current coefficient value;
A step based on the differential coefficients, stochastically updating the coefficients, further probability coefficient update is set to be larger as the progress of the optimization process,
And a step of setting the updated coefficient as a coefficient of the data converter main body.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において、
上記離散的な値を取る係数のうち、少なくとも1つ以上について、現在の係数値にp種類の所定の関数を施すことによりp種類(pは2以上の整数)の係数値を算出する係数算出手段と、
上記係数算出手段により与えられるp種類の係数値について最適化用の入力データ群から出力データ群を算出する出力データ算出手段と、
上記出力データ群と、上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る誤差算出手段と、
上記p種類の誤差から、上記現在の係数値において、
微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段とを有することを特徴とする係数決定装置。
In a data conversion device that converts m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient that takes discrete values) ,
Coefficient calculation for calculating p-type coefficient values (p is an integer of 2 or more) by applying p-type predetermined functions to the current coefficient value for at least one of the coefficients having discrete values. Means,
Output data calculating means for calculating an output data group from an input data group for optimization with respect to p kinds of coefficient values given by the coefficient calculating means;
An error calculating means for calculating an error between the output data group and an ideal output data group corresponding to the optimization input data group to obtain p types of errors;
From the p types of errors, in the current coefficient value,
A coefficient determination apparatus comprising differential coefficient calculation means for calculating a differential coefficient at a current coefficient value assuming a differentiable predetermined function from a coefficient value to an error.
個の係数(離散的な値を取る少なくとも1つの係数を含む)に応じてm次元の入力データをn次元の出力データに変換するデータ変換装置において、
上記離散的な値を取る係数のうち、少なくとも1つ以上について、現在の係数値にp種類の所定の関数を施すことによりp種類の係数値を算出する係数算出手段と、
上記係数算出手段により与えられるp種類(pは2以上の整数)の係数値について最適化用の入力データ群から出力データ群を算出する出力データ算出手段と、
上記出力データ群と、上記最適化用の入力データ群に対応する理想出力データ群との誤差を算出し、p種類の誤差を得る誤差算出手段と、
上記p種類の誤差から、上記現在の係数値において、
微分可能な、係数値から誤差への所定の関数を想定し、現在の係数値における微係数を算出する微係数算出手段と、
上記係数に基づいて、確率的に係数を更新し、さらに係数更新の確率が最適化の処理の進行にしたがって大きくなる係数値更新手段とを有することを特徴とする係数決定装置。
In a data conversion device that converts m-dimensional input data into n-dimensional output data according to k coefficients (including at least one coefficient that takes discrete values) ,
Coefficient calculating means for calculating p kinds of coefficient values by applying p kinds of predetermined functions to the current coefficient values for at least one of the coefficients having discrete values,
Output data calculating means for calculating an output data group from an input data group for optimization with respect to p kinds (p is an integer of 2 or more) of coefficient values given by the coefficient calculating means;
An error calculating means for calculating an error between the output data group and an ideal output data group corresponding to the optimization input data group to obtain p types of errors;
From the p types of errors, in the current coefficient value,
Assuming a differentiable predetermined function from the coefficient value to the error, a derivative calculating means for calculating a derivative at the current coefficient value;
Based on the above factors, stochastically updating the coefficients, coefficient determination apparatus characterized by having a larger coefficient value updating means in accordance with the progress of the optimization process are further the probability of a coefficient update.
JP30408097A 1996-11-07 1997-11-06 Data conversion device and coefficient determination device thereof Expired - Fee Related JP3817866B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30408097A JP3817866B2 (en) 1996-11-07 1997-11-06 Data conversion device and coefficient determination device thereof

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-295278 1996-11-07
JP29527896 1996-11-07
JP30408097A JP3817866B2 (en) 1996-11-07 1997-11-06 Data conversion device and coefficient determination device thereof

Publications (2)

Publication Number Publication Date
JPH10191091A JPH10191091A (en) 1998-07-21
JP3817866B2 true JP3817866B2 (en) 2006-09-06

Family

ID=26560192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30408097A Expired - Fee Related JP3817866B2 (en) 1996-11-07 1997-11-06 Data conversion device and coefficient determination device thereof

Country Status (1)

Country Link
JP (1) JP3817866B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017218851A1 (en) * 2017-10-23 2019-04-25 Robert Bosch Gmbh Method, device and computer program for creating a deep neural network

Also Published As

Publication number Publication date
JPH10191091A (en) 1998-07-21

Similar Documents

Publication Publication Date Title
Dhingra et al. The proximal augmented Lagrangian method for nonsmooth composite optimization
JP4595734B2 (en) Profile creation method, profile creation device, profile creation program, print control method, print control device, and print control program
CN112947084B (en) Model unknown multi-agent consistency control method based on reinforcement learning
Fukumizu Statistical active learning in multilayer perceptrons
CN111203890B (en) Position error compensation method of robot
JP2001236337A (en) Predicting device using neural network
CN111182564B (en) Wireless link quality prediction method based on LSTM neural network
EP3779801A1 (en) Method for optimizing neural network parameter appropriate for hardware implementation, neural network operation method, and apparatus therefor
Ma et al. Conservative and adaptive penalty for model-based safe reinforcement learning
CN111142386A (en) Uncertain multi-agent system consistency control method based on non-uniform quantization
CN108898257A (en) A kind of gray prediction method based on particle group optimizing
JP2002010096A (en) Color processing method, storage medium, color processor and image forming equipment
TWI452529B (en) Combined with the system equivalent model of the system and its computer program products
JP3817866B2 (en) Data conversion device and coefficient determination device thereof
Hassan-Moghaddam et al. On the exponential convergence rate of proximal gradient flow algorithms
JP3868358B2 (en) Method and apparatus for controlling physical system and computer program for controlling physical system
CN112752290B (en) Method and equipment for predicting data traffic of wireless base station
US6304863B1 (en) Data converting apparatus and coefficient determining apparatus for use therewith
CN115529350A (en) Parameter optimization method and device, electronic equipment and readable storage medium
Lughofer et al. Online adaptation of Takagi-Sugeno fuzzy inference systems
Flentge Locally weighted interpolating growing neural gas
JP2000259598A (en) Optimization learning method for neural network
CN113252036B (en) Variation self-adaptive collaborative navigation method based on belief propagation
JP3597341B2 (en) Globally accelerated learning method for neural network model and its device
JPH08221378A (en) Learning machine

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060220

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: 20060523

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060605

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100623

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110623

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110623

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees