Đo lường sự tương tự giữa các đối tượng

2017-08-12

Introduction

Đo lường sự tương tự (similarity measure) cho biết hai đối tượng giống nhau đến mức nào. Đo lường sự tương tự trong khai phá dữ liệu (data mining) là khoảng cách giữa các chiều được biểu diễn bằng các đặc trưng của các đối tượng. Khoảng cách càng nhỏ, hai đối tượng càng tương tự nhau.

Đo lường sự tương tự giữa các đối tượng là rất quan trọng và là cơ sở để triển khai các kỹ thuật:

  • Nhận dạng (reconize)
  • Phân lớp (classification)
  • Phân cụm (clustering)
  • Dự đoán (prediction)

Dưới đây là những độ đo khoảng cách thông dụng cho các loại dữ liệu khác nhau:

  • Kiểu nguyên, khoảng (integer, interval)
  • Kiểu nhị phân (binary)
  • Kiểu định danh (nominal)
Khoảng cách cho kiểu nguyên, khoảng
Khoảng cách Euclide
Khoảng cách Manhattan
Khoảng cách Minkowski
Khoảng cách có trọng số
Khoảng cách cho kiểu nhị phân

Gọi:

  • p là số biến có giá trị positive của cả 2 đối tượng.
  • q là số biến có giá trị positive của đối tượng thứ i và negative của đối tượng thứ j.
  • r là số biến có giá trị negative của đối tượng thứ i và positive của đối tượng thứ i.
  • s là số biến có giá trị negative của cả 2 đối tượng.
  • t = p + q + r + s là tổng số biến.
Simple Matching Distance
Jaccard’s Distance

Sự khác nhau của hai đối tượng dựa trên các biến nhị phân bất đối xứng (asymmetric binary dissimilarity)

Hamming Distance
Simple Matching Coefficient
Jaccard’s Coefficient

Đo khoảng cách giữa hai đối tượng dựa trên khái niệm tương tự (similarity) thay vì khác nhau (dissimilarity)

Ví dụ

Với xi = (1,1,1,1) và xj = (0,1,0,0), ta có:

  • p = 1 (đặc trưng thứ hai)
  • q = 3 (3 đặc trưng còn lại)
  • r = 0
  • s = 0
  • t = 4
Khoảng cách cho kiểu định danh

Trong nhiều trường hợp, không thể đo lường các biến theo cách định lượng mà chúng có thể được đo lường theo cách phân loại hay định đanh. Đặc trưng chính của biến định danh là được gán nhãn (labeling) và không quan tâm đến thứ tự.

Để tính khoảng cách giữa 2 đối tượng được biểu diễn bởi các biến định danh (hay phân loại), cần quan tâm đến số giá trị phân loại trong mỗi biến:

  • Nếu chỉ có 2 giá trị phân loại, ta có thể dùng cách tính khoảng cách cho biến nhị phân.
  • Nếu số giá trị phân loại lớn hơn 2, chúng ta cần chuyển đổi những giá trị phân loại này sang tập các biến giả (dummy variable) có giá trị nhị phân.

Giả sử một đối tượng được biểu diễn bởi hai biến là GenderMode (phương tiện đi lại). Biến Gender là biến nhị phân có 2 giá trị 0 = male và 1 = female, biến Mode gồm 3 giá trị là Bus, TrainVan. Ta chuyển mỗi giá trị của biến Mode sang biến giả nhị phân, ví dụ chọn Mode = Train thì biến giả nhị phân là (0,1,0).

Giả sử có 3 đối tượng:

  • Alex (Male) sử dụng Bus.
  • Brian (Male) sử dụng Van.
  • Cherry (Female) sử dụng Bus.

3 đối tượng này được biểu diễn như sau:

  • Alex = (0, (1,0,0))
  • Brian = (0, (0,0,1))
  • Cherry = (1, (1,0,0))

Để tính khoảng cách giữa các đối tượng, ta cần tính khoảng cách cho mỗi biến ban đầu.

Giả sử sử dụng Hamming distance:

  • Distance(Alex, Brian) = (0, 2), tổng khoảng cách là 0 + 2 = 2.
  • Distance(Alex, Cherry) = (1, 0), tổng khoảng cách là 1 + 0 = 1.
  • Distance(Brian, CherryCherry) = (1, 2), tổng khoảng cách là 1 + 2 = 3.

Khoảng cách cũng có thể là tỉ lệ giữa số đặc trưng khác nhau và tổng số biến giả:

  • Distance(Alex, Brian) = (0, 2/3), tổng khoảng cách là (0 + 2/3) / 2 = 1/3.
  • Distance(Alex, Cherry) = (1, 0), tổng khoảng cách là (1 + 0) / 2 = 1/2.
  • Distance(Brian, CherryCherry) = (1, 2/3), tổng khoảng cách là (1 + 2/3) / 2 = 5/6.