Jaccard index

The Jaccard index, also known as the Jaccard similarity coefficient, is a statistic used for comparing the similarity and diversity of sample sets.

The Jaccard coefficient is defined as the size of the intersection divided by the size of the union of the sample sets:

$$ J(A,B) = |A \cap B|/|A \cup B|$$.

The Jaccard distance, which measures dissimilarity between sample sets, is obtained by dividing the difference of the sizes of the union and the intersection of two sets by the size of the union, or, simpler, by subtracting the Jaccard coefficient from 1:

$$ J_{\delta}(A,B) = 1 - J(A,B) = { { |A \cup B| - |A \cap B| } \over |A \cup B| }$$.

Similarity of Asymmetric Binary Attributes
Given two objects, A and B, each with n binary attributes, the Jaccard coefficient is a useful measure of the overlap that A and B share with their attributes. Each attribute of A and B can either be 0 or 1. The total number of each combination of attributes for both A and B are specified as follows:
 * $$M_{11}$$ represents the total number of attributes where A and B both have a value of 1.
 * $$M_{01}$$ represents the total number of attributes where the attribute of A is 0 and the attribute of B is 1.
 * $$M_{10}$$ represents the total number of attributes where the attribute of A is 1 and the attribute of B is 0.
 * $$M_{00}$$ represents the total number of attributes where A and B both have a value of 0.

Each attribute must fall into one of these four categories, meaning that
 * $$M_{11} + M_{01} + M_{10} + M_{00} = n $$.

The Jaccard similarity coefficient, J, is given as
 * $$J = {M_{11} \over M_{01} + M_{10} + M_{11}} $$.

The Jaccard distance, J', is given as
 * $$J' = {M_{01} + M_{10} \over M_{01} + M_{10} + M_{11}} $$.

Tanimoto Coefficient (Extended Jaccard Coefficient)
Cosine similarity is a measure of similarity between two vectors of n dimensions by finding the angle between them, often used to compare documents in text mining. Given two vectors of attributes, A and B, the cosine similarity, $$\theta$$, is represented using a dot product and magnitude as
 * $$ \theta = \arccos {A \cdot B \over \|A\| \|B\|}$$.

For text matching, the attribute vectors A and B are usually the Tf-idf vectors of the documents.

Since the angle, $$\theta$$, is in the range of $$[0,\pi]$$, the resulting similarity will yield the value of $$\pi$$ as meaning exactly opposite, $$\pi/2$$ meaning independent, 0 meaning exactly the same, with in-between values indicating intermediate similarities or dissimilarities.

This cosine similarity metric may be extended such that it yields the Jaccard Coefficient in the case of binary attributes. This is the Tanimoto Coefficient, $$T(A,B)$$, represented as
 * $$ T(A,B) = {A \cdot B \over \|A\|^2 +\|B\|^2 - A \cdot B}$$.