"JarvisPatrick" (Machine Learning Method)
- Method for FindClusters, ClusterClassify and ClusteringComponents.
- Partitions data into clusters of similar elements using Jarvis–Patrick clustering.
Details & Suboptions
- "JarvisPatrick" is a neighbor-based clustering method. "JarvisPatrick" works for arbitrary cluster shapes and sizes. However, it is parameter sensitive, and can fail when clusters have different densities or are loosely connected.
- The following plots show the results of the "JarvisPatrick" method applied to toy datasets:
-
- The algorithm finds clusters based on the similarity of nearest neighbors of data points, and uses "shared nearest neighbors" as a measure of similarity between points.
- In "JarvisPatrick", neighbors are defined by points within a ball of ϵ radius. Each couple of neighbors that share at least p neighbors belong to the same cluster.
- The following suboptions can be given:
-
"NeighborhoodRadius" Automatic radius ϵ "SharedNeighborsNumber" Automatic minimum number of shared neighbors p
Examples
open allclose allBasic Examples (2)Summary of the most common use cases
Find clusters of nearby values using the "JarvisPatrick" method:

https://wolfram.com/xid/0op7zszqqe15r0t4-20xbsr


https://wolfram.com/xid/0op7zszqqe15r0t4-q8s2rm

Plot clusters in data found using the "JarvisPatrick" method:

https://wolfram.com/xid/0op7zszqqe15r0t4-fj7crm

Options (5)Common values & functionality for each option
DistanceFunction (1)
"NeighborhoodRadius" (2)
Find clusters using "JarvisPatrick":

https://wolfram.com/xid/0op7zszqqe15r0t4-040x9v

Find clusters by specifying the "NeighborhoodRadius" suboption:

https://wolfram.com/xid/0op7zszqqe15r0t4-3656v8

Define a set of two-dimensional data points, characterized by four somewhat nebulous clusters:

https://wolfram.com/xid/0op7zszqqe15r0t4-kqt0v0

Plot different clusterings of the data using the "JarvisPatrick" method by varying the "NeighborhoodRadius":

https://wolfram.com/xid/0op7zszqqe15r0t4-z3ek06

"SharedNeighborsNumber" (2)
Find clusters by varying "NeighborsNumber" suboptions:

https://wolfram.com/xid/0op7zszqqe15r0t4-0rrxoq


https://wolfram.com/xid/0op7zszqqe15r0t4-4onycb

Plot clustering of data points using the "JarvisPatrick" method by varying the "SharedNeighborsNumber":

https://wolfram.com/xid/0op7zszqqe15r0t4-khjy3n

Applications (1)Sample problems that can be solved with this function
Create and visualize noisy 2D moon-shaped training and test datasets:

https://wolfram.com/xid/0op7zszqqe15r0t4-f8bvfg

Train various ClassifierFunctions by varying the "NeighborhoodRadius" using the "JarvisPatrick" method:

https://wolfram.com/xid/0op7zszqqe15r0t4-xpxr9m
Find and visualize different clusterings of the test set, given small changes in "NeighborhoodRadius":

https://wolfram.com/xid/0op7zszqqe15r0t4-eh30f0
