2017-06-27 79 views
-3

對於我的問題,我有一個數據集,其中有一個函數依賴於4個變量。該數據集的格式爲行數爲5列的數組,其中列0,1,2,3是輸入值,列4包含輸出。我想查找由輸入值定義的流形的全局最大值的位置和值。特別是,這個數據集有幾個不感興趣的局部最大值。使用Python從變量和函數值數組中找到全局最大值

我是使用python的新東西,它使事情變得有點困難,尤其是因爲當使用像scipy這樣的庫時,必須在拋出隨機值並啓動搜索最小值/最大值之前定義函數形式。如果有人對圖書館或我可以使用的特定技術有想法,我將非常感謝幫助。

+0

你能告訴我們你到目前爲止所嘗試過的嗎?它是一個numpy數組嗎? – rodgdor

+0

什麼是「多樣性」?你只想要第四列的全球最大值? –

+0

@ RodrigoDorantes-Gilardi是的,它是一個數組。開始說實話很難,因爲我不知道功能形式。具體來說,我沒有把我的頭圍繞如何拋出猜測值等等,因爲通常的最大化技術在我不知道表單的情況下工作。 – dnninja

回答

0

考慮dataset的形狀的numpy的ndarray(N,4),

import numpy as np 
global_maxima = dataset[np.argmax(dataset[:,-1])][:-1] 

會給你在哪,如果我深知前三列全球最大的您輸入列。如果您希望全球最小值替換np.argmaxnp.argmin

+0

嗨@羅德里戈!這將只返回在這些列中看到的座標的最大值。正如前面的評論中所提到的,我正在尋找的是一個最大化例程,該例程會根據函數的全局最大值的位置分配4個座標。 – dnninja

+0

@dnninja好吧,是不是編輯的東西? – rodgdor

+0

是的!這很快且很有意義,因爲它的價值滿足了我最大的挑戰。 我仍然想知道是否有一些優化技術(沿着SGD或類似的方式)可以被構造來提取全局最大值的座標,提供多維函數的n維座標集。或者這只是矯枉過正? shoudl我重構我的原始問題,以任何方式使它更清晰? – dnninja

相關問題