Phân tích độ không chắc chắn và độ nhạy


8

Tôi có vấn đề sau:

Với đầu vào ( vector chiều) của vô hướng, số nguyên ra lệnh và số nguyên có thứ tự (ví dụ, nhãn) và một hoặc một số kết quả đầu ra , tôi muốn để ước tính:xny

  1. Những đầu vào giải thích tốt nhất các đầu ra.
  2. Mức độ biến thể của một đầu vào ngụ ý các biến thể của đầu ra.

Điều này được cho là có liên quan đến phân tích độ không chắc chắn và độ nhạy, là các lĩnh vực khá rộng. Bạn có biết bất kỳ phương pháp / tài nguyên nào với cách tiếp cận liên quan đến vấn đề của tôi không?


Trong câu hỏi bạn có nghĩa là "nhạy cảm" không phải "nhạy cảm".
Michael R. Chernick

2
Saltelli đã viết một văn bản hữu ích và nhiều bài viết về phân tích độ nhạy.
David LeBauer

Câu trả lời:


18

Bạn có thể thử một trong những công cụ được cung cấp ở đây . Đó là giải pháp MATLAB, mã rất đẹp và phương pháp hiện đại. Đầu tiên tôi sẽ đề nghị bạn thử các công cụ đồ họa từ thư viện để hiểu về dữ liệu.

Vì bạn không cung cấp chi tiết về những gì bạn cần, đây là một số nhận xét về các phương thức ngụ ý:

Phân tích độ nhạy toàn cầu . Phân tích độ nhạy toàn cầu là nghiên cứu về cách độ không đảm bảo trong đầu ra của một mô hình (bằng số hoặc bằng cách khác) có thể được phân bổ cho các nguồn không chắc chắn khác nhau trong đầu vào mô hình. Toàn cầu có thể là một đặc điểm kỹ thuật không cần thiết ở đây, vì nó không phải là thực tế rằng hầu hết các phân tích được đáp ứng trong tài liệu là cục bộ hoặc một yếu tố tại một thời điểm.

Phân tích Monte-Carlo (hoặc dựa trên mẫu) . Phân tích Monte Carlo (MC) dựa trên việc thực hiện nhiều đánh giá với đầu vào mô hình được chọn ngẫu nhiên, sau đó sử dụng kết quả của các đánh giá này để xác định cả độ không đảm bảo trong dự đoán mô hình và phân bổ cho các yếu tố đầu vào đóng góp của chúng vào độ không đảm bảo này. Một phân tích MC liên quan đến việc lựa chọn phạm vi và phân phối cho từng yếu tố đầu vào; tạo một mẫu từ các phạm vi và phân phối được chỉ định trong bước đầu tiên; đánh giá mô hình cho từng yếu tố của mẫu; phân tích độ không đảm bảo và phân tích độ nhạy.

Phương pháp đáp ứng bề mặt . Quy trình này dựa trên sự phát triển của một xấp xỉ bề mặt đáp ứng cho mô hình đang được xem xét. Phép tính gần đúng này sau đó được sử dụng làm đại diện thay thế cho mô hình ban đầu trong phân tích độ không đảm bảo và độ nhạy. Phân tích liên quan đến việc lựa chọn phạm vi và phân phối cho từng yếu tố đầu vào, phát triển thiết kế thử nghiệm xác định kết hợp các giá trị yếu tố để đánh giá mô hình, đánh giá mô hình, xây dựng xấp xỉ bề mặt đáp ứng với mô hình ban đầu, phân tích độ không đảm bảo và phân tích độ nhạy.

Thiết kế sàng lọc . Sàng lọc các yếu tố có thể hữu ích như bước đầu tiên khi xử lý một mô hình có chứa một số lượng lớn các yếu tố đầu vào (hàng trăm). Theo yếu tố đầu vào, chúng tôi có nghĩa là bất kỳ số lượng nào có thể được thay đổi trong mô hình trước khi thực hiện. Đây có thể là một tham số mô hình, hoặc một biến đầu vào hoặc một kịch bản mô hình. Thông thường, chỉ một vài trong số các yếu tố đầu vào và nhóm các yếu tố, có ảnh hưởng đáng kể đến đầu ra mô hình.

Địa phương (Phân tích khác biệt) . SA cục bộ điều tra tác động của các yếu tố đầu vào lên mô hình cục bộ, tức là tại một số điểm cố định trong không gian của các yếu tố đầu vào. SA cục bộ thường được thực hiện bằng cách tính các đạo hàm riêng của các hàm đầu ra đối với các biến đầu vào (phân tích vi phân). Để tính toán đạo hàm bằng số, các tham số đầu vào được thay đổi trong một khoảng nhỏ xung quanh một giá trị danh nghĩa. Khoảng không liên quan đến mức độ hiểu biết của chúng tôi về các biến và thường giống nhau cho tất cả các biến.

HÌNH THỨC-SORM . FORM và SORM là các phương pháp hữu ích khi nhà phân tích không quan tâm đến độ lớn của Y (và do đó biến thiên tiềm năng của nó) nhưng trong xác suất Y vượt quá một số giá trị tới hạn. Ràng buộc (Y-Ycrit <0) xác định siêu bề mặt trong không gian của các yếu tố đầu vào, X. Khoảng cách tối thiểu giữa một số điểm thiết kế cho X và siêu bề mặt là số lượng quan tâm.

Chúc may mắn!


Thật không may, liên kết được đưa ra trong câu trả lời này "ở đây" không còn hoạt động nữa!
Nizar

2

Để giải quyết câu hỏi đầu tiên, tôi khuyên bạn nên xem xét phân tích tương quan chính tắc và một kỹ thuật giảm kích thước gần đây hơn được gọi là hồi quy nghịch đảo cắt lát . Về sau, xem bài báo ban đầu của Ker Chau Li

Hồi quy ngược cắt lát để giảm kích thước (có thảo luận). Tạp chí của Hiệp hội Thống kê Hoa Kỳ, 86 (414): 316 Than327, 1991.

Nó là miễn phí có sẵn trên Internet. Phiên bản với các bình luận (thú vị) bạn có thể phải mua suy nghĩ.

Một số tham số quan trọng cho việc lựa chọn phương thức trong tình huống của bạn là:

  • chiều của đầu vào (n = 3, n = 15 và n = 50 là những vấn đề rất khác nhau);
  • thời gian cần thiết để có được một đánh giá (0,1 giây, 5 phút và 5 giờ cũng là những vấn đề rất khác nhau);
  • các giả định mà bạn có thể đưa ra về mô hình của mình: nó có tuyến tính không? nó có đơn điệu không?

Ngoài ra, bạn đề cập đến một đầu ra đa biến có thể. Nếu bạn có một vài trong số chúng đại diện cho những thứ hoàn toàn khác nhau, chỉ cần thực hiện một số phân tích độ nhạy độc lập.

Nếu chúng tương quan chặt chẽ hoặc chức năng thì nó cũng thay đổi vấn đề rất nhiều.

Bạn nên làm rõ tất cả những điểm này trước khi đi đến một phương pháp nhất định.


2

Bạn có thể sử dụng phương pháp phân tích độ nhạy toàn cầu dựa trên phương sai để trả lời câu hỏi thứ hai. Theo Saltelli (2008) , phân tích độ nhạy là

"... nghiên cứu về mức độ không chắc chắn trong đầu ra của một mô hình có thể được phân bổ cho các nguồn không chắc chắn khác nhau trong đầu vào mô hình ..."

StTôiSTôi

Đối với mục đích của bạn, cho rằng bạn có một trang trại dữ liệu hiện có là một phương pháp thay thế, như được đề xuất bởi Delta Moment - biện pháp độc lập (Borgonovo 2007, Plischke et al. 2013) và được triển khai trong thư viện Python SALib .

Đoạn mã sau, được lấy từ ví dụ cho phép bạn tạo các chỉ số độ nhạy từ dữ liệu hiện có của mình:

from SALib.analyze import dgsm
from SALib.util import read_param_file

# Read the parameter range file
problem = read_param_file('../../SALib/test_functions/params/Ishigami.txt')

# Perform the sensitivity analysis using the model output
# Specify which column of the output file to analyze (zero-indexed)
Si = dgsm.analyze(problem, param_values, Y, conf_level=0.95,     print_to_console=False)
# Returns a dictionary with keys 'vi', 'vi_std', 'dgsm', and 'dgsm_conf'
# e.g. Si['vi'] contains the sensitivity measure for each parameter, in
# the same order as the parameter file
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.