以下、図面を参照しつつ本発明に係る機械学習システムの好適な実施形態について詳細に説明する。なお、図面の説明においては、同一又は相当部分には同一符号を付し、重複する説明を省略する。
まず、図1~2を用いて、本発明の一実施形態にかかる機械学習システム1の機能および構成を説明する。図1に示す機械学習システム1は、現象の時間的変化を機械学習によって学習するコンピュータシステムであり、トマト等の植物の栽培環境(自然現象)に関する環境データ(説明変数)を学習して植物の生育状態としての灌水後の積算蒸発散量を目的変数として推定・予測するコンピュータシステムとして例示されている。
本実施形態で使用する機械学習は、目的変数の既知の値を含む訓練データ(トレーニングデータ)を学習することで、活性化関数、重み付け値等のモデルのパラメータを最適化することによりモデルを構築し、そのモデルを用いて未知の値を予測する教師あり機械学習である。本実施形態では、数値列である訓練データを用い、その訓練データによって最適化されたパラメータを用いて未知の時点における値(現象)の時間的変化を推定・予測する。ここで、本明細書では、推定(Estimation)とは現在を予想することを意味するとし、予測(Prediction)とは将来を予想することを意味するとする。なお、数値列とは、複数の時点における現象の様々な観測値によって得られた数値の系列であり、その現象をある規則に基づいて複数の時点で観測することにより得られた数値の系列である。本実施形態では、多層パーセプトロン(MLP:Multilayer perceptron)によって構成された学習器を用いた教師あり機械学習を採用しているが、必ずしもその方式には限定されない。例えば、学習器は、教師あり機械学習器の1種である、ランダムフォレスト、サポートベクトルマシン、ニューラルネットワーク(NN)、ディープニューラルネットワーク(DNN)などによって構成されてもよい。
機械学習システム1が学習する対象としては、トマト等の植物とその環境データが挙げられているが、これには限定されない。例えば、機械学習システム1は、動物または食品等のその他の有体物、天候、病気、または漁獲等の自然現象、通信ネットワーク、交通、ライフライン、株価、または需給等の社会現象を対象としてもよい。
図1に示すように、機械学習システム1は、イベント検知部3と情報処理部5とを含んで構成されている。本実施形態では、イベント検知部3と情報処理部5とが別個の装置によって構成されているが、一体化された装置によって構成されてもよいし、それぞれがデータ送受信機能を有する複数の装置によって構成されていてもよい。
イベント検知部3は、既定のイベントの発生を検知する部分である。例えば、機械学習システム1が予測する目的変数への影響が予測されるイベントが予め定められ、イベント検知部3はそのイベントの発生を検知する。例えば、機械学習システム1が学習する対象が植物である場合には、既定のイベントとして、定植、摘心、灌水、施肥、交配、病害虫防除、収穫、日の出、日の入り、開花、あるいは気温変化等が想定される。このイベント検知部3は、温度センサ、光センサ、カメラ等の外部センサ装置からの信号を基に既定のイベントの発生を検知してもよいし、ユーザ等の外部からの入力に応じて既定のイベントの発生を検知してもよい。この際、カメラからの画像データを基に検知する場合には、画像データを機械学習を用いて処理することでイベントの発生を検知してもよい。また、イベント検知部3にはイベントに関する状態を検知するセンサ装置自体であってもよい。
情報処理部5は、機械学習を実行する装置あるいは装置群であって、機械学習を実行するための入力データを、外部から有線通信あるいは無線通信によって取得可能に構成されている。また、情報処理部5は、イベント検知部3からの信号も、有線通信あるいは無線通信によって取得可能に構成されている。この情報処理部5は1台以上のコンピュータを備え、複数台のコンピュータを備える場合には、後述する情報処理部5の各機能要素は分散処理により実現される。個々のコンピュータの種類は限定されない。例えば、据置型または携帯型のパーソナルコンピュータ(PC)を用いてもよいし、ワークステーションを用いてもよいし、高機能携帯電話機(スマートフォン)、携帯電話機、携帯情報端末(PDA)などの携帯端末を用いてもよい。あるいは、様々な種類のコンピュータを組み合わせて情報処理部5を構築してもよい。複数台のコンピュータを用いる場合には、これらのコンピュータはインターネットやイントラネットなどの通信ネットワークを介して接続される。
情報処理部5を構成するコンピュータ100の一般的なハードウェア構成を図2に示す。コンピュータ100は、オペレーティングシステムやアプリケーション・プログラムなどを実行する演算装置であるCPU(プロセッサ)101と、ROM及びRAMで構成される主記憶部102と、ハードディスクやフラッシュメモリなどで構成される補助記憶部103と、ネットワークカードあるいは無線通信モジュールで構成される通信制御部104と、キーボードやマウスなどの入力装置105と、ディスプレイやプリンタなどの出力装置106とを備える。当然ながら、搭載されるハードウェアモジュールはコンピュータ100の種類により異なる。例えば、据置型のPCおよびワークステーションは入力装置および出力装置としてキーボード、マウス、およびディスプレイを備えることが多いが、スマートフォンではタッチパネルが入力装置および出力装置として機能することが多い。
後述する情報処理部5の各機能要素は、CPU101または主記憶部102の上に所定のソフトウェアを読み込ませ、CPU101の制御の下で通信制御部104や入力装置105、出力装置106などを動作させ、主記憶部102または補助記憶部103におけるデータの読み出し及び書き込みを行うことで実現される。処理に必要なデータやデータベースは主記憶部102または補助記憶部103内に格納される。
図1に戻って、情報処理部5は、機能的構成要素として、入力部7及び学習器9を備える。
入力部7は、外部から取得した信号及び各種データを基に入力データを生成し、その入力データを学習器9に入力する部分である。学習器9に入力する入力データとしては、学習器9において機械学習のモデルを構築する学習フェーズで用いられる訓練データと、学習器9において実際に目的変数を推定・予測する推定・予測フェーズで用いられる環境データとに分けられる。
詳細には、入力部7は、特定の検知タイミング(時点)において外部のセンサ装置等で検知された環境データに対して、イベント検知部3によって検知された既定のイベントの発生後の検知タイミングの経過時間に関する経過時間情報を付加する。このとき、入力部7は、イベント検知部3から取得した信号によって規定のイベントの発生タイミングを検知し、その発生タイミングからの検知タイミングまでの時間を計算することによって経過時間情報を算出する。そして、入力部7は、検知された環境データとその環境データに対応する経過時間情報との組み合わせを、連続した複数の検知タイミング(サンプリングタイミング)毎に生成し、それらの複数の組み合わせを環境データとして学習器9に入力する。なお、学習フェーズにおいて、入力部7は、訓練データを学習器9に入力する場合には、環境データ中のデータの組み合わせに対して、外部から取得された目的変数に関する実測値を付加する。
図3には、入力部7によって生成される環境データに含まれる説明変数及び経過時間情報の時間変化の一例を示す。図3(a)に示す例では、環境データに3つの説明変数V1,V2,V3の時系列データが含まれている。また、それぞれのサンプリングタイミングの時系列データには、図3(b)に示すようなサンプリングタイミングに対応する既定のイベントの発生タイミングT1~T8からの経過時間ETを示す経過時間情報が付加される。
例えば、入力部7は、トマトの栽培環境に関する環境データとして、温湿度センサと光センサで計測された栽培環境における温度、湿度、及び光量のデータの組み合わせを生成する。また、入力部7は、環境データに対して、重量センサ等で計測されたトマトの栽培ポットの重量変化を基にした積算蒸発散量のデータを付加して訓練データを生成する。
ここで、入力部7は、環境データに対して、既定のイベントの発生後のサンプリングタイミングにおける説明変数の積算値をさらに付加してもよいし、環境データに対して経過時間情報に代えて積算値を追加してもよい。また、入力部7は、環境データに対して、既定のイベントの発生後のサンプリングタイミングにおける説明変数の統計量をさらに付加してもよいし、環境データに対して経過時間情報に代えて統計量を追加してもよい。付加する統計量としては、分散値、平均値等が挙げられる。
なお、入力部7では、訓練データに含まれる目的変数の分布を均衡化させるために、訓練データの再サンプリングを適用してもよい。再サンプリングの手法として、目的変数の分布における度数の小さいデータを人工的に増幅するオーバーサンプリングや、度数の大きいデータを除去するアンダーサンプリング、および両者を組み合わせ回帰問題にも適用できるSMOTER(SMOTE for Regression)などが挙げられるが、必ずしもこれら手法には限定されない。これにより、訓練データにおける目的変数の分布を均衡化でき、目的変数の推定・予測の精度の向上が実現できる。
学習器9は、入力部7から入力された入力データを基に機械学習の処理を実行する機能部である。すなわち、学習器9は、学習フェーズにおいては、訓練データを用いて機械学習の学習アルゴリズムに従ってモデルのパラメータを最適化することによりモデルを構築し、推定・予測フェーズにおいては、構築されたモデルを用いて環境データから目的変数の各サンプリングタイミングにおける時系列の推定・予測値VPを生成および出力する。例えば、学習器9は、栽培環境の温度、湿度、及び光量等を含む環境データを用いて、トマトの積算蒸発散量を推定・予測する。なお、学習器9は、経過時間情報が付加された環境データ、あるいは経過時間情報が付加された訓練データを用いて機械学習の処理を実行するが、これらのデータに付加された積算値に関する情報をさらに用いて機械学習の処理を実行してもよいし、これらのデータに付加された統計量に関する情報をさらに用いて機械学習の処理を実行してもよい。
詳細には、学習器9は、複数のノードを含む入力層11と、それぞれが1つ以上のノードを含む1つ以上の隠れ層13と、出力層15とを含むディープニューラルネットワーク(DNN:Deep Neural Network)の一種であるMLPによって構成されている。それぞれの隠れ層13は、全結合層(FC:Fully Connected layer)を含む。この学習器9において構築される機械学習のモデルは、個々のノードの活性化関数、あるいは個々のノード間の出力における重み付け値等の各種のパラメータによって規定され、これらのパラメータは学習フェーズにおいて最適なパラメータに設定される。
次に、図4を参照しながら、機械学習システム1による目的変数の予測処理の手順について説明すると共に、実施形態にかかる機械学習方法について詳述する。図4は、機械学習システム1による目的変数の予測処理の手順を示すフローチャートである。
まず、機械学習システム1において、情報処理部5へのユーザ入力等を契機に学習フェーズが開始される(ステップS01)。学習フェーズが開始されると、イベント検知部3によって規定のイベントの発生が繰り返し検知され、その検知タイミングを通知するための信号が情報処理部5に繰り返し出力される(ステップS02)。それに並行して、情報処理部5の入力部7により、時系列の環境データと、目的変数に関する時系列の実測値とが取得される(ステップS03)。
その後、入力部7によって、環境データ中のデータ系列のそれぞれのサンプリングタイミングに関して、イベントの発生タイミングを基準にした経過時間情報が算出され、それぞれのサンプリングタイミングのデータ系列に対して、経過時間情報と目的変数の実測値とが付加されて訓練データが生成される(ステップS04)。そして、入力部7から学習器9に訓練データが入力され、学習器9内で訓練データを用いてモデルの構築及び検証が行われる(ステップS05)。モデルの構築とは、機械学習のモデルを規定するパラメータを訓練データを用いて最適化する処理であり、モデルの検証とは、学習フェーズにおいて、構築されたモデルによって予測される値が実測値にあっているかどうかを検証する処理である。
その後、情報処理部5へのユーザ入力等を契機に推定・予測フェーズが開始される(ステップS06)。推定・予測フェーズが開始されると、イベント検知部3によって規定のイベントの発生が繰り返し検知され、その検知タイミングを通知するための信号が情報処理部5に繰り返し出力される(ステップS07)。それに並行して、情報処理部5の入力部7により、時系列の環境データが取得される(ステップS08)。
その後、入力部7によって、環境データ中のデータ系列のそれぞれのサンプリングタイミングに関して、イベントの発生タイミングを基準にした経過時間情報が算出され、それぞれのサンプリングタイミングのデータ系列に対して、経過時間情報が付加される(ステップS09)。そして、入力部7から学習器9に環境データが入力され、学習器9内で環境データを用いて目的変数の推定・予測値の生成及び出力が行われる(ステップS10)。
以上説明した実施形態に係る機械学習システム1及び機械学習方法によれば、複数の時点における環境データと、既定のイベント発生後のそれらの複数の時点における経過時間に関する経過時間情報とを含む訓練データを用いて、学習器9における機械学習によるモデル構築のためのパラメータが最適化される。これにより、学習器9が、従来の機械学習の方式であるLSTMと比較して少ない量の訓練データによって適切にモデル構築することができる。すなわち、再帰構造を持たず最適化すべきパラメータの少ないMLP等の方式でも時系列特徴を重畳したモデルを構築できるため、訓練データ量の削減と推定・予測値の推定精度の向上との両立も図れる。さらには、学習器におけるモデル構築のための演算時間も削減でき、モデル構築を効率化することができる。
加えて本実施形態では、任意のイベントを設定することで、訓練データに含まれる学習させたい時間的変化を長期間化することが容易となる。このように長期間の時間的変化を学習させられるようになることで、現象の長期間の時系列特徴をモデルに反映させることができ、推定・予測値の精度をさらに向上させることができる。
また、学習器9を、機械学習における教師あり学習器によって構成すれば、訓練データ及び実測値を基にモデルを構築してそのモデルによって現象の時間的変化を推定・予測することができる。また、学習器9を、DNNによって構成すれば、訓練データから複雑な時系列特徴をも抽出することができ、現象の時間的変化を学習する学習器におけるモデル構築の表現力が高まることで、推定・予測値の精度をさらに向上させることができる。
さらに、学習器9が環境データに関する積算値をさらに付加的に用いてモデルを構築する場合には、学習器9がさらに少ない量の訓練データによって適切にモデル構築することができる。また、学習器9が環境データに関する統計量をさらに付加的に用いてモデルを構築する場合にも、学習器9がさらに少ない量の訓練データによって適切にモデル構築することができる。
以下、本実施形態に係る機械学習システム1及び機械学習方法の効果について、比較例と比較しつつ評価する。評価においては、説明変数としての温度[°C]、相対湿度[%]、光量[V]、灌水量[g]、及び飽差[kPa]と、経過時間情報としての灌水後の経過時間[分]及び日の出後の経過時間[分]とを訓練データ及び環境データ中に付加させ、学習器によって目的変数であるトマトにおける積算蒸発散量[g]を予測させた。評価は、下記のような比較例1~3と本実施形態との間において、目的変数の推定精度及びモデル構築時間を比較することにより行った。すなわち、比較例1においては、本実施形態の機械学習システム1において経過時間情報を付加しない訓練データ及び環境データを用いて処理させた。比較例2においては、経過時間情報が付加されていない短期シーケンスの訓練データ及び環境データを用いて従来のLSTMの学習器によって処理させた。比較例3においては、経過時間情報が付加されていない長期シーケンスの訓練データ及び環境データを用いて従来のLSTMの学習器によって処理させた。
図5(a)は、比較例2において用いられる短期シーケンスの訓練データのサンプリングタイミングを示すタイミングチャートである。このように、比較例2で用いられる環境データあるいは訓練データは、1日のうちの時刻7時~時刻19時までの所定期間P内でランダムに設定された複数の期間P1において、所定間隔(例えば1分)をサンプリングタイミングとした説明変数を含む。この期間P1は、可変の時点数(例えば、10~260の時点数)を含むようにチューニング可能とされ、その開始タイミングは期間P1が日を跨ることがないようにランダムに設定される。さらに、この複数の期間P1は、所定の合計時点数に達するまで複数の期間Pにおいて繰り返し設定され、繰り返し設定された期間P1分の説明変数が環境データあるいは訓練データに含まれる。また、図5(b)は、比較例3において用いられる長期シーケンスの訓練データのサンプリングタイミングを示すタイミングチャートである。比較例3で用いられる環境データあるいは訓練データは、1日のうちの時刻7時~時刻19時までの所定期間Pと一致した比較的長期の期間P2において、所定間隔(例えば1分)をサンプリングタイミングとした説明変数を含む。この期間P2は、所定の合計時点数に達するまで1日ごとに繰り返し設定され、繰り返し設定された期間P2分の説明変数が環境データあるいは訓練データに含まれる。これに対して、比較例1及び本実施形態においては、比較例2,3と同じ期間内において同様に所定の合計時点数に達するまでランダムに設定されたサンプリングタイミングの説明変数を含む環境データあるいは訓練データが用いられる。
図6には、本実施形態及び比較例1~3において学習器の隠れ層の層数を変更した場合の平均絶対誤差の評価結果を示している。ここでは、学習フェーズでの訓練及び検証に用いる訓練データの合計時点数をそれぞれ16,560、5,040とし、推定・予測フェーズで生成された目的変数の評価に用いる環境データの時点数を6,480とした。この結果より、本実施形態の平均絶対誤差は比較例1に比較して全ての層数において3[g]程度に大きく低減されていることがわかる。これは、本実施形態においては、短期及び長期の時間情報を説明変数に含めた学習が可能となったことを示している。さらに、本実施形態では、全ての層数において従来のLSTMを採用した比較例2と同程度まで推定精度が高められており、従来のLSTMを採用した比較例3に比較して層数“2”以外の推定精度が向上している。これは、時系列特徴を事前抽出して説明変数に加えることで、再帰構造を持たないMLPでも、時系列特徴をモデルに重畳しLSTMと同等の精度で目的変数を推定できることを示している。
図7には、本実施形態及び比較例2~3において学習器の隠れ層の層数を変更した場合の学習器におけるモデル構築時間の評価結果を示している。ここでは、モデル構築時間として、合計時点数が16,560の訓練データを複数回学習器に入力した際の構築にかかる1回(1epoch)当たりの平均演算時間を評価した。この結果より、本実施形態のモデル構築時間は、比較例3に比較して平均83.7%削減されており、比較例2に比較しても平均63.4%削減されており、モデル構築時間が大きく低減されていることがわかる。
図8には、本実施形態及び比較例1~3において学習フェーズにおいて学習器に入力する訓練データの合計時点数を変更した場合の平均絶対誤差の評価結果を示している。ここでは、学習器の隠れ層の層数を“2”に設定した。この結果より、本実施形態では、合計時点数が“16,560”の場合を除いては最も推定誤差が小さいことがわかる。特に、最小の合計時点数“4,320”においては、本実施形態の平均絶対誤差が3.33[g]であるのに対して、比較例2が5.57[g]、比較例3が5.69[g]となっており、本実施形態において誤差を40パーセント以上低減できている。つまり、本実施形態では、時系列特徴を事前抽出しパラメータ数の少ないMLPの構成でモデルを構築することにより、少ない量の訓練データによるモデルのパラメータの最適化が可能とされたといえる。
なお、本発明は、上述した実施形態の態様に限定されるものではない。
例えば、機械学習システム1において、入力データに付加する経過時間情報の基準となる既定のイベントの検出は、様々なイベントを対象とすることができる。
例えば、自然現象に関わる入力データの例として、植物の生育等に関わる入力データを学習する機械学習システムにおいては、イベントを、受粉、開花、着果、収穫、定植、摘心、日の出、灌水、急激な環境変化(例えば、温度が所定温度以上変化した等)等としてもよい。また、ヒト等の動物の生育等に関わる入力データを学習する機械学習システムにおいては、誕生、妊娠、出産(産卵)、体長が所定値に達する、体重が所定値に達する、年齢が所定年齢に達する等としてもよい。また、食品の鮮度等に関わる入力データを学習する機械学習システムにおいては、収穫日、殺菌、低温保存開始等としてもよい。また、降水量等に関わる入力データを学習する機械学習システムにおいては、予測地点に雨雲がかかる、予測地点から所定距離の地点に雨雲がかかる等としてもよいし、病気の進行等に関わる入力データを学習する機械学習システムにおいては、感染日、発症日、投薬、施術(手術、放射線治療等)等としてもよい。また、漁獲に関わる入力データを学習する機会学習システムにおいては、前回の漁における漁獲量、地震あるいは津波などの自然災害、寒波あるいは熱波などの局所的な環境変化、季節の変わり目あるいは地球温暖化などの大域的な環境変化等としてもよい。
一方で、社会現象に関わる入力データの例として、通信ネットワークのトラフィック等に関わる入力データを学習する機械学習システムにおいては、イベントを、送信コンテンツの生成、対象エリア内への流入人口あるいは対象エリアからの流出人口の変化等としてもよく、交通混雑状態等に関わる入力データを学習する機械学習システムにおいては、交通事故、対象エリア内への流入人口の変化あるいは対象エリアからの流出人口の変化等としてもよい。また、ライフラインにおける需要に関わる入力データを学習する機械学習システムにおいては、自然災害(地震、台風など)、局所的な環境変化(寒波、熱波など)、大域的な環境変化(季節の変わり目、地球温暖化)等としてもよいし、株価の変動等に関わる入力データを学習する機械学習システムにおいては、新製品やサービス等の発表、自然災害、不祥事等の事件、関連会社の株価の急激な変化等としてもよく、購買需要等に関わる入力データを学習する機械学習システムにおいては、発売日、局所的な環境変化(寒波・熱波など)、大域的な環境変化(季節の変わり目、地球温暖化)等としてもよい。
上記実施形態においては、情報処理部5の入力部7が、イベント検知部3によって検出された複数のイベントの発生後の検知タイミングの経過時間に関する複数の経過時間情報を、サンプリングタイミングごとに検知された環境データに組み合わせて、入力データを生成してもよい(以下、このような入力データを「マルチスケール時系列データ」と言う)。この場合、情報処理部5の学習器9は、MLPによって構成される。例えば、イベント検知部3によって植物の栽培環境における光量データ及び灌水量データを検出し、それらのデータを基に、植物の蒸発散に影響する2つのイベントとして、日の出及び灌水を検出し、入力部7が、それらのイベントの発生後の2つの経過時間情報を含む入力データを生成する。この「日の出」のイベントは、植物に日光が当たり蒸発散が促進されるイベントであり、「灌水」のイベントは、植物に水分が与えられ蒸発散が促進されるイベントである。
一般に、周囲環境においては、瞬時的に発生し、環境データに経時的な影響を与えるイベントが複数存在する。上記変形例によれば、学習フェーズにおいてそのような複数のイベントの影響の時系列性を考慮したモデルの構築が可能となる。すなわち、イベントごとの発生頻度に応じて各イベントの与える影響の時間的スケールが異なるが、上記構成によれば、異なった時間的スケールの時系列特徴をモデル内に重畳することができ、目的変数の予測精度を向上させることができる。また、学習器としてMLPを採用しているので、機械学習のモデルのパラメータ数を抑えることができ、要求される訓練データの量も削減することができる。
また、上記実施形態においては、情報処理部5において、トマト等の植物からカメラ等を用いて取得された草姿画像から抽出された萎れに関するデータである萎れデータを、訓練データとともに入力してモデルを構築し、このモデルと、萎れデータを含んで入力された環境データとを用いて、植物の茎径の変化量を推定・予測するように動作してもよい。このような情報処理部5によれば、茎径の変化量(水分ストレス)に応じた灌水制御が可能となる。
図9には、植物の茎径の変化量を推定・予測する上記変形例における目的変数の平均絶対誤差の評価結果を示している。ここでは、説明変数としての温度[°C]、相対湿度[%]、光量[V]、灌水量[g]、飽差[kPa]、及び草姿画像からオプティカルフロ―法を用いて得られた11次元のデータと、経過時間情報としての灌水後の経過時間[分]及び日の出後の経過時間[分]とを訓練データ及び環境データ中に付加させ、学習器9によって目的変数である茎径の変動に基づく水分ストレスの値DSRを時系列に予測させ、予測値DSRをレーザ変位計で計測した茎径の変化量から計算される水分ストレスの値DSRと比較することにより平均絶対誤差を求めた。ここで、水分ストレスの値DSRは、計算対象の現在時刻の直前の灌水の時刻から現在時刻までの間の最大の茎径から、現在時刻の茎径を引き算することにより求められる。評価は、上記変形例においてマルチスケール時系列データを用いて目的関数を予測させた場合(変形例1)と、上記変形例において、経過時間情報を含まない訓練データ及び環境データを用いて目的関数を予測させた場合(比較例4)とで、訓練データの合計時点数を変更したときの平均絶対誤差を比較することにより行った。この結果からも、マルチスケール時系列データを用いた場合のほうが、異なった時間的スケールの時系列特徴をモデル内に重畳することができる結果、平均絶対誤差が低減されていることがわかる。
以下、上記実施形態の変形例として、通信ネットワークの時間的に変化するトラフィックに関わる入力データを学習する機械学習システムについて説明する。
図10には、変形例にかかる機械学習システム1Aの概略構成を示している。機械学習システム1Aは、試行錯誤を繰り返すことで行動を最適化する深層強化学習を実行することでモバイル通信ネットワーク201の送信レート制御を行うコンピュータシステムである。この機械学習システム1Aは、モバイルデータ通信の需要に局所性が生じることによって通信回線が混雑し通信ネットワークへの収容効率(帯域利用効率)を最大化するために、遅延を許容するコンテンツの送信レートを制御して負荷分散を行う。送信レート制御の対象は、モバイル通信ネットワーク201を構成する複数の無線通信基地局(eNB:evolved Node B)203に無線接続する複数の携帯電話端末(UE:User Equipment)205におけるコンテンツの送信レートである。
すなわち、機械学習システム1Aは、イベント検知用サーバ3A及び情報処理部5Aを含んで構成される。イベント検知用サーバ3A及び情報処理部5Aは、有線通信あるいは無線通信によって、相互に情報の送受信が可能にされるとともに、モバイル通信ネットワーク201との間でも情報の送受信が可能に構成されている。また、イベント検知用サーバ3A及び情報処理部5Aのハードウェア構成は、図2に示す構成と同様である。
イベント検知用サーバ3Aは、既定のイベントの発生を検知する検知部、及び学習器に入力する入力データに対して経過時間情報を付加する入力部として機能する。ここでは、イベント検知用サーバ3Aは、UE205におけるコンテンツデータの送信開始をイベントの発生としてその都度検知する。
具体的には、イベント検知用サーバ3Aは、複数の連続したサンプリングタイミングで、環境データをモバイル通信ネットワーク201から繰り返し収集し、連続した複数のサンプリングタイミング分の環境データを情報処理部5Aに送信する。この環境データには、UE205に関する情報であるUE情報、UE205が接続中のeNB203に関する情報である接続中eNB情報、及びそのeNB203に隣接するeNB203に関する情報である周辺eNB情報が含まれる。UE情報には、UE205が送信中のコンテンツに関する残存データ量、コンテンツ送信時の全体の許容時間を示す遅延耐性時間等が含まれる。接続中eNB情報及び周辺eNB情報には、eNB203における通信負荷に関する情報、UE接続数情報等が含まれる。
さらに、イベント検知用サーバ3Aは、あるUE205からのコンテンツデータの送信開始を検知した場合には、その検知タイミングからのそれぞれの環境データのサンプリングタイミングにおける経過時間を算出し、環境データに含まれる該当のUE205に関する遅延耐性時間から経過時間を減算することにより、遅延耐性残余時間を経過時間情報として生成する。そして、イベント検知用サーバ3Aは、それぞれのサンプリングタイミングにおける環境データに該当UE205に関する遅延耐性残余時間を付加して情報処理部5Aに送信する。
情報処理部5Aは、イベント検知用サーバ3Aから取得した環境データを用いて深層強化学習を実行することにより送信レート制御モデルを構築する。この情報処理部5Aは、機能的な構成要素として、入力部7A、学習器9A、及び出力部17Aを備える。入力部7Aは、イベント検知用サーバ3Aから送信されてきた環境データを学習器9Aに入力し、出力部17Aは、学習器9Aによって導出された送信レートを基に、UE205の送信レートを制御する制御信号をモバイル通信ネットワーク201へ通知する。
情報処理部5Aの学習器9Aは、環境データを深層強化学習によって学習することによってモデルのパラメータを最適化し、最適化されたモデルを用いて送信レート制御を行う。例えば、学習器9Aは、強化学習の一種であるQ学習に深層学習を適用したDDQN(Double Deep Q-Network)によって構成されている。DDQNは、行動aの選択と評価とにそれぞれ異なるモデルを使用する学習方法である。
具体的には、学習器9Aは、取得した環境データで表される状態sに対して取りうる行動aの価値を行動価値関数Q(s,a)として定量化し、Q(s,a)を最大化するように逐次更新することで行動を最適化する。このような学習器9Aにおいては、高次元な状態に対して行動価値関数Q(s,a)をDNNで近似することで学習可能とすることにより、モバイル通信ネットワークのような状態数が膨大な環境に対してQ学習を適用することができる。
さらに具体的には、学習器9Aは、環境データによって表される状態sに対して深層強化学習を行うことで、UE205に帯域を与える優先度を決定するQoS(Quality of Service)レベルを“レベル0”~“レベル3”までの4段階の間から行動aとして導出する。なお、学習器9Aは、深層強化学習において用いる報酬rを、送信レート制御後に取得された環境データを基に下記の式(1)及び式(2)によって計算する。
r=-1 if Lt>Lideal,
r=+1 if Lt≦Lideal …(1)
r=-1 if QoSt-1≠QoSt,
r=0 if QoSt-1=QoSt …(2)
つまり、学習器9Aは、現状のeNB203の負荷Ltが理想負荷Lidealを超過しているか否かで報酬rを増減させることで、通信トラフィックの時間的局所性を解消する送信レート制御を学習する。また、QoSレベルが安定せずに学習が収束しないことを回避するために、学習器9Aは、現在時刻tのQoSレベルと直前の時刻t-1のQoSレベルとが異なる場合に報酬rを減少させる。
上記のような機械学習システム1Aによれば、経過時間情報として遅延耐性残余時間が付加された環境データに対して深層強化学習を適用することにより、QoSの状態が時々刻々と複雑化したり、多種多様な種類のコンテンツが様々なタイミングで送信される通信環境であっても、帯域利用効率に偏りが生じることを防止できる。特に、深層強化学習が適用されることで、コンテンツの遅延耐性に考慮しながらモバイル通信ネットワークの状況に応じて送信レート制御のモデルを動的に構築することができ、帯域利用効率の最大化が実現される。
ここで、上記実施形態では、学習器は、機械学習における教師あり学習器によって構成されている、こととしてもよい。かかる学習器を備えれば、入力データを基にモデルを構築してそのモデルによって現象の時間的変化を推定・予測することができる。
また、学習器は、ニューラルネットワークによって構成されている、こととしてもよいし、ディープニューラルネットワークによって構成されている、こととしてもよい。この場合、入力データからより抽象的な時系列特徴を重畳することができ、現象の時間的変化を学習する学習器におけるモデル構築をより効率化することができる。
また、前記入力部は、連続した複数の時点における前記入力データと前記入力データに対応する経過時間情報との組み合わせを、前記複数の時点毎に生成し、前記複数の時点毎の前記組み合わせを入力する、こととしてもよい。かかる構成を採れば、連続した複数の時点における入力データのそれぞれに経過時間情報を組み合わせて入力することで、現象の時間的変化を学習する学習器におけるモデル構築をより一層効率化することができる。
また、既定のイベントの発生を検知する検知部をさらに備え、入力部は、検知部における検知に応じて特定の時点に対応する経過時間情報を算出し、当該経過時間情報を入力データに対して付加する、こととしてもよい。これにより、既定のイベントの発生を基準にした経過時間情報を入力データに付加することができ、学習器がより少ない量の訓練データで適切にモデル構築することができる。
また、入力部は、入力データに対して、入力データに含まれる値のイベントの発生後における積算値をさらに付加して入力し、学習器は、積算値をさらに用いてパラメータを最適化する、こととしてもよい。これにより、既定のイベントの発生後における積算値を入力データに付加することができ、学習器がさらに少ない量の訓練データで適切にモデル構築することができる。
また、入力部は、入力データに対して、入力データに含まれる値のイベントの発生後における統計量をさらに付加して入力し、学習器は、統計量をさらに用いてパラメータを最適化する、こととしてもよい。これにより、既定のイベントの発生後における統計量を入力データに付加することができ、学習器がさらに少ない量の訓練データで適切にモデル構築することができる。
さらに、入力部は、入力データに含まれる目的変数の分布を均衡化させるために、入力データの再サンプリングを適用し、再サンプリングが適用された入力データを入力する、こととしてもよい。これにより、入力データにおける目的変数の分布を均衡化でき、目的変数の推定・予測の精度をさらに向上させることができる。
また、入力データは、植物の栽培環境に関する環境データおよび経過時間情報を含む、ことでもよいし、環境データは、温度、相対湿度、飽差、光量、灌水量のうちの少なくとも1つであってもよい。これにより、植物の栽培状態を推定・予測する機械学習のモデルを効率的かつ適切に構築することができる。
さらに、経過時間情報が付加された入力データは、日の出後の経過時間に対する変化、および灌水後の経過時間に対する変化を示すデータであってもよいし、経過時間情報の基となるイベントは、日の出および灌水であってもよい。この場合も、植物の栽培状態を推定・予測する機械学習のモデルを効率的かつ適切に構築することができる。
また、検知部は、光量データおよび灌水量データを検出し、入力部は、光量データおよび灌水量データを含む入力データを生成してもよい。こうすれば、光量および灌水量に関する環境データを用いて機械学習のモデルを構築することにより、植物の栽培状態を推定・予測する機械学習のモデルをより適切に構築することができる。