第四節 最大似然推導mse損失函式(深度解析最小二乘來源)(2)
上一節我們說了極大似然的思想以及似然函式的意義,瞭解了要使模型最好的引數值就要使似然函式最大,同時損失函式(最小二乘)最小,留下了一個問題,就是這兩個因素或者目的矛盾嗎?今天我們就接著上面的問題繼續解剖下去。
我們再來回顧下似然函式:
所謂似然函式就是一個大的乘項,它有多少項,取決於有多少個訓練集的樣本,因為它是判斷訓練集上發生的總概率最大的這麼一個總似然函式。我們分析一下似然函式的取值由哪些因素確定?是常數,雖然是未知數,但是是個定值不能來回變,誤差應該服從方差的高斯分佈,不能來回變方差,唯一又能變又能影響最終結果的變數就是這一組也就是。 那麼我們的目標就是找到一個θ(一組w) 使通過其計算出來似然函式結果最大,我們給似然函式起個名字叫,為什麼括號裡是,因為的大小隻看的臉色,其它值都是定值,改變不了最終結果,只有能改變結果,所以是關於的函式。由於似然函式內部帶著exp函式, 並且函式本身的形式是連乘,不太好求,所以我們在似然函式之前加了個log函式,因為log函式它是一個單調函式,而且是單調遞增函式,不會影響函式的相對大小,並且,,天生的良好屬性。它能函式中的累乘變成累加,更方便求解。所以為了似然函式的更好求解,我們在兩邊加上log函式,如下:
我們來解析上面的每一步的來源,第一步不用怎麼說,就是加了一個log, 需要注意的是沒加log之前是大寫的,加完log之後就是小寫的。第一步到第二步實際上就是對於每一個樣本之前的累乘,由於,加完log之後,所有的累乘變成累加,然後又用表示出來。第二步到第三步,因為第二步中個 累加,每一個利用屬性表示成,而是常數,所以個累加就是,而後半部分累加,因為,log和e在一起可以互相消掉,所以因為每一項不一樣,所以寫成,同時後半部分結果又把負號也給提出來了,那麼加起來結果就是我們的第三步。給自己鼓個掌吧 ,這麼難得公式都會了,而且跟著我一步步的給它解釋出來,真是不容易。到此為止,我們就分析一下,能夠使第三步即:
最大的是誰呢? 因為是常數項,不去考慮它,它始終為正,所以有它沒它都不會影響相對大小。那麼也就是說只要這一項越大,原始的函式就越大。注意這前面帶個負號,因為我們是看成兩個整體相加,所以後半部分的那一項是帶個負號的。那麼把負號去掉了,或者說這一項,這一項越小,原始的函式就越大。而是常數,不影響大小,也就是說能夠使最小的就是能夠使最大的。是不是已經很眼熟了?我們回顧下MSE(最小二乘):
發現一模一樣,因為裡面的位置不會影響相對大小。所以MSE(最小二乘)怎麼來的?為什麼說MSE(最小二乘)越小就越好,取決於你背後估計了所有的誤差,服從高斯分佈,如果它不服從高斯分佈,也就不能用mse來判斷了。截止到目前,我們就發現了把它作為損失函式,真的是非常合理。實際上這就是它背後的理論依據。
我們總結下,我們說判別模型事先給定一個判別函式,對吧?它這個例子判別函式根據判別函式來合理的構造出一個損失函式來。這個損失函式往往都是通過MLE,也就是最大似然估計為理論基礎建立出來的最合理的損失函式,而最大似然的理論源泉是誤差服從均值為零的高斯分佈,也即樣本服從高斯分佈,而後通過最大似然一步步推導得到最小二乘。,所以mse的損失函式的根本理論依據是什麼?你就應該回答為假設方差服從均值為零的高斯分佈。至於是不是所有的迴歸問題,都用MSE當損失函式,不一定。但是90%都是它。在一些特殊的場景裡,你已知誤差服從別的分佈了,那就會建立出別的損失函式來。比如huber損失函式,有興趣可以自己研究下。但絕大多數的場景都會使用MSE作為迴歸問題的損失函式。因為在你不知道任何情況的前提下,假設誤差服從高斯分佈是最常見且最合理的一種方式。自此,你從理論方面推導了最大似然和最小二乘的關係,也為最小二乘作為損失函式找到了數學的理論支撐。下一節中我們講解怎麼樣求解最小二乘或者使其相對最小,從而找到我們相對合理的模型引數。