Tính độ không đảm bảo của độ dốc hồi quy tuyến tính dựa trên độ không đảm bảo của dữ liệu


12

Làm cách nào để tính độ không đảm bảo của độ dốc hồi quy tuyến tính dựa trên độ không đảm bảo của dữ liệu (có thể trong Excel / Mathicala)?

Ví dụ: Ví dụ cốt truyện Chúng ta có các điểm dữ liệu (0,0), (1,2), (2,4), (3,6), (4,8), ... (8, 16), nhưng mỗi giá trị y có độ không đảm bảo là 4. Hầu hết các hàm tôi tìm thấy sẽ tính độ không đảm bảo là 0, vì các điểm hoàn toàn khớp với hàm y = 2x. Nhưng, như trong hình, y = x / 2 cũng khớp với các điểm. Đó là một ví dụ phóng đại, nhưng tôi hy vọng nó cho thấy những gì tôi cần.

EDIT: Nếu tôi cố gắng giải thích thêm một chút, trong khi mọi điểm trong ví dụ có một giá trị nhất định của y, chúng tôi giả vờ rằng chúng tôi không biết liệu điều đó có đúng không. Ví dụ, điểm đầu tiên (0,0) thực sự có thể là (0,6) hoặc (0, -6) hoặc bất cứ thứ gì ở giữa. Tôi đang hỏi liệu có một thuật toán trong bất kỳ vấn đề phổ biến nào có vấn đề này trong tài khoản không. Trong ví dụ, các điểm (0,6), (1,6,5), (2,7), (3,7,5), (4,8), ... (8, 10) vẫn nằm trong phạm vi không chắc chắn, do đó chúng có thể là các điểm đúng và đường thẳng kết nối các điểm đó có phương trình: y = x / 2 + 6, trong khi phương trình chúng ta nhận được từ việc không bao gồm các yếu tố không chắc chắn có phương trình: y = 2x + 0. Vì vậy, độ không chắc chắn của k là 1,5 và của n là 6.

TL; DR: Trong hình, có một dòng y = 2x được tính toán bằng cách sử dụng khớp vuông nhỏ nhất và nó phù hợp với dữ liệu một cách hoàn hảo. Tôi đang cố gắng tìm bao nhiêu k và n trong y = kx + n có thể thay đổi nhưng vẫn phù hợp với dữ liệu nếu chúng ta biết sự không chắc chắn trong các giá trị y. Trong ví dụ của tôi, độ không đảm bảo của k là 1,5 và trong n là 6. Trong hình ảnh có dòng phù hợp 'tốt nhất' và một dòng chỉ vừa đủ với các điểm.


1
Nếu bạn có sự không chắc chắn trong của mình, bạn thường không nên sử dụng hồi quy tuyến tính thông thường vì nó bị sai lệch (mặc dù những sự không chắc chắn nhỏ sẽ dẫn đến sai lệch nhỏ; có thể bạn không quan tâm lắm). Là sự không chắc chắn trong y của bạn luôn luôn không đổi hoặc chúng thay đổi? Làm thế nào là bạn phù hợp với dòng của bạn? x
Glen_b -Reinstate Monica

Tôi chủ yếu hỏi về sự không chắc chắn trong y. Nhưng tôi rất vui nếu giải pháp cũng xem xét sự không chắc chắn trong x. Nói chung, chúng không phải là hằng số, nhưng một giải pháp yêu cầu chúng không đổi cũng sẽ ổn, tôi đã thử điều chỉnh với linearfit, fit, findfit trong mathicala và linest (và một hàm tùy chỉnh mà tôi thấy rằng giá trị của các giá trị không chắc chắn) trong vượt trội
bedanec

Bạn có thể giải thích rõ ràng nhất có thể như thế nào các giá trị "không chắc chắn" sẽ liên quan đến những gì sẽ xảy ra dưới sự lặp lại của thí nghiệm không? tức là những gì không chắc chắn đại diện cho những gì không chắc chắn đại diện?
Glen_b -Reinstate Monica

Err ví dụ nếu y là trọng lượng, nhưng thang đo kỹ thuật số chỉ chính xác đến + -6. (Không phải là ví dụ tốt nhất với các giá trị này, nhưng ví dụ: khi tỷ lệ hiển thị 255g, nó có thể là 255.0 hoặc 255.9)
bedanec

Bạn có thể giải thích làm thế nào điều đó sẽ liên quan đến câu đầu tiên của câu hỏi của tôi xin vui lòng?
Glen_b -Reinstate Monica

Câu trả lời:


8

Trả lời "Tôi đang cố gắng tìm bao nhiêu và trong có thể thay đổi nhưng vẫn phù hợp với dữ liệu nếu chúng ta biết sự không chắc chắn trong các giá trị ."kny=kx+ny

Nếu mối quan hệ thực sự là tuyến tính và các lỗi trong là các biến ngẫu nhiên bình thường độc lập với phương tiện bằng 0 và độ lệch chuẩn đã biết thì vùng tin cậy cho là hình elip mà , trong đó là độ lệch chuẩn của lỗi trong , là số cặp , và là phần gãy trên của phân bố chi bình phương với bậc tự do.y100(1α)(k,n)(kxi+nyi)2/σi2<χd,α2σiyid(x,y)χd,α2αd

EDIT - Lấy sai số chuẩn của mỗi là 3 - nghĩa là lấy các thanh lỗi trong biểu đồ để biểu thị khoảng tin cậy xấp xỉ 95% cho mỗi - phương trình cho ranh giới của vùng tin cậy 95% cho là .y i ( k , n ) 204 ( k - 2 ) 2 + 72 n ( k - 2 ) + 9 n 2 = 152.271yiyi(k,n)204(k2)2+72n(k2)+9n2=152.271

nhập mô tả hình ảnh ở đây


4

Tôi đã lấy mẫu trực tiếp ngây thơ với mã đơn giản này trong Python:

import random
import numpy as np
import pylab
def uncreg(x, y, xu, yu, N=100000):
    out = np.zeros((N, 2))
    for n in xrange(N):
        tx = [s+random.uniform(-xu, xu) for s in x]
        ty = [s+random.uniform(-yu, yu) for s in y]
        a, b = np.linalg.lstsq(np.vstack([tx, np.ones(len(x))]).T, ty)[0]
        out[n, 0:2] = [a, b]
    return out
if __name__ == "__main__":
    P = uncreg(np.arange(0, 8.01), np.arange(0, 16.01, 2), 0.1, 6.)
    H, xedges, yedges = np.histogram2d(P[:, 0], P[:, 1], bins=(50, 50))
    pylab.imshow(H, interpolation='nearest', origin='low', aspect='auto',
                 extent=[xedges[0], xedges[-1], yedges[0], yedges[-1]])

và đã nhận được điều này: Biểu đồ kết quả lấy mẫu trực tiếp

Tất nhiên bạn có thể khai thác Pdữ liệu bạn muốn hoặc thay đổi phân phối không chắc chắn.


0

Tôi đã đi săn tương tự trước đây và tôi nghĩ rằng đây có thể là một nơi hữu ích để bắt đầu. Hàm macro excel đưa ra các thuật ngữ phù hợp tuyến tính và độ không đảm bảo của chúng dựa trên các điểm bảng và độ không đảm bảo cho từng điểm trong cả hai tọa độ. Có thể tra cứu bài báo dựa trên quyết định xem bạn có muốn thực hiện nó trong một môi trường khác không, sửa đổi, v.v. (Có một số công việc được thực hiện cho Mathicala.) Nó dường như có tài liệu hướng dẫn tốt trên bề mặt nhưng thiên đường Tôi đã mở macro để xem nó được chú thích tốt như thế nào.

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.