【硬核數學】4. AI的“尋路”藝術:優化理論如何找到模型的最優解《從零構建機器學習、深度學習到LLM的數學認知》

歡迎來到本系列的第四篇文章。我們已經知道,訓練一個AI模型,本質上是在尋找一組參數,使得描述模型“有多差”的損失函數 L ( θ ) L(\theta) L(θ) 達到最小值。微積分給了我們強大的工具——梯度下降,告訴我們如何一步步地向著最優解前進。

然而,梯度下降就像一個蒙著眼睛的登山者,他只知道腳下哪塊地勢更低,就往哪兒挪一小步。這種策略在平緩的山坡上或許有效,但如果遇到崎嶇復雜、充滿懸崖峭壁和山谷的地形,就很容易陷入困境。更重要的是,如果登山規則要求他必須在某個特定的區域內活動,他該如何是好?

優化理論,就是為這位登山者提供高級導航系統和行動策略的科學。它研究的,是如何在給定目標(最小化或最大化某個函數)和一系列約束條件下,系統性地找到最優解。它將我們從“盲目地走一步看一步”提升到“制定全局最優策略”的高度。準備好了嗎?讓我們開始這場關于“最優”的智慧之旅。

第一部分:理想的尋寶地圖 —— 凸優化

在深入復雜的現實世界之前,我們先來研究一種最理想、最美好的情況——凸優化 (Convex Optimization)。如果一個優化問題是凸的,那么它就擁有一個神圣的屬性:任何局部最優解都是全局最優解

這意味著什么?對于我們那位蒙著眼睛的登山者來說,只要他走到了一個山谷的谷底(局部最小值),他就可以百分之百地確定,這里就是整個山脈的最低點(全局最小值)。他再也不用擔心自己是不是被困在了一個小土坑里,而真正的萬丈深淵還在別處。這個特性,讓優化問題從一個充滿不確定性的探索,變成了一個必然能找到最終答案的計算。

什么是“凸”?

要理解凸優化,我們首先要理解兩個核心概念:凸集 (Convex Set)凸函數 (Convex Function)

  1. 凸集
    一個集合是凸的,如果集合內的任意兩點,連接它們的線段也完全包含在這個集合之內。
    在這里插入圖片描述
    上圖中,左邊的橢圓是凸集,因為你無論怎么在里面選兩點,它們的連線都不會跑出去。而右邊的月牙形就是非凸集,因為我們可以輕易找到兩個點,其連線的一部分落在了集合之外。在優化問題中,我們尋找的解(參數)通常被限制在一個可行域內,如果這個可行域是一個凸集,事情就變得簡單多了。

  2. 凸函數
    一個定義在凸集上的函數是凸函數,如果對于定義域中的任意兩點 x 1 , x 2 x_1, x_2 x1?,x2?,連接 ( x 1 , f ( x 1 ) ) (x_1, f(x_1)) (x1?,f(x1?)) ( x 2 , f ( x 2 ) ) (x_2, f(x_2)) (x2?,f(x2?)) 的線段,總是位于函數圖像的上方(或恰好在圖像上)。
    在這里插入圖片描述

    直觀上看,凸函數的圖像就像一個“碗”。無論你在碗邊的哪個位置,只要你往下走,最終都必然會到達唯一的碗底。而非凸函數則像一個坑坑洼洼的蛋托,有很多個“坑”,如果你不幸掉進一個比較淺的坑(局部最小值),你可能就出不來了,也就錯過了那個最深的坑(全局最小值)。

凸優化的威力與AI的聯系

一個凸優化問題,指的是在一個凸的可行集上,最小化一個凸函數。
min ? x f ( x ) subject?to g i ( x ) ≤ 0 , i = 1 , … , m h j ( x ) = 0 , j = 1 , … , p \begin{aligned} \min_{\mathbf{x}} \quad & f(\mathbf{x}) \\ \text{subject to} \quad & g_i(\mathbf{x}) \le 0, \quad i=1, \dots, m \\ & h_j(\mathbf{x}) = 0, \quad j=1, \dots, p \end{aligned} xmin?subject?to?f(x)gi?(x)0,i=1,,mhj?(x)=0,j=1,,p?
如果目標函數 f f f 是凸的,不等式約束函數 g i g_i gi? 也是凸的,等式約束函數 h j h_j hj? 是仿射的(即形如 a T x ? b = 0 \mathbf{a}^T\mathbf{x} - b = 0 aTx?b=0),那么整個問題就是凸優化問題。

為什么這在機器學習中至關重要?
因為許多基礎且強大的機器學習模型,其求解過程恰好就是凸優化問題!

  • 線性回歸:其損失函數是均方誤差(MSE),這是一個經典的二次函數,是凸的。
  • 邏輯回歸:其損失函數是交叉熵,在合適的參數化下也是凸的。
  • 支持向量機 (SVM):我們稍后會詳細講,它的原始形式也是一個凸的二次規劃問題。

當一個問題可以被表述為凸優化時,我們就有理論保證,通過梯度下降等算法,我們找到的解就是全局最優解,不存在“運氣不好陷入局部最優”的情況。這為這些模型的可靠性和穩定性提供了堅實的數學基礎。

然而,現代深度學習的世界則要復雜得多。一個擁有數億參數的神經網絡,其損失函數地貌(Loss Landscape)是極其復雜的非凸函數,充滿了無數的局部最小值、鞍點和高原。盡管如此,凸優化的思想仍然是理解所有優化算法的起點。它為我們建立了一個理想的參照系,讓我們明白在“完美世界”里優化是如何工作的,從而更好地理解和設計在“不完美世界”里掙扎的算法。

第二部分:戴著鐐銬跳舞 —— 拉格朗日乘子法

凸優化為我們描繪了一幅美好的藍圖,但它主要處理的是無約束或約束相對簡單的情況。現實中的問題,往往伴隨著各種復雜的等式約束不等式約束。比如,在資源分配問題中,總預算不能超;在工程設計中,某些部件的尺寸必須精確等于某個值。

我們如何處理這些“鐐銬”呢?直接在受限的空間里進行梯度下降是非常困難的,因為梯度的方向很可能指向約束區域的外部。我們需要一種更強大的方法,將一個有約束的優化問題,轉化為一個我們更擅長解決的無約束優化問題

這個神奇的轉化工具,就是拉格朗日乘子法 (Lagrange Multipliers)

等式約束的直觀理解

讓我們從最簡單的情況開始:一個目標函數 f ( x , y ) f(x, y) f(x,y) 和一個等式約束 g ( x , y ) = c g(x, y) = c g(x,y)=c。我們的目標是:
min ? f ( x , y ) subject?to g ( x , y ) = c \begin{aligned} \min \quad & f(x, y) \\ \text{subject to} \quad & g(x, y) = c \end{aligned} minsubject?to?f(x,y)g(x,y)=c?
想象一下, f ( x , y ) f(x, y) f(x,y) 是一個山谷的海拔高度,我們想找到最低點。而 g ( x , y ) = c g(x, y) = c g(x,y)=c 是畫在地圖上的一條蜿蜒小路,我們被規定只能沿著這條小路走。

在這里插入圖片描述

這張圖揭示了最優解的一個關鍵幾何特性:在最優點,目標函數 f f f 的等高線與約束函數 g g g 的曲線是相切的。

為什么?可以這樣反證:如果它們不相切,而是相交,那么意味著我們可以沿著約束曲線 g g g 再走一小步,同時穿到一條更低的 f f f 的等高線上去,這就說明當前點還不是最優點。只有當它們相切,我們沿著約束曲線的任何微小移動,都會導致我們進入更高的等高線,這時我們才真正到達了“在約束下的最低點”。

在微積分中我們知道,一個函數的梯度向量垂直于其等高線。因此,在相切點,兩個函數的梯度向量是平行的。用數學語言表達就是:
? f ( x ) = ? λ ? g ( x ) \nabla f(\mathbf{x}) = -\lambda \nabla g(\mathbf{x}) ?f(x)=?λ?g(x)
或者寫成:
? f ( x ) + λ ? g ( x ) = 0 \nabla f(\mathbf{x}) + \lambda \nabla g(\mathbf{x}) = 0 ?f(x)+λ?g(x)=0
這里的 λ \lambda λ 就是拉格朗日乘子,它是一個標量,表示在最優點,兩個梯度向量大小的比例關系。

拉格朗日函數:約束問題的“變形金剛”

基于上述發現,拉格朗日引入了一個構造性的函數,稱為拉格朗日函數 (Lagrangian Function)
L ( x , λ ) = f ( x ) + λ ( g ( x ) ? c ) \mathcal{L}(\mathbf{x}, \lambda) = f(\mathbf{x}) + \lambda (g(\mathbf{x}) - c) L(x,λ)=f(x)+λ(g(x)?c)
現在,奇跡發生了。我們來看這個新函數的梯度:
? x L = ? f ( x ) + λ ? g ( x ) = 0 \nabla_{\mathbf{x}} \mathcal{L} = \nabla f(\mathbf{x}) + \lambda \nabla g(\mathbf{x}) = 0 ?x?L=?f(x)+λ?g(x)=0
? λ L = g ( x ) ? c = 0 \nabla_{\lambda} \mathcal{L} = g(\mathbf{x}) - c = 0 ?λ?L=g(x)?c=0
看!我們對拉格朗日函數 L \mathcal{L} L 求解無約束的極值點(即梯度為0的點),得到的方程組,恰好就是我們前面推導出的最優性條件(梯度平行)和原始的約束條件本身!

通過引入拉格朗日乘子 λ \lambda λ 并構造拉格朗日函數,我們成功地將一個 x \mathbf{x} x 空間中的有約束優化問題,轉化為了一個 ( x , λ ) (\mathbf{x}, \lambda) (x,λ) 聯合空間中的無約束優化問題。這就是拉格朗日乘子法的核心思想。

推廣到不等式約束:KKT條件

對于更普遍的不等式約束 h ( x ) ≤ 0 h(\mathbf{x}) \le 0 h(x)0,情況稍微復雜一些,但思想一脈相承。這引出了更通用的卡魯什-庫恩-塔克 (Karush-Kuhn-Tucker, KKT) 條件。KKT條件是拉格朗日乘子法的推廣,它構成了非線性規劃領域最優解的必要條件。

對于不等式約束 h ( x ) ≤ 0 h(\mathbf{x}) \le 0 h(x)0,在最優點,只有兩種可能:

  1. 約束未起作用 (Inactive):最優點在約束區域的內部,即 h ( x ) < 0 h(\mathbf{x}) < 0 h(x)<0。此時約束就像不存在一樣,對應的拉格朗日乘子 μ \mu μ 必須為0。
  2. 約束起作用 (Active):最優點在約束區域的邊界上,即 h ( x ) = 0 h(\mathbf{x}) = 0 h(x)=0。此時情況就和等式約束一樣, ? f \nabla f ?f ? h \nabla h ?h 梯度反向平行,對應的拉格朗日乘子 μ > 0 \mu > 0 μ>0

這兩種情況可以被一個優美的條件統一起來,稱為互補松弛性 (Complementary Slackness)
μ ? h ( x ) = 0 \mu \cdot h(\mathbf{x}) = 0 μ?h(x)=0
這個條件完美地概括了上述兩種情況。KKT條件就是將梯度條件、原始約束和互補松弛性等結合在一起的一組方程和不等式,它們是判斷一個點是否為約束優化問題最優解的“黃金標準”。

AI應用:正則化 (Regularization)
拉格朗日乘子法為我們理解機器學習中最重要的概念之一——正則化——提供了深刻的洞察。
在訓練模型時,我們不僅要最小化訓練誤差(損失函數 L t r a i n L_{train} Ltrain?),還要防止模型過于復雜導致過擬合。一個常用的方法是限制模型參數 w \mathbf{w} w 的大小。比如,L2正則化要求參數的L2范數的平方 ∣ ∣ w ∣ ∣ 2 2 ||\mathbf{w}||_2^2 ∣∣w22? 不能超過某個值 C C C
這可以寫成一個約束優化問題:
min ? w L t r a i n ( w ) subject?to ∣ ∣ w ∣ ∣ 2 2 ≤ C \begin{aligned} \min_{\mathbf{w}} \quad & L_{train}(\mathbf{w}) \\ \text{subject to} \quad & ||\mathbf{w}||_2^2 \le C \end{aligned} wmin?subject?to?Ltrain?(w)∣∣w22?C?
這是一個典型的不等式約束問題。我們可以寫出它的拉格朗日函數:
L ( w , μ ) = L t r a i n ( w ) + μ ( ∣ ∣ w ∣ ∣ 2 2 ? C ) \mathcal{L}(\mathbf{w}, \mu) = L_{train}(\mathbf{w}) + \mu (||\mathbf{w}||_2^2 - C) L(w,μ)=Ltrain?(w)+μ(∣∣w22??C)
在實踐中,我們通常不直接解這個帶約束的問題,而是解一個等價的無約束問題:
min ? w L t r a i n ( w ) + α ∣ ∣ w ∣ ∣ 2 2 \min_{\mathbf{w}} \quad L_{train}(\mathbf{w}) + \alpha ||\mathbf{w}||_2^2 wmin?Ltrain?(w)+α∣∣w22?
這里的 α \alpha α 就是正則化系數。優化理論告訴我們,對于每一個正則化系數 α > 0 \alpha > 0 α>0,都存在一個約束邊界 C C C,使得這兩個問題的解是相同的。拉格朗日乘子法在這里充當了橋梁,它揭示了添加正則化項施加參數約束這兩種看似不同的操作,在數學本質上是等價的。

第三部分:乾坤大挪移 —— 對偶理論

如果說拉格朗日乘子法是處理約束問題的“正攻法”,那么對偶理論 (Duality) 就是一套精妙絕倫的“乾坤大挪移心法”。它通過變換視角,將一個難解的問題(原問題, Primal Problem)轉化為另一個可能更容易求解的問題(對偶問題, Dual Problem)。

這套心法的巔峰之作,就是催生了機器學習領域的一代傳奇——支持向量機 (SVM)

原問題與對偶問題

我們從拉格朗日函數 L ( x , μ ) = f ( x ) + μ h ( x ) \mathcal{L}(\mathbf{x}, \mu) = f(\mathbf{x}) + \mu h(\mathbf{x}) L(x,μ)=f(x)+μh(x) 出發。

  • 原問題 (Primal Problem) 可以看作是一個“先固定 x \mathbf{x} x,再優化 μ \mu μ”的過程(雖然我們不這么解),但其本質是:
    p ? = min ? x max ? μ ≥ 0 L ( x , μ ) p^* = \min_{\mathbf{x}} \max_{\mu \ge 0} \mathcal{L}(\mathbf{x}, \mu) p?=xmin?μ0max?L(x,μ)
    這里的 p ? p^* p? 是原問題的最優值。為什么是 max ? μ ≥ 0 \max_{\mu \ge 0} maxμ0??因為如果 x \mathbf{x} x 違反了約束(即 h ( x ) > 0 h(\mathbf{x}) > 0 h(x)>0),那么我們可以讓 μ → ∞ \mu \to \infty μ,使得 L → ∞ \mathcal{L} \to \infty L,這樣違反約束的解就不會在最小化過程中被選中。如果 x \mathbf{x} x 滿足約束(即 h ( x ) ≤ 0 h(\mathbf{x}) \le 0 h(x)0),那么為了讓 L \mathcal{L} L 盡可能小, max ? μ ≥ 0 \max_{\mu \ge 0} maxμ0? 的結果就是 f ( x ) f(\mathbf{x}) f(x)(因為 μ h ( x ) ≤ 0 \mu h(\mathbf{x}) \le 0 μh(x)0,取 μ = 0 \mu=0 μ=0 時最大)。所以這個式子等價于原始的約束優化問題。

  • 對偶問題 (Dual Problem) 則是交換了優化的順序,變成了“先固定 μ \mu μ,再優化 x \mathbf{x} x”:
    d ? = max ? μ ≥ 0 min ? x L ( x , μ ) d^* = \max_{\mu \ge 0} \min_{\mathbf{x}} \mathcal{L}(\mathbf{x}, \mu) d?=μ0max?xmin?L(x,μ)
    這里的 d ? d^* d? 是對偶問題的最優值。我們先定義一個對偶函數 q ( μ ) = min ? x L ( x , μ ) q(\mu) = \min_{\mathbf{x}} \mathcal{L}(\mathbf{x}, \mu) q(μ)=minx?L(x,μ),然后最大化這個關于 μ \mu μ 的函數。

弱對偶與強對偶

一個至關重要的性質是弱對偶性 (Weak Duality),它表明對偶問題的最優值永遠不會超過原問題的最優值:
d ? ≤ p ? d^* \le p^* d?p?
這總是成立的,無論原問題是不是凸的。直觀上,對偶問題為原問題提供了一個下界。

而真正激動人心的是強對偶性 (Strong Duality)。在某些良好條件下(比如,原問題是凸優化問題,并滿足一個叫Slater’s condition的約束規范條件),強對偶性成立:
d ? = p ? d^* = p^* d?=p?
當強對偶性成立時,原問題和對偶問題的最優解是相等的!這意味著,我們可以通過求解那個可能更簡單的對偶問題,來得到原問題的解。這就好比想知道珠穆朗瑪峰的海拔,我們不一定非要爬到山頂去測量,而是可以通過某種“對偶”的、在海平面進行的操作來精確計算出它的高度。

對偶理論的巔峰應用:支持向量機 (SVM)

支持向量機是展示對偶理論威力的最佳范例。SVM的目標是在兩類數據點之間找到一個間隔最大 (Maximum Margin) 的分類超平面。

在這里插入圖片描述

(這張圖會展示兩類數據點,中間有一個分類超平面。超平面兩側各有一條平行的虛線,穿過離它最近的數據點。這兩條虛線之間的距離就是“間隔”或“margin”。那些落在虛線上的數據點被稱為“支持向量”。)

這個“最大間隔”問題可以被形式化為一個帶約束的二次規劃問題(即原問題)。直接求解這個原問題是比較復雜的。然而,當我們將其轉化為對偶問題后,奇跡發生了。

  1. 更易求解:SVM的對偶問題通常比原問題更容易用數值方法求解。

  2. 引出支持向量:在求解對偶問題后,我們會發現,大部分拉格朗日乘子 α i \alpha_i αi? 的值都為0,只有少數不為0。這些 α i ≠ 0 \alpha_i \ne 0 αi?=0 對應的樣本點,恰好就是那些位于間隔邊界上的支持向量 (Support Vectors)。最終的分類超平面,完全由這些少數的支持向量決定,而與其他樣本點無關。這體現了SVM模型的高效性和稀疏性。

  3. 催生核技巧 (Kernel Trick):這是對偶理論帶來的最璀璨的明珠。在SVM的對偶問題中,所有的計算都只涉及到輸入樣本點的內積 (dot product),即 ? x i , x j ? \langle \mathbf{x}_i, \mathbf{x}_j \rangle ?xi?,xj??
    這意味著,我們可以在計算內積的環節“做手腳”。我們可以用一個核函數 (Kernel Function) K ( x i , x j ) K(\mathbf{x}_i, \mathbf{x}_j) K(xi?,xj?) 來代替標準的內積 ? x i , x j ? \langle \mathbf{x}_i, \mathbf{x}_j \rangle ?xi?,xj??
    K ( x i , x j ) = ? ? ( x i ) , ? ( x j ) ? K(\mathbf{x}_i, \mathbf{x}_j) = \langle \phi(\mathbf{x}_i), \phi(\mathbf{x}_j) \rangle K(xi?,xj?)=??(xi?),?(xj?)?
    這里的 ? \phi ? 是一個從低維輸入空間到高維特征空間的映射。核技巧的絕妙之處在于,它允許我們在一個極高維度(甚至是無限維度)的特征空間中學習一個線性分類器,而我們完全不需要顯式地計算數據點在這個高維空間中的坐標!我們只需要在原始空間中計算核函數的值即可。

最終分類器
核技巧 (Kernel Trick)
SVM 對偶問題 (Dual)
SVM 原問題 (Primal)
原始輸入空間 (低維)
高效的非線性分類器
用核函數 K(x_i, x_j) 替換
等價于在高維空間 ?(x) 中計算內積
無需計算 ?(x), 避免維度災難
轉化為對偶形式
優化變量變為 α_i
計算只依賴內積
最大化間隔
在高維空間中尋找 w, b
求解困難, 依賴維度
非線性可分數據 x

這個流程圖清晰地展示了對偶理論是如何為核技巧鋪平道路的。通過將問題從求解 w \mathbf{w} w 轉換到求解 α i \alpha_i αi?,計算的焦點從單個向量轉移到了向量對之間的關系(內積),從而打開了通往高維特征空間的大門。這就是SVM能夠高效學習復雜非線性邊界的秘密。

融會貫通:優化理論在AI版圖中的位置

今天,我們從理想的凸優化世界出發,學會了使用拉格朗日乘子法來馴服各種約束,最后領略了對偶理論的“乾坤大挪移”之術。優化理論為我們提供了遠比“梯度下降”更宏大和深刻的視角。

  • 它是經典機器學習的理論支柱:沒有凸優化和對偶理論,就沒有我們今天所知的支持向量機。對正則化的深刻理解,也離不開拉格朗日乘子法。
  • 它是理解現代深度學習的基石:雖然深度學習的優化是非凸的,但其核心技術,如各種正則化方法(L1, L2, Dropout)、**優化器算法(Adam, RMSProp)**的設計,都深受經典優化理論的啟發。例如,Adam等自適應優化器可以看作是在每一步迭代中,對梯度信息建立一個簡單的二次模型(一種凸模型)并求解。
  • 它是通往更廣闊AI領域的橋梁:強化學習中的策略優化、運籌學中的資源調度、控制論中的軌跡規劃,其核心都是求解各種復雜的優化問題。

我們已經走過了線性代數(靜態結構)、微積分(動態變化)、概率論(不確定性)和優化理論(尋找最優)。這四大支柱共同構成了經典機器學習的數學內核。掌握了它們,你就擁有了剖析和理解絕大多數機器學習算法的底層邏輯的能力。在下一篇文章中,我們將進入信息論的世界,看看如何用“信息”的視角來度量不確定性,并構建出像決策樹這樣的強大模型。


習題

第1題:凸函數判斷
下列函數中,哪些是凸函數?
A. f ( x ) = e x f(x) = e^x f(x)=ex
B. f ( x ) = log ? ( x ) f(x) = \log(x) f(x)=log(x), for x > 0 x > 0 x>0
C. f ( x ) = x 3 f(x) = x^3 f(x)=x3, for x ∈ R x \in \mathbb{R} xR
D. f ( x ) = ∣ ∣ x ∣ ∣ 2 2 f(\mathbf{x}) = ||\mathbf{x}||_2^2 f(x)=∣∣x22? (向量的L2范數平方)

第2題:拉格朗日乘子法應用
請使用拉格朗日乘子法,求解問題:在周長為 L L L 的所有矩形中,哪一個面積最大?

第3題:SVM與對偶理論概念
在SVM中,為什么說最終的分類器僅由“支持向量”決定?這與SVM的對偶問題有什么關系?


答案

第1題答案:A 和 D
A. f ( x ) = e x f(x) = e^x f(x)=ex。其二階導數為 f ′ ′ ( x ) = e x > 0 f''(x) = e^x > 0 f′′(x)=ex>0,所以是嚴格凸函數。
B. f ( x ) = log ? ( x ) f(x) = \log(x) f(x)=log(x)。其二階導數為 f ′ ′ ( x ) = ? 1 / x 2 < 0 f''(x) = -1/x^2 < 0 f′′(x)=?1/x2<0,所以是凹函數,不是凸函數。
C. f ( x ) = x 3 f(x) = x^3 f(x)=x3。其二階導數為 f ′ ′ ( x ) = 6 x f''(x) = 6x f′′(x)=6x,在 x < 0 x<0 x<0 時為負,在 x > 0 x>0 x>0 時為正,所以它既不是凸函數也不是凹函數。
D. f ( x ) = ∣ ∣ x ∣ ∣ 2 2 = ∑ i x i 2 f(\mathbf{x}) = ||\mathbf{x}||_2^2 = \sum_i x_i^2 f(x)=∣∣x22?=i?xi2?。這是一個二次函數,其Hessian矩陣是一個對角線上元素為2,其余為0的矩陣,是正定的。因此,這是一個凸函數。

第2題答案:
設矩形的長和寬分別為 x x x y y y
目標函數(面積): f ( x , y ) = x y f(x, y) = xy f(x,y)=xy
約束條件(周長): 2 ( x + y ) = L ? g ( x , y ) = 2 x + 2 y ? L = 0 2(x+y) = L \implies g(x, y) = 2x + 2y - L = 0 2(x+y)=L?g(x,y)=2x+2y?L=0

  1. 構造拉格朗日函數:
    L ( x , y , λ ) = f ( x , y ) + λ g ( x , y ) = x y + λ ( 2 x + 2 y ? L ) \mathcal{L}(x, y, \lambda) = f(x, y) + \lambda g(x, y) = xy + \lambda(2x + 2y - L) L(x,y,λ)=f(x,y)+λg(x,y)=xy+λ(2x+2y?L)

  2. 對所有變量求偏導數,并令其為0:
    ? L ? x = y + 2 λ = 0 ? y = ? 2 λ \frac{\partial \mathcal{L}}{\partial x} = y + 2\lambda = 0 \implies y = -2\lambda ?x?L?=y+2λ=0?y=?2λ
    ? L ? y = x + 2 λ = 0 ? x = ? 2 λ \frac{\partial \mathcal{L}}{\partial y} = x + 2\lambda = 0 \implies x = -2\lambda ?y?L?=x+2λ=0?x=?2λ
    ? L ? λ = 2 x + 2 y ? L = 0 \frac{\partial \mathcal{L}}{\partial \lambda} = 2x + 2y - L = 0 ?λ?L?=2x+2y?L=0

  3. 求解方程組:
    從前兩個式子可知, x = y x = y x=y
    x = y x=y x=y 代入第三個式子: 2 x + 2 x ? L = 0 ? 4 x = L ? x = L / 4 2x + 2x - L = 0 \implies 4x = L \implies x = L/4 2x+2x?L=0?4x=L?x=L/4
    因此, x = y = L / 4 x = y = L/4 x=y=L/4

結論:當矩形為正方形時,其面積最大。

第3題答案:
最終的分類器僅由“支持向量”決定,是因為在求解SVM的對偶問題后,得到的解(拉格朗日乘子 α i \alpha_i αi?)具有稀疏性

對偶問題的解是一系列乘子 α 1 , α 2 , … , α N \alpha_1, \alpha_2, \dots, \alpha_N α1?,α2?,,αN?,每個乘子對應一個訓練樣本。KKT條件中的互補松弛性表明,對于一個樣本 x i \mathbf{x}_i xi?,如果它不在間隔邊界上(即它不是支持向量),那么它對應的乘子 α i \alpha_i αi? 必須為0。

最終的決策函數(分類超平面)可以表示為:
f ( x ) = sign ( ∑ i = 1 N α i y i K ( x i , x ) + b ) f(\mathbf{x}) = \text{sign}(\sum_{i=1}^N \alpha_i y_i K(\mathbf{x}_i, \mathbf{x}) + b) f(x)=sign(i=1N?αi?yi?K(xi?,x)+b)
由于只有支持向量對應的 α i \alpha_i αi? 才不為0,所以這個求和式中,實際上只有支持向量的項被計算了。其他所有樣本( α i = 0 \alpha_i=0 αi?=0)對決策邊界的位置沒有任何貢獻。因此,SVM的決策邊界完全由這些關鍵的“支持向量”支撐起來,這也是其名稱的由來。這個特性是對偶理論帶來的一個直接且優美的結果。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/89524.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/89524.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/89524.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

springboot切面編程

SpringBoot切面編程 眾所周知&#xff0c;spring最核心的兩個功能是aop和ioc&#xff0c;即面向切面和控制反轉。本文會講一講SpringBoot如何使用AOP實現面向切面的過程原理。 何為AOP AOP&#xff08;Aspect OrientedProgramming&#xff09;&#xff1a;面向切面編程&…

【Redis#4】Redis 數據結構 -- String類型

一、前言 1. 基本概念 理解&#xff1a;字符串對象是 Redis 中最基本的數據類型,也是我們工作中最常用的數據類型。redis中的鍵都是字符串對象&#xff0c;而且其他幾種數據結構都是在字符串對象基礎上構建的。字符串對象的值實際可以是字符串、數字、甚至是二進制&#xff0…

Spring Boot 集成 Dufs 通過 WebDAV 實現文件管理

Spring Boot 集成 Dufs 通過 WebDAV 實現文件管理 引言 在現代應用開發中&#xff0c;文件存儲和管理是一個常見需求。Dufs 是一個輕量級的文件服務器&#xff0c;支持 WebDAV 協議&#xff0c;可以方便地集成到 Spring Boot 應用中。本文將詳細介紹如何使用 WebDAV 協議在 Sp…

Unity打包時編碼錯誤解決方案:NotSupportedException Encoding 437

問題描述 在Unity項目開發過程中&#xff0c;經常會遇到這樣的情況&#xff1a;項目在編輯器模式下運行完全正常&#xff0c;但是打包后運行時卻出現以下錯誤&#xff1a; NotSupportedException: Encoding 437 data could not be found. Make sure you have correct interna…

Spring Bean的生命周期與作用域詳解

一、Spring Bean的生命周期 Spring Bean的生命周期指的是Bean從創建到銷毀的整個過程。理解這個生命周期對于正確使用Spring框架至關重要&#xff0c;它可以幫助我們在適當的時機執行自定義邏輯。 1. 完整的Bean生命周期階段 Spring Bean的生命周期可以分為以下幾個主要階段…

如何將Excel表的內容轉化為json格式呢?

文章目錄 一、前言二、具體操作步驟 一、前言 先說一下我使用Excel表的內容轉為json的應用場景&#xff0c;我們是用來處理國際化的時候用到的。 二、具體操作步驟 第一步&#xff1a;選擇要轉化Excel表的內容&#xff08;必須是key&#xff0c;value形式的&#xff09; 第二…

內存堆棧管理(Linux)

以問題形式講解 1.每一個進程都有一個堆空間嗎&#xff1f;還是多個進程共用一個堆空間&#xff1f; 在操作系統中&#xff0c;??每個進程都有自己獨立的虛擬地址空間&#xff0c;其中包括自己獨占的堆空間。堆空間是進程私有的&#xff0c;不與其他進程共享。 進程之間的內…

ThreatLabz 2025 年人工智能安全報告

AI 應用趨勢&#xff1a;爆發式增長與風險并存 2024 年&#xff0c;全球企業的 AI/ML 工具使用量呈指數級增長。Zscaler 云平臺數據顯示&#xff0c;2024 年 2 月至 12 月期間&#xff0c;AI/ML 交易總量達 5365 億次&#xff0c;同比激增 3464.6%&#xff0c;涉及 800 多個應…

【Oracle學習筆記】7.存儲過程(Stored Procedure)

Oracle中的存儲過程是一組為了完成特定功能而預先編譯并存儲在數據庫中的SQL語句和PL/SQL代碼塊。它可以接受參數、執行操作&#xff08;如查詢、插入、更新、刪除數據等&#xff09;&#xff0c;并返回結果。以下從多個方面詳細講解&#xff1a; 1. 存儲過程的創建 創建存儲過…

tc工具-corrupt 比 delay/loss 更影響性能

1. netem corrupt 5% 的作用 功能說明 corrupt 5% 表示 隨機修改 5% 的數據包內容&#xff08;如翻轉比特位&#xff09;&#xff0c;模擬數據損壞。它本身不會直接丟棄或延遲數據包&#xff0c;而是讓接收端收到錯誤的數據&#xff08;可能觸發校驗和失敗、協議層重傳等&…

Flask YAML管理工具

項目概述 項目地址&#xff1a;https://github.com/KaiqiZing/Flask_Yaml_Demo 這是一個基于Flask開發的YAML文件管理工具&#xff0c;提供了完整的YAML文件查看、編輯、管理功能&#xff0c;具有現代化的Web界面和強大的編輯能力。 核心功能 1. 文件管理功能 目錄掃描&am…

Embedding模型微調實戰(ms-swift框架)

目錄 簡介 1. 創建虛擬環境 2 安裝ms-swift 3安裝其他依賴庫 4. 下載數據集 5.開始embedding模型訓練 6. 自定義數據格式和對應的Loss類型 &#xff08;1&#xff09; infoNCE損失 (2)余弦相似度損失 (3)對比學習損失 &#xff08;4).在線對比學習損失 &#…

從性能優化賽到社區Committer,走進趙宇捷在Apache Fory的成長之路

Apache Fory 是一個基于JIT和零拷貝的高性能多語言序列化框架&#xff0c;實現了高效緊湊的序列化協議&#xff0c;提供極致的性能、壓縮率和易用性。在多語言序列化框架技術領域取得了重大突破&#xff0c;推動序列化技術步入高性能易用新篇章&#xff01;這一切&#xff0c;都…

Python實例題:基于 Flask 的任務管理系統

目錄 Python實例題 題目 要求&#xff1a; 解題思路&#xff1a; 代碼實現&#xff1a; Python實例題 題目 基于 Flask 的任務管理系統 要求&#xff1a; 使用 Flask 框架構建一個任務管理系統&#xff0c;支持以下功能&#xff1a; 用戶認證&#xff08;注冊、登錄、…

利用GPU加速TensorFlow

一、寫在前面 我們已經依靠keras和TensorFlow給大家做了一些機器學習在圖像處理中的應用(影像組學學習手冊,基于深度學習的圖像分類任務)&#xff0c;此前的教程中我們沒有用GPU進行加速&#xff0c;但是相較于CPU而言&#xff0c;GPU是設計用于處理大規模并行計算任務的硬件&…

模型預測專題:強魯棒性DPCC

0 1 前言 在進行DPCC的學習過程中&#xff0c;于下面鏈接看到了一篇強魯棒性算法&#xff1b;感覺挺有意思的&#xff0c;學習一下。 永磁同步電機高性能控制算法&#xff08;12&#xff09;——基于預測電流誤差補償的強魯棒預測控制/參數辨識&有限集預測控制與連續集預…

修復opensuse 風滾草rabbitmq的Error: :plugins_dir_does_not_exist問題

https://wiki.archlinux.org/title/Talk:RabbitMQ 報錯 yqh192 /u/l/r/l/r/plugins> sudo rabbitmq-plugins enable rabbitmq_management Error: :plugins_dir_does_not_exist Arguments given:enable rabbitmq_managementUsagerabbitmq-plugins [--node <node>] [--…

前端做gis地圖有哪些庫

以下是前端開發GIS地圖常用的庫&#xff1a; Leaflet&#xff1a;輕量級、易于使用的開源JavaScript庫&#xff0c;具有豐富的地圖功能和插件生態系統&#xff0c;支持多種地圖數據源&#xff0c;適合初學者和專業開發者。其優勢在于簡潔性和易用性&#xff0c;代碼結構清晰&am…

賦能城市安全韌性|眾智鴻圖總裁扈震受邀出席智慧城市大會發表主題報告

——“眾智鴻圖作為城市基礎設施智能化綜合服務提供商&#xff0c;以地理信息科學、時空大數據、人工智能為核心能力&#xff0c;長期深耕于燃氣、供水、排水等城市基礎設施生命線領域及港口、園區等工業領域&#xff0c;致力于為城市穩定運行與高效發展提供堅實保障。” 2025年…

【大語言模型入門】—— 淺析LLM基座—Transformer原理

【大語言模型入門】—— 淺析LLM基座—Transformer原理 解密GPT核心技術&#xff1a;Transformer架構深度解析被反復強調的核心概念意味著什么&#xff1f; GPT預測機制解析&#xff1a;從Next Token Prediction到任務推理核心機制的本質案例驅動的機制解析解構策略&#xff1a…