プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

マルチリレーショナルクラスタリングとは何ですか?


マルチリレーショナルクラスタリングは、データオブジェクトをクラスターのグループに分割するフェーズであり、複数のリレーションのデータを使用して、それらの類似性に依存します。 CrossClusは、ユーザーガイダンスによる相互関係クラスタリングを表します。これは、物理的な結合を防ぐためにクラスタリングとタプルIDの伝播でユーザーガイダンスを使用する方法を分析するマルチリレーショナルクラスタリングのアルゴリズムです。

マルチリレーショナルクラスタリングの主な課題は、複数の関係にいくつかの属性があり、一般に、それらのごく一部のみが明確なクラスタリングタスクに関連していることです。

学生をクラスター化でき、属性は、学生が受講したコース、学生の出版物、アドバイザー、学生の研究チームなど、情報のいくつかの要素をカバーします。

ユーザーは通常、データの特定の要素を使用して学生をクラスタリングすることに関心があります(たとえば、研究分野ごとに学生をクラスタリングする)。ユーザーは、必要なアプリケーションとデータのセマンティクスをよりよく理解できます。したがって、単純なクエリ形式のユーザーガイダンスを使用して、高次元のマルチリレーショナルクラスタリングの有効性と品質を向上させることができます。

CrossClusは、ターゲットリレーションと、ユーザーのクラスタリングの目的を定義する1つ以上の関連属性を含むユーザークエリを受け入れます。マルチリレーショナルクラスタリングプロセスでは、CrossClusは複数のリレーションにわたって関連する属性を検索する必要がありました。

CrossClusは、検索フェーズで2つの主要な課題に対処する必要があります。まず、ターゲット関係R t 、は通常、複数の結合パスを介して各非ターゲット関係Rと結合でき、Rの各属性はマルチリレーショナル属性として使用できます。

この大きな検索スペースであらゆるタイプの全数検索を実装することはできません。第2に、多数の属性の間に、ユーザークエリに関連するものと、関連性のないものがあります(たとえば、学生のクラスメートの個人データ)。

CrossClusは、検索フェーズを制限する必要があります。リレーショナルスキーマをグラフとして扱うことができ、関連付けはノードであり、結合はエッジです。ユーザー定義の属性から検索を開始し、現在の属性の近くで有益な属性を繰り返し検索するヒューリスティックな方法を採用しています。この方法では、検索範囲を徐々に接続関係に発展させますが、ランダムな方向に進むことはありません。

CrossClusは、属性がターゲットタプルをクラスター化する方法を確認します。関連する属性が選択されるのは、ユーザー定義の属性との関係によって異なります。 2つの属性がタプルを非常に別々にクラスター化する場合、それらの類似性は低く、関連付けられる可能性は低くなります。同じ方法でタプルをクラスター化する場合は、関連していると見なす必要があります。


  1. 属性とは何ですか?

    属性はデータフィールドであり、データオブジェクトの特性を定義します。名詞の属性、次元、特徴、および変数は、文献で対応して使用されています。ディメンションは通常、データウェアハウジングで使用されます。機械学習の文献は、機能という用語を使用することに影響を与えますが、統計家はメソッドsvariableを好みます。 データマイニングとデータベースの専門家は通常、属性という用語を使用します。ユーザーオブジェクトを定義する属性には、たとえば、顧客ID、名前、住所などがあります。特定の属性の観測値は、観測と呼ばれます。 属性のセットは、特定のオブジェクトを定義できます。これは、属性ベクトル(または特徴

  2. C#の条件付き属性とは何ですか?

    属性は、コンパイラ命令などのメタデータや、コメント、説明、メソッド、クラスなどの他の情報をプログラムに追加するために使用されます。 この事前定義された属性は、実行が指定された前処理識別子に依存する条件付きメソッドをマークします。 DebugやTraceなどの指定された値に応じて、メソッド呼び出しの条件付きコンパイルが発生します。たとえば、コードのデバッグ中に変数の値を表示します。 以下は、条件付き属性の構文です- [Conditional(    conditionalSymbol )] 条件付き属性の操作方法を見てみましょう- 例 #define DEBUG us