JP2023518789A - 人工知能モジュールを更新するためにデータセットを選択するための方法 - Google Patents

人工知能モジュールを更新するためにデータセットを選択するための方法 Download PDF

Info

Publication number
JP2023518789A
JP2023518789A JP2022556547A JP2022556547A JP2023518789A JP 2023518789 A JP2023518789 A JP 2023518789A JP 2022556547 A JP2022556547 A JP 2022556547A JP 2022556547 A JP2022556547 A JP 2022556547A JP 2023518789 A JP2023518789 A JP 2023518789A
Authority
JP
Japan
Prior art keywords
data set
given
dataset
cluster
datasets
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022556547A
Other languages
English (en)
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2023518789A publication Critical patent/JP2023518789A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Algebra (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Biology (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Complex Calculations (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Circuits Of Receivers In General (AREA)
  • Stored Programmes (AREA)

Abstract

人工知能モジュール(AIモジュール)を更新するために、所与のデータセットからデータセットを選択するためのコンピュータ実装方法が開示される。所与のデータセットは、それぞれ、入力データセットおよび対応する出力データセットを含む。コンピュータ実装方法は、所与のデータセットの異なるクラスタを定義するためのパラメータの値を取得するステップと、各所与のデータセットのメトリックを決定するステップであって、各所与のデータセットのメトリックは、クラスタのうちの1つに対するそれぞれの所与のデータセットのメンバーシップのレベルおよびクラスタのうちの同一の1つの重心とのそれぞれの所与のデータセットの距離に依存する、決定するステップと、所与のデータセットのメトリックの比較に基づいて、AIモジュールを更新するために所与のデータセットから、所与のデータセットの少なくとも1つを選択するステップとを含む。

Description

本発明は、デジタル・コンピュータの分野に関し、より詳細には、人工知能モジュールの適応のためにデータセットを選択する方法に関する。
人工知能(AI)または機械知能は、その環境を知覚して、目標を成功裡に達成する見込みを最大化するアクションをとる任意のデバイスである。人工知能は、しばしば、音声認識、学習、推定(reasoning)、計画および問題解決のような人間の心に関連する「認知」機能を模倣する機械またはコンピュータと理解される。人工知能のサブセットである機械学習は、デバイスが、明示的な命令を使用することなしに、代わりにパターンおよび推論(inferences)に依拠して過去のデータから自動的に学習することを可能にする。機械学習アルゴリズムは、タスクを実行するために明示的にプログラムされることなく予測または決断を行うために、「訓練データ」としても知られるサンプル・データに基づいて、数学的モデルを構築する。機械学習アルゴリズムは、新しい訓練データが利用可能になるたびに、更新または再訓練される。
訓練済み人工知能モジュール(AIモジュール)の適用の過程で、それはAIモジュールを改良することを目的することが起こり得る。このような改善は、AIモジュールを訓練または検証するために使用されていない追加のデータセットを使用することによってAIモジュールを更新、好ましくは再訓練することによって実行されてもよい。これらの追加のデータセットは、AIモジュールに適用される入力データセットをログファイルにログ記録し、入力データセットに基づいてAIモジュールによって計算された対応する出力データセットをログファイルにログ記録することによって、収集されてもよい。
本発明の種々の実施形態は、独立請求項の主題によって説明されるように、人工知能モジュール(AIモジュール)を更新するために所与のデータセットからデータセットを選択するためのコンピュータ実装方法、コンピュータ・プログラム製品およびコンピュータ・システムを提供する。有利な実施形態が、従属請求項において説明される。本発明の実施形態は、互いに矛盾しない場合に、自由に組み合わせることができる。
一実施形態によれば、本発明は、人工知能モジュール(AIモジュール)を更新するために(複数の)所与のデータセットからデータセットを選択するためのコンピュータ実装方法を含み、(複数の)所与のデータセットは、それぞれ、入力データセットおよび対応する出力データセットを含む。コンピュータ実装方法は、(複数の)所与のデータセットの異なる(複数の)クラスタを定義するためのパラメータの値を取得するステップと、各所与のデータセットのメトリックを決定するステップであって、各所与のデータセットのメトリックは、(複数の)クラスタのうちの1つに対するそれぞれの所与のデータセットのメンバーシップのレベルおよび(複数の)クラスタのうちの同一の1つの重心に対するそれぞれの所与のデータセットの距離に依存する、決定するステップと、(複数の)所与のデータセットのメトリックの比較に基づいて、AIモジュールを更新するために、(複数の)所与のデータセットから、(複数の)所与のデータセットの少なくとも1つを選択するステップとを含む。
別の実施形態によれば、本発明は、人工知能モジュール(AIモジュール)を更新するため、所与のデータセットからデータセットを選択するためのコンピュータ・プログラム製品を含み、所与のデータセットは、それぞれ、入力データセットおよび対応する出力データセットを含み、コンピュータ・プログラム製品は、具現化されたコンピュータ可読プログラム・コードを有するコンピュータ可読ストレージ媒体を含み、コンピュータ可読プログラム・コードは、方法を実装するように構成され、方法は、所与のデータセットの異なるクラスタを定義するためのパラメータの値を取得するステップと、各所与のデータセットのメトリックを決定するステップであって、各所与のデータセットのメトリックは、クラスタのうちの1つに対するそれぞれの所与のデータセットのメンバーシップのレベルおよびクラスタのうちの同一の1つの重心に対する前記それぞれの所与のデータセットの距離に依存する、決定するステップと、所与のデータセットのメトリックの比較に基づいて、AIモジュールを更新するために所与のデータセットから、所与のデータセットの少なくとも1つを選択するステップとを含む。
別の実施形態によれば、本発明は、人工知能モジュール(AIモジュール)を更新するために、所与のデータセットからデータセットを選択するためのコンピュータ・システムを含み、所与のデータセットは、それぞれ、入力データセットおよび対応する出力データセットを含み、コンピュータ・システムは、1または複数のコンピュータ・プロセッサと、1または複数のコンピュータ可読ストレージ媒体と、1または複数のコンピュータ可読ストレージ媒体に格納される、方法を実装する1または複数のコンピュータ・プロセッサによる実行ためのプログラム命令とを含み、方法は、所与のデータセットの異なるクラスタを定義するためのパラメータの値を取得するステップと、各所与のデータセットのメトリックを決定するステップであって、各所与のデータセットのメトリックは、クラスタのうちの1つに対するそれぞれの所与のデータセットのメンバーシップのレベルおよびクラスタのうちの同一の1つの重心に対する前記それぞれの所与のデータセットの距離に依存する、決定するステップと、所与のデータセットのメトリックの比較に基づいて、AIモジュールを更新するために所与のデータセットから、所与のデータセットの少なくとも1つを選択するステップとを含む。
以下、本発明の実施形態について、例示として、以下の図面を参照しながら、より詳細に説明する。
AIモジュールを更新するために所与のデータセットからデータセットを選択するための第1のコンピュータ・システムおよびAIモジュールを実行するための第2のコンピュータ・システムを示す。 要求入力データセットおよび対応する回答出力データセットを含む、AIモジュールのデータフローを示す。 要求入力データセットおよび対応する回答出力データセットから生成された所与のデータセットを含むログファイルを示す。 連結されたパラメータ空間におけるデータポイントを対応付けることによって表される、図3に示された所与のデータセットを含む連結されたパラメータ空間を示す。 AIモジュールを更新するための図3に示す所与のデータセットからデータセットを選択するためのコンピュータ実装方法のフローチャートを示す。
本発明の種々の実施形態について、説明を目的として説明されるが、開示される実施形態を網羅することまたは限定することを意図するものではない。多数の変更例および変形例が、説明する実施形態の範囲および精神を逸脱することなく、当業者にとって明白となるであろう。本明細書で使用される用語は、実施形態の原理、実際の応用、または、市場において見られる技術を超えた技術向上を最も良く説明し、または、他の当業者が本明細書に開示の実施形態を理解することができるように選ばれたものである。
本発明の方法は、AIモジュールを更新するために、所与のデータセットのメトリックに依存して、所与のデータセットの少なくとも1つ(以下、選択されたデータセットと参照する)を選択することを可能にし得る。上述したように、各所与のデータセットのメトリックは、クラスタの1つ(以下、選択されたクラスタと参照される)に対する各それぞれの所与のデータセットのメンバーシップのレベル、および、クラスタのうちの同一のものの重心、例えば、選択されたクラスタの重心に対する各それぞれの所与のデータセットの距離に依存してもよい。
所与のデータセットの入力データセットは、n次元を有していてもよく、所与のデータセットの出力データセットは、k次元を有していてもよい。入力データセットのn次元は、入力パラメータ空間に広がり、出力データセットのk次元は、出力パラメータ空間に広がり得る。入力データセットのn次元および出力データセットのk次元は、一緒に、連結されたパラメータ空間に広がり得る。入力パラメータ空間、出力パラメータ空間もしくは連結されたパラメータ空間またはこれらの組み合わせは、それぞれ、少なくとも1つの境界を有してもよい。所与のデータセットの入力および出力データセットは、値、好ましくは実数値を含んでもよい。
所与のデータセットは、訓練済み状態においてAIモジュールを使用することによって生成されてもよい。訓練済みAIモジュールは、対応する入力データセットの1つに基づいて出力データセットそれぞれを計算することができる。対応する入力データセットは、それぞれ、訓練済みAIモジュールのユーザの要求を表すことができ、要求入力データセットと参照され得る。出力データセットは、それぞれ、対応する要求入力データセットに対する訓練済みAIモジュールの回答を表すことができ、回答出力データセットと参照され得る。所与のデータセットは、それぞれの回答出力データセットを、対応する要求入力データセットと連結することによって、それぞれ生成されてもよい。所与のデータセットは、ログファイルによって提供されてもよい。ログファイルは、訓練済みAIモジュールがユーザによって使用されるときに、回答出力データセットおよび対応する要求入力データセットを記録することによって生成されてもよい。
所与のデータセットは、それぞれ、メトリックの計算がデータセットのいずれの部分に適用されるかに依存して、入力パラメータ空間、出力パラメータ空間または連結されたパラメータ空間のいずれかにおいて、それぞれの所与のデータセットの値に等しい座標を有するデータポイントによって表されてもよい。「例示の重心に対する例示のデータセットの例示の距離」というフレーズは、上記例示の重心に対する例示のデータセットを表す例示のデータポイントの例示の距離を参照する。同様に、「例示の重心に位置している例示のデータセット」というフレーズは、例示的なデータセットが例示的なデータポイントを表し得るとして、例示の重心に位置している例示のデータポイントを参照する。
選択されたクラスタに対する各所与のデータセットのメンバーシップのレベルは、選択されたクラスタの重心に対する各所与のデータセットの距離、および、さらに選択されたクラスタを除く別のクラスタの重心に対するそれぞれの所与のデータセットの距離に基づいて決定されてもよい。例えば、選択されたクラスタに対する各所与のデータセットのメンバーシップのレベルは、選択されたクラスタの重心に対するそれぞれの所与のデータセットの距離とさらなる距離の総計との比率、並びに選択されたクラスタの重心に対するそれぞれの所与のデータセット距離に基づいて決定されてもよい。
選択されたクラスタは、所与のデータセットの異なるクラスタのうちの少なくとも2つから選択されてもよい。クラスタを定義するためのパラメータの値は、そのクラスタを定義する各クラスタのパラメータの値を含んでもよい。各クラスタのパラメータの値は、入力パラメータ空間、出力パラメータ空間または連結されたパラメータ空間内に位置する各クラスタの重心の座標の値であってもよい。選択されたクラスタは、所与のデータセットに関連する応用の分野の専門家、例えば医師の技術者、によって手動で選択されてもよい。一例では、クラスタを定義するためのパラメータの値は、所与のデータセット、訓練用データセットももしくはテスト用データセットまたはこれらの組み合わせに適用されるクラスタリング・アルゴリズムを実行することによって取得されてもよい。別の例では、クラスタを定義するためのパラメータの値は、ストレージ・デバイスからロードされてもよい。この場合、クラスタを定義するためのパラメータの値は、本発明の方法を実行する前に決定されてもよい。
例えば、専門家は、入力パラメータ空間、出力パラメータ空間または連結されたパラメータ空間内の位置を指し、それによって、選択されたクラスタの重心の座標の値を定義してもよい。これは、また、入力パラメータ空間、出力パラメータ空間または連結されたパラメータ空間内の2つの3次元サブ空間を可視化することによって、より高い次元においても可能であってもよい。
第1の例では、各所与のデータセットのメトリックは、選択されたクラスタに対するそれぞれの所与のデータセットのメンバーシップのレベルおよび選択されたクラスタの重心に対するそれぞれの所与のデータセットの距離の積によって計算されてもよい。この第1の例では、選択されたデータセットの選択は、選択されたデータセットが最も高いメトリックを有する、所与のデータセットのデータセットであるように実行されてもよい。
第1の例によれば、選択されたクラスタに対する選択されたデータセットのメンバーシップのレベルが、例えば10個の別の所与のデータセットと比較して、平均レベルにあると仮定すると、選択されたデータセットは、選択されたクラスタの重心から比較的離れて配置される可能性がある。この場合、選択されたデータセットは、他の10個の所与のデータセットよりも、入力パラメータ空間、出力パラメータ空間もしくは連結されたパラメータ空間またはこれらの組み合わせの境界により近い位置に配置される可能性がある。これは、選択されたデータセットが、他の10個の所与のデータセットによって与えられる情報に対して付加的な情報を含むことを暗に意味する可能性がある。これを理由として、選択されたデータセットを、AIモジュールを更新するために選択することは、興味深いかもしれない。
好ましくは、選択されたデータセットは、例えば、専門家または追加のAIモジュールによって検査されてもよい。選択されたデータセットの検査の結果は、選択されたデータセットの確認または拒絶であってもよい。後者の場合は、AIモジュールが、選択されたデータセットを不正確に計算した場合を表す可能性がある。いずれの場合も、選択されたデータセットは、AIモジュールを更新するために使用されてもよい。後者の場合、選択されたデータセットは、好ましくは、専門家または追加のAIモジュールによって修正されてもよい。AIモジュールを更新することは、例えば、選択されたデータセットを使用して、AIモジュールに逆伝播アルゴリズムを適用するといった、AIモジュールの再訓練を含んでもよい。選択されたデータセットが追加情報を含み得るので、AIモジュールを更新することは、AIモジュールのパラメータの変更された値の形で追加情報を格納することに寄与し得る。
別の実施形態においては、AIモジュールを更新することは、入力パラメータ空間または出力パラメータ空間の境界の1つを変更することを含んでもよい。例えば、以下の2つの場合が考えられ得る。第1の場合、検証の結果は、確認であってもよい。第2の場合、検証の結果は、拒絶であってもよい。第1の場合、入力パラメータ空間の境界は、選択されたデータセットからさらに離れて移動され得る。これは、入力パラメータ空間の適合された境界内に配置された新しいデータセットのためにAIモジュールが使用され得るという利点を有し得る。第2の場合、入力パラメータ空間の境界は、選択されたデータセットが入力パラメータ空間の境界の外側に位置するように移動され得る。これは、AIモジュールが、入力パラメータ空間の変更された境界の外側に位置する新しい入力データセットに対して誤った新しい出力データセットを計算し得るリスクを低減する可能性がある。
第2の場合に従って入力パラメータ空間の境界を変更することは、入力パラメータ空間の変更された境界を超えて配置されている新しい入力データセットがAIモジュールの適用のために受け入れられないことを提供し得る。変更された境界を越えて配置されている新しい入力データセットの拒絶は、問い合わせモジュールを使用して自動的に実行されてもよく、問い合わせモジュールは、AIモジュールが使用され得る場合に全ての入来する入力データセットに対するAIモジュールのゲートとして機能し得る。AIモジュールは、問い合わせモジュールを含んでもよい。問い合わせモジュールは、パラメータを有する機能を備えてもよく、機能は、フィルタと同様の働きをし得る。問い合わせモジュールは、入力パラメータ空間の変更された境界に従って、問い合わせモジュールのパラメータの値を適合させることによって、適合されてもよい。
選択されたデータセットの確認または修正を含むプロセスは、ここでは、ラベル付けと参照される。ラベル付けは、手動で、または、好ましくは追加のAIモジュールを使用して、自動的に実行されてもよい。後者の場合は、追加のAIモジュールが、恒久的にアクセス可能ではないか、AIモジュールよりも性能が良好であるか、または、AIモジュールと比較してもモバイル性が低い場合に有用である可能性がある。選択されたデータセットの修正は、選択されたデータセットの入力もしくは出力またはその両方のデータセットの値のうちの1つの修正を含んでもよい。
本発明の方法は、所与のデータセットが生成された後、選択された1または複数のデータセットに基づいてAIモジュールを更新することを可能にし得る。1または複数のデータセットの選択が、1または複数の所与のデータセットのメトリックに依存して実行され得るので、所与のデータセットのクラスタのうちの少なくとも1つの少なくとも1つの重心に対する、入力、出力または連結されたパラメータ空間における所与の1または複数のデータセットの位置が考慮されてもよい。これは、最も重要な1または複数の所与のデータセットに基づいてAIモジュールを更新することを可能し得る。選択されたデータセットは、また、最も異なる情報を包含する、所与のデータセットのうちのデータセットとして、考慮され得る。その結果として、AIモジュールを更新することは、より高速となる可能性があり、AIモジュールの過学習は、防止される可能性がある。
一実施形態によれば、方法は、各クラスタのメトリックを決定するステップであって、各クラスタのメトリックは、クラスタの他の重心に対するそれぞれのクラスタの重心の距離に依存する、決定するステップと、クラスタのメトリックに基づいて、クラスタから、クラスタの少なくとも1つを選択するステップと、各所与のデータセットのメトリックを決定するステップであって、各所与のデータセットのメトリックは、選択されたクラスタに対するそれぞれの所与のデータセットのメンバーシップのレベルおよび選択されたクラスタの重心に対するそれぞれの所与のデータセットの距離に依存する、決定するステップとを含む。この実施形態は、クラスタのメトリックを比較することによって、選択されたクラスタを自動的に決定するという利点を有し、以下において、第1の実施形態と参照され得る。
一例では、各クラスタのメトリックは、クラスタの重心間の最大距離で割った、クラスタの他の重心に対するそれぞれのクラスタの重心の平均距離の商に等しい。第1の例では、選択されたクラスタは、最も高いメトリックを有するクラスタであってもよい。この例では、他の所与のデータセットよりも高いメンバーシップのレベルを含む所与のデータセットは、他の所与のデータセットよりもクラスタのすべての重心の平衡点からさらに離間して配置される可能性がある。所与のデータセットのメトリックが、選択されたクラスタに基づいて計算され得るので、選択されたデータセットが他の所与のデータセットよりも平衡点から離れて位置する見込みは、増加する可能性がある。これは、選択されたデータセットが他の所与のデータセットとは異なる情報を含む見込みを高めることができる。
これは、前者の所与のデータセットが、後者の所与のデータセットよりも、異なる情報を含む見込みを高めることができる。各所与のデータセットのメトリックを計算することは、選択されたクラスタに依存する。
一実施形態によれば、各所与のデータセットに対してメトリックを決定するステップは、各所与のデータセットに対してメトリックのセットを決定するステップであって、それぞれの所与のデータセットのメトリックのセットの各メトリックは、クラスタのサブセットの1つのクラスタに対応し、それぞれの所与のデータセットのメトリックのセットの各メトリックは、対応するクラスタに対するそれぞれの所与のデータセットのメンバーシップのレベルおよび対応するクラスタの重心に対するそれぞれの所与のデータセットの距離に依存する、決定するステップ、および、所与のデータセットのメトリックのセットの比較に基づいて、AIモジュールを更新するために、所与のデータセットから、所与のデータセットの少なくとも1つを選択するステップを含む。一例では、クラスタのサブセットは、全てのクラスタを含んでもよい。別の例では、クラスタのサブセットは、全てのクラスタのうちの一部のみを含んでもよく、クラスタのサブセットは、クラスタの真の部分集合である。
一例によれば、所与のデータセットのメトリックのセットは、各メトリックのセットのノルムを計算することによって比較されてもよい。選択された1または複数のデータセットは、それぞれ最も高いノルムを有する1つのものまたは最も高い複数のノルムを有する複数のものとすることができる。この実施形態は、選択されたデータセットが、1つの選択されたクラスタに依存するばかりではないので、有利である可能性がある。よって、クラスタリング・アルゴリズム、例えば、k‐平均法クラスタリング・アルゴリズムまたはファジーC平均クラスタリング・アルゴリズムの結果が使用されて、所与のデータセットからの選択を実行するために1つより多くのクラスタを考慮してもよい。
一実施形態によれば、方法は、クラスタを定義するためのパラメータの値を、訓練用データセットの関数として生成するステップであって、AIモジュールは、訓練用データセットを用いて生成される、生成するステップをさらに含む。この実施形態は、以下において、第2の実施形態と参照される可能性がある。訓練用データセットは、所与のデータセットと同一の構造を含み、つまり、訓練用データセットは、それぞれ、入力データセットおよび出力データセットを含む。訓練用データセットの関数は、以下説明されるが、この実施形態に限定されない可能性がある。
本明細書で使用される通り、用語「モジュール」は、「モジュール」に関連付けられる関数を実行するための、または、”モジュール”に関連付けられる関数を実行した結果であるための、任意の既知のまたは将来開発される、ハードウェア、実行可能プログラム、人工知能、ファジーロジックのようなソフトウェアまたはその任意の可能な組み合わせを参照する。
AIモジュールは、ニューラルネット、畳み込みニューラルネットもしくは放射基底関数ネットを含んでもよい。所与のデータセットおよび訓練用データセットの入力データセットおよび出力データセットは、データ要素として、値、好ましくは実数値を含んでもよい。所与のデータセットおよび訓練用データセットの出力データセットのうちの1つの計算は、対応する入力データセットおよびAIモジュールのパラメータの値に依存して実行されてもよい。好適な例では、所与のデータセットおよび訓練用データセットの各出力データセットの値は、それぞれ、所与のデータセットおよび訓練用データセットの入力データセットのそれぞれがいくつかのクラスのいずれかに分類され得る確率を表すことができる。
AIモジュールは、機械学習を使用して訓練用データセットに基づいて生成されてもよい。用語「機械学習」は、訓練用データセットの入力データセットおよび出力データセットから有用な情報を抽出するために使用されるコンピュータ・アルゴリズムを参照する。情報は、自動化されたやり方で確率モデルを構築することによって抽出されてもよい。機械学習は、線形回帰、逆伝播法、k平均法、分類アルゴリズムなどの1または複数の既知の機械学習アルゴリズムを用いて実行されてもよい。
確率モデルは、例えば、訓練用データセットの入力データセットのうちの1つに基づいてカテゴリを予測することを可能にするか、または訓練用データセットの入力データセットのうちの1つに対応するインスタンスを、対応する出力データセットの値または値に関連付けることを可能にする、方程式または規則のセットであってもよい。
1または複数の既知の機械学習アルゴリズムは、AIモジュールの訓練誤差が低減され得るように、AIモジュールのパラメータの値を適合させることができる。訓練誤差は、AIモジュールによって計算されたAIモジュールの訓練出力データセットの計算値と、それぞれの訓練用データセットの各出力データセットの値との偏差に基づいて計算されてもよい。AIモジュールの各訓練出力データセットは、それぞれの訓練用データセットの入力データセットに基づいて計算されてもよく、よって、それぞれの訓練用データセットに関連付けられてもよい。AIモジュールの訓練出力データセットは、訓練用データセットの出力データセットと同一の構造を有してもよく、つまり、AIモジュールの訓練出力データセットの要素のタイプは、訓練用データセットの出力データセットの要素のタイプとマッチしていてもよい。
偏差に基づいてAIモジュールのパラメータの値を適応させることにより、訓練誤差が低減され得る。訓練誤差が所与のしきい値に達すると、AIモジュールは、訓練されているとみなされ、訓練済みの状態であるとみなされる。訓練済みの状態では、AIモジュールは、ユーザによってAIモジュールに送信された要求入力データセットに応答して、上記回答出力データセットそれぞれを生成するために使用され得る。
訓練用データセットの入力データセットが、入力パラメータ空間において可能か限り等しく分散されるように、もしくは、これらが、AIモジュールが適用される多数の重要なユースケースを表すように、またはその両方であるように、訓練用データセットが選択されてもよい。訓練用データセットの分布は、訓練誤差が可能な限り低くなるように、設計されてもよい。これは、連結されたパラメータ空間の異なる領域において、訓練用データセットの密度が異なることを暗に意味する可能性がある。連結されたパラメータ空間における訓練用データセットの推奨される異なる密度は、実験計画法(DOE:Design of Experiments)のアルゴリズムを使用して計算されてもよい。異なる密度は、訓練クラスタとみなすことができる。
一般に、訓練用データセットは、例えば、推奨された密度を考慮するこれらを取得することによって、教師ありもしくは計画されたまたはその両方の実験においてこれらを取得することによって、もしくは、実験データセットのセットから訓練用データセットを選択することによって、またはこれらの組み合わせによって、教師ありのやり方で取得され得る。この種の教師付けは、専門家によって実行されてもよい。その理由のために、訓練用データセットは、所与のデータセットよりも効率的に専門家の知識を表すことができる。例えば、所与のデータセットは、AIモジュールの非常に少数のユースケースのみをカバーする、連結されたパラメータ空間の非常に狭いサブ空間においてAIモジュールを使用することによって、生成されてもよい。
クラスタを定義するためのパラメータの値を、訓練用データセットの関数として生成することは、専門家によってクラスタが容易に理解され、連結されたパラメータ空間の有意なクラスタリングを表し得ることを提供し得る。加えて、クラスタは、入力、出力または連結されたパラメータ空間における訓練用データセットの異なる密度を反映してもよい。さらに、クラスタリング・アルゴリズムは、所与のデータセットのみをクラスタリングに使用する場合と比較して、より速く実行される可能性がある。よって、好ましい実施形態においては、クラスタを定義するためのパラメータの値は、訓練用データセットのみを使用して生成されてもよい。
一実施形態によれば、方法は、クラスタを定義するためのパラメータの値を、所与のデータセットの関数として生成するステップを含む。この実施形態は、以下において、第3の実施形態と参照される可能性がある。所与のデータセットは、訓練用データセットにより備えられない可能性があるAIモジュールの新しいユースケースを表す可能性がある。結果として、所与のデータセットを用いたクラスタリングからの結果として得られるクラスタは、新しいユースケースを包含する、入力、出力または連結されたパラメータ空間の新しい領域を表し得る。選択されたデータセットは、新しい領域の1つに位置してもよく、新しいユースケースの一つを表してもよい。よって、AIモジュールは、新しいユースケースの1つによって表される新しい情報を含む選択されたデータセットを用いて更新されてもよい。
一実施形態によれば、方法は、クラスタを定義するためのパラメータの値を、テスト用データセットの関数として生成するステップを含み、AIモジュールは、テスト用データセットを用いてテストされる。この実施形態は、以下において、第4の実施形態と参照される。テスト用データセットは、訓練用データセットと同一の構造を有してもよく、つまり、それぞれが、入力および出力データセットを含む。テスト用データセットは、実験データセットのセットに由来してもよく、よって、訓練用データセットと同様のやり方で専門家の知識を表す可能性がある。その理由のために、この実施形態は、クラスタリングのために訓練用データセットのみを使用することと同一の利点を有する可能性がある。クラスタを定義するためのパラメータの値が、テスト用データセットおよび訓練用データセットの関数として生成される場合、より多くの情報が使用されてもよく、クラスタリングが、専門家の知識をより良く表す可能性がある。テスト用データセットは、AIモジュールの検証のために使用されてもよい。検証については、以下に説明され得る。
AIモジュールによって計算されたAIモジュールの検証出力データセットの計算値と、それぞれのテスト用データセットの各出力データセットの値との偏差に基づいて検証誤差が計算されてもよい。AIモジュールの各検証出力データセットは、それぞれのテスト用データセットの入力データセットに基づいて計算されてもよく、したがって、それぞれのテスト用データセットに関連付けられてもよい。AIモジュールの検証出力データセットは、テスト用データセットの出力データセットと同一の構造を有することができ、すなわち、AIモジュールの検証出力データセットの要素のタイプは、テスト用データセットの出力データセットの要素のタイプに適合し得る。
検証誤差が所与の検証閾値に達した場合、AIモジュールは、検証されているとみなすことができる。検証誤差が検証閾値に当てはまらない場合、AIモジュールのパラメータの値を再び適合させるために機械学習アルゴリズムの1つが繰り返し実行されてもよい。AIモジュールのパラメータの値は、この場合、異なるように初期化されてもよい。AIモジュールが検証される場合、それは、十分な汎化特性を提供する可能性があり、すなわち、新たな入力データセットに基づいて十分に正確な新たな出力データセットを計算することができる。
一実施形態によれば、方法は、クラスタを定義するためのパラメータの値を、所与のデータセットの承認されたまたは修正されたデータセット(以下、ラベル付けされたデータセットと参照する)の関数として生成するステップを含む。ラベル付けすべき所与のデータセットのうちの1つの承認または修正、すなわちラベル付けは、専門家によって手動で実行されてもよいし、例えば追加のAIモジュールによって自動的に実行されてもよい。承認または修正は、ラベル付けすべき1つのデータセットの入力データセットもしくは出力データセットまたはその両方の承認または修正を含んでもよい。入力データセットの値を修正することは、入力データセットの値が誤っていること、例えば既知の値だけシフトされることが既知である場合に正当化され得る。AIモジュールの予測を修正するために、出力データセットを修正がなされてもよい。ラベル付けされたデータセットに依存してクラスタを定義するためのパラメータの値を生成することは、ラベル付けされたデータセットによって構成される新しい情報に基づいてクラスタリングを実行することができるので、有利である可能性がある。
一実施形態によれば、方法は、クラスタを定義するためのパラメータの値を、所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの関数として生成するステップを含む。この実施形態は、以下において第5の実施形態と参照される。この実施形態においては、ラベル付けされたデータセットは、例えば上述したような専門家によって、手動で作成されてもよく、それによって、より確実かつ透明性をもって作成され得る。
一実施形態によれば、方法は、ファジーC平均クラスタリング・アルゴリズムを実行することによって、クラスタを定義するためのパラメータの値を取得するステップを含む。この実施形態は、以下において第6の実施形態と参照される。ファジーC平均クラスタリング・アルゴリズムは、所与のデータセット、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせに適用されてもよい。別のクラスタリング・アルゴリズム、例えば、k平均クラスタリング・アルゴリズムを使用することと比較して、ファジーC平均クラスタリング・アルゴリズムを使用することの利点は、クラスタリングの解が、クラスタの重心の初期の選択に、より依存しにくいことであり得る。これは、クラスタリングのより一貫した解につながる可能性がある。k平均クラスタリング・アルゴリズムと比較して、ファジーC平均クラスタリング・アルゴリズムを実行することは、各クラスタに対する各所与のデータセットのメンバーシップのレベルを割り当てることを含んでもよい。ファジーC平均クラスタリング・アルゴリズムを実行するために多数のクラスタが与えられてもよい。
一実施形態によれば、方法は、訓練用データセットの入力データセットに基づいてクラスタを定義するためのパラメータの値を取得するステップをさらに含む。好ましくは、クラスタリングは、所与のデータセット、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせの入力データセットのみに基づいて実行されてもよい。これは、クラスタリングの解が、AIモジュールの精度に依存しないので、有利である可能性がある。これは、専門家があまり混乱なく解を解釈できるようにする可能性がある。
一実施形態によれば、方法は、訓練用データセットの出力データセットに基づいてクラスタを定義するためのパラメータの値を取得するステップをさらに含む。好ましくは、クラスタリングは、所与のデータセット、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせの出力データセットのみに基づいて実行されてもよい。所与のデータセットまたは訓練用データセットの各出力データセットの値の数は、所与のデータセットまたは訓練用データセットの対応する入力データセットの値の数よりも少ないことが多い。この場合、この実施形態においては、クラスタの数を減らし得ることを推定することができる。クラスタリングの解が、この場合、理解がより容易である可能性がある。さらに、所与のデータセットまたは訓練用データセットの出力データセットによって表され得るいくつかのクラスのうちの1つの予測の誤差が低減され得るように、AIモジュールを更新することが有用である可能性がある。このような場合、所与のデータセット、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせの出力データセットのみに基づくクラスタリングは、より効率的である可能性がある。いくつかのクラスのうちの同一のものは、クラスタの1つによって表されてもよい。このクラスタは、所与のデータセットのうちの少なくとも1つを選択するための選択されたクラスタであるとして手動で選択されてもよい。
一実施形態によれば、方法は、訓練用データセットの入力データセットおよび出力データセットに基づいてクラスタを定義するためのパラメータの値を取得するステップをさらに含む。好ましくは、クラスタリングは、所与のデータセット、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせの出力および入力データセットに基づいて実行されてもよい。この実施形態は、所与のデータセット、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせのより多くの情報を表すクラスタにつながる可能性がある。
最後の3つの実施形態を参照すると、所与のデータセット、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせの入力データセットのみがクラスタリングに用いられる場合、所与のデータセットのメトリックは、所与のデータセットの入力データセットのみに基づいて計算されてもよい。同様に、所与のデータセット、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせの出力データセットのみがクラスタリングに用いられる場合、所与のデータセットのメトリックは、所与のデータセットの出力データセットのみに基づいて計算されてもよい。同じようにして、所与のデータセット、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせの入力および出力データセットがクラスタリングに用いられる場合、所与のデータセットのメトリックは、所与のデータセットの出力および入力データセットに基づいて計算されてもよい。
一実施形態によれば、方法は、それぞれのクラスタの重心に対する所与のデータセットの平均距離に基づいて、各クラスタに対しメトリックを決定するステップをさらに含む。この実施形態は、以下において、第7の実施形態と参照され得る。好ましい実施形態においては、各クラスタのメトリックは、それぞれのクラスタの重心に対する所与のデータセットの平均距離のより高い値がそれぞれのクラスタのメトリックのより低い値を誘発し得るように計算されてもよい。この場合、最も低いメトリックを有するクラスタが、選択されたクラスタである場合、選択されたクラスタは、むしろ、所与のデータセットがそれぞれのクラスタ内でより拡散するクラスタのその1つとなる可能性がある。
一実施形態によれば、方法は、それぞれのクラスタの重心に対する所与のデータセットの最大距離に基づいて、各クラスタのメトリックを決定するステップをさらに含む。本実施形態は、以下において、第8の実施形態と参照され得る。好ましい実施形態においては、各クラスタのメトリックは、それぞれのクラスタの重心に対する所与のデータセットの平均距離のより高い値が、それぞれのクラスタのメトリックのより高い値を誘発し得るように計算されてもよい。この場合、最も低いメトリックを有するクラスタが、選択されたクラスタである場合、各クラスタの重心から離れて位置する所与のデータセットの外れ値は、このクラスタが、選択されたクラスタではないことを示す可能性がある。従って、この実施形態は、所与のデータセットの外れ値が、選択されたクラスタの決定の強い影響を有し得ることを防止する。重心に対する所与のデータセットの最大距離および重心に対する所与のデータセットの平均距離が、上記の方法で一緒に使用されて、選択されたクラスタを決定する場合、この実施形態は、平均距離の値に対する所与のデータセットの外れ値の影響が、最大距離に対するそれらの影響によってバランスされ得ることを示す可能性がある。
一実施形態によれば、この方法は、それぞれのクラスタに対する所与のデータセットのメンバーシップの平均レベルに基づいて、各クラスタのメトリックを決定するステップをさらに含む。本実施形態は、以下において、第9の実施形態と参照され得る。好ましくは、各クラスタのメトリックは、それぞれのクラスタに対する所与のデータセットおよび訓練用データセットのメンバーシップの平均レベルに基づいて決定されてもよい。好ましい実施形態においては、各クラスタのメトリックは、それぞれのクラスタに対する所与のデータセットもしくは訓練用データセットまたはその両方のメンバーシップの平均レベルのより高い値が、それぞれのクラスタのメトリックのより高い値をもたらすように計算されてもよい。この場合、最も低いメトリックを有するクラスタが、選択されたクラスタである場合、選択されたクラスタは、むしろ、それぞれのクラスタに対する所与のデータセットのむしろより低いメンバーシップのレベルを有する、所与のデータセットのむしろより多くを含むクラスタのその1つである可能性がある。よって、選択されたクラスタは、明確にはまたは容易には分類されないそれぞれの所与のデータセットを含む可能性がある。選択されたデータセットが、このように決定された、選択されたクラスタに由来する場合、選択されたデータセットが新しい情報を含み得る見込みは増大される可能性がある。
第7、第8および第9の実施形態においては、クラスタを定義するためのパラメータの値は、好ましくは、訓練用データセットおよび所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの関数として生成されてもよい。第7、第8および第9の実施形態によるステップは、所与のデータセットの拡張に応答して、繰り返されてもよい。所与のデータセットは、AIモジュールの使用の間、拡張されてもよい。この使用の間、ログファイルは、新しい所与のデータセットがログファイルにより構成されるように、拡張されてもよい。第7、第8および第9の実施形態によるステップを実行する第1の反復において、所与のデータセットの手動でラベル付けされたデータセットが存在しない場合、クラスタを定義するためのパラメータの値は、好ましくは、訓練用データセットのみの関数として生成されてもよい。
一実施形態によれば、方法は、それぞれのクラスタの重心に対する訓練用データセットおよび所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの平均距離に基づいて、各クラスタのメトリックを決定するステップをさらに含む。この実施形態は、以下において、第10の実施形態と参照され得る。
一実施形態によれば、本方法は、それぞれのクラスタの重心に対する訓練用データセットおよび所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの最大距離に基づいて、各クラスタのメトリックを決定するステップをさらに含む。なお、この実施形態は、以下において、第11の実施形態と参照され得る。
一実施形態によれば、この方法は、それぞれのクラスタに対する訓練用データセットおよび所与のデータセットの手動で承認されたまたは手動で修正されたデータセットのメンバーシップの平均レベルに基づいて、各クラスタのメトリックを決定するステップを含む。なお、この実施形態は、第12の実施形態と参照され得る。
第10、第11および第12の実施形態は、第7、第8および第9の実施形態と同様の利点を有する可能性がある。訓練用データセットおよび所与のデータセットの手動で承認されたまたは手動で修正されたデータセットに基づいて各クラスタのメトリックを決定することは、選択されたクラスタが、承認されかつ手動で修正されたデータセットに基づいてのみ決定され得るという利点を有する可能性がある。その結果として、クラスタの選択は、専門家によって容易に決定することができる。しかしながら、所与のデータセットに基づいて各クラスタのメトリックを決定することは、選択されたクラスタが、選択されたデータセットによって提供される新しい情報を含む見込みを増加させる可能性がある。
一実施形態によれば、方法は、それぞれのクラスタにより構成されている訓練用データセットの数と、それぞれのクラスタにより構成されている、所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの数との第1の合計、および、訓練用データセットの総数と、所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの総数との第2の合計との比に基づいて、各クラスタのメトリックを決定するステップをさらに含む。本実施形態は、第13の実施形態と参照され得る。好ましい実施形態においては、各クラスタのメトリックは、比のより高い値が、それぞれのクラスタのメトリックのより高い値を誘発するように計算されてもよい。この場合、最も低いメトリックを有するクラスタが、選択されたクラスタである場合、選択されたクラスタは、むしろ、より少ない手動でラベル付けされたデータセットおよび訓練用データセットを含む、クラスタのその1つである可能性がある。よって、選択されたクラスタは、むしろ低密度のデータセットを含む可能性がある。
第10、第11、第12および第13の実施形態においては、クラスタを定義するためのパラメータの値は、好ましくは、訓練用データセット、テスト用データセット、および、所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの関数として生成されてもよい。
第7、第8および第9の実施形態によるステップと同様に、第10、第11、第12および第13の実施形態のステップは、所与のデータセットの拡張に応答して繰り返されてもよい。第10、第11、第12および第13の実施形態によるステップを実行する第1の反復において、所与のデータセットの手動でラベル付けされたデータセットが存在しない場合、クラスタを定義するためのパラメータの値は、好ましくは、訓練用データセットおよびテスト用データセットのみの関数として生成されてもよい。
一実施形態によれば、所与のデータセットの入力データセットは、それぞれ、識別パラメータを含み、所与のデータセットの出力データセットは、それぞれ、性能インジケータの値を含む。この実施形態においては、出力パラメータ空間は、性能インジケータを含み、入力パラメータ空間は、識別パラメータを含み得る。これは、所与のデータセットの性能インジケータもしくは識別パラメータまたはその両方の各値に従って、選択されたデータセットを決定することを可能し得る。加えて、この実施形態は、性能インジケータの値に従ってAIモジュールを更新することを可能にし得る。
識別パラメータは、各所与のデータセットを、データ処理のそれぞれのアクションに関連付けることを可能にし得る。データ処理のそれぞれのアクションは、それぞれの所与のデータセットの生成を含んでもよい。例えば、ログファイルを考えると、それぞれの所与のデータセットの識別パラメータは、それぞれの所与のデータセットの入力データセットをそれぞれの所与のデータセットの出力データセットと連結し、それらをそれぞれの所与のデータセットの形でログファイルに書き込むインスタンスに関する識別番号であってもよい。この例では、識別番号は、別の所与のデータセットによってログファイルが拡張されるごとに増加されてもよい。
それぞれの所与のデータセットの入力データセットは、第1の追加の値を含んでもよく、これは、それぞれの所与のデータセットの生成のインスタンス、好ましくは、それぞれの所与のデータセットの出力データセットの生成のインスタンスに関連してもよい。この入力データセットの第1の追加の値は、出力データセットの値、好ましくは各所与のデータセットの性能インジケータの値に影響を与える環境の状態に関する情報を含んでもよい。別の実施形態においては、識別パラメータの値は、それぞれの所与のデータセットの生成のインスタンス、好ましくは、それぞれの所与のデータセットの出力データセットの生成のインスタンスに関連し得る第1の追加の値を用いて計算されてもよい。識別パラメータの値は、第1の追加の値の組み合わせを全単射的に識別パラメータの値にマップし得る第1の関数によって計算することができる。
性能インジケータの値は、通信の性能に関連してもよい。例えば、通信が成功した場合、性能インジケータの値は、1に等しくなり、別の方法では0に等しくなる。通信は、それぞれの所与のデータセットの第2の追加の値に関連づけられてもよい。第2の追加の値は、例えば、アクション、例えば通信を指定してもよい。通信は、例えば、それぞれの所与のデータセットの入力データセットがいずれの宛先に送信されたか、それぞれの所与のデータセットの入力データセットがどのような種類の情報を含み得るか、もしくは、それぞれの所与のデータセットの入力データセットの送信がどのような種類のアクションを誘発し得たか、またはこれらの組み合わせを示すことによって指定されてもよい。第2の追加の値は、それぞれの所与のデータセットの入力データセットもしくは出力データセットまたはその両方に含まれてもよい。
図1は、人工知能モジュール(AIモジュール)1(図2に示す)を更新するために、所与のデータセット14(図3に示す)からデータセットを選択するための第1のコンピュータ・システム100を示す。第1のコンピュータ・システム100は、本発明の種々の実施形態による方法ステップを実行するのに適し得る。第1のコンピュータ・システム100は、第1のバス106によって互いに結合された、第1のプロセッサ102と、第1のメモリ103と、第1のI/O回路104と、第1のネットワーク・インタフェース105とを含んでもよい。
第1のプロセッサ102は、1または複数のプロセッサ(例えば、マイクロプロセッサ)を表し得る。第1のメモリ103は、揮発メモリ要素(例えば、DRAM,SRAM,SDRAMなどのランダム・アクセス・メモリ(RAM))および非揮発メモリ要素(例えば、リード・オンリー・メモリ(ROM)、消去可能プログラマブル・リード・オンリー・メモリ(EPROM)、電気的消去可能プログラマブル・リード・オンリー・メモリ(EEPROM)およびプログラマブル・リード・オンリー・メモリ(PROM))の任意の1つまたは組み合わせを含んでもよい。第1のメモリ103は、種々のコンポーネントが離れた場所にあるが、第1のプロセッサ102によってアクセスできる、分散アーキテクチャを有してもよいことに留意されたい。
第1のメモリ103は、第1の永続性ストレージ107と併用されて、ローカルのデータおよび命令ストレージに使用されてもよい。第1のストレージ107は、第1のI/O回路104によって制御される1または複数の永続性ストレージ・デバイスおよび媒体を含む。第1のストレージ・デバイス107は、例えば固定またはポータブルな媒体を有するデジタルデータ・ストレージ用の磁気、光学、光磁気またはソリッド・ステート装置を含んでもよい。例示のデバイスは、ハードディスク・ドライブ、光ディスク・ドライブおよびフロッピー(登録商標)ディスク・ドライブを含む。例示の媒体には、ハードディスク・プラッター、CD-ROM、DVD-ROM、BD-ROM、フロッピー(登録商標)ディスクなどが含まれる。
第1のメモリ103は、ロジック機能を実現するための実行可能命令、特に例に含まれる機能を含む1または複数の別個のプログラムを含んでもよい。第1のメモリ103内のソフトウェアは、典型的には、第1の適切なオペレーティング・システム(OS)108を含む。第1のOS108は、本質的に、本明細書で説明される方法の少なくとも一部を実行するための別のコンピュータ・プログラムの実行を制御する。
第1のコンピュータ・システム100は、以下の第1の機能と参照される、所与のデータセット14の異なるクラスタを定義するためのパラメータの値を取得するように構成されてもよい。第1の機能は、異なるクラスタの重心の座標を示す第1の値と、クラスタの各々に対する各所与のデータセットのメンバーシップのレベルを示す第2の値とを読み出すことを含んでもよい。第1の機能は、所与のデータセット14、訓練用データセットもしくはテスト用データセットまたはこれらの組み合わせを使用して、ファジーC平均クラスタリング・アルゴリズムのようなクラスタリング・アルゴリズムを実行することを含んでもよい。
さらに、第1のコンピュータ・システム100は、以下において、第2の機能と参照される、各所与のデータセットのメトリックを決定するように構成されてもよく、各所与のデータセットのメトリックは、クラスタの1つに対する各所与のデータセットの各メンバーシップのレベル、および、クラスタの同一のものの重心に対する各所与のデータセットの距離に依存する。
さらに、第1のコンピュータ・システム100は、以下、第3の機能と参照される、所与のデータセット14のメトリックの比較に基づいて、AIモジュール1(図2に示す)を更新するために、所与のデータセット14から、所与のデータセット14のうちの少なくとも1つを選択するように構成されてもよい。
さらに、第1のコンピュータ・システム100は、以下、第4の関数と参照される、各クラスタのメトリックが、クラスタの他の重心に対する各クラスタの重心の距離に依存するとして、各クラスタのメトリックを決定し、クラスタのメトリックに基づいてクラスタから、クラスタのうちの少なくとも1つを選択するように構成されてもよい。各所与のデータセットのメトリックは、上記の方法の1つに従って計算されてもよい。
さらに、第1のコンピュータ・システム100は、第2、第3、第4、第5および第6の実施形態に従って、クラスタを定義するためのパラメータの値を生成するよう構成されてもよく、これらは、以下において、それぞれ第5、第6、第7、第8および第9の機能と参照される。
さらに、第1のコンピュータ・システム100は、第7、第8、第9、第10、第11、第12および第13の実施形態に従って各クラスタのメトリックを決定するように構成されてもよく、これらは、以下において、それぞれ第10、第11、第12、第13、第14、第15、第16の機能と参照される。
第1のコンピュータ・システム100は、第1のプログラム201、第2のプログラム202、第3のプログラム203、第4のプログラム204、第5のプログラム205、第6のプログラム206、第7のプログラム207、第8のプログラム208、第9のプログラム209、第10のプログラム210、第11のプログラム211、第12のプログラム212、第13のプログラム213、第14のプログラム214、第15のプログラム215および第16のプログラム216をそれぞれ実行することによって、第1、第2、第3、第4、第5、第6、第7、第8、第9、第10、第11、第12、第13、第14、第15、第16の機能を実行してもよい。第1のプロセッサ102は、メインプログラム200を実行してもよい。メインプログラム200は、クラスタを定義するためのパラメータの値および各クラスタのメトリックが決定される特定の実施形態に従って、プログラム201、202,203,204,205,206,207,208,209,210,211,212,213,214,215,216の実行を第1のプロセッサ102上で開始してもよい。
本明細書において使用される用語「プログラム」は、プロセッサ102がコマンドを読み得る場合に、プロセッサ102によって実行されるアクションを誘発するためのコマンドを含む命令のセットを参照する。命令のセットは、コンピュータ可読プログラム、ルーチン、サブルーチンまたはライブラリの一部の形態を有し、これらは、プロセッサ102によって実行され得るか、もしくは、プロセッサ102によって実行されている追加のプログラムによって呼び出され得るか、またはその両方であり得る。好ましくは、プログラム200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216は、実行可能なプログラムであり、これらは、コンピュータ・システム100のハードウェア・プラットフォームのタイプに従ってコンパイルされる。第1のメモリ103は、プログラム200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216を格納するための空間を含んでもよく、この空間は、以下、第1の機能メモリ115と参照される。
図1は、第2のコンピュータ・システム120を示す。第2のコンピュータ・システム120は、AIモジュール1(図2に示す)を実行するのに適し得る。
第2のコンピュータ・システム120は、第2のバス126によって互いに結合された、第2のプロセッサ122と、第2のメモリ123と、第2のI/O回路124と、第2のネットワーク・インタフェースとして設計されたネットワーク・インタフェース2とを含んでもよい。
第2のプロセッサ122は、1または複数のプロセッサ(例えば、マイクロプロセッサ)を表し得る。第2のメモリ123は、揮発メモリ要素(例えば、DRAM,SRAM,SDRAMなどのランダム・アクセス・メモリ(RAM))および非揮発メモリ要素(例えば、リード・オンリー・メモリ(ROM)、消去可能プログラマブル・リード・オンリー・メモリ(EPROM)、電気的消去可能プログラマブル・リード・オンリー・メモリ(EEPROM)およびプログラマブル・リード・オンリー・メモリ(PROM))の任意の1つまたは組み合わせを含んでもよい。第2のメモリ123は、種々のコンポーネントが離れた場所にあるが、第2のプロセッサ122によってアクセスできる、分散アーキテクチャを有してもよいことに留意されたい。
第2のメモリ123は、第2の永続性ストレージ127と併用されて、ローカルのデータおよび命令ストレージに使用されてもよい。第2のストレージ127は、第2のI/O回路124によって制御される1または複数の永続性ストレージ・デバイスおよび媒体を含む。第2のストレージ・デバイス127は、例えば固定またはポータブルな媒体を有するデジタルデータ・ストレージ用の磁気、光学、光磁気またはソリッド・ステート装置を含んでもよい。例示のデバイスは、ハードディスク・ドライブ、光ディスク・ドライブおよびフロッピー(登録商標)ディスク・ドライブを含む。例示の媒体には、ハードディスク・プラッター、CD-ROM、DVD-ROM、BD-ROM、フロッピー(登録商標)ディスクなどが含まれる。
第2のメモリ123は、ロジック機能を実現するための実行可能命令、特に例に含まれる機能を含む1または複数の別個のプログラムを含んでもよい。第2のメモリ123内のソフトウェアは、典型的には、第2の適切なオペレーティング・システム(OS)128を含む。第2のOS128は、本質的に、本明細書で説明される方法の少なくとも一部を実行するための別のコンピュータ・プログラムの実行を制御する。
第2のコンピュータ・システム120は、以下の第17の機能と参照される、AIモジュール1(図2に示される)を第2のコンピュータ・システム120上で実行するように構成されてもよい。第17の機能は、第2のストレージ・デバイス127から第2のメモリ123に、ニューラルネット、畳み込みニューラルネットもしくは放射基底関数ネットまたはこれらの組み合わせのモデル関数の構造およびパラメータの値を読み込み、対応する要求入力データセットに基づいて、回答出力データセットを計算することを含んでもよい。それに基づいて回答出力データセットが計算され得る要求入力データセットは、この回答出力データセットに対応していてもよく、その逆もあり得る。
図2に示すように、AIモジュール1は、回答出力データセットと同様な回答出力データセットのセット10を計算してもよく、ここで、回答出力データセットの各々は、要求入力データセットのセット9の対応する単一の要求入力データセットに基づいて計算されてもよい。
さらに、第2のコンピュータ・システム120は、以下において第18の機能と参照されるように、インタフェース2を介して要求入力データセット9を受信するよう構成され、また、以下の第19の機能と参照されるように、インタフェース2を介して回答出力データセット10を送信するように構成されてもよい。
第2のコンピュータ・システム120は、第17のプログラム217、第18のプログラム218および第19のプログラム219をそれぞれ実行することによって、第17、第18および第19の機能を実行してもよい。プログラム217,218,219の実行は、第2のメインプログラム220を第2のプロセッサ122上で実行することによって開始されてもよい。第2のメモリ123は、プログラム220,217,218,219を格納するための空間を含んでもよく、この空間は、以下、第2の機能メモリ135と参照される。
AIモジュール1(図2に示す)は、第2のプロセッサ122のキャッシュに読み込まれている、第2のプロセッサ122上でニューラルネット、畳み込みニューラルネットもしくは放射基底関数ネットまたはこれらの組み合わせを実行するためのモデル関数およびプログラム217の構造およびのパラメータの値を含むエンティティとみなすことができる。
(図3に示す)所与のデータセット14の各々は、回答出力データセット10(図2に示す)の1つを、要求入力データセット9(図2に示す)の対応する1つと連結することによって生成されてもよい。好ましくは、所与のデータセット14の各々は、入力および出力データセットに分割されてもよい。要求入力データセット9の各々は、所与のデータセット14の入力データセット11(図3に示される)の1つと同一の値を含んでもよく、回答出力データセット10の各々は、所与のデータセット14の出力データセット12(図3に示す)の1つと同一であってよい。よって、この例では、要求入力データセット9および回答出力データセット10から所与のデータセット14を作成する場合に、要求入力データセット9は、所与のデータセット14の入力データセット11となり、回答出力データセット10は、所与のデータセット14の出力データセット12となる。
図3に示されるように、所与のデータセット14は、ログファイル13によって提供されてもよい。ログファイル13は、訓練済みAIモジュール1がユーザによって使用される場合に、回答出力データセット12および対応する要求入力データセット11を格納することによって生成されてもよい。好ましくは、AIモジュール1が新しい回答出力データセットを計算するたびに、ログファイル13は、別の所与のデータセットで拡張され得る。一例では、ログファイル13は、第2のコンピュータ・システム120によって生成され、第2のメモリ123に格納されてもよい。別の例では、ログファイル13は、好ましくは、要求入力データセット11および回答出力データセット12を別個に読み取ることによって、第1のコンピュータ・システム100によって生成されてもよい。
一例では、AIモジュール1は、第1のプロセッサ102上で実行されてもよい。しかしながら、本発明の実施形態は、AIモジュール1にアクセスすることなく実行されてもよい。これは、より多くの場合に起こる通り、図1および図2に説明されている。所与のデータセット14のみが、本発明の実施形態を実行するために必要とされ得る。好ましくは、所与のデータセットは、ログファイル13を読み込むことによって第1のメモリ103に読み込まれる。これを実現するために、第1のネットワーク・インタフェース105は、ワールド・ワイド・ウェブ130または別のネットワークを介してインタフェース2と通信可能に結合されてもよい。
一例では、入力データセット11は、それぞれ、図3においてa,a,aと示されるように第1の値と、図3においてb,b,bと示されるように第2の値とを含んでもよく、出力データセット12は、それぞれ、図3にc,c,cと示されるように第1の値を含んでもよい。
所与のデータセット14は、それぞれ、それぞれの所与のデータセットの値に等しい各データポイントの座標を有する、座標系40(図4に示される)におけるデータポイントによって、表されてもよい。図4は、これによって所与のデータセット14が表され得るいくつかの例示的なデータポイント41を示す。この場合、座標系40は、所与のデータセット14の入力パラメータ空間と、出力パラメータ空間とを含む連結されたパラメータ空間を表す可能性がある。所与のデータセット14の入力パラメータ空間は、x軸42およびy軸43に及び得て、入力データセット11の第1の値a,a,aおよび第2の値b,b,bを含んでもよい。所与のデータセット14の出力パラメータ空間は、z軸44に及び得て、出力データセット12の第1の値c,c,cを含んでもよい。
AIモジュール1は、本発明の方法を実行するために訓練済みの状態であってもよい。AIモジュール1の未訓練の状態では、モデル関数のパラメータの値は、ランダム値に等しい可能性がある。これは、AIモジュール1の初期化によって達成されてよく、ここで、モデル関数のパラメータの値は、ランダムな値に設定されてもよい。AIモジュール1の訓練は、訓練用データセット46(図4に示す)に基づいて実行され、各訓練用データセット46は、入力データセットおよび出力データセットを含む。
訓練用データセット46の入力および出力データセットは、要素を有してもよい。これらの要素は、値、好ましくは実数値であってもよい。訓練用データセット46の入力データセットは、所与のデータセット14の入力データセット11と同一の構造を有してもよい。同様に、訓練用データセット46の出力データセットは、所与のデータセット14の出力データセット12と同一の構造を有してもよい。訓練用データセット46は、訓練用データセット46で訓練されると、AIモジュール1が使用され得る分類問題に関する情報を表すことができる。第1のユースケースに関して、それぞれの入力データセット11の第1の値a,a,aおよび第2の値b,b,bは、それぞれ、それぞれの入力データセット11を、いくつかの異なるクラスのうちの1つにグループ化するための特徴の値であってもよい。それぞれの異なるクラスのタイプは、それぞれの出力データセット12の第1の値c,c,cによって与えられてもよい。訓練用データセット46の各入力および出力データセットの値は、所与のデータセット14と同一の構造を有いていてもよく、実験、好ましくは教師ありの実験によって取得されてもよい。
AIモジュール1の訓練は、AIモジュール1の訓練誤差を低減するようにモデル関数のパラメータの値が適合されるように実行されてもよい。訓練誤差は、線形回帰、逆伝播法、k平均法などの1または複数の学習アルゴリズムを使用して上述したように低減される可能性がある。
図5は、AIモジュール1を更新するために所与のデータセット14からデータセットを選択するためのコンピュータ実装方法のフローチャートを示し、各所与のデータセット14(図3に示す)は、入力データセット11(図3に示す)と、対応する出力データセット12i(図3に示す)とを含む。
ステップ301においては、所与のデータセット14の異なるクラスタ45を定義するためのパラメータの値が取得されてもよい。これは、第1のプロセッサ102上で第1のプログラム201を実行することによって実現され得る。第1のプログラム201を実行することによって、ファジーC平均クラスタリング・アルゴリズムが訓練用データセット46に基づいて実行されてもよい。これは、クラスタ45の重心47(図4に示す)と、クラスタ45の各1つに対する所与のデータセットの各1つ14のメンバーシップのレベルとを決定することを含んでもよい。
ステップ302においては、与えられた各所与のデータセット14のメトリックが決定されてもよい。各所与のデータセットのメトリックは、クラスタの1つに対する各所与のデータセット14のメンバーシップのレベルと、クラスタの同一の1つの重心に対する各所与のデータセット14の距離とに依存してもよい。
ステップ303においては、所与のデータセット14のメトリックの比較に基づいて、AIモジュール1を更新するために、所与のデータセット14から、所与のデータセット14の少なくとも1つが選択されてもよい。
第1の例では、クラスタ45の各1つのメトリックが決定されてもよい。クラスタ45の各クラスタのメトリックは、クラスタ45の別の重心に対するクラスタ45の各それぞれのクラスタの重心の距離に依存してもよい。さらに、クラスタ45のメトリックに基づいて、クラスタ45から、クラスタ45の1つが選択されてもよい。この第1の例によれば、各所与のデータセット14iのメトリックは、各所与のデータセット14のメトリックが、選択されたクラスタに対するそれぞれの所与のデータセット14のメンバーシップのレベルと、選択されたクラスタの重心に対するそれぞれの所与のデータセット14の距離とに依存するように決定されてもよい。選択されたクラスタの重心に対する各所与のデータセット14の距離は、選択されたクラスタの重心に対するそれぞれの所与のデータセット14を表し得るそれぞれのデータポイントの距離に等しい可能性がある。
例えば、各所与のデータセット14のメトリックMdatは、下記:
Figure 2023518789000002
に従って計算されてもよく、ここで、Dは、選択されたクラスタの重心に対する所与のデータセット14の距離であってもよく、MDは、選択されたクラスタの重心に対する所与のデータセット14の最大距離であってもよく、Mは、選択されたクラスタに対するそれぞれの所与のデータセット14のメンバーシップの値であってよい。
第1の例の第1の変形例によれば、以下においてクラスタ45と参照される、クラスタ45の各1つのメトリックMclust1は、下記:
Figure 2023518789000003
のように決定されてもよく、ここで、MeanD1は、各クラスタ45の重心に対する訓練用データセット46の平均距離、または、各クラスタ45の重心に対する訓練用データセット46およびラベル付けされたデータセットの平均距離であってもよい。ラベル付けされたデータセットは、それぞれ、所与のデータセット14の承認されたまたは修正されたデータセットであってもよい。ラベル付けされるべき所与のデータセットのうちの1つ14iの承認または修正、すなわちラベル付けは、専門家によって手動で実行されてもよいし、上述のように自動的に実行されてもよい。
さらに、MM1は、それぞれのクラスタ45に対する訓練用データセット46のメンバーシップの平均値またはそれぞれのクラスタ45に対する訓練用データセット46およびラベル付けされたデータセットのメンバーシップの平均値であってもよい。さらに、MaxD1は、クラスタ45の重心に対する訓練用データセット46の最大距離、または、クラスタ45の重心に対する訓練用データセット46およびラベル付けされたデータセットの最大距離であってもよい。さらに、MCD1は、他のクラスタ45に対するクラスタ45の重心の平均距離をクラスタ45の重心の最大距離で割ったものであってもよい。さらに、Rは、それぞれのクラスタ45によって構成される訓練用データセット46およびラベル付けされたデータセットの第1の合計と、全ての訓練用データセット46および全てのラベル付けされたデータセットの第2の合計との比であってもよい。
第1の例の第2の変形例によるクラスタ45の各1つのメトリックMclust1を決定することは、上記の第10、第11、第12および第13の実施形態を組み合わせてもよく、これらの実施形態で説明した利点を生じる可能性がある。プログラム213,214,215および216は、第1のプロセッサ102上で実行されて、クラスタ45の各1つのメトリックMclust1を決定し、メインプログラム200によって呼び出されてもよい。
第1の例の第1の変形例によれば、選択されたクラスタは、メトリックMclust1の最低値を含むものであってもよい。クラスタ45の重心およびクラスタ45の各1つに対する各所与のデータセット14のメンバーシップの値を取得するためのクラスタリングは、訓練用データセット46、上記テスト用データセット、所与のデータセット14もしくはラベル付けされたデータセットまたはこれらの組み合わせに基づいて実行されてもよい。この場合において、訓練用データセット46、上記テスト用データセット、所与のデータセット14もしくはラベル付けされたデータセットまたはこれらの組み合わせは、クラスタリングが実行され得るデータセットの1つのセットを構築してもよい。
第1の例の第2の変形例によれば、クラスタ45の各1つのメトリックMclust2は、下記:
Figure 2023518789000004
に従って決定されてもよく、ここで、MeanD2は、各クラスタ45iの重心に対する所与のデータセット14の平均距離であってもよい。さらに、MM2は、各クラスタ45に対する所与のデータセット14のメンバーシップの平均値であってもよい。さらに、MaxD2は、クラスタ45の重心に対する所与のデータセット14の最大距離であってもよい。さらに、MCD2は、他のクラスタ45に対する各クラスタ45の重心からの平均距離をクラスタ45の重心の最大距離で割ったものであってもよい。
第1の例の第1の変形例によるクラスタ45の各1つのメトリックMclust2を決定することは、上述の第7、第8および第9の実施形態を組み合わせてもよく、これらの実施形態で説明した利点を生じる可能性がある。プログラム210,211および212は、第1のプロセッサ102上で実行されて、クラスタ45の各1つのメトリックMclust2を決定し、メインプログラム200によって呼び出されてもよい。
第1の例の第2の変形例によれば、選択されたクラスタは、メトリックMclust2の最低値を含むものであってもよい。クラスタ45の重心およびクラスタ45の各1つに対する各所与のデータセット14のメンバーシップの値を取得するためのクラスタリングは、訓練用データセット46もしくはラベル付けされたデータセットまたはその両方に基づいて実行されてもよい。この場合において、訓練用データセット46もしくはラベル付けされたデータセットまたはその両方は、クラスタリングが実行され得るデータセットの1つのセットを構築してもよい。
以下では、所与のデータセット14のメトリックMdatの比較に基づいて、所与のデータセット14から1つより多くのデータセットをどのように選択できるかについて説明する。この場合、選択されたクラスタは、第1の例の第1または第2の変形にしたがって決定されてもよい。メトリックMdatの最小値Min_MdatおよびメトリックMdatの最大値Max_Mdatは、所与のデータセット14のメトリックMdatの比較によって決定されてもよい。最小値Min_Mdatおよび最大値Max_Mdatを境界とする範囲が、N個の等しいサブ範囲に分割されてもよく、ここで、各サブ範囲は、最小および最大境界を含む。所与のデータセット14は、それらのメトリックMdatおよびN個のサブ範囲の最小および最大境界に従って、N個の異なるグループにグループ化されてもよい。それぞれのN個の異なるグループの各々から、所与のデータセットの所与の数Mが選択される。異なるグループの各々から所与の数Mのデータセットを選択することは、選択されたクラスタに関して、所与のデータセット14から、選択されたデータセットの均質なグループを生成するという利点を有する可能性がある。
別の例によれば、全ての所与のデータセットの最低のメトリックMdatを含むデータセット14iが選択されてもよく、または、全ての所与のデータセットの最低のメトリックMdatを含む所与の数Lのデータセット14iが選択されてもよい。さらなる例では、全ての所与のデータセットの最も高いメトリックMdatを含むデータセット14が選択されてもよく、または、所与のデータセットのうちの最も高いメトリックMdatを含む所与の数Lのデータセット14が選択されてもよい。
データセットまたはデータセットが選択される方法とは独立して、選択された1または複数のデータセットは、上述のラベル付けされた1または複数のデータセットを生成するために、手動または自動でラベル付けされてもよい。ラベル付けされた1または複数のデータセットに基づいて、新たな所与のデータセットを伴うログファイル13の拡張に応答して、クラスタリングが、上述のように実行されてもよい。新しい所与のデータセットがどのように作成されるかは、上記で説明される。
1または複数のデータセットを選択し、1つまたは複数のデータセットをラベル付けするための説明されたプロセスは、それぞれ、AIモジュール1が使用されている場合に繰り返し実行されてもよく、繰り返し新しい所与のデータセットを作成し、これによって、ログファイル13を拡張し、これによって、所与のデータセット14の数を増加させる。ラベル付けされたデータセットは、AIモジュール1を更新するために使用されてもよい。更新は、AIモジュール1の上述した訓練と同様の再訓練の形態で、しかし少なくともラベル付きデータセットに基づいて、実行されてもよい。再訓練は、また、訓練用データセットおよびラベル付けされたデータセットに基づいて実行されてもよい。
本発明は、統合の任意の可能な技術的詳細のレベルで、システム、方法もしくはコンピュータ・プログラム製品またはこれらの組み合わせであってよい。コンピュータ・プログラム製品は、プロセッサに本発明の側面を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読ストレージ媒体を含んでもよい。コンピュータ可読ストレージ媒体は、命令実行デバイスによって使用するための命令を保持し格納する有形のデバイスであってよい。
コンピュータ可読ストレージ媒体は、例えば、これに限定されるものではないが、電子的ストレージ・デバイス、磁気ストレージ・デバイス、光学ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイスまたは上記の任意の適切な組み合わせであってよい。コンピュータ可読ストレージ媒体のより具体的な非網羅的なリストとしては、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、消去可能プログラマブル・リード・オンリー・メモリ(EPROMまたはフラッシュメモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク・リード・オンリー・メモリ(CD-ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリースティック、フロッピーディスク(登録商標)、パンチカードまたは記録された命令を有する溝内の隆起構造のような機械的エンコードされたデバイス、および上記の任意の適切な組み合わせが含まれる。コンピュータ可読ストレージ媒体は、本明細書で使用されるように、電波、自由伝搬する電磁波、導波路または他の伝送媒体を伝搬する電磁波(たとえば、ファイバ光ケーブルを通過する光パルス)または、ワイヤを通して伝送される電気信号のような、それ自体が一時的な信号として解釈されるものではない。
本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からそれぞれのコンピュータ/処理デバイスに、または、例えばインターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークもしくは無線ネットワークまたはこれらの組み合わせといったネットワークを介して外部コンピュータまたは外部ストレージ・デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータもしくはエッジサーバまたはこれらの組み合わせを含んでもよい。各コンピュータ/処理デバイスにおけるネットワーク・アダプタ・カードまたはネットワーク・インタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、コンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内のコンピュータ可読ストレージ媒体に格納するために転送する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用の構成データ、または、1以上のプログラミング言語の任意の組み合わせで書かれたソース・コードあるいはオブジェクト・コードであってよく、1以上のプログラミング言語は、Smalltalk(登録商標)、C++またはこれらに類するもなどのオブジェクト指向言語、Cプログラミング言語または類似のプログラミング言語などの手続型言語を含む。コンピュータ可読プログラム命令は、スタンド・アローンのソフトウェア・パッケージとして、全体としてユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、部分的にユーザのコンピュータ上かつ部分的に遠隔のコンピュータ上で、または、完全に遠隔のコンピュータまたはサーバ上で実行されてもよい。後者のシナリオでは、遠隔のコンピュータは、ユーザのコンピュータに、ローカル・エリア・ネットワーク(LAN)またはワイド・エリア・ネットワーク(WAN)を含む任意のタイプのネットワークを通じて接続されてもよく、あるいは接続は、(例えば、インターネット・サービス・プロバイダを用いてインターネットを通じて)外部コンピュータになされてもよい。いくつかの実施形態においては、電気的回路は、本発明の側面を実行するために、コンピュータ可読プログラム命令の状態情報を利用して、電気的回路を個別化することによって、コンピュータ可読プログラム命令を実行してもよく、この電気的回路は、例えば、プログラマブル・ロジック回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、またはプログラマブル・ロジック・アレイ(PLA)を含む。
本発明の側面は、本明細書において、本発明の実施形態に従った方法、装置(システム)およびコンピュータ・プログラム製品のフローチャート図もしくはブロック図またはその両方を参照しながら、説明される。フローチャート図もしくはブロック図またはその両方の各ブロック、および、フローチャート図もしくはブロック図またはその両方における複数のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装されてもよいことが理解されよう。
これらのコンピュータ可読プログラム命令は、コンピュータのプロセッサまたは他のプログラマブル・データ処理装置に提供され、コンピュータのプロセッサまたは他のプログラマブル・データ処理装置を介して実行される命令が、フローチャート図もしくはブロックまたはその両方のブロックまたは複数のブロックにおいて特定される機能/作用を実装するための手段を作成するように、マシンを生成する。これらのコンピュータ可読プログラム命令は、また、コンピュータ、プログラマブル・データ処理装置もしくは他のデバイスまたはこれらの組み合わせに特定のやり方で機能するよう指示できるコンピュータ可読ストレージ媒体に格納され、それに格納された命令を有するコンピュータ可読ストレージ媒体に、フローチャートもしくはブロックまたはその両方のブロックまたは複数のブロックで特定される機能/作用の側面を実装する命令を含む製品が含まれるようにする。
コンピュータ可読プログラム命令は、また、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスにロードされ、コンピュータ、他のプログラマブル・データ処理装置または他のデバイス上で一連の動作ステップを実行させて、コンピュータ、他のプログラマブル・データ処理装置または他のデバイス上で実行される命令が、フローチャートもしくはブロックまたはその両方のブロックまたは複数のブロックで特定される機能/作用の側面を実装するように、コンピュータ実装処理を生成することもできる。
図面におけるフローチャートおよびブロック図は、本発明の種々の実施形態に従ったシステム、方法およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能性および動作を示す。この点に関して、フローチャートまたはブロック図の各ブロックは、特定の論理機能を実装するための1以上の実行可能な命令を含む、モジュール、セグメントまたは命令の部分を表す可能性がある。いくつかの代替の実装では、ブロックにおいて言及された機能は、図面に示された順序から外れて生じる可能性がある。例えば、連続して示される2つのブロックは、実際に、単一のステップとして実現されてもよいし、同時に、実質的に同時に、部分的にまたは全体的に一時的にオーバラップするやり方で、実行されてもよく、あるいは、複数のブロックは、関与する機能性に応じて逆の順序で実行されてもよい。ブロック図もしくはフローチャート図またはその両方の各ブロックおよびブロック図もしくはフローチャート図またはその両方の複数のブロックの組み合わせが、特定の機能または作用を実行し、または、特別な目的のハードウェアおよびコンピュータ命令の組み合わせを実施する、特定目的ハードウェアベースのシステムによって実装されてもよいことに留意されたい。

Claims (20)

  1. 人工知能モジュール(AIモジュール)を更新するために、所与のデータセットからデータセットを選択するためのコンピュータ実装方法であって、前記所与のデータセットは、それぞれ、入力データセットおよび対応する出力データセットを含み、前記方法は、
    前記所与のデータセットの異なるクラスタを定義するためのパラメータの値を取得するステップと、
    各所与のデータセットのメトリックを決定するステップであって、各所与のデータセットの前記メトリックは、前記クラスタのうちの1つに対するそれぞれの所与のデータセットのメンバーシップのレベルおよび前記クラスタのうちの同一の1つの重心に対する前記それぞれの所与のデータセットの距離に依存する、決定するステップと、
    前記所与のデータセットの前記メトリックの比較に基づいて、前記AIモジュールを更新するために前記所与のデータセットから、前記所与のデータセットの少なくとも1つを選択するステップと
    を含む、コンピュータ実装方法。
  2. 各クラスタのメトリックを決定するステップであって、各クラスタの前記メトリックは、前記クラスタのうちの他の重心に対する前記それぞれのクラスタの重心の距離に依存する、決定するステップと、
    前記クラスタの前記メトリックに基づいて、前記クラスタから、前記クラスタの少なくとも1つを選択するステップと、
    各所与のデータセットの前記メトリックを決定するステップであって、各所与のデータセットの前記メトリックは、選択された前記クラスタに対する前記それぞれの所与のデータセットの前記メンバーシップのレベルおよび選択された前記クラスタの前記重心に対する前記それぞれの所与のデータセットの距離に依存する、決定するステップと
    をさらに含む、請求項1に記載のコンピュータ実装方法。
  3. 各所与のデータセットのメトリックのセットを決定するステップであって、前記それぞれの所与のデータセットの前記メトリックのセットの各メトリックは、前記クラスタのサブセットの1つのクラスタに対応し、前記それぞれの所与のデータセットの前記メトリックのセットの各メトリックは、対応する前記クラスタに対する前記それぞれの所与のデータセットの前記メンバーシップのレベルおよび対応する前記クラスタの重心に対する前記それぞれの所与のデータセットの距離に依存する、決定するステップ、および、
    前記所与のデータセットの前記メトリックのセットの比較に基づいて、前記AIモジュールを更新するために、前記所与のデータセットから前記所与のデータセットの少なくとも1つを選択するステップ
    の少なくとも一部に基づいて、各所与のデータセットの前記メトリックを決定するステップを含む、請求項1に記載のコンピュータ実装方法。
  4. 前記クラスタを定義するための前記パラメータの前記値を、訓練用データセットの関数として生成するステップであって、前記AIモジュールは、前記訓練用データセットを用いて生成される、生成するステップ
    をさらに含む、請求項1に記載のコンピュータ実装方法。
  5. 前記クラスタを定義するための前記パラメータの前記値を、前記所与のデータセットの関数として生成するステップ
    を含む、請求項1に記載のコンピュータ実装方法。
  6. 前記クラスタを定義するための前記パラメータの前記値を、テスト用データセットの関数として生成するステップであって、前記AIモジュールは、前記テスト用データセットを用いてテストされる、請求項1に記載のコンピュータ実装方法。
  7. 前記クラスタを定義するための前記パラメータの前記値を、前記所与のデータセットの承認されたまたは修正されたデータセットの関数として生成するステップ
    を含む、請求項1に記載のコンピュータ実装方法。
  8. 前記クラスタを定義するための前記パラメータの前記値を、前記所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの関数として生成するステップ
    を含む、請求項1に記載のコンピュータ実装方法。
  9. ファジーC平均クラスタリング・アルゴリズムを実行することによって前記クラスタを定義するための前記パラメータの前記値を取得するステップ
    を含む、請求項1に記載のコンピュータ実装方法。
  10. 前記それぞれのクラスタの重心に対する前記所与のデータセットの平均距離に基づいて、各クラスタの前記メトリックを決定するステップ
    をさらに含む、請求項2に記載のコンピュータ実装方法。
  11. 前記それぞれのクラスタの重心に対する前記所与のデータセットの最大距離に基づいて、各クラスタの前記メトリックを決定するステップ
    をさらに含む、請求項2に記載のコンピュータ実装方法。
  12. 前記それぞれのクラスタに対する前記所与のデータセットのメンバーシップの平均レベルに基づいて、各クラスタの前記メトリックを決定するステップ
    をさらに含む、請求項2に記載のコンピュータ実装方法。
  13. 前記それぞれのクラスタの重心に対する前記訓練用データセットおよび前記所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの平均距離に基づいて、各クラスタの前記メトリックを決定するステップ
    をさらに含む、請求項4に記載のコンピュータ実装方法。
  14. 前記それぞれのクラスタの重心に対する前記訓練用データセットおよび前記所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの最大距離に基づいて、各クラスタの前記メトリックを決定するステップ
    をさらに含む、請求項4に記載のコンピュータ実装方法。
  15. 前記それぞれのクラスタに対する前記訓練用データセットおよび前記所与のデータセットの手動で承認されたまたは手動で修正されたデータセットのメンバーシップの平均レベルに基づいて、各クラスタの前記メトリックを決定するステップ
    をさらに含む、請求項4に記載のコンピュータ実装方法。
  16. それぞれの前記クラスタにより構成される前記訓練用データセットの数と、それぞれの前記クラスタにより構成される前記所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの数との第1の合計、および、前記訓練用データセットの総数と、前記所与のデータセットの手動で承認されたまたは手動で修正されたデータセットの総数との第2の合計の比に基づいて、各クラスタの前記メトリックを決定するステップ
    をさらに含む、請求項4に記載のコンピュータ実装方法。
  17. 前記クラスタを定義するための前記パラメータの前記値を、前記訓練用データセットの前記出力データセットに基づいて取得するステップ、
    をさらに含む、請求項4に記載のコンピュータ実装方法。
  18. 前記所与のデータセットの前記入力データセット各々は、識別パラメータを含み、前記所与のデータセットの前記出力データセット各々は、性能インジケータの値を含む、請求項1に記載のコンピュータ実装方法。
  19. 人工知能モジュール(AIモジュール)を更新するために、所与のデータセットからデータセットを選択するためのコンピュータ・プログラム製品であって、前記所与のデータセットは、それぞれ、入力データセットおよび対応する出力データセットを含み、前記コンピュータ・プログラム製品は、具現化されたコンピュータ可読プログラム・コードを有するコンピュータ可読ストレージ媒体を含み、前記コンピュータ可読プログラム・コードは、方法を実装するように構成され、前記方法は、
    前記所与のデータセットの異なるクラスタを定義するためのパラメータの値を取得するステップと、
    各所与のデータセットのメトリックを決定するステップであって、各所与のデータセットの前記メトリックは、前記クラスタのうちの1つに対するそれぞれの所与のデータセットのメンバーシップのレベルおよび前記クラスタのうちの同一の1つの重心に対する前記それぞれの所与のデータセットの距離に依存する、決定するステップと、
    前記所与のデータセットの前記メトリックの比較に基づいて、前記AIモジュールを更新するために前記所与のデータセットから、前記所与のデータセットの少なくとも1つを選択するステップと
    を含む、コンピュータ・プログラム製品。
  20. 人工知能モジュール(AIモジュール)を更新するために、所与のデータセットからデータセットを選択するためのコンピュータ・システムであって、前記所与のデータセットは、それぞれ、入力データセットおよび対応する出力データセットを含み、前記コンピュータ・システムは、1または複数のコンピュータ・プロセッサと、1または複数のコンピュータ可読ストレージ媒体と、前記1または複数のコンピュータ可読ストレージ媒体に格納される、方法を実装する1または複数のコンピュータ・プロセッサによる実行ためのプログラム命令とを含み、前記方法は、
    前記所与のデータセットの異なるクラスタを定義するためのパラメータの値を取得するステップと、
    各所与のデータセットのメトリックを決定するステップであって、各所与のデータセットの前記メトリックは、前記クラスタのうちの1つに対するそれぞれの所与のデータセットのメンバーシップのレベルおよび前記クラスタのうちの同一の1つの重心に対する前記それぞれの所与のデータセットの距離に依存する、決定するステップと、
    前記所与のデータセットの前記メトリックの比較に基づいて、前記AIモジュールを更新するために前記所与のデータセットから、前記所与のデータセットの少なくとも1つを選択するステップと
    を含む、コンピュータ・システム。
JP2022556547A 2020-03-26 2021-02-24 人工知能モジュールを更新するためにデータセットを選択するための方法 Pending JP2023518789A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/830,905 2020-03-26
US16/830,905 US20210304059A1 (en) 2020-03-26 2020-03-26 Method for selecting datasets for updating an artificial intelligence module
PCT/IB2021/051532 WO2021191703A1 (en) 2020-03-26 2021-02-24 Method for selecting datasets for updating artificial intelligence module

Publications (1)

Publication Number Publication Date
JP2023518789A true JP2023518789A (ja) 2023-05-08

Family

ID=77857257

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022556547A Pending JP2023518789A (ja) 2020-03-26 2021-02-24 人工知能モジュールを更新するためにデータセットを選択するための方法

Country Status (8)

Country Link
US (1) US20210304059A1 (ja)
JP (1) JP2023518789A (ja)
KR (1) KR20220149541A (ja)
CN (1) CN115362452A (ja)
AU (1) AU2021240437A1 (ja)
DE (1) DE112021000251T5 (ja)
GB (1) GB2609143A (ja)
WO (1) WO2021191703A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022209903A1 (de) 2022-09-20 2024-03-21 Siemens Mobility GmbH Sichere steuerung von technisch-physikalischen systemen

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8363961B1 (en) * 2008-10-14 2013-01-29 Adobe Systems Incorporated Clustering techniques for large, high-dimensionality data sets
US20160328406A1 (en) * 2015-05-08 2016-11-10 Informatica Llc Interactive recommendation of data sets for data analysis
US10540358B2 (en) * 2016-06-20 2020-01-21 Microsoft Technology Licensing, Llc Telemetry data contextualized across datasets
US20190102675A1 (en) * 2017-09-29 2019-04-04 Coupa Software Incorporated Generating and training machine learning systems using stored training datasets
US11164106B2 (en) * 2018-03-19 2021-11-02 International Business Machines Corporation Computer-implemented method and computer system for supervised machine learning
US11327156B2 (en) * 2018-04-26 2022-05-10 Metawave Corporation Reinforcement learning engine for a radar system

Also Published As

Publication number Publication date
GB202215364D0 (en) 2022-11-30
DE112021000251T5 (de) 2022-09-08
AU2021240437A1 (en) 2022-09-01
US20210304059A1 (en) 2021-09-30
KR20220149541A (ko) 2022-11-08
WO2021191703A1 (en) 2021-09-30
CN115362452A (zh) 2022-11-18
GB2609143A (en) 2023-01-25

Similar Documents

Publication Publication Date Title
US11574122B2 (en) Method and system for joint named entity recognition and relation extraction using convolutional neural network
US11488055B2 (en) Training corpus refinement and incremental updating
US11048870B2 (en) Domain concept discovery and clustering using word embedding in dialogue design
US20210174023A1 (en) Systems and Methods for Explicit Memory Tracker with Coarse-To-Fine Reasoning in Conversational Machine Reading
US10650315B2 (en) Automatic segmentation of data derived from learned features of a predictive statistical model
JP7448562B2 (ja) 人工知能のための希な訓練データへの対処
JP6172317B2 (ja) 混合モデル選択の方法及び装置
Ma et al. Jointly trained sequential labeling and classification by sparse attention neural networks
JP7342971B2 (ja) 対話処理装置、学習装置、対話処理方法、学習方法及びプログラム
CN114631099A (zh) 人工智能透明度
KR20220116110A (ko) 인공 신경망의 추론 데이터에 대한 신뢰도를 판단하는 방법
JP2023518789A (ja) 人工知能モジュールを更新するためにデータセットを選択するための方法
US20210150358A1 (en) System and method for controlling confidential information
US11645539B2 (en) Machine learning-based techniques for representing computing processes as vectors
US20210149793A1 (en) Weighted code coverage
US20210174191A1 (en) Automated fine-tuning of a pre-trained neural network for transfer learning
WO2022191073A1 (en) Distributionally robust model training
TW202324202A (zh) 從基於注意力之模型提取解釋
CN115629995A (zh) 基于多依赖lstm的软件缺陷定位方法、系统及设备
US10929761B2 (en) Systems and methods for automatically detecting and repairing slot errors in machine learning training data for a machine learning-based dialogue system
US20210397545A1 (en) Method and System for Crowdsourced Proactive Testing of Log Classification Models
US11593569B2 (en) Enhanced input for text analytics
US11636134B2 (en) Systems and methods for automatic change request management using similarity metric computations
US20220391631A1 (en) Post-hoc local explanations of black box similarity models
US20220398452A1 (en) Supervised similarity learning for covariate matching and treatment effect estimation via self-organizing maps

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220929

RD16 Notification of change of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7436

Effective date: 20221007

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230721