期間我使用從scipy.optimize
庫minimize
功能。 有沒有一種方法來打印一些值時優化過程?像當前的x值,目標函數值,迭代次數和梯度評估次數。SciPy的優化 - 查看步驟程序
我知道有些選項可以保存這些值,並在之後返回優化結束。但是,我可以在每一步看到他們嗎?
期間我使用從scipy.optimize
庫minimize
功能。 有沒有一種方法來打印一些值時優化過程?像當前的x值,目標函數值,迭代次數和梯度評估次數。SciPy的優化 - 查看步驟程序
我知道有些選項可以保存這些值,並在之後返回優化結束。但是,我可以在每一步看到他們嗎?
minimize
函數需要options
字典作爲關鍵字參數。該字典接受鍵inlude,disp
,這應設置爲True
打印的最小化的進度。
我有'disp'選項設置爲'True'。它只顯示過程完成後的輸出,而不顯示過程中的輸出。 –
然後我不知道你在過程中是什麼意思。這應該在解算器的每一步打印出關於目標,漸變等的信息。你想在每個*功能評估*這個信息? – bnaecker
我認爲你正確地理解了它。這確實是在每次迭代中,但「disp」選項不會這樣做。 @sascha告訴我有關'callback'選項的信息,它在每一步都給出了'x'的值。謝謝您的幫助! –
是,通過定義一個回調。這是平凡的X做的,但對其他兩個用例,你應該換那些功能(手動計數),可能緩存OBJ了。 (你必須決定是否DISP足夠你;它可能在很大程度上取決於最小化方就如何詳細它是)也就是說 – sascha
吧!我沒有注意文檔上的這個選項。謝謝! –