Java и Weka, как предоставить набор тестов и предсказать атрибут - PullRequest
0 голосов
/ 12 мая 2019

У меня есть набор поездов, я строю два кластера, используя алгоритм SimpleKMeans, и мне нужно знать, как предоставить тестовый набор для моей модели и получить ответ.

Я нашел несколько решений, но только для классификаторов (ZeroR, OneR и т. Д.) И ни одного для тестирования кластеров (SimpleKmeans, FatherFirst ...)

         private Instances data;
         private SimpleKMeans kMeans = new SimpleKMeans();


        data.setClassIndex(data.numAttributes() - 1);
        Remove filter = new Remove();
        filter.setAttributeIndices("" + (data.classIndex() + 1));
        filter.setInputFormat(data);
        Instances dataClusterer = Filter.useFilter(data, filter);
        kMeans.buildClusterer(dataClusterer);

        ClusterEvaluation eval = new ClusterEvaluation();
        eval.setClusterer(kMeans);
        eval.evaluateClusterer(data);


        return eval.clusterResultsToString();


The above code is use for "Classes to cluster evaluation", in my case I use my last class to create two clusters (YES or NO) :
   Final cluster centroids:
                               Cluster#
Attribute           Full Data         0         1
                      (614.0)   (472.0)   (142.0)
=================================================
Gender                   Male      Male      Male
Married                   Yes       Yes       Yes
Dependents                  0         0         1
Education            Graduate  Graduate  Graduate
Self_Employed              No        No        No
ApplicantIncome     5403.4593 5289.7331 5781.4789
CoapplicantIncome   1621.2458 1591.6655  1719.569
LoanAmount           146.4122  146.0406  147.6471
Loan_Amount_Term          342  347.4534  323.8732
Credit_History         0.8422    0.8983    0.6557
Property_Area       Semiurban Semiurban     Urban


Cluster 0 <-- Y
Cluster 1 <-- N
...