アプリオリ相関
頻出項目セットのマイニングのための、アプリオリ アルゴリズムに基づいた相関ルールの学習
コンストラクタのパラメータ
use Phpml\Association\Apriori;
$associator = new Apriori($support = 0.5, $confidence = 0.5);
学習
相関器を訓練するには、単純に訓練サンプルとラベルを与えます (配列
として)。例:
$samples = [['alpha', 'beta', 'epsilon'], ['alpha', 'beta', 'theta'], ['alpha', 'beta', 'epsilon'], ['alpha', 'beta', 'theta']];
$labels = [];
use Phpml\Association\Apriori;
$associator = new Apriori($support = 0.5, $confidence = 0.5);
$associator->train($samples, $labels);
複合データセットを使って相関器を訓練することができます。予測は全ての訓練データに基づくでしょう。
予測
サンプルのラベルを予測するには、predict
メソッドを使います。1つのサンプルあるいは、サンプルの配列を与えることができます:
$associator->predict(['alpha','theta']);
// return [[['beta']]]
$associator->predict([['alpha','epsilon'],['beta','theta']]);
// return [[['beta']], [['alpha']]]
相関
生成された相関ルールを取得するには、単純にrules
メソッドを使います。
$associator->getRules();
// return [['antecedent' => ['alpha', 'theta'], 'consequent' => ['beta], 'support' => 1.0, 'confidence' => 1.0], ... ]
頻出項目セット
k-length 頻度項目セットを生成するには、単純にapriori
メソッドを使います。
$associator->apriori();
// return [ 1 => [['alpha'], ['beta'], ['theta'], ['epsilon']], 2 => [...], ...]