(57)【要約】【課題】演算スピードを確保しつつ、主要因としての未確定変数群を特定し易い変数群演算装置を提供すること。【解決手段】本発明は、未確定変数群及び辞書データ群の加算合成値と観測データ群との差分値と、差分値及び未確定変数群の正則化項を含むデータ値と、を同時に最小化する未確定変数群を演算する変数群演算装置に適用される。本発明の変数群演算装置は、正則化項を、未確定変数群を用いたＬ１ノルムと、軟化関数と、の畳み込み値とする畳み込み部と、畳み込み部により畳み込み値とされた正則化項を用いて、上記の演算を行う演算部と、を備える。【選択図】図２
2018205842.tif 000002
【特許請求の範囲】
【請求項１】
未確定変数群及び辞書データ群の加算合成値と観測データ群との差分値と、前記差分値及び前記未確定変数群の正則化項を含むデータ値と、を同時に最小化する前記未確定変数群を演算する変数群演算装置であって、
前記正則化項を、前記未確定変数群を用いたＬ１ノルムと、軟化関数と、の畳み込み値とする畳み込み部と、
前記畳み込み部により前記畳み込み値とされた前記正則化項を用いて、前記演算を行う演算部と、を備える変数群演算装置。
【請求項２】
前記畳み込み部は、前記正則化項の必要微分回数に応じて、前記軟化関数を決定する、請求項１に記載の変数群演算装置。
【請求項３】
未確定変数群及び辞書データ群の加算合成値と観測データ群との差分値と、前記差分値及び前記未確定変数群の正則化項を含むデータ値と、を同時に最小化する前記未確定変数群を演算する変数群演算装置による変数群演算方法であって、
前記正則化項を、前記未確定変数群を用いたＬ１ノルムと、軟化関数と、の畳み込み値とするステップと、
前記畳み込み値とされた前記正則化項を用いて、前記演算を行うステップと、を含む変数群演算方法。
【請求項４】
前記正則化項の必要微分回数に応じて、前記軟化関数を決定するステップをさらに含む、請求項３に記載の変数群演算方法。
【請求項５】
未確定変数群及び辞書データ群の加算合成値と観測データ群との差分値と、前記差分値及び前記未確定変数群の正則化項を含むデータ値と、を同時に最小化する前記未確定変数群を演算するコンピュータに、
前記正則化項を、前記未確定変数群を用いたＬ１ノルムと、軟化関数と、の畳み込み値とする手順と、
前記畳み込み値とされた前記正則化項を用いて、前記演算を行う手順と、
を実行させるための変数群演算プログラム。
【請求項６】
前記コンピュータに、
前記正則化項の必要微分回数に応じて、前記軟化関数を決定する手順をさらに実行させるための、請求項５に記載の変数群演算プログラム。
【請求項７】
変数群演算装置で用いられるデータ構造であって、
未確定変数群及び辞書データ群の加算合成値と観測データ群との差分値と、
前記未確定変数群の正則化項であって、前記未確定変数群を用いたＬ１ノルムと軟化関数との畳み込み値である前記正則化項と、を含み、
前記変数群演算装置が、前記差分値と、前記差分値及び前記正則化項を含むデータ値と、を同時に最小化する前記未確定変数群の演算に用いられる、データ構造。
【請求項８】
前記軟化関数は、前記正則化項の必要微分回数に応じて、決定される、
請求項７に記載のデータ構造。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、変数群演算装置、変数群演算方法、変数群演算プログラム、及びデータ構造に関する。
【背景技術】
【０００２】
機械学習の応用において、画像データや音声データといった高次元データでは、データに含まれる不必要な情報に学習結果が影響され、過学習を引き起こしやすいという問題がある。
【０００３】
このような問題を回避する有効な方法として、「スパース学習（疎性学習）」がある。スパース学習は、データに含まれる本質的に意味のある情報の低次元性（スパース性）を利用し、目的に関係ない情報を削除しながら学習する方法である。
【０００４】
スパース学習において、所望の高次元の観測データ群（ｙ）を、辞書行列（Ａ）の一次結合で表現しようとする場合、辞書行列（Ａ）の列ベクトルは線形従属関係にあり、不必要な情報が辞書行列（Ａ）に含まれていることが多い。そこで、観測データ群（ｙ）を得るための主要因となる未確定変数群（ｘ）として、辞書行列（Ａ）の本質的に意味のある列成分が何かを説明する働きを持つ説明変数群が用いられる。
【０００５】
スパース学習において、未確定変数群（ｘ）を演算するには、未確定変数群（ｘ）及び辞書行列（Ａ）の加算合成値（Ａｘ）と、観測データ群（ｙ）と、の差分値を最小化する未確定変数群（ｘ）を演算する最小化問題を解く必要があるが、最小化問題は、演算精度に改善の余地がある。なお、最小化問題の代表例としては、｜ｙ−Ａｘ｜２を最小化する未確定変数群（ｘ）を求める最小二乗法が挙げられる。
【０００６】
また、スパース学習においては、上記の最小化問題に、未確定変数群（ｘ）を大きくしないような制約条件（正則化項（｜ｘ｜ｐ，ｐは定数））を加え、上記の差分値と、上記の差分値及び正則化項を含むデータ値と、を同時に小さくする（最小化する）ｘを演算することで、高い精度で未確定変数群（ｘ）を演算することができることが知られている。
【０００７】
スパース学習において、正則化項を加えて、未確定変数群（ｘ）を演算する技術としては、例えば、以下の技術が知られている。
【０００８】
特許文献１には、正則化項を、ｐ＝０であるＬ０ノルムとして、上記の演算を行う演算装置が開示されている。
特許文献２には、正則化項を、ｐ＝１であるＬ１ノルム（｜ｘ｜）又はｐ＝２であるＬ２ノルム（｜ｘ｜２）として、上記の演算を行う演算装置が開示されている。
非特許文献１には、正則化項を、ｐ＝２であるＬ２ノルム（｜ｘ｜２）として、上記の演算を行う演算装置が開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許第６０８０７８３号公報
【特許文献２】特開２０１７−０３３１７２号公報
【非特許文献】
【００１０】
【非特許文献１】冨岡亮太、「スパース性に基づく機械学習（機械学習プロフェッショナルシリーズ）」、講談社、2015年12月
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかし、正則化項がｐ＝０の場合、実質的に、最小化問題における未確定変数群の組み合わせ問題となるため、観測データ群のデータ量が多い場合には、演算スピードが出ないという問題がある。
【００１２】
また、正則化項がｐ＝１の場合、正則化項が微分不可能な非連続箇所を多く含むため、最小化問題の演算過程において、分岐条件を複雑に設けざるを得ず、最小化問題の演算に改善の余地があるという問題がある。
【００１３】
また、正則化項がｐ＝２以上の場合、正則化項が微分し易い連続関数となるため、演算スピードは、ｐ＝０の場合やｐ＝１の場合よりも向上することが期待できる。しかし、演算結果として得られる未確定変数群が多くなりがちであるため、主要因となる未確定変数を特定し難いという背反する問題がある。
【００１４】
このことから、スパース学習において、正則化項を加えて、未確定変数群を演算する変数群演算装置としては、演算スピードを確保しつつ、未確定変数群を特定し易い変数群演算装置が望まれている。
【００１５】
本発明は、上記に鑑みてなされたものであり、演算スピードを確保しつつ、主要因としての未確定変数群を特定し易い変数群演算装置、変数群演算方法、変数群演算プログラム、及びデータ構造を提供する。
【課題を解決するための手段】
【００１６】
本発明の一態様に係る変数群演算装置は、
未確定変数群及び辞書データ群の加算合成値と観測データ群との差分値と、前記差分値及び前記未確定変数群の正則化項を含むデータ値と、を同時に最小化する前記未確定変数群を演算する変数群演算装置であって、
前記正則化項を、前記未確定変数群を用いたＬ１ノルムと、軟化関数と、の畳み込み値とする畳み込み部と、
前記畳み込み部により前記畳み込み値とされた前記正則化項を用いて、前記演算を行う演算部と、を備える。
【００１７】
本発明の一態様に係る変数群演算方法は、
未確定変数群及び辞書データ群の加算合成値と観測データ群との差分値と、前記差分値及び前記未確定変数群の正則化項を含むデータ値と、を同時に最小化する前記未確定変数群を演算する変数群演算装置による変数群演算方法であって、
前記正則化項を、前記未確定変数群を用いたＬ１ノルムと、軟化関数と、の畳み込み値とするステップと、
前記畳み込み値とされた前記正則化項を用いて、前記演算を行うステップと、を含む。
【００１８】
本発明の一態様に係る変数群演算プログラムは、
未確定変数群及び辞書データ群の加算合成値と観測データ群との差分値と、前記差分値及び前記未確定変数群の正則化項を含むデータ値と、を同時に最小化する前記未確定変数群を演算するコンピュータに、
前記正則化項を、前記未確定変数群を用いたＬ１ノルムと、軟化関数と、の畳み込み値とする手順と、
前記畳み込み値とされた前記正則化項を用いて、前記演算を行う手順と、
を実行させる。
【００１９】
本発明の一態様に係るデータ構造は、
変数群演算装置で用いられるデータ構造であって、
未確定変数群及び辞書データ群の加算合成値と観測データ群との差分値と、
前記未確定変数群の正則化項であって、前記未確定変数群を用いたＬ１ノルムと軟化関数との畳み込み値である前記正則化項と、を含み、
前記変数群演算装置が、前記差分値と、前記差分値及び前記正則化項を含むデータ値と、を同時に最小化する前記未確定変数群の演算に用いられる。
【発明の効果】
【００２０】
本発明の各態様によれば、演算スピードを確保しつつ、主要因としての未確定変数群を特定し易い変数群演算装置、変数群演算方法、変数群演算プログラム、及びデータ構造を提供することができる。
【図面の簡単な説明】
【００２１】
【図１】観測データ群の例を示す図である。
【図２】実施の形態に係る変数群演算装置の構成例を示すブロック図である。
【図３】実施の形態に係る変数群演算装置による変数群演算方法のフロー例を説明するフローチャートである。
【図４】実施の形態に係る平滑化単位設定部の処理の具体例を説明する図である。
【図５】軟化関数の区間の例を示す図である。
【図６】実施の形態に係る畳み込み部の処理の具体例を説明する図である。
【図７】軟化関数をグラフ表示した例を示す図である。
【図８】図７に示される軟化関数の生成方法の例を説明する図である。
【発明を実施するための形態】
【００２２】
以下、図面を参照して本発明の実施の形態について説明する。なお、以下で説明する各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。
【００２３】
＜本実施の形態の概要＞
まず、本実施の形態の概要について説明する。
図１は、本実施の形態に係る観測データ群（ｙ）の例を示す図である。図１に示されるように、本実施の形態においては、観測データ群（ｙ）として画像データを扱う。なお、図１に示される画像データは、一例であって、これには限定されない。
【００２４】
観測データ群（ｙ）は、観測データ群（ｙ）を得るための主要因となる未確定変数群の一例である説明変数群（β）と、辞書データ群の一例である辞書行列（Ａ）と、により以下の式（１）のように表される。
2018205842.tif 000003
ここで、Ａ＝（Ａ１,・・・，Ａｍ）、β＝（β１,・・・，βｑ）である。また、ｍ及びｑは定数である。
【００２５】
ところで、実際の観測データ群（ｙ）は、観測データ群（ｙ）に実際に影響を与える説明変数群（β）が疎らに（スパースに）存在している構造（スパース構造）を持ったデータであることが比較的多い。例えば、画像データは、隣同士のピクセルの色は、同じような色であることがほとんどである。このとき、同じような色を持つピクセル同士をうまくまとめると、画像データの情報を大幅に圧縮することができる。
【００２６】
スパース学習は、観測データ群（ｙ）そのものは大規模であるが、観測データ群（ｙ）に実際に影響を与える説明変数（βｊ）（ｊは１≦ｊ≦ｑの正の整数）がごく一部である場合に使用される。スパース学習においては、膨大な説明変数群（β）を用意し、このうち観測データ群（ｙ）に影響を与えない説明変数（βｊ）を“０”と推定する。例えば、図１において、説明変数群（β）を構成する説明変数（β１）が観測データ群（ｙ）に影響を与えない変数であれば、説明変数（β１）を“０”と推定することになる。
【００２７】
また、スパース学習においては、説明変数群（β）及び辞書行列（Ａ）の加算合成値（Ａｘ）と観測データ群（ｙ）との差分値を最小化する最小化問題に、説明変数群（β）の正則化項を加え、上記の差分値と、上記の差分値及び正則化項を含むデータ値と、を同時に最小化する説明変数群（β）を演算することで、高い精度で説明変数群（β）を演算することができることが知られている。
【００２８】
スパース学習において、正則化項を加えて、説明変数群（β）を演算する場合のコスト関数Ｒ（β）は、例えば、以下の式（２）のように表される。
2018205842.tif 000004
ここで、ｆ（β）はロス関数、ψ（β）は正則化項である。本実施の形態においては、ロス関数ｆ（β）は、例えば、以下の式（３）のように表される。
2018205842.tif 000005
【００２９】
また、正則化項ψ（β）は、典型的には、Ｌ１ノルムとして、例えば、以下の式（４）のように表される。
2018205842.tif 000006
ここで、λは正則化変数である。式（４）で表される正則化項ψ（β）は、説明変数（βｊ）の各々の絶対値の和と正則化変数λとの積となる。なお、正則化項ψ（β）が式（４）のように表されるタイプのスパース学習は、ＬＡＳＳＯ（Least Absolute Shrinkage and Selection Operator）と呼ばれる。
【００３０】
上記のように表される最小化問題においては、説明変数群（β）及び辞書行列（Ａ）の加算合成値（Ａｘ）と観測データ群（ｙ）との差分値に相当するロス関数ｆ（β）と、ロス関数ｆ（β）及び正則化項ψ（β）を含むデータ値に相当するコスト関数Ｒ（β）と、を同時に最小化する説明変数群（β）を演算することになる。
【００３１】
ここで、正則化項ψ（β）が、式（４）のようなＬ１ノルムの正則化項（以下、Ｌ１ノルムの正則化項を、適宜、Ｌ１正則化項と称す）である場合、説明変数群（β）を絞り込み易いという利点がある。
【００３２】
さらに、もし、上記の説明変数群（β）の演算にニュートン法又はその変種方法を適用することができれば、ニュートン法は、２次収束であり、１次収束や超１次収束と比較して、解への収束速度が速いため、演算スピードの向上を図ることも期待できる。
【００３３】
しかし、Ｌ１正則化項ψ（β）の波形が尖っている場合、ψ（β）の微分が不可能であるため、ニュートン法又はその変種方法を、上記の説明変数群（β）の演算に適用することができず、演算スピードの向上を図ることができない。
その一方、ロス関数ｆ（β）の波形は滑らかな場合が多い。
【００３４】
そこで、本実施の形態は、Ｌ１正則化項ψ（β）を平滑化された凸関数とすることで、コスト関数Ｒ（β）全体を平滑化された凸関数とするものである。このようにすることにより、説明変数群（β）を絞り込み易いというＬ１正則化項の特性を生かしつつ、ニュートン法又はその変種方法を適用可能となり、それにより、説明変数群（β）の演算スピードの向上を図ることが可能となる。
【００３５】
＜本実施の形態の構成＞
続いて、本実施の形態の構成について説明する。
図２は、本実施の形態に係る変数群演算装置１の構成例を示すブロック図である。図２に示されるように、本実施の形態に係る変数群演算装置１は、プロセッサ１０、メモリ２０、及びインターフェース（Ｉ／Ｆ）部３０によって、ハードウェア構成されている。また、プロセッサ１０は、平滑化単位設定部１１、畳み込み部１２、及び演算部１３を含んでいる。
【００３６】
メモリ２０は、プロセッサ１０によって実行される命令群を含むプログラム（演算プログラム）等を記憶する。メモリ２０は、揮発性メモリ、不揮発性メモリ、又はこれらの組み合わせ等である。
インターフェース（Ｉ／Ｆ）部３０は、外部との間で各種情報の入出力を行う。
【００３７】
プロセッサ１０は、命令群を含むプログラムをメモリ２０から読み出し、実行することにより、平滑化単位設定部１１、畳み込み部１２、及び演算部１３の機能を実現する。なお、平滑化単位設定部１１、畳み込み部１２、及び演算部１３の詳細は後述する。プロセッサ１０は、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、マイクロプロセッサ、又はこれらの組み合わせ等である。
【００３８】
また、上記のプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば、光磁気ディスク）、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）、ＣＤ−Ｒ（CD-recordable）、ＣＤ−Ｒ／Ｗ（CD-rewritable）、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（random access memory））を含む。
【００３９】
また、上記のプログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されても良い。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバなどの有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００４０】
＜本実施の形態の動作＞
続いて、本実施の形態の動作について説明する。
図３は、本実施の形態に係る変数群演算装置１による変数群演算方法のフロー例を説明するフローチャートである。
【００４１】
図３に示されるように、まず、インターフェース（Ｉ／Ｆ）部３０には、観測データ群（ｙ）、辞書行列（Ａ）、及びＬ１正則化項の必要微分回数の情報が、外部から入力される（ステップＳ１）。なお、観測データ群（ｙ）は、図１に示される画像データである。また、辞書行列（Ａ）は、観測データ群（ｙ）に応じた辞書行列があるものとする。また、Ｌ１正則化項の必要微分回数は、２回以上であるものとする。
【００４２】
続いて、平滑化単位設定部１１は、説明変数（βｊ）の各々を分散（σ２ｊ）が１、平均（μｊ）が１になるように正規化し、正規化された説明変数（βｊ）の各々の関数値を平滑化する範囲を示す平滑化単位を設定する。なお、平滑化単位設定部１１は、説明変数（βｊ）毎に、複数の平滑化単位を設定する（ステップＳ２）。
【００４３】
続いて、畳み込み部１２は、Ｌ１正則化項の必要微分回数に応じて、軟化関数（多項式）を決定する（ステップＳ３）。後述のように、次数がｎの軟化関数は、ｎ−１回微分可能な関数である。そのため、必要微分回数がｎｄ（ｎｄは２以上の整数）であれば、次数が（ｎｄ＋１）以上の軟化関数に決定する。
【００４４】
続いて、畳み込み部１２は、ステップＳ２で設定された複数の平滑化単位の１つを選択する（ステップＳ４）。以降、ステップＳ４で選択した平滑化単位について、最小化問題を解くことになる。
【００４５】
続いて、畳み込み部１２は、説明変数（βｊ）毎に、ステップＳ４で選択した平滑化単位で示される範囲内の、説明変数（βｊ）の各々の関数値を、ステップＳ３で決定した軟化関数との畳み込み値とすることで、平滑化する（ステップＳ５）。
【００４６】
Ｌ１正則化項ψ（β）は、式（４）で表されるように、説明変数（βｊ）の各々の絶対値の和と正則化変数λとの積で表される。そのため、ステップＳ４で選択した平滑化単位について、説明変数（βｊ）の各々の関数値が平滑化されることにより、Ｌ１正則化項ψ（β）は、平滑化され、必要微分回数の微分が可能な凸関数となる。これにより、コスト関数Ｒ（β）全体が平滑化された凸関数となるため、説明変数群（β）の演算に、ニュートン法又はその変種方法を適用することができる。
【００４７】
そこで、演算部１３は、ニュートン法又はその変種方法を適用して、ロス関数ｆ（β）と、コスト関数Ｒ（β）と、を同時に最小化する説明変数群（β）を演算する（ステップＳ６）。その結果、説明変数群（β）の演算スピードの向上を図ることができる。
【００４８】
続いて、演算部１３は、ステップＳ６で演算された説明変数群（β）のうち、観測データ群（ｙ）に影響を与えない説明変数（βｊ）を“０”と推定する（ステップＳ７）。
以上で、ステップＳ４で選択した平滑化単位について、最小化問題の演算が完了する。
【００４９】
続いて、演算部１３は、ステップＳ２で設定された複数の平滑化単位のうち未だ選択されていない未選択の平滑化単位があるか否かを判断し（ステップＳ８）、未選択の平滑化単位があれば（ステップＳ８のＹＥＳ）、ステップＳ４に戻って、畳み込み部１２が未選択の平滑化単位を選択し、選択した平滑化単位について、同様に最小化問題を解く。
【００５０】
一方、演算部１３は、未選択の平滑化単位なければ（ステップＳ８のＮＯ）、ステップＳ２で設定された複数の平滑化単位毎に、ステップＳ７での推定後の説明変数群（β）を、インターフェース（Ｉ／Ｆ）部３０を介して、外部に出力する（ステップＳ９）。
【００５１】
従って、複数の平滑化単位毎の説明変数群（β）を受け取った外部の装置では、複数の平滑化単位毎に、観測データ群（ｙ）に影響を与える主要な説明変数（βｊ）と、その主要な説明変数（βｊ）の個数と、がわかる。
【００５２】
なお、図３においては、ステップＳ９において、複数の平滑化単位毎の説明変数群（β）をまとめて外部に出力しているが、これには限定されない。例えば、ステップＳ７において、ステップＳ４で選択した平滑化単位の最小化問題の演算が完了した時点で、その平滑化単位の説明変数群（β）を出力しても良い。
【００５３】
ここで、平滑化単位設定部１１、畳み込み部１２、及び演算部１３の処理について、具体例を挙げて詳細に説明する。
【００５４】
最初に、平滑化単位設定部１１の処理の具体例について説明する。
図４は、説明変数（βｊ）の個数を表すｑ＝２の場合の平滑化単位設定部１１の処理の具体例を説明する図であり、図５は、軟化関数の区間の例を示す図である。
【００５５】
図４に示されるように、説明変数（βｊ）毎に、データの分布範囲は異なっている。そのため、平滑化単位設定部１１は、説明変数（βｊ）毎に、説明変数（βｊ）の標準偏差（σｊ）、分散（σ２ｊ）、平均（μｊ）等の統計量を用いて、平滑化単位を設定する。
【００５６】
具体的には、まず、平滑化単位設定部１１は、説明変数（βｊ）毎に、以下の式（５）を用いて、分散（σ２ｊ）が１、平均（μｊ）が１になるように、統計的に正規化処理を行う。
2018205842.tif 000007
ここで、
2018205842.tif 000008
は、正規化された説明変数（βｊ）を表している。
【００５７】
図５に示されるように、軟化関数の区間は、例えば、［−ａｎ／２、ａｎ／２］となる。そこで、平滑化単位設定部１１は、ａｎを、例えば、以下の各々のように設定することで、説明変数（βｊ）毎に、複数の平滑化単位を設定する。なお、以下のａｎは一例であり、これに限定されるものではない。
ａｎ＝０．１σｊ，０．２σｊ，…，０．９σｊ，１σｊ，２σｊ，３σｊ，…
【００５８】
すなわち、まず、平滑化単位設定部１１は、ａｎ＝０．１σｊに設定し、説明変数（βｊ）毎に、正規化された説明変数（βｊ）の［−０．０５σｊ、０．０５σｊ］の区間を、平滑化単位に設定する。
【００５９】
続いて、平滑化単位設定部１１は、ａｎ＝０．２σｊに設定し、説明変数（βｊ）毎に、正規化された説明変数（βｊ）の［−０．１σｊ、０．１σｊ］の区間を、平滑化単位に設定する。
【００６０】
このようにして、平滑化単位設定部１１は、説明変数（βｊ）毎に、複数の平滑化単位を設定する。
【００６１】
続いて、畳み込み部１２の処理の具体例について説明する。
図６は、説明変数（βｊ）の個数を表すｑ＝２の場合の畳み込み部１２の処理の具体例を説明する図である。
畳み込み部１２は、平滑化単位設定部１１により設定された複数の平滑化単位の１つを選択し、説明変数（βｊ）毎に、選択した平滑化単位で示される範囲内の、説明変数（βｊ）の各々の関数値を、軟化関数との畳み込み値とし、平滑化する。
【００６２】
例えば、畳み込み部１２は、ａｎ＝０．２σｊの平滑化単位を選択している場合、図６に示されるように、説明変数（βｊ）毎に、正規化された説明変数（βｊ）の関数値の［−０．１σｊ、０．１σｊ］の区間に、軟化関数の［−ａｎ／２、ａｎ／２］の区間を合わせて、両者の合成積を計算し、平滑化を行う。なお、図６において、実線は平滑化前の波形であり、破線は平滑化後の波形である。
【００６３】
ここで、上述した軟化関数について詳細に説明する。
図７（ａ）〜（ｄ）は、軟化関数Ｔｎ（ｘ）をグラフ表示した例を示す図である。
軟化関数は、例えば、テナリー多項式（Ternary Polynomial）関数である。テナリー多項式関数は、関数値の増加領域、一定領域、減少領域の三領域を有し、一定領域を挟んで増加領域と減少領域が対称に表される多項式関数である。なお、テナリー多項式の詳細については、本出願人が既に提出した特開２００９−０５３９２６号公報に開示されており、これを援用できるものする。
【００６４】
軟化関数Ｔｎ（ｘ）（ｎは０又は正の整数）は、ｎ−１回微分可能な関数であり、定数ａ０，ａ１,・・・，ａｎ及びＣを持つ。ここで、ｄ＝（ａ０，ａ１,・・・，ａｎ，Ｃ）と定義する。Ｃは、軟化関数Ｔｎ（ｘ）の積分値が１となるように予め調整されている。
【００６５】
図７（ａ）は、次数０の軟化関数Ｔ０（ｘ）を示したものであり、矩形波状のプロファイルとなっている。図７（ｂ）は、次数１の軟化関数Ｔ１（ｘ）を示したものであり、台形状のプロファイルとなっている。図７（ｃ）は、次数２の軟化関数Ｔ２（ｘ）を示したものであり、滑らかに変化する台形状のプロファイルとなっている。図７（ｄ）は、次数３の軟化関数Ｔ３（ｘ）を示したものであり、滑らかに変化する台形状のプロファイルとなっている。
【００６６】
図８は、図７に示される軟化関数Ｔｎ（ｘ）の生成方法の例を説明する図である。
図８に示されるように、軟化関数Ｔｎ（ｘ）は、Ｔｎ（ｘ）−ｘの座標系においてＴｎ（ｘ）の波形を原点を中心に点対称に振り分けてＴ′ｎ＋１（ｘ）を生成し、このＴ′ｎ＋１（ｘ）を積分することによって、一つ次数の高いＴｎ＋１（ｘ）を生成することができる。
【００６７】
例えば、Ｔ０（ｘ）からＴ２（ｘ）を生成する場合、Ｔ０（ｘ）を対称分割（対称振分け）し積分してＴ１（ｘ）を生成し、Ｔ１（ｘ）を対称分割し積分してＴ２（ｘ）を生成しても良いし、Ｔ０（ｘ）を対称分割した後、さらに対称分割してＴ″２（ｘ）を生成し、Ｔ″２（ｘ）を二回積分してＴ２（ｘ）を生成しても良い。
【００６８】
続いて、説明変数（βｊ）の関数値と軟化関数Ｔｎ（ｘ）との合成積の計算方法について詳細に説明する。
畳み込み部１２は、説明変数（βｊ）の関数値を表すψｊ（βｊ）と、上述した多項式の軟化関数Ｔｎ（ｘ）と、に基づいて、以下の式（６）を用いて合成積（ψｊ）ｄ（ｘ）を計算し、畳み込み値を得る。
2018205842.tif 000009
【００６９】
（ψｊ）ｄ（ｘ）は、ｎ−１回微分可能な関数であり、（ψｊ）ｄ→ψｊに一様に収束する。なお、上述のような絶対値関数と軟化関数（多項式）との合成積は、処理負荷が小さい代数的な処理によって計算可能であるため、高速な処理が可能である。
【００７０】
続いて、演算部１３の処理の具体例について説明する。
上述のように、畳み込み部１２により、説明変数（βｊ）の各々の関数値は、軟化関数との畳み込み値となり、平滑化される。そのため、Ｌ１正則化項ψ（β）は、平滑化され、必要微分回数の微分が可能な凸関数となる。
【００７１】
すなわち、Ｌ１正則化項ψ（β）の平滑化前には、最小化問題は、以下の式（７）のように、ＬＡＳＳＯの最小化問題として表される。
2018205842.tif 000010
【００７２】
これに対して、Ｌ１正則化項ψ（β）の平滑化後には、最小化問題は、以下の式（８）のように、合成積ＬＡＳＳＯ（Convolutional LASSO）の最小化問題として表される。
2018205842.tif 000011
ここで、
2018205842.tif 000012
は、平滑化されたＬ１正則化項ψ（β）を表している。
【００７３】
ここで、合成積ＬＡＳＳＯは、凸関数であるため、ニュートン法又はその変種方法を適用して、大域解を求めることができる。
そこで、演算部１３は、ニュートン法又はその変種方法を適用して、||ｙ−Ａ・β||２と、コスト関数Ｒ（β）と、を同時に最小化する説明変数群（β）を演算する。
【００７４】
続いて、演算部１３は、上記の演算された説明変数群（β）を構成する説明変数（βｊ）の各々を、εｊの各々と比較する。すなわち、演算部１３は、β＝（β１,β２）の各々を（ε１,ε２）の各々と比較する。εｊは、例えば、０．１σｊとする。なお、このεｊは一例であり、これに限定されるものではない。
【００７５】
そして、演算部１３は、βｊ＜εｊであれば、その説明変数（βｊ）は観測データ群（ｙ）に影響を与えないと判断し、その説明変数（βｊ）を“０”と推定する。また、演算部１３は、βｊ≧εｊであれば、その説明変数（βｊ）は観測データ群（ｙ）に影響を与えると判断し、その説明変数（βｊ）をそのままにする。例えば、演算部１３は、β１＜ε１で、β２≧ε２であれば、説明変数（β１）を“０”と推定し、説明変数群（β）＝（０，β２）とする。この場合、主要な説明変数はβ２で、主要な説明変数の個数は１個となる。
【００７６】
演算部１３は、以上のように演算した、複数の平滑化単位毎の推定後の説明変数群（β）を、インターフェース（Ｉ／Ｆ）部３０を介して、外部に出力する。
【００７７】
＜本実施の形態の効果＞
続いて、本実施の形態の効果について説明する。
本実施の形態に係る変数群演算装置１によれば、スパース学習において、正則化項を加えて、説明変数群（β）の演算を行うに際して、まず、正則化項ψ（β）を、Ｌ１ノルムの正則化項であるＬ１正則化項と、軟化関数と、の畳み込み値として平滑化し、その後に、畳み込み値として平滑化された正則化項ψ（β）を用いて、説明変数群（β）の演算を行う。
【００７８】
これにより、正則化項ψ（β）が、主要因としての説明変数群（β）を絞り込み易いＬ１ノルムの特性を生かしつつ、２回以上の微分ができるようになり、説明変数群（β）の演算にニュートン法（２次収束）又はその変種方法を適用することが可能となる。従って、２次収束以上の収束次数が保障されるため、説明変数群（β）の演算スピード向上を図ることができる。よって、説明変数群（β）の特定し易さと演算スピードとの両立を図ることができる。
【００７９】
また、本実施の形態に係る変数群演算装置１によれば、Ｌ１正則化項ψ（β）の必要微分回数に応じて、軟化関数を決定する。このとき、軟化関数の次数をあげることで、必要な収束次数の加速化法を適用することも可能となる。
【００８０】
なお、本発明は上記の実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
例えば、上記の実施の形態においては、Ｌ１ノルムを用いたが、Ｌ１ノルムをＬｐノルム（ｐ≠２）に変更した場合にも、本発明は適用可能である。
【００８１】
また、上記の実施の形態においては、観測データ群として画像データを使用したが、観測データ群は、これには限定されず、任意の大量のデータ群（ビッグデータ）が適用可能である。観測データ群の例としては、音声データ（会話データ）、生体データ、天体データ、自然言語処理のデータ等が挙げられる。
【符号の説明】
【００８２】
１  変数群演算装置
１０  プロセッサ
１１  平滑化単位設定部
１２  畳み込み部
１３  演算部
２０  メモリ
３０  インターフェース（Ｉ／Ｆ）部
【図１】
2018205842.tif 000013
【図２】
2018205842.tif 000014
【図３】
2018205842.tif 000015
【図４】
2018205842.tif 000016
【図５】
2018205842.tif 000017
【図６】
2018205842.tif 000018
【図７】
2018205842.tif 000019
【図８】
2018205842.tif 000020