線形回帰の系統的/測定誤差


8

一連のデータがあり、測定の不確かさ{(\ Delta x_i、\ Delta y_i)}(測定装置からの系統誤差の伝搬から生じる)がそれぞれ異なると仮定しますポイント。データセットに対して線形回帰を行う場合、勾配の不確実性を計算するにはどうすればよいですか?明示的な手順または式を教えてください。Δは、xはIΔ Y I(xi,yi)(Δxi,Δyi)


2
どの測定誤差がより大きなものかを知っていますか?
Dimitriy V. Masterov

1
デルタとは、連続した測定値の違いを意味しますか?データはシーケンシャルですか?エラーには相関関係があると思いますか?相関関係が弱まることを期待していますか?何らかの独立したレプリケーションはありますか?具体的な回答を提供するには、さらに情報が必要です。
user3903581

あなたが探している用語はエラー伝播です。入力側にエラーがあり、そこから2つのパラメーターを計算(より具体的には、推定)します。残念ながら、「線形回帰」という名前は(人気のある)モデルを表すだけで、パラメーターを推定する方法は表しません。最もよく使用される方法については、おそらく解を調べることができます(たとえば、最小二乗法)。そうでない場合は、分析的に計算するか、数値評価で概算できます。
ケルビム2018年

回答:


4

whereとして実験をモデル化でき 真の値を示す、は測定エラー、は観測から独立した「固定」コンポーネント(センサーの誤ったキャリブレーションから発生する可能性があります)、は観測から観察し、私たちがランダムとして扱う多くの可能な要因に対応します。のy I = Y * I + V I U I = ˉ U + V 私はV iの = ˉ V + uと私はxは* IY * I U IV I ˉ Uˉ V U V

xi=xi+u~i
yi=yi+v~i
u~i=u¯+vi
v~i=v¯+ui
xi,yiあなたvあなた¯v¯あなたv

単純な線形回帰は あり、勾配のOLS推定は ただし、得られるのはβ = C O V X *Y *

y=α+βバツ+e
β =COVXY
β^=CovバツyVarバツ
β=CovバツyVarバツ=Covバツ+あなたy+vVarバツ+あなた=Covバツy+Covバツv+Covyあなた+CovあなたvVarバツ+Varあなた+2Covバツあなた

ここで、がと相互に無相関であると仮定します(エラーの性質についてより多くの推論がある場合に改善できるかなり強い仮定)。次に、 をサンプル変動として 推定できます。も推定する必要があります。複数回観察できる実験がある場合、1つの簡単なアプローチは、 ] を推定することです。vあなたバツy

β=βσバツ2σバツ2+σあなた2βσ^バツ2σ^あなた2σ^バツ2=βλ^
σ^バツ2バツσあなた2バツσあなた2=E[σバツ2|バツ

これで、たとえばブートストラップメソッドで計算されたを使用して、を修正し、。σ^β2β^=β/λ^

σ^β^2=σ^β2λ^2

3

@yshilovによって与えられた答えは、測定誤差を誤差項に考慮することによって間違いなく素晴らしいと思い、結果を大幅に推定します

β=βσバツ2σバツ2+σあなた2

詳しく説明すると、このベータには、推定量が偏っているが0に偏っているという特別な特性があります。具体的には、線形回帰の場合、Eβ^1=β1[σバツ2+σバツδσバツ2+2σバツδ+σδ2]

証明は次のとおりです。単純な線形回帰では、 測定エラーの場合、、、および、私たちが得る と仮定すると、、と真の予測値の分散

β^1=Σ=1バツバツ¯yΣ=1バツバツ¯2
バツO=バツ=δyO=y+εy=β0+β1バツ
yO=β0+β1バツOδ+ε=β0+β1バツO+εβ1δ
Eε=Eδ=0varε=σε2varδ=σδ2=1Σ=1δδ¯2σバツ2=Σバツバツ¯2真の予測子と誤差の相関、次にσバツδ=covバツδ=1Σ=1バツバツ¯δδ¯

covバツOδ=EバツOδEバツOEδ=EバツOδ=E[バツ+δδ]=Eバツδ+Eδ2
=[EバツδEバツEδ]+[varδ+[Eδ]2]=covバツδ+σδ2=σバツδ+σδ2
次に、と共分散の双線形性プロパティにより、期待値は バツ¯=Eバツβ^1
Eβ^1=E[Σ=1バツOバツ¯OyOΣ=1バツOバツ¯O2]=EΣ=1バツOyOEΣ=1バツ¯OyOΣ=1E[バツOEバツO2]=EΣ=1バツOyOEバツOEΣ=1yOΣ=1varバツO
=i=1ncov(yiO,xiO)i=1nvar(xiO)=i=1ncov(β0+β1xiO+ϵiβ1δi, xiO)i=1nvar(xiO)=β1i=1nvar(xiO)β1i=1ncov(xiO,δi)i=1nvar(xiO)
=β1[1i=1ncov(xiO,δi)/ni=1nvar(xiA+δi)/n]=β1[1σxδ+σδ2σx2+2cov(xiA,δi)+σδ2]=β1[σx2+σxδσx2+2σxδ+σδ2]
必要に応じて、。したがって、結果は定評があります。E(β^1)=β1[σx2+σxδσx2+2σxδ+σδ2]

1

私は同様の問題を抱えています- ここに投稿されました -まだ特定の答えはありません。今のところ私がやったことは、非常によく似たXのセットを集めて、それらの行の中でYに大きな変化があるかどうかを確認することです。別の種類のアプローチは、シミュレーションです。データセットから単一のXを使用しますが、予測子の系統的エラー(rnorm(...、0,0.3)など)に従って行を複製します。勾配の信頼区間は、系統誤差範囲に似ている場合があります。


0

データにはパラメトリックブートストラップをお勧めします。これは、実際のデータセットに類似しているが、各観測の不確実性によって暗示される程度が異なる新しいデータセットを生成することを意味します。

そのための疑似コードを以下に示します。rnormR言語では通常のように、へのベクトル入力を使用していることに注意してください。また、あなたがと呼んでいるものは標準エラーであると想定しています。Δ

For each b in 1...B:
    x_PB = rnorm(x, x_se)
    y_PB = rnorm(y, y_se)
    r[b] = cor(x_PB, y_PB)

次に、rの値の分布を確認します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.