在機器學習和優化問題中,目標函數是一個非常重要的概念。它是優化算法和評估模型性能的核心指標。
def f(x): return x**2 + 2*x + 1
在上面的示例中,我們定義了一個簡單的目標函數f(x)。它有一個單變量x,返回一個標量結果。這個函數是一個二次函數,可以使用優化算法來找到它的最小值。
在實際應用中,目標函數的定義可能會更加復雜,它可能涉及多個變量或多個約束條件。在這種情況下,我們需要使用更高級的優化算法來求解目標函數。
def g(x): return (x[0]-2)**2 + (x[1]-3)**2
在上面的示例中,我們定義了另一個目標函數g(x)。它有兩個變量x[0]和x[1],返回一個標量結果。這個函數表示在二維平面上的一個點和目標點之間的距離,可以用來最小化最優路徑或機器人運動規劃等問題。
Python中有很多優化算法庫,例如scipy和tensorflow。我們可以使用這些庫來求解目標函數,找到最優解。