質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
MATLAB

MATLABはMathWorksで開発された数値計算や数値の視覚化のための高水準の対話型プログラミング環境です。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Q&A

1回答

2425閲覧

### 機械学習で得た回帰曲線を延長させたい(外挿したい)

mooo.

総合スコア2

MATLAB

MATLABはMathWorksで開発された数値計算や数値の視覚化のための高水準の対話型プログラミング環境です。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

0グッド

0クリップ

投稿2021/01/04 08:53

機械学習で得た回帰曲線を延長させたい(外挿したい)

時系列データを用いて将来の予測(1週間程度)を行うシステムを作っています。
現状内挿はできており、カーネルの選択により回帰式の変更はできています。
しかし、最終的な目標は将来予測であり、将来値を出すことができていない為、別で準備しているテスト用のデータ(学習に使った範囲のあとのデータ)に合うカーネルの選択はできていません。
MatlabのHP等でも検索し調べてみましたが、内挿・外挿の差が出るようなコマンドや説明は出てこず、何が原因であるのかが自分では解明できていません。
わかる方、ご教授いただけますと幸いです。

matlabソースコード

addpath '/Users/XXX/Documents' T=readtable('ファイル名.txt') gprMdl = fitrgp(T,'w_s','KernelFunction','ardsquaredexponential',... 'FitMethod','sr','PredictMethod','fic','Standardize',1) ypred = resubPredict(gprMdl); figure(); plot(T.date,T.w_s,'r.'); hold on plot(T.date,ypred,'b'); xlabel('x'); ylabel('y'); legend({'data','predictions'},'Location','Best'); axis([0 1000 0 0.05]); hold off;

現状の結果

この予測曲線を1週間程度延長させたいです。
イメージ説明

試したこと

他カーネルの選択(結果内挿しか出ませんでしたが...)

参照
MathWork社:カーネル (共分散) 関数のオプション

補足情報(FW/ツールのバージョンなど)

使用ソフト:MATLAB_R2020b

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jbpb0

2021/01/04 09:13

そもそも何でガウス過程回帰を使っているのでしょうか? 他の時系列解析によく使われている手法、たとえば状態空間モデルとかを使う、という選択肢は無いのでしょうか?
mooo.

2021/01/06 01:54 編集

あと数日程度の外挿が出せれば解決というところまでこれたので、他のモデルを試すにしろ一度このモデルで検証してみたい。というのが私の考えです。 ガウス過程回帰自体が将来予測に使えないのなら潔く断念できるのですが、他分野とはできているのでそこまでした上で他も。と考えています。
mooo.

2021/01/06 04:06

マルチポストについて知りませんでした。 少しでも早く解決したいと思い調べたところmatlabanswersが出てきたため利用してしまいました。 申し訳ございません、以後気をつけます。
guest

回答1

0

ガウス過程回帰と外挿に関しては

【機械学習+外挿】機械学習モデルで外挿してみた

があるようですが、単純なsin波に対しても外挿できているとは言えないレベルのようです。

追記修正依頼のコメントにもありますが、時系列データの未来予測であれば、通常の時系列分析でのアプローチ、状態空間モデルやARIMA等の方がよろしいかと思います。

時系列データを用いて将来の予測(1週間程度)を行うシステムを作っています。

現状内挿はできており、カーネルの選択により回帰式の変更はできています。
しかし、最終的な目標は将来予測であり、将来値を出すことができていない為、別で準備しているテスト用のデータ(学習に使った範囲のあとのデータ)に合うカーネルの選択はできていません。

最終的な目標が将来予測なのであればその将来予測に適したアプローチを取った方がよいです。
過去データの特徴を知るために内挿のみに特化したモデル構築するのも有効なアプローチの1つとは思います。
ただ、内挿がうまく行ったから外挿もとは必ずしもなりません。

あと数日程度の外挿が出せれば解決というところまでこれたので、他のモデルを試すにしろ一度このモデルで検証してみたい。というのが私の考えです。

ガウス過程回帰自体が将来予測に使えないのなら潔く断念できるのですが、他分野とはできているのでそこまでした上で他も。と考えています。

「他分野とはできているのでそこまでした上で他も」とはどういった意味でしょうか。

「できている」が将来予測≒外挿ならば、他のテーマでガウス過程回帰での将来予測が出来ているとのことですので、同じアプローチで将来予測を行えば良いと思います。

「できている」が将来予測≒外挿でないならばそもそもガウス過程回帰での将来予測の実績はないわけですから、時系列分析での一般的なアプローチの方がよろしいかと思います。その方が書籍や記事も多いので。

投稿2021/01/09 00:47

aokikenichi

総合スコア2240

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mooo.

2021/01/12 09:01

ガウス過程回帰と外挿に関しては →同じHPを拝見いたしましたが、カーネルの選択により予測は可能であると解釈いたしました。 私自身複数のカーネルを試してみましたが、予測できているものとできないものがあることも確認しております。 ただ、内挿がうまく行ったから外挿もとは必ずしもなりません。 →おっしゃる通りです。 なので私のコマンドが予測できているのかどうかを試したい。と思いましたが、将来予測をさせるためのコマンドがわからないのが現状です。 ガウス過程回帰での将来予測の実績はないわけです →そもそもの絶対数は少ないですが、電力の予測をしている例もあ流ようで全くないわけではないと解釈しています。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問