JP2014160457A - 対話的変数選択装置、対話的変数選択方法および対話的変数選択プログラム - Google Patents

対話的変数選択装置、対話的変数選択方法および対話的変数選択プログラム Download PDF

Info

Publication number
JP2014160457A
JP2014160457A JP2014009272A JP2014009272A JP2014160457A JP 2014160457 A JP2014160457 A JP 2014160457A JP 2014009272 A JP2014009272 A JP 2014009272A JP 2014009272 A JP2014009272 A JP 2014009272A JP 2014160457 A JP2014160457 A JP 2014160457A
Authority
JP
Japan
Prior art keywords
variable
candidate
objective function
additional
value
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.)
Pending
Application number
JP2014009272A
Other languages
English (en)
Inventor
Ryohei Fujimaki
遼平 藤巻
Satoshi Morinaga
聡 森永
Ji Liu
ジ リゥ
Yoshinobu Kawahara
吉伸 河原
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JP2014160457A publication Critical patent/JP2014160457A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Complex Calculations (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

【課題】複数の選択候補の中からより最適な変数をユーザに選択させることができる対話的変数選択装置を提供する。
【解決手段】最適度算出手段71は、変数集合に含まれる第一の変数を追加変数の候補にした場合の最適度を、目的関数を用いて算出する。追加閾値算出部72は、第一の変数を追加変数の候補とすべきか否かを判断するための基準を表わす最適度の閾値である追加閾値を、算出された最適度に基づいて算出する。目的関数値算出部81は、最適化対象とする変数を用いて算出される目的関数の値と、その最適化対象とする変数から非ゼロ変数集合に含まれる第二の変数を除いて算出される目的関数の値との差分である目的関数値を算出する。削除閾値算出部82は、第二の変数を非ゼロ変数集合から削除すべきか否かを判断するための基準を表わす目的関数値の閾値である削除閾値を、算出された目的関数値に基づいて算出する。
【選択図】図13

Description

本発明は、最適な変数をユーザと対話的に選択するための対話的変数選択装置、対話的変数選択方法および対話的変数選択プログラムに関する。
変数選択問題は、機械学習、信号処理、パタン認識、金融工学など、さまざまな応用分野において重要な基本的な技術である。
例えば、健康リスクスコアをロジスティック回帰モデルでモデル化し最適化する際には、変数のうちリスクに寄与する変数だけを選択し、リスクに寄与しない変数はゼロとなるようにモデルをコントロールする必要がある。
また、例えばネットワークトラフィックの相関を分析する際には、精度行列(共分散行列の逆行列)を分析する事が一般的に行われる。この精度行列の算出時には、真に依存関係がない変数がゼロになるように制約をつけて解くことが必要となり、変数選択の問題として扱うことが可能である。
一方、変数の数が大きな大規模な問題では、ユーザの手による変数選択が難しいため、機械による支援が重要になる。このような支援をする目的で、一般に、大きく分けて二種類の技術が提案されている。
一つ目は、機械によってデータから自動的に変数を最適選択する技術(feature selection, attribute selection)である。この技術として、例えば、凸最適化に基づく方法(疎制約をもつ線形回帰モデル最適化(Lasso。 非特許文献1参照。)、ロジスティック回帰モデル最適化(L1ロジスティック回帰。非特許文献2参照。)、精度行列最適化(Graph Lasso。非特許文献3参照。)など)が挙げられる。他にも、この技術として、貪欲探索(Greedy Search)に基づく方法(Orthogonal Matching Pursuit(OMP。非特許文献4参照)、前向き後ろ向き貪欲探索(Forward-Backward Greedy Search; Foba。非特許文献5、非特許文献6参照)など)が挙げられる。
二つ目は、機械に変数のスコアリングや順序付けをさせ、その結果に対して対話的にユーザに変数を選択させる技術である。
Tibshirani, R. (1996) Regression shrinkage and selection via the lasso. Journal of the Royal Statistical Society, B 58, 267-288, 2007. Ng, A. Y. 2004. Feature selection, l1 vs. l2 regularization, and rotational invariance. In Proceedings of International Conference on Machine Learning, 2004. Jerome Friedman, Trevor Hastie, and Robert Tibshirani. Sparse inverse covariance estimation with the graphical lasso. Biostatistics, 9:432-441, 2007. Zhang, T. Sparse recovery with orthogonal matching pursuit under rip. IEEE Transactions on Information Theory, 57(9):6215-6221, 2011. Zhang, T. Adaptive forward-backward greedy algorithm for learning sparse representations. IEEE Transactions on Information Theory, 57(7):4689-4708, 2011. Jalali, A., Johnson, C.C., and Ravikumar, P.D. On learning discrete graphical models using greedy methods. Neural Information Processing Systems, 2011.
非特許文献1〜6に記載されているような機械による自動最適化は、データ数が十分にあれば高精度に変数選択をできるという利点があるが、一方で変数選択結果をユーザが制御することが難しいという欠点がある。
また、有限のデータ数を用いて変数を選択する場合、一般的に精度に統計的に有意な差がない複数の変数選択結果が存在する。その中からユーザにとって好ましい結果を選択することが重要になるが、非特許文献1〜6に記載されているような機械による自動変数選択では、そのような選択方法は自明ではない。統計的に有意な差がないモデルが多数存在すると、ユーザがすべてを比較して選択することは難しくなるという問題がある。
一方、変数に順序付けを行い、ユーザによって選択させる方法は、ユーザが結果を制御可能であるという利点を持つ。しかし、一般的な方法では変数の順序付けの基準が必ずしも目的達成(例えば予測精度の最適化)に整合していないという問題がある。また、一般的な方法では、順序付けしたときに第何位までが信頼できる変数かをユーザが客観的に決めることが難しいという問題がある。
そこで、本発明は、複数の選択候補の中からより最適な変数をユーザに選択させることができる対話的変数選択装置、対話的変数選択方法および対話的変数選択プログラムを提供することを目的とする。
本発明による対話的変数選択装置は、ユーザと対話的に変数を選択する対話的変数選択装置であって、変数集合の中から非ゼロ変数集合に追加すべき変数である追加変数の候補を算出する追加変数候補算出部と、非ゼロ変数集合に含まれる変数に対して、最適化された変数において最小値をとる目的関数を最小化することにより、最適化対象とする変数を更新する最適変数選択更新部と、非ゼロ変数集合から削除すべき変数である削除変数の候補を算出する削除変数候補算出部と、追加変数の候補と削除変数の候補の少なくとも一方を出力する変数選択結果出力部とを備え、追加変数候補算出部が、変数集合に含まれる第一の変数を追加変数の候補にした場合の最適度を、目的関数を用いて算出する最適度算出手段と、第一の変数を追加変数の候補とすべきか否かを判断するための基準を表わす最適度の閾値である追加閾値を、算出された最適度に基づいて算出する追加閾値算出部とを含み、削除変数候補算出部は、最適化対象とする変数を用いて算出される目的関数の値と、その最適化対象とする変数から非ゼロ変数集合に含まれる第二の変数を除いて算出される目的関数の値との差分である目的関数値を算出する目的関数値算出部と、第二の変数を非ゼロ変数集合から削除すべきか否かを判断するための基準を表わす目的関数値の閾値である削除閾値を、算出された目的関数値に基づいて算出する削除閾値算出部とを含むことを特徴とする。
本発明による対話的変数選択方法は、ユーザと対話的に変数を選択する対話的変数選択方法であって、変数集合の中から非ゼロ変数集合に追加すべき変数である追加変数の候補を算出し、非ゼロ変数集合に含まれる変数に対して、最適化された変数において最小値をとる目的関数を最小化することにより、最適化対象とする変数を更新し、非ゼロ変数集合から削除すべき変数である削除変数の候補を算出し、追加変数の候補と削除変数の候補の少なくとも一方を出力し、追加変数の候補を算出する際、変数集合に含まれる第一の変数を追加変数の候補にした場合の最適度を、目的関数を用いて算出し、第一の変数を追加変数の候補とすべきか否かを判断するための基準を表わす最適度の閾値である追加閾値を、算出された最適度に基づいて算出し、削除変数の候補を算出する際、最適化対象とする変数を用いて算出される目的関数の値と、その最適化対象とする変数から非ゼロ変数集合に含まれる第二の変数を除いて算出される目的関数の値との差分である目的関数値を算出し、第二の変数を非ゼロ変数集合から削除すべきか否かを判断するための基準を表わす目的関数値の閾値である削除閾値を、算出された目的関数値に基づいて算出することを特徴とする。
本発明による対話的変数選択プログラムは、ユーザと対話的に変数を選択するコンピュータに適用される対話的変数選択プログラムであって、コンピュータに、変数集合の中から非ゼロ変数集合に追加すべき変数である追加変数の候補を算出する追加変数候補算出処理、非ゼロ変数集合に含まれる変数に対して、最適化された変数において最小値をとる目的関数を最小化することにより、最適化対象とする変数を更新する最適変数選択更新処理、非ゼロ変数集合から削除すべき変数である削除変数の候補を算出する削除変数候補算出処理、および、追加変数の候補と削除変数の候補の少なくとも一方を出力する変数選択結果出力処理を実行させ、追加変数候補算出処理で、変数集合に含まれる第一の変数を追加変数の候補にした場合の最適度を、目的関数を用いて算出する最適度算出処理、および、第一の変数を追加変数の候補とすべきか否かを判断するための基準を表わす最適度の閾値である追加閾値を、算出された最適度に基づいて算出する追加閾値算出処理を実行させ、削除変数候補算出処理で、最適化対象とする変数を用いて算出される目的関数の値と、その最適化対象とする変数から非ゼロ変数集合に含まれる第二の変数を除いて算出される目的関数の値との差分である目的関数値を算出する目的関数値算出処理、および、第二の変数を非ゼロ変数集合から削除すべきか否かを判断するための基準を表わす目的関数値の閾値である削除閾値を、算出された目的関数値に基づいて算出する削除閾値算出処理を実行させることを特徴とする。
本発明によれば、複数の選択候補の中からより最適な変数をユーザに選択させることができる。
本発明による対話的変数選択装置の第1の実施形態の構成例を示すブロック図である。 第1の実施形態の追加変数候補算出処理部104の構成例を示すブロック図である。 第1の実施形態の削除変数候補算出処理部105の構成例を示すブロック図である。 第1の実施形態の対話的変数選択装置100の動作例を示すフローチャートである。 本発明による対話的変数選択装置の第2の実施形態の構成例を示すブロック図である。 第2の実施形態の追加変数候補算出処理部201の構成例を示すブロック図である。 第2の実施形態の対話的変数選択装置200の動作例を示すフローチャートである。 本発明による対話的変数選択装置の第3の実施形態の構成例を示すブロック図である。 第3の実施形態の交換変数候補算出処理部301の構成例を示すブロック図である。 第3の実施形態の対話的変数選択装置300の動作例を示すフローチャートである。 本発明による対話的変数選択装置の第4の実施形態の構成例を示すブロック図である。 第4の実施形態の交換変数候補算出処理部401の構成例を示すブロック図である。 本発明による対話的変数選択装置の概要を示すブロック図である。
以下、本発明の実施形態を図面を参照して説明する。本発明は、順序付けした変数をユーザに提示し、ユーザに対話的に変数を選択させる技術である。
以下では、最適化すべき変数をw=(w1,…,wD)、目的関数をf(w)と表記する。また、全体の変数集合をF 、現在の非ゼロ変数集合をF(k)、現在の変数プール(F に含まれる変数のうち、F(k)に含まれていない、値が0の変数の集合)をFp(k) と表記する。
これらの表記を利用すると、変数の選択問題は、一般に
min_w f(w)
subject to |w|_0 <= K
と表される。ここで、|w|_0 はw のL0ノルムであり、非ゼロ要素の個数を表す。また、K は最適化される変数w にどの程度の非ゼロ要素が残るかを制御する入力パラメータである。
実施形態1.
図1は、本発明による対話的変数選択装置の第1の実施形態の構成例を示すブロック図である。本実施形態の対話的変数選択装置100は、データ入力装置101と、データ記憶部102と、変数選択結果記憶部103と、追加変数候補算出処理部104と、削除変数候補算出処理部105と、変数選択候補出力装置106と、変数選択指示入力装置107と、最適変数選択更新処理部108と、変数選択結果出力装置109とを備えている。
対話的変数選択装置100は、入力データ111と変数選択指示114を入力し、変数選択候補113と変数選択結果112を出力する。
データ入力装置101は、変数選択に必要なデータ及びパラメータを入力する。変数選択に必要なデータとは、例えば、前述の健康リスクスコアのロジスティック回帰モデルを用いて変数を選択する場合に必要な学習データを示す。
データ記憶部102は、入力データ111を記憶する。データ記憶部102は、例えば、磁気ディスク等により実現される。
変数選択結果記憶部103は、変数を選択した結果として、F(k)、Fp(k) 、w(k)、f(w(k)) を記憶する。ただし、w(k)はF(k)に対応するw の推定値である。なお、初期状態では、k=0 に設定され、F(k)は空集合に、Fp(k)は全変数に、w(k)はゼロベクトルにそれぞれ初期化されている。変数選択結果記憶部103は、例えば、磁気ディスク等により実現される。
追加変数候補算出処理部104は、Fp(k)内の変数からF(k)に追加する変数の候補を算出する。具体的には、追加変数候補算出処理部104は、Fp(k) に含まれる変数からF(k)に1つ追加する場合に、選択すべき変数の候補を算出する。
図2は、本実施形態の追加変数候補算出処理部104の構成例を示すブロック図である。本実施形態の追加変数候補算出処理部104は、1変数最適化処理部104−1と、追加閾値算出処理部104−2とを含む。
1変数最適化処理部104−1は、Fp(k) に含まれる各変数に対応するw の要素を、F(k)とw(k)を固定して最適化する。具体的には、1変数最適化処理部104−1は、j 番目の変数について、wjに対してf(w)を最小化する1変数の最適化問題を解く。以下、j 番目の変数に対する目的変数値をfj(w(k))と表記する。この場合、追加すべき変数の候補として、fj(w(k))が小さい変数の方が、f(w)を小さくできる可能性がより高く有望であると言える。
追加閾値算出処理部104−2は、fj(w(k))がどの程度小さい場合に、追加候補として有望であるかを表わす閾値を算出する。具体的には、追加閾値算出処理部104−2は、fj(w(k))を昇順に並べたときの上位K - k の平均値に、0 <= λ <=1 を満たすパラメータλを乗じたものを閾値とする。
削除変数候補算出処理部105は、F(k)から削除する変数の候補を算出する。具体的には、削除変数候補算出処理部105は、F(k)に含まれる変数から1つ削除する場合に、選択すべき変数の候補を算出する。
図3は、本実施形態の削除変数候補算出処理部105の構成例を示すブロック図である。本実施形態の削除変数候補算出処理部105は、目的関数値算出処理部105−1と、削除閾値算出処理部105−2とを含む。
目的関数値算出処理部105−1は、F(k)に含まれる変数をi とすると、f(w(k) - wi(k) ei)を、各i について算出する。ただし、wi(k) は、w(k)のi 番目の要素であり、eiは、w(k)のi 番目の要素に対応する規程である。すなわち、w(k) - wi(k) ei は、w(k)のi 番目の要素を0にする処理に相当する。
削除閾値算出処理部105−2は、変数を削除した場合の目的関数の増分f(w(k) - wi(k) ei) - f(w(k))がどの程度小さい場合に、その変数が削除候補として有望であるかを表わす閾値を算出する。具体的には、削除閾値算出処理部105−2は、変数選択結果記憶部103に記憶されている、f(w(k)) - f(w(k-1)) の値に、0 <= γ <= λ <=1 を満たすパラメータγを乗じたものを閾値とする。
変数選択候補出力装置106は、Fp(k) 及び追加変数候補算出処理部104で算出されたfj(w(k))と追加閾値、F(k)及び削除変数候補算出処理部105で算出されたf(w(k) - wi(k) ei)と削除閾値を変数選択候補113として出力する。
変数選択候補出力装置106は、任意の形式で変数選択候補113を出力可能である。変数選択候補出力装置106は、例えば、コンピュータモニタ上に、Fp(k)からの追加候補としてfj(w(k))の昇順に追加閾値以上の変数を表示してもよい。また、変数選択候補出力装置106は、例えば、コンピュータモニタ上に、F(k)からの削除候補としてf(w(k) - wi(k) ei)の昇順に削除閾値以上の変数を表示してもよい。なお、これらの方法は、出力の一例であり、他の方法で算出した情報および閾値を出力してもよい。
変数選択指示入力装置107は、Fp(k) から追加すべき変数や、F(k)から削除すべき変数を、変数選択指示114として入力する。指示される変数は1つでもよいし、複数であってもよい。なお、以下では、指示された変数が1つと仮定して説明をするが、複数であっても同様に処理可能である。
最適変数選択更新処理部108は、変数選択結果記憶部103に記憶されている現在の変数選択結果、及び、変数選択指示114に基づいて、変数選択結果を更新する。具体的には、最適変数選択更新処理部108は、変数の追加指示があった場合、指示された変数をFp(k) から削除し、F(k)に追加してk=k+1 とする。一方、変数の削除指示があった場合、最適変数選択更新処理部108は、指示された変数をF(k)から削除し、Fp(k) へ追加して、k=k-1 とする。
そして、最適変数選択更新処理部108は、更新後のF(k)に対してf(w)を最小化することによりw を最適化し、更新後のF(k)、Fp(k) およびw(k)を変数選択結果記憶部103へ記憶する。また、変数の追加指示の場合、最適変数選択更新処理部108は、新たに計算されたf(w(k)) を変数選択結果記憶部103へ併せて記憶する。一方、変数の削除指示の場合、最適変数選択更新処理部108は、変数選択結果記憶部103に記憶されているf(w(k+1)) を削除する。
変数選択結果出力装置109は、変数選択結果記憶部103に記憶されているF(k)、Fp(k) 、w(k)、f(w)などを、変数選択結果112として出力する。
追加変数候補算出処理部104(より具体的には、1変数最適化処理部104−1と、追加閾値算出処理部104−2)と、削除変数候補算出処理部105(より具体的には、目的関数値算出処理部105−1と、削除閾値算出処理部105−2)と、変数選択候補出力装置106と、最適変数選択更新処理部108とは、例えば、プログラム(対話的変数選択プログラム)に従って動作するコンピュータのCPUによって実現される。
例えば、プログラムは、対話的変数選択装置100の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、追加変数候補算出処理部104、削除変数候補算出処理部105、変数選択候補出力装置106および最適変数選択更新処理部108として動作してもよい。また、上記プログラムは、コンピュータ読み取り可能な記憶媒体に記憶されていてもよい。
また、追加変数候補算出処理部104と、削除変数候補算出処理部105と、変数選択候補出力装置106と、最適変数選択更新処理部108とは、それぞれが専用のハードウェアで実現されていてもよい。
次に、本実施形態の対話的変数選択装置100の動作を説明する。図4は、本実施形態の対話的変数選択装置100の動作例を示すフローチャートである。
まず、データ入力装置101は、入力データ111を入力し(ステップS100)、データ記憶部102に記憶する(ステップS101)。
次に、対話的変数選択装置100は、変数選択結果を初期化し(ステップS102)、変数選択結果記憶部103へ記憶する(ステップS103)。
次に、ステップS104〜ステップS106の処理、および、ステップS107からステップS109の処理が実施される。なお、両者は独立した処理であり、同時に実行されてもよく、順番に実行されてもよい。
まず、ステップS104からステップS106の処理を説明する。
追加変数候補算出処理部104の1変数最適化処理部104−1は、Fp(k) に含まれる変数を1つ選択し、その変数に関してf(w)を最小化し、fj(w(k))を算出する(ステップS104)。
1変数最適化処理部104−1は、Fp(k) に含まれている全ての変数に対してステップS104に示す処理を実行したかを確認する(ステップS105)。ステップS104に示す処理が全ての変数に対して実行されていない場合(ステップS105におけるNo)、1変数最適化処理部104−1は、全ての変数に対してステップS104に示す処理が実行されるまで繰り返す。一方、ステップS104に示す処理が全ての変数に対して実行された場合(ステップS105におけるYes)、ステップS106へ処理が移る。
追加変数候補算出処理部104の追加閾値算出処理部104−2は、追加候補のfj(w(k))に対する閾値を算出する(ステップS106)。
次に、ステップS107からステップS109の処理を説明する。
削除変数候補算出処理部105の目的関数値算出処理部105−1は、F(k)に含まれる変数を1つ選択し、その変数についてf(w(k) - wi(k) ei)の値を算出する(ステップS107)。
目的関数値算出処理部105−1は、F(k)に含まれている全ての変数に対してステップS107の処理を実行したかを確認する(ステップS108)。ステップS107に示す処理が全ての変数に対して実行されていない場合(ステップS108におけるNo)、目的関数値算出処理部105−1は、全ての変数に対してステップS107に示す処理が実行されるまで繰り返す。一方、ステップS107に示す処理が全ての変数に対して実行された場合(ステップS108におけるYes)、ステップS109へ処理が移る。
削除変数候補算出処理部105の削除閾値算出処理部105−2は、削除候補のf(w(k) - wi(k) ei) - f(w(k))に対する閾値を算出する(ステップS109)。
次に、変数選択候補出力装置106は、変数選択候補113を出力する(ステップS110)。
一方、変数選択指示入力装置107が変数選択指示114を入力した場合には(ステップS111)、最適変数選択更新処理部108は、選択指示にしたがって変数選択結果を更新する(ステップS112)。更新された結果は、変数選択結果記憶部103に記憶され、ステップS103以降の処理が行われる。
また、変数選択結果出力装置109は、変数選択結果記憶部103に記憶された変数選択結果を任意のタイミングで変数選択結果112として出力する(ステップS113)。
以上のように、本実施形態によれば、追加変数候補算出処理部104が、Fp(k) の中からF(k)に追加すべき変数(追加変数)の候補を算出する。また、最適変数選択更新処理部108が、F(k)に含まれる変数に対してf(w)を最小化することによりw(k)を更新し、削除変数候補算出処理部105が、F(k)から削除すべき変数(削除変数)の候補を算出する。そして、変数選択候補出力装置106が、追加変数の候補と削除変数の候補の少なくとも一方を出力する。
具体的には、1変数最適化処理部104−1が、Fp(k) に含まれるj 番目の変数を追加変数の候補にした場合の目的変数値fj(w(k))を算出し、追加閾値算出処理部104−2が、fj(w(k))がどの程度小さい場合に、追加候補として有望であるかを表わす閾値(追加閾値)を、fj(w(k))に基づいて算出する。このとき、1変数最適化処理部104−1は、wjに対して目的関数を最小化する1変数の最適化問題を解いてもよい。
そして、削除変数候補算出処理部105が、変数wiを削除した場合の目的関数の増分f(w(k) - wi(k) ei) - f(w(k))を算出し、削除閾値算出処理部105−2が、変数wiを削除した場合の目的関数の増分がどの程度小さい場合に、その変数が削除候補として有望であるかを表わす閾値(削除閾値)を、その増分に基づいて算出する。
よって、複数の選択候補の中からより最適な変数をユーザに選択させることができる。
実施形態2.
図5は、本発明による対話的変数選択装置の第2の実施形態の構成例を示すブロック図である。本実施形態の対話的変数選択装置200は、第1の実施形態の対話的変数選択装置100と比較して、追加変数候補算出処理部104に代えて追加変数候補算出処理部201が接続されている点でのみ相違する。
図6は、本実施形態の追加変数候補算出処理部201の構成例を示すブロック図である。本実施形態の追加変数候補算出処理部201は、第1の実施形態の追加変数候補算出処理部104と比較して、1変数最適化処理部104−1に代えて勾配算出処理部201−1が接続され、追加閾値算出処理部104−2に代えて追加閾値算出処理部201−2が接続されている点でのみ相違する。
勾配算出処理部201−1は、Fp(k) に含まれる変数について、f(w)のw(k)における勾配を算出する。勾配は、目的関数値をどの程度下げることが可能かを示す目安になり、勾配の絶対値が大きな属性ほど、追加候補としては有望である。以下では、f(w)のw(k)における j 番目の属性に関する勾配を、∇fj(w(k))と表記する。
追加閾値算出処理部201−2は、|∇fj(w(k))|がどの程度大きい場合に、追加候補として有望であるかを表わす閾値を算出する。具体的には、追加閾値算出処理部201−2は、|∇fj(w(k))|を降順に並べたときの、上位K - kの平均値に、0 <= λ <=1 を満たすパラメータλを乗じたものを閾値とする。
なお、追加変数候補算出処理部201(より具体的には、勾配算出処理部201−1と、追加閾値算出処理部201−2)も、例えば、プログラム(対話的変数選択プログラム)に従って動作するコンピュータのCPUによって実現される。
次に、本実施形態の対話的変数選択装置200の動作を説明する。図7は、本実施形態の対話的変数選択装置200の動作例を示すフローチャートである。
図7に示す対話的変数選択装置200の動作は、図4に示す対話的変数選択装置100の動作と比較して、ステップS104における処理(1変数を最適化する処理)が、勾配算出処理部201−1によって勾配が算出される処理(ステップS201)に変更されている点、および、ステップS106における処理(追加閾値を算出する処理)が、追加閾値算出処理部201−2によって勾配に基づく追加閾値が算出される処理(ステップS202)に変更されている点でのみ相違する。
以上のように、本実施形態によれば、勾配算出処理部201−1が、Fp(k) に含まれる変数について、f(w)のw(k)における勾配を算出し、追加閾値算出処理部201−2が、|∇fj(w(k))|がどの程度大きい場合に、追加候補として有望であるかを表わす閾値(追加閾値)を算出する。このとき、勾配算出処理部201−1は、wjを追加変数の候補にした場合における目的関数の勾配を算出してもよい。
このような構成によっても、複数の選択候補の中からより最適な変数をユーザに選択させることができる。
すなわち、第1の実施形態の対話的変数選択装置100では、1変数最適化処理部104−1が、Fp(k) に含まれる変数の1変数最適化問題を解く必要があった。これは、最適化問題を高速に解くことが可能な場合には有効である。例えば、f(w)が二乗損失の場合、閉形式の解が存在するため、高速に計算することが可能である。一方、1変数最適化問題自体が難しい場合、第1の実施形態の対話的変数選択装置100では、大きな計算コストが必要になる。
一方、本実施形態の対話的変数選択装置200では、第1の実施形態の対応するステップにおいて、Fp(k) に含まれる変数に関する勾配のみが計算される。この方法の場合、1変数最適化問題を解く場合と比較して高速であるという利点がある。
なお、この方法では、追加候補を算出する際、目的関数を直接評価することはできない。しかし、算出される勾配は、目的関数値をどの程度下げることが可能かを表わす目安になるため、どの変数が追加候補として有望かを客観的に評価可能である。
実施形態3.
図8は、本発明による対話的変数選択装置の第3の実施形態の構成例を示すブロック図である。本実施形態の対話的変数選択装置300は、第1の実施形態の対話的変数選択装置100と比較して、交換変数候補算出処理部301と変数交換指示入出力装置302とが新たに接続され、変数交換候補要求311と変数交換指示313を入力し、変数交換候補312を出力する点で相違する。
変数交換候補要求311は、F(k)に含まれる変数のうち、Fp(k) に含まれる変数と交換したい変数を指定し、交換する候補の算出処理を要求するトリガである。
図9は、本実施形態の交換変数候補算出処理部301の構成例を示すブロック図である。本実施形態の交換変数候補算出処理部301は、最適変数一次更新処理部301−1と、1変数最適化処理部301−2と、交換閾値算出処理部301−3とを含む。
最適変数一次更新処理部301−1は、変数交換候補要求311で指定された変数をr とすると、F(k)から変数r を除いた変数のみについてf(w)を最適化する。なお、f(w)の最適化処理は、最適変数選択更新処理部108で実施することが可能である。以下では、F(k)から変数r を除いた集合をF*(k,-r)、Fp(k) に変数r を追加した集合をFp*(k,+r) 、F*(k,-r)に対して最適化されたw をw*(k,-r)と表記する。
1変数最適化処理部301−2は、第1の実施形態における1変数最適化処理部104−1と同様の処理を行う。なお、本実施形態の1変数最適化処理部301−2は、F(k)に代えてF*(k,-r)を利用し、Fp(k) に代えてFp*(k,+r) を利用し、w(k)に代えてw*(k,-r)を利用する点で1変数最適化処理部104−1と相違する。
交換閾値算出処理部301−3は、fj(w*(k,-r))を昇順に並べたときの、上位K-k-1 の平均値に、0 <= λ <=1 を満たすパラメータλを乗じた値と、fr(w*(k,-r))の小さい方を閾値として算出する。
変数交換指示入出力装置302は、変数交換候補要求311の入力、変数交換候補312の出力、および、変数交換指示313の入力を行う。
変数交換候補312は、Fp*(k,+r) 、fj(w*(k,-r))及び交換閾値算出処理部301−3で算出された閾値を含む。変数交換指示入出力装置302は、任意の形式で変数交換候補312を出力可能である。変数交換指示入出力装置302は、例えば、コンピュータモニタ上に、Fp*(k,+r)からの交換候補としてfj(w*(k,-r))の昇順に交換閾値以上の変数を表示してもよい。
変数交換指示313として交換すべき変数が入力された場合、変数交換指示入出力装置302は、変数交換候補要求311で指定された変数を削除すべき変数として、また、変数交換指示313で指定された変数を追加すべき候補として、最適変数選択更新処理部108へ入力する。
なお、交換変数候補算出処理部301(より具体的には、最適変数一次更新処理部301−1と、1変数最適化処理部301−2と、交換閾値算出処理部301−3)と、変数交換指示入出力装置302とは、例えば、プログラム(対話的変数選択プログラム)に従って動作するコンピュータのCPUによって実現される。
次に、本実施形態の対話的変数選択装置300の動作を説明する。図10は、本実施形態の対話的変数選択装置300の動作例を示すフローチャートである。図10に示す対話的変数選択装置300の動作は、図4に示す対話的変数選択装置100の動作と比較して、ステップS300〜ステップS307の処理が追加されている点において相違する。
まず、変数交換指示入出力装置302は、変数交換候補要求311を入力する(ステップS300)。
次に、交換変数候補算出処理部301の最適変数一次更新処理部301−1は、ステップS103の処理で変数選択結果記憶部103に記憶された変数選択結果を読み込む。そして、最適変数一次更新処理部301−1は、変数交換候補要求311で指定された変数r を除いて、F*(k,-r)、Fp*(k,+r)、w*(k,-r)を算出する(ステップS301)。
次に、交換変数候補算出処理部301の1変数最適化処理部301−2は、Fp*(k,+r) に含まれる変数を1つ選択し、その変数に関してf(w)を最小化し、fj(w*(k,-r))を算出する(ステップS302)。
1変数最適化処理部301−2は、Fp*(k,+r) に含まれている全ての変数に対してステップS302に示す処理を実行したかを確認する(ステップS303)。ステップS302に示す処理が全ての変数に対して実行されていない場合(ステップS303におけるNo)、1変数最適化処理部301−2は、全ての変数に対してステップS302に示す処理が実行されるまで繰り返す。一方、ステップS302に示す処理が全ての変数に対して実行された場合(ステップS303におけるYes)、ステップS304へ処理が移る。
次に、交換変数候補算出処理部301の交換閾値算出処理部301−3は、交換候補のfj(w*(k,-r))に対する閾値を算出する(ステップS304)。
次に、変数交換指示入出力装置302は、変数交換候補312を出力する(ステップS305)。その後、変数交換指示入出力装置302は、変数交換候補312に対する変数交換指示313を入力する(ステップS306)。
変数交換指示入出力装置302は、変数交換候補要求311で指定された変数を削除すべき変数として、また、変数交換指示313で指定された変数を追加すべき候補として、選択指示に変換する(ステップS307)。その後、ステップS112へ処理が移る。
以上のように、本実施形態によれば、最適変数一次更新処理部301−1が、F*(k,-r)を用いて目的関数を最適化し、1変数最適化処理部301−2が、Fp*(k,+r)に含まれる変数wjを追加変数の候補にした場合のfj(w*(k,-r))を算出する。
すなわち、第1の実施形態の対話的変数選択装置100では、変数の追加および削除を行うための2つの機能が提供される。変数の交換は、その組み合わせによって実現可能である。しかし、単純な交換には、以下のような問題が存在する。
例として、変数i がF(k)に含まれ、変数j がFp(k) に含まれ、変数i と変数j が高い相関を持つ状況を考える。すなわち、どちらの変数もf(w)の値を下げるという意味で、同程度の有用性をもつものとする。
ユーザが、変数i と変数j を交換したい場合、対話的変数選択装置100の構成では、変数i は削除候補として提示される可能性がある。その一方で、変数j は、変数i と相関が高く、追加候補としては有用ではないと判断されるため、ユーザの意図する交換が難しくなる可能性がある。これは、変数i がすでに選択されているため、同じ情報量をもつ変数j は追加候補とはならないからである。
一方、本実施形態の対話的変数選択装置300は、変数の交換機能を提供している。すなわち、変数交換候補要求で変数i が指定された場合、本実施形態の対話的変数選択装置300は、変数i を除いたうえで、変数i と同程度に有用な変数を交換候補として出力する。そのため、変数i と変数j の交換が可能になるという利点がある。
言い換えると、本実施形態で交換とは、指定された変数r をF(k)から除いて、追加変数候補i を算出することであるということができる。
実施形態4.
図11は、本発明による対話的変数選択装置の第4の実施形態の構成例を示すブロック図である。本実施形態の対話的変数選択装置400は、第2の実施形態の対話的変数選択装置200と比較して、交換変数候補算出処理部401と変数交換指示入出力装置302とが新たに接続され、変数交換候補要求311と変数交換指示313を入力し、変数交換候補312を出力する点で相違する。
なお、変数交換指示入出力装置302の内容は、第3の実施形態と同様である。また、変数交換候補要求311、変数交換指示313および変数交換候補312の内容も、第3の実施形態と同様である。また、交換変数候補算出処理部401の内容は、第3の実施形態の交換変数候補算出処理部301の内容に対応する。
すなわち、第3の実施形態の対話的変数選択装置300は、第1の実施形態の対話的変数選択装置100に変数交換機能が追加されたものであり、本実施形態の対話的変数選択装置400は、第2の実施形態の対話的変数選択装置200に同様の変数交換機能が追加されたものである。
図12は、本実施形態の交換変数候補算出処理部401の構成例を示すブロック図である。本実施形態の交換変数候補算出処理部401は、最適変数一次更新処理部401−1と、勾配算出処理部401−2と、交換閾値算出処理部401−3とを含む。
最適変数一次更新処理部401−1および交換閾値算出処理部401−3の内容は、第3の実施形態の最適変数一次更新処理部301−1および交換閾値算出処理部301−3の内容と同様である。また、勾配算出処理部401−2の内容は、第2の実施形態の勾配算出処理部201−1の内容と同様である。
以下、具体的な実施例により本発明を説明するが、本発明の範囲は以下に説明する内容に限定されない。本実施例では、本発明による対話的変数選択装置を応用して、健康診断ログから健康リスク分析を行う場合を例に説明する。なお、ここでは、第1の実施形態の対話的変数選択装置100を医療分野に応用した例を説明する。
生活習慣や健康診断検査値と、健康や疾病リスクの関係性をモデル化し、リスクを予測することは、疾病予防やリスク分析、生活習慣指導などに応用可能である。
また、リスクの予測関数が複雑すぎると人間に理解不可能になる。そのため、入力される変数(生活習慣や健康診断検査値の各種項目)のうち、少数の変数でリスク予測関数を構成することが重要である。なお、少数の変数で予測するということは、変数の多くが0で疎であると言える。
ロジスティック回帰モデルによるリスクスコア関数の学習を、上記応用の一例として説明する。ロジスティック回帰モデルは、あるリスク指標(例えば、血圧が閾値より高いかどうか)を、リスクが発現する確率p (p = 1 /(1 + exp(-wx))としてモデル化する方法で、健康や医療分野の応用で典型的に用いられるモデルである。
ロジスティック回帰モデルの学習には、典型的にL2罰則付き尤度関数がよく用いられる。本発明では、f(w)= Σn log (1 + exp (-yn wxn)) + λ||w||2を満たす目的関数に相当する。
ただし、(xn, yn) (n=1, …, N) は、学習サンプルである。xnは、生活習慣や健康診断検査値の各項目をベクトル化したデータを表わす。yn(+1 or -1)は、xnに対応するリスクの有無を表わす。λは、L2罰則項の強さを示す入力パラメータを表わす。||w||2は、w のL2ノルムを表わす。
ロジスティック回帰モデルのパラメータw の要素の多くが0 で、リスクに関係する少数の要素のみが非ゼロであるモデルを、一般的に知られた技術を用いることによって、データから自動的に学習することは可能である。しかし、例えば、高血圧に対するリスクとして肥満と喫煙が同程度のリスク要因であった場合、どちらを選択するかをコントロールすることは難しかった。
しかし、本発明を利用することによって、例えば、高血圧のリスク予測関数を最適化した場合には、肥満の度合いや、運動習慣の有無など、高血圧リスクに直結する少数の変数のみを利用したモデルを、人間による制御のもとで算出することが可能になる。
次に、本発明の概要を説明する。図13は、本発明による対話的変数選択装置の概要を示すブロック図である。本発明による対話的変数選択装置は、ユーザと対話的に変数を選択する対話的変数選択装置(例えば、対話的変数選択装置100)であって、変数集合(例えば、Fp(k) )の中から非ゼロ変数集合(例えば、F(k))に追加すべき変数である追加変数の候補を算出する追加変数候補算出部70(例えば、追加変数候補算出処理部104)と、非ゼロ変数集合に含まれる変数に対して、最適化された変数において最小値をとる目的関数(例えば、f(w))を最小化することにより、最適化対象とする変数(例えば、w 、w(k))を更新する最適変数選択更新部90(例えば、最適変数選択更新処理部108)と、非ゼロ変数集合から削除すべき変数である削除変数の候補を算出する削除変数候補算出部80(例えば、削除変数候補算出処理部105)と、追加変数の候補と削除変数の候補の少なくとも一方を出力する変数選択結果出力部60(例えば、変数選択結果出力装置109)とを備えている。
追加変数候補算出部70は、変数集合に含まれる第一の変数(例えば、wj)を追加変数の候補にした場合の最適度(例えば、fj(w(k))、|∇fj(w(k))|)を、目的関数を用いて算出する算出する最適度算出手段71(例えば、1変数最適化処理部104−1、勾配算出処理部201−1)と、第一の変数を追加変数の候補とすべきか否かを判断するための基準を表わす最適度の閾値である追加閾値を、算出された最適度に基づいて算出する追加閾値算出部72(追加閾値算出処理部104−2)とを含む。
削除変数候補算出部80は、最適化対象とする変数を用いて算出される目的関数の値(例えば、f(w(k)) )と、その最適化対象とする変数から非ゼロ変数集合に含まれる第二の変数(例えば、wi(k) )を除いて算出される目的関数の値(例えば、f(w(k) - wi(k) ei))との差分である目的関数値(例えば、f(w(k) - wi(k) ei) - f(w(k)))を算出する目的関数値算出部81(例えば、目的関数値算出処理部105−1)と、第二の変数を非ゼロ変数集合から削除すべきか否かを判断するための基準を表わす目的関数値の閾値である削除閾値を、算出された目的関数に基づいて算出する削除閾値算出部82(例えば、削除閾値算出処理部105−2)とを含む。
そのような構成により、複数の選択候補の中からより最適な変数をユーザに選択させることができる。
具体的には、最適度算出手段71(例えば、1変数最適化処理部104−1)が、第一の変数に対して目的関数を最小化する1変数の最適化問題を解くことにより、その目的関数の値を最適度として算出してもよい。このような構成によれば、最適化問題を高速に解くことが可能な場合、特に有効である。例えば、目的関数が二乗損失を表わす場合、閉形式の解が存在するため、高速に計算することが可能である。
または、最適度算出手段71(例えば、勾配算出処理部201−1)が、第一の変数について、最適化対象とする変数における目的関数の勾配を最適度として算出してもよい。このような構成によれば、Fp(k) に含まれる変数に関する勾配のみが計算されるため、1変数最適化問題自体が難しい場合には、より高速に計算可能である。
また、対話的変数選択装置は、非ゼロ変数集合の中から、変数集合に含まれる変数と交換する対象として指定された変数(例えば、r )を入力し、指定された変数と交換すべき変数の候補を変数集合の中から算出する交換変数候補算出部(例えば、交換変数候補算出処理部301,交換変数候補算出処理部401)を備えていてもよい。
具体的には、交換変数候補算出部は、指定された変数を追加変数の候補から除いた変数の集合(例えば、F*(k,-r))を用いて目的関数を最適化する最適変数一次更新部(例えば、最適変数一次更新処理部301−1、最適変数一次更新処理部401−1)と、変数集合に含まれる変数と指定された変数とを交換すべきか否かを判断するための基準を表わす閾値である交換閾値を、算出された最適度に基づいて算出する交換閾値算出部(例えば、交換閾値算出処理部301−3,交換閾値算出処理部401−3)とを含んでいてもよい。そして、最適度算出手段71(例えば、1変数最適化処理部301−2)は、指定された変数を含む変数集合(例えば、Fp*(k,+r))に含まれる第一の変数を追加変数の候補にした場合の最適度(fj(w*(k,-r))を、目的関数を用いて算出してもよい。
そのような構成によれば、2つの変数が高い相関をもつ状況であっても、両変数の候補を交換する(すなわち、一方の変数を追加変数の候補とし、他方の変数を削除変数の候補とする)ことが可能になる。
また、変数選択結果出力部60は、追加閾値に基づいて追加変数の候補とすべきと判断される変数、または、削除閾値に基づいて追加変数の候補から削除すべきと判断される変数を出力してもよい。そのような構成により、ユーザが追加候補とする変数を客観的に決め易くできる。
また、追加閾値算出部72は、最適化される変数に残ると想定される非ゼロ要素数(例えば、K )から、非ゼロ変数集合に追加された変数の数(例えば、k )を減じた数(例えば、K-k )の最適度を、その最適度の高い順(例えば、fj(w(k))ならば昇順、|∇fj(w(k))|ならば降順)に特定し、特定した最適度の平均値に0以上1以下のパラメータ(例えば、0 <=λ<=1 を満たすλ)を乗じた値を追加閾値として算出してもよい。このような追加閾値を用いることで、生成された候補がどの程度有望かより適切に判断できる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)ユーザと対話的に変数を選択する対話的変数選択装置であって、変数集合の中から非ゼロ変数集合に追加すべき変数である追加変数の候補を算出する追加変数候補算出部と、前記非ゼロ変数集合に含まれる変数に対して、最適化された変数において最小値をとる目的関数を最小化することにより、最適化対象とする変数を更新する最適変数選択更新部と、前記非ゼロ変数集合から削除すべき変数である削除変数の候補を算出する削除変数候補算出部と、前記追加変数の候補と前記削除変数の候補の少なくとも一方を出力する変数選択結果出力部とを備え、前記追加変数候補算出部は、前記変数集合に含まれる第一の変数を前記追加変数の候補にした場合の最適度を、前記目的関数を用いて算出する最適度算出手段と、前記第一の変数を前記追加変数の候補とすべきか否かを判断するための基準を表わす前記最適度の閾値である追加閾値を、算出された最適度に基づいて算出する追加閾値算出部とを含み、前記削除変数候補算出部は、前記最適化対象とする変数を用いて算出される前記目的関数の値と、当該最適化対象とする変数から前記非ゼロ変数集合に含まれる第二の変数を除いて算出される前記目的関数の値との差分である目的関数値を算出する目的関数値算出部と、前記第二の変数を前記非ゼロ変数集合から削除すべきか否かを判断するための基準を表わす前記目的関数値の閾値である削除閾値を、算出された目的関数値に基づいて算出する削除閾値算出部とを含むことを特徴とする対話的変数選択装置。
(付記2)最適度算出手段は、第一の変数に対して目的関数を最小化する1変数の最適化問題を解くことにより、その目的関数の値を最適度として算出する付記1記載の対話的変数選択装置。
(付記3)最適度算出手段は、第一の変数について、最適化対象とする変数における目的関数の勾配を最適度として算出する付記1記載の対話的変数選択装置。
(付記4)非ゼロ変数集合の中から、変数集合に含まれる変数と交換する対象として指定された変数を入力し、前記指定された変数と交換すべき変数の候補を変数集合の中から算出する交換変数候補算出部を備えた付記1から付記3のうちのいずれか1つに記載の対話的変数選択装置。
(付記5)交換変数候補算出部は、指定された変数を追加変数の候補から除いた変数の集合を用いて目的関数を最適化する最適変数一次更新部と、変数集合に含まれる変数と指定された変数とを交換すべきか否かを判断するための基準を表わす閾値である交換閾値を、算出された最適度に基づいて算出する交換閾値算出部とを含み、最適度算出手段は、指定された変数を含む変数集合に含まれる第一の変数を追加変数の候補にした場合の最適度を、目的関数を用いて算出する付記4記載の対話的変数選択装置。
(付記6)変数選択結果出力部は、追加閾値に基づいて追加変数の候補とすべきと判断される変数、または、削除閾値に基づいて追加変数の候補から削除すべきと判断される変数を出力する付記1から付記5のうちのいずれか1つに記載の対話的変数選択装置。
(付記7)追加閾値算出部は、最適化される変数に残ると想定される非ゼロ要素数から、非ゼロ変数集合に追加された変数の数を減じた数の最適度を、当該最適度の高い順に特定し、特定した最適度の平均値に0以上1以下のパラメータを乗じた値を追加閾値として算出する付記1から付記6のうちのいずれか1つに記載の対話的変数選択装置。
この出願は、2013年2月20日に出願された米国仮出願第61/767,019号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
100,200,300,400 対話的変数選択装置
101 データ入力装置
102 データ記憶部
103 変数選択結果記憶部
104 追加変数候補算出処理部
105 削除変数候補算出処理部
106 変数選択候補出力装置
107 変数選択指示入力装置
108 最適変数選択更新処理部
109 変数選択結果出力装置
104−1,301−2 1変数最適化処理部
104−2 追加閾値算出処理部
105−1 目的関数値算出処理部
105−2 削除閾値算出処理部
201 追加変数候補算出処理部
201−1,401−2 勾配算出処理部
201−2 追加閾値算出処理部
301,401 交換変数候補算出処理部
302 変数交換指示入出力装置
301−1,401−1 最適変数一次更新処理部
301−3,401−3 交換閾値算出処理部

Claims (10)

  1. ユーザと対話的に変数を選択する対話的変数選択装置であって、
    変数集合の中から非ゼロ変数集合に追加すべき変数である追加変数の候補を算出する追加変数候補算出部と、
    前記非ゼロ変数集合に含まれる変数に対して、最適化された変数において最小値をとる目的関数を最小化することにより、最適化対象とする変数を更新する最適変数選択更新部と、
    前記非ゼロ変数集合から削除すべき変数である削除変数の候補を算出する削除変数候補算出部と、
    前記追加変数の候補と前記削除変数の候補の少なくとも一方を出力する変数選択結果出力部とを備え、
    前記追加変数候補算出部は、
    前記変数集合に含まれる第一の変数を前記追加変数の候補にした場合の最適度を、前記目的関数を用いて算出する最適度算出手段と、
    前記第一の変数を前記追加変数の候補とすべきか否かを判断するための基準を表わす前記最適度の閾値である追加閾値を、算出された最適度に基づいて算出する追加閾値算出部とを含み、
    前記削除変数候補算出部は、
    前記最適化対象とする変数を用いて算出される前記目的関数の値と、当該最適化対象とする変数から前記非ゼロ変数集合に含まれる第二の変数を除いて算出される前記目的関数の値との差分である目的関数値を算出する目的関数値算出部と、
    前記第二の変数を前記非ゼロ変数集合から削除すべきか否かを判断するための基準を表わす前記目的関数値の閾値である削除閾値を、算出された目的関数値に基づいて算出する削除閾値算出部とを含む
    ことを特徴とする対話的変数選択装置。
  2. 最適度算出手段は、第一の変数に対して目的関数を最小化する1変数の最適化問題を解くことにより、その目的関数の値を最適度として算出する
    請求項1記載の対話的変数選択装置。
  3. 最適度算出手段は、第一の変数について、最適化対象とする変数における目的関数の勾配を最適度として算出する
    請求項1記載の対話的変数選択装置。
  4. 非ゼロ変数集合の中から、変数集合に含まれる変数と交換する対象として指定された変数を入力し、前記指定された変数と交換すべき変数の候補を変数集合の中から算出する交換変数候補算出部を備えた
    請求項1から請求項3のうちのいずれか1項に記載の対話的変数選択装置。
  5. 交換変数候補算出部は、指定された変数を追加変数の候補から除いた変数の集合を用いて目的関数を最適化する最適変数一次更新部と、
    変数集合に含まれる変数と指定された変数とを交換すべきか否かを判断するための基準を表わす閾値である交換閾値を、算出された最適度に基づいて算出する交換閾値算出部とを含み、
    最適度算出手段は、指定された変数を含む変数集合に含まれる第一の変数を追加変数の候補にした場合の最適度を、目的関数を用いて算出する
    請求項4記載の対話的変数選択装置。
  6. 変数選択結果出力部は、追加閾値に基づいて追加変数の候補とすべきと判断される変数、または、削除閾値に基づいて追加変数の候補から削除すべきと判断される変数を出力する
    請求項1から請求項5のうちのいずれか1項に記載の対話的変数選択装置。
  7. ユーザと対話的に変数を選択する対話的変数選択方法であって、
    変数集合の中から非ゼロ変数集合に追加すべき変数である追加変数の候補を算出し、
    前記非ゼロ変数集合に含まれる変数に対して、最適化された変数において最小値をとる目的関数を最小化することにより、最適化対象とする変数を更新し、
    前記非ゼロ変数集合から削除すべき変数である削除変数の候補を算出し、
    前記追加変数の候補と前記削除変数の候補の少なくとも一方を出力し、
    前記追加変数の候補を算出する際、前記変数集合に含まれる第一の変数を前記追加変数の候補にした場合の最適度を、前記目的関数を用いて算出し、前記第一の変数を前記追加変数の候補とすべきか否かを判断するための基準を表わす前記最適度の閾値である追加閾値を、算出された最適度に基づいて算出し、
    前記削除変数の候補を算出する際、前記最適化対象とする変数を用いて算出される前記目的関数の値と、当該最適化対象とする変数から前記非ゼロ変数集合に含まれる第二の変数を除いて算出される前記目的関数の値との差分である目的関数値を算出し、第二の変数を前記非ゼロ変数集合から削除すべきか否かを判断するための基準を表わす前記目的関数値の閾値である削除閾値を、算出された目的関数値に基づいて算出する
    ことを特徴とする対話的変数選択方法。
  8. 最適度を算出する際、第一の変数に対して目的関数を最小化する1変数の最適化問題を解くことにより、その目的関数の値を最適度として算出する
    請求項7記載の対話的変数選択方法。
  9. ユーザと対話的に変数を選択するコンピュータに適用される対話的変数選択プログラムであって、
    前記コンピュータに、
    変数集合の中から非ゼロ変数集合に追加すべき変数である追加変数の候補を算出する追加変数候補算出処理、
    前記非ゼロ変数集合に含まれる変数に対して、最適化された変数において最小値をとる目的関数を最小化することにより、最適化対象とする変数を更新する最適変数選択更新処理、
    前記非ゼロ変数集合から削除すべき変数である削除変数の候補を算出する削除変数候補算出処理、および、
    前記追加変数の候補と前記削除変数の候補の少なくとも一方を出力する変数選択結果出力処理を実行させ、
    前記追加変数候補算出処理で、
    前記変数集合に含まれる第一の変数を前記追加変数の候補にした場合の最適度を、前記目的関数を用いて算出する最適度算出処理、および、
    前記第一の変数を前記追加変数の候補とすべきか否かを判断するための基準を表わす前記最適度の閾値である追加閾値を、算出された最適度に基づいて算出する追加閾値算出処理を実行させ、
    前記削除変数候補算出処理で、
    前記最適化対象とする変数を用いて算出される前記目的関数の値と、当該最適化対象とする変数から前記非ゼロ変数集合に含まれる第二の変数を除いて算出される前記目的関数の値との差分である目的関数値を算出する目的関数値算出処理、および、
    第二の変数を前記非ゼロ変数集合から削除すべきか否かを判断するための基準を表わす前記目的関数値の閾値である削除閾値を、算出された目的関数値に基づいて算出する削除閾値算出処理
    を実行させるための対話的変数選択プログラム。
  10. コンピュータに、
    最適度算出処理で、第一の変数に対して目的関数を最小化する1変数の最適化問題を解くことにより、その目的関数の値を最適度として算出させる
    請求項9記載の対話的変数選択プログラム。
JP2014009272A 2013-02-20 2014-01-22 対話的変数選択装置、対話的変数選択方法および対話的変数選択プログラム Pending JP2014160457A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361767019P 2013-02-20 2013-02-20
US61/767,019 2013-02-20

Publications (1)

Publication Number Publication Date
JP2014160457A true JP2014160457A (ja) 2014-09-04

Family

ID=51352021

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014009272A Pending JP2014160457A (ja) 2013-02-20 2014-01-22 対話的変数選択装置、対話的変数選択方法および対話的変数選択プログラム

Country Status (2)

Country Link
US (1) US20140236869A1 (ja)
JP (1) JP2014160457A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019513265A (ja) * 2016-03-17 2019-05-23 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited 自動多閾値特徴フィルタリング方法及び装置
US11562210B2 (en) 2018-11-12 2023-01-24 Fujitsu Limited Stochastically determining to accept a state transition for an optimization device

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11262272B2 (en) * 2018-10-10 2022-03-01 Palo Alto Research Center Incorporated Adaptive remaining useful life estimation method using constraint convex regression from degradation measurement
US11960261B2 (en) 2019-07-12 2024-04-16 Johnson Controls Tyco IP Holdings LLP HVAC system with sustainability and emissions controls
US11274842B2 (en) 2019-07-12 2022-03-15 Johnson Controls Tyco IP Holdings LLP Systems and methods for optimizing ventilation, filtration, and conditioning schemes for buildings
US11714393B2 (en) * 2019-07-12 2023-08-01 Johnson Controls Tyco IP Holdings LLP Building control system with load curtailment optimization

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019513265A (ja) * 2016-03-17 2019-05-23 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited 自動多閾値特徴フィルタリング方法及び装置
US11544618B2 (en) 2016-03-17 2023-01-03 Alibaba Group Holding Limited Automatic multi-threshold feature filtering method and apparatus
US11562210B2 (en) 2018-11-12 2023-01-24 Fujitsu Limited Stochastically determining to accept a state transition for an optimization device

Also Published As

Publication number Publication date
US20140236869A1 (en) 2014-08-21

Similar Documents

Publication Publication Date Title
CN108229667B (zh) 基于人工神经网络类别的修剪
JP2014160457A (ja) 対話的変数選択装置、対話的変数選択方法および対話的変数選択プログラム
JP6555015B2 (ja) 機械学習管理プログラム、機械学習管理装置および機械学習管理方法
JP6536295B2 (ja) 予測性能曲線推定プログラム、予測性能曲線推定装置および予測性能曲線推定方法
EP3428856A1 (en) Information processing method and information processing device
JP5815458B2 (ja) 報酬関数推定装置、報酬関数推定方法、およびプログラム
CN110268422A (zh) 利用强化学习的设备布局优化
WO2017134554A1 (en) Efficient determination of optimized learning settings of neural networks
JP7069029B2 (ja) 自動予測システム、自動予測方法および自動予測プログラム
JP6982557B2 (ja) 報酬関数の生成方法及び計算機システム
CN111090686B (zh) 数据处理方法、装置、服务器和存储介质
CN114139637B (zh) 多智能体信息融合方法、装置、电子设备及可读存储介质
JP2014160456A (ja) 疎変数最適化装置、疎変数最適化方法および疎変数最適化プログラム
JP2019204190A (ja) 学習支援装置および学習支援方法
KR20180130733A (ko) 협업 의존성 기반 컴포넌트 재사용 추천 시스템 및 방법
WO2014087590A1 (ja) 最適化装置、最適化方法および最適化プログラム
CN117216227A (zh) 基于知识图谱与大语言模型的烟草企业智能信息问答方法
KR20140146437A (ko) 특허정보를 이용한 기업성과 예측 장치 및 방법
Li et al. Optimizing ml inference queries under constraints
KR20210042709A (ko) 기업 관계 데이터를 이용한 주가 예측 방법 및 서버
JP7063397B2 (ja) 回答統合装置、回答統合方法および回答統合プログラム
WO2012032747A1 (ja) 特徴点選択システム、特徴点選択方法および特徴点選択プログラム
JP6422512B2 (ja) 計算機システム及びグラフィカルモデルの管理方法
Urbanek et al. Using analytical programming and UCP method for effort estimation
Kumar et al. Modeling and representation of software framework cost estimation using convolution neural networks