(57)【要約】  特徴変換に用いるパラメータの機械学習に関し、タスクの精度を高めることができるパラメータが得られ、かつ、機械学習を効率化できる技術を提供する。  特徴変換学習装置１は近似部５と損失計算部６と近似制御部７と損失制御部８とを備える。近似部５は、サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出する。損失計算部６は、近似特徴量に基づいて、タスクに対する損失を算出する。近似制御部７は、近似部５で用いられる近似関数が前記損失の減少に応じてステップ関数に近付くように、ステップ関数に対する近似関数の近似精度を制御する。損失制御部８は、前記損失が減少するように学習対象のパラメータを更新する。
2015025472.tif 000002
【特許請求の範囲】
【請求項１】
サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出する近似手段と、
前記近似特徴量に基づいて、タスクに対する損失を算出する損失計算手段と、
前記近似手段で用いられる前記近似関数が前記損失の減少に応じて前記ステップ関数に近付くように、前記ステップ関数に対する前記近似関数の近似精度を制御する近似制御手段と、
前記損失が減少するように前記学習対象のパラメータを更新する損失制御手段と
を備える特徴変換学習装置。
【請求項２】
前記損失制御手段は、前記近似特徴量の絶対値が大きくなるにしたがって小さい値を採る関数の値を、前記損失に加えた目的関数を最小化する前記パラメータを算出し、当該算出したパラメータに前記学習対象のパラメータを更新する請求項１記載の特徴変換学習装置。
【請求項３】
前記近似関数には、前記近似精度を変更する関数が近似精度パラメータとして含まれており、
前記近似制御手段は、前記学習対象のパラメータが更新されるにつれて前記近似精度が高くなる方向に前記近似精度パラメータを変更することによって、前記近似関数の近似精度を制御する請求項１記載の特徴変換学習装置。
【請求項４】
前記サンプルパターンから特徴量を抽出する抽出手段をさらに備えている請求項１乃至請求項３の何れか一つに記載の特徴変換学習装置。
【請求項５】
サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出し、
前記近似特徴量に基づいて、タスクに対する損失を算出し、
前記近似特徴量を算出する処理で用いられる前記近似関数が前記損失の減少に応じて前記ステップ関数に近付くように、前記ステップ関数に対する前記近似関数の近似精度を制御し、
前記損失が減少するように前記学習対象のパラメータを更新する特徴変換学習方法。
【請求項６】
サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出する処理と、
前記近似特徴量に基づいて、タスクに対する損失を算出する処理と、
前記近似特徴量を算出する処理で用いられる前記近似関数が前記損失の減少に応じて前記ステップ関数に近付くように、前記ステップ関数に対する前記近似関数の近似精度を制御する処理と、
前記損失が減少するように前記学習対象のパラメータを更新する処理と
をコンピュータに実行させるコンピュータプログラムを保持しているプログラム記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターンから抽出した特徴量を低次元の特徴量に変換する処理に関連する機械学習の技術に関する。
【背景技術】
【０００２】
装置（コンピュータ）は、画像や音声や文章などを識別したり、分類したり、照合する場合には、例えば、その処理対象の画像や音声や文章などのパターンから特徴量を抽出し、当該特徴量に基づいて識別や分類や照合などのタスクを処理（実行）する。このタスクを処理する場合における装置の演算量を削減するために、パターンから抽出した特徴量を低次元の特徴量に変換する処理（ここでは、この処理を特徴変換と記す）が行われる場合がある。特徴変換は特徴量を圧縮する（情報量（データ量）を削減する）処理であるため、装置（コンピュータ）は、特徴変換後の特徴量を利用してタスクを処理することによって、タスクに要する処理時間や使用するメモリ容量を削減できる。換言すれば、装置は、特徴変換を行うことによって、高速、かつ、省メモリでもってタスク（識別、分類あるいは照合など）を処理できる。【０００３】
特徴変換では、例えば、特徴量（特徴ベクトル）を低次元の部分空間へ射影する行列がパラメータとして用いられる。このパラメータ（射影行列）は、例えば機械学習によって得られる。【０００４】
ここで、特徴変換の一例を簡単に説明する。例えば、装置（コンピュータ）は、射影行列（パラメータ）を用いて特徴量を射影し、その後、射影した特徴量（特徴ベクトル）の各要素を二値化する。具体的には、例えば、装置は、特徴量の各要素について、正の値を１に変換し、負の値を−１に変換する。このように各要素が２つの値（例えば、１と−１）の何れか一方で表される特徴量をここでは二値化特徴量と呼ぶこととする。【０００５】
二値化特徴量は、１次元当たり２値しかないので情報量が少なく、これにより、タスクを処理する演算が簡単となる。このため、二値化特徴量を利用することは、３値以上の実数あるいは整数の中から各要素の値が設定される特徴量を利用する場合に比べて、装置における処理の高速化および省メモリ化を促進できる。【０００６】
特許文献１や非特許文献１には、二値化特徴量に特徴変換する処理を機械学習する手法が開示されている。また、非特許文献２には、タスクの種類に特化した特徴変換を機械学習する手法が開示されている。さらに、特許文献２には、ニューラルネットワークに係る機械学習の手法が開示されている。特許文献３には、プロセス制御における機械学習の手法が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１２−１８１５６６号公報
【特許文献２】特開平８−２０２６７４号公報
【特許文献３】特開平１０−２５４５０４号公報
【非特許文献】
【０００８】
【非特許文献１】Y. Weiss, A. Torralba, and R. Fergus, “Spectral Hashing”, NIPS, 2008
【非特許文献２】M. Norouzi, D. J. Fleet, and R. Salakhutdinov, “Hamming Distance Metric Learning”, NIPS, 2012
【発明の概要】
【発明が解決しようとする課題】
【０００９】
前述したように、二値化特徴量は、処理の高速化と装置の省メモリ化を図ることができる。しかしながら、特徴量の各要素が離散的な値を採るために、特徴変換で用いる射影行列（パラメータ）を機械学習する場合における最適化が難しい。【００１０】
また、特許文献１や非特許文献１に開示されている機械学習の手法では、特徴変換前の特徴空間での距離関係を特徴変換後にも保つように特徴変換が学習される。このため、タスクによっては、その機械学習に基づいた特徴変換により得られた特徴量を利用しても精度が良くない場合がある。さらに、非特許文献２に開示されている手法では、特徴変換を機械学習する際に利用する目的関数を特殊な形態に限定していることから、特徴変換を機械学習する際に一般的に利用されてきた目的関数をそのまま流用することができない。このため、非引用文献２に開示されている手法には、機械学習の自由度が低いという欠点がある。【００１１】
本発明は上記課題を解決するために考えられた。すなわち、本発明の主な目的は、二値化特徴量への特徴変換に用いるパラメータ（射影行列）の機械学習に関し、タスクの精度を高めることができるパラメータを得ることができ、高い自由度の機械学習が実現できる技術を提供することにある。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明の特徴変換学習装置は、
サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出する近似手段と、
前記近似特徴量に基づいて、タスクに対する損失を算出する損失計算手段と、
前記近似手段で用いられる前記近似関数が前記損失の減少に応じて前記ステップ関数に近付くように、前記ステップ関数に対する前記近似関数の近似精度を制御する近似制御手段と、
前記損失が減少するように前記学習対象のパラメータを更新する損失制御手段と
を備える。【００１３】
また、本発明の特徴変換学習方法は、
サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出し、
前記近似特徴量に基づいて、タスクに対する損失を算出し、
前記近似特徴量を算出する処理で用いられる前記近似関数が前記損失の減少に応じて前記ステップ関数に近付くように、前記ステップ関数に対する前記近似関数の近似精度を制御し、
前記損失が減少するように前記学習対象のパラメータを更新する。【００１４】
さらに、本発明のプログラム記憶媒体は、
サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出する処理と、
前記近似特徴量に基づいて、タスクに対する損失を算出する処理と、
前記近似特徴量を算出する処理で用いられる前記近似関数が前記損失の減少に応じて前記ステップ関数に近付くように、前記ステップ関数に対する前記近似関数の近似精度を制御する処理と、
前記損失が減少するように前記学習対象のパラメータを更新する処理と
をコンピュータに実行させるコンピュータプログラムを保持している。【００１５】
なお、本発明の上記目的は、本発明の特徴変換学習装置に対応する上記特徴変換学習方法によっても達成される。さらに、本発明の上記目的は、本発明の特徴変換学習装置、特徴変換学習方法をコンピュータによって実現するコンピュータプログラム、当該コンピュータプログラムが格納されているプログラム記憶媒体によっても達成される。
【発明の効果】
【００１６】
本発明によれば、二値化特徴量への特徴変換に用いるパラメータの機械学習に関し、タスクの精度を高めることができるパラメータを得ることができ、高い自由度の機械学習が実現できる。
【図面の簡単な説明】
【００１７】
【図１】本発明に係る第１実施形態の特徴変換学習装置の構成を簡略化して表すブロック図である。
【図２】本発明に係る第２実施形態の特徴変換学習装置の構成を簡略化して表すブロック図である。
【図３】ステップ関数を近似した近似関数の一例を表すグラフである。
【図４】第２実施形態の特徴変換学習装置における動作の一例を表すフローチャートである。
【発明を実施するための形態】
【００１８】
以下に、本発明に係る実施形態を図面を参照しながら説明する。
【００１９】
（第１実施形態）
図１は、本発明に係る第１実施形態の特徴変換学習装置の構成を簡略化して表すブロック図である。この第１実施形態の特徴変換学習装置１は、制御装置２と、記憶装置３とを備えている。記憶装置３は、各種データやコンピュータプログラム（プログラム）１０を保持する記憶媒体である。制御装置２は、例えばＣＰＵ（Central Processing Unit）を備えており、記憶装置３から読み出したプログラム１０を実行することにより、特徴変換学習装置１の全体的な動作を制御する。この第１実施形態では、制御装置２は、プログラム１０に基づいて、機械学習に関する機能を持つことができる。つまり、プログラム１０には、次のような機能を制御装置２（換言すれば、特徴変換学習装置１）に持たせることができる処理手順が表されている。
【００２０】
すなわち、制御装置２は、機能部として、近似部（近似手段）５と、近似制御部（近似制御手段）６と、損失計算部（損失計算手段）７と、損失制御部（損失制御手段）８とを備える。
【００２１】
近似部５は、サンプルパターン（学習用パターン）から抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出する機能を有する。
【００２２】
損失計算部７は、前記近似特徴量に基づいて、タスクに対する損失を算出する機能を有する。なお、そのタスクの種類は予め定められている。
【００２３】
近似制御部６は、近似部５で用いられる前記近似関数が前記損失の減少に応じてステップ関数に近付くように、ステップ関数に対する前記近似関数の近似精度を制御する機能を有する。
【００２４】
損失制御部８は、前記損失が減少するように前記学習対象のパラメータを更新する機能を有する。
【００２５】
この第１実施形態の特徴変換学習装置１は、パターンから抽出した特徴量を二値化特徴量に特徴変換するパラメータを機械学習する際に、不連続な関数（ステップ関数）ではなく、連続的な関数（近似関数）を利用する。これにより、特徴変換学習装置１は、不連続な関数を利用することに因る不都合を回避することができる。例えば、機械学習における損失に関わる処理において利用する損失関数がその不連続な関数に基づく場合には、当該損失関数により算出される損失が所望の損失量となるような損失関数の最適化が難しい。これに対し、損失関数が連続的な関数に基づいている場合には、当該損失関数の最適化が容易となる。このため、特徴変換学習装置１は、機械学習における損失に関わる処理において、想定しているタスクが考慮された損失を得ることが容易となる。これにより、特徴変換学習装置１は、タスクの精度を高めることができる方向に学習対象のパラメータの機械学習を進めることができる。
【００２６】
その上、この特徴変換学習装置１は、損失の減少に応じて（つまり、機械学習が進行するにつれて）近似関数の近似精度を高めることにより、近似関数をステップ関数に近付ける。このため、特徴変換学習装置１は、機械学習が進むにつれて、機械学習で利用する近似特徴量が二値化特徴量に近付く。これにより、特徴変換学習装置１は、機械学習が進行するにつれて、タスクの精度向上を早めることができる。
【００２７】
さらに、この特徴変換学習装置１は、上記のように、不連続な関数（ステップ関数）ではなく、連続的な関数（近似関数）を利用することにより、特定の目的関数を利用しなくて済むので、処理の高速化を図ることができる。
【００２８】
（第２実施形態）
以下に、本発明に係る第２実施形態を説明する。
【００２９】
図２は、第２実施形態の特徴変換学習装置の構成を簡略化して表すブロック図である。この第２実施形態の特徴変換学習装置２０は、大別して、制御装置２１と、記憶装置２２とを有する。記憶装置２２は記憶媒体であり、当該記憶装置２２には、特徴変換学習装置２０の動作を制御するコンピュータプログラム（プログラム）２３や、各種データが格納されている。
【００３０】
制御装置２１は例えばＣＰＵ（Central Processing Unit）を備えている。当該制御装置２１は、記憶装置２２からプログラム２３を読み出し、当該プログラム２３に従って動作することによって各種機能を備えることができる。この第２実施形態では、制御装置２１は、機能部として、抽出部（抽出手段）２５と、学習部（学習手段）２６とを備える。
【００３１】
抽出部２５は、パターンから特徴量を抽出する機能を備えている。この第２実施形態では、特徴変換で利用するパラメータを機械学習するために、サンプルパターン（学習用パターン）が特徴変換学習装置２０に与えられる。抽出部２５は、そのサンプルパターンから特徴量を抽出する。特徴量を抽出する手法には様々な手法が有り、パターンやタスクの種類等を考慮して適宜な手法を採用してよい。ここで、例を挙げると、次のような手法が有る。例えば、パターンが画像である場合には、画像の画素値が特徴量として抽出される。また、画像をフィルタリング処理することにより得られた応答値が特徴量として抽出されることもある。なお、この第２実施形態では、抽出部２５により抽出された特徴量は特徴ベクトルｘと表すこともある。
【００３２】
学習部２６は、抽出部２５により抽出された特徴量（特徴ベクトルｘ）に基づいて、特徴変換で利用するパラメータ（射影行列）を学習（機械学習）する機能を備えている。この学習部２６は、近似部（近似手段）３０と、損失計算部（損失計算手段）３１と、近似制御部（近似制御手段）３２と、損失制御部（損失制御手段）３３とを有している。
【００３３】
この第２実施形態では、機械学習する対象である特徴変換のパラメータは、当該パラメータによる特徴変換後の特徴量がさらに二値化特徴量に変換されることを前提にしたパラメータである。このパラメータ（以下、このパラメータをパラメータＷと記す）は、記憶装置２２、あるいは、制御装置２１に設けられた記憶部３４に格納されている。
【００３４】
近似部３０は、抽出部２５により抽出された特徴量（特徴ベクトルｘ）と、パラメータＷと、予め定められた関数とに基づいて、次のような近似特徴量を算出する機能を備えている。その近似特徴量とは、二値化特徴量を近似した特徴量である。
【００３５】
ところで、特徴量を二値化特徴量に特徴変換することを想定している場合には、その特徴変換のパラメータＷを機械学習するに際し、抽出された特徴量に基づいた二値化特徴量をステップ関数によって算出することが考えられる。しかしながら、二値化特徴量を利用してパラメータＷを機械学習する処理を進めると、後述する損失を計算する処理において、二値化特徴量の各要素の値が不連続であることに起因した不都合が生じる。そこで、この第２実施形態では、近似部３０は、ステップ関数（不連続な関数）に近似している連続的な関数（近似関数）を利用することによって、二値化特徴量を近似した特徴量（近似特徴量）を算出する。すなわち、近似部３０は、特徴ベクトルｘにパラメータＷを重み付けし、当該重み付けした特徴ベクトル（Ｗ・ｘ）を近似関数に変換することによって、近似特徴量を算出する。例えば、近似関数としてシグモイド関数を利用することが考えられ、この場合には、近似特徴量（ベクトル）Ｓは、式（１）のように、シグモイド関数で表される。
【００３６】
2015025472.tif 000003
式（１）において、Ｗは特徴変換のパラメータを表し、ｘは抽出部２５により抽出された特徴ベクトルを表している。また、この明細書中における記号・は、行列積を表す演算記号である。なお、この明細書では、式（１）は、特徴ベクトル（Ｗ・ｘ）を構成する各要素をシグモイド関数の独立変数とした関数によって近似特徴量（ベクトル）Ｓの各要素が構成されることを表す式である。
【００３７】
図３は、式（１）による近似特徴量（ベクトル）Ｓを構成する一要素を表すグラフである。式（１）におけるＷ・ｘの絶対値が大きくなるに従って、近似特徴量Ｓ（換言すれば、シグモイド関数）は、図３における曲線Ｓ１→曲線Ｓ２→曲線Ｓ３というように変化していき、ステップ関数に近付く。すなわち、ステップ関数に対する近似関数の近似精度（換言すれば、二値化特徴量に対する近似特徴量Ｓの近似精度）は、重み付けした特徴ベクトル（Ｗ・ｘ）の絶対値によって変化する。なお、図３においては、横軸は、式（１）における変数（Ｗ・ｘ）であると表されているが、この図３のグラフに表されている曲線Ｓ１，Ｓ２，Ｓ３は、実際には、ｘの変化に対してＳがどのように変化するかを表している。曲線Ｓ１，Ｓ２，Ｓ３の相違は、上記のように、Ｗ・ｘの絶対値の違いである。
【００３８】
なお、近似関数は、シグモイド関数に限定されることはなく、適宜設定してよい。
【００３９】
損失計算部３１は、近似部３０により算出された近似特徴量Ｓと、損失関数とを用いて、予め設定されたタスクに対する損失を算出する機能を備えている。損失とは、特徴ベクトルｘを利用してタスクを実行した場合の精度の悪さに応じて与えられるペナルティの総和Ｌ（Ｗ・ｘ）である。ここでは、近似特徴量Ｓを利用して損失を算出するので、損失計算部３１が算出する損失Ｌ（S（Ｗ・ｘ））は、二値化特徴量に基づいた損失Ｌ（sign(Ｗ・ｘ)）の近似値である。
2015025472.tif 000004
【００４０】
なお、損失計算部３１が利用する損失関数は、予め定められたタスクに対する損失を算出できる損失関数であれば特に限定されず、適宜な損失関数が採用される。
【００４１】
近似制御部３２は、近似部３０で利用する近似関数の近似精度を制御する機能を備えている。すなわち、ステップ関数に基づいた損失関数（以下、損失関数Ｆｓとも記す）を利用して損失を算出する場合には、その算出された損失は、二値化特徴量に基づいた損失と同じになる。しかしながら、その損失関数Ｆｓは不連続な関数であるから、損失が最小となるように、損失関数Ｆｓを最適化することが難しい。
【００４２】
そこで、この第２実施形態における制御装置２１（学習部２６）は、上記のようにステップ関数を近似した連続的な関数（例えばシグモイド関数）を利用する。これにより、その連続的な近似関数に基づいた損失関数（以下、損失関数Ｆｋとも記す）は連続的な関数となるので、制御装置２１は、損失が最小となるように、例えば勾配法などによって損失関数Ｆｋを容易に最適化できる。
【００４３】
ただ、ステップ関数に対する近似関数の近似精度が悪い場合には、その近似関数を利用した損失関数Ｆｋによる損失と二値化特徴量に基づいた損失との差異が大きくなってしまう。このために、損失が最小となるように損失関数Ｆｋを最適化しても、二値化特徴量に基づいた損失は十分には低減しない。これにより、近似精度の悪い近似関数を用いて機械学習した特徴変換のパラメータを利用して得た二値化特徴量に基づいてタスクを実行した場合に、当該タスクの精度が悪くなる。
【００４４】
このようなことを考慮すると、近似関数は、ステップ関数に精度良く近似し、かつ、損失を最小化しやすいように、ある程度滑らかな関数であることが望ましい。このために、近似制御部３２は、近似関数がそのような望ましい関数となるように近似関数の近似精度を制御する。
【００４５】
例えば、近似関数としてシグモイド関数を用いる場合には、ステップ関数に対する近似関数（シグモイド関数）の近似精度は、前述したように、重み付けした特徴ベクトル（Ｗ・ｘ）の絶対値によって変化する。このことにより、近似制御部３２は、抽出部２５により抽出された特徴量（特徴ベクトルｘ）を受け取り、その特徴ベクトルｘに重み付けした特徴ベクトル（Ｗ・ｘ）の絶対値を制御することにより、近似関数の近似精度を制御する。具体的には、例えば、近似制御部３２は、正則化の手法を利用する。正則化を利用する場合には、正則化項は、例えば式（２）のような正則化項Ｒ（Ｗ）が利用される。
2015025472.tif 000005
なお、式（２）において、Ｗは特徴変換のパラメータを表す。
【００４６】
この近似制御部３２は、上記のように近似関数の近似精度を制御し、近似部３０は、その近似精度を持つ近似関数を利用して、前記のように近似特徴量を算出する。
【００４７】
損失制御部３３は、損失計算部３１により算出された損失Ｌ（S（Ｗ・ｘ））と、近似制御部３２から得られる近似精度に関わる情報とに基づいて、損失を低減できる特徴変換のパラメータＷを算出する機能を備えている。なお、ここでは、損失制御部３３によって得られるパラメータをＷ＊と表すこととする。
【００４８】
この第２実施形態では、損失制御部３３は、損失と近似精度に基づいた目的関数の最適化（ここでは最小化）を行うことによって、特徴変換のパラメータＷ＊を算出する。具体的には、例えば、近似制御部３２が正則化を利用する場合には、目的関数Ｐ（Ｗ）は式（３）のように書き表すことができる。
2015025472.tif 000006
【００４９】
なお、式（３）のＬ（S（Ｗ・ｘ））は損失を表し、Ｒ（Ｗ）は正則化項を表している。λは正則化項Ｒ（Ｗ）の強さを決めるパラメータを表している。
【００５０】
損失制御部３３が算出する特徴変換のパラメータＷ＊は式（４）に表すことができる。
2015025472.tif 000007
【００５１】
目的関数Ｐ（Ｗ）は連続的な関数であることから、損失制御部３３は、一般的な非線形最適化で用いられる解法（例えば共役勾配法）によって特徴変換のパラメータＷ＊を算出できる。この算出されたパラメータＷ＊は記憶装置２２あるいは記憶部３４に格納されているパラメータＷに上書き（更新）される。つまり、学習部２６（機能部３０〜３３）の上記のような機能によってパラメータＷ＊が得られる度に、記憶装置２２あるいは記憶部３４のパラメータＷがその新たなパラメータＷ＊でもって上書きされる。換言すれば、学習部２６によって、特徴変換のパラメータＷが機械学習されていく。損失制御部３３は、目的関数Ｐ（Ｗ）を利用する場合には、正則化項Ｒ（Ｗ）が小さくなるパラメータＷを算出する。つまり、正則化項Ｒ（Ｗ）はパラメータＷのノルムが大きくなるにつれて小さい値を採るため、損失制御部３３は、パラメータＷのノルムが大きくなるようにパラメータＷを機械学習していくことになる。換言すれば、重み付けした特徴ベクトル（Ｗ・ｘ）の絶対値が大きくなるように、損失制御部３３は、パラメータＷを機械学習する。すなわち、機械学習がすすむにつれて、近似関数の近似精度は高くなっていく。
【００５２】
このような機械学習によるパラメータＷを利用した特徴変換により得られる二値化特徴量（特徴ベクトル）Ｚは式（５）のように表すことができる。
2015025472.tif 000008
【００５３】
ただし、signはベクトルの各次元の符号を表す値（例えば、正である場合には１、負である場合には−１）を出力する関数（ステップ関数）を表す。
【００５４】
以下に、この第２実施形態の特徴変換学習装置２０における機械学習に関わる動作の一例を図４を参照しつつ説明する。なお、図４は、特徴変換学習装置２０が実行する機械学習に関わる動作の流れを説明するフローチャートである。このフローチャートは、特徴変換学習装置２０において、制御装置２０（ＣＰＵ）が実行するコンピュータプログラムの処理手順を表す。
【００５５】
例えば、制御装置２０の抽出部２５は、サンプルパターン（学習用パターン）が入力すると、当該サンプルパターンから特徴量を抽出する（ステップＳ１０１）。近似制御部３２は、その抽出された特徴量（特徴ベクトルｘ）にパラメータＷを重み付けした特徴ベクトル（Ｗ・ｘ）の絶対値を変化させることによって、近似部３０で用いる近似関数の近似精度を制御する（ステップＳ１０２）。近似部３０は、抽出部２５により抽出された特徴量（特徴ベクトルｘ）と、近似制御部３２により近似精度が制御された近似関数とを利用して、近似特徴量を算出する（ステップＳ１０３）。
【００５６】
その後、損失計算部３１は、算出された近似特徴量に基づいて、予め定められたタスクに対する損失を算出する（ステップＳ１０４）。さらに、損失制御部３３は、損失計算部３１により算出された損失と、近似制御部３２により制御された近似精度とに基づいた目的関数を最適化する（ステップＳ１０５）。すなわち、損失制御部３３は、近似制御部３２の制御を受けながら、損失計算部３１により算出される損失が減少するように、近似部３０で利用するパラメータＷ＊を設定する。そして、損失制御部３３は、そのパラメータＷ＊を記憶装置２２あるいは記憶部３４に格納されているパラメータＷに上書き（更新）する（ステップＳ１０６）。
【００５７】
このような動作を繰り返すことにより、特徴変換学習装置２０は、パラメータＷを機械学習していく。
【００５８】
この特徴変換学習装置２０は、二値化特徴量に特徴変換する計算にて利用するパラメータＷを機械学習する場合に、ステップ関数を連続的な関数に近似した近似関数を利用する。つまり、特徴変換学習装置２０は、サンプルパターンから抽出した特徴量を近似特徴量として特徴変換する際に、その近似関数を利用し、当該近似関数を利用して得た近似特徴量を用いてパラメータWを機械学習する。このように機械学習されたパラメータＷを利用して得られた二値化特徴量に基づいたタスクの精度は高くなる。すなわち、特徴変換学習装置２０は、近似特徴量を利用することによって、タスクに応じた損失を算出できる既存の連続的な損失関数を利用することが可能となる。また、特徴変換学習装置２０は、そのタスクを考慮した損失関数と、ステップ関数に対する近似関数の近似精度（つまり、二値化特徴量に対する近似特徴量の近似精度に応じた値）とに基づいた目的関数を利用して、パラメータＷを機械学習する。このため、特徴変換学習装置２０は、タスクの精度を高めることができるパラメータＷを得ることができる。
【００５９】
その上、特徴変換学習装置２０は、上記のような近似特徴量を利用することによって既存の連続的な損失関数を利用することができるため、不連続な損失関数を利用する場合のような特定の目的関数を使用しなくて済む。これにより、特徴変換学習装置２０は、目的関数の最適化が容易となり、パラメータＷを機械学習する処理の高速化を図ることができる。
【００６０】
（第３実施形態）
以下に、本発明に係る第３実施形態を説明する。なお、この第３実施形態の説明において、第２実施形態と同一名称部分には同一符号を付し、その共通部分の重複説明は省略する。
【００６１】
この第３実施形態では、特徴変換学習装置２０における学習部２６の近似部３０は、第２実施形態と同様に近似特徴量を算出するが、利用する近似関数は、式（６）に表されるシグモイド関数に基づいた関数である。
2015025472.tif 000009
【００６２】
式（６）におけるαは、この近似関数の近似精度を制御するパラメータである。ここでは、（Ｗ・ｘ）の絶対値が一定であれば、近似関数は、αが大きくなるにつれてステップ関数に近付く。
【００６３】
近似制御部３２は、パラメータＷの絶対値を一定に維持したまま近似関数のαを大きくしていくことによって、近似関数の近似精度を制御する機能を備えている。例えば、損失制御部３３が目的関数を最適化する解法として勾配法を利用する場合には、近似制御部３２は、解を１回更新する毎に、式（７）に表されるように一定量ずつαを大きくしていく。
2015025472.tif 000010
【００６４】
なお、式（７）におけるδは予め定められた正の更新幅を表す。
【００６５】
この第３実施形態の特徴変換学習装置２０も、ステップ関数を近似した近似関数を利用して算出した近似特徴量を利用して、特徴変換のパラメータＷを機械学習することから、第２実施形態の効果と同様の効果を得ることができる。
【００６６】
（その他の実施形態）
なお、本発明を第１〜第３の実施形態を例にして説明したが、本発明は、第１〜第３の実施形態に限定されず、様々な実施の形態を採り得る。例えば、第２と第３の実施形態では、特徴変換学習装置２０は、抽出部２５を備えているが、例えば、サンプルパターンから抽出された特徴量が外部から提供される場合には、特徴変換学習装置２０は、抽出部２５を省略してもよい。
以上、上述した実施形態を例にして本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
なお、この出願は、２０１３年８月２２日に出願された日本出願特願２０１３−１７１８７６を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【００６７】
本発明は、画像や音声や文書などを識別したり、分類したり、照合する処理を実行する装置を利用する分野において有効である。
【符号の説明】
【００６８】
１，２０  特徴変換学習装置
５，３０  近似部
６，３２  近似制御部
７，３１  損失計算部
８，３３  損失制御部
【図１】
2015025472.tif 000011
【図２】
2015025472.tif 000012
【図３】
2015025472.tif 000013
【図４】
2015025472.tif 000014
【手続補正書】
【提出日】平成28年1月21日(2016.1.21)
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
以下に、この第２実施形態の特徴変換学習装置２０における機械学習に関わる動作の一例を図４を参照しつつ説明する。なお、図４は、特徴変換学習装置２０が実行する機械学習に関わる動作の流れを説明するフローチャートである。このフローチャートは、特徴変換学習装置２０において、制御装置２１（ＣＰＵ）が実行するコンピュータプログラムの処理手順を表す。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００５５
【補正方法】変更
【補正の内容】
【００５５】
例えば、制御装置２１の抽出部２５は、サンプルパターン（学習用パターン）が入力すると、当該サンプルパターンから特徴量を抽出する（ステップＳ１０１）。近似制御部３２は、その抽出された特徴量（特徴ベクトルｘ）にパラメータＷを重み付けした特徴ベクトル（Ｗ・ｘ）の絶対値を変化させることによって、近似部３０で用いる近似関数の近似精度を制御する（ステップＳ１０２）。近似部３０は、抽出部２５により抽出された特徴量（特徴ベクトルｘ）と、近似制御部３２により近似精度が制御された近似関数とを利用して、近似特徴量を算出する（ステップＳ１０３）。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出する近似手段と、
前記近似特徴量に基づいて、タスクに対する損失を算出する損失計算手段と、
前記近似手段で用いられる前記近似関数が前記損失の減少に応じて前記ステップ関数に近付くように、前記ステップ関数に対する前記近似関数の近似精度を制御する近似制御手段と、
前記損失が減少するように前記学習対象のパラメータを更新する損失制御手段と
を備える特徴変換学習装置。
【請求項２】
前記損失制御手段は、前記近似特徴量の絶対値が大きくなるにしたがって小さい値を採る関数の値を、前記損失に加えた目的関数を最小化する前記パラメータを算出し、当該算出したパラメータに前記学習対象のパラメータを更新する請求項１記載の特徴変換学習装置。
【請求項３】
前記近似関数には、前記近似精度を変更する関数が近似精度パラメータとして含まれており、
前記近似制御手段は、前記学習対象のパラメータが更新されるにつれて前記近似精度が高くなる方向に前記近似精度パラメータを変更することによって、前記近似関数の近似精度を制御する請求項１記載の特徴変換学習装置。
【請求項４】
前記サンプルパターンから特徴量を抽出する抽出手段をさらに備えている請求項１乃至請求項３の何れか一つに記載の特徴変換学習装置。
【請求項５】
サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出し、
前記近似特徴量に基づいて、タスクに対する損失を算出し、
前記近似特徴量を算出する処理で用いられる前記近似関数が前記損失の減少に応じて前記ステップ関数に近付くように、前記ステップ関数に対する前記近似関数の近似精度を制御し、
前記損失が減少するように前記学習対象のパラメータを更新する特徴変換学習方法。
【請求項６】
サンプルパターンから抽出された特徴量に学習対象のパラメータを重み付けした特徴量を、ステップ関数に近似した連続的な近似関数の変数に代入することによって近似特徴量を算出する処理と、
前記近似特徴量に基づいて、タスクに対する損失を算出する処理と、
前記近似特徴量を算出する処理で用いられる前記近似関数が前記損失の減少に応じて前記ステップ関数に近付くように、前記ステップ関数に対する前記近似関数の近似精度を制御する処理と、
前記損失が減少するように前記学習対象のパラメータを更新する処理と
をコンピュータに実行させる処理手順が示されているコンピュータプログラム。
【国際調査報告】
2015025472.tif 000015
2015025472.tif 000016
2015025472.tif 000017
2015025472.tif 000018