(57)【要約】  データ処理システム１００は、入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するニューラルネットワーク処理部１３０と、ニューラルネットワーク処理部１３０が学習データに対してニューラルネットワークにしたがった処理を実行することにより出力される出力データと、その学習データに対する理想的な出力データとの比較に基づいて、ニューラルネットワークの最適化対象パラメータを最適化することにより、ニューラルネットワークを学習させる学習部１４０と、を備える。ニューラルネットワーク処理部１３０は、学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行する。
2020044567.tif 000002
【特許請求の範囲】
【請求項１】
入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するニューラルネットワーク処理部と、
前記ニューラルネットワーク処理部が学習データに対して前記処理を実行することにより出力される出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、前記ニューラルネットワークの最適化対象パラメータを最適化することにより、前記ニューラルネットワークを学習させる学習部と、を備え、
前記ニューラルネットワーク処理部は、前記学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行することを特徴とするデータ処理システム。
【請求項２】
入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するニューラルネットワーク処理部を備え、
前記ニューラルネットワークは、学習データに対して前記処理を実行することにより出力される出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、最適化対象パラメータが最適化されており、
前記ニューラルネットワーク処理部は、前記学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行することを特徴とするデータ処理システム。
【請求項３】
前記係数の絶対値は、０以上１以下であることを特徴とする請求項１または２に記載のデータ処理システム。
【請求項４】
前記ニューラルネットワーク処理部は、１と前記係数との差分値が所定の値以下となった場合、係数処理として入力をそのまま出力する処理を実行することを特徴とする請求項１から３のいずれかに記載のデータ処理システム。
【請求項５】
前記ニューラルネットワーク処理部は、適用処理時は、係数処理として入力をそのまま出力する処理を実行することを特徴とする請求項１から４のいずれかに記載のデータ処理システム。
【請求項６】
前記第Ｍ層の中間層は、１以上の中間層要素を含み、
前記ニューラルネットワーク処理部は、（i）前記第Ｍ層の中間層の処理において、その中間層要素への入力データを表す中間データおよび当該中間層要素からの出力データを表す中間データの少なくとも一方に対して係数処理を実行し、かつ、（ii）当該第Ｍ層の中間層に入力されるべき中間データと、当該中間データを当該第Ｍ層の中間層に入力することにより出力される中間データとを統合する統合処理を実行することを特徴とする請求項１から５のいずれかに記載のデータ処理システム。
【請求項７】
前記ニューラルネットワーク処理部は、前記第Ｍ層の中間層の最初の中間層要素への入力データを表す中間データに対して係数処理を実行することを特徴とする請求項６に記載のデータ処理システム。
【請求項８】
前記ニューラルネットワーク処理部は、前記第Ｍ層の中間層の最後の中間層要素からの出力データを表す中間データに対して係数処理を実行することを特徴とする請求項６に記載のデータ処理システム。
【請求項９】
前記ニューラルネットワーク処理部は、前記統合処理として、それぞれの中間データを足し合わせることを特徴とする請求項６から８のいずれかに記載のデータ処理システム。
【請求項１０】
前記ニューラルネットワーク処理部は、前記統合処理として、それぞれの中間データをチャンネル連結することを特徴とする請求項６から８のいずれかに記載のデータ処理システム。
【請求項１１】
学習の進行度は、学習の繰り返し回数であることを特徴とする請求項１から１０のいずれかに記載のデータ処理システム。
【請求項１２】
学習の進行度は、学習データに対して前記処理を実行することにより出力される出力データとその学習データに対する理想的な出力データとの差に対して単調減少する関数に基づき決定されることを特徴とする請求項１から１０のいずれかに記載のデータ処理システム。
【請求項１３】
学習データに対して、入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行することにより、学習データに対応する出力データを出力するステップと、
学習データに対応する出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、前記ニューラルネットワークの最適化対象パラメータを最適化するステップと、を備え、
前記最適化対象パラメータを最適化するステップでは、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行することを特徴とするデータ処理方法。
【請求項１４】
入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するステップを備え、
前記ニューラルネットワークは、学習データに対して前記処理を実行することにより出力される出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、最適化対象パラメータが最適化されており、
前記学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理が実行されていることを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理技術に関し、特に、学習された深層ニューラルネットワークを用いたデータ処理技術に関する。
【背景技術】
【０００２】
ニューラルネットワークは、１以上の非線形ユニットを含む数学的モデルであり、入力に対応する出力を予測する機械学習モデルである。多くのニューラルネットワークは、入力層と出力層の他に、１以上の中間層（隠れ層）をもつ。各中間層の出力は次の層（中間層または出力層）の入力となる。ニューラルネットワークの各層は、入力および自身のパラメータに応じて出力を生成する。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Alex Krizhevsky、Ilya Sutskever、Geoffrey E. Hinton、「ImageNet Classification with Deep Convolutional Neural Networks」、NIPS2012_4824
【非特許文献２】Sergey Ioffe、Christian Szegedy、「Batch normalization: Accelerating deep network training by reducing internal covariate shift」、ICML 2015 448?456
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一般に、ネットワーク全体の入出力の関係が大きく変化すると、学習が困難になる。非特許文献２では、入力ミニバッチの統計量を利用して次の層への入力を正規化して入出力の関係が大きく変化するのを抑えることで、学習の困難さを解決している。しかしながら、過剰な正規化はネットワークの表現力の低下にもつながる。一方、ネットワーク全体の入出力の関係が大きく変化する問題は、中間層のパラメータの更新量が大きい学習初期に顕著となる。【０００５】
本発明はこうした状況に鑑みなされたものであり、その目的は、ニューラルネットワークの学習を容易にする技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様のデータ処理システムは、入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するニューラルネットワーク処理部と、ニューラルネットワーク処理部が学習データに対して処理を実行することにより出力される出力データと、学習データに対する理想的な出力データとの比較に基づいて、ニューラルネットワークの最適化対象パラメータを最適化することにより、ニューラルネットワークを学習させる学習部と、を備える。ニューラルネットワーク処理部は、学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行する。【０００７】
本発明の別の態様もまた、データ処理システムである。このデータ処理システムは、入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するニューラルネットワーク処理部を備える。ニューラルネットワーク処理部は、学習データに対して処理を実行することにより出力される出力データと、学習データに対する理想的な出力データとの比較に基づいて、ニューラルネットワークの最適化対象パラメータを最適化することにより学習されており、ニューラルネットワーク処理部は、学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行する。【０００８】
本発明のさらに別の態様は、データ処理方法である。この方法は、学習データに対して、入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行することにより、学習データに対応する出力データを出力するステップと、学習データに対応する出力データと、学習データに対する理想的な出力データとの比較に基づいて、ニューラルネットワークの最適化対象パラメータを最適化するステップと、を備える。最適化対象パラメータを最適化するステップでは、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行する。【０００９】
本発明のさらに別の態様もまた、データ処理方法である。この方法は、入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するステップを備える。ニューラルネットワークは、学習データに対して処理を実行することにより出力される出力データと、学習データに対する理想的な出力データとの比較に基づいて、最適化対象パラメータが最適化されており、学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理が実行されている。【００１０】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１１】
本発明によれば、ニューラルネットワークの学習を容易にする技術を提供できる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態に係るデータ処理システムの機能および構成を示すブロック図である。
【図２】ニューラルネットワークの構成の一例を模式的に示す図である。
【図３】データ処理システムによる学習処理のフローチャートを示す図である。
【図４】データ処理システムによる適用処理のフローチャートを示す図である。
【図５】ニューラルネットワークの構成の他の一例を模式的に示す図である。
【００１３】
以下、本発明を好適な実施の形態をもとに図面を参照しながら説明する。【００１４】
以下ではデータ処理装置を画像処理に適用する場合を例に説明するが、当業者によれば、データ処理装置を音声認識処理、自然言語処理、その他の処理にも適用可能であることが理解されよう。【００１５】
図１は、実施の形態に係るデータ処理システム１００の機能および構成を示すブロック図である。ここに示す各ブロックは、ハードウェア的には、コンピュータのＣＰＵ（central processing unit）をはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。【００１６】
データ処理システム１００は、学習用の画像（学習データ）と、その画像に対する理想的な出力データである正解値とに基づいてニューラルネットワークの学習を行う「学習処理」と、学習済みのニューラルネットワークを未知の画像（未知データ）に適用し、画像分類、物体検出または画像セグメンテーションなどの画像処理を行う「適用処理」と、を実行する。【００１７】
学習処理では、データ処理システム１００は、学習用の画像に対してニューラルネットワークにしたがった処理を実行し、学習用の画像に対する出力データを出力する。そしてデータ処理システム１００は、出力データが正解値に近づく方向にニューラルネットワークの最適化（学習）対象のパラメータ（以下、「最適化対象パラメータ」と呼ぶ）を更新する。これを繰り返すことにより最適化対象パラメータが最適化される。【００１８】
適用処理では、データ処理システム１００は、学習処理において最適化された最適化対象パラメータを用いて、未知の画像に対してニューラルネットワークにしたがった処理を実行し、その画像に対する出力データを出力する。データ処理システム１００は、出力データを解釈して、画像を画像分類したり、画像から物体検出したり、画像に対して画像セグメンテーションを行ったりする。【００１９】
データ処理システム１００は、取得部１１０と、記憶部１２０と、ニューラルネットワーク処理部１３０と、学習部１４０と、解釈部１５０と、を備える。主にニューラルネットワーク処理部１３０と学習部１４０により学習処理の機能が実現され、主にニューラルネットワーク処理部１３０と解釈部１５０により適用処理の機能が実現される。【００２０】
取得部１１０は、学習処理においては、一度に複数の学習用の画像と、それら複数の学習用の画像のそれぞれに対応する正解値とを取得する。また取得部１１０は、適用処理においては、処理対象の未知の画像を取得する。なお、画像は、チャンネル数は特に問わず、例えばＲＧＢ画像であっても、また例えばグレースケール画像であってもよい。【００２１】
記憶部１２０は、取得部１１０が取得した画像を記憶する他、ニューラルネットワーク処理部１３０、学習部１４０および解釈部１５０のワーク領域や、ニューラルネットワークのパラメータの記憶領域となる。【００２２】
ニューラルネットワーク処理部１３０は、ニューラルネットワークにしたがった処理を実行する。ニューラルネットワーク処理部１３０は、ニューラルネットワークの入力層に対応する処理を実行する入力層処理部１３１と、中間層に対応する処理を実行する中間層処理部１３２と、出力層に対応する処理を実行する出力層処理部１３３と、を含む。【００２３】
図２は、ニューラルネットワークの構成の一例を模式的に示す図である。この例では、ニューラルネットワークは２つの中間層を含み、各中間層は畳み込み処理を行う中間層要素とプーリング処理を行う中間層要素とを含んで構成されている。なお、中間層の数は特に限定されず、例えば中間層の数が１であっても、３以上であってもよい。図示の例の場合、中間層処理部１３２は、各中間層の各中間層要素の処理を実行する。【００２４】
また、本実施の形態では、ニューラルネットワークは、少なくとも１つの係数要素を含む。図示の例では、ニューラルネットワークは各中間層の前後に係数要素を含んでいる。中間層処理部１３２は、この係数要素に対応する処理も実行する。【００２５】
中間層処理部１３２は、学習処理時は、係数要素に対応する処理として係数処理を実行する。係数処理とは、中間層要素への入力データまたは中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加（広義単調増加）する係数を乗じる処理をいう。本実施の形態の係数処理では、当該中間データに対して、学習の進行度に応じて絶対値が０以上１以下の範囲で単調増加する係数を乗じる。なお、本実施の形態では、学習の進行度は学習の繰り返し回数であるとする。【００２６】
係数処理は、一例として以下の式（１）により与えられる。
【数１】
2020044567.tif 000003
ここで、αには、０より大きく１より小さい値（例えば０．９９９）が設定される。したがって、αｔは、０より大きく１より小さい範囲で、学習が進むにつれて徐々に小さくなる。したがって、係数（１−αｔ）は、０より大きく１より小さい範囲で、学習が進むにつれて単調増加する。係数（１−αｔ）は特に、学習が進むにつれて１に近づく。この場合、中間データは、学習の初期は比較的小さい値に変換され、学習が進むにつれて徐々に変換度合いが小さくなり、学習の後期では、１に近い値を乗じることから明らかなように、実質的に変換がないものと見なせる程度に変換される。【００２７】
また、中間層処理部１３２は、適用処理時は、係数処理として以下の式（２）により与えられる処理を実行する。つまり、入力をそのまま出力する処理を実行する。なお別の捉え方をすると、中間層処理部１３２は、適用処理時は、係数処理として１を乗じる処理を実行するとも言える。いずれにしろ、本発明を利用しない場合と同程度の処理時間で適用処理を実行できる。
【数２】
2020044567.tif 000004
【００２８】
学習部１４０は、ニューラルネットワークの最適化対象パラメータを最適化することにより、ニューラルネットワークを学習させる。学習部１４０は、学習用の画像をニューラルネットワーク処理部１３０に入力することにより得られた出力と、その画像に対応する正解値とを比較する目的関数（誤差関数）により、誤差を算出する。学習部１４０は、算出された誤差に基づいて、勾配逆伝搬法等によりパラメータについての勾配を計算し、モーメンタム法に基づいてニューラルネットワークの最適化対象パラメータを更新する。【００２９】
取得部１１０による学習用の画像の取得と、ニューラルネットワーク処理部１３０による学習用画像に対するニューラルネットワークにしたがった処理と、学習部１４０による最適化対象パラメータの更新とを繰り返すことにより、最適化対象パラメータが最適化される。【００３０】
また、学習部１４０は、学習を終了すべきか否かを判定する。学習を終了すべき終了条件は、例えば学習が所定回数行われたことや、外部から終了の指示を受けたことや、最適化対象パラメータの更新量の平均値が所定値に達したことや、算出された誤差が所定の範囲内に収まったことである。学習部１４０は、終了条件が満たされる場合、学習処理を終了させる。学習部１４０は、終了条件が満たされない場合、処理をニューラルネットワーク処理部１３０に戻す。【００３１】
解釈部１５０は、出力層処理部１３３からの出力を解釈して、画像分類、物体検出または画像セグメンテーションを実施する。【００３２】
実施の形態に係るデータ処理システム１００の動作を説明する。
図３は、データ処理システム１００による学習処理のフローチャートを示す。取得部１１０は、複数枚の学習用の画像を取得する（Ｓ１０）。ニューラルネットワーク処理部１３０は、取得部１１０が取得した複数枚の学習用の画像のそれぞれに対して、ニューラルネットワークにしたがった処理を実行し、それぞれについての出力データを出力する（Ｓ１２）。学習部１４０は、複数枚の学習用の画像のそれぞれについての出力データと、それぞれについての正解値とに基づいて、パラメータを更新する（Ｓ１４）。学習部１４０は、終了条件が満たされるか否かを判定する（Ｓ１６）。終了条件が満たされない場合（Ｓ１６のＮ）、処理はＳ１０に戻される。終了条件が満たされる場合（Ｓ１６のＹ）、処理は終了する。【００３３】
図４は、データ処理システム１００による適用処理のフローチャートを示す。取得部１１０は、適用処理の対象の画像を取得する（Ｓ２０）。ニューラルネットワーク処理部１３０は、取得部１１０が取得した画像に対して、最適化対象パラメータが最適化されたすなわち学習済みのニューラルネットワークにしたがった処理を実行し、出力データを出力する（Ｓ２２）。解釈部１５０は、出力データを解釈し、対象の画像を画像分類したり、対象の画像から物体検出したり、対象の画像に対して画像セグメンテーションを行ったりする（Ｓ２４）。【００３４】
以上説明した実施の形態に係るデータ処理システム１００によると、係数処理として、中間層要素への入力データまたは中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が０以上１以下の範囲で単調増加する係数を乗じる処理が実行される。これにより、学習初期において、ニューラルネットワーク全体の入出力の関係が大きく変化するのを抑えられ、その結果として学習が容易となる。また、係数処理の出力が係数処理への入力よりも大きくならないため、学習の発散を抑制できる。【００３５】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。【００３６】
（変形例１）
図５は、ニューラルネットワークの構成の他の一例を模式的に示す図である。この例では、第Ｍ（Ｍは１以上の整数）層の中間層は、１以上の中間層要素を含む。ニューラルネットワーク処理部１３０は、第Ｍ層の処理において、その中間層要素への入力データを表す中間データおよびその中間層要素からの出力データを表す中間データの少なくとも一方に対して係数処理を実行する。図示の例では、ニューラルネットワーク処理部１３０は、第Ｍ層の中間層を構成する１以上の中間層要素のうちの最初の中間層要素への入力データを表す中間データと、最後の中間層要素からの出力データを表す中間データに対して係数処理を実行する。【００３７】
また、ニューラルネットワーク処理部１３０は、第Ｍ層の中間層に入力されるべき中間データと、当該中間データを第Ｍ層の中間層に入力することにより出力される中間データとを統合する統合処理を実行する。例えば、ニューラルネットワーク処理部１３０は、統合処理として、第Ｍ層の中間層に入力されるべき中間データと、当該中間データを第Ｍ層の中間層に入力することにより出力される中間データとを足し合わせてもよい。この場合のニューラルネットワークは、Residual networksに係数要素を含めたものに相当する。また例えば、ニューラルネットワーク処理部１３０は、統合処理として、第Ｍ層の中間層に入力されるべき中間データと当該中間データを第Ｍ層の中間層に入力することにより出力される中間データとをチャンネル連結してもよい。この場合のニューラルネットワークは、Densely connected networksに係数要素を含めたものに相当する。【００３８】
本変形例によれば、ニューラルネットワーク全体の入出力の関係が恒等写像に近くなるため学習が容易になる。なお具体的には、第Ｍ層の中間層を構成する１以上のうちの中間層要素のうちの最初の中間層要素への入力データを表す中間データに対して係数処理を実行すると、順伝搬が恒等写像に近くなり、最後の中間層要素からの出力データを表す中間データに対して係数処理を実行すると、逆伝搬が恒等写像に近くなる。【００３９】
（変形例２）
係数処理において、係数が１に十分近づいたら、言い換えると、１と係数との差分値が所定の値以下となったら、係数を乗算しなくてもよい。具体的には例えば、係数処理は、以下の式（３）により与えられてもよい。
【数３】
2020044567.tif 000005
上述したように、αｔは、０より大きく１より小さい範囲で、学習が進むにつれて徐々に小さくなる。係数（１−αｔ）は、０より大きく１より小さい範囲で、学習が進むにつれて１に近づく。そして、この例では、係数（１−αｔ）が１にある程度以上近づくと、すなわち１と係数（１−αｔ）との差分値がεよりも小さくなると、係数を乗算せずに、入力をそのまま出力する処理を実行する。本発明によれば、学習の途中からは、本発明を利用しない場合と同程度の処理時間で学習処理を実行できる。【００４０】
（変形例３）
実施の形態では、学習の進行度は学習の繰り返し回数である場合について説明したが、これに限定されない。例えば、学習の収束具合を学習の進行度としてもよい。この場合、進行度は例えば、学習データをニューラルネットワークに入力して得られた出力と、その学習データに対する理想的な出力データである正解値との差に対して単調減少する関数に基づく値であってもよい。具体的には例えば、以下の式４に基づく値であってもよい。
【数４】
2020044567.tif 000006
【００４１】
実施の形態および変形例において、データ処理システムは、プロセッサと、メモリー等のストレージを含んでもよい。ここでのプロセッサは、例えば各部の機能が個別のハードウェアで実現されてもよいし、あるいは各部の機能が一体のハードウェアで実現されてもよい。例えば、プロセッサはハードウェアを含み、そのハードウェアは、デジタル信号を処理する回路およびアナログ信号を処理する回路の少なくとも一方を含むことができる。例えば、プロセッサは、回路基板に実装された１又は複数の回路装置（例えばＩＣ等）や、１又は複数の回路素子（例えば抵抗、キャパシター等）で構成することができる。プロセッサは、例えばＣＰＵ（Central Processing Unit）であってもよい。ただし、プロセッサはＣＰＵに限定されるものではなく、ＧＰＵ（Graphics Processing Unit）、あるいはＤＳＰ（Digital Signal Processor）等、各種のプロセッサを用いることが可能である。またプロセッサはＡＳＩＣ（application specific integrated circuit）又はＦＰＧＡ（field-programmable gate array）によるハードウェア回路でもよい。またプロセッサは、アナログ信号を処理するアンプ回路やフィルター回路等を含んでもよい。メモリーは、ＳＲＡＭ、ＤＲＡＭなどの半導体メモリーであってもよいし、レジスターであってもよいし、ハードディスク装置等の磁気記憶装置であってもよいし、光学ディスク装置等の光学式記憶装置であってもよい。例えば、メモリーはコンピュータにより読み取り可能な命令を格納しており、当該命令がプロセッサにより実行されることで、データ処理システムの各部の機能が実現されることになる。ここでの命令は、プログラムを構成する命令セットの命令でもよいし、プロセッサのハードウェア回路に対して動作を指示する命令であってもよい。
【符号の説明】
【００４２】
１００  データ処理システム、  １３０  ニューラルネットワーク処理部、  １４０  学習部。
【産業上の利用可能性】
【００４３】
本発明は、データ処理システムおよびデータ処理方法に利用できる。
【図１】
2020044567.tif 000007
【図２】
2020044567.tif 000008
【図３】
2020044567.tif 000009
【図４】
2020044567.tif 000010
【図５】
2020044567.tif 000011
【手続補正書】
【提出日】令和2年10月9日(2020.10.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するニューラルネットワーク処理部と、
前記ニューラルネットワーク処理部が学習データに対して前記処理を実行することにより出力される出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、前記ニューラルネットワークの最適化対象パラメータを最適化することにより、前記ニューラルネットワークを学習させる学習部と、を備え、
前記ニューラルネットワーク処理部は、前記学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行することを特徴とするデータ処理システム。
【請求項２】
入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するニューラルネットワーク処理部を備え、
前記ニューラルネットワークは、学習データに対して前記処理を実行することにより出力される出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、最適化対象パラメータが最適化されており、
前記ニューラルネットワーク処理部は、前記学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行することを特徴とするデータ処理システム。
【請求項３】
前記係数の絶対値は、０以上１以下であることを特徴とする請求項１または２に記載のデータ処理システム。
【請求項４】
前記ニューラルネットワーク処理部は、１と前記係数との差分値が所定の値以下となった場合、係数処理として入力をそのまま出力する処理を実行することを特徴とする請求項１から３のいずれかに記載のデータ処理システム。
【請求項５】
前記ニューラルネットワーク処理部は、適用処理時は、係数処理として入力をそのまま出力する処理を実行することを特徴とする請求項１から４のいずれかに記載のデータ処理システム。
【請求項６】
前記第Ｍ層の中間層は、１以上の中間層要素を含み、
前記ニューラルネットワーク処理部は、（i）前記第Ｍ層の中間層の処理において、その中間層要素への入力データを表す中間データおよび当該中間層要素からの出力データを表す中間データの少なくとも一方に対して係数処理を実行し、かつ、（ii）当該第Ｍ層の中間層に入力されるべき中間データと、当該中間データを当該第Ｍ層の中間層に入力することにより出力される中間データとを統合する統合処理を実行することを特徴とする請求項１から５のいずれかに記載のデータ処理システム。
【請求項７】
前記ニューラルネットワーク処理部は、前記第Ｍ層の中間層の最初の中間層要素への入力データを表す中間データに対して係数処理を実行することを特徴とする請求項６に記載のデータ処理システム。
【請求項８】
前記ニューラルネットワーク処理部は、前記第Ｍ層の中間層の最後の中間層要素からの出力データを表す中間データに対して係数処理を実行することを特徴とする請求項６に記載のデータ処理システム。
【請求項９】
前記ニューラルネットワーク処理部は、前記統合処理として、それぞれの中間データを足し合わせることを特徴とする請求項６から８のいずれかに記載のデータ処理システム。
【請求項１０】
前記ニューラルネットワーク処理部は、前記統合処理として、それぞれの中間データをチャンネル連結することを特徴とする請求項６から８のいずれかに記載のデータ処理システム。
【請求項１１】
前記学習の進行度は、学習の繰り返し回数であることを特徴とする請求項１から１０のいずれかに記載のデータ処理システム。
【請求項１２】
前記学習の進行度は、学習データに対して前記処理を実行することにより出力される出力データとその学習データに対する理想的な出力データとの差に対して単調減少する関数に基づき決定されることを特徴とする請求項１から１０のいずれかに記載のデータ処理システム。
【請求項１３】
学習データに対して、入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行することにより、学習データに対応する出力データを出力するステップと、
学習データに対応する出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、前記ニューラルネットワークの最適化対象パラメータを最適化することにより、前記ニューラルネットワークを学習させるステップと、を備え、
前記ニューラルネットワークを学習させるステップでは、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行することを特徴とするデータ処理方法。
【請求項１４】
入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行するステップを備え、
前記ニューラルネットワークは、学習データに対して前記処理を実行することにより出力される出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、最適化対象パラメータが最適化されており、
前記学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理が実行されていることを特徴とするデータ処理方法。
【請求項１５】
コンピュータに、
学習データに対して、入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行することにより、学習データに対応する出力データを出力する機能と、
学習データに対応する出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、前記ニューラルネットワークの最適化対象パラメータを最適化することにより、前記ニューラルネットワークを学習させる機能と、実行させ、
前記ニューラルネットワークを学習させる機能は、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理を実行することを特徴とするコンピュータプログラム。
【請求項１６】
コンピュータに、
入力層、１以上の中間層および出力層を含むニューラルネットワークにしたがった処理を実行する機能を実行させ、
前記ニューラルネットワークは、学習データに対して前記処理を実行することにより出力される出力データと、前記学習データに対する理想的な出力データとの比較に基づいて、最適化対象パラメータが最適化されており、
前記学習において、第Ｍ層（Ｍは１以上の整数）の中間層を構成する中間層要素への入力データまたは当該中間層要素からの出力データを表す中間データに対して、学習の進行度に応じて絶対値が単調増加する係数を乗じる係数処理が実行されていることを特徴とするコンピュータプログラム。
【国際調査報告】
2020044567.tif 000012
2020044567.tif 000013