タグ付けされた質問 「gaussian-process」

ガウス過程は、正規化された確率変数で実現される確率過程を指します。これらの確率変数の有限コレクションには多変量正規分布があるという追加のプロパティがあります。ガウス過程の機構は、回帰と分類の問題に使用できます。

3
ガウス過程回帰おもちゃ問題
ガウスプロセス回帰の直感を得ようとしていたため、簡単な1Dおもちゃの問題を作成して試してみました。入力としてを取り、応答としてをました。(からの「インスピレーション」)バツ私= { 1 、2 、3 }xi={1,2,3}x_i=\{1,2,3\}、Y = X 2y私= { 1 、4 、9 }yi={1,4,9}y_i=\{1,4,9\}y= x2y=x2y=x^2 回帰には、標準的な二乗指数カーネル関数を使用しました。 k (xp、xq)= σ2fexp( − 12 リットル2| バツp− xq|2)k(xp,xq)=σf2exp⁡(−12l2|xp−xq|2)k(x_p,x_q)=\sigma_f^2 \exp \left( - \frac{1}{2l^2} \left|x_p-x_q\right|^2 \right) 標準偏差ノイズがあると仮定したので、共分散行列は次のようになります。σんσn\sigma_n Kp q= k (xp、xq)+ σ2んδp qKpq=k(xp,xq)+σn2δpqK_{pq} = k(x_p,x_q) + \sigma_n^2 \delta_{pq} ハイパー、データの対数尤度を最大化することによって推定しました。ポイントで予測を行うために、平均と分散をそれぞれ次のように見つけましたX ⋆(σん、l 、σf)(σn,l,σf)(\sigma_n,l,\sigma_f)バツ⋆x⋆x_\star σ 2 X ⋆ = …

1
ガウス過程を理解しようとしています
私はGPMLブックを読んでおり、第2章(15ページ)で、Gaussian Process(GP)を使用して回帰を行う方法を説明していますが、それがどのように機能するかを理解するのに苦労しています。 パラメトリックモデルのベイズ推定では、まずモデルパラメーター事前分布、つまりp (θ )を選択します。次に、トレーニングデータDが与えられたときに、尤度p (D | θ )を計算します。そして最後に、我々は後方持っθのように、P (θ | D )で使用される、予測分布P (Y * | X *、D )= ∫ P (Y *θθ\thetap (θ )p(θ)p(\theta)DDDp (D | θ )p(D|θ)p(D|\theta)θθ\thetap (θ | D )p(θ|D)p(\theta|D) 以上、そして、我々は右、パラメトリックモデルのためのベイズ推論で何ですか?p (y∗| バツ∗、D )= ∫p (y∗| バツ∗、θ )p (θ | D )dθp(y∗|x∗,D)=∫p(y∗|x∗,θ)p(θ|D)dθp(y^*|x^*,D)=\int p(y^*|x^*,\theta)p(\theta|D)d\theta さて、本で述べたように、GPはノンパラメトリックであり、私が理解している限り、平均関数 と共分散関数k (x 、x …

2
実際の(デモではない)問題に対してGPML Matlabコードを正しく使用するにはどうすればよいですか?
最新のGPML MatlabコードGPML Matlabコードをダウンロードし、ドキュメントを読み、問題なく回帰デモを実行しました。しかし、私が直面している回帰問題にそれを適用する方法を理解するのに苦労しています。 回帰問題は次のように定義されます。 ましょうである入力ベクトルとであり、それに対応するターゲット。個の入力のセットは行列配置され、対応するターゲットは行列格納されます、はの平均目標値です。バツ私∈R20xi∈R20\mathbf{x}_i \in \mathbb{R}^{20}y私∈R25yi∈R25\mathbf{y}_i \in \mathbb{R}^{25}MMMX =[バツ1、… 、バツM]⊤X=[x1,…,xM]⊤\mathbf{X} = [\mathbf{x}_1, \dots, \mathbf{x}_M]^\topY =[y1−y¯、… 、yM−y¯]⊤Y=[y1−y¯,…,yM−y¯]⊤\mathbf{Y} = [\mathbf{y}_1 - \mathbf{\bar{y}}, \dots, \mathbf{y}_M-\mathbf{\bar{y}}]^\topy¯y¯\mathbf{\bar{y}}YY\mathbf{Y} 二乗指数関数を使用して、GPRモデルをトレーニングしたいと思います。G= { X、Y、θ }G={X,Y,θ}\mathcal{G} = \lbrace \mathbf{X}, \mathbf{Y}, \theta \rbrace k (バツ私、バツj)=α2exp ( −12β2(バツ私−バツj)2) +γ2δ私はjk(xi,xj)=α2exp(−12β2(xi−xj)2)+γ2δijk(\mathbf{x}_i, \mathbf{x}_j) = \alpha^2 \text{exp} \left( - \frac{1}{2\beta^2}(\mathbf{x}_i - \mathbf{x}_j)^2\right) + \gamma^2\delta_{ij}、 ここでに等しい場合と、さもなければ。ハイパーパラメーターは、はトレーニングデータの想定ノイズレベルで、は長さスケールです。δ私はjδij\delta_{ij}111i=ji=ji …

1
薄板平滑化スプラインの確率論的解釈
TLDR:薄板回帰スプラインには確率的/ベイズ的解釈がありますか? 入力-出力ペア所与の(xi,yi)(xi,yi)(x_i,y_i)、i=1,...,ni=1,...,ni=1,...,n ; Iは、関数推定するf(⋅)f(⋅)f(\cdot)としては、下記の f(x)≈u(x)=ϕ(xi)Tβ+∑i=1nαik(x,xi),f(x)≈u(x)=ϕ(xi)Tβ+∑i=1nαik(x,xi),\begin{equation}f(x)\approx u(x)=\phi(x_i)^T\beta +\sum_{i=1}^n \alpha_i k(x,x_i),\end{equation}k(⋅,⋅)k(⋅,⋅)k(\cdot,\cdot)ϕ(xi)ϕ(xi)\phi(x_i)m&lt;nm&lt;nm<nαiαi\alpha_iβiβi\beta_iminα∈Rn,β∈Rm1n∥Y−Φβ−Kα∥2Rn+λαTKα,minα∈Rn,β∈Rm1n‖Y−Φβ−Kα‖Rn2+λαTKα,\begin{equation} {\displaystyle \min _{\alpha\in R^{n},\beta \in R^{m}}{\frac {1}{n}}\|Y-\Phi\beta -K\alpha\|_{R^{n}}^{2}+\lambda \alpha^{T}K\alpha},\end{equation}ΦΦ\Phiϕ(xi)Tϕ(xi)T\phi(x_i)^Ti,ji,ji,jKKKk(xi,xj)k(xi,xj){\displaystyle k(x_{i},x_{j})} α∗=λ−1(I+λ−1K)−1(Y−Φβ∗)α∗=λ−1(I+λ−1K)−1(Y−Φβ∗)\begin{equation} \alpha^*=\lambda^{-1}(I+\lambda^{-1}K)^{-1}(Y-\Phi\beta^*) \end{equation} \ begin {式} \ beta ^ * = \ {\ Phi ^ T(I + \ lambda ^ {-1} K)^ {-1} \ Phi \} ^ {-1} \ Phi ^ …

1
ガウス過程の共分散
ガウシアンプロセスで共分散を計算するための式について少し混乱しています(分散が追加されていると、常に明示的に示されるとは限らないため、常に混乱します)。混乱の起源は、式はで与えられているということである司教によってパターン認識と機械学習とラスムッセンによる機械学習のためのガウス過程異なっています。 GPの平均は次の関係で与えられます: μ = K(X∗、X)[ K(X、X)+ σ2私]− 1yμ=K(X∗,X)[K(X,X)+σ2I]−1y\mu = K(X_*, X)[K(X,X)+\sigma^2\mathrm{I}]^{-1}y Bishopによる分散(ページ番号:308)は次のとおりです: Σ = [ K(X∗、X∗)+ σ2] − K(X∗、X)[ K(X、X)+ σ2私]− 1K(X、X∗)Σ=[K(X∗,X∗)+σ2]−K(X∗,X)[K(X,X)+σ2I]−1K(X,X∗)\Sigma = [K(X_*, X_*)+\sigma^2] - K(X_*, X)[K(X,X)+\sigma^2\mathrm{I}]^{-1}K(X, X_*) Rasmussenによる分散(ページ番号:16)は次のとおりです: Σ = K(X∗、X∗)− K(X∗、X)[ K(X、X)+ σ2私]− 1K(X、X∗)Σ=K(X∗,X∗)−K(X∗,X)[K(X,X)+σ2I]−1K(X,X∗)\Sigma = K(X_*, X_*) - K(X_*, X)[K(X,X)+\sigma^2\mathrm{I}]^{-1}K(X, X_*) 私の疑問は、共分散行列 RHSの最初の項に分散があるかどうかです。または私は物事を台無しにしていますか?ΣΣ\Sigma さらに情報が必要な場合はお知らせください。

1
ガウス過程の事後のシミュレーション
初めて(不正確/間違い)ガウシアンプロセスを確認しました。具体的には、ナンドデフレイタスによるこのビデオを見ました。メモはここからオンラインで入手できます。 ある時点で、ガウスカーネル(軸の距離の2乗の指数)に基づいて共分散行列を作成することにより生成された多変量法線から、ランダムなサンプルを抽出します。これらのランダムなサンプルは、データが利用可能になると分散が少なくなる以前の滑らかなプロットを形成します。最終的に、目的は、共分散行列を変更して予測し、対象の点での条件付きガウス分布を取得することです。倍101010xxx コード全体は、Katherine Baileyによる優れた要約でここから入手できます。これは、Nando de Freitasによるコードリポジトリのクレジットです。便宜上、ここにPythonコードを掲載しました。 (上記のではなく)事前関数から始まり、「調整パラメーター」を導入します。10333101010 プロットを含めて、コードをPythonおよび[R]に翻訳しました。 以下は、[R]の最初のコードチャンクと、テストセットの値の近接性に基づいてガウスカーネルを介して生成された3つのランダム曲線の結果のプロットです。xxx Rコードの2番目のチャンクはより毛羽立ち、トレーニングデータの4つのポイントをシミュレートすることから始まります。これは、これらのトレーニングデータポイントが存在する領域の周りの可能な(前の)曲線間の広がりを絞り込むのに役立ちます。これらのデータポイントの値のシミュレーションは、関数として行われます。「点の周りの曲線の引き締め」を見ることができます:罪()yyysin()sin()\text{sin}() Rコードの3番目のチャンクは、値(以下の計算を参照)に対応する平均推定値の曲線(回帰曲線に相当)とそれらの信頼区間のプロットを扱います。μ505050 μμ{\bf\mu} 質問: 前のGPから後のGPに至るまでの操作について教えてください。 具体的には、平均とsdを取得するために、Rコードのこの部分(2番目のチャンク内)を理解したいと思います。 # Apply the kernel function to our training points (5 points): K_train = kernel(Xtrain, Xtrain, param) #[5 x 5] matrix Ch_train = chol(K_train + 0.00005 * diag(length(Xtrain))) #[5 x 5] matrix # Compute the mean …

2
有限のサンプリング領域をもつガウス過程
この質問が不十分な場合は、事前に謝罪します。私は天文学者であり、統計学者ではありません。私の質問は、ガウス過程が私の問題に適切な手法であるかどうかを理解するのを助けることを特に目的としています。 私のプロジェクトでは、望遠鏡とファイバー給電スペクトログラフを使用して、さまざまな場所の銀河の光スペクトルを取得しました。1つのポインティングのサンプリングパターンは最初の画像にあり、ギャップを埋めるために、異なる空間オフセットで合計3回繰り返されます(2番目の画像)。理想的には、銀河をカバーするグリッド上で特定の量の推定値を構築したいと思います。 私の素朴な方法は、各ファイバーのスペクトルを個別に分析して、対象の量の点推定値を取得し、ガウスプロセスを構築してそれらの量をどこでも推定することでした。同様に、スペクトル自体のガウス過程を構築し、選択したグリッドでGPを分析して、関心のある量を見つけることができます。しかし、これは有効なアプローチであるかどうかはわかりません。離散ではなく、偶然です。3Nfibers3Nfibers3 N_{fibers} たとえば、非常に離れた場所から土をサンプリングし、50メートル離れて繰り返し測定する土壌科学者とは異なり、私の観測は空間的に重複しているため、銀河が放つすべての光を統合しています。特定の測定値内に存在する可能性のある空間変動を無視できるかどうかは、私には明らかではありません。つまり、個々のサンプリング位置が小さくない場合でも、ガウス過程は有効ですか?単一のファイバー内の光の「混合」を説明するために追加の空間用語を組み込むことはできますか? 補遺:伝統的に、スペクトルは単に補間され、グリッド上でリサンプリングされ、その後分析されますが、これも非常に間違っていると思います-でも、同僚のパレードで雨が降る場合は、少なくとも別の方法を提示したいと思います。

1
ベイジアン最適化の実用的な実装の詳細
GPML [ http://www.gaussianprocess.org/gpml/code/matlabを使用して、Snoek、Larochelle、およびAdams [ http://arxiv.org/pdf/1206.2944.pdf]に続いて、ベイジアン最適化を試みています。 / doc /]。3ページで説明した期待される改善の取得関数を実装しました。次のクエリのどこで目的をクエリするかを決定するには、最大化するを使用する必要があります。バツバツ\bf{x} aE私(x ; (xん、yん、θ ))aE私(バツ;(バツん、yん、θ))a_{EI}(\bf{x}; (\bf{x}_n,y_n,\theta)) しかし、の候補セットを考慮すべきかについてのガイダンスを見つけることができないようです。理論的には、ドメイン全体で最高のを見つけたいと考えています。この論文は、これが可能であると思われる方法で書かれています(「[EI]もガウス過程で閉じた形をしています」 )。しかし、実際問題として、私は、を計算する前に、これらの後任者が持っている間に検討する可能性のあるで事後予測平均と分散を計算する必要があります閉じた形でも、行列代数を使ってそれらを計算する必要があるため、の束を選択する方法をことができません。x x ∗ a E I(x ∗)xバツバツ\bf{x}バツバツ\bf{x}バツ∗バツ∗\bf{x}^*aE私(x∗)aE私(バツ∗)a_{EI}(\bf{x}^*)バツバツ\bf{x} 質問: EI(または他の取得関数)を最大化する候補のの大(中?小?)セットを選択するための実用的な方法は何ですか?(これは論文のどこかにあり、見逃しただけですか?)バツバツ\bf{x} 現時点では、現在のセットを取得し、それを2000回置き換えてサンプリングしてから、各ポイントにガウスノイズを追加しています。大丈夫だと思います。バツ私バツ私{x_i}

1
GPMLでの完全なベイズハイパーパラメーターの選択
周辺尤度(2)を最大化する代わりに、GPMLコードを使用して、ハイパーパラメーター(たとえば、共分散スケール)の近似完全ベイズ(1)選択を実行することは可能ですか?MCMCメソッドを使用して事前にハイパーパラメーターを含む積分を解くと、オーバーフィッティングを処理するときにより良い結果が得られると思います。私の知る限りでは、GPMLフレームワークにはこれらの計算は含まれていませんが、おそらく他のサードパーティのコードがあります。 (1)秒 5.2、Ch。機械学習のためのガウス過程における5、Rasmussen&Williams、2006 (2)GPMLドキュメントの「回帰」セクション


1
定常ガウスフィールドとは何ですか?
ガウス体とは何か知っています。しかし、私は文房具が何を意味するのかよくわかりません。静止した自己回帰プロセスなどの多くの場所でこの静止したものを見たことがありますが、実際には静止したことの意味がわかりません。

2
指数関数的に減衰する共分散関数を使用したガウス(Ornstein Uhlenbeck)プロセスのシミュレーション
ガウス過程、平均0と共分散関数。1 ≤ T ≤ T γ (S 、T )= EXP (- | T - S |)ei(t)ei(t)e_i(t)1≤t≤T1≤t≤T1\leq t \leq Tγ(s,t)=exp(−|t−s|)γ(s,t)=exp⁡(−|t−s|)\gamma(s,t)=\exp(-|t-s|) 共分散行列の平方根の計算を含まない、これを行う効率的な方法はありますか?または、誰でもこれを行うためのパッケージを推奨できますか?T×TT×TT \times TR


2
ガウス過程と相関
私はなぜ人々がガウス過程(GP)を使って未知の(時には決定論的)関数をモデル化するのか疑問に思っています。たとえば、未知の関数考えます。この関数から3つの独立した観測結果があります。 y=f(x)y=f(x)y=f(x)(x1,y1);(x2,y2);(x3,y3)(x1,y1);(x2,y2);(x3,y3)\big(x_1,y_1); \big(x_2,y_2); \big(x_3,y_3) 基になる関数を学ぶために、GPはすべての出力を共通の多変量正規分布として扱う一般的なノンパラメトリック手法です。特定の共分散関数 を想定し、以下を想定します。 GPは次の形式を取ります K(xi,yi)K(xi,yi)K(x_i,y_i)y=(y1,y2,y3);X=(x1,x2,x3)y=(y1,y2,y3);X=(x1,x2,x3)\mathbf{y}=(y_1,y_2,y_3);\mathbf{X}=(x_1,x_2,x_3)y|X∼N(0,⎡⎣⎢K(x1,x1)K(x1,x2)K(x1,x3)K(x1,x2)K(x2,x2)K(x2,x3)K(x1,x3)K(x2,x3)K(x3,x3) ⎤⎦⎥)y|X∼N(0,[K(x1,x1)K(x1,x2)K(x1,x3)K(x1,x2)K(x2,x2)K(x2,x3)K(x1,x3)K(x2,x3)K(x3,x3) ])\\ \bf{y}|X \sim N\Bigg(\mathbf{0},\begin{bmatrix} K(x_1,x_1) & K(x_1,x_2) & K(x_1,x_3) \\ K(x_1,x_2) & K(x_2,x_2) & K(x_2,x_3) \\ K(x_1,x_3) & K(x_2,x_3) & K(x_3,x_3) \ \end{bmatrix}\Bigg)\\ 観測は独立しています。それらの唯一の共通点は、それらが同じ基本的な機能に由来することです。 (xi,yi)(xi,yi)\big(x_i,y_i) 私の主な質問は次のとおりです。なぜとを相関させる必要があるのですか?それは間違ったモデルではありませんか?どのようなについても、良い予測結果が得られると想定できるのはなぜですか。(xi,yj)(xi,yj)\big(x_i,y_j)(xl,ym)(xl,ym)\big(x_{l},y_{m})y|xy|xy|x この問題で私が見逃している側面や、なぜ相関を強制することが役立つのかわかりません。

4
時系列を生成したプロセスが時間とともに変化したかどうかをテストする方法
問題 マシンによって生成された時系列データが2つのばらばらの期間にわたってあります-およそ2016年に1か月、2018年にもう1か月です。 各タイムステップで、観測された変数は観測された変数の別のセットで説明できるとドメインの専門家は仮定しています。tttYtYtY^tバツt1、… 、バツtdバツ1t、…、バツdtX_1^t, \ldots, X_d^t このプロセスが時間とともに変化したかどうかをどのようにテストできますか?変数分布が時間の経過とともに変化したかどうかをテストしようとしていないことに注意してください。との関係が時間とともに変化したかどうかをテストしたいと思います。YYYバツ私バツ私X_iYYY 現在のアプローチ を生成した基礎となるプロセスをモデル化する方法として、を指定してを予測するために、2016年のデータに時系列モデル(たとえば、ガウスプロセス)をたとします。YtYtY^tバツt1、… 、バツtdバツ1t、…、バツdtX_1^t, \ldots, X_d^tYtYtY^t ドメインの専門家は、おそらくこのモデルを使用して、2018年の与えられた場合の変数を予測し、残差を使用してモデル(2016年のプロセスを表す)がそうであることを推測できると示唆しました2018年も同じではありません。この時点以降の継続方法は不明です。YtYtY^tバツtバツtX^t 私が考えていること 2016年と2018年の残差が同じ分布から生成されているかどうかをテストする必要がありますか、それともKolmogorov-Smirnovテストなどを使用して適合度テストを実行する必要がありますか?このアプローチに関する私の懸念は、2018年のサンプル外のデータは2016年のサンプル内のトレーニングデータよりもエラーが大きくなる可能性が高いため、このテストでは誤検知が発生する可能性が高いということです。この影響を調整/説明する方法はありますか? 2016年と2018年の2つのモデルを適合させ、これらの2つのモデルが「同じ」または「異なる」ことをテストする方法を使用する必要がありますか?たとえば、1つの可能性は、2016年と2018年のデータにそれぞれ当てはめられた2つのガウスプロセス間のKL発散を計算することです。このアプローチの他の提案や問題はありますか? 共和分に関するいくつかの投稿を見ました。しかし、私はこの概念を完全に理解していません。これは関連していますか? 一般に、この種の問題にどのように取り組むことができますか?私はこれをオンラインで検索してみましたが、クエリの精度が不足しているため(この領域についてはよく知らないため)、関連する結果が多く得られません。検索するトピック/キーワードに関する簡単なヒント/コメント、または目を通すための本/論文にも感謝します。 親切に私は発見的手法に基づく方法ではなく、原則的な(できれば統計的)アプローチを探していることに注意してください。良い例は、以下のChowテストとその変形を示唆する回答です。

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