朴素贝叶斯算法和逻辑回归算法的区别?
樸素貝葉斯算法和邏輯回歸算法的區別?
1.兩種算法的模型不同:
Naive Bayes是一個生成模型,在計算P(y|x)之前,先要從訓練數據中計算P(x|y)和P(y)的概率,從而利用貝葉斯公式計算P(y|x)。
? ? ? ? Logistic Regression是一個判別模型,它通過在訓練數據集上最大化判別函數P(y|x)學習得到,不需要知道P(x|y)和P(y)。
?
2.兩種算法建立條件不同:
Naive Bayes是建立在條件獨立假設基礎之上的,設特征X含有n個特征屬性(X1,X2,...Xn),那么在給定Y的情況下,X1,X2,...Xn是條件獨立的。
? ? ? ? Logistic Regression的限制則要寬松很多,如果數據滿徐條件獨立假設,Logistic Regression能夠取得非常好的效果;當數據不滿度條件獨立假設時,Logistic Regression仍然能夠通過調整參數讓模型最大化的符合數據的分布,從而訓練得到在現有數據集下的一個最優模型。
22
3.兩種算法時間復雜度和應用場景不同:
當數據集比較小的時候,應該選用Naive Bayes,為了能夠取得很好的效果,數據的需求量為O(log n)
???????當數據集比較大的時候,應該選用Logistic Regression,為了能夠取得很好的效果,數據的需求量為O( n)
? ? ? ? Naive Bayes運用了比較嚴格的條件獨立假設,為了計算P(y|x),我們可以利用統計的方法統計數據集中P(x|y)和P(y)出現的次數,從而求得P(x|y)和P(y)。因而其所需的數據量要小一些,為O(log n).
? ? ? ? Logistic Regression在計算時,是在整個參數空間進行線性搜索的,需要的數據集就更大,為O( n)
?
總結
以上是生活随笔為你收集整理的朴素贝叶斯算法和逻辑回归算法的区别?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分类与数值预测是预测问题的两种主要类型
- 下一篇: 算法中分类与聚类的区别?