(57)【要約】  カーネル関数作成部８１は、データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義する。モデル学習部８２は、第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行う。コンポーネント拡張部８３は、学習された線形モデルを展開して、データの新たなコンポーネント表現である拡張コンポーネント表現を定義する。拡張モデル生成部８４は、拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成する。
2018150445.tif 000002
【特許請求の範囲】
【請求項１】
データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義するカーネル関数作成部と、
前記第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行うモデル学習部と、
学習された線形モデルを展開して、前記データの新たなコンポーネント表現である拡張コンポーネント表現を定義するコンポーネント拡張部と、
前記拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成する拡張モデル生成部とを備えた
ことを特徴とするモデル生成システム。
【請求項２】
カーネル関数作成部は、ランダムフーリエ特徴で第二カーネル関数を近似し、近似された第二カーネル関数の引数を二次元特徴表現で表した第一カーネル関数を定義する
請求項１記載のモデル生成システム。
【請求項３】
コンポーネント拡張部は、データの単一の特徴ごとに関連する全ての項の和に基づいて計算されるコンポーネントと、全ての２つの特徴間の相互作用効果を示すコンポーネントとを含む拡張コンポーネントを定義する
請求項１または請求項２記載のモデル生成システム。
【請求項４】
拡張モデル生成部は、Ｌ１正則化を用いて拡張モデルを学習する
請求項１から請求項３のうちのいずれか１項に記載のモデル生成システム。
【請求項５】
拡張モデル生成部は、重みとコンポーネントとの積を部分的貢献度として算出する
請求項１から請求項４のうちのいずれか１項に記載のモデル生成システム。
【請求項６】
コンポーネント拡張部は、展開された線形モデルのうち、同じ特徴または特徴の組み合わせごとに同じ項を対応させて、拡張コンポーネント表現を定義する
請求項１から請求項５のうちのいずれか１項に記載のモデル生成システム。
【請求項７】
コンポーネント拡張部は、定義された線形モデルをランダムフーリエ特徴および三角関数の拡張に基づいて展開することにより、拡張コンポーネントを定義する
請求項１から請求項６のうちのいずれか１項に記載のモデル生成システム。
【請求項８】
コンポーネント拡張部は、線形モデルをテイラー展開により展開する
請求項１から請求項７のうちのいずれか１項に記載のモデル生成システム。
【請求項９】
データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義し、
前記第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行い、
学習された線形モデルを展開して、前記データの新たなコンポーネント表現である拡張コンポーネント表現を定義し、
前記拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成する
ことを特徴とするモデル生成方法。
【請求項１０】
ランダムフーリエ特徴で第二カーネル関数を近似し、近似された第二カーネル関数の引数を二次元特徴表現で表した第一カーネル関数を定義する
請求項９記載のモデル生成方法。
【請求項１１】
コンピュータに、
データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義するカーネル関数作成処理、
前記第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行うモデル学習処理、
学習された線形モデルを展開して、前記データの新たなコンポーネント表現である拡張コンポーネント表現を定義するコンポーネント拡張処理、および、
前記拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成する拡張モデル生成処理
を実行させるためのモデル生成プログラム。
【請求項１２】
コンピュータに、
カーネル関数作成処理で、ランダムフーリエ特徴で第二カーネル関数を近似させ、近似された第二カーネル関数の引数を二次元特徴表現で表した第一カーネル関数を定義させる
請求項１１記載のモデル生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カーネル法に基づいてモデルを生成するモデル生成システム、モデル生成方法およびモデル生成プログラムに関する。
【背景技術】
【０００２】
近年、トレーニングデータから予測モデルを学習することが一般に行われており、予測モデルの精度（すなわち、性能）は重要である。精度が高いモデルとして、例えば、カーネルマシンやニューラルネットワークなどが挙げられる。【０００３】
一方、例えば、マーケティングや医療の分野において予測モデルを利用する場合、その予測モデルの解釈性もまた重要である。解釈性の高いモデルとして、例えば、加法モデルが挙げられる。【０００４】
なお、非特許文献１には、解釈性の高いモデルの性質について記載されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Zachary C. Lipton，"The Mythos of Model Interpretability"，ICML Workshop on Human Interpretability in Machine Learning (WHI 2016), New York, 10 Jun 2016
【発明の概要】
【発明が解決しようとする課題】
【０００６】
機械学習の分野において、上述する解釈可能性が明確に定義されているわけではない。例えば、非特許文献１には、解釈性の高いモデルの性質として、各（入力）特徴の（出力）ラベルへの影響が明確であること、学習されたモデルが図示できること、が挙げられている。【０００７】
解釈性の観点から、モデルのタイプを、以下の「ホワイトボックスモデル」および「ブラックボックスモデル」の２つに分類して説明する。「ホワイトボックスモデル」に分類されるモデルは、例えば、一般化加法モデル、スパース加法モデルである。これらのモデルは、例えば、以下の式１のように表すことができる。式１に示す各項のことを、コンポーネントと記すこともある。例えば、ｆＤ（Feature D ）は、コンポーネントＤと記される。【０００８】
ｆ（ｘ）＝ｆ１（Feature 1 ）＋ｆ２（Feature 2 ）＋…＋ｆＤ（Feature D ）＋…
（式１）【０００９】
このような加算構造を有する決定関数ｆ（ｘ）では、出力に対する各コンポーネント（より詳しくは、各特徴）の部分的な寄与度合いや、特徴間の相互作用を解釈可能である。このような解釈性が高いモデルは、簡素である一方、一般に性能は低いという技術的課題を有する。【００１０】
「ブラックボックスモデル」に分類されるモデルは、例えば、上述するカーネルマシン、ディープニューラルネットワークである。これらは、強力なモデルにより良好なパフォーマンスを得ることが可能である。しかし、モデルの複雑性により、たいてい解釈が困難であるという技術的課題がある。【００１１】
そこで、本発明は、性能を維持しつつ解釈性の高いモデルを生成できるモデル生成システム、モデル生成方法およびモデル生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明によるモデル生成システムは、データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義するカーネル関数作成部と、第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行うモデル学習部と、学習された線形モデルを展開して、データの新たなコンポーネント表現である拡張コンポーネント表現を定義するコンポーネント拡張部と、拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成する拡張モデル生成部とを備えたことを特徴とする。【００１３】
本発明によるモデル生成方法は、データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義し、第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行い、学習された線形モデルを展開して、データの新たなコンポーネント表現である拡張コンポーネント表現を定義し、拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成することを特徴とする。【００１４】
本発明によるモデル生成プログラムは、コンピュータに、データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義するカーネル関数作成処理、第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行うモデル学習処理、学習された線形モデルを展開して、データの新たなコンポーネント表現である拡張コンポーネント表現を定義するコンポーネント拡張処理、および、拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成する拡張モデル生成処理を実行させることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、性能を維持しつつ解釈性の高いモデルを生成できるという技術的効果を奏する。
【図面の簡単な説明】
【００１６】
【図１】本発明によるモデル生成システムの一実施形態を示すブロック図である。
【図２】入力されるデータの例を示す説明図である。
【図３】単体の特徴を表すコンポーネントの貢献度を可視化した例を示す説明図である。
【図４】相互作用効果を表すコンポーネントの貢献度を可視化した例を示す説明図である。
【図５】モデル生成システムの動作例を示すフローチャートである。
【図６】本発明によるモデル生成システムの概要を示すブロック図である。
【図７】少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【００１７】
性能を維持しつつ解釈性の高いモデルを生成するためのアプローチとして、上述する「ホワイトボックスモデル」に基づいて性能を向上させる方法と、上述する「ブラックボックスモデル」に基づいて解釈性を向上させる方法が考えられる。本発明では、「ブラックボックスモデル」に分類されるカーネルマシンに着目し、解釈性を向上させる方法を説明する。
【００１８】
カーネル関数κ：ＲＤ×ＲＤ→Ｒは、以下の式２で表される。式２において、Ηは高次元のヒルベルト空間を表し、φは、ＲＤ→Ηの特徴マップを表す。
【００１９】
κ（ｘ，ｚ）＝〈φ（ｘ），φ（ｚ）〉Η    （式２）
【００２０】
カーネルマシンは、データを高次元空間にマッピングすることによって複雑な表現をモデル化できるため強力である。しかし、カーネルマシンは、以下に例示する式３のκ（ｘ，ｘｉ）の部分のように、いわゆるブラックボックス的な性質（例えば、ＳＶＭ（support vector machine）決定関数）を有するため、解釈が困難である。
【００２１】
【数１】
2018150445.tif 000003
【００２２】
また、カーネルマシンでは、大規模データを扱うような場合、カーネル行列の計算の必要性から、記憶装置や計算量の問題が生じる。
【００２３】
本発明では、計算量を爆発させることなく、解釈性が高くかつ予測性能が高いモデルを学習することが可能になる。
以下、本発明の実施形態を図面を参照して説明する。
【００２４】
図１は、本発明によるモデル生成システムの一実施形態を示すブロック図である。本実施形態のモデル生成システム１００は、入力部１０と、モデル生成部２０と、出力部３０とを備えている。
【００２５】
入力部１０は、後述するモデル生成部２０がモデルの学習に用いるデータを入力する。入力するデータは、モデル生成システムが備える記憶部（図示せず）に記憶されているデータであってもよいし、通信ネットワーク経由で他の装置から受信するデータであってもよい。
【００２６】
図２は、入力されるデータの例を示す説明図である。図２に例示するデータは、解約予測に用いられるトレーニングデータを示している。具体的には、図２に例示するデータは、Ｎ人の顧客に関する特徴（例えば、Ｖｏｉｃｅ  Ｍａｉｌの使用量、夜間の利用時間、カスタマーサービスセンタへの問い合わせ回数など）が、その顧客が解約したか否か（解約した場合が１、解約していない場合が−１）と対応付けられている。
【００２７】
以下の説明では、１以上の特徴を含むトレーニングデータをｘと記し、予測したい変数（目的変数）をｙと記す。
【００２８】
モデル生成部２０は、カーネル関数作成部２１と、モデル学習部２２と、コンポーネント拡張部２３と、拡張モデル生成部２４とを含む。
【００２９】
カーネル関数作成部２１は、線形結合で表されるモデルの定義に用いられるカーネル関数を作成する。以下の説明では、一般的に用いられるカーネル関数と区別するため、本実施形態で用いられる関数をＳＷＢ（Ｓｃａｌａｂｌｅ  Ｗｈｉｔｅ−Ｂｏｘ）カーネル関数と記す。ここでは、広く知られたガウシアンカーネルに基づいてＳＷＢカーネル関数を作成する方法を説明する。ただし、ＳＷＢカーネル関数の作成に用いられるカーネル関数は、ガウシアンカーネルに限定されない。
【００３０】
ガウシアンカーネル関数は、以下の式４で定義される。
【００３１】
【数２】
2018150445.tif 000004
【００３２】
カーネル行列を計算することを避けるため、カーネル関数作成部２１は、Ｒａｎｄｏｍ  Ｆｏｕｒｉｅｒ  Ｆｅａｔｕｒｅｓ（ランダムフーリエ特徴：ＲＦＦ）を用いて上記式４に示すガウシアンカーネル関数を近似する。ガウシアンカーネル関数の近似式は、以下の式５で表される。
【００３３】
【数３】
2018150445.tif 000005
【００３４】
ここで、写像φハット（ｘ）（φハットは、φに上付き＾）は、以下の式６で表される。
【００３５】
【数４】
2018150445.tif 000006
【００３６】
ＲＦＦを用いてガウシアンカーネル関数を近似することで、カーネルマシンの拡張性問題を緩和できる。
【００３７】
次に、ｘから抽出した２つの特徴の組み合わせの表現を定義する。具体的には、ｘのｐ番目の特徴とｑ番目の特徴とを含むデータをｘ（ｐ，ｑ）と表現する。以下、２つの特徴の組み合わせを表すｘ（ｐ，ｑ）のことを二次元特徴表現と記す。また、同様に、ｘのｐ番目の特徴を（１つのみ）含むデータを、ｘ（ｐ）と記す。このとき、上記式５は、以下の式７のように表記できる。
【００３８】
【数５】
2018150445.tif 000007
【００３９】
カーネル関数作成部２１は、上記式７で表されるガウシアンカーネル関数を用いて、以下の式８に示すＳＷＢカーネル関数を定義する。
【００４０】
【数６】
2018150445.tif 000008
【００４１】
具体的には、カーネル関数作成部２１は、データの２つの特徴の組み合わせを表す二次元特徴表現を用いてカーネル関数を定義する。上記式８の場合、カーネル関数作成部２１は、二次元特徴表現を用いて表される近似されたガウシアンカーネルの総和でＳＷＢカーネル関数を定義する。このとき、二次元特徴表現の組み合わせＫは、全部でＤＣ２組になる。
【００４２】
式８において、φＳＷＢは、ＲＤ→ＲＫｄの写像であり、φＳＷＢは、上記式６より、以下の式９で表される。
【００４３】
【数７】
2018150445.tif 000009
【００４４】
モデル学習部２２は、予測に用いるモデルを学習する。まず、モデル学習部２２は、線形モデルを定義する。具体的には、モデル学習部２２は、ＳＢＷカーネル関数で用いられるｘの写像φＳＷＢと重みｗとの内積を含む線形モデルを以下の式１０のように定義する。
【００４５】
【数８】
2018150445.tif 000010
【００４６】
式１０において、重みｗは、以下の式１１で定義される。
【００４７】
【数９】
2018150445.tif 000011
【００４８】
モデル学習部２２は、定義した線形モデルを用いて、入力されたデータを基にモデルを学習する。具体的には、モデル学習部２２は、以下の式１２で定義される線形問題を解くことにより、上記式１０に含まれるｗ及びｂチルダ（ｂチルダは、ｂに上付き〜）を学習する。
【００４９】
【数１０】
2018150445.tif 000012
【００５０】
式１２において、例えば、以下に示す式１３が、ＳＶＭ分類に対応し、以下に示す式１４が、リッジ回帰に対応する。
【００５１】
【数１１】
2018150445.tif 000013
【００５２】
コンポーネント拡張部２３は、定義された線形モデルを展開することにより各データｘの新たなコンポーネント表現を定義する。以下の説明では、新たなコンポーネント表現のことを拡張コンポーネント表現と記すこともある。
【００５３】
本実施形態では、線形モデル（より具体的には、線形モデルに含まれる内積部分）の展開にテイラー展開を利用する。テイラー展開を利用すると、コサイン関数について、以下の式１５が得られる。
【００５４】
【数１２】
2018150445.tif 000014
【００５５】
多項式定理により、式１５の右辺（ｗｉＴｘ）２ｎは、以下の式１６のように展開できる。
【００５６】
【数１３】
2018150445.tif 000015
【００５７】
上記式１５および式１６より、以下に示す式１７が得られる。
【００５８】
【数１４】
2018150445.tif 000016
【００５９】
式１７において、ｃｉ（ｐ）およびｃｉ（１，．．．，Ｄ）は、以下の式１８および式１９で表される。
【００６０】
【数１５】
2018150445.tif 000017
【００６１】
上記式１５から、式１９と同様、サイン関数についても以下に示す式２０が得られる。
【００６２】
【数１６】
2018150445.tif 000018
【００６３】
上記式１７および式２０に示す三角関数の拡張により、コンポーネント拡張部２３は、上記式１０で表されるモデルに含まれる〈ｗ，φＳＷＢ（ｘ）〉ＲＫｄを、以下の式２１に示すように、いくつかの項に抽出できる。
【００６４】
【数１７】
2018150445.tif 000019
【００６５】
コンポーネント拡張部２３は、同じ特徴または特徴のペアに同じ項を対応させることで、以下の式２２に示すような、各データの新しいコンポーネント表現ｘチルダ（ｘチルダは、ｘに上付き〜）を定義する。すなわち、同じ特徴またはペアに同じ項を対応させることで、各データの新しいコンポーネント表現（拡張コンポーネント）が得られる。
【００６６】
【数１８】
2018150445.tif 000020
【００６７】
式２２において、ｘチルダ（ｐ）は、単一のｐ番目の特徴に関連する全ての項の和に基づいて計算されるコンポーネントである。また、ｘチルダ（ｐ，ｑ）は、ｐ番目の特徴とｑ番目の特徴との間の相互作用効果に対応する。ｘチルダのコンポーネントの数は、Ｄ＋（Ｄ×（Ｄ−１））／２である。
【００６８】
このように、コンポーネント拡張部２３は、定義された線形モデルをＲＦＦおよび三角関数の拡張に基づいて展開することにより、単一の特徴ごとに関連する全ての項の和に基づいて計算されるコンポーネントと、全ての２つの特徴間の相互作用効果を示すコンポーネントとを含む拡張コンポーネントを定義する。
【００６９】
このように定義された拡張コンポーネントは、１つの特徴、および、２つの特徴の相互作用を表すことが可能である。
【００７０】
拡張モデル生成部２４は、定義された拡張コンポーネントを用いてモデルを作成し、作成されたモデルを学習する。具体的には、拡張モデル生成部２４は、以下の式２３に示すように、定義された拡張コンポーネントを説明変数とする決定関数を定義する。
【００７１】
【数１９】
2018150445.tif 000021
【００７２】
式２３において、βは、以下の式２４で定義される。
【００７３】
【数２０】
2018150445.tif 000022
【００７４】
拡張モデル生成部２４は、以下に示す式２５の問題を解くことにより疎な結果を獲得する。具体的には、拡張モデル生成部２４は、以下に示す式２５をＬ１正則化で解くことにより、重要でないコンポーネントの重み（係数）を０にする（すなわち、疎な結果を得る）。
【００７５】
【数２１】
2018150445.tif 000023
【００７６】
また、拡張モデル生成部２４は、各コンポーネントの貢献を解釈できるように、各コンポーネントの部分的な貢献度を示す関数を、以下に示す式２６および式２７のように定義する。
【００７７】
【数２２】
2018150445.tif 000024
【００７８】
上記式２６および式２７の定義により、各コンポーネントの部分的な貢献度が可視化できる。このことから、生成されたモデルは、結果として解釈性が高いモデルと言える。
【００７９】
出力部３０は、モデル生成部２０による処理結果を出力する。出力部３０は、例えば、生成されたモデルを可視化して表示してもよいし、上記式２６または式２７に基づいて、各コンポーネントの部分的貢献度を表示してもよい。
【００８０】
図３は、単体の特徴を表すコンポーネントの貢献度を可視化した例を示す説明図である。図３に示す例では、横軸方向に単体の特徴を表すコンポーネントの数値を表し、縦軸方向に部分的な貢献度を表す。例えば、図３の中央に記載されたグラフは、横軸方向に税金（具体的には、一万ドルあたりの税額）を示し、縦軸方向に売り上げへの貢献度を示す。図３を参照することにより、税額が増えるにしたがって、売り上げへの貢献度が下がることが確認できる。
【００８１】
また、図４は、相互作用効果を表すコンポーネントの貢献度を可視化した例を示す説明図である。図４に示す例では、縦方向および横方向に総合作用効果を表す特徴の組をそれぞれ示し、部分的な貢献度を色の変化で示していることを表す。例えば、図４に記載されたグラフは、横軸方向に割合（具体的には、１９４０年以前に建設された所有者占有ユニットの割合）を示し、縦軸方向に黒人の割合から算出される値（具体的には、Ｂｋを黒人の割合としたとき、１０００（Ｂｋ−０．６３）＾２、で算出される値）を示す。また、グラフの網掛けが、売り上げへの貢献度を示す。
【００８２】
入力部１０と、モデル生成部２０（より詳しくは、カーネル関数作成部２１と、モデル学習部２２と、コンポーネント拡張部２３と、拡張モデル生成部２４）と出力部３０とは、プログラム（モデル生成プログラム）に従って動作するコンピュータのＣＰＵによって実現される。
【００８３】
例えば、プログラムは、モデル生成システム１００が備える記憶部（図示せず）に記憶され、ＣＰＵは、そのプログラムを読み込み、プログラムに従って、入力部１０、モデル生成部２０（より詳しくは、カーネル関数作成部２１と、モデル学習部２２と、コンポーネント拡張部２３と、拡張モデル生成部２４）および出力部３０として動作してもよい。
【００８４】
また、入力部１０と、モデル生成部２０（より詳しくは、カーネル関数作成部２１と、モデル学習部２２と、コンポーネント拡張部２３と、拡張モデル生成部２４）と出力部３０とは、それぞれが専用のハードウェアで実現されていてもよい。
【００８５】
次に、本実施形態のモデル生成システムの動作を説明する。図５は、本実施形態のモデル生成システムの動作例を示すフローチャートである。
【００８６】
まず、カーネル関数作成部２１は、二次元特徴表現を用いて、上記式８に示すようなＳＷＢカーネル関数を定義する（ステップＳ１１）。具体的には、カーネル関数作成部２１は、ＲＦＦでカーネル関数を近似し、近似されたカーネル関数の引数を二次元特徴表現で表したＳＷＢ関数を定義する。
【００８７】
次に、モデル学習部２２は、上記式１０に示すように、ＳＷＢカーネル関数で用いられる写像φと重みｗとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行う（ステップＳ１２）。
【００８８】
コンポーネント拡張部２３は、学習された線形モデルを展開して、拡張コンポーネント表現を定義する（ステップＳ１３）。具体的には、コンポーネント拡張部２３は、上記式２２に示すように、データの単一の特徴ごとに関連する全ての項の和に基づいて計算されるコンポーネントと、全ての２つの特徴間の相互作用効果を示すコンポーネントとを含む拡張コンポーネントを定義する。
【００８９】
このような拡張コンポーネントを定義するにあたり、コンポーネント拡張部２３は、定義された線形モデルをＲＦＦおよび上記三角関数の拡張に基づいてテイラー展開する。そして、コンポーネント拡張部２３は、展開された線形モデルのうち、同じ特徴または特徴の組み合わせごとに同じ項を対応させて、拡張コンポーネント表現を定義する。
【００９０】
拡張モデル生成部２４は、上記式２３に示すように、拡張コンポーネント表現によるデータｘチルダと重みβとの内積を含む拡張モデルを生成する（ステップＳ１４）。そして、拡張モデル生成部２４は、Ｌ１正則化を用いて拡張モデルを学習する（ステップＳ１５）。また、拡張モデル生成部２４は、内積〈β，ｘチルダ〉（すなわち、重みとコンポーネントとの積）を部分的貢献度として算出する（ステップＳ１６）。
【００９１】
以上のように、本実施形態では、カーネル関数作成部２１が二次元特徴表現を用いてＳＷＢカーネル関数を定義し、モデル学習部２２が、ＳＷＢカーネル関数で用いられる写像φと重みｗとの内積を含む線形モデルを定義して学習を行う。そして、コンポーネント拡張部２３が、学習された線形モデルを展開して拡張コンポーネント表現（ｗチルダ）を定義し、拡張モデル生成部２４、ｗチルダと重みβとの内積を含む拡張モデルを生成する。
【００９２】
そのような構成により、性能を維持しつつ解釈性の高いモデルを生成できる。すなわち、本実施形態では、性能の高いカーネル法をベースとし、拡張コンポーネントとして二次元特徴表現を生成することで、性能を維持しつつ解釈性を向上させることが可能になる。
【００９３】
なお、本実施形態では、カーネルとしてガウシアンカーネルを例示したが、例えば、プラシアンカーネルやＭａｔｅｒｎカーネルなどの他のシフトバリアントカーネルであってもよい。
【００９４】
また、本実施形態のモデル生成方法は、分類タスクだけでなく、回帰タスク用にも設計されているため、モデルを生成する一般的な方法として利用可能である。また、上記理由により、本実施形態のモデル生成方法を、教師なし学習タスクにも使用することが可能である。
【００９５】
次に、本発明の概要を説明する。図６は、本発明によるモデル生成システムの概要を示すブロック図である。本発明によるモデル生成システム８０は、データ（例えば、ｘ）の２つの特徴の組み合わせを表す二次元特徴表現（例えば、ｘ（ｐ，ｑ））を用いて第一カーネル関数（例えば、ＳＷＢカーネル関数）を定義するカーネル関数作成部８１（例えば、カーネル関数作成部２１）と、第一カーネル関数で用いられる写像（例えば、φＳＷＢ）と第一の重み（例えば、ｗ）との内積（例えば、〈ｗ，φＳＷＢ（ｘ）〉）を含む線形モデル（例えば、上記式１０で表されるモデル）を定義し、定義された線形モデルで学習を行うモデル学習部８２（例えば、モデル学習部２２）と、学習された線形モデルを展開して、データの新たなコンポーネント表現である拡張コンポーネント表現（例えば、上記式２２に示すｘチルダ）を定義するコンポーネント拡張部８３（例えば、コンポーネント拡張部２３）と、拡張コンポーネント表現によるデータと第二の重み（例えば、β）との内積（例えば、〈β，ｘチルダ〉）を含む拡張モデル（例えば、上記式２３に示すモデル）を生成する拡張モデル生成部８４（例えば、拡張モデル生成部８４）とを備えている。
【００９６】
そのような構成により、性能を維持しつつ解釈性の高いモデルを生成できる。予測性能と解釈可能性とを両立したモデルは、現実世界の様々な問題を解決するために応用できる。例えば、人命にかかわる医療や、ライフラインを支える社会インフラストラクチャ、行政による社会保障など、実社会における予測分析では、高い予測性能が求められていることは当然として、予測の根拠を利用者へわかりやすく説明できることも求められることが多い。予測精度が高くても挙動がブラックボックスである予測モデルは、現実世界における一部の問題の解決には応用することができるが、このような予測モデルを応用することができない問題も多数存在する。一方で、線形回帰や決定木などは、単純でわかりやすい反面、複雑なビッグデータの挙動を捉える事が出来ず、予測精度が低くなってしまう。本発明によれば、予測性能と解釈可能性とを両立した予測モデルを学習することができる。このような予測モデルは、一般的な予測モデルと比較して、現実世界の様々な問題を解決するために応用できる。このように、本発明は、単なる数学的処理の改良にかかる発明では無く、現実世界の問題を解決するような予測モデルを学習するコンピュータそのものの性能を改善する発明である。
【００９７】
カーネル関数作成部は、ランダムフーリエ特徴（ＲＦＦ）で第二カーネル関数（例えば、ガウシアンカーネル関数）を近似し、近似された第二カーネル関数の引数を二次元特徴表現で表した第一カーネル関数を定義してもよい。
【００９８】
そのような構成により、上記効果に加えて、拡張性を高めることが可能になる結果、コンピュータの性能を格段に向上させることが可能になる。このように、本発明は、解釈性が高くかつ予測性能が高いモデルを学習できるように、機械学習処理を行うコンピュータそのものの機能を改善する。また、本発明は、解釈性が高く、且つ、予測性能が高いモデルを学習する際に、計算量が爆発しないように、機械学習処理を行うコンピュータそのものの機能を改善する。
【００９９】
また、具体的には、コンポーネント拡張部８３は、データの単一の特徴ごとに関連する全ての項の和に基づいて計算されるコンポーネントと、全ての２つの特徴間の相互作用効果を示すコンポーネントとを含む拡張コンポーネントを定義してもよい。
【０１００】
また、拡張モデル生成部８４は、Ｌ１正則化を用いて拡張モデルを学習してもよい。このようにして学習された拡張モデルは、重要でないコンポーネントの重みを０にすることができる（すなわち、疎にすることができる）ため、より重要なコンポーネントを特定することが可能になる。
【０１０１】
また、拡張モデル生成部８４は、重みとコンポーネントとの積（例えば、上記式２６および式２７）を部分的貢献度として算出してもよい。このような部分的貢献度を算出することで、個々のコンポーネントに含まれる特徴と貢献度との傾向を把握できる。
【０１０２】
また、コンポーネント拡張部８３は、展開された線形モデルのうち、同じ特徴または特徴の組み合わせごとに同じ項を対応させて、拡張コンポーネント表現を定義してもよい。
【０１０３】
また、コンポーネント拡張部８３は、定義された線形モデルをランダムフーリエ特徴および三角関数の拡張に基づいて展開することにより、拡張コンポーネントを定義してもよい。
【０１０４】
また、コンポーネント拡張部は、線形モデルをテイラー展開により展開してもよい。
【０１０５】
図７は、少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ１０００は、ＣＰＵ１００１、主記憶装置１００２、補助記憶装置１００３、インタフェース１００４を備えている。
【０１０６】
上述のモデル生成システムは、それぞれコンピュータ１０００に実装される。そして、上述した各処理部の動作は、プログラム（モデル生成プログラム）の形式で補助記憶装置１００３に記憶されている。ＣＰＵ１００１は、プログラムを補助記憶装置１００３から読み出して主記憶装置１００２に展開し、当該プログラムに従って上記処理を実行する。
【０１０７】
なお、少なくとも１つの実施形態において、補助記憶装置１００３は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース１００４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ１０００に配信される場合、配信を受けたコンピュータ１０００が当該プログラムを主記憶装置１００２に展開し、上記処理を実行してもよい。
【０１０８】
また、当該プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、当該プログラムは、前述した機能を補助記憶装置１００３に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【０１０９】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０１１０】
（付記１）データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義するカーネル関数作成部と、前記第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行うモデル学習部と、学習された線形モデルを展開して、前記データの新たなコンポーネント表現である拡張コンポーネント表現を定義するコンポーネント拡張部と、前記拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成する拡張モデル生成部とを備えたことを特徴とするモデル生成システム。
【０１１１】
（付記２）カーネル関数作成部は、ランダムフーリエ特徴で第二カーネル関数を近似し、近似された第二カーネル関数の引数を二次元特徴表現で表した第一カーネル関数を定義する付記１記載のモデル生成システム。
【０１１２】
（付記３）コンポーネント拡張部は、データの単一の特徴ごとに関連する全ての項の和に基づいて計算されるコンポーネントと、全ての２つの特徴間の相互作用効果を示すコンポーネントとを含む拡張コンポーネントを定義する付記１または付記２記載のモデル生成システム。
【０１１３】
（付記４）拡張モデル生成部は、Ｌ１正則化を用いて拡張モデルを学習する付記１から付記３のうちのいずれか１つに記載のモデル生成システム。
【０１１４】
（付記５）拡張モデル生成部は、重みとコンポーネントとの積を部分的貢献度として算出する付記１から付記４のうちのいずれか１つに記載のモデル生成システム。
【０１１５】
（付記６）コンポーネント拡張部は、展開された線形モデルのうち、同じ特徴または特徴の組み合わせごとに同じ項を対応させて、拡張コンポーネント表現を定義する付記１から付記５のうちのいずれか１つに記載のモデル生成システム。
【０１１６】
（付記７）コンポーネント拡張部は、定義された線形モデルをランダムフーリエ特徴および三角関数の拡張に基づいて展開することにより、拡張コンポーネントを定義する付記１から付記６のうちのいずれか１つに記載のモデル生成システム。
【０１１７】
（付記８）コンポーネント拡張部は、線形モデルをテイラー展開により展開する付記１から付記７のうちのいずれか１つに記載のモデル生成システム。
【０１１８】
（付記９）データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義し、前記第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行い、学習された線形モデルを展開して、前記データの新たなコンポーネント表現である拡張コンポーネント表現を定義し、前記拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成することを特徴とするモデル生成方法。
【０１１９】
（付記１０）ランダムフーリエ特徴で第二カーネル関数を近似し、近似された第二カーネル関数の引数を二次元特徴表現で表した第一カーネル関数を定義する付記９記載のモデル生成方法。
【０１２０】
（付記１１）コンピュータに、データの２つの特徴の組み合わせを表す二次元特徴表現を用いて第一カーネル関数を定義するカーネル関数作成処理、前記第一カーネル関数で用いられる写像と第一の重みとの内積を含む線形モデルを定義し、定義された線形モデルで学習を行うモデル学習処理、学習された線形モデルを展開して、前記データの新たなコンポーネント表現である拡張コンポーネント表現を定義するコンポーネント拡張処理、および、前記拡張コンポーネント表現によるデータと第二の重みとの内積を含む拡張モデルを生成する拡張モデル生成処理を実行させるためのモデル生成プログラム。
【０１２１】
（付記１２）コンピュータに、カーネル関数作成処理で、ランダムフーリエ特徴で第二カーネル関数を近似させ、近似された第二カーネル関数の引数を二次元特徴表現で表した第一カーネル関数を定義させる付記１１記載のモデル生成プログラム。
【符号の説明】
【０１２２】
１０  入力部
２０  モデル生成部
２１  カーネル関数作成部
２２  モデル学習部
２３  コンポーネント拡張部
２４  拡張モデル生成部
３０  出力部
１００  モデル生成システム
【図１】
2018150445.tif 000025
【図２】
2018150445.tif 000026
【図３】
2018150445.tif 000027
【図４】
2018150445.tif 000028
【図５】
2018150445.tif 000029
【図６】
2018150445.tif 000030
【図７】
2018150445.tif 000031
【国際調査報告】
2018150445.tif 000032
2018150445.tif 000033
2018150445.tif 000034
2018150445.tif 000035