モデル予測こんにちは
私は約 3000 件のレコードと約 100 件の予測子を含むデータベースに取り組んでいます。応答は、良好なガウス分布を持つ電気パラメータです。応答と予測子は両方とも時間に依存するため、データベースは多変量時系列です。予測子は特定のプロセス ステップで生産ラインに沿って収集され、電気パラメータは約 2 週間後に測定されます。ここでの考え方は、マシンのライン データ (予測子) を使用して電気測定を予測することです。
最初のモデルとして、ランダム フォレストを使用しました。R2 とエラーは、トレーニング グループとテスト グループの両方で非常に良好でした。とにかく、モデルをこれまでに見たことのないデータで本番環境に展開しようとしたところ、モデルのパフォーマンスは非常に悪くなりました。この動作は、外挿に対するランダム フォレストの弱さで説明できました。次に、モデル ツリー ベースを除外すると、多項式近似とニューラル ネットワークだけが残ります。最初のものは R2 とエラーの点で受け入れられませんでしたが、2 つのレイヤーと 3 つのアクティベーション関数を持つ NN は、トレーニング データとテスト データの両方で良好な R2 とエラーを返すことができました。次に、モデルを構築したら、見たことのないデータ (グラフ ビルダーのアスタリスク) で本番環境に展開しました。傾向予測は正しいのですが、単一の値は正しくありません。特に、見たことのないデータの NN は非常に高い変動性を示しています。したがって、この話の終わりに、JMP でテストする他のモデルはありません。少なくともこれが私の考えです。この問題を解決するためのコツや提案を誰か教えてくれませんか?
添付のpptにすべてのプロットがあります。
ありがとう、フェリーチェ
データの探索と視覚化Re: モデル予測私の投稿に返信してくれたすべての人に感謝します。 大丈夫です。 問題をよりよく理解するために、いくつかの簡単な実験を試みました。
添付の ppt で、私の結論と結果を示します。コメントや提案は大歓迎です。
フェリーチェ
Re: モデル予測あなたが述べているように、観察をトレーニング、検証、およびテストにランダムに割り当てることはありません。 ランダムな割り当てが行われたと言う人を見たことはありませんが、もしそうなら、それは行われるべきではありません. 時間に合わせて課題を出します。 トレーニング セットが最も古く、検証が次のセット、テストが最後のグループです。 この方法は、予測能力の良い指標を提供します。
トレーニング、検証、およびテスト セットは、安定したプロセスを代表するものである必要があります。 トレーニングと検証がうまく適合しているが、テストが適合していない場合、当然、何かが起こってテスト セットが変更されたと信じるようになります。 それが発生した/変更されたものは、モデル内の別の予測因子である必要があります。
Re: モデル予測それらの人々は私よりもそのようなことについて知っているので、私はここで他のコメントを尊重します.しかし、彼らが言及していない問題が 1 つあります。これは多変量の時系列データであるため、ランダムな検証とテスト データ セットを使用する意味は何ですか?これはデータの時間構造を無視していませんか?もちろん、ニューラル ネットやランダム フォレストなどを使用することもできますが、これらのモデルはデータの時間構造を無視しているため、新しいデータではパフォーマンスがあまり良くないと思います。時系列データの場合、時間構造をモデル化してテストできるように、テスト データは連続した観測範囲である必要があると思います。それで、あなたが持っているような時系列データに対して、ランダムな検証とテストデータセットでこれらの方法を使用することは適切ですか?
Re: モデル予測私はすべてに同意します@ダン_オーバーミラーと@スタットマン推奨または述べます。
もう 1 つ考えていただきたいことがあります...あなたは偶然の歴史的な生産プロセスとデータを扱っているようですが、設計された実験を実行する能力はありますか? 私がこの道を進む理由は、履歴情報に基づくモデルが将来の観察に特に拡張可能でない場合、履歴データが効果モデリング ポイントから考慮していない他の重要な因果変数がシステムに入る可能性が非常に高いからです。しかし、これらのいくつかを DOE 中心の調査に含めることができる場合があります。
あなたは干し草の山から針葉樹を探していますが、DOE ほどそれらを見つける効率的な方法はありません。 たとえば、過去のプロセス データで説明していない生産の原材料の変動があるかもしれませんが、DOE タイプの調査では、ブロッキングなど、この種のことを処理するためのいくつかのオプションがあります。 または@スタットマン効果が不足している場合、決定的スクリーニング計画が機能する可能性があることを示唆していますか?
ここでの考え方は、過去のモデリング作業と学んだことをプロセスの知識とともに活用し、DOE の力を利用してその「有用なモデル」を見つけるのに役立てることです。
私が業界にいた頃、一緒に働いていたある賢明なエンジニアは、「障害モードを自由にオン/オフできるようになるまで、そのプロセスを理解していない」と言いました。 「プロセスを理解する」ための唯一の最も効率的な方法は DOE でした。
Re: モデル予測考慮すべき点がいくつかあります。試したモデルには、適合を改善する可能性がある複数のオプションがあります。 ランダム フォレストの場合: 何本の木を使用しましたか? もっと試してみましたか? それぞれの木の大きさは? それらを大きくしようとしましたか? 3 つのノードを持つニューラル ネットワークで十分だと思われる理由は何ですか? 複数の旅行を試しましたか? ブーストされたニューラル ネットワークを使用してみましたか? もしそうなら、学習率を変えてみましたか? 検証とテスト セットのパフォーマンスに大きな違いが見られる場合、テスト セットをそれほど異なるものにする何か変更がありましたか? また、トレーニング、検証、およびテストの間でデータをどのように分割するかが問題になる場合もあります。
ただし、トレーニング、検証、およびテスト セットの作成に慣れていて、それらすべてが代表的なものであると確信している場合は、モデルを改善するためのオプションと方法があります。 十分なノードと検索反復が与えられた場合、ニューラル ネットワークは普遍的な近似値であるため、完全に適合します。 しかし、将来のデータではなく、そのデータにのみ適合するため、これは望ましくありません ( @スタットマンのコメント)。 したがって、「完全な」予測を期待するのは現実的ではないことを覚えておいてください。 両方@P_バーテルと@スタットマン考慮すべきことを指摘します。 測定システムの誤差よりも良い結果を期待するべきではありません。 これにより、予測誤差の現実的な目標を設定できます。
Re: モデル予測残念ながら、予測に関して優れたモデルを開発することは簡単なことではありません。 R^2 は列挙統計です。 手元のデータにのみ適用されます。 モデルの RMSE は列挙統計であり、手元のデータ セットにのみ適用されます。 モデルの外挿は、数え上げの問題ではなく (Deming: 数え上げと分析の問題を参照)、将来の状況を表すデータを取得する演習です。 既存のデータをモデル化するために使用しているデータ セットは、明らかに将来の状態を表していません。 ここで役立つ統計的方法はありません。 測定システムに問題がある可能性があります。 @P_バーテルデータセットが将来の状況を表していない理由を示唆している、またはその他の多くの理由があります。 プロセスは安定していますか (シューハートによると)? おそらく、プロセスをモデル化する前に、プロセスを理解するために有向サンプリングを行う必要があります。 100 個の予測変数すべてが、関連する応答変数に同じ影響を与えるとは思えません (効果の希少性の原則を参照)。
Re: モデル予測ここにあなたのためのいくつかの考えがあります:
1. 測定システムの変動について何を知っていますか? 「何もない」に近い場合...測定システムの変動性研究を含めるために、因果/予測モデリングの研究を迂回します. 生産データの収集と応答の測定との間の 2 週間のタイムラグは、トレーニング/検証から将来の予測と結果への外挿まで、ドリフトまたは非常に変動性の高い測定システムを必要とします。
2. JMP Pro をお持ちですか...時系列機能データの探索と分析は、JMP Pro の特徴的な機能の 1 つであり、お客様の研究は機能データ探索用にカスタマイズされています。 詳細については、オンデマンドのウェビナーをご覧になることをお勧めします。機能データ エクスプローラー