JP2019008342A - パラメータ最適化装置、パラメータ最適化方法およびプログラム - Google Patents

パラメータ最適化装置、パラメータ最適化方法およびプログラム Download PDF

Info

Publication number
JP2019008342A
JP2019008342A JP2017120437A JP2017120437A JP2019008342A JP 2019008342 A JP2019008342 A JP 2019008342A JP 2017120437 A JP2017120437 A JP 2017120437A JP 2017120437 A JP2017120437 A JP 2017120437A JP 2019008342 A JP2019008342 A JP 2019008342A
Authority
JP
Japan
Prior art keywords
parameter
search range
value
experiment
parameters
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.)
Granted
Application number
JP2017120437A
Other languages
English (en)
Other versions
JP6571134B2 (ja
Inventor
義紀 千秋
Yoshinori Senshu
義紀 千秋
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2017120437A priority Critical patent/JP6571134B2/ja
Publication of JP2019008342A publication Critical patent/JP2019008342A/ja
Application granted granted Critical
Publication of JP6571134B2 publication Critical patent/JP6571134B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Image Analysis (AREA)

Abstract

【課題】パラメータが性能に与える影響をモデル化することなく、複数のパラメータを効率よく最適化できるようにする。【解決手段】実施形態のパラメータ最適化装置は、所定機能の性能に関わる複数のパラメータについて、各パラメータに対して各々設定された探索範囲から最適値を探索するパラメータ最適化装置であって、前記複数のパラメータごとに探索範囲から選ばれたパラメータ値の組み合わせを複数含むパラメータ実験計画に基づいて前記性能を評価する実験を行うことで得られる性能評価値の統計量をもとに、前記複数のパラメータのうちで前記性能に最も影響を与えると推定される対象パラメータを選定する対象パラメータ選定部と、選定された前記対象パラメータの探索範囲を、前記実験を行う前よりも狭めるように更新する探索範囲更新部と、を備える。【選択図】図1

Description

本発明の実施形態は、パラメータ最適化装置、パラメータ最適化方法およびプログラムに関する。
例えば画像認識などの所定機能の性能を最大化するには、その所定機能を実現するアルゴリズム群で用いる多数のパラメータを最適化することが必要となる。このようなパラメータの調整は、対象となる技術分野の専門知識が必要とされ、また、パラメータ値の組み合わせは多岐にわたるため、専門家であっても性能を最大化するパラメータの調整には非常にコストがかかる。
パラメータを自動で最適化する技術としては、例えば、パラメータが性能に与える影響を何らかのかたちでモデル化し、モデルから極値を求めるといった方法で最適なパラメータ値を決定する技術がある。例えば、実験計画法に基づいて複数のパラメータと性能との関係を調べ、複数のパラメータが性能に与える影響を応答曲面法によりモデル化して最適なパラメータ値を決定する方法などが知られている。
しかし、複数のパラメータが相互に影響を与える場合、あるパラメータの値が変わると他のパラメータが性能に与える影響の振る舞いが変化するため、これら複数のパラメータが性能に与える影響をモデル化することが難しい。このため、パラメータが性能に与える影響をモデル化することなく、複数のパラメータを効率よく最適化できるようにすることが望まれている。
特開2005−254308号公報
本発明が解決しようとする課題は、パラメータが性能に与える影響をモデル化することなく、複数のパラメータを効率よく最適化できるパラメータ最適化装置、パラメータ最適化方法およびプログラムを提供することである。
実施形態のパラメータ最適化装置は、所定機能の性能に関わる複数のパラメータについて、各パラメータに対して各々設定された探索範囲から最適値を探索するパラメータ最適化装置であって、対象パラメータ選定部と、探索範囲更新部と、を備える。対象パラメータ選定部は、前記複数のパラメータごとに探索範囲から選ばれたパラメータ値の組み合わせを複数含むパラメータ実験計画に基づいて前記性能を評価する実験を行うことで得られる性能評価値の統計量をもとに、前記複数のパラメータのうちで前記性能に最も影響を与えると推定される対象パラメータを選定する。探索範囲更新部は、選定された前記対象パラメータの探索範囲を、前記実験を行う前よりも狭めるように更新する。
図1は、実施形態のパラメータ最適化装置の機能的な構成例を示すブロック図である。 図2は、実施形態のパラメータ最適化装置の処理手順の一例を示すフローチャートである。 図3は、パラメータ設定からパラメータ実験計画を作成する具体例を示す図である。 図4は、パラメータ実験結果の具体例を示す図である。 図5は、p値の具体例を示す図である。 図6は、要因効果図の具体例を示す図である。 図7は、対象パラメータの探索範囲を更新する具体例を示す図である。 図8は、要因効果図の具体例を示す図である。 図9は、対象パラメータの探索範囲を更新しながら性能評価実験を繰り返す様子を、パラメータ設定の遷移として示す図である。 図10は、実施形態のパラメータ最適化装置のハードウェア構成例を示すブロック図である。
以下、実施形態のパラメータ最適化装置、パラメータ最適化方法およびプログラムを、図面を参照して詳細に説明する。以下では、画像認識システムにおけるパラメータを最適化する例を想定するが、実施形態の適用例はこれに限らない。
<実施形態の概要>
まず、本実施形態の概要について説明する。本実施形態は、例えば画像認識などの所定機能の性能に関わる複数のパラメータについて、各パラメータに対して各々設定された探索範囲から最適値を探索するものであり、以下の(A)および(B)の2点を主要な特徴とする。
(A)実験計画に基づいて実施した性能評価実験の結果をもとに、複数のパラメータのうち、他のパラメータが性能に与えている影響よりも自身が性能に与える影響のほうが大きいパラメータ、すなわち、性能に最も影響を与えると推定されるパラメータ(以下、「対象パラメータ」と呼ぶ)を選定する。対象パラメータは、他のパラメータから受ける影響が比較的小さいパラメータである。
(B)選定された対象パラメータの探索範囲を、性能評価実験を行う前よりも狭めるかたちで更新する。この対象パラメータの探索範囲の更新により、他のパラメータから受ける影響が比較的小さいパラメータから順に最適値が絞り込まれていく。
本実施形態では、上記(A)と(B)を繰り返すことで、対象パラメータから順に最適値となり得るパラメータ値を絞り込んでいくことにより、最終的に全てのパラメータについて最適なパラメータ値を決定することができる。
<装置構成>
次に、本実施形態のパラメータ最適化装置の機能的な構成について説明する。図1は、本実施形態のパラメータ最適化装置10の機能的な構成例を示すブロック図である。本実施形態のパラメータ最適化装置10は、図1に示すように、実験計画作成部11と、性能評価部12と、対象パラメータ選定部13と、探索範囲更新部14とを備える。
実験計画作成部11は、パラメータ設定21に基づいて、パラメータ実験計画22を作成する。パラメータ設定21は、最適化の対象となる複数のパラメータのそれぞれについて、探索範囲の上限値と下限値とを定めたものである。例えば最適化の対象となるパラメータとしてパラメータA、パラメータB、パラメータCがある場合、パラメータAの探索範囲の上限値A_maxと下限値A_min、パラメータBの探索範囲の上限値B_maxと下限値B_min、パラメータCの探索範囲の上限値C_maxと下限値C_minが、それぞれパラメータ設定21により定められる。パラメータの探索範囲は、そのパラメータの最適なパラメータ値を探索する範囲である。
実験計画作成部11は、これら最適化の対象となる複数のパラメータのそれぞれについて、探索範囲から例えば上限値と下限値とを含むいくつかのパラメータ値を選び出す。例えば、上述のパラメータAについては探索範囲の上限値A_max、下限値A_minおよびそれらの中間の値である中間値A_midを選び、パラメータBについては探索範囲の上限値B_max、下限値B_minおよびそれらの中間の値である中間値B_midを選び、パラメータCについては探索範囲の上限値C_max、下限値C_minおよびそれらの中間の値である中間値C_midを選ぶ。そして、実験計画作成部11は、これら複数のパラメータごとに探索範囲から選び出したパラメータ値を組み合わせて、パラメータ実験計画22を作成する。なお、複数のパラメータのそれぞれから選び出すパラメータ値は、そのパラメータの探索範囲から選ばれればよく、必ずしも探索範囲の上限値と下限値と中間値でなくてもよい。
パラメータ実験計画22に含まれるパラメータ値の組み合わせは、それぞれ、各パラメータについて探索範囲から選ばれたパラメータ値を1つずつ含む。パラメータ実験計画22は、こうしたパラメータ値の組み合わせを複数含む。例えば上述の例では、パラメータAの探索範囲の上限値A_max、下限値A_min、中間値A_midのいずれかと、パラメータBの探索範囲の上限値B_max、下限値B_min、中間値B_midのいずれかと、パラメータCの探索範囲の上限値C_max、下限値C_min、中間値C_midのいずれかとの組み合わせが、パラメータ実験計画22に複数含まれる。
パラメータ実験計画22を作成する方法としては、いくつかのバリエーションが考えられる。例えば、実験計画作成部11は、複数のパラメータのそれぞれについて探索範囲から選び出されたパラメータ値の全組み合わせを含むパラメータ実験計画22を作成してもよい。例えば上述の例では、3つのパラメータからそれぞれパラメータ値が3つずつ選び出されるので、パラメータ値の全組み合わせは3×3×3=27通りとなり、これら27通りの全組み合わせを含むパラメータ実験計画22を作成してもよい。
また、実験計画作成部11は、実験計画法においてよく知られた直交表を用い、組み合わせ数を削減したパラメータ実験計画22を作成してもよい。また、実験計画作成部11は、複数のパラメータのうちの一部については全てのパラメータ値を他のパラメータの全てのパラメータ値と組み合わせ、他のパラメータ値については直交表に基づいて組み合わせ数を削減したパラメータ実験計画22を作成してもよい。直交表を用いてパラメータ実験計画22に含まれるパラメータ値の組み合わせ数を削減することにより、パラメータ実験計画22に基づく性能評価実験を効率よく実施することができる。
また、実験計画作成部11は、最適化の対象となる複数のパラメータの全てについて最適となるパラメータ値が決定されるまでパラメータ実験計画22の作成を繰り返すが、パラメータ実験計画22を作成するたびに上述の3つの方法を選択的に切り替えてもよい。例えば、直交表を用いて作成したパラメータ実験計画22に基づいて性能評価実験を行った結果からは各パラメータの性能に対する影響の大きさを明確に区別できなかった場合(例えば後述のp値の差が所定の閾値未満の場合)に、次のパラメータ実験計画22はパラメータ値の全組み合わせを含むように作成することが考えられる。また、特に注目すべきパラメータが見つかった場合に、そのパラメータについては全てのパラメータ値を他のパラメータの全てのパラメータ値と組み合わせ、他のパラメータ値については直交表に基づいて組み合わせ数を削減したパラメータ実験計画22を作成することなどが考えられる。
実験計画作成部11は、本実施形態のパラメータ最適化装置10の起動時、つまり、パラメータの最適化を開始するときには、例えばユーザ操作に応じて入力されたパラメータ設定21を取得し、そのパラメータ設定21に基づいて上述のようなパラメータ実験計画22を作成する。その後、後述の探索範囲更新部14により対象パラメータの探索範囲が更新されると、更新された探索範囲に基づいてパラメータ実験計画22を新たに作成する。つまり、実験計画作成部11は、後述の探索範囲更新部14により対象パラメータの探索範囲が更新されるごとに、対象パラメータの探索範囲が更新されたパラメータ設定21に基づいてパラメータ実験計画22を新たに作成する。実験計画作成部11が作成したパラメータ実験計画22は、性能評価部12に渡される。
性能評価部12は、実験計画作成部11から受け取ったパラメータ実験計画22に基づいて、例えば画像認識などの所定機能の性能を評価する性能評価実験を行う。性能評価実験は、パラメータ実験計画22に含まれる複数のパラメータ値の組み合わせごとに行われ、それぞれのパラメータ値の組み合わせごとに性能評価値が得られる。性能評価部12は、これら複数のパラメータ値の組み合わせごとに算出される性能評価値のリストであるパラメータ実験結果23を出力する。パラメータ実験結果23は、例えば、複数のパラメータ値の組み合わせとその組み合わせに対して算出された性能評価値との組みをリスト形式で記録したものである。
性能評価実験に用いる性能評価手法としては、一般的によく知られているものを利用すればよい。ただし、性能評価値がスカラー値として得られる手法を利用する。例えば、画像認識における認識性能の評価では、ROC(Receiver Operating Characteristic)曲線に基づくAUC(Area Under the Curve)などを利用することができる。
対象パラメータ選定部13は、性能評価部12が出力するパラメータ実験結果23を受け取り、そのパラメータ実験結果23に含まれる性能評価値の統計量をもとに、最適化の対象としている複数のパラメータのうちで、所定機能の性能に最も影響を与えると推定される対象パラメータを選定する。
所定機能の性能に最も影響を与えるパラメータは、例えば、他のパラメータのパラメータ値を変化させた場合と比較して、自身のパラメータ値を変化させた場合の方が性能の変化が大きいと解釈することができる。この考え方に基づいて、対象パラメータ選定部13は、例えば、最適化の対象としている複数のパラメータのうち、自身のパラメータ値を変化させたときの性能評価値の分散(以下、「第1分散」と呼ぶ)が、他のパラメータのパラメータ値を変化させたときの性能評価値の分散(以下、「第2分散」と呼ぶ)よりも大きく、第1分散と第2分散との比が最も大きいパラメータを、対象パラメータとして選定することができる。
上述の第1分散や第2分散は統計量のため、第1分散が第2分散よりも大きいことをF検定によって検定する。この場合、検定の過程で得られるp値が小さいほど、第1分散が第2分散よりも大きいことが確からしいことを意味し、p値が最も小さいパラメータは、第1分散と第2分散との比が最も大きいパラメータとみなすことができる。したがって、対象パラメータ選定部13は、例えば、最適化の対象としている複数のパラメータの各々について、上述の第1分散と第2分散とに対するF検定を実施してp値を算出し、p値が最も小さいパラメータを対象パラメータとして選定することができる。対象パラメータ選定部13は、以上のように選定した対象パラメータを示す対象パラメータの通知24を、探索範囲更新部14に渡す。
探索範囲更新部14は、対象パラメータ選定部13から対象パラメータの通知24を受け取ると、その対象パラメータの通知24で示される対象パラメータの探索範囲を、直前の性能評価実験を行う前の探索範囲、つまり、直前の性能評価実験で用いたパラメータ実験計画22を作成する際に用いたパラメータ設定21における対象パラメータの探索範囲よりも狭めるように更新する。
対象パラメータの探索範囲を更新する方法としては、いくつかのバリエーションが考えられる。例えば、探索範囲更新部14は、対象パラメータの探索範囲から選ばれたパラメータ値のうち、そのパラメータ値を含む全ての組み合わせに対する性能評価値の平均値が最も高いパラメータ値を基準として、対象パラメータの探索範囲を更新してもよい。例えば上述の例において、パラメータAが対象パラメータとして選択され、パラメータAの探索範囲の中間値A_midを含む全ての組み合わせに対する性能評価値の平均値が、上限値A_maxを含む全ての組み合わせに対する性能評価値の平均値より高く、かつ、下限値A_minを含む全ての組み合わせに対する性能評価値の平均値よりも高い場合、中間値A_midを基準とし、上限値A_maxおよび下限値A_minを中間値A_midに近づける方向に変更することで、パラメータAの探索範囲を狭めるように更新してもよい。
また、探索範囲更新部14は、対象パラメータの探索範囲から選ばれたパラメータ値のうち、そのパラメータ値を含む組み合わせに対して最も高い性能評価値が算出されたパラメータ値を基準として、対象パラメータの探索範囲を更新してもよい。例えば上述の例において、パラメータAが対象パラメータとして選択され、性能評価値の平均値が最も高いのは中間値A_midであるが、最も高い性能評価値が算出された組み合わせに含まれるパラメータAのパラメータ値が上限値A_maxであったとする。この場合、上限値A_maxを基準とし、下限値A_minを上限値A_maxに近づける方向に変更することで、パラメータAの探索範囲を狭めるように更新してもよい。
また、探索範囲更新部14は、対象パラメータの探索範囲から選ばれたパラメータ値のうち、そのパラメータ値を含む組み合わせに対して最も低い性能評価値が算出されたパラメータ値を含まないように、対象パラメータの探索範囲を更新してもよい。例えば上述の例において、パラメータAが対象パラメータとして選択され、最も低い性能評価値が算出された組み合わせに含まれるパラメータAのパラメータ値が下限値A_minであったとする。この場合、下限値A_minを元の値を含まないように上限値A_maxに近づける方向に変更することで、パラメータAの探索範囲を狭めるように更新してもよい。
なお、対象パラメータの探索範囲をどの程度狭めるかは、予め定めた減少幅や割合に基づいて決定してもよいし、ランダムに決定してもよい。対象パラメータの探索範囲の更新にランダム性を導入することにより、パラメータの最適値がローカルピークに収束する不都合を抑制する効果がある。
探索範囲更新部14により対象パラメータの探索範囲が更新されると、上述したように、対象パラメータの探索範囲が更新された新たなパラメータ設定21に基づいて、実験計画作成部11によりパラメータ実験計画22が新たに作成される。そして、以降の性能評価部12、対象パラメータ選定部13および探索範囲更新部14の処理が繰り返される。このとき、いずれかのパラメータが探索の終了条件を満たすと、そのパラメータについては最適となるパラメータ値が決定され、最適化の対象から除外される。そして、最適化の対象となる複数のパラメータの全てについて最適となるパラメータ値が決定されると、本実施形態のパラメータ最適化装置10の処理が終了する。
ここで、探索の終了条件としては、例えば、パラメータの探索範囲の大きさ(探索範囲の上限値と下限値との差)が所定値未満になったときに探索を終了するといった条件を用いることができる。また、この場合の所定値として、最適化の対象となるパラメータごとに設定された探索幅を用いてもよい。探索幅は、探索範囲内で最適値を探索する際の粒度を示し、例えば探索範囲の上限値および下限値とともにパラメータ設定21において設定される。探索幅を導入する場合、パラメータ実験計画22を作成するにあたって各パラメータのパラメータ値を探索範囲から選び出す際は、探索範囲内の探索幅刻みの値が選ばれる。また、パラメータ実験計画22を作成する際に、複数のパラメータの全てまたは一部のパラメータについて、探索範囲から探索幅刻みのパラメータ値を全て選び出し、それらの全組み合わせによりパラメータ実験計画22を作成してもよい。
そのほか、例えば、性能評価部12が出力するパラメータ実験結果23を分析した結果、あるパラメータについて、探索範囲から選ばれた各パラメータ値に対応する上述の性能評価値の平均値が概ね等しくなった場合に、そのパラメータに対する探索を終了するといった条件を用いてもよい。この場合、そのパラメータの最適値としては、探索範囲から選ばれたいずれかのパラメータ値を選択すればよい。
<動作説明>
次に、図2を参照して、本実施形態のパラメータ最適化装置10の動作を説明する。図2は、本実施形態のパラメータ最適化装置10の処理手順の一例を示すフローチャートである。なお、図2の各ステップの具体的な内容は上述した通りであるので、詳細な説明は適宜省略する。
図2のフローチャートで示す処理が開始されると、まず、実験計画作成部11が、例えばユーザ操作に応じて入力されたパラメータ設定21を取得する(ステップS101)。そして、実験計画作成部11は、ステップS101で取得したパラメータ設定21に基づいて、パラメータ実験計画22を作成する(ステップS102)。
次に、性能評価部12が、ステップS102で作成されたパラメータ実験計画22に基づいて性能評価実験を実施し、パラメータ実験計画22に含まれる複数のパラメータ値の組み合わせごとに性能評価値を算出し、これらパラメータ値の組み合わせと性能評価値との組をリスト化したパラメータ実験結果23を出力する(ステップS103)。
次に、対象パラメータ選定部13が、ステップS103で出力されたパラメータ実験結果23に含まれる性能評価値の統計量をもとに、最適化の対象となる複数のパラメータのうちで、所定機能の性能に最も影響を与えると推定される対象パラメータを選定する(ステップS104)。そして、探索範囲更新部14が、ステップS104で特定された対象パラメータの探索範囲を、ステップS103で性能評価実験が実施される前の探索範囲よりも狭めるように更新する(ステップS105)。
本実施形態のパラメータ最適化装置10は、以上の一連の処理を行う間、最適化の対象となる全てのパラメータについて最適となるパラメータ値が決定したか否かを判定する(ステップS106)。そして、最適なパラメータ値が決定していないパラメータがあれば(ステップS106:No)、ステップS105で対象パラメータの探索範囲が更新された後にステップS102に戻り、実験計画作成部11により、対象パラメータの探索範囲が更新されたパラメータ設定21に基づいて新たなパラメータ実験計画22が作成され、以降のステップの処理が繰り返される。一方、最適化の対象となる全てのパラメータについて最適となるパラメータ値が決定すると(ステップS106:Yes)、図2のフローチャートで示す一連の処理が終了する。
<実施例>
以下では、画像認識の一例として画像から直線を検出する直線検出の処理を題材とし、本実施形態のパラメータ最適化装置10による処理の具体例を実施例として説明する。直線検出は、入力された画像に対してのノイズ除去処理と、実際に直線の検出を行う処理から構成される。ノイズ除去の処理は、ノイズ除去の程度に影響する“kernel_width”および“kernel_height”のパラメータを持ち、直線検出の処理は、画像中の直線らしい箇所を直線とみなす閾値にあたる“threshold”のパラメータを持つ。本実施例では、これらのパラメータを最適化の対象とする。
また、本実施例では、探索の終了条件として、パラメータの探索範囲の大きさ(探索範囲の上限値と下限値との差)が探索幅未満になったときに探索を終了するといった条件を用いるものとする。そして、パラメータ実験計画22を作成する際の各パラメータのパラメータ値は、そのパラメータの探索範囲の上限値および下限値と、探索幅刻みで上限値と下限値の中央に近い値(これを中央値とみなす)とが選び出され、対象パラメータの探索範囲を更新する際は、探索範囲の上限値と下限値の少なくとも一方が、探索幅刻みで変更されるものとする。
また、本実施例では、実験計画作成部11が3水準の直交表を用いてパラメータ実験計画22を作成するものとする。直交表にはL9、L27、L81(Lnは直交表がn行からなる、つまり、n個のパラメータの組み合わせを含むことを意味する)など、様々な種類のものが存在し、最適化を行うパラメータの種類数に応じて適切なものが使用される。本実施例では、L9直交表を用いてパラメータ実験計画22を作成する例を示す。
実験計画作成部11は、まず、ユーザ操作に応じて入力されたパラメータ設定21を取得し、このパラメータ設定21に基づいて、L9直交表を用いたパラメータ実験計画22を作成する。図3は、パラメータ設定21からパラメータ実験計画22を作成する具体例を示す図である。パラメータ設定21には、“kernel_width”と“kernel_height”と“threshold”の3つのパラメータに対して、それぞれ上限値および下限値と探索幅とが設定されている。実験計画作成部11は、これらパラメータ設定21で示される各パラメータについて、探索範囲の上限値および下限値と、探索幅刻みで上限値と下限値の中央に近い値とを3水準のパラメータ値としてそれぞれ選び出し、これらのパラメータ値をL9直交表に割り付けることによってパラメータ実験計画22を作成する。
次に、性能評価部12が、実験計画作成部11により作成されたパラメータ実験計画22に含まれる各パラメータ値の組み合わせについて性能評価実験を行い、パラメータ実験結果23を出力する。ここでの性能評価実験の手法としては、正解となる直線と検出された直線との距離dを計算し、1/(1+d)を性能評価値として利用するものとする。性能評価部12が出力するパラメータ実験結果23の具体例を図4に示す。パラメータ実験結果23は、図4に示すように、パラメータ実験計画22に含まれる各パラメータ値の組み合わせとその組み合わせに対して算出された性能評価値との組みのリストとなっている。
次に、対象パラメータ選定部13が、性能評価部12が出力するパラメータ実験結果23に基づいて、最適化の対象としている複数のパラメータのうち、直線検出の性能に最も影響を与えると推定される対象パラメータを選定する。本実施例では、パラメータ実験結果23に含まれる性能評価値の分散に着目し、“kernel_width”と“kernel_height”と“threshold”の3つのパラメータそれぞれについて、上述の第1分散と第2分散とに対するF検定を実施してp値を算出し、p値が最も小さいパラメータを対象パラメータとして選定する。
ここで、p値の計算は、一般的なF検定と同様に下記式(1)に従って行う。また、下記式(1)で使用するr,l,nおよび他の変数は、下記式(2)で示される値を用いるものとする。
Figure 2019008342
Figure 2019008342
“kernel_width”と“kernel_height”と“threshold”の3つのパラメータに対してそれぞれ算出されたp値の具体例を図5に示す。この例の場合、3つのパラメータのうち、“threshold”に対して算出されたp値が最も小さいので、“threshold”が対象パラメータとして選定される。
次に、探索範囲更新部14が、対象パラメータ選定部13により選定された対象パラメータの探索範囲を狭めるかたちで更新する。本実施例では、対象パラメータの3水準(探索範囲の上限値、下限値、中央値)のうち最も平均性能(性能評価値の平均値)が高かったものを基準として、対象パラメータの探索範囲を更新するものとする。
例えば、対象パラメータの3水準のうち、上限値における平均性能が最も高かった場合は、中央値を新たな下限値とし、下限値を上限値に近づけるように変更することで、対象パラメータの探索範囲を狭めるかたちで更新する。また、対象パラメータの3水準のうち、下限値における平均性能が最も高かった場合は、中央値を新たな上限値とし、上限値を下限値に近づけるように変更することで、対象パラメータの探索範囲を狭めるように更新する。また、中央値における平均性能が最も高かった場合は、探索幅刻みで上限値と中央値との中央に近い値を新たな上限値とし、探索幅刻みで下限値と中央値との中央に近い値を新たな下限値とし、上限値および下限値を中央値に近づけるように変更することで、対象パラメータの探索範囲を狭めるかたちで更新する。
各パラメータの各水準における平均性能は、例えば、性能評価部12が出力するパラメータ実験結果23から得られる要因効果図により視覚的に把握できる。図6は、パラメータ実験結果23から得られる要因効果図の具体例を示す図であり、図4に示したパラメータ実験結果23から得られる要因効果図を示している。この要因効果図では、横軸に各パラメータごとに3つの水準が並べて配置される。また、図の縦軸で各パラメータの各水準における性能評価値の分散が縦線として表され、各縦線の中の黒丸が各水準における平均性能を表している。この図6に示す例では、対象パラメータとして選定された“threshold”の3水準のうち、中央値“120”において最も高い平均性能が得られているため、探索範囲更新部14は、この中央値“120”を基準として“threshold”の探索範囲を狭めるように更新する。
図7は、対象パラメータの探索範囲を更新する具体例を示す図である。図7に示す例では、対象パラメータである“threshold”の3水準のうち、中央値“120”の平均性能が最も高かったため、“threshold”の探索範囲の上限値は、元の上限値“160”と中央値“120”との中央である“140”に変更され、探索範囲の下限値は、探索幅刻みで元の下限値“60”と中央値“120”との中央に近い値である“80”に変更されている。
ここで、本実施例では、探索の終了条件として、パラメータの探索範囲の大きさが探索幅未満になったときに探索を終了するといった条件を用いるため、探索範囲更新部14によって更新された対象パラメータの探索範囲が探索幅未満になると、対象パラメータの最適値は平均性能が最大となる水準のパラメータ値に決定される。一方、探索範囲更新部14によって更新された対象パラメータの探索範囲が探索幅を超えていれば、対象パラメータの探索範囲を更新したパラメータ設定21に基づいて新たにパラメータ実験計画22が作成される。図7に示した例では、更新された“threshold”の探索範囲の上限値は“140”、下限値は“80”であり、更新された探索範囲の大きさは探索幅“20”を超えているため、新たにパラメータ実験計画22が作成される。
なお、対象パラメータの3水準における平均性能が概ね等しい場合は、対象パラメータの探索範囲を更新せずに、その3水準のパラメータ値のいずれかを対象パラメータの最適値として決定してもよい。
対象パラメータの探索範囲を更新したパラメータ設定21に基づいて新たにパラメータ実験計画22が作成されると、新たに作成されたパラメータ実験計画22に基づいて性能評価実験が実施され、パラメータ実験結果23が出力される。このときのパラメータ実験結果23から得られる要因効果図の具体例を図8に示す。前回の性能評価実験と今回の性能評価実験とでは、パラメータ実験計画22に含まれるパラメータ値の組み合わせのうち、前回の性能評価実験を通じて対象パラメータとして選定された“threshold”のパラメータ値が異なるだけである。しかし、“kernel_width”と“kernel_height”と“threshold”の3つのパラメータは相互作用が強いため、“threshold”のパラメータ値が変更されただけで“kernel_width”および“kernel_height”の各水準における性能評価値の振る舞いが大きく異なったものとなっていることが分かる。このことは、従来のパラメータ最適化手法のように、パラメータが性能に与える影響を応答曲面法によりモデル化して最適なパラメータ値を決定することが困難であることを示している。
これに対し、本実施形態のパラメータ最適化装置10では、パラメータが性能に与える影響をモデル化するのではなく、性能に最も影響を与えると推定される対象パラメータを逐次選定してその探索範囲を狭めるかたちで更新しながら性能評価実験を繰り返すことで、最終的に全てのパラメータについて最適なパラメータ値を決定する。したがって、例えば直線検出に用いる“kernel_width”と“kernel_height”と“threshold”の3つのパラメータのように、相互作用が強い複数のパラメータを最適化の対象とする場合であっても、これら複数のパラメータを効率よく最適化することができる。
図9は、“kernel_width”と“kernel_height”と“threshold”の3つのパラメータ全てについて最適なパラメータ値が決定されるまで対象パラメータの探索範囲を更新しながら性能評価実験を繰り返す様子を、パラメータ設定21の遷移として示す図である。図9に示す例では、“kernel_width”と“kernel_height”と“threshold”の3つのパラメータのうち、“threshold”の最適なパラメータ値が(c)のタイミングで“120”に決定され、“kernel_width” の最適なパラメータ値が(f)のタイミングで“5”に決定され、“kernel_height” の最適なパラメータ値が(g)のタイミングで“7”に決定されている。
<実施形態の効果>
以上、具体的な例を挙げながら詳細に説明したように、本実施形態によれば、パラメータが性能に与える影響をモデル化することなく、最適化の対象となる複数のパラメータを効率よく最適化することができる。したがって、複数のパラメータの相互作用が強いためにモデル化が困難な場合であっても、これら複数のパラメータの最適化を適切に行うことができる。
<変形例>
なお、上述の実施形態においては、パラメータ実験計画22の作成や性能評価実験の実施をパラメータ最適化装置10の内部で行うものとして説明したが、パラメータ最適化装置10は、パラメータ実験結果23を外部から受け取り、外部から受け取ったパラメータ実験結果23に基づいて対象パラメータを選定し、対象パラメータの探索範囲を更新する構成であってもよい。すなわち、パラメータ最適化装置10は、外部から受け取ったパラメータ実験結果23に基づいて対象パラメータを選定する対象パラメータ選定部13と、対象パラメータの探索範囲を更新する探索範囲更新部14のみを備える構成であってもよい。この場合、対象パラメータの探索範囲の更新は、上述の実施形態と同様にパラメータ設定21における対象パラメータの探索範囲の上限値や下限値を変更するものであってもよいし、このような変更をユーザに指示するものであってもよい。
<補足説明>
本実施形態のパラメータ最適化装置10は、例えば、一般的なコンピュータを構成するハードウェアと、コンピュータで実行されるプログラム(ソフトウェア)との協働により実現することができる。例えば、コンピュータが所定のプログラムを実行することによって、上述した実験計画作成部11、性能評価部12、対象パラメータ選定部13、探索範囲更新部14などの機能的な構成要素を実現することができる。
図10は、本実施形態のパラメータ最適化装置10のハードウェア構成例を示すブロック図である。本実施形態のパラメータ最適化装置10は、例えば図10に示すように、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサ101と、RAM(Random Access Memory)やROM(Read Only Memory)などの内部メモリ102と、HDD(Hard Disk Drive)やSDD(Solid State Drive)などのストレージデバイス103と、入力デバイス106やディスプレイ107などの周辺機器を接続するための入出力I/F104と、クライアント端末などの外部機器と通信を行う通信I/F105と、を備えた通常のコンピュータのハードウェア構成を有する。そして、例えば、プロセッサ101が内部メモリ102を利用しながら、ストレージデバイス103や内部メモリ102などに格納されたプログラムを実行することで、上述の機能的な構成要素を実現することができる。
すなわち、本実施形態のパラメータ最適化装置10の機能的な構成要素として示した各部は、コンピュータにより実行されるプログラムに含まれ、コンピュータが備える1以上のプロセッサ(図10のプロセッサ101)がこのプログラムを実行することにより、上述した各部がRAMなどの主記憶(図10の内部メモリ102)上に作成される。
コンピュータにより実行される上記プログラムは、例えば、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD−ROM、CD−R、CD−RW、DVD−ROM、DVD±R、DVD±RW、Blu−ray(登録商標)Discなど)、半導体メモリ、またはこれに類する記録媒体に記録されて提供される。なお、プログラムを記録する記録媒体は、コンピュータが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。また、上記プログラムを、コンピュータに予めインストールするように構成してもよいし、ネットワークを介して配布される上記のプログラムをコンピュータに適宜インストールするように構成してもよい。
なお、本実施形態のパラメータ最適化装置10は、上述した機能的な構成要素の一部または全部を、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアにより実現する構成であってもよい。
また、本実施形態のパラメータ最適化装置10は、複数台のコンピュータを通信可能に接続したネットワークシステムとして構成し、上述した機能的な構成要素を複数台のコンピュータに分散して実現する構成であってもよい。また、本実施形態のパラメータ最適化装置10は、クラウドシステム上で動作する仮想マシンであってもよい。
以上、本発明の実施形態を説明したが、この実施形態は例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10 パラメータ最適化装置
11 実験計画作成部
12 性能評価部
13 対象パラメータ選定部
14 探索範囲更新部
21 パラメータ設定
22 パラメータ実験計画
23 パラメータ実験結果
24 対象パラメータの通知

Claims (12)

  1. 所定機能の性能に関わる複数のパラメータについて、各パラメータに対して各々設定された探索範囲から最適値を探索するパラメータ最適化装置であって、
    前記複数のパラメータごとに探索範囲から選ばれたパラメータ値の組み合わせを複数含むパラメータ実験計画に基づいて前記性能を評価する実験を行うことで得られる性能評価値の統計量をもとに、前記複数のパラメータのうちで前記性能に最も影響を与えると推定される対象パラメータを選定する対象パラメータ選定部と、
    選定された前記対象パラメータの探索範囲を、前記実験を行う前よりも狭めるように更新する探索範囲更新部と、
    を備えるパラメータ最適化装置。
  2. 前記対象パラメータ選定部は、前記複数のパラメータのうち、自身のパラメータ値を変化させたときの前記性能評価値の分散を表す第1分散が、他のパラメータのパラメータ値を変化させたときの前記性能評価値の分散を表す第2分散よりも大きく、前記第1分散と前記第2分散との比が最も大きいパラメータを、前記対象パラメータとして選定する
    請求項1に記載のパラメータ最適化装置。
  3. 前記対象パラメータ選定部は、前記複数のパラメータの各々について、前記第1分散と前記第2分散とに対するF検定を実施してp値を算出し、p値が最も小さいパラメータを前記対象パラメータとして選定する
    請求項2に記載のパラメータ最適化装置。
  4. 前記パラメータ実験計画を作成する実験計画作成部と、
    前記パラメータ実験計画に基づいて前記実験を行って、前記パラメータ実験計画に含まれる複数の前記組み合わせごとに算出される前記性能評価値のリストであるパラメータ実験結果を出力する性能評価部と、をさらに備え、
    前記対象パラメータ選定部は、前記性能評価部が出力する前記パラメータ実験結果に基づいて前記対象パラメータを選定し、
    前記実験計画作成部は、更新された前記対象パラメータの探索範囲に基づいて、前記パラメータ実験計画を新たに作成する
    請求項1乃至3のいずれか一項に記載のパラメータ最適化装置。
  5. 前記実験計画作成部は、前記複数のパラメータごとに少なくとも探索範囲の上限値と下限値とを含む複数のパラメータ値を選び、直交表に基づいて前記パラメータ実験計画を作成する
    請求項4に記載のパラメータ最適化装置。
  6. 前記実験計画作成部は、前記複数のパラメータごとに少なくとも探索範囲の上限値と下限値とを含む複数のパラメータ値を選び、その全組み合わせを含む前記パラメータ実験計画を作成する
    請求項4に記載のパラメータ最適化装置。
  7. 前記実験計画作成部は、前記複数のパラメータごとに少なくとも探索範囲の上限値と下限値とを含む複数のパラメータ値を選び、前記複数のパラメータのうちの一部については全てのパラメータ値を他のパラメータの全てのパラメータ値と組み合わせ、他のパラメータ値については直交表に基づいて組み合わせ数を削減した前記パラメータ実験計画を作成する
    請求項4に記載のパラメータ最適化装置。
  8. 前記探索範囲更新部は、前記対象パラメータの探索範囲から選ばれたパラメータ値のうち、当該パラメータ値を含む全ての組み合わせに対する前記性能評価値の平均値が最も高いパラメータ値を基準として、前記対象パラメータの探索範囲を更新する
    請求項5乃至7のいずれか一項に記載のパラメータ最適化装置。
  9. 前記探索範囲更新部は、前記対象パラメータの探索範囲から選ばれたパラメータ値のうち、当該パラメータ値を含む組み合わせに対して最も高い前記性能評価値が算出されたパラメータ値を基準として、前記対象パラメータの探索範囲を更新する
    請求項5乃至7のいずれか一項に記載のパラメータ最適化装置。
  10. 前記探索範囲更新部は、前記対象パラメータの探索範囲から選ばれたパラメータ値のうち、当該パラメータ値を含む組み合わせに対して最も低い前記性能評価値が算出されたパラメータ値を含まないように、前記対象パラメータの探索範囲を更新する
    請求項5乃至7のいずれか一項に記載のパラメータ最適化装置。
  11. 所定機能の性能に関わる複数のパラメータについて、各パラメータに対して各々設定された探索範囲から最適値を探索するパラメータ最適化方法であって、
    前記複数のパラメータごとに探索範囲から選ばれたパラメータ値の組み合わせを複数含むパラメータ実験計画に基づいて前記性能を評価する実験を行うことで得られる性能評価値の統計量をもとに、前記複数のパラメータのうちで前記性能に最も影響を与えると推定される対象パラメータを選定するステップと、
    選定された前記対象パラメータの探索範囲を、前記実験を行う前よりも狭めるように更新するステップと、
    を含むパラメータ最適化方法。
  12. 所定機能の性能に関わる複数のパラメータについて、各パラメータに対して各々設定された探索範囲から最適値を探索する機能を備えコンピュータに、
    前記複数のパラメータごとに探索範囲から選ばれたパラメータ値の組み合わせを複数含むパラメータ実験計画に基づいて前記性能を評価する実験を行うことで得られる性能評価値の統計量をもとに、前記複数のパラメータのうちで前記性能に最も影響を与えると推定される対象パラメータを選定する機能と、
    選定された前記対象パラメータの探索範囲を、前記実験を行う前よりも狭めるように更新する機能と、
    を実現させるためのプログラム。
JP2017120437A 2017-06-20 2017-06-20 パラメータ最適化装置、パラメータ最適化方法およびプログラム Active JP6571134B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017120437A JP6571134B2 (ja) 2017-06-20 2017-06-20 パラメータ最適化装置、パラメータ最適化方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017120437A JP6571134B2 (ja) 2017-06-20 2017-06-20 パラメータ最適化装置、パラメータ最適化方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2019008342A true JP2019008342A (ja) 2019-01-17
JP6571134B2 JP6571134B2 (ja) 2019-09-04

Family

ID=65028927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017120437A Active JP6571134B2 (ja) 2017-06-20 2017-06-20 パラメータ最適化装置、パラメータ最適化方法およびプログラム

Country Status (1)

Country Link
JP (1) JP6571134B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020187642A (ja) * 2019-05-16 2020-11-19 富士通株式会社 最適化装置、最適化システム、最適化方法および最適化プログラム
CN116027756A (zh) * 2023-02-24 2023-04-28 季华实验室 生产参数在线最优化方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003173328A (ja) * 2001-12-05 2003-06-20 Mitsubishi Electric Corp 最適パラメータ推定装置及び最適パラメータ推定方法
JP2006197224A (ja) * 2005-01-13 2006-07-27 Konica Minolta Holdings Inc 最適圧縮条件導出システム
WO2008001678A2 (fr) * 2006-06-26 2008-01-03 International Business Machines Corporation Procédé, programme et dispositif destinés à l'optimisation d'un ensemble de paramètres de configuration de système

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003173328A (ja) * 2001-12-05 2003-06-20 Mitsubishi Electric Corp 最適パラメータ推定装置及び最適パラメータ推定方法
JP2006197224A (ja) * 2005-01-13 2006-07-27 Konica Minolta Holdings Inc 最適圧縮条件導出システム
WO2008001678A2 (fr) * 2006-06-26 2008-01-03 International Business Machines Corporation Procédé, programme et dispositif destinés à l'optimisation d'un ensemble de paramètres de configuration de système

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
内村 俊二、該3名: ""実験計画法によるGabor特徴の分析"", 電子情報通信学会技術研究報告, vol. 96, no. 140, JPN6019010075, 27 June 1996 (1996-06-27), JP, pages 17 - 24 *
坪田 啓太、該4名: ""多クラスサポートベクターマシンにおけるパラメータの分割自動最適化手法"", 電子情報通信学会技術研究報告, vol. 106, no. 588, JPN6019010074, 7 March 2007 (2007-03-07), JP, pages 121 - 126 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020187642A (ja) * 2019-05-16 2020-11-19 富士通株式会社 最適化装置、最適化システム、最適化方法および最適化プログラム
JP7252449B2 (ja) 2019-05-16 2023-04-05 富士通株式会社 最適化装置、最適化システム、最適化方法および最適化プログラム
CN116027756A (zh) * 2023-02-24 2023-04-28 季华实验室 生产参数在线最优化方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
JP6571134B2 (ja) 2019-09-04

Similar Documents

Publication Publication Date Title
US10540592B2 (en) Program generation apparatus and program generation method
US8171025B2 (en) Density-based data clustering method
WO2015103964A1 (en) Method, apparatus, and device for determining target user
US10303447B2 (en) Program generating apparatus and method therefor
US9058540B2 (en) Data clustering method and device, data processing apparatus and image processing apparatus
JP2017097807A (ja) 学習方法、学習プログラムおよび情報処理装置
JP6571134B2 (ja) パラメータ最適化装置、パラメータ最適化方法およびプログラム
JP7003753B2 (ja) 探索点決定プログラム、探索点決定方法および探索点決定装置
US9250931B2 (en) System, method, and computer program product for calculating settings for a device, utilizing one or more constraints
US10600501B2 (en) System and methods for identifying a base call included in a target sequence
JP5794181B2 (ja) プログラム、分析方法、情報処理装置
CN106610977B (zh) 一种数据聚类方法和装置
JP5973636B1 (ja) 異常ベクトル検出装置および異常ベクトル検出プログラム
JP2021065699A (ja) ユーザ分析およびコンテンツ選択の装置および方法
JP7115207B2 (ja) 学習プログラム、学習方法および学習装置
US11989663B2 (en) Prediction method, prediction apparatus, and computer-readable recording medium
US20190025803A1 (en) Computer system and control method
JP2015001968A (ja) 機械学習装置、機械学習方法、およびプログラム
WO2022100370A1 (zh) 一种基于svm的流处理框架的自动调优方法
JP7003504B2 (ja) 情報処理装置及びプログラム
US11151458B2 (en) Apparatus and method for generating image processing program using genetic programming
KR102031842B1 (ko) 웨이퍼 맵의 처리 방법 및 이를 위한 컴퓨터 프로그램
JP5672035B2 (ja) 入力パラメータ算出方法、装置及びプログラム
US9858551B2 (en) Ranking analysis results based on user perceived problems in a database system
US20160357846A1 (en) Data classification apparatus, non-transitory computer-readable recording medium storing program for data classification, and data classification method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180328

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190326

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190402

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190807

R151 Written notification of patent or utility model registration

Ref document number: 6571134

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151