KMeans - Evaluation Results

Richhiey Thomas richhiey.thomas at gmail.com
Thu Aug 18 23:59:29 BST 2016


Hello,

Ayush, thanks for that link to your code. It helped me understand how I
could implement things much quicker!

I've currently added a few classes which don't really belong to the public
API (currently) into private headers and used PIMPL with the Cluster class.

The PR failure is because of the old tests which I had written for testing
the old API. I'll have to write completely new tests because the API has
changed dramatically after mid terms. I'll get that fixed soon by writing a
few test cases for the newly implemented functionality.

Currently, the main classes which have data to hide are Cluster, ClusterSet
and Clusterer subclass (currently KMeans). Thus, if we can use PIMPL with
these classes, it could hide quite a lot of the non-public data. As a plus
point, I'm having problems with shifting PointType, Point and Centroid
classes to a private header because of forward referencing problems, so
even these problems can be solved if KMeans is to go with PIMPL.

According to me, it doesn't even affect the interface that the Clusterer
provides because its just an interface. We can still hook up newer
algorithms, which may not want to use PIMPL later. (I maybe wrong here)

Current update - I'll have the PR in good shape by tomorrow by fixing the
travis build and adding in a little more PIMPL.

Thanks.

Regards,
Richhiey
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.xapian.org/pipermail/xapian-devel/attachments/20160819/3c0a3889/attachment.html>


More information about the Xapian-devel mailing list