IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧

特許7658451情報処理装置、情報処理方法、及び情報処理プログラム
<>
  • 特許-情報処理装置、情報処理方法、及び情報処理プログラム 図1
  • 特許-情報処理装置、情報処理方法、及び情報処理プログラム 図2
  • 特許-情報処理装置、情報処理方法、及び情報処理プログラム 図3
  • 特許-情報処理装置、情報処理方法、及び情報処理プログラム 図4
  • 特許-情報処理装置、情報処理方法、及び情報処理プログラム 図5
  • 特許-情報処理装置、情報処理方法、及び情報処理プログラム 図6
  • 特許-情報処理装置、情報処理方法、及び情報処理プログラム 図7
  • 特許-情報処理装置、情報処理方法、及び情報処理プログラム 図8
  • 特許-情報処理装置、情報処理方法、及び情報処理プログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-03-31
(45)【発行日】2025-04-08
(54)【発明の名称】情報処理装置、情報処理方法、及び情報処理プログラム
(51)【国際特許分類】
   G06N 99/00 20190101AFI20250401BHJP
【FI】
G06N99/00 180
【請求項の数】 10
(21)【出願番号】P 2023552406
(86)(22)【出願日】2021-10-04
(86)【国際出願番号】 JP2021036579
(87)【国際公開番号】W WO2023058081
(87)【国際公開日】2023-04-13
【審査請求日】2024-04-01
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和3年度、国立研究開発法人科学技術振興機構、個人型研究(ACT-I)「部分的フィードバックに基づくオンライン凸最適化」に関する委託研究、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】伊藤 伸志
【審査官】北川 純次
(56)【参考文献】
【文献】特開2019-003405(JP,A)
【文献】ITO, Shinji,On Optimal Robustness to Adversarial Corruption in Online Decision Problems,arXiv.org [online],2021年09月22日,pp. 1-14,[検索日 2021.11.10], インターネット:<URL:https://arxiv.org/pdf/2109.10963.pdf>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00 - 99/00
(57)【特許請求の範囲】
【請求項1】
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]={1,2,・・・,n}(nは任意の自然数)の部分集合X⊆[n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、
前記選択手段が選択した部分集合X⊆[n]を示す情報を出力する出力手段と、
を備えており、
前記選択手段は、
各ラウンドt∈[T]における目的関数の観測値f(X)と比較対象解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X⊆[n]を選択し、
前記出力手段がラウンドtにおいて前記部分集合X を出力した後に、任意の部分集合X⊆[n]に対する前記目的関数の観測値f (X)を取得可能な取得手段を更に備え、
前記選択手段は、前記取得手段が取得した前記目的関数の観測値f (X)を参照可能であり、
前記上限値A(Δ,n,C)は、
【数1】
と表現される
ことを特徴とする情報処理装置。
【請求項2】
前記ギャップ指標は、前記目的関数fが確率分布Dに従うとした場合の当該目的関数fの期待値
【数2】
を用いて、
【数3】
と表現され、
前記外乱指標Cは、前記目的関数fと時間依存目的関数f’とを用いて
【数4】
と表現される
請求項1に記載の情報処理装置。
【請求項3】
前記選択手段は、
各i∈[n]に関し、学習率λtiと累積劣勾配Gtiとを用いて、n次元ベクトルx∈[0,1]
【数5】
によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと
[0,1]上に一様分布する確率変数uの値を決定する確率変数決定ステップと、
部分集合Xを、X={i∈[n]|xti≧u}を満たすように決定する部分集合決定ステップと、
目的関数の観測値f(X)を取得する取得ステップと、
目的関数fの劣勾配g∈Rを計算する劣勾配算出ステップと、
累積劣勾配Gを、Gt+1=G+gによって更新する更新ステップと、
を各ラウンドにおいて実行する
請求項に記載の情報処理装置。
【請求項4】
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]={1,2,・・・,n}(nは任意の自然数)の部分集合X ⊆[n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、
前記選択手段が選択した部分集合X ⊆[n]を示す情報を出力する出力手段と、
を備えており、
前記選択手段は、
各ラウンドt∈[T]における目的関数の観測値f (X )と比較対象解X とを用いて表されるリグレットΣ t∈[T] (X )-Σ t∈[T] (X )の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X ⊆[n]を選択し、
出力手段がラウンドtにおいて前記部分集合Xを出力した後に、選択した部分集合Xに対する前記目的関数の観測値f(X)を取得可能な取得手段を更に備え、
前記選択手段は、
前記選択した部分集合Xに対する前記目的関数の観測値f(X)を参照することが可能であり、且つ、
前記選択した部分集合以外の部分集合X⊆[n]に対する前記目的関数の観測値f(X)を参照することが不可能であり、
前記上限値A(Δ,n,C)は、
【数6】
と表現される情報処理装置。
【請求項5】
前記選択手段は、
各i∈[n]に関し、学習率λと、累積劣勾配^Gtiと、関数ζ
【数7】
とを用いて、n次元ベクトルx∈[0,1]を、xti=ζ(^Gti/λ)によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと、
確率
【数8】
【数9】
に従ってインデックスi∈{0,1,・・・,n}を選択するインデックス選択ステップと、
部分集合Xを、X={σ(j)|j∈[i]}を満たすように決定する部分集合決定ステップと、
目的関数の観測値f(X)を取得するステップと、
目的関数fの劣勾配^g∈Rを計算する劣勾配算出ステップと、
累積劣勾配^Gtiを、^Gt+1=^G+^gによって更新する更新ステップと、
を各ラウンドにおいて実行する
請求項に記載の情報処理装置。
【請求項6】
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]={1,2,・・・,n}(nは任意の自然数)の部分集合X⊆[n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、
前記選択手段が選択した部分集合X⊆[n]を示す情報を出力する出力手段と、
を備えており、
前記選択手段は、
各i∈[n]に関し、学習率λtiと累積劣勾配Gtiとを用いて、n次元ベクトルx∈[0,1]
【数10】
によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと
[0,1]上に一様分布する確率変数uの値を決定する確率変数決定ステップと、
部分集合Xを、X={i∈[n]|xti≧u}を満たすように決定する部分集合決定ステップと、
目的関数f(X)の値を取得する取得ステップと、
目的関数fの劣勾配g∈Rを計算する劣勾配算出ステップと、
累積劣勾配Gを、Gt+1=G+gによって更新する更新ステップと、
を各ラウンドにおいて実行する情報処理装置。
【請求項7】
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]={1,2,・・・,n}(nは任意の自然数)の部分集合X⊆[n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、
前記選択手段が選択した部分集合X⊆[n]を示す情報を出力する出力手段と、
を備えており、
前記選択手段は、
各i∈[n]に関し、学習率λと、累積劣勾配^Gtiと、関数ζ
【数11】
とを用いて、n次元ベクトルx∈[0,1]を、xti=ζ(^Gti/λ)によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと、
確率
【数12】
【数13】
に従ってインデックスi∈{0,1,・・・,n}を選択するインデックス選択ステップと、
部分集合Xを、X={σ(j)|j∈[i]}を満たすように決定する部分集合決定ステップと、
目的関数f(X)の値を取得するステップと、
目的関数fの劣勾配^g∈Rを計算する劣勾配算出ステップと、
累積劣勾配^Gtiを、^Gt+1=^G+^gによって更新する更新ステップ
と、
を各ラウンドにおいて実行する情報処理装置。
【請求項8】
1又は複数のプロセッサが、
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]={1,2,・・・,n}(nは任意の自然数)の部分集合X⊆[n]を、ラウンドt-1における目的関数の観測値を参照して選択することと、
前記選択した部分集合X⊆[n]を示す情報を出力することとを含んでおり、
前記選択する工程において、
各ラウンドt∈[T]における目的関数の観測値f(X)と最適解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X⊆[n]を選択し、
前記出力する工程においてラウンドtにおいて前記部分集合X を出力した後に、任意の部分集合X⊆[n]に対する前記目的関数の観測値f (X)を取得可能な取得工程を更に含み、
前記選択する工程では、前記取得工程にて取得した前記目的関数の観測値f (X)を参照可能であり、
前記上限値A(Δ,n,C)は、
【数14】
と表現される
ことを特徴とする情報処理方法。
【請求項9】
1又は複数のプロセッサが、
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]={1,2,・・・,n}(nは任意の自然数)の部分集合X ⊆[n]を、ラウンドt-1における目的関数の観測値を参照して選択することと、
前記選択した部分集合X ⊆[n]を示す情報を出力することとを含んでおり、
前記選択する工程において、
各ラウンドt∈[T]における目的関数の観測値f (X )と最適解X とを用いて表されるリグレットΣ t∈[T] (X )-Σ t∈[T] (X )の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X ⊆[n]を選択し、
前記出力する工程においてラウンドtにおいて前記部分集合X を出力した後に、選択した部分集合X に対する前記目的関数の観測値f (X )を取得可能な取得工程を更に含み、
前記選択する工程では、
前記選択した部分集合X に対する前記目的関数の観測値f (X )を参照することが可能であり、且つ、
前記選択した部分集合以外の部分集合X⊆[n]に対する前記目的関数の観測値f (X)を参照することが不可能であり、
前記上限値A(Δ,n,C)は、
【数15】
と表現される
ことを特徴とする情報処理方法。
【請求項10】
コンピュータに
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]={1,2,・・・,n}(nは任意の自然数)の部分集合X⊆[n]を、ラウンドt-1における目的関数の観測値を参照して選択する処理と、
前記選択した部分集合X⊆[n]を示す情報を出力する処理と
を実行させ、
前記選択する処理において、
各ラウンドt∈[T]における目的関数の観測値f(X)と最適解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X⊆[n]を選択し、
前記出力する処理においてラウンドtにおいて前記部分集合X を出力した後に、任意の部分集合X⊆[n]に対する前記目的関数の観測値f (X)を取得可能な取得処理を更に実行させ、
前記選択する処理では、前記取得処理にて取得した前記目的関数の観測値f (X)を参照可能であり、
前記上限値A(Δ,n,C)は、
【数16】
と表現される
ことを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オンライン最適化問題の解を提供する情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【0002】
最適化すべき指標を表現する関数が逐次的に変化し得る条件下での、当該指標の最適化(オンライン最適化とも呼ばれる)を実行するアルゴリズムが知られている(例えば非特許文献1)。
【先行技術文献】
【非特許文献】
【0003】
【文献】E. Hazan and S. Kale, 'Online Submodular Minimization', Journal of Machine Learning Research 13 (2012) 2903-2922
【発明の概要】
【発明が解決しようとする課題】
【0004】
非特許文献1に記載の方法においては、リグレットΣt∈[T](X)-minX∈S{Σt∈[T](X)}の期待値をO(nT1/2)以下に抑える部分集合X,X,…,Xが導出される。
【0005】
一方、オンライン最適化問題は、大別して以下の2つのモデルに分類されることが知られており、何れのモデルを仮定するかによって、好適な最適化アルゴリズムは異なり得る。
・目的関数が定常的な確率分布に従うと仮定する確率的モデル(stochastic model)
・目的関数が非定常的に(敵対的に)変動する敵対的モデル(adversarial model)
しかしながら、オンライン最適化問題においては、一般に、確率的モデル及び敵対的モデルの何れを仮定すべきかに関する先験的情報を取得することは難しい。このため、確率的モデル及び敵対的モデルの何れを仮定すべきかに関する先験的情報を参照することなく、確率的モデル及び敵対的モデルの双方に対して好適に最適化問題の解を提供できる技術が望まれていた。
【0006】
本発明の一態様は、上記の問題に鑑みてなされたものであり、その目的の一例は、確率的モデル及び敵対的モデルの何れを仮定すべきかに関する先験的情報を参照することなく、確率的モデル及び敵対的モデルの双方に対して好適に最適化問題の解を提供できる技術を実現することにある。
【課題を解決するための手段】
【0007】
本発明の一態様に係る情報処理装置は、あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、前記選択手段が選択した部分集合X [n]を示す情報を出力する出力手段と、を備えており、前記選択手段は、各ラウンドt∈[T]における目的関数の観測値f(X)と比較対象解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する
【0008】
本発明の一態様に係る情報処理装置は、あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、前記選択手段が選択した部分集合X [n]を示す情報を出力する出力手段と、を備えており、前記選択手段は、
各i∈[n]に関し、学習率λtiと累積劣勾配Gtiとを用いて、n次元ベクトルx∈[0,1]
【数1】

によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと
[0,1]上に一様分布する確率変数uの値を決定する確率変数決定ステップと、
部分集合Xを、X={i∈[n]|xti≧u}を満たすように決定する部分集合決定ステップと、
目的関数f(X)の値を取得する取得ステップと、
目的関数fの劣勾配g∈Rを計算する劣勾配算出ステップと、
累積劣勾配Gを、Gt+1=G+gによって更新する更新ステップと、
を各ラウンドにおいて実行する。
【0009】
本発明の一態様に係る情報処理装置は、あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、前記選択手段が選択した部分集合X [n]を示す情報を出力する出力手段と、
を備えており、前記選択手段は、
各i∈[n]に関し、学習率λと、累積劣勾配^Gtiと、関数ζ
【数2】

とを用いて、n次元ベクトルx [0,1]を、xti=ζ(^Gti/λ)によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと、
確率
【数3】

【数4】

に従ってインデックスi∈{0,1,・・・,n}を選択するインデックス選択ステップと、
部分集合Xを、X={σ(j)|j∈[i]}を満たすように決定する部分集合決定ステップと、
目的関数f(X)の値を取得するステップと、
目的関数fの劣勾配^g∈Rを計算する劣勾配算出ステップと、
累積劣勾配^Gtiを、^Gt+1=^G+^gによって更新する更新ステップと、
を各ラウンドにおいて実行する。
【0010】
本発明の一態様に係る情報処理方法は、あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択することと、前記選択した部分集合X [n]を示す情報を出力することとを含んでおり、前記選択する工程において、各ラウンドt∈[T]における目的関数の観測値f(X)と最適解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する。
【0011】
本発明の一態様に係る情報処理プログラムは、コンピュータに、あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する処理と、前記選択した部分集合X [n]を示す情報を出力する処理とを実行させ、前記選択する処理において、各ラウンドt∈[T]における目的関数の観測値f(X)と最適解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する。
【発明の効果】
【0012】
本発明の一態様によれば、確率的モデル及び敵対的モデルの何れを仮定すべきかに関する先験的情報を参照することなく、確率的モデル及び敵対的モデルの双方に対して好適に最適化問題の解を提供することができる。
【図面の簡単な説明】
【0013】
図1】第1の例示的実施形態に係る情報処理装置の構成を示すブロック図である。
図2】第1の例示的実施形態に係る情報処理方法の流れを示すフロー図である。
図3】第1の例示的実施形態に係る情報処理装置による効果を説明するための図である。
図4】第2の例示的実施形態に係る情報処理装置の構成を示すブロック図である。
図5】第2の例示的実施形態に係る情報処理システムにおける処理の流れを示すフロー図である。
図6】第2の例示的実施形態に係る情報処理装置が実行する処理例1を示すフロー図である。
図7】第2の例示的実施形態に係る情報処理装置が実行する処理例2を示すフロー図である。
図8】第2の例示的実施形態に係る情報処理装置が表示する表示画面例を示す図である。
図9】各例示的実施形態に係る情報処理装置として機能するコンピュータの構成を示すブロック図である。
【発明を実施するための形態】
【0014】
〔例示的実施形態1〕
本発明の第1の例示的実施形態について、図面を参照して詳細に説明する。本例示的実施形態は、後述する例示的実施形態の基本となる形態である。
【0015】
<情報処理装置1の概要>
本例示的実施形態に係る情報処理装置1は、概略的に言えば、最適化すべき指標を表現する関数が逐次的に変化し得る条件下での、当該指標の最適化(オンライン最適化とも呼ばれる)を実行する情報処理装置である。換言すれば、情報処理装置1は、オンライン最適化問題の解を提供する情報処理装置である。
【0016】
情報処理装置1は、一例として、あるラウンドにおいてある行動を決定し、その行動により得られた結果に関する観測値を取得する。そして、当該観測値の値を参照して次のラウンドにおいて実行すべき行動を決定する、という処理を繰り返す。ここで、行動と結果との関係は、一例として、行動を引数とし、結果を関数値とする未知の目的関数によって表現されると仮定する。したがって、あるラウンドにおいて決定した行動と、当該行動によって得られた結果とを参照することによって、情報処理装置1は、当該目的関数に関する(局所的な)情報を得ることになる。
【0017】
また、上記行動の一例としては、1又は複数の商品の価格設定が挙げられ、上記結果に関する観測値としては、当該価格設定によって得られた実際の売上高、または、当該価格設定によって生じた実際の損失額(目標売上高から実際の売上高を引いたもの)が挙げられるがこれは本例示的実施形態を限定するものではない。また、上記最適化すべき指標としては、一例として、
・実際の売上高の総和と、理想的な(最適な)行動をとったとした場合の売上高の総和との差(又はその期待値)であるリグレット、または
・実際の損失額の総和と、理想的な(最適な)行動をとったとした場合の損失額の総和との差(又はその期待値)であるリグレット
等が挙げられるがこれは本例示的実施形態を限定するものではない。
【0018】
また、本例示的実施形態において、情報処理装置1が解くオンライン最適化問題は、一例として、以下のように位置づけられる。
【0019】
(実行可能領域)
情報処理装置1が解くオンライン最適化問題は、一例として、組み合わせ集合(部分集合族)に分類されるオンライン最適化問題である。ここで、当該組み合わせ集合に分類されるオンライン最適化問題では、目的関数の性質として、重み付き和、又は劣モジュラ性が仮定される。また、組み合わせ集合に分類されるオンライン最適化問題では、複数の要素を有する組み合わせ集合を対象とするので、一例として、複数の商品の価格の組み合わせを取り扱うことができる。
【0020】
(フィードバック情報量)
情報処理装置1が解くオンライン最適化問題は、大別して以下の2つの設定に基づくオンライン最適化問題である。ここで、Full-Information設定は、Bandit-Feedback設定よりも、目的関数に関するフィードバック情報量が多い。
・Full-Information設定:あるラウンドtにおいて部分集合X(ある行動)を選択した後、任意の部分集合X(他の行動)に対する目的関数fの値f(X)を参照することが可能である。
・Bandit-Feedback設定:ラウンドtにおいて部分集合X(ある行動)を選択した後、選択した部分集合X(ある行動)に対する目的関数fの値f(X)を参照することが可能であり、且つ、選択した部分集合以外の部分集合X(他の行動)に対する目的関数fの値f(X)を参照することが不可能である。
【0021】
(対象モデル)
オンライン最適化問題は、大別して以下の2つのモデルに分類される。
・目的関数が定常的な確率分布に従うと仮定する確率的モデル(stochastic model)
・目的関数が非定常的に(敵対的に)変動する敵対的モデル(adversarial model)
後述するように、情報処理装置1は、
・確率的モデルに対する敵対的外乱(stochastic model with adversarial corruption)
を外乱指標Cを用いて定量的に評価可能に構成されており、確率的モデル、敵対的モデル、及び確率的モデルに対する敵対的外乱の何れに対しても適用可能なアルゴリズムを実行する。
【0022】
このため、情報処理装置1は、確率的モデル及び敵対的モデルの何れを仮定すべきかに関する先験的情報を参照することなく、確率的モデル及び敵対的モデルの双方に好適に適用可能なハイブリッドアルゴリズム(Best of Both Worlds Algorithm)により、確率的モデル及び敵対的モデルの何れに対しても最適化問題を好適に解くことができる。
【0023】
<情報処理装置1の構成>
続いて、本例示的実施形態に係る情報処理装置1の構成について説明する。図1は、本例示的実施形態に係る情報処理装置1の構成を示すブロック図である。図1に示すように、情報処理装置1は、選択部11、及び出力部12を備えている。
【0024】
選択部11は、あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する。
【0025】
出力部12は、選択部11が選択した部分集合X [n]を示す情報を出力する。
【0026】
ここで、部分集合Xは、ラウンドtにおける行動を規定する部分集合であり、一例として、商品の識別情報を要素として含む部分集合としての意味を有するが、これは本例示的実施形態を限定するものではない。また、上記目的関数の例として、行動と売上高との関係を規定する目的関数、又は、行動と損失額との関係を規定する目的関数が挙げられるが、これは本例示的実施形態を限定するものではない。
【0027】
また、本例示的実施形態に係る集合[n]={1,2,・・・,n}(nは任意の自然数)の各要素は、n個の要素からなる任意の集合Sの各要素と一対一に対応する。したがって、本例示的実施形態において説明する処理は、n個の要素からなる任意の集合Sに適用することができる。
【0028】
また、本例示的実施形態に係る選択部11は、各ラウンドt∈[T]における目的関数の観測値f(X)と比較対象解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する。なお、比較対象解は、一例として、損失を表す目的関数を最小化する最適解である。
【0029】
また、売上高を表す目的関数を用いる場合には、上記リグレットの符号を反対にしたものを用いてもよい。換言すれば、上記リグレットΣt∈[T](X)-Σt∈[T](X)の期待値の絶対値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択するものであると表現してもよい。
【0030】
なお、本例示的実施形態において、目的関数fは、一例として、劣モジュラ性を満たす関数(劣モジュラ関数)である。すなわち、目的関数fは、X,Y⊆[n]を満たす任意の部分集合X,Yに対して、不等式
(X∩Y)+f(X∪Y)≦f(X)+f(Y)
を満たす。ただし、これは本例示的実施形態を限定するものではない。
【0031】
また、出力部12による、部分集合X [n]を示す情報の出力先は本例示的実施形態を限定するものではないが、一例として、出力部12が表示パネルを備え、当該表示パネルに当該部分集合Xを示す情報を表示させる構成としてもよい。また、出力部12が他の装置に部分集合Xを示す情報を提供し、当該他の装置において当該情報を表示してもよいし、当該情報を参照して、商品などの価格を自動的に更新する構成としてもよい。
【0032】
また、前記ギャップ指標は、前記目的関数fが確率分布Dに従うとした場合の当該目的関数fの期待値
【数5】

を用いて、
【数6】

と表現される。
【0033】
また、前記外乱指標Cは、前記目的関数fと時間依存目的関数f’とを用いて
【数7】

と表現される。
【0034】
上記のように構成された情報処理装置1では、リグレットの期待値が、上限値A(Δ,n,C)によって上から抑えられる。ここで、当該上限値は確率的モデル及び敵対的モデルの双方を包含するよう規定されるものであり、上述のように、確率的モデルの敵対的外乱を示す外乱指標Cを用いて表現される。したがって、上記のように構成された情報処理装置1によれば、確率的モデル及び敵対的モデルの何れに対しても最適化問題を好適に解くことができる。
【0035】
<情報処理方法>
続いて、図2を参照して情報処理装置1が実行する情報処理方法S1の流れについて説明する。図2は、情報処理装置1が実行する情報処理方法S1の流れを示すフロー図である。
【0036】
(ステップS11)
ステップS11において、選択部11は、あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する。
【0037】
(ステップS12)
ステップS12において、出力部12は、選択部11が選択した部分集合X [n]を示す情報を出力する。
【0038】
ここで、ステップS11において、選択部11は、各ラウンドt∈[T]における目的関数の観測値f(X)と比較対象解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する。なお、比較対象解は、上述のように、一例として、損失を表す目的関数を最小化する最適解である。
【0039】
上記のように構成された情報処理方法S1では、リグレットの期待値が、上限値A(Δ,n,C)によって上から抑えられる。ここで、当該上限値は確率的モデル及び敵対的モデルの双方を包含するよう規定されるものであり、上述のように、確率的モデルの敵対的外乱を示す外乱指標Cを用いて表現される。したがって、上記のような情報処理方法S1によれば、確率的モデル及び敵対的モデルの何れに対しても最適化問題を好適に解くことができる。
【0040】
(情報処理方法S1によるアルゴリズムと他のアルゴリズムとの比較)
図3は本例示的実施形態に係る情報処理方法S1によるアルゴリズムの効果を模式的に示す図である。図3の上から1段目は、確率的モデル(より具体的には確率的モデルが好適に適用される状況、以下同様)における損失(目的関数)と時刻(ラウンド)との関係を示す模式図であり、図3の上から2段目は、確率的モデルに適用した各アルゴリズム
・敵対的モデル専用アルゴリズム
・確率的モデル専用アルゴリズム
・アルゴリズムS1(情報処理方法S1によるアルゴリズム)
によるリグレットと時刻との関係を示す模式図である。
【0041】
図3の上から1段目に示すように、確率的モデルでは、目的関数が未知の分布に従うと仮定される。ここで、当該未知の分布は一例として、時間に依存しない(定常的な)一様な確率分布である。このような状況では、図3の上から1段目に示すように、敵対的モデル専用アルゴリズムによるリグレットは、確率的モデル専用アルゴリズムによりリグレットよりも大きくなる。一方で、アルゴリズムS1では、リグレットが上限値A(Δ,n,C)によって上から抑えられるため、アルゴリズムS1によるリグレットは、敵対的モデル専用アルゴリズムによるリグレットよりも小さなものとなる。
【0042】
一方、図3の上から3段目は、敵対的モデル(より具体的には敵対的モデルが好適に適用される状況、以下同様)における損失(目的関数)と時刻(ラウンド)との関係を示す模式図であり、図3の上から4段目は、敵対的モデルに適用した各アルゴリズム
・敵対的モデル専用アルゴリズム
・確率的モデル専用アルゴリズム
・アルゴリズムS1(情報処理方法S1によるアルゴリズム)
によるリグレットと時刻との関係を示す模式図である。
【0043】
図3の上から3段目に示すように、敵対的モデルでは、目的関数が非定常的に振る舞うことが仮定される。より具体的に言えば、ラウンドtにおける目的関数fが、ラウンドt-1までの選択した部分集合のシーケンス(X,X,・・・,Xt-1)に依存する。このような状況では、図3の上から4段目に示すように、確率的モデル専用アルゴリズムによるリグレットは、敵対的モデル専用アルゴリズムによりリグレットよりも大きくなる。一方で、アルゴリズムS1では、リグレットが上限値A(Δ,n,C)によって上から抑えられるため、アルゴリズムS1によるリグレットは、確率的モデル専用アルゴリズムによるリグレットよりも小さなものとなる。
【0044】
このように、上記のような情報処理装置1及び情報処理方法S1によれば、確率的モデル及び敵対的モデルの何れに対しても最適化問題を好適に解くことができる。
【0045】
〔例示的実施形態2〕
本発明の第2の例示的実施形態について、図面を参照して詳細に説明する。なお、例示的実施形態1にて説明した構成要素と同じ機能を有する構成要素については、同じ符号を付し、その説明を適宜省略する。
【0046】
<情報処理システム100Aの概要>
本例示的実施形態に係る情報処理システム100Aの構成について、図4を参照して説明する。図4は、情報処理システム100Aの構成を示すブロック図である。図4に示すように、情報処理システム100Aは、情報処理装置1Aと、端末装置2Aとを含んでいる。また、図4に示すように、情報処理装置1Aと端末装置2AとはネットワークNを介して通信可能に構成されている。ここで、ネットワークNの具体的構成は本例示的実施形態を限定するものではないが、一例として、無線LAN(Local Area Network)、有線LAN、WAN(Wide Area Network)、公衆回線網、モバイルデータ通信網、又は、これらのネットワークの組み合わせを用いることができる。
【0047】
<情報処理装置1Aの構成>
図4に示すように、情報処理装置1Aは、制御部10Aと、記憶部17Aと、通信部19Aとを備えている。
【0048】
記憶部17Aには、後述する端末装置2Aから受信した目的関数の観測値OBが格納される。また、記憶部17Aには、選択部11によって選択された選択済の部分集合SBが格納されている。
【0049】
通信部19Aは、情報処理装置1Aの外部の装置と通信を行う。一例として通信部19Aは、端末装置2Aと通信を行う。通信部19Aは、制御部10Aから供給されたデータを端末装置2Aに送信したり、端末装置2Aから受信したデータを制御部10Aに供給したりする。
【0050】
(制御部10A)
制御部10Aは、図4に示すように、選択部11、出力部12、及び取得部13を備えている。
【0051】
取得部13は、各ラウンドt∈[T](Tは任意の自然数)における目的関数fの観測値OBを、通信部19Aを介して端末装置2Aから取得する。取得部13は、取得した目的関数の観測値OBを、記憶部17Aに格納する。ここで、取得部13が取得可能な情報は、Full-Information設定か、Bandit-Feedback設定かによって異なり得る。
【0052】
Full-Information設定では、取得部13は、出力部12がラウンドtにおいて部分集合Xを出力した後に得られる目的関数の観測値であって、任意の部分集合X[n]に対する目的関数の観測値f(X)を取得可能である。
【0053】
一方、Bandit-Feedback設定では、取得部13は、出力部12がラウンドtにおいて部分集合Xを出力した後に得られる目的関数の観測値であって、選択した部分集合Xに対する目的関数の観測値f(X)を取得可能であるが、前記選択した部分集合以外の部分集合X[n]に対する目的関数の観測値f(X)は取得可能ではない。
【0054】
ここで、部分集合Xは、例示的実施形態1と同様に、ラウンドtにおける行動を規定する部分集合であり、一例として、商品の識別情報を要素として含む部分集合としての意味を有するが、これは本例示的実施形態を限定するものではない。また、上記目的関数の例として、行動と売上高との関係を規定する目的関数、又は、行動と損失額との関係を規定する目的関数が挙げられるが、これは本例示的実施形態を限定するものではない。
【0055】
選択部11は、あるラウンドにおいて、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する。
【0056】
ここで、本例示的実施形態に係る選択部11は、各ラウンドt∈[T]における目的関数の観測値f(X)と比較対象解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する。なお、上記比較対象解は、例示的実施形態1と同様に、一例として、損失を表す目的関数を最小化する最適解である。選択部11によるより具体的処理については後述する。
【0057】
出力部12は、選択部11が選択した部分集合X [n]を示す情報を出力する。ここで、出力部12による、部分集合X [n]を示す情報の出力先は本例示的実施形態を限定するものではないが、一例として、出力部12は、通信部19Aを介して当該情報を端末装置2Aに送信する構成とすることができる。また、出力部12が表示パネルを備え、当該表示パネルに当該部分集合Xを示す情報を表示させる構成としてもよい。
【0058】
<端末装置2Aの構成>
端末装置2Aは、図4に示すように、制御部20A、表示部27A、入力受付部28A、及び通信部29Aを備えている。端末装置は、一例として、店舗に配置された情報処理端末等として具体的に実現することができるが、これは本例示的実施形態を限定するものではない。
【0059】
通信部29Aは、端末装置2Aの外部の装置と通信を行う。一例として通信部29Aは、情報処理装置1Aと通信を行う。通信部29Aは、制御部20Aから供給されたデータを情報処理装置1Aに送信したり、情報処理装置1Aから受信したデータを制御部20Aに供給したりする。
【0060】
表示部27Aは、制御部20Aから供給される表示用データを表示する。一例として、表示部27Aは、情報処理装置1Aの選択部11によって選択され、端末装置2Aに供給された部分集合Xを示す情報を表示する。
【0061】
入力受付部28Aは、端末装置2Aに対する各種の入力を受け付ける。一例として、入力受付部28Aは、各ラウンドtにおける目的関数の観測値を受け付ける。そして、受け付けた観測値を制御部20Aに供給する。供給された当該観測値は、通信部29Aを介して情報処理装置1Aに送信され、上述した取得部13によって取得される。入力受付部28Aは、上記観測値をユーザによる操作を介して受け付ける構成としてもよいし、上記観測値を自動的に取得する構成としてもよい。
【0062】
入力受付部28Aの具体的構成は本例示的実施形態を限定するものではないが、一例として、入力受付部28Aは、キーボード及びタッチパッド等の入力デバイスを備える構成とすることができる。また、入力受付部28Aは、赤外線や電波等の電磁波を介してデータの読み取りを行うデータスキャナ等を備える構成としてもよい。
【0063】
(制御部20A)
制御部20Aは、図4に示すように、行動実行部21、及び観測値取得部22を備えている。
【0064】
行動実行部21は、各ラウンドtにおいて、情報処理装置1Aの選択部11によって選択された部分集合Xを示す情報を取得し、取得した部分集合Xに応じた行動を実行する。一例として、当該部分集合Xを示す情報を参照して、当該部分集合Xが示す1又は複数の商品の価格を更新する。また、行動実行部21は、当該部分集合Xを示す表示データを生成し、生成した表示データを表示部27Aに供給し、表示部27Aが当該表示データを表示する構成としてもよい。この構成の場合、表示部27Aが表示する表示データを参照してユーザが1又は複数の商品の価格を更新する。
【0065】
観測値取得部22は、行動実行部21が行動を実行した後の目的関数の観測値を、入力受付部28を介して取得する。観測値取得部22が取得した目的関数の観測値は、通信部29Aを介して情報処理装置1Aに供給され、情報処理装置1Aの取得部13によって取得される。
【0066】
<情報処理システム100Aによる処理の流れ>
続いて、図5を参照して、本例示的実施形態に係る情報処理システム100Aによる情報処理方法S100A(アルゴリズム1とも呼ぶ)の流れについて説明する。以下の説明では、ラウンドt-1の各ステップには(t-1)を付し、ラウンドtの各ステップには(t)を付すなどして、各ラウンドを区別している。
【0067】
(ステップS23(t-1))
図5に示すように、端末装置2Aは、ステップS23(t-1)において、目的関数の観測値fを、情報処理装置1Aに提供する。ここで、端末装置2Aが提供可能な観測値は、上述したFull-Information設定か、Bandit-Feedback設定かによって異なり得る。
【0068】
Full-Information設定では、ステップS23(t-1)において、端末装置2Aは、出力部12がラウンドt-1において部分集合Xt-1を出力した後に得られる目的関数の観測値であって、任意の部分集合X[n]に対する目的関数の観測値ft-1(X)を提供可能である。
【0069】
一方、Bandit-Feedback設定では、ステップS23(t-1)において、端末装置2Aは、出力部12がラウンドt-1において部分集合Xt-1を出力した後に得られる目的関数の観測値であって、選択した部分集合Xt-1に対する目的関数の観測値ft-1(Xt-1)を取得可能であるが、前記選択した部分集合以外の部分集合X[n]に対する目的関数の観測値ft-1(X)は取得可能ではない。
【0070】
(ステップS13(t-1))
続いて、ステップS13(t-1)において、情報処理装置1Aの取得部13は、ステップS23(t-1)において、端末装置2Aが提供した目的関数の観測値ft-1を取得する。
【0071】
(ステップS11(t))
続いて、ステップS11(t)において、情報処理装置1Aの選択部11は、ステップS13(t-1)において取得部が取得した目的関数の観測値ft-1を参照して、部分集合X [n]を選択する。選択部11によるより具体的な処理については後述する。
【0072】
(ステップS12(t))
続いて、ステップS12(t)において、出力部12は、ステップS11(t)において選択部11が選択した部分集合X [n]を示す情報を出力する。出力された当該部分集合X [n]を示す情報は、通信部19Aを介して端末装置2Aに送信される。
【0073】
(ステップS21(t))
続いて、ステップS21(t)において、端末装置2Aの行動実行部21は、ステップS12(t)において出力部12が出力した部分集合X [n]を示す情報に応じた行動を実行する。行動実行部21による具体的な処理は上述したためここでは説明を省略する。
【0074】
(ステップS22(t))
続いて、ステップS22(t)において、端末装置2Aの観測値取得部22は、ステップS21(t)における行動実行部21による行動の後に得られる目的関数の観測値を取得する。
【0075】
(ステップS23(t))
続いて、ステップS23(t)において、端末装置2Aは、ステップS22(t)において取得した目的関数の観測値を、情報処理装置1Aに提供する。
【0076】
以降、図5に示すように、上述した各ステップを実行するラウンドを繰り返す。
【0077】
<情報処理装置1Aによる処理例1:Full-Information設定>
続いて、図6を参照して、情報処理装置1Aによる処理例1(アルゴリズム1)の流れについて説明する。当該処理例1は、Full-Information設定における情報処理装置1Aによる処理を示している。
【0078】
(ステップS101)
まず、ステップS101において、選択部11は、処理に用いる各種のパラメータを初期化する。一例として、選択部11は、1ラウンド目における累積劣勾配Gを、
1i=0∈R
によって初期化する。ここでiは、i∈[n]を満たすインデックスであり、[n]は、自然数の集合[n]=1,2,・・・,n(nは任意の自然数)である。
【0079】
(ステップS102)
ステップS102は、ループ変数t(t=1,2,・・・,T)(Tは任意の自然数)によって表されるループ処理の始端である。ここで、ループ変数tは、ラウンド番号を示すインデックスである。
【0080】
(ステップS111A)
ステップS111Aにおいて、選択部11は、ベクトルx∈[0,1]を、
【数8】

によって算出する。ここで、λtiは学習率を示すパラメータであり、以下の式によって定義される。
【数9】

ここでhは、全てのz∈[0,1]及びg∈Rに対して、
【数10】

によって定義される。
【0081】
(ステップS112A)
続いて、ステップS112Aにおいて、選択部11は、全てのi∈[n-1]に関し、
tσ(i)≦xtσ(i+1)
となる置換σ:[n]→[n]を計算する。
【0082】
(ステップS113A)
続いて、ステップS113Aにおいて、選択部11は、[0,1]上に一様分布する確率変数uの値を決定する。換言すれば、選択部11は、[0,1]上の一様な確率分布に従って、変数uの値を決定する。
【0083】
(ステップS114A)
続いて、ステップS114Aにおいて、選択部11は、部分集合Xを、
={i∈[n]|xti≧u
を満たすように決定する。
【0084】
(ステップS12)
続いて、ステップS12において、出力部12は、ステップS114Aにおいて選択部11が選択した部分集合Xを出力する。出力された部分集合Xは、一例として端末装置2Aに供給され、端末装置2A側の環境において、当該部分集合Xに応じた行動が実行される。
【0085】
(ステップS13)
続いて、ステップS13において、取得部13は、目的関数fの観測値f(X)を取得する。本ステップでは、取得部13は、ステップS12において出力部12が部分集合Xを出力した後に得られる目的関数の観測値であって、任意の部分集合X[n]に対する目的関数の観測値f(X)を取得可能である。
【0086】
(ステップS115A)
続いて、ステップS115Aにおいて、選択部11は、劣勾配g∈Rを、
【数11】

によって算出する。ここで、ρ(σ)は、
【数12】

によって定義され、χ∈{0,1}は、iの指標ベクトル(indicator vector)を表しており、i=jのときのみ、χij=1である。
【0087】
(ステップS116A)
続いて、ステップS116Aにおいて、選択部11は、累積劣勾配Gを、
t+1=G+g
によって更新する。
【0088】
(ステップS103)
ステップS103は、ループ変数tによって表されるループ処理の終端である。
【0089】
(定理1)
本願発明者らは、上記処理例1(アルゴリズム1)によって得られるリグレット
【数13】

が、
【数14】

によって上からバウンドされること(定理1)を証明することに成功した。また、本願発明者らは、定理1の系として、上記リグレットRが、
【数15】

のように上からバウンドされることを示した。換言すれば、上記リグレットRが、Δ、n、Cに依存する上限値A(Δ,n,C)によって上から抑えられることを示した。
【0090】
ここで、パラメータΔ≧0は、確率的モデルにおける劣最適ギャップ(suboptimality gap)を表している。パラメータΔは、より具体的には、目的関数fが未知の分布Dに従うとした場合の当該目的関数fの期待値
【数16】

を用いて、
【数17】

【数18】

と表現される。
【0091】
また、パラメータCは、外乱指標を表しており、当該外乱指標Cは、前記目的関数fと時間依存目的関数f’とを用いて
【数19】

と表現される。ここで、時間依存目的関数f’は、ラウンドに依存しない未知の分布Dから選択される。
【0092】
上記のように構成された情報処理装置1Aでは、Full-Information設定において、アルゴリズム1を実行することによって、リグレットの期待値が、Δ、n、Cに依存する上限値A(Δ,n,C)によって上から抑えられる。したがって、上記のように構成された情報処理装置1によれば、Full-Information設定において、確率的モデル及び敵対的モデルの何れに対しても最適化問題を好適に解くことができる。
【0093】
<情報処理装置1Aによる処理例2:Bandit-Feedback設定>
続いて、図7を参照して、情報処理装置1Aによる処理例2(アルゴリズム2)の流れについて説明する。当該処理例2は、Bandit-Feedback設定における情報処理装置1Aによる処理を示している。
【0094】
(ステップS101)
まず、ステップS101において、選択部11は、処理に用いる各種のパラメータを初期化する。一例として、選択部11は、1ラウンド目における累積劣勾配^Gを、
^G1i=0∈R
によって初期化する。ここでiは、i∈[n]を満たすインデックスであり、[n]は、自然数の集合[n]=1,2,・・・,n(nは任意の自然数)である。また、^Gtiは、ハット「^」付きの「Gti」を表している。
【0095】
(ステップS102)
ステップS102は、ループ変数t(t=1,2,・・・,T)(Tは任意の自然数)によって表されるループ処理の始端である。ここで、ループ変数tは、ラウンド番号を示すインデックスである。
【0096】
(ステップS111B)
ステップS111Bにおいて、選択部11は、各i∈[n]に関し、学習率λと、累積劣勾配^Gtiと、関数ζ
【数20】

とを用いて、n次元ベクトルx∈[0,1]を、
ti=ζ(^Gti/λ
によって算出する。ここで、学習率λは、
【数21】

によって定義される。
【0097】
(ステップS112B)
続いて、ステップS112Bにおいて、選択部11は、全てのi∈[n-1]に関し、
tσ(i)≦xtσ(i+1)
となる置換σ:[n]→[n]を計算する。
【0098】
(ステップS113B)
ステップS113Bにおいて、選択部11は、確率
【数22】

【数23】

に従ってインデックスi∈{0,1,・・・,n}を選択する。
【0099】
(ステップS114B)
ステップS11Bにおいて、選択部11は、部分集合Xを、
=σ([i])={σ(j)|j∈[i]}
を満たすように決定する。
【0100】
(ステップS12)
続いて、ステップS12において、出力部12は、ステップS114Bにおいて選択部11が選択した部分集合Xを出力する。出力された部分集合Xは、一例として端末装置2Aに供給され、端末装置2A側の環境において、当該部分集合Xに応じた行動が実行される。
【0101】
(ステップS13)
続いて、ステップS13において、取得部13は、目的関数fの観測値f(X)を取得する。本ステップでは、取得部13は、ステップS12において出力部12が部分集合Xを出力した後に得られる目的関数の観測値であって、選択した部分集合Xに対する目的関数の観測値f(X)を取得可能であるが、前記選択した部分集合以外の部分集合X[n]に対する目的関数の観測値f(X)は取得可能ではない。
【0102】
(ステップS115B)
続いて、ステップS115Bにおいて、選択部11は、劣勾配^g∈Rを、
【数24】

によって算出する。ここで、^gは、ハット「^」付きの「g」を表している。また、ρ(σ)は、上述のように、
【数25】

によって定義される。
【0103】
(ステップS116B)
続いて、ステップS116Bにおいて、選択部11は、累積劣勾配^Gを、
^Gt+1=^G+^g
によって更新する。
【0104】
(ステップS103)
ステップS103は、ループ変数tによって表されるループ処理の終端である。
【0105】
(定理2)
本願発明者らは、上記処理例2(アルゴリズム2)によって得られるリグレット
【数26】

が、
【数27】

によって上からバウンドされること(定理2)を証明することに成功した。また、本願発明者らは、定理2の系として、上記リグレットRが、
【数28】

のように上からバウンドされることを示した。換言すれば、上記リグレットRが、Δ、n、Cに依存する上限値A(Δ,n,C)によって上から抑えられることを示した。ここで、パラメータΔは処理例1と同様に、劣最適ギャップ(suboptimality gap)を表しており、パラメータCは、処理例1と同様に、外乱指標を表している。
【0106】
上記のように構成された情報処理装置1Aでは、Bandit-Feedback設定において、アルゴリズム2を実行することによって、リグレットの期待値が、Δ、n、Cに依存する上限値A(Δ,n,C)によって上から抑えられる。したがって、上記のように構成された情報処理装置1によれば、Bandit-Feedback設定において、確率的モデル及び敵対的モデルの何れに対しても最適化問題を好適に解くことができる。
【0107】
(ロバース拡張との関係)
以下では、上述したアルゴリズム1及びアルゴリズム2と、ロバース拡張(Lovasz extention)との関係について述べる。
【0108】
関数f:2[n]→R
が与えられたとき、関数fのロバース拡張
~f:[0,1]n→R
は以下のように与えられる。ここで、「~f」は、チルダ付きの「f」を表している。
【0109】
まず、
x=(x,x,・・・,x∈[0,1]
及び
u∈[0,1]
に対して、x≧uとなるインデックスiの集合をH(x)と表すことにする。すなわち、H(x)を、
(x)={i∈[n]|x≧u}
によって定義する。このH(x)を用いて、ロバース拡張~f(x)は、
【数29】

によって定義される。ここで、Unif([0,1])は、[0,1]上の一様分布を表している。ロバース拡張~f(x)は、関数fが劣モジュラである場合に限って凸関数であることが知られている。
【0110】
上記の定義から、任意のx∈[0,1]、及び、任意のi∈[n-1]に対して、xσ(i)≦xσ(i+1)を満たす任意の置換σ:[n]→[n]に対して、ロバース拡張~f(x)は、
【数30】

と表される。ここで、σ[i]={σ(j)|j∈[i]}であり、例外的に、xσ(0)=0、xσ(n+1)=1と定義する。
【0111】
これにより、ロバース拡張~f(x)の劣勾配g(σ)∈Rは、
【数31】

によって定義される。ここで、ρ(σ)は、アルゴリズム1及びアルゴリズム2において説明した通りである。
【0112】
上記ロバース拡張~f(x)の劣勾配は、上述したように、アルゴリズム1及びアルゴリズム2の双方において用いられている。
【0113】
(FTRLアルゴリズムとの関係)
以下では、上述したアルゴリズム1及びアルゴリズム2と、FTRL(Follow The Regularized Leader)アルゴリズムとの関係について説明する。
【0114】
FTRLアルゴリズムは、Rの部分集合Ω上のオンライン凸最適化における一般的かつ洗練されたアプローチである。FTRLアルゴリズムにおける更新ルールは、
【数32】

と表現される。ここで、gは、xにおける目的関数fの劣勾配であり、ψは、Ω上の凸関数である正規化項(regularizer)である。FTRLアルゴリズムでは、x∈Ω、及び任意のx∈Ωに対して、リグレットが以下のようにバウンドされることを示すことができる。
【数33】

ここで、Dtは、ψに付随するベルグマン情報量(Bergman divergence)である。
【0115】
上述したアルゴリズム1は、FTRLアルゴリズムにおいて、正規化項ψを以下のように定義したことに対応している。
【数34】

【数35】

ここで、λtiは、上述した学習率である。上記のように定義された正規化項を有するFTRLアルゴリズムでは、xti及び累積劣勾配Gが、
【数36】

と表現されることを示すことができる。上記xti及び累積劣勾配Gは、上述したアルゴリズム1において用いられている。
【0116】
一方、アルゴリズム2は、FTRLアルゴリズムにおいて、正規化項ψを以下のように定義したことに対応している。
【数37】

上記のように定義された正規化項を有するFTRLアルゴリズムでは、xtiが、
【数38】

と表されることを示すことができる。ここで、関数ζはアルゴリズム2において説明した通りである。上記xti及び累積劣勾配^Gは、上述したアルゴリズム2において用いられている。
【0117】
(情報処理システム1Aによる表示例)
続いて、図8を参照して、情報処理システム1Aによる表示例を説明する。図8は、情報処理システム1Aによる表示例を示す図である。図8に示す例は、目的関数として、複数の商品の売上額(の合計)を示す関数を用い、1ラウンドを1日に設定した場合の表示例である。すなわち、図8に示す例では、情報処理装置1Aの選択部11は、ある日(ラウンドt)における部分集合Xを、当該ある日の前日(ラウンドt-1)までの目的関数の観測値(売上額)を参照して選択する。
【0118】
そして、図8に示すように、端末装置2Aの表示部27Aが、目的関数の各観測値(図8における売上額)を、ラウンド(図8における日)毎に表示する。更に、図8に示す例では、端末装置2Aの表示部27Aは、ラウンドtにおいて選択した部分集合に関する情報(商品A~Cの価格)を表示する。
【0119】
情報処理システム1Aは、このような表示を行うことによって、ユーザに対して、売上額と商品の価格とを提示することができる。
【0120】
〔応用例〕
上述した情報処理装置1,1Aは、各種問題に応用可能である。以下にその一例を挙げる。
【0121】
(最小時間経路問題)
ある地点から他の地点までの経路の選択を行動とするものとする。例えば、ある地点から他の地点までn-1か所の中継地点が存在し、各区間には、m本の選択可能な経路が存在するとする。このような状況において行動施策(選択された部分集合)X=[0、2,1、・・・]である場合、第1区間において、経路0を選択し、第2区間において経路2を選択し、第3区間において経路1を選択することを示すものとする。
【0122】
そして、目的関数fは、行動施策Xを入力とし、当該行動施策によって示される経路を通過するのに要した時間を出力とする。この場合に、上述した最適化方法を適用することで、上記ある地点から他の地点になるべく短い時間で到達するための最適な経路設定を導出することができる。
【0123】
(リテール)
ある店舗における各社のビールの価格の割引を行動とするものとする。例えば、行動施策(選択された部分集合)X=[0、2,1、・・・]である場合、第1要素がA社のビール価格を定価とし、第2要素がB社のビール価格を定価から10%割増とし、第3要素がC社のビール価格を定価から10%割引とすることを示すものとする。
【0124】
そして、目的関数fは、行動施策Xを入力とし、各社のビールの価格に行動施策Xを適用して販売を行った結果を出力とする。この場合に、上述した最適化方法を適用することで、上記店舗における各社のビール価格の最適な価格設定を導出することができる。
【0125】
(投資ポートフォリオ)
投資家等における投資行動に適用した場合を説明する。この場合、投資家が保有する又は保有しようとする複数の金融商品(株式の銘柄等)に対する投資(購入、増資)、売却、保有を行動施策Xとする。例えば、行動施策(選択された部分集合)X=[1、0、2、・・・]である場合、第1要素がA社の株式への追加投資、第2要素がB社の債権を保有(購入も売却もしない)、第3要素がC社の株式の売却を示すものとする。
【0126】
そして、目的関数fは、行動施策Xを入力とし、各社の金融商品に対する投資行動に行動施策Xを適用した結果を出力とする。この場合に、上述した最適化方法を適用することで、上記投資家における各銘柄に対する最適な投資行動を導出することができる。
【0127】
(治験)
製薬会社におけるある薬品の治験のための投薬行動に適用した場合を説明する。この場合、投薬の分量や投薬を回避することを行動施策Xとする。例えば、行動施策(選択された部分集合)X=[1、0、2、・・・]である場合、第1要素が被験者Aに対して分量1の投薬を行い、第2要素が被験者Bに対して投薬を行わず、第3要素が被験者Cに対して分量2の投薬を行うことを示すものとする。
【0128】
そして、目的関数fは、行動施策Xを入力とし、各被験者に対する投薬行動に行動施策Xを適用した結果を出力とする。この場合に、上述した最適化方法を適用することで、上記製薬会社の治験における各被験者に対する最適な投薬行動を導出することができる。
【0129】
(ウェブマーケティング)
ある電子商取引サイトの運営会社における広告行動(マーケティング施策)に適用した場合を説明する。この場合、運営会社が販売しようとする商品又はサービスに対する複数の顧客に対する広告(オンライン(バナー)広告、電子メールによる広告、ダイレクトメール、割引クーポンの電子メール送信等)を行動施策Xとする。例えば、行動施策(選択された部分集合)X=[1、0、2、・・・]である場合、第1要素が顧客Aに対するバナー広告、第2要素が顧客Bに対して広告を行わない、第3要素が顧客Cに対する割引クーポンの電子メール送信、を示すものとする。
【0130】
そして、目的関数fは、行動施策Xを入力とし、各顧客に対する広告行動に行動施策Xを適用した結果を出力とする。ここで、実行結果としては、バナー広告をクリックしたか否か、購入額、購入確率、購入額の期待値であってもよい。この場合に、本実施形態の最適化方法を適用することで、上記運営会社における各顧客に対する最適な広告行動を導出することができる。
【0131】
〔ソフトウェアによる実現例〕
情報処理装置1,1A、端末装置2Aの一部又は全部の機能は、集積回路(ICチップ)等のハードウェアによって実現してもよいし、ソフトウェアによって実現してもよい。
【0132】
後者の場合、情報処理装置1,1A、端末装置2Aは、例えば、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータによって実現される。このようなコンピュータの一例(以下、コンピュータCと記載する)を図に示す。コンピュータCは、少なくとも1つのプロセッサC1と、少なくとも1つのメモリC2と、を備えている。メモリC2には、コンピュータCを情報処理装置1,1A、端末装置2Aとして動作させるためのプログラムPが記録されている。コンピュータCにおいて、プロセッサC1は、プログラムPをメモリC2から読み取って実行することにより、情報処理装置1,1A、端末装置2Aの各機能が実現される。
【0133】
プロセッサC1としては、例えば、CPU(Central Processing Unit)、GPU(Graphic Processing Unit)、DSP(Digital Signal Processor)、MPU(Micro Processing Unit)、FPU(Floating point number Processing Unit)、PPU(Physics Processing Unit)、マイクロコントローラ、又は、これらの組み合わせなどを用いることができる。メモリC2としては、例えば、フラッシュメモリ、HDD(Hard Disk Drive)、SSD(Solid State Drive)、又は、これらの組み合わせなどを用いることができる。
【0134】
なお、コンピュータCは、プログラムPを実行時に展開したり、各種データを一時的に記憶したりするためのRAM(Random Access Memory)を更に備えていてもよい。また、コンピュータCは、他の装置との間でデータを送受信するための通信インタフェースを更に備えていてもよい。また、コンピュータCは、キーボードやマウス、ディスプレイやプリンタなどの入出力機器を接続するための入出力インタフェースを更に備えていてもよい。
【0135】
また、プログラムPは、コンピュータCが読み取り可能な、一時的でない有形の記録媒体Mに記録することができる。このような記録媒体Mとしては、例えば、テープ、ディスク、カード、半導体メモリ、又はプログラマブルな論理回路などを用いることができる。コンピュータCは、このような記録媒体Mを介してプログラムPを取得することができる。また、プログラムPは、伝送媒体を介して伝送することができる。このような伝送媒体としては、例えば、通信ネットワーク、又は放送波などを用いることができる。コンピュータCは、このような伝送媒体を介してプログラムPを取得することもできる。
【0136】
〔付記事項1〕
本発明は、上述した実施形態に限定されるものでなく、請求項に示した範囲で種々の変更が可能である。例えば、上述した実施形態に開示された技術的手段を適宜組み合わせて得られる実施形態についても、本発明の技術的範囲に含まれる。
【0137】
〔付記事項2〕
上述した実施形態の一部又は全部は、以下のようにも記載され得る。ただし、本発明は、以下の記載する態様に限定されるものではない。
【0138】
(付記1)
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、
前記選択手段が選択した部分集合X [n]を示す情報を出力する出力手段と、
を備えており、
前記選択手段は、
各ラウンドt∈[T]における目的関数の観測値f(X)と比較対象解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する
ことを特徴とする情報処理装置。
【0139】
(付記2)
前記ギャップ指標は、前記目的関数fが確率分布Dに従うとした場合の当該目的関数fの期待値
【数39】

を用いて、
【数40】

と表現され、
前記外乱指標Cは、前記目的関数fと時間依存目的関数f’とを用いて
【数41】

と表現される
付記1に記載の情報処理装置。
【0140】
(付記3)
前記出力手段がラウンドtにおいて前記部分集合Xを出力した後に、任意の部分集合X[n]に対する前記目的関数の観測値f(X)を取得可能な取得手段を更に備え、
前記選択手段は、前記取得手段が取得した前記目的関数の観測値f(X)を参照可能であり、
前記上限値A(Δ,n,C)は、
【数42】

と表現される
付記1又は2に記載の情報処理装置。
【0141】
(付記4)
前記選択手段は、
各i∈[n]に関し、学習率λtiと累積劣勾配Gtiとを用いて、n次元ベクトルx∈[0,1]
【数43】

によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと
[0,1]上に一様分布する確率変数uの値を決定する確率変数決定ステップと、
部分集合Xを、X={i∈[n]|xti≧u}を満たすように決定する部分集合決定ステップと、
目的関数の観測値f(X)を取得する取得ステップと、
目的関数fの劣勾配g∈Rを計算する劣勾配算出ステップと、
累積劣勾配Gを、Gt+1=G+gによって更新する更新ステップと、
を各ラウンドにおいて実行する
付記3に記載の情報処理装置。
【0142】
(付記5)
前出力手段がラウンドtにおいて前記部分集合Xを出力した後に、選択した部分集合Xに対する前記目的関数の観測値f(X)を取得可能な取得手段を更に備え、
前記選択手段は、
前記選択した部分集合Xに対する前記目的関数の観測値f(X)を参照することが可能であり、且つ、
前記選択した部分集合以外の部分集合X[n]に対する前記目的関数の観測値f(X)を参照することが不可能であり、
前記上限値A(Δ,n,C)は、
【数44】

と表現される
付記1又は2に記載の情報処理装置。
【0143】
(付記6)
前記選択手段は、
各i∈[n]に関し、学習率λと、累積劣勾配^Gtiと、関数ζ
【数45】

とを用いて、n次元ベクトルx∈[0,1]を、xti=ζ(^Gti/λ)によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと、
確率
【数46】

【数47】

に従ってインデックスi∈{0,1,・・・,n}を選択するインデックス選択ステップと、
部分集合Xを、X={σ(j)|j∈[i]}を満たすように決定する部分集合決定ステップと、
目的関数の観測値f(X)を取得するステップと、
目的関数fの劣勾配^g∈Rを計算する劣勾配算出ステップと、
累積劣勾配^Gtiを、^Gt+1=^G+^gによって更新する更新ステップと、
を各ラウンドにおいて実行する
付記5に記載の情報処理装置。
【0144】
(付記7)
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、
前記選択手段が選択した部分集合X [n]を示す情報を出力する出力手段と、
を備えており、
前記選択手段は、
各i∈[n]に関し、学習率λtiと累積劣勾配Gtiとを用いて、n次元ベクトルx∈[0,1]
【数48】

によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと
[0,1]上に一様分布する確率変数uの値を決定する確率変数決定ステップと、
部分集合Xを、X={i∈[n]|xti≧u}を満たすように決定する部分集合決定ステップと、
目的関数f(X)の値を取得する取得ステップと、
目的関数fの劣勾配g∈Rを計算する劣勾配算出ステップと、
累積劣勾配Gを、Gt+1=G+gによって更新する更新ステップと、
を各ラウンドにおいて実行する情報処理装置。
【0145】
(付記8)
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する選択手段と、
前記選択手段が選択した部分集合X [n]を示す情報を出力する出力手段と、
を備えており、
前記選択手段は、
各i∈[n]に関し、学習率λと、累積劣勾配^Gtiと、関数ζ
【数49】

とを用いて、n次元ベクトルx∈[0,1]を、xti=ζ(^Gti/λ)によって算出するベクトル算出ステップと、
全てのi∈[n-1]に関し、xtσ(i)≦xtσ(i+1)となる置換σ:[n]→[n]を計算する置換算出ステップと、
確率
【数50】

【数51】

に従ってインデックスi∈{0,1,・・・,n}を選択するインデックス選択ステップと、
部分集合Xを、X={σ(j)|j∈[i]}を満たすように決定する部分集合決定ステップと、
目的関数f(X)の値を取得するステップと、
目的関数fの劣勾配^g∈Rを計算する劣勾配算出ステップと、
累積劣勾配^Gtiを、^Gt+1=^G+^gによって更新する更新ステップと、
を各ラウンドにおいて実行する情報処理装置。
【0146】
(付記9)
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択することと、
前記選択した部分集合X [n]を示す情報を出力することとを含んでおり、
前記選択する工程において、
各ラウンドt∈[T]における目的関数の観測値f(X)と最適解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する
ことを特徴とする情報処理方法。
【0147】
(付記10)
コンピュータに
あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する処理と、
前記選択した部分集合X [n]を示す情報を出力する処理と
を実行させ、
前記選択する処理において、
各ラウンドt∈[T]における目的関数の観測値f(X)と最適解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する
ことを特徴とする情報処理プログラム。
【0148】
(付記11)
付記10に記載のプログラムが記録された、コンピュータ読み取り可能な記録媒体。
【0149】
(付記12)
少なくとも1つのプロセッサを備え、前記プロセッサは、あるラウンドt∈[T](Tは任意の自然数)において、集合[n]=1,2,・・・,n(nは任意の自然数)の部分集合X [n]を、ラウンドt-1における目的関数の観測値を参照して選択する処理と、
前記選択した部分集合X [n]を示す情報を出力する処理と
を実行し、
前記選択する処理において、
各ラウンドt∈[T]における目的関数の観測値f(X)と最適解Xとを用いて表されるリグレットΣt∈[T](X)-Σt∈[T](X)の期待値の漸近挙動が、確率的モデルにおけるギャップ指標Δと確率的モデルの敵対的外乱を示す外乱指標Cとに少なくとも依存する上限値A(Δ,n,C)によって上から抑えられるように、前記部分集合X [n]を選択する情報処理装置
【0150】
なお、この情報処理装置は、更にメモリを備えていてもよく、このメモリには、前記選択する処理と、前記出力する処理とを前記プロセッサに実行させるためのプログラムが記憶されていてもよい。また、このプログラムは、コンピュータ読み取り可能な一時的でない有形の記録媒体に記録されていてもよい。
【符号の説明】
【0151】
1,1A 情報処理装置
11 選択部(選択手段)
12 出力部(出力手段)
13 取得部
図1
図2
図3
図4
図5
図6
図7
図8
図9