私はシンプレックスアルゴリズム(scipy.optimize.fmin)のpython実装でカイ二乗損失関数を最小化することによって、4パラメータ(a、g、Nおよびk)モデルをデータに適合させたいと思います。予備シミュレーションでは、各パラメータの次の範囲が示唆されます。a = [5、50]、g = [0.05,1.5]、N = [5,200]、およびk = [0,0.05]。scipy.optimize.fmin(Simplex)は、さまざまな大きさに関連付けられたパラメータをどのように処理しますか?
scipy.optimize.fmin関数は、パラメータがすべて同じ範囲(おそらく[0、1])にあるかのように扱われます。私はそれらを再調整すべきですか?以下は私のコードです:
#determine starting point (x0) for each parameter
a = np.random.uniform(5,50)
g = np.random.uniform(0.05, 1.5)
N = np.random.uniform(5, 200)
k = np.random.uniform(0, 0.05)
x0 = np.array ([a, g, N, k]) #initial guess for SIMPLEX
xopt = fmin (chis, x0, maxiter=1000)#call Simplex
'chis'関数は手作りですか?もしそうなら、私は最小化の目標を絶対的ではなく相対的なものにすることによって、その目標を再スケーリングするだろう。私は差異というよりもむしろバリエーションを使って作業することを意味します。 – Kanak
もちろん、キス機能は自家製です。必要に応じてコードを提供することができます。より具体的になりますか?バリエーションを使って作業することは何を意味するのですか? – user1363251
この質問には何が出てきましたか?たとえば、最小化するときの結果は? – Kanak