Jaccard 유사성 지수에 대한 간단한 설명


Jaccard 유사성 지수는 두 데이터 세트 간의 유사성을 측정한 것입니다.

Paul Jaccard 가 개발한 지수 범위는 0부터 1까지입니다. 1에 가까울수록 두 데이터 세트가 더 유사하다는 것을 의미합니다.

Jaccard 유사성 지수는 다음과 같이 계산됩니다.

Jaccard 유사성 = (두 세트의 관측치 수) / (두 세트의 관측치 수)

또는 표기법 형식으로 작성하면 다음과 같습니다.

J(A, B) = |A∩B| / |A∪B|

두 데이터세트가 정확히 동일한 멤버를 공유하는 경우 Jaccard 유사성 지수는 1이 됩니다. 반대로 공통 멤버가 없으면 유사성은 0이 됩니다.

다음 예는 몇 가지 다른 데이터 세트에 대한 Jaccard 유사성 지수를 계산하는 방법을 보여줍니다.

예시 1: Jaccard 유사성

다음과 같은 두 가지 데이터 세트가 있다고 가정합니다.

 A = [0, 1, 2, 5, 6, 8, 9]
B = [0, 2, 3, 4, 5, 7, 9]

그들 사이의 Jaccard 유사성을 계산하기 위해 먼저 두 세트의 총 관측치 수를 찾은 다음 두 세트의 총 관측치 수로 나눕니다.

  • 둘 다의 관측치 수: {0, 2, 5, 9} = 4
  • 다음 중 하나의 관측치 수: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} = 10
  • Jaccard 유사성: 4/10 = 0.4

Jaccard 유사성 지수는 0.4 로 나타났습니다.

예시 2: Jaccard 유사성(계속)

다음과 같은 두 가지 데이터 세트가 있다고 가정합니다.

 C = [0, 1, 2, 3, 4, 5]
D = [6, 7, 8, 9, 10]

그들 사이의 Jaccard 유사성을 계산하기 위해 먼저 두 세트의 총 관측치 수를 찾은 다음 두 세트의 총 관측치 수로 나눕니다.

  • 둘 다의 관찰 수: {} = 0
  • 다음 중 하나의 관측치 수: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10} = 11
  • Jaccard 유사성: 0/11 = 0

Jaccard 유사성 지수는 0 으로 나타났습니다. 이는 두 데이터 세트가 공통 멤버를 공유하지 않음을 나타냅니다.

예 3: 문자의 Jaccard 유사성

숫자가 아닌 문자가 포함된 데이터 세트에 대해 Jaccard 유사성 지수를 사용할 수도 있습니다.

예를 들어 다음과 같은 두 가지 데이터 세트가 있다고 가정합니다.

 E = ['cat', 'dog', 'hippo', 'monkey']
F = ['monkey', 'rhino', 'ostrich', 'salmon']

그들 사이의 Jaccard 유사성을 계산하기 위해 먼저 두 세트의 총 관측치 수를 찾은 다음 두 세트의 총 관측치 수로 나눕니다.

  • 둘 다의 관측치 수: {‘monkey’} = 1
  • 둘 중 하나의 관측치 수: {‘고양이’, ‘개’, 하마’, ‘원숭이’, ‘코뿔소’, ‘타조’, ‘연어’} = 7
  • Jaccard 유사성: 1/7 = 0.142857

Jaccard 유사성 지수는 0.142857 로 나타났습니다. 이 숫자는 매우 낮으며 이는 두 세트가 상당히 다르다는 것을 나타냅니다.

자카드 거리

Jaccard 거리는 두 데이터 세트 간의 차이점을 측정하고 다음과 같이 계산됩니다.

Jaccard 거리 = 1 – Jaccard 유사성

이 측정을 통해 두 데이터 세트가 얼마나 다른지 또는 얼마나 다른지 에 대한 아이디어를 얻을 수 있습니다.

예를 들어 두 데이터 세트의 Jaccard 유사성이 80%인 경우 Jaccard 거리는 1 – 0.8 = 0.2 또는 20%가 됩니다.

추가 리소스

다음 튜토리얼에서는 다양한 통계 소프트웨어를 사용하여 Jaccard 유사성을 계산하는 방법을 설명합니다.

R에서 Jaccard 유사성을 계산하는 방법
Python에서 Jaccard 유사성을 계산하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다