資料探勘面試題之邏輯回歸lr

2021-09-25 09:23:15 字數 1744 閱讀 4886

邏輯回歸假設資料服從伯努利分布(0-1),通過極大化似然函式的方法,運用梯度下降來求解引數,來達到將資料二分類的目的。

1、去掉高度相關的特徵會讓模型的可解釋性更好

2、可以大大提高訓練的速度。如果模型當中有很多特徵高度相關的話,就算損失函式本身收斂了,但實際上引數是沒有收斂的,這樣會拉低訓練的速度。其次是特徵多了,本身就會增大訓練的時間。

在邏輯回歸這個模型下,對數損失函式 的訓練求解引數的速度是比較快的。至於原因大家可以求出這個式子的梯度更新

為什麼不選平方損失函式的呢?其一是因為如果你使用平方損失函式,你會發現梯度更新的速度和sigmod函式本身的梯度是很相關的。sigmod函式在它在定義域內的梯度都不大於0.25。這樣訓練會非常的慢。

1、形式簡單,模型的可解釋性非常好。從特徵的權重可以看到不同的特徵對最後結果的影響,某個特徵的權重值比較高,那麼這個特徵最後對結果的影響會比較大。

2、模型效果不錯。在工程上是可以接受的(作為baseline),如果特徵工程做的好,效果不會太差,並且特徵工程可以大家並行開發,大大加快開發的速度。

3、訓練速度較快。分類的時候,計算量僅僅只和特徵的數目相關。並且邏輯回歸的分布式優化sgd發展比較成熟,訓練的速度可以通過堆機器進一步提高,這樣我們可以在短時間內迭代好幾個版本的模型。

4、資源占用小,尤其是記憶體。因為只需要儲存各個維度的特徵值,。

5、方便輸出結果調整。邏輯回歸可以很方便的得到最後的分類結果,因為輸出的是每個樣本的概率分數,我們可以很容易的對這些概率分數進行cutoff,也就是劃分閾值(大於某個閾值的是一類,小於某個閾值的是一類)。

邏輯回歸的缺點總結

1、準確率並不是很高。因為形式非常的簡單(非常類似線性模型),很難去擬合資料的真實分布。

2、很難處理資料不平衡的問題。舉個例子:如果我們對於乙個正負樣本非常不平衡的問題比如正負樣本比 10000:1.我們把所有樣本都**為正也能使損失函式的值比較小。但是作為乙個分類器,它對正負樣本的區分能力不會很好。

3、處理非線性資料較麻煩。邏輯回歸在不引入其他方法的情況下,只能處理線性可分的資料,或者進一步說,處理二分類的問題 。

4、邏輯回歸本身無法篩選特徵。有時候,我們會用gbdt來篩選特徵,然後再上邏輯回歸。

1. 增加樣本量,這是萬能的方法,適用任何模型。----------------資料層面:

2. 如果資料稀疏,使用l1正則,其他情況,用l2要好,可自己嘗試。---------演算法層面-正則化:

3. 通過特徵選擇,剔除一些不重要的特徵,從而降低模型複雜度。------------資料層面:

4. 如果還過擬合,那就看看是否使用了過度複雜的特徵構造工程,比如,某兩個特徵相乘/除/加等方式構造的特徵,不要這樣做了,保持原特徵

5. 檢查業務邏輯,判斷特徵有效性,是否在用結果**結果等。------------業務層面

6.(補充)最重要的,邏輯回歸特有的防止過擬合方法:進行離散化處理,所有特徵都離散化。

23.向量化vectorization(思考:lr的分布式(並行化)實現)

約定訓練資料的矩陣形式如下,x的每一行為一條訓練樣本,而每一列為不同的特稱取值:

θ更新過程可以改為:

邏輯回歸面試題

q1 邏輯回歸的損失函式,為什麼要用這個損失函式 邏輯回歸的損失函式是它的極大似然函式。損失函式一般有四種,平方損失函式,對數損失函式,hingeloss0 1損失函式,絕對值損失函式。將極大似然函式取對數以後等同於對數損失函式。在邏輯回歸這個模型下,對數損失函式的訓練求解引數的速度是比較快的。q2...

機器學習面試題之邏輯回歸(二)

1.邏輯回歸概述 邏輯回歸是乙個線性的二分類模型,主要是計算在某個樣本特徵下事件發生的概率,比如根據使用者的瀏覽購買情況作為特徵來計算他是否會購買這個商品,lr的最終值是根據乙個線性和函式再通過乙個sigmoid函式來求得的,該線性和函式是權重與特徵值的累加以及加上偏置求出來的,所以訓練lr也就是訓...

機器學習面試題 邏輯回歸

q1 邏輯回歸在訓練的過程當中,如果有很多的特徵高度相關或者說有乙個特徵重複了很多遍,會造成怎樣的影響 如果在損失函式最終收斂的情況下,其實就算有很多特徵高度相關也不會影響分類器的效果。但是對特徵本身來說的話,假設只有乙個特徵,在不考慮取樣的情況下,你現在將它重複 n 遍。訓練以後完以後,資料還是這...