JP6835575B2 - 予測型モデルに基づく推薦 - Google Patents

予測型モデルに基づく推薦 Download PDF

Info

Publication number
JP6835575B2
JP6835575B2 JP2016255140A JP2016255140A JP6835575B2 JP 6835575 B2 JP6835575 B2 JP 6835575B2 JP 2016255140 A JP2016255140 A JP 2016255140A JP 2016255140 A JP2016255140 A JP 2016255140A JP 6835575 B2 JP6835575 B2 JP 6835575B2
Authority
JP
Japan
Prior art keywords
variable
variables
computer
model
option
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.)
Active
Application number
JP2016255140A
Other languages
English (en)
Other versions
JP2017126330A (ja
Inventor
グレアント シャビエル
グレアント シャビエル
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.)
Dassault Systemes SE
Original Assignee
Dassault Systemes SE
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 Dassault Systemes SE filed Critical Dassault Systemes SE
Publication of JP2017126330A publication Critical patent/JP2017126330A/ja
Application granted granted Critical
Publication of JP6835575B2 publication Critical patent/JP6835575B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2272Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、コンピュータプログラムおよびシステムの分野に関し、より詳細には、機械学習モデルの助けを借りて評価された可能なオプションを制限することによって適切な決定を選択するための方法、システムおよびプログラムに関する。
推薦(recommendations)は、エンジニアリングにおける意思決定のために使用される。例えば衛星打上の進行中に、事故(例えば燃料タンクの温度、燃料消費、発射装置の速度、等々を制御すること)の危険の作用を最小化するためには、緊急アクションを推薦することが要求される。推薦は、デバイスの制御に限定されないが、それらはデバイスの構想中および製造中にも同じく使用されることが可能であり、例えばCADシステムは、設計されたデバイスがうまく作動しない危険が最小化されるよう、デバイスの設計中の推薦を提供することができる。
いくつかの知られているカテゴリの推薦システムが存在している。第1のカテゴリは、訪問者が、既に訪問された内容に基づいて内容提案を受け取るシステムである、いわゆるリコメンダシステムを含む。例えば探索エンジンは、訪問されたページの個人履歴に基づいて探索結果をランク付けする。このようなシステムの例は、非特許文献1の中で考察されており、または同じく非特許文献2の中で考察されている。
しかしながらこれらのリコメンダシステムは、極めて多数のユーザの履歴を集中化するアプリケーションで動作する。例えばGoogle(C)探索は、10億を超えるユーザを有している。会社のサーバ上でホストされるシステムは、学習すべき意思決定者のこのようなプールを有していない。意思決定者は、典型的には、同様の状況におけるそれらの同僚の蓄積された経験に基づくアドバイスのために、最良の実務または管理顧問会社を使用する。しかしながら、企業の、経営上のデータおよび設備データの異なる会社からの相対的な隔離は、コンピュータプログラムによるこの学習プロセスの自動化を困難にしている。したがってそれらの同業者からの決定の履歴を調べるよりもむしろ、意思決定者は、決定のためのニーズをトリガする状況を記述しているデータ(例えばそれらの独自の操作および設備を記述している変数)に基づいて状況を評価する。したがってこれらのリコメンダシステムは、これらの状況には適していない。
第2のカテゴリは、特定の問題に関連する意思決定を自動化する、規則に基づくシステムを含む。専門家によって作成される規則に基づいて、自動的に適用される。オプションの数が少なく、また、入力変数が人による管理が可能であるか、または処理されて識別的変数の管理可能なセットに要約される場合、専門家にとっては、ほとんどの場合に最適アクションをもたらすことになる規則を規定することが可能である。第1の手法は、「専門家規則のみ」と呼ばれ、規則は、システムが適用されることになる技術分野の専門家によって手で作成される。第2の手法は、「経験的なモデルと結合された専門家規則」と呼ばれ、経験的なモデルは、利用可能な入力を処理し、かつ、管理可能な数の入力を返すために機械学習に基づいて構築される。このようなモデルは、典型的には、予測された確率を返すことになる。人間によって作成された規則に提供される入力の複雑性が低減されるため、ヒューマンエラーに対する余地が低減される。
しかしながらこの第2のカテゴリは多くの欠点を抱えており、とりわけ2つの手法は、独立した要素の数およびオプションの数が人間の専門家によっては管理することができない問題をもたらす場合は機能しない。タイプ<専門家規則のみ>の手法は、すべての入力変数の寄与を全面的に捉えることができず、また、タイプ<経験的なモデルと結合された専門家規則>の手法は、不完全な経験的なモデルをもたらすことになるか(すべての独立した要素が入力変数の中で表現されない場合)、または人間の専門家によって理解できないモデルをもたらすことになるかのいずれかである。モデルを理解しない人間の専門家は、モデルをトレーニングする時点では存在しなかった、またはモデルをトレーニングする時点では考慮されなかった新しい情報の存在下においてその関連性を評価することができない。
経験的なモデルの例として、Delmia OI(C)などの経験的な規則生成システムがある。これらのシステムは、このような現象を取り扱うために要求される複雑性を例示している。経験的な規則生成システムは、極めて多数の変数によって記述される現象をモデル化する。それらは、個々に再現度が低く、かつ、精度が低く、したがって潜在的に互いに矛盾する多くの規則を作成し、それらの異なる結果を投票で議決し、かつ、状況を記述するための新しい合成変数として使用される投票の結果を出力することによって動作する。これらのシステムは、典型的には、高い再現度および高い精度(それぞれ80%を超える)を同時に達成するが、そうするために、専門家によっては作成され得なかったであろう管理不可能な数の規則(数十の変数に対して数万から数百万程度に及ぶ)を作成する。
このようなシステムは、多くの入力パラメータおよび比較的少数のオプションを使用した事例では、専門家が完全に理解することができるモデルの提供に関する場合を除き、手法「経験的なモデルと結合された専門家規則」に首尾よく使用され得る。
しかしながら、このような経験的なモデルは、システムをトレーニングし、また、専門家規則を作成する際に存在しなかったデータ、または考慮されなかったデータを意思決定者に考慮させない。さらに、経験的なモデルには、トレーニングするためのかなりのハードウェア資源が必要である。実際には、決定のニーズは、典型的には新しいデータによってトリガされる。また、決定は、典型的には速やかになされなければならない。したがって利用可能な資源の量およびこれらのシステムが使用され得る事例の数をさらに制限している。
第3のカテゴリは、関連する情報を、意思決定者またはそれらの補助者による管理を可能にする形態で提供することによって意思決定を補助する、理解可能なモデル、表現および対話型インターフェイスを含む。例えばビジネスインテリジェンスツールは、変数を選択し、かつ、例えば散布図によってそれらの相互作用を視覚化するための手段を提供する。分析者は、関連する視覚化をひろい上げ、静的報告書を作成し、かつ、それらを意思決定者に送る。
いわゆる「ホワイトボックスモデル」は、変数間の関係の視覚化または説明を与える経験的な(トレーニングされた)モデルに依拠している。例えば決定ツリー(例えば非特許文献3の中で考察されている)、規則構築エンジン、またはベイジアンネットワーク(例えば非特許文献4の中で考察されている)をトレーニングした後、何らかの確率で、現象を記述している変数のうちのいくつかの前提命題に目標変数をリンクする規則を理解することが可能である。
入力データがグラフで表現され得ない場合、2Dマップ上の2つのエンティティ間の距離がグラフ内におけるそれらの接続性を表す方法でグラフを2次元図面にマップする技法が存在している。これらの技法により、状況を記述している要素間の相互作用の程度を定性的に表すことができる。これらの技法は、例えば非特許文献5の中で考察されているように、同様の観察(N個の寸法が近く、寸法は観察を記述している変数である)が最終的には2Dマップ上で互いに接近するよう、複雑な観察を2Dマップ上にマップするために同じく適用され得る。
クラスタ化技術は、非特許文献6の中で考察されており、これらのクラスタ化技術により、N個の寸法が類似している観察を管理可能な数のグループでまとめてグループ化することができる。
寸法低減技法は、非特許文献7の中で考察されており、それらにより、寸法または寸法の組合せであって、それらに沿ってデータが最も変化する寸法または寸法の組合せを見出すことができる。
所与の目標変数の値に対してどの寸法が最も強い影響力を有するか(記述変数)を見出すための他の技法が存在している。
しかしながら「ホワイトボックスモデル」は、いくつかの欠点を抱えている。とりわけこれらのシステムは、完全に自動化された決定を依然として提供しておらず、したがって重要な要因の遺漏、または考慮される要因の実際の影響力の不正確な予測などのヒューマンエラーによる次善の決定を許容している。
この文脈内では、機械学習モデルの助けを借りて評価された可能オプションを制限することによって適切な決定を選択するための改良された方法の必要性が依然として存在している。
Balabanovic, Marko, and Yoav Shoham. "Fab: content−based, collaborative recommendation." Communications of the ACM 40.3 (1997): 66−72 Sarwar, Badrul, et al. "Item−based collaborative filtering recommendation algorithms." Proceedings of the 10th international conference on World Wide Web. ACM, 2001 Quinlan, J. Ross. "Induction of decision trees." Machine learning 1.1 (1986): 81−106. [1] Heckerman, David, Dan Geiger, and David M. Chickering. "Learning Bayesian networks: The combination of knowledge and statistical Data." Machine learning 20.3 (1995): 197−243 Balasubramanian, Mukund, and Eric L. Schwartz. "The isomap algorithm and topological stability." Science 295.5552 (2002): 7−7 Jain, Anil K., M. Narasimha Murty, and Patrick J. Flynn. "Data clustering: a review." ACM computing surveys (CSUR) 31.3 (1999): 264−323 Wall, Michael E., Andreas Rechtsteiner, and Luis M. Rocha. "Singular value decomposition and principal component analysis." A practical approach to microarray Data analysis. Springer US, 2003. 91−109
したがって、モデルを使用して評価されたオプションを制限することによって適切な決定を選択するための、コンピュータ実施方法が提供される。方法は、
−入力を受け取り、かつ、入力に応答して出力を提供することができるモデルを選択するステップと、
−同様の事象を表すデータのセットを使用してモデルをトレーニングするステップと、
−仮説的事象を表すオプションを生成するステップと、
−トレーニングされたモデルを生成されたオプションに対して提供することによって目標値を計算するステップと、
−生成されたオプション、およびトレーニングされたモデルと関連付けられた目標値にインデックス付けするためのインデックスを計算するステップと、
−オプションのセットの選択を獲得するために前記インデックスを問合せるステップであって、選択は特定の制約に従って実行されるステップと、
−問合せの結果として、生成されたオプションのセットのサブセットを返すステップであって、サブセットは、各オプションと関連付けられた目標値に従ってランク付けされるステップと
を含む。
方法は、以下のうちの1つまたは複数を含むことができる。
−モデルをトレーニングするステップは、同様の事象を表すデータのセットを収集するステップと、同様の事象を表すデータの収集されたセットに基づいてモデルをトレーニングするステップをさらに含む。
−同様の事象を表すデータのセットは観察のセットを含み、各観察は変数を使用して定義され、観察のセットの目標変数であって、変数である目標変数を特定し、観察のセットの測定可能変数であって、過去の事象と類似している現在の事象の現在の観察において測定され得る変数である測定可能変数を特定し、観察のセットのアクション可能変数であって、ユーザの決定に基づいて作用され得る変数であるアクション可能変数を特定する。
−モデルをトレーニングするステップは、シミュレーションのセットから生成されるデータのセットを計算するステップと、データの生成されたセットに基づいてモデルをトレーニングするステップをさらに含む。
−仮説的事象を表すオプションを生成するステップは、連続するセグメント、または前記各変数の可能な値の離散セットの各観察の各変数を定義するステップと、定義のセグメントの値、またはそれぞれの変数に対する可能な値のセットを生成することによってオプションを生成するステップを含む。
−オプションを生成するステップは、生成されるオプション毎に、データのセットによって表される同様の事象の中から事象を選択するステップと、変数を、選択された事象の変数の値に基づいて生成されるオプションに設定するステップをさらに含む。
−値を生成するステップは、無作為確率変数発生器を使用して実行される。
−セットの観察の変数間の依存性を決定するステップと、生成された事象の中から、変数が決定された依存性を満足しない事象を除去するステップ。
−1つまたは複数の観察の1つまたは複数の変数は実時間で伝送される。
−伝送された1つまたは複数の変数から新しいオプションを生成するステップと、トレーニングされたモデルを生成された新しいオプションに対して提供することによって目標値を計算するステップと、生成された新しいオプションおよび計算された目標値にインデックスを付けることによって前記インデックスを更新するステップ。
−前記インデックスを問合せることによって実行される選択が従う制約は、実時間で伝送される変数に対して提供され、また、実時間で伝送される値を使用して設定される。
−オプションのセットのオプションは生成されたオプションである。
上記方法を実行するための命令を含むコンピュータプログラムがさらに提供される。
コンピュータプログラムがその上に記録されたコンピュータ可読記憶媒体がさらに提供される。
上記コンピュータプログラムがその上に記録されたメモリに結合された処理回路を備えるサーバがさらに提供される。
サーバは、クライアントコンピュータに接続されることが可能であり、クライアントコンピュータから前記インデックスの問合せが生成される。
以下、本発明の実施形態が、非制限例として、添付の図面を参照して説明される。
本発明の例のフローチャートである。 コンピュータの例を示す図である。 観察のセットの例を示す図である。
図1のフローチャートを参照すると、モデルを使用して評価されたオプションを制限することによって適切な決定を選択するための、コンピュータ実施方法が提案される。方法は、入力を受け取り、かつ、入力に応答して出力を提供することができるモデルを選択するステップを含む。方法は、同様の事象を表すデータのセットを使用してモデルをトレーニングするステップをさらに含む。方法は、仮説的事象を表すオプションを生成するステップを同じく含む。方法は、トレーニングされたモデルを生成されたオプションに対して提供することによって目標値を計算するステップをさらに含む。方法は、生成されたオプション、およびトレーニングされたモデルと関連付けられた目標値にインデックス付けするためのインデックスを計算するステップを同じく含む。次に方法は、オプションのセットの選択を獲得するために前記インデックスを問合せるステップであって、選択が特定の制約に従って実行されるステップを含む。次に、方法は、問合せの結果として、生成されたオプションのセットのサブセットを返すステップであって、サブセットが、個々のオプションと関連付けられた目標値に従ってランク付けされるステップを含む。
このような方法は、モデルを使用して評価されたオプションを制限することによる適切な決定の選択を改善する。実際、本発明は、任意のタイプのモデルを使用して予測を実施することにあるが、その場合、最も高い予測された結果のオプションを返す代わりに、それは、オプションおよび対応する結果にインデックスを付け、結果によるランク付けの前に、意思決定者からの制約を受け入れることにある。例えば意思決定者は、最初は全く制約を規定せず、返された推薦が適用可能かどうかを調べる問合せを実施することができる。適用可能ではない場合、それらは、適用不可能な推薦をフィルタする新しい問合せの形態で制約を追加することができる。
本発明は、モデルをトレーニングする時点では利用可能ではない推薦の知識を前提として統合を可能にする。第1の結果として、本発明は、意思決定者がそれらに提供される推薦に影響を及ぼすことを可能にする。それは、それらに、推薦をもたらすプロセスに対する制御を与える。それらは推薦を割り当てることができ、また、それをより使用する傾向がある。第2の結果として、本発明は、関連を維持するためには頻繁に更新される必要があるモデルの使用を可能にするが(速やかに展開する状況の場合)、限られた利用可能な計算資源のため、十分に頻繁には更新され得ない(モデルの再トレーニングは、とりわけ状況を表すために多くの変数が必要である場合、典型的には非常に長いCPU時間および大量のRAMが必要である)。例えばシャトルのエンジンが軌道に到達するために期待された推力を提供しない場合、以前のミッションから収集されたデータから学習するモデルは、エンジンがこの問題を有していることを知らないことになり(例えばこの問題は、過去には決して直面されなかった)、適切ではないシャトルの方向の変更を実行することを提案する可能性がある。ミッションのチーフは、エンジンが期待された推力を提供しないことを制約として適用することができる。「ホワイトボックスシステム」および概念的ディスプレイとは対照的に、本発明は、オプションの自動化された選択を提供し、恐らくユーザアクションは要求されず、一方、最良のオプションが選択される。これは、デバイスおよびシステムの管理を改善する。
方法は、コンピュータによって実施される。これは、方法のステップ(または実質的にすべてのステップ)が少なくとも1つのコンピュータまたは同様の任意のシステムによって実行されることを意味している。したがって方法のステップは、コンピュータによって、恐らくは完全に自動的に、または半自動的に実行される。例では、方法のステップのうちの少なくともいくつかのトリガリングは、ユーザ−コンピュータ対話を介して実行され得る。要求されるユーザ−コンピュータ対話のレベルは、ユーザの希望を実施するための、予知され、かつ、平衡に置かれた必要性の自動性のレベルに依存し得る。例では、このレベルは、ユーザによって定義され、および/または予め定義され得る。
方法のコンピュータ実施の典型的な例は、この目的のために適合されたシステムを使用して方法を実行することである。システムは、メモリおよびグラフィカルユーザインターフェイス(GUI)に結合されたプロセッサを備えることができ、メモリには、方法を実行するための命令を含むコンピュータプログラムがその上に記録される。メモリは、このような記憶のために適合された任意のハードウェアであり、恐らくはいくつかの全く異なる物理部分(例えばプログラムのための部分、および恐らくはデータベースのための部分)を備える。
「データベース」により、探索および検索のために編成されたデータ(すなわち情報)の任意の収集が意味される(例えば予め定められた、構造化された言語、例えばSQLに基づく、例えば関係データベース)。メモリ上に記憶される場合、データベースは、コンピュータによる速やかな探索および検索を可能にする。データベースは、実際、様々なデータ処理操作と関連してデータの記憶、検索、修正および削除を容易にするように構造化される。データベースは、記録に分解され得るファイルまたはファイルのセットからなることができ、記録の各々は、1つまたは複数のフィールドからなる。フィールドは、データ記憶の基本単位である。ユーザは、主として問合せを介してデータを検索することができる。キーワードおよびソーティングコマンドを使用して、ユーザは、多くの記録中のフィールドを速やかに探索し、並べ換え、グループ化し、かつ、選択することができ、それにより使用されているデータベース管理システムの規則に従って、データの特定の集合体上で報告書を検索し、または作成することができる。
インデックスを付けるとは、観察を記憶することは、変数の予め定義されたセット上の値による問合せを最適化することを意味する方法でそれらの目標値を含むことを意味している(これらの変数は、「インデックスが付けられた」と言われる)。変数は、逆リストに記憶されなければならない。逆リストは値のリストであり、値毎にポインタのリストを有している。個々のポインタは、記憶された観察をさし示し、その観察に対してこの値が生じる。逆リストは、値による速やかな問合せを可能にする。いくつかの変数では、順序の観念および値間の差が重要である。例えば温度T1=22C、温度T2=23C、温度T3=30CでラップL1が生じると、温度に関して、T1およびT2はT2およびT3よりもより類似している。これらの変数に対して、セグメントによる問合せは有意義である。インデックスが付けられると、これらの変数は、典型的には、最も速い読出しアクセスを提供する支援された物理的メモリ上に記憶される。これは、所与の変数の値をセグメントに分類し得るすべての観察の速やかな問合せを可能にすることである。セグメントによる問合せのための1つの手法は、離散化された値(精度の特定のレベルに丸められた)にインデックスを付け、かつ、セグメントに含まれているすべての離散値を問合せることである。インデックスは、関連するメタデータを有する文書としてデータを記憶する。文書は観察であり、関連する入力および目標値はメタデータである。
図2は、システムの例を示したもので、システムは、クライアントコンピュータシステム、例えばユーザのワークステーションである。
例のクライアントコンピュータは、内部通信バス1000に接続された中央処理装置(CPU)1010、同じくバスに接続されたランダムアクセスメモリ(RAM)1070を備えている。クライアントコンピュータは、バスに接続されたビデオランダムアクセスメモリ1100と関連付けられるグラフィカルプロセッシングユニット(GPU)1110をさらに備えている。ビデオRAM1100は、当分野ではフレームバッファとして同じく知られている。大容量記憶デバイスコントローラ1020は、ハードドライブ1030などの大容量メモリデバイスへのアクセスを管理している。コンピュータプログラム命令およびデータを有形的に具体化するのに適した大容量メモリデバイスは、一例として、EPROM、EEPROMおよびフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスクおよび取外し可能ディスクなどの磁気ディスク、磁気光学的ディスクおよびCD−ROMディスク1040を含むあらゆる形態の不揮発性メモリを含む。上記はいずれも、特別に設計されたASIC(特定用途向け集積回路)によって補足され、または特別に設計されたASIC(特定用途向け集積回路)に組み込まれ得る。ネットワークアダプタ1050は、ネットワーク1060へのアクセスを管理している。クライアントコンピュータは、カーソル制御デバイス、キーボード、等々のハプティックデバイス1090を同じく含むことができる。カーソル制御デバイスは、クライアントコンピュータに使用され、ディスプレイ1080上の任意の所望の位置へのユーザによるカーソルの選択的位置決めを許容する。さらに、カーソル制御デバイスは、ユーザによる様々なコマンドおよび入力制御信号の選択を可能にする。カーソル制御デバイスは、システムへの入力制御信号のためのいくつかの信号発生デバイスを含む。典型的には、カーソル制御デバイスはマウスであってもよく、マウスのボタンを使用して信号が生成される。別法または追加として、クライアントコンピュータシステムは、感知可能なパッド、および/または感知可能なスクリーンを備えることも可能である。
コンピュータプログラムは、コンピュータによる実行が可能な命令を含むことができ、命令は、上記システムに方法を実行させるための手段を含む。プログラムは、システムのメモリを含む任意のデータ記憶媒体上に記録することができる。プログラムは、例えばデジタル電子回路の中、もしくはコンピュータハードウェア、ファームウェア、ソフトウェアの中、またはそれらの組合せの中で実施され得る。プログラムは、装置、例えばプログラマブルプロセッサによる実行のために機械可読記憶デバイスの中で有形的に具体化された製品として実施され得る。方法ステップは、命令のプログラムを実行して、入力データ上で動作し、かつ、出力を生成することによって方法の機能を実行するプログラマブルプロセッサによって実行され得る。プロセッサは、したがってプログラマブルであってもよく、また、データ記憶システム、少なくとも1つの入力デバイスおよび少なくとも1つの出力デバイスからデータおよび命令を受け取り、また、データ記憶システム、少なくとも1つの入力デバイスおよび少なくとも1つの出力デバイスにデータおよび命令を伝送するために結合され得る。アプリケーションプログラムは、必要に応じて、高水準手続き型プログラミング言語またはオブジェクト指向プログラミング言語で、もしくはアセンブリ言語または機械言語で実施され得る。いずれの場合においても、言語は、コンパイルされた、すなわち翻訳された言語であってもよい。プログラムは、フルインストレーションプログラムまたは更新プログラムであってもよい。システム上のプログラムのアプリケーションは、いずれの場合においても、命令が方法を実行することになる。
方法は、一般に、観察のセットを操作する。観察は変数のセットであり、個々の変数は値と関連付けられる。変数は、システムの状態またはその一部の状態、もしくはシステムまたはその一部と関係があるか、もしくはシステムまたはその一部に対する影響力を有する要素の状態を表す。例えば自動車の観察の変数は、自動車の温度、オイル圧、瞬時燃料消費、競争中の平均燃料消費、タイヤの種類、空気の温度、天気(雨、晴れ、雪)、等々であってもよい。変数は、変数の状態を定量化する値と関連付けられる。観察は、所与の時点におけるシステムの状態を表す。観察のセットは、したがって異なる時点における変数の値である。実際には、システムは、航空宇宙、建築、建設、消費財、ハイテクデバイス、産業設備、輸送、海運および/または沖合オイル/ガス製造または輸送を始めとする様々な無制限の産業分野に属し得る。方法によって使用される観察のセットは、したがって、地球上の車両またはその一部のシステム(例えば自動車および軽トラック設備、競走用自動車、モータサイクル、トラックおよび電動機設備、トラックおよびバス、列車を含む)、航空機またはその一部のシステム(例えば機体設備、航空宇宙設備、推進設備、防衛製品、航空路設備、宇宙設備を含む)、船舶またはその一部のシステム(例えば海軍設備、商船、沖合設備、ヨットおよび作業船、海上設備を含む)、機械的システム全体または機械的システムの一部(例えば産業製造機械類、大型移動機械類または設備、設置された設備、産業設備製品、製造された金属製品、タイヤ製造製品を含む)、電気機械的システムもしくは電子システムまたはその一部(例えば消費者電子装置、安全保護および/または制御および/または計装製品、計算および通信設備、半導体、医療デバイスおよび設備を含む)、消費財(例えば家具、家庭および庭製品、余暇財、ファッション製品、耐久消費財小売業者用製品、非耐久消費財小売業者用製品を含む)、梱包(例えば食料および飲料ならびにタバコ、美容および個人医療、家庭用製品梱包を含む)などの任意の機械的システムであってもよい産業システムに関連する変数を含むことができる。
図3は、観察の例を示したものである。個々の線12は観察を表しており、個々の列14(分かりやすくするために、図3には1つだけ点線で示されている)は変数に対応し、個々の長方形18は、観察に対する変数の値を表している。この例では、観察のセットは、行列10上に記憶される。個々の観察は、その値を使用して、<入力変数>として同じく知られているいわゆる<記述変数>上で記述されている(それらは、観察を記述するために、トレーニングされたモデルの入力として提供されるため)。おもしろいことには、セットの個々の観察は、セットの他の観察の変数と同じ変数を含む。個々の観察に対して、1つまたは複数の変数は空であってもよく、すなわち値と関連付けられていなくてもよいことを理解されたい。個々の観察は、<出力変数>として同じく知られているいわゆる<目標変数>上で対応する値と関連付けられる。目標変数は、トレーニングされたモデルが新しい観察に対して評価しなければならない変数である。目標変数は、それらが、システムの挙動を理解し、および/または予測し、および/または反応するモデルのユーザを補助する情報を提供する、という意味でモデルのユーザにとっては有意義である。この例では、目標変数は、行列16の中に同じく記憶される。個々の観察の値および目標変数は、行列10および16を含む単一の行列の中に記憶され得ることを理解されたい。観察および目標変数は、タグが付けられたデータのセットを形成する(また、タグが付けられたデータのセットと呼ばれる)。個々の目標変数には、観察毎のいわゆる目標値である値が付随することを理解されたい。
図1を参照すると、本発明の構築時間が考察されており、この構築時間の間に、同様の事象である過去の事象のデータからモデルがトレーニングされる。
ステップS10で、同様の事象上のデータが収集される。同様の事象とは、事象が共通の特性を有していることを意味している。実際には、収集されるデータは同様の事象の観察であり、個々の観察は、1つまたは複数の変数と関連付けられる。事象間の共通の特性は、事象を記述している変数であってもよい。したがって、また、図3を参照すると、観察のセットの個々の観察は、2つの観察の間の変数は異なる値を有し得ることを除き、同じ変数を使用して記述される事象を記述している。
以下、過去の同様の事象上のデータがどのように収集されるか、すなわち観察のセットがどのように構築されるかの例が説明される。個々の変数は観察の行列の列であり、一方、観察自体は同じ行列の行である。列Cと行Rの交点における観察行列の個々の要素は、観察Rに対する変数Cの値である。変数の3つのカテゴリがデータのセットの中から識別され得る。第1のカテゴリの変数は目標変数と呼ばれる。目標変数は、トレーニングされたモデルが新しい観察に対して評価しなければならない変数である。目標変数は、それらが、システムの挙動を理解し、および/または予測し、および/または反応するモデルのユーザを補助する情報を提供する、という意味でモデルのユーザにとっては有意義である。個々の目標変数は目標値と関連付けられる。
第2のカテゴリの変数はアクション可能変数と呼ばれる。アクション可能変数は、意思決定者がそれに対して行動することができる変数である。例えばスペースシャトルの速度は、それがシャトルの飛行乗組員によって修正され得るため、アクション可能変数である。
第3のカテゴリの変数は測定可能変数と呼ばれる。これらの変数は、現在の事象の間に測定される。
アクション可能変数および測定可能変数は観察の記述変数を形成する。
観察のセットが構築されると、観察の変数がこれらの3つのカテゴリに従って分類され、例えば図3の行列は、同じカテゴリの変数が行列の隣接する列の中でグループ化されるように構築される。説明のために、変数は、同時にアクション可能変数(意思決定者がそれらに対して行動することができる)、および同時に測定可能変数(それらは現在の事象の中で測定される)であってもよいことに留意されたい。
次に、観察が、測定されないが、シミュレーションのセットから生成される(S12)例が説明される。個々のシミュレーションは変数毎の測度を提供し、また、個々のシミュレーションは、異なる状況の下で事象の進行をシミュレートする。例えばスペースシャトルの多くの着陸がシミュレートされることが可能であり、また、個々のシミュレーションは、事象の進行(着陸)と関連付けられた変数(アクション可能および測定可能の両方)を提供する。
例えば、シミュレーションの任意の時点におけるアクション可能変数の異なる値によって異なり、また、事象の後続する進行によって異なる複数のシミュレーションを生成することが可能であり、それらは、複数の変数上の対応する観察の値によっても同じく異なるようである。
シミュレーションの任意の時点におけるアクション可能変数の値の変化を生成するために、恐らくは定義の範囲上の一様な分布に従って、または変数の値の典型的な分布と整合性のある任意の他の確率分布に従って、変数の定義の範囲上で無作為確率変数発生器を使用することができる。
次に、ステップS20で、収集されたデータの目標値を予測するモデルが選択される。モデルは、利用可能な機械学習ライブラリ、例えばPython Scikit学習から選択され得る。例えば確率的勾配ブースティングモデルが選択され得る。モデルを過去のデータ上でトレーニングし、かつ、モデルパラメータを選択するためのツールが存在している(オープンソースカンパニー内、またはDataikuまたはBigMLによって提供されるソフトウェアなどのソフトウェアによって)。選択されたモデルは、当分野で知られているように、入力を受け取り、かつ、入力に応答して出力を提供することができる。
次に、ステップS30で、選択されたモデルが、同様の事象を表すデータのセットを使用してトレーニングされ、典型的にはモデルは、同様の過去の事象またはシミュレートされた事象に関連する観察のセットを使用してトレーニングされる。モデルをトレーニングするための方法はモデル毎に変化する。例えば人工ニューラルネットワークのトレーニングには、ネットワークに入力される新しい観察に応答した更新に先立ちネットワークがどのように挙動するかに基づいて、また、ネットワークの出力と、観察と結合された目標値との差に基づいてネットワークのニューロンの特性を更新するためのバックプロパゲーションアルゴリズムの使用を含む。勾配ブースティング(Gradient Boosting)またはランダムフォレスト(Random Forest)などのアンサンブルモデル(Ensemble model)のトレーニングには、観察の多くのサブセットを選択すること、また、サブセット毎に、サブセットの観察が与えられた目標値を出力するためにStubなどの単一の推定器をトレーニングすること、およびトレーニングされた推定器を総合Ensembleモデルの推定器のリストに加えることを含む。Stub(=1レベル決定木(Decision Tree))のトレーニングには、変数と、選択された観察の中から異なる目標値と関連付けられたこれらを最も良好に識別するその変数の値とを選択することを含む。
機械学習ライブラリは、典型的には、個々の利用可能なモデルをトレーニングするための方法を実施し、その方法をライブラリのユーザに提供する。ユーザは、トレーニングデータとして使用されることになる観察およびそれらの目標値の選択をこの方法に入力することによってモデルをトレーニングすることができる。方法は、通常、次に新しい観察が与えられた目標値を予測するために使用され得るトレーニングされたモデルにポインタを返す。
さらに図1を参照して、本発明の実行時間が次に説明される。
ステップS42で、仮説的事象を表すオプションが生成される。仮説的事象とは、事象が実行されても、または実行されなくてもよいことを意味している。オプションは、アクション可能変数の値の差によってのみ実際の事象とは異なる事象である。すなわち、観察のセットが、ユーザが決定を下すことができる事象の現在の展開を記述している場合、ユーザは、オプションの中から、非アクション可能変数上のその値が、アクションが取られる際の状況を最も良好に記述している観察と同じであるオプションを選択することを決定することができる。
例えば、いわば観察は、変数「Cabin Fire」(イエス/ノー)、「Fire Extinguisher Status」(オン/オフ)、「Current Procedure」(Flight Data Fileの中に定義されている)によって記述される。「Fire Extinguisher Status」はアクション可能変数であり、また、「Current Procedure」もある程度アクション可能変数である(手順をスキップすることはできず、例えばカウントダウンの中に存在し、orbital_abortへの切換えを突然に決定することはできない)。Cabin Fire=イエス、Fire Extinguisher Status=オフ、Flight Level=カウントダウンという状況によって記述される場合、消火器を使用し、また、カウントダウンを休止する決定は、Cabin Fire=イエス、Fire Extinguisher Status=オン、Flight Level=countdown_pausedによって定義されるオプションの選択に変換する。
オプションの代表的なセットを生成するために、連続する変数は公称変数で近似されることが可能であり、すなわち有限数の値および公称変数のすべての値を取る変数が列挙され得る。任意の変数を公称変数で近似することは、下限および上限を見出し、かつ、変数を離散化することによって実施される。任意の変数の値は、連続するセグメントまたは可能な値の離散セット上で定義される。実際には、物理的事象を表す変数はセグメントの値のみを取り、すなわち下限および上限が存在している。これらの限界は、典型的には、過去のデータを調べることによって見出され得る。変数を離散化するために、1つの方法は、許容可能な精度を決定することにある。典型的には、精度レベルで丸められた、下限と上限の間の値のみが維持される。あるいは値は、恐らくは定義の範囲上の一様な分布に従って、または変数の値の典型的な分布と整合性がある任意の他の確率分布に従って、変数の定義の範囲上で無作為確率変数発生器を使用して生成され得る。
次に、オプションが、それらの変数の可能な値を組み合わせることによって生成される。例えば変数Aが値[1、2、3]を取り、また、変数Bが値[1、2]を取る場合、組合せは、(1、1)、(1、2)、(2、1)、(2、2)、(3、1)、(3、2)である。すなわち|A|*|B|個の組合せである。
しかしながら、生成されるオプションの数は極めて重要であり得る。組合せの数を少なくするために、戦略は、観察のアクション可能変数間の依存性を決定し、かつ、計算された組合せの中から、決定された依存性を満足しない組合せを除去することにあり得る。例えばスペースシャトルの高度および飛行経路角度は、依存しているものとして決定されることが可能であり、この依存性を満足しない組合せは、生成された組合せの中から削除されることになる。別の戦略は、事象が進行する前に、計画された手順(衛星打上げの場合、Flight Data Fileの中で定義される)に関する些細な逸脱に対応する値を生成し、また、事象が進行している間に、事象の実際の展開に関する些細な逸脱に対応する値を生成することにある。例えばこれは、変数毎に、正規の手順において計画された値を中心とする分布をシミュレートし、次に、事象の進行中に測定された値を中心とする分布をシミュレートする無作為確率変数発生器の使用によって実施され得る。説明のために、無作為確率変数発生器は、定義のそれらの範囲上のそれらの確率分布に従って無作為変数の特定の結果を生成するプログラムである。
次に、ステップS40で、目標値が、トレーニングされたモデルを生成されたオプションに対して提供することによって計算される。すなわち目標値がその前に生成されたオプション毎に予測される。トレーニングされたモデルを適用することは、トレーニングされたモデルをオプションと共に入力することにある。機械学習ライブラリは、典型的には、トレーニング後のモデルにポインタを提供し、また、新しい観察をトレーニングされたモデルに入力し、かつ、それに応答して対応する目標値を受け取る方法を提供する。
目標値は、観察に対して評価された目標変数の値である。目標値は、トレーニングされたモデルによって与えられるか(典型的には過去の観察に対して)、または予測される(典型的には新しい観察に対して)かのいずれかである。本発明の文脈においては、目標変数は、典型的には、アクション可能変数に対する行動によって影響を及ぼすことをユーザが希望する何かである。したがって目標値は、典型的には、オプションがいかに望ましいかに関する情報を与える。例えばその前の例では、「Expected Mission Staus at Termination」(失敗/継続中/成功)または「Expected Mission Cost at Termination」(百万ドルの価値)が可能な目標変数である。これらの値は、現在の観察が与えられ、かつ、十分な記述変数が提供されると、トレーニングされた機械学習アルゴリズムによって予測され得る。具体的には、オプションが観察であると(実現されず、決定が下される前、または行動がなされる前は仮説的である)、すべてのオプションは、その予測された目標値によって評価され得る。上の例では、消火器を作動させ、かつ、カウントダウンを休止するオプションは、ミッションの成功に対する期待された結果、およびその総コストによって評価されることになる。
したがって目標値の計算は、トレーニングされたモデルを生成されたオプションに対して提供することによって実行される。
実行時間のこのステップでは、方法を実行するシステムは、個々のオプションに対応する目標値を計算しており、個々のオプションは、測定可能変数およびアクション可能変数によって記述されている。測定可能変数は、決定およびアクションの文脈を記述し、アクション可能変数は、決定および後続するアクションを記述する。目標値は、文脈が与えられた決定および後続するアクションの目標変数上で結果を記述する。前記の他の方法では、現在の事象の間に収集された測定可能データ、およびアクション可能変数に対する生成されたデータの両方を使用して、オプションの組合せ毎に予測が利用可能である。
事象の間、測定された変数の測定されたデータは、実時間でシステムに伝送されることが好ましい。これは、データプロバイダまたはセンサからの任意の通信チャネルを介した通知を実時間プッシュするためのサブスクリプション、およびサブスクリプションまたはメッセージングプロトコルによって実施され得る。チャネルは、典型的には、データプロバイダまたはセンサによって提供されるインターフェイスに依存することを理解されたい。
次に、ステップS50で、ステップS42の計算されたオプションおよびステップS40の計算された目標値のためのインデックスが計算される。実際には、単一のインデックスがオプションおよび目標値の両方に対して計算される。インデックスを付けるために、それらの目標値を含む現在の観察が記憶される。変数は、個々のオプションと結合された探索可能なメタデータとしてインデックスが付けられる。そうするために、それらは逆リストに記憶される。逆リストは値のリストであり、値毎にポインタのリストを有している。個々のポインタは、記憶された観察を示し、その観察に対してこの値が生じる。アクション可能変数毎に、すなわちオプション毎に少なくとも逆リストが存在する。逆リストは、値による速やかな問合せを可能にする。
次に、ステップS60で、問合せがインデックスによって受け取られる。これは、インデックスをホストしているサーバが、ユーザ、例えばサーバ上に接続されたクライアントコンピュータによって生成された問合せを受け取ったことを意味している。問合せの目的は、インデックスが付けられる計算されたオプションのサブセットの選択を獲得することであり、選択は、問合せにおいて規定された特定の制約に従って実行される。特定の制約は、1つまたは複数の変数に対して提供される。制約は、典型的には、オプションを記述している変数の値の同等性および/または非同等性のセットである。制約を適用することは、いくつかのオプションを捨てることになり、その結果、他のオプションを考慮することになる。
制約は、事象の現在の展開において測定された値に従った測定可能変数の制約、およびモデルをトレーニングする時点では知られていなかった情報に基づいてオプションをフィルタ除去するためのアクション可能変数の制約を含むことができる。例えばアクションが飛行の第1の段階の間に生じ、また、消火器が突然に動作を停止した場合、制約は、我々に興味があるのは、可能な決定を記述しているオプション、ならびに事象(飛行の第1の段階の間の)および新しい情報が手元に与えられた実行可能性(とりわけ、消火器が動作を停止したため、それはそれらを作動させるためのオプションではない)の文脈におけるそれらの結果のみであることを意味する<Current Procedure=first_stage AND NOT Fire Extinguisher Status=on>を含むことができる。
既に言及したように、変数は実時間で伝送され得る。したがってインデックスを問合せることによって実行される選択が従う制約は、実時間で伝送される変数に対して提供し、また、実時間で伝送される値を使用して設定される。
問合せの結果、インデックスは、ステップS70で、問合せと一致する予測を返す。これは、インデックスをホストしているサーバが、問合せのオプションのサブセットからの計算されたオプションのセットを生成したことを意味している。
セットのサブセットは、サブセットの個々のオプションと関連付けられた目標値の関数に従ってランク付けされ(またはソートされ)得る(S80)。これは、オプションの望ましさの測度が複数の変数に依存する場合、ユーザに、最良のオプションの速やかな識別を有利に提供する。複数のモデルをトレーニングして、それぞれ1つの目標値が予測されることが可能であり、また、オプションは、複数の変数の関数に従ってランク付けされ得る。
ランク付けされたサブセットは、したがって、ユーザ、例えばサーバ上に接続されたクライアントコンピュータに伝送される。
ステップS40およびS50を参照して説明したように、変数は実時間で伝送され得る。これは、現在の事象からの潜在的な逸脱、およびこれらの逸脱に応答して下され得る潜在的な決定を考慮するために、新しいオプションが伝送された変数から連続的に生成され得ることを意味している。新しい目標値は、新しいオプション毎に計算され得る。また、したがって新しいオプションおよび予測のために新しいインデックス付けが実行され、インデックスは、生成された新しいオプションおよび計算された新しい目標値に対応する文書を使用して更新される。インデックスは、典型的には、データの猛烈な実時間フローを処理することができる。したがってインデックス付けは、典型的には、オプションが生成され、また、予測が提供されると実行され得る。無作為確率変数発生器の使用によるオプションの生成は、典型的には速やかに実行されるプロセスであり、また、新しいオプション(予測)に対する目標値の予測も、同じく典型的には速やかに実行されるプロセスである。機械学習アルゴリズムは、典型的にはトレーニングするのが遅いが、一度トレーニングされると、実行するのが速い。したがって操作の連続的な流れに不便な制限をもたらすプロセスの部分は存在しない。
次に、衛星の打上げのための軌道船の操作の間に決断する宇宙管制センターのクルーおよび乗組員を補助する本発明の例が説明される。
これらの操作においては、ほとんどのアクションが自動化されたプログラムおよび計画された手順に従って実行されることは事実である。指針および計画された事象のセットは、フライトデータファイル(Flight Data File)の中に存在している。フライトデータファイルは、クルーアクティビティプラン、ペイロードハンドブック、および精巧な飛行計画プロセスの間、一緒に置かれる他の文書を含む。問題のタイプはセグメント化され、また、アクションは、あらゆるタイプの問題を予想する目的で、前もって計画される。
しかしながら宇宙管制センターのクルーおよび乗組員には、常に決断することが依然として必要である。例えばNASAは、あらゆる中止モードの中でもとりわけabort−to−orbitは、可能である場合、好ましいモードであると明言しており、また、1つの理由は、それが、管制官および飛行乗組員に、状況を評価し、かつ、着陸するか、または計画された通りに継続することを決定し、また、問題をどのように解決するかを決定するための時間を与えることである。しかしながらこの時間は、ミッションが保留されるため貴重であり、資源は消費されつづけ、また、問題がより一層悪化し得る。abort−to−orbitが可能ではない場合、決定の速さおよび質がより一層重要である。
いくつかの変数がスペースシャトルのために測定され、個々のエンジンのためのエンジンスロットル、個々のエンジンのための燃料レバー、キャビン圧力(減圧化の場合、問題)、軌道船冷却システムの状態(失われると問題)、高度、飛行経路角度、方向、重量、速度/範囲、宇宙船の表面の圧力、電気システム状態、現在の手順(カウントダウン/第1の段階/第2の段階/Return to Launch Site/Trans−Atlantic Abort Landing/Abort Once Around/Abort to Orbit/Contingency Abort /Extra−vehicular activity)、等々が測定され得る。さらにこの例では、アクション可能変数は、個々のエンジンシステムのためのエンジンスロットル、燃料レベル(燃料は投棄され得る)、重量(材料は投棄され得る)、操縦の選択(高度、姿勢、飛行角度、方向、等々を変更するため)、手順の選択および軌道の選択を含む。
この文脈においては、本発明は、衛星を正しい軌道に乗せる予測された機会、地球に戻る際の危険のない着陸を最大化し、例えば材料の損傷の最小化および乗組員メンバーの傷害または死亡の原因になりやすいキャビンの内部における事件の最小化によるミッションの総合コストを最小化するオプションを推薦するために適用され得る。
準備フェーズでは、例えば何らかの変数に対して、正規の手順において計画された正規の値とは異なる(理論的に可能な)値を設定することによって多くの状況(正規の手順からの逸脱)が予想され得る。これらの逸脱の各々に対してオプションが生成され得る。例えばFlight Data Fileの中に文書化された手順は、起こると思われる状況および選択されると思われるオプションの大きいセットを記述している。他のオプションは、初期逸脱の後の様々な段階で生じるその手順からの様々な他の逸脱によるものである。これらのオプションの各々に対して、例えばオプションの効果のシミュレーションに基づいて結果が計算され得る(例えば安全に着陸する予測された機会)。
本発明においては、これらの状況および結果のすべてにインデックスが付けられる。状況が生じると、状況を記述している変数の現在の値を使用してインデックスを問合せることによって、状況に対応するオプションが選択される。
例えば軌道船冷却システムの構成要素がMain Engine Cut−offの直後に故障する(その状態は、計画された手順における「正常状態」の代わりに「異常状態」である)。飛行時間は8分であり、高度は60マイルであり、シャトル速度は16,697mphである(正規手順を考慮すると、Main Engine Cut−offにおける正常値)。そのデータおよびすべての他の変数の収集された値は、インデックスの問合せおよびすべての関連するオプションの検索、ならびにそれらのランク付けを可能にする。
オペレータは、次に、新しい問合せを実施することによって無関係のオプションを除外することができる。例えば発生の不確実性および悪天候条件による大西洋を横断する着陸サイトを除外することによって。着陸をもたらさない、または実行可能なサイト上への着陸をもたらす新しい推薦が次に分類され、かつ、表示される。
この例では、衛星打上げの比較的少数の先行する発生は、衛星打上げで生じ得るすべての状況、およびこれらの状況に応答して下され得るすべての決定を表すには十分ではない可能性がある。実際の衛星打上げ上の過去のデータ単独では、あらゆる状況および関連するオプションにおける目標値を正確に予測するモデルをトレーニングするには十分ではない。しかしながら実際の打上げ上のデータには、試験データ、より重要なことにはシミュレーションデータが追加され得る。シミュレーションは、トレーニングデータを生成するために使用され得る。シミュレーションは、試験および実際の打上げよりはるかに安価であり、したがってはるかに多い回数にわたって実行され得る。
シミュレーションは、状況およびオプションからの結果の直接的な推定を可能にする。この意味では、機械学習アルゴリズムの使用は、この例における目標値を予測するモデルを提供するためには必要ではない(機械学習技法は、経験的なデータに基づいてモデルを構築するための手段を提供し、また、シミュレーション技法は、物理的な特性の数学的なモデル化に基づいてモデルを構築するための手段を提供する)。
しかしながらこの例においても、シミュレートされたデータを機械学習モデルのためのトレーニングデータとして使用することが可能であり、新たに生成された状況およびオプションの目標値を予測する実行時に機械学習モデルを使用することが可能である。この方法は、飛行の開始前には予想されなかった状況およびオプションに対する目標値予測を有利に提供することができ、また、典型的にはこれらの予測を、成熟したシミュレーションエンジンが可能であるよりもはるかに速く提供することができる。

Claims (15)

  1. モデルを使用して評価されたオプションを制限することによって適切な決定を選択するための、コンピュータ実施方法であって、
    −入力を受け取り、かつ、入力に応答して出力を提供することができるモデルを選択するステップ(S20)と、
    −同様の事象を表すデータのセットを使用してモデルをトレーニングするステップ(S30)と、
    −仮説的事象を表すオプションを生成するステップ(S42)と、
    −前記トレーニングされたモデルを前記生成されたオプションに適用することによって目標値を計算するステップ(S40)と、
    −前記生成されたオプション、および前記トレーニングされたモデルと関連付けられた目標値にインデックス付けするためのインデックスを計算するステップ(S50)と、
    −オプションのセットの選択を獲得するために前記インデックスを問合せるステップ(S60)であって、前記選択は特定の制約に従って実行されるステップと、
    −前記問合せの結果として、前記生成されたオプションの前記セットのサブセットを返すステップ(S70)であって、前記サブセットは、各オプションと関連付けられた前記目標値に従ってランク付けされるステップと
    を含むことを特徴とするコンピュータ実施方法。
  2. 前記モデルをトレーニングするステップは、
    −同様の事象を表すデータのセットを収集するステップ(S10)と、
    −同様の事象を表すデータの前記収集されたセットに基づいて前記モデルをトレーニングするステップ(S30)と
    をさらに含むことを特徴とする請求項1に記載のコンピュータ実施方法。
  3. 同様の事象を表すデータの前記セットは観察のセットを含み、各観察は変数を使用して定義され、
    −観察の前記セットの目標変数であって、変数である目標変数を特定し、
    −観察の前記セットの測定可能変数であって、過去の事象と類似している現在の事象の現在の観察において測定され得る変数である測定可能変数を特定し、
    −観察の前記セットのアクション可能変数であって、ユーザの決定に基づいて作用され得る変数であるアクション可能変数を特定する
    ことを特徴とする請求項1または2に記載のコンピュータ実施方法。
  4. 前記モデルをトレーニングするステップは、
    −シミュレーションのセットから生成される(S12)データのセットを計算するステップと、
    −データの前記生成されたセットに基づいて前記モデルをトレーニングするステップ(S30)と
    をさらに含むことを特徴とする請求項2に記載のコンピュータ実施方法。
  5. 仮説的事象を表す前記オプションを生成するステップは、
    −連続するセグメント、または前記各変数の可能な値の離散セットの各観察の各変数を定義するステップと、
    −定義の前記セグメントの値、またはそれぞれの変数に対する可能な値のセットを生成することによって前記オプションを生成するステップと
    を含むことを特徴とする請求項3または4に記載のコンピュータ実施方法。
  6. 前記オプションを生成するステップは、生成されるオプション毎に、
    −データの前記セットによって表される前記同様の事象の中から事象を選択するステップと、
    −変数を、前記選択された事象の変数の値に基づいて生成される前記オプションに設定するステップと
    をさらに含むことを特徴とする請求項5に記載のコンピュータ実施方法。
  7. 値を生成するステップは、無作為確率変数発生器を使用して実行されることを特徴とする請求項5または6に記載のコンピュータ実施方法。
  8. −前記セットの観察の前記変数間の依存性を決定するステップと、
    −前記生成された事象の中から、変数が前記決定された依存性を満足しない事象を除去するステップと
    を含むことを特徴とする請求項3乃至7のいずれか一項に記載のコンピュータ実施方法。
  9. 1つまたは複数の観察の1つまたは複数の変数が実時間で伝送されることを特徴とする請求項8に記載のコンピュータ実施方法。
  10. −前記伝送された1つまたは複数の変数から新しいオプションを生成するステップと、
    −前記トレーニングされたモデルを前記生成された新しいオプションに対して提供することによって新しい目標値を計算するステップと、
    −前記生成された新しいオプションおよび前記計算された新しい目標値にインデックス付けすることによって前記インデックスを更新するステップと
    をさらに含むことを特徴とする請求項9に記載のコンピュータ実施方法。
  11. 前記インデックスを問合せることによって実行される選択が従う制約は、実時間で伝送される前記変数に対して提供され、また、実時間で伝送される値を使用して設定されることを特徴とする請求項9または10に記載のコンピュータ実施方法。
  12. 請求項1乃至11のいずれか一項に記載の方法を実行するための命令を含むことを特徴とするコンピュータプログラム。
  13. 請求項12に記載のコンピュータプログラムがその上に記録されたことを特徴とするコンピュータ可読記憶媒体。
  14. 請求項12に記載のコンピュータプログラムがその上に記録されたメモリに結合された処理回路を備えることを特徴とするサーバ。
  15. クライアントコンピュータに接続され、前記クライアントコンピュータから前記インデックスの問合せが生成されることを特徴とする請求項14に記載のサーバ。
JP2016255140A 2015-12-31 2016-12-28 予測型モデルに基づく推薦 Active JP6835575B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP15307194.9 2015-12-31
EP15307194.9A EP3188039A1 (en) 2015-12-31 2015-12-31 Recommendations based on predictive model

Publications (2)

Publication Number Publication Date
JP2017126330A JP2017126330A (ja) 2017-07-20
JP6835575B2 true JP6835575B2 (ja) 2021-02-24

Family

ID=55661022

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016255140A Active JP6835575B2 (ja) 2015-12-31 2016-12-28 予測型モデルに基づく推薦

Country Status (4)

Country Link
US (1) US10963811B2 (ja)
EP (1) EP3188039A1 (ja)
JP (1) JP6835575B2 (ja)
CN (1) CN107133253B (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10620955B2 (en) 2017-09-19 2020-04-14 International Business Machines Corporation Predicting a table of contents pointer value responsive to branching to a subroutine
US10884929B2 (en) 2017-09-19 2021-01-05 International Business Machines Corporation Set table of contents (TOC) register instruction
US10725918B2 (en) 2017-09-19 2020-07-28 International Business Machines Corporation Table of contents cache entry having a pointer for a range of addresses
US10896030B2 (en) 2017-09-19 2021-01-19 International Business Machines Corporation Code generation relating to providing table of contents pointer values
US10713050B2 (en) * 2017-09-19 2020-07-14 International Business Machines Corporation Replacing Table of Contents (TOC)-setting instructions in code with TOC predicting instructions
US11061575B2 (en) 2017-09-19 2021-07-13 International Business Machines Corporation Read-only table of contents register
US10705973B2 (en) 2017-09-19 2020-07-07 International Business Machines Corporation Initializing a data structure for use in predicting table of contents pointer values
US20190122122A1 (en) * 2017-10-24 2019-04-25 Tibco Software Inc. Predictive engine for multistage pattern discovery and visual analytics recommendations
US11068817B2 (en) * 2017-10-25 2021-07-20 Accenture Global Solutions Limited Artificial intelligence and machine learning based project management assistance
CA3040367A1 (en) * 2018-04-16 2019-10-16 Interset Software, Inc. System and method for custom security predictive models
CN110858062B (zh) * 2018-08-22 2023-02-28 阿里巴巴集团控股有限公司 目标优化参数的获取方法及模型训练方法、装置
JP6875347B2 (ja) * 2018-10-12 2021-05-26 ファナック株式会社 熱変位補正装置及び数値制御装置
BR112021007032A2 (pt) * 2018-10-24 2021-07-20 The Climate Corporation alavancando a genética e a engenharia de recursos para impulsionar a previsibilidade de colocação para seleção e recomendação de produtos de sementes por campo
EP3671660A1 (en) * 2018-12-20 2020-06-24 Dassault Systèmes Designing a 3d modeled object via user-interaction
US11164099B2 (en) * 2019-02-19 2021-11-02 International Business Machines Corporation Quantum space distance estimation for classifier training using hybrid classical-quantum computing system
GB2581523A (en) * 2019-02-22 2020-08-26 Bae Systems Plc Bespoke detection model
JP7268402B2 (ja) * 2019-02-28 2023-05-08 富士通株式会社 抽出プログラム、抽出方法及び抽出装置
US11487917B2 (en) * 2019-04-22 2022-11-01 Autodesk, Inc. Automatic design of mechanical assemblies using estimation of distribution algorithm
EP3731155A1 (en) * 2019-04-25 2020-10-28 ABB Schweiz AG Apparatus and method for drive selection using machine learning
CN112100453B (zh) * 2019-06-18 2024-05-28 深信服科技股份有限公司 一种字符串分布统计方法、系统、设备及计算机存储介质
EP3764173A1 (en) 2019-07-08 2021-01-13 ABB Schweiz AG Human-plausible automated control of an industrial process
CN110766321B (zh) * 2019-10-23 2022-04-22 浙江工商大学 基于物资可靠性的应急物流网络风险传播方法及其系统
CN110968517B (zh) * 2019-12-04 2023-05-12 上海华兴数字科技有限公司 自动测试方法、装置、平台和计算机可读存储介质
CN111506724B (zh) * 2020-07-02 2020-10-23 北京梦天门科技股份有限公司 一种规范用语推荐方法及装置

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3182169B2 (ja) * 1991-07-26 2001-07-03 株式会社リコー 故障診断方法
US5999904A (en) * 1997-07-02 1999-12-07 Lucent Technologies Inc. Tracking initiative in collaborative dialogue interactions
CN1287275C (zh) 2000-07-06 2006-11-29 株式会社山武 软传感器装置和用于评估该装置的装置
US7007017B2 (en) * 2003-02-10 2006-02-28 Xerox Corporation Method for automatic discovery of query language features of web sites
US7231399B1 (en) * 2003-11-14 2007-06-12 Google Inc. Ranking documents based on large data sets
JP4704146B2 (ja) 2005-08-04 2011-06-15 株式会社リコー 機器操作装置、画像形成装置、機器操作方法、および機器操作プログラム
US7496568B2 (en) * 2006-11-30 2009-02-24 International Business Machines Corporation Efficient multifaceted search in information retrieval systems
US20100030647A1 (en) * 2008-07-31 2010-02-04 Yahoo! Inc. Advertisement selection for internet search and content pages
US8024336B2 (en) * 2009-06-09 2011-09-20 Yahoo! Inc. System and method for development of search success metrics
JP5465689B2 (ja) * 2011-02-28 2014-04-09 株式会社日立製作所 高精度な類似検索システム
US8533224B2 (en) 2011-05-04 2013-09-10 Google Inc. Assessing accuracy of trained predictive models
US8762299B1 (en) * 2011-06-27 2014-06-24 Google Inc. Customized predictive analytical model training
US8768866B2 (en) * 2011-10-21 2014-07-01 Sas Institute Inc. Computer-implemented systems and methods for forecasting and estimation using grid regression
US20140046879A1 (en) 2012-08-13 2014-02-13 Predixion Software, Inc. Machine learning semantic model
US9524473B2 (en) 2012-08-31 2016-12-20 Nutonian, Inc. System and method for auto-query generation
KR102011495B1 (ko) * 2012-11-09 2019-08-16 삼성전자 주식회사 사용자의 심리 상태 판단 장치 및 방법
US20140188768A1 (en) 2012-12-28 2014-07-03 General Electric Company System and Method For Creating Customized Model Ensembles On Demand
US20140358828A1 (en) * 2013-05-29 2014-12-04 Purepredictive, Inc. Machine learning generated action plan
US9082084B2 (en) 2013-06-28 2015-07-14 Linkedin Corporation Facilitating machine learning in an online social network
US10261969B2 (en) 2013-08-19 2019-04-16 Monster Worldwide Inc. Sourcing abound candidates apparatuses, methods and systems
US10620339B2 (en) * 2013-08-29 2020-04-14 Landmark Graphics Corporation Static earth model calibration methods and systems using tortuosity evaluations
CN104516910B (zh) * 2013-09-26 2018-01-12 Sap欧洲公司 在客户端服务器环境中推荐内容
CN104679771B (zh) * 2013-11-29 2018-09-18 阿里巴巴集团控股有限公司 一种个性化数据搜索方法和装置
US9558263B2 (en) * 2013-12-05 2017-01-31 International Business Machines Corporation Identifying and displaying relationships between candidate answers
US10255319B2 (en) * 2014-05-02 2019-04-09 Google Llc Searchable index
US9785719B2 (en) * 2014-07-15 2017-10-10 Adobe Systems Incorporated Generating synthetic data
CN104217225B (zh) * 2014-09-02 2018-04-24 中国科学院自动化研究所 一种视觉目标检测与标注方法
US11501238B2 (en) * 2014-10-09 2022-11-15 Splunk Inc. Per-entity breakdown of key performance indicators
WO2016069318A1 (en) * 2014-10-27 2016-05-06 Board Of Regents, The University Of Texas System Adaptive drilling vibration diagnostics

Also Published As

Publication number Publication date
CN107133253A (zh) 2017-09-05
US10963811B2 (en) 2021-03-30
EP3188039A1 (en) 2017-07-05
JP2017126330A (ja) 2017-07-20
US20170193401A1 (en) 2017-07-06
CN107133253B (zh) 2022-12-06

Similar Documents

Publication Publication Date Title
JP6835575B2 (ja) 予測型モデルに基づく推薦
JP6898095B2 (ja) 機械学習システムの更新
JP6940278B2 (ja) 予め計算されたモデルの結果の検索
US11501042B2 (en) Decisions with big data
Alligier et al. Machine learning and mass estimation methods for ground-based aircraft climb prediction
El Bajta Analogy-based software development effort estimation in global software development
Tello-Leal et al. Predicting activities in business processes with LSTM recurrent neural networks
JP2007004769A (ja) 石油精製プラントのパラメータ予測装置及びパラメータ予測方法
Durkin Expert system development tools
Zhengxin et al. Mlops spanning whole machine learning life cycle: A survey
KR102049660B1 (ko) 유해단어 어휘목록 자동 생성과 기계학습을 이용한 청소년 유해가사 자동 분류 방법 및 장치
US20190197424A1 (en) Prediction of an event affecting a physical system
Rizzo et al. Use of Bayesian networks for qualification planning: a predictive analysis framework for a technically complex systems engineering problem
Salmam et al. Prediction in OLAP data cubes
Saling et al. Integrating probabilistic design and rare‐event simulation into the requirements engineering process for high‐reliability systems
US11934852B1 (en) Providing help content proactively
Zhu et al. FOBA: Flight Operation Behavior Analysis Based on Hierarchical Encoding
US11842379B2 (en) Method and system for obtaining item-based recommendations
CN117151247B (zh) 机器学习任务建模的方法、装置、计算机设备和存储介质
US20220406098A1 (en) Smart system for rapid and accurate aircraft maintenance decision making
KR102671887B1 (ko) 부품 조달을 위한 글로벌 밸류 체인에 대한 데이터베이스 구축 방법 및 이를 구현하기 위한 시스템
KR102568392B1 (ko) 동적 상황판 시스템
Santini De Leon et al. Interactive Explanation of Entry, Descent, and Landing Simulations
Matias Exploring Advanced Techniques for System Prediction: An In-Depth Review
França Robot CeDRI 2023: sub-system integration and health dashboard

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201216

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: 20210105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210204

R150 Certificate of patent or registration of utility model

Ref document number: 6835575

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250