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