1

プロセスの入力に関連する 3 つ (またはそれ以上) の既知の変数のセットがあります。また、プロセスの (測定された) 結果、この場合はプロセスが完了するまでにかかった時間もあります。

推定期間を示し、入力に基づいて進行状況インジケーターを作成できるようにするには、変数と結果の間の関係 (存在する場合) を見つける必要があります。

関係があるかどうか、および式を作成するための関係が存在するかどうかを判断する最良の方法は何ですか?

操作するデータセットが多数あります (入力変数値と結果の時間)。

これに関連する提案やリンクはありますか? コードまたはいくつかの理論へのポインターを使用してこれを解決する方法に関するヒントが役立ちます。

追加された背景:

このプロセスは、処理される多数のファイル (メイン入力) と、メイン入力の内容に直接関連する別の (参照) ファイルのセットで構成される追加の二次入力で構成されます。現在、進行状況は、現在の入力ファイルのコンテンツ内の位置に基づくファイル内の進行状況と組み合わせて、ファイル全体の進行状況 (メイン入力の合計数に関連) を表示することによって示されます。ファイル (セット) ごとに必要な全体的な時間はかなり長くなる可能性があるため (内容によっては)、何らかの「残り時間」または「予想終了時間」インジケーターを追加したいと考えています。

実際のコードは、XML ファイルを含むリスト (Excel 形式) のデータのサブセットを従来の形式のファイルにマージしたものです。「時間がかかる」部分は Excel ファイルの解析ですが、これはファイルの実際のサイズ、処理する必要があるアイテムの数、および出力として作成する必要があるファイルの数に大きく影響されます。大きなファイルの結果が 1 つの出力になる場合もあれば、小さなファイルの結果として多数の出力が生じる場合もあります。多くのファイル アクセスが実行されるため、2 番目の要素 (数値化するのは難しい) は、同時に実行される同一プロセスの数です。

アイデアは、入力に基づいて推定スループットを提供できるようにすることです。

4

3 に答える 3

3

@Heatsinkの答えは正しいですが、関数ファミリーと自由パラメーターの数を選択するには、ある程度の経験が必要です。それは「モデリング」と呼ばれ、物理学者はこの分野の達人です。また、一般的な (非線形の) 回帰問題は、必ずしも簡単に解決できるとは限りません。

おそらく、適切な機能とパラメーターを選択するのに十分なほどスマートなこのソフトウェアパッケージを試しください. 私はそれでいくつかの素晴らしい経験をしました。

代替テキスト代替テキスト

チッ!

ところで...4Dデータをどこかに投稿していただければ、もう少し調査できます

于 2010-11-17T07:20:33.093 に答える
2

最初のステップは、探している関係をいくつかの関数ファミリーに制限することです。そのためには、入力が測定結果にどのように影響するかについてのモデルを考え出す必要があります。関数のファミリーを選択したら、次のステップは、ファミリーのどのメンバーがデータを最もよく表しているかを把握することです。

たとえば、測定しているシステムを線形関係でモデル化できると判断する場合がありますtime = a*x + b*y + c*z。次に、線形回帰を使用して、データに最適なパラメーターa、b、cを見つけることができます。

于 2010-11-17T06:49:10.843 に答える
2

計算の進行に合わせて進行状況メーターをどのように更新しますか? ほぼ同じ時間で実行される多数のステップに分かれている場合は、事前の知識がなくても、完了したステップ数を合計のパーセンテージとして報告できます。

計算にいくつかの異なるフェーズがある場合、あなたが言うように、それぞれの合計寄与を何らかの式で推定する必要があります。それでも各フェーズでは、そのフェーズで計算がどの程度進んだかを示すモデルが必要であり、それにはコード自体の知識が必要です。

ここで入力変数の性質について詳しく知っておくと役立ちます。コード自体に計算限界がありますか、つまり、入力の各次元で線形または二次的に実行されることを証明できますか? 入力の 1 つで階乗的または指数的であるブルート フォース タイプのメソッドですか? アルゴリズムの選択に基づいてコードの実行時間の式を導き出そうとすると、経験的な回帰だけよりも正確である可能性が高く、より高速なアルゴリズムを見つけることができます。

于 2010-11-18T02:07:01.580 に答える