Là sự tương tự cosine giống hệt với khoảng cách euclide bình thường hóa l2?


27

Giống hệt ý nghĩa, rằng nó sẽ tạo ra kết quả giống hệt nhau cho một sự tương đồng giữa bảng xếp hạng một vector u và một tập hợp các vectơ V .

Tôi có một mô hình không gian vectơ có thước đo khoảng cách (khoảng cách euclide, độ tương tự cosin) và kỹ thuật chuẩn hóa (none, l1, l2) làm tham số. Theo hiểu biết của tôi, kết quả từ các cài đặt [cosine, none] phải giống hệt nhau hoặc ít nhất là thực sự thực sự giống với [euclidean, l2], nhưng chúng không như vậy.

Thực sự có một cơ hội tốt hệ thống vẫn còn lỗi - hoặc tôi có điều gì sai nghiêm trọng về vectơ?

chỉnh sửa: Tôi quên đề cập rằng các vectơ được dựa trên số lượng từ từ tài liệu trong một kho văn bản. Đưa ra một tài liệu truy vấn (mà tôi cũng biến đổi trong một vectơ đếm từ), tôi muốn tìm tài liệu từ kho văn bản của mình giống với nó nhất.

Chỉ cần tính toán khoảng cách euclide của chúng là một thước đo thẳng, nhưng trong loại nhiệm vụ tôi làm, độ tương tự cosin thường được ưa thích như một chỉ báo tương tự, bởi vì các vectơ chỉ khác nhau về chiều dài vẫn được coi là bằng nhau. Tài liệu có độ tương tự khoảng cách / cosine nhỏ nhất được coi là giống nhau nhất.


Tất cả phụ thuộc vào "mô hình không gian vectơ" của bạn làm gì với những khoảng cách này. Bạn có thể cụ thể hơn về những gì mô hình làm?
whuber

Xin lỗi, đôi khi thật khó để thoát ra khỏi đầu của tôi. Tôi đã thêm một đặc điểm kỹ thuật.
Arne

Bạn vẫn không mô tả bất kỳ mô hình. Trên thực tế, manh mối duy nhất bạn còn lại liên quan đến "loại nhiệm vụ (bạn) làm việc tại" là thẻ nlp - nhưng nó quá rộng nên nó không giúp được gì nhiều. Những gì tôi hy vọng bạn có thể cung cấp, để mọi người có thể hiểu câu hỏi và cung cấp câu trả lời tốt, là thông tin đầy đủ để có thể tìm ra chính xác cách bạn đang sử dụng thước đo khoảng cách của mình và cách xác định "kết quả" có thể là gì.
whuber

thống kê.stackexchange.com / 11/1515/3277 . Bất kỳ sự tương tự kiểu sscp góc nào cũng có thể chuyển đổi thành khoảng cách euclide tương ứng của nó.
ttnphns

Câu trả lời:


31

Đối với vectơ không chuẩn hóa , chúng ta có Euclide bình phương khoảng cách tỷ lệ thuận với khoảng cách cosine , Nghĩa là, ngay cả khi bạn đã bình thường hóa dữ liệu của mình và thuật toán của bạn là bất biến đối với việc thu nhỏ khoảng cách, bạn vẫn sẽ mong đợi sự khác biệt vì bình phương.2x,y

||x||2=||y||2=1,
||xy||22=(xy)(xy)=xx2xy+yy=22xy=22cos(x,y)

Điều này sẽ có ảnh hưởng đến thứ hạng? Có nghĩa là, nếu tôi sắp xếp một số vectơ 'v_i trong V' theo khoảng cách cosin của chúng đến một vectơ 'u', tôi nhận được một thứ tự cụ thể cho chúng. Việc xếp hạng các vectơ tương tự với khoảng cách euclide chuẩn hóa l_2 sẽ tạo ra cùng một thứ tự?
Arne

2
iirc, vì bình phương là một phép biến đổi đơn hình (đối với các số dương), nó không thể thay đổi thứ tự của một chuỗi được sắp xếp theo độ dài.
Arne

5
Bạn đã đúng, nếu tất cả những gì bạn làm là xếp hạng các vectơ theo khoảng cách của chúng thành , sử dụng khoảng cách cosine sẽ cho kết quả tương tự như khoảng cách Euclide (đối với vectơ chuẩn hóa). u
Lucas

Cảm ơn bạn, bạn có tình cờ có một nguồn có thể trích dẫn cho kết nối này không?
Arne

1
Chà, tôi đoán 'Ale Ale tuyến tính tôi' phải đủ rồi;) cảm ơn lần nữa vì cái nhìn sâu sắc!
Arne

5

Độ tương tự cosine chuẩn được định nghĩa như sau trong không gian Euclidian, giả sử các vectơ cột và : Điều này giảm xuống sản phẩm bên trong tiêu chuẩn nếu vectơ của bạn được chuẩn hóa thành định mức đơn vị (tính bằng l2). Trong khai thác văn bản, loại chuẩn hóa này không phải là chưa từng thấy, nhưng tôi sẽ không coi đó là tiêu chuẩn.uv

cos(u,v)=u,vuv=uTvuv[1,1].
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.