Thuật toán học máy để xếp hạng


10

Tôi đã có một tập hợp các phần tử mà tôi có thể mô tả theo đặc điểm. Như vậy:Xn

xi:{ci1,ci2,,cin}xiX

trong đócij là đánh giá (số) cho phần tử theo các đặc điểm j . Vì vậy, các yếu tố của tôi có thể được xem như là các điểm trong không gian thứ n .Tôijn

Theo bài đọc của tôi, tồn tại các thuật toán như "Trình phân loại Bayes" có thể cung cấp cho tôi loại câu trả lời "có" hoặc "không" trên bất kỳ yếu tố nào trong tập hợp của tôi, với điều kiện tôi đã sử dụng "tập huấn luyện" bao gồm một số các phần tử của tập hợp của tôi và kết quả mong đợi của thuật toán. Dựa trên dữ liệu đó, thuật toán sẽ có thể lấy bất kỳ yếu tố nào khác, không phải là một phần của tập huấn luyện và đưa ra câu trả lời "có" hoặc "không" dựa trên những gì nó học được nhờ tập huấn luyện. Điều này thật tuyệt nếu bạn có một số loại ý tưởng về những gì bạn mong đợi (tập huấn luyện) nhưng bạn không chắc chắn về các quy tắc cụ thể mang lại kết quả đó.

Những gì tôi muốn làm với dữ liệu của mình không phải là loại câu trả lời "có" hoặc "không", nhưng tôi muốn giới thiệu một thứ hạng trong các yếu tố. Một số trong số họ là "tốt hơn" so với những người khác. Giống như bộ lọc Bayes, tôi có một ý tưởng chung về những gì tôi mong đợi. Do đó tôi có thể tạo ra một "xếp hạng đào tạo" được lấy từ một tập hợp con các yếu tố của tôi, mà tôi sẽ cung cấp cho MLA. Dựa trên sự huấn luyện đó, nó sẽ có thể xếp hạng cả bộ của tôi.

Để làm điều đó tôi thấy hai cách tiếp cận:

  1. Mỗi yếu tố sẽ được MLA cho điểm, sau đó xếp hạng các yếu tố theo điểm số.
  2. MLA sẽ có thể lấy hai phần tử x j và xác định xem phần tử nào tốt hơn (so sánh theo cặp). Sử dụng quicksort bằng cách sử dụng hoạt động so sánh đó.xTôixj

Lưu ý: dựa trên điểm số, chức năng cặp đôi là không quan trọng để thực hiện và dựa trên chức năng theo cặp, việc tạo điểm số là không quan trọng, vì vậy đây chỉ là hai cách chấp nhận để mang lại kết quả tương tự.

Có ví dụ nào về MLA có thể cung cấp chức năng cho điểm hay chức năng so sánh theo cặp không?

cTôij

Vì vậy, hiện tại quá trình thiết kế của tôi là:

  1. Nhận một ý tưởng về thứ hạng hoàn hảo sẽ là gì
  2. Hãy thử (thủ công) rút ra một thuật toán sẽ xếp hạng các mục như thế
  3. Quan sát kết quả
  4. Điều chỉnh thuật toán

Vì vậy, tôi đã nghĩ về MLA vì điểm khởi đầu của quá trình của tôi là những gì có thể được sử dụng làm dữ liệu đào tạo. Tôi có thể sẽ bắt đầu bằng cách lấy thứ hạng hiện tại, trao đổi vật phẩm theo nhu cầu của tôi và cung cấp thứ đó.

Câu trả lời:


3

Nhiều thuật toán phân loại đã thực hiện chính xác những gì bạn đang tìm kiếm, nhưng thường trình bày câu trả lời của họ cho người dùng dưới dạng phán đoán nhị phân (hoặc n-way). Ví dụ, SVMLight là một triển khai của thuật toán phân loại máy vectơ hỗ trợ; mọi người thường sử dụng điều này để đưa ra phán đoán nhị phân trên một số tập dữ liệu. Tuy nhiên, điều xảy ra dưới mui xe là thuật toán đang gán các phán đoán độ tin cậy đã ký cho dữ liệu. Chúng được ràng buộc giữa -1.0 và 1.0 và là những gì bạn nên sử dụng để xếp hạng dữ liệu của mình!


2

Có vẻ như bạn có thể sử dụng phân tích hồi quy . Ngoài ra, có lẽ bạn cần gán điểm (số thực) cho các yếu tố trong tập huấn luyện của mình, nếu bạn không có chúng. Mặc dù bạn chỉ có thể sử dụng thứ hạng làm giá trị mục tiêu của mình, nhưng nó sẽ khiến bạn có được một mô hình kém nếu bạn chỉ có một bộ mẫu đào tạo nhỏ.


0

Tôi nghĩ rằng bạn đang mong đợi quá nhiều từ các thuật toán học máy. Một máy tính không thể tự quyết định liệu mục 1 có tốt hơn mục 2 hay không. Điều mà thuật toán Machine Learning có thể làm là nếu bạn đưa ra một vài ví dụ mà bạn đã đánh giá một số mục 1 tốt hơn mục 2, thì nó có thể học cách xếp hạng các mục [1]. Nhưng bạn vẫn cần một dữ liệu huấn luyện nơi bạn cung cấp các ví dụ về các mục và với thông tin về việc mục 1 có lớn hơn mục 2 cho tất cả các mục trong dữ liệu đào tạo hay không.

[1] http://www.cs.cornell.edu/people/tj/svm_light/svm_rank.html


Cảm ơn bạn rất nhiều về đường link dẫn. Và tôi hoàn toàn hiểu rằng tôi sẽ cần cung cấp một bộ huấn luyện cho thuật toán để nó có thể xếp hạng các mục tiếp theo.
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.