3

の形式がわからない関数f(x)= yがあり、xとyの値のペア(場合によっては数千)の長いリストがある場合、次のようなプログラム/パッケージ/ライブラリがありますか? f(x)の潜在的な形式を生成しますか?

明らかに、f(x)の可能な形式には多くのあいまいさがあります。したがって、(短縮された用語で)多くの自明でない一意の回答を生成するものが理想的ですが、少なくとも1つの回答を生成できるものも良いでしょう。

xとyが観測データ(つまり実験結果)から導出される場合、f(x)の近似形式を作成できるプログラムはありますか?一方、xとyの間に完全に決定論的な関係があることを事前に知っている場合(疑似乱数ジェネレーターの入力と出力のように)、f(x)の正確な形式を作成できるプログラムはありますか?

4

6 に答える 6

3

すっごく、私は自分の質問に対する答えを見つけました。Cornellは、Eureqaと呼ばれるこの種のブラインドフィッティングを正確に実行するためのソフトウェアをリリースしました。これは、私が今までに見た中で最も洗練されたソフトウェアの1つである必要があります。それは真剣にかなり気の利いたものです。見てみな:

ここに画像の説明を入力してください

Amazonのec2クラスターとのターンキー統合も行われているため、ボタンを押すだけで、非常にリーズナブルな料金で、ローカルコンピューターからクラウドに大量の計算をオフロードできます。

インターフェースを盗むためには、GUIプログラミングについてもっと学ぶ必要があると思います。

于 2012-05-18T20:38:10.660 に答える
2

(これは数値的な方法の質問です。)ある種の観察可能なパターンがある場合(関数を見ることができます)、はい、元の関数を近似する方法はいくつかありますが、それらはまさにそれです、近似。

あなたがしたいことは補間と呼ばれます。2つの非常に単純な(そしてあまり良くない)方法は、ニュートン法ラプラスの内挿法です。これらは両方とも同じ原理で動作しますが、実装方法が異なります(たとえば、Laplaceは反復的で、Newtonは再帰的です)。

2つのデータポイント間であまり処理が行われていない場合(つまり、実際の関数に、「ピーク」がデータポイントの1つで表されていない「バンプ」がない場合)、スプライン補間法は1つです。あなたがすることができる最良の選択の。実装するのは少し難しいですが、素晴らしい結果が得られます。

編集:特定の問題によっては、上記の方法がやり過ぎになる場合があります。場合によっては、線形補間(点を直線で結ぶだけ)が問題の完全に良い解決策であることがわかります。

于 2012-05-18T00:42:58.643 に答える
0

N項目の長さのx/y値のリストは、常にN次多項式で生成できます(同じx値がないと仮定)。詳細については、次の記事を参照してください。

http://en.wikipedia.org/wiki/Polynomial_interpolation

一部のリストは、指数関数、正弦波などの他の関数型とも一致する場合があります。「最も単純な」一致関数を見つけることは不可能ですが、あなたができる最善のことは、指数、正弦波などの一般的なもののリストを調べ、それらのどれも一致しない場合は、多項式を補間することです。

しかし、私はあなたのためにこれを行うことができるソフトウェアを知りません。

于 2012-05-18T00:53:37.043 に答える
0

場合によります。

実世界から取得したデータを使用している場合、統計的回帰手法を使用すると、最適なものを評価するためのツールがいくつか提供されます。関数の形式についていくつかの仮説がある場合は、統計回帰を使用して「最適な」近似を見つけることができますが、曲線の過剰適合に注意する必要がある場合があります。特定のデータセットは、将来の観測のために完全に機能しません。

一方、データが合成的に生成されたものである場合(たとえば、データが多項式によって生成されたことがわかっている場合)、必要な正確な答えが得られる多項式カーブフィッティング法を使用できます。

于 2012-05-18T00:32:22.637 に答える
0

はい、そういうことがあります。

値をプロットして、意味のある関数関係があることがわかった場合は、最小二乗フィッティングを使用して、エラーを最小化するパラメーター値を計算できます。

関数がどのように見えるかわからない場合は、単純なスプラインまたは補間スキームを使用できます。

ソフトウェアを使用して、関数がどうあるべきかを推測することもできます。マキシマのようなものが役立つかもしれません。

WolframAlphaはあなたが推測するのを助けることができます:

http://blog.wolframalpha.com/2011/05/17/ploting-functions-and-graphs-in-wolframalpha/

于 2012-05-18T00:35:08.750 に答える
0

完全にランダムなセットがある場合は、多項式補間が最適です。

http://en.wikipedia.org/wiki/Polynomial_interpolation

セットがほぼ線形である場合、回帰は適切な近似値を提供します。

XとYから正確なフォームを作成することはほとんど不可能です。

達成しようとしていることは多くの機械学習アルゴリズムの中心であり、そのため、いくつかの特殊なライブラリで探しているものが見つかる可能性があることに注意してください。

于 2012-05-18T00:41:57.943 に答える