2010-11-04 37 views
6

Tôi có một vấn đề thuật toán có thể được giảm xuống còn nhiệm vụ này:Expert hệ thống thuật toán

Giả sử chúng ta có một danh sách các n bệnh và m triệu chứng.
Đối với mỗi bệnh d và triệu chứng s, chúng tôi có một trong ba lựa chọn:

  • các triệu chứng tương quan thuận với căn bệnh này: s => d
  • các triệu chứng là tỷ lệ nghịch với căn bệnh này: s => ~d
  • sự triệu chứng không tương quan với bệnh

Mục tiêu của thuật toán là tạo danh sách có/không có câu hỏi liên quan đến ymafa (hoặc thậm chí tốt hơn - một cây nhị phân của câu hỏi), có thể suy ra bệnh chính xác theo các triệu chứng.

Bất kỳ tham chiếu nào đến thuật toán cụ thể, công cụ phần mềm có liên quan và thậm chí cả biệt ngữ miền cụ thể sẽ rất được đánh giá cao.

+0

tôi nghĩ là tương tự cho 'tối thiểu Kiểm tra Set' vấn đề –

+0

Không có đủ thông tin trong các tùy chọn để loại trừ bất cứ điều gì ra ngoài, trừ khi các mối tương quan tích cực và tiêu cực là tuyệt đối. Trong cuộc sống thực, điều này không bao giờ xảy ra. –

Trả lời

5

Bạn trường hợp sử dụng một cây quyết định: http://en.wikipedia.org/wiki/Decision_tree_learning

Về cơ bản tìm cây tối ưu (tức là sẽ giảm thiểu số lượng trung bình các câu hỏi trước khi bạn có thể xác định được sạch bệnh) là NP-hard.

Bạn có thể sử dụng thuật toán tham lam và sau đó cố gắng tối ưu hóa thuật toán đó (nếu bạn cần).

Ở mỗi bước bạn muốn giảm nhiều nhất có thể, số lượng các số liệu vẫn còn "có thể".

Bạn đang ở đầu cây của bạn và do đó bạn có ba tùy chọn có thể cho một s nhất định, đếm số lượng các bệnh trong mỗi tùy chọn: pcncuc.

Trên một mặt bạn có pc trên nc khác và uc bạn không thể nói bất cứ điều gì (bạn có thể nhìn vào hai mức độ cây của bạn để có một số thông tin nhưng bây giờ chúng tôi không làm điều đó).

trường hợp kịch bản tồi tệ nhất Vì vậy, bạn có pc/nc + uc hoặc pc + uc/nc, chọn s giảm thiểu trường hợp xấu nhất (ví dụ: nhiều một bên, chỉ có một vài mặt khác).

Bạn cần phải giảm thiểu abs(pc - (nc + uc)) + abs ((pc+uc) - nc).

Bây giờ bạn có s cho câu hỏi đầu tiên của mình và bạn có thể lặp lại xây dựng cây của mình.

2

Tên miền của bạn thực sự là 'nhị phân' hay thực tế, bạn có muốn sử dụng hệ số tương quan cho mỗi cặp triệu chứng/bệnh như một giá trị số không? Điều này sẽ cho phép các mối tương quan mạnh ảnh hưởng đến kết quả hơn là mối tương quan yếu.

Nếu có thì bạn có thể muốn xem Support Vector Machines phân tích dữ liệu và nhận dạng mẫu.

0

Nếu bạn chỉ cần tham khảo, hãy xem sách Russel & Norvig.Tôi không có bản sao của tôi ngay bây giờ, nhưng tôi có thể cập nhật câu trả lời này với một số đề xuất chương vào ngày mai.

1

Vấn đề rất giống với câu hỏi về vi khuẩn/kháng sinh của Mycin, tiền thân của công nghệ hệ thống chuyên gia dựa trên quy tắc tổng quát hơn những năm 1980. Đã có các chương trình chẩn đoán y khoa khác được phát triển với các công cụ kết quả.

http://en.wikipedia.org/wiki/Mycin