2011-11-11 12 views
1

私は最近、2つの変数(x、y)の関数を指定すると、範囲内の関数の最小値を返すPSOの基本アルゴリズムを実装しました。粒子スワム最適化(PSO)の学習と適応

問題は次のとおりです。 - 関数が不明です。私のPSにはデータセットが供給されます(データセットはモバイルコンピューティングのようなさまざまなドメインからのものです)。例えば、(x、y、f(x、y))という形式のタプルとする。 [学習段階で最適値も提供されます。]約1000秒のサンプルデータの後、PSは別のデータセットでテストされます。 PSはおそらく最適値を返さなければならない、すなわち与えられた(x、y)はf(x、y)を返す。

問題は私とANNと非常に似ています。私はPSでポリゴンを生成しようとすると、これをどのように進めるべきか分かりません。

+0

...オーバーフィッティングを避けるためにトレーニングセットと検証にデータを分割して見たいと思うでしょうポリゴンは?ポリゴンは任意の数のエッジを持つ2次元図形です。説明してください。 – Andreas

+0

Particle Swarm Optimizationを機械学習と混同していますか? PSOは特定の問題の最適性を見出します。 MLは、新しいデータを分類(または評価)するためにデータ内のパターンを学習しようとします。 – mitch

+0

実際に私は神経遺伝ハイブリッドシステムを作ろうとしています。 – letsc

答えて

0

あなたの説明から、PSOを関数近似に使用することを理解しています。したがって、値x、y、zの多くの行を含むデータセットの場合、 PSOを使用してzに近似する関数f(x、y)(すなわち、誤差| z-f(x、y)|が小さい)を探したいとします。 私はあなたが間違った用語のいくつかを持っているかもしれないと思います。特に、私は多角形で想像して、あなたは多項式を意味します。 そして、関数近似に多項式を使うことができます。 たとえば、最初に単純にしたい場合は、線形多項式f(x、y)= ax + by + cで始めることができます。 PSOは、a、b、およびcの値を生成しようとします。値の各粒子について最小化するコスト関数は、データセット内のそれぞれの二乗誤差(f(x、y)-z)^ 2の合計となります。

結局、あなたはおそらくも、「2つの変数のポリゴン」と何の最小値が希望です何