在幾年之前,我踏進了數據科學的大門。之前還是軟件工程師的時候,我是最先開始在網上自學的(在開始我的碩士學位之前)。我記得當我搜集網上資源的時候,我看見的只有玲瑯滿目的算法名稱—線性回歸,支持向量機(SVM),決策樹(DT),隨即森林(RF),神經網絡等。對于剛剛開始學習的我來說,這些算法都是非常有難度的。但是,后來我才發現:要成為一名數據科學家,最重要的事情就是了解和學習整個的流程,比如,如何獲取和處理數據,如何理解數據,如何搭建模型,如何評估結果(模型和數據處理階段)和優化。為了達到這個目的,我認為從邏輯回歸開始入門是非常不錯的選擇,這樣不但可以讓我們很快熟悉這個流程,而且不被那些高大上的算法所嚇倒。
因此,下面將要列出5條原因來說明為什么最開始學習邏輯回歸是入門最好的選擇。當然,這只是我個人的看法,對于其他人可能有更快捷的學習方式。
1. 因為模型算法只是整個流程的一部分
像我之前提到的一樣,數據科學工作不僅僅是建模,它還包括以下的步驟:
可以看到,“建模” 只是這個重復過程的一部分而已。當開展一個數據產品的時候,一個非常好的實踐就是首先建立你的整個流程,讓它越簡單越好,清楚地明白你想要獲得什么,如何進行評估測試,以及你的baseline是什么。隨后在這基礎上,你就可以加入一些比較炫酷的機器學習算法,并知道你的效果是否變得更好。
順便說下,邏輯回歸(或者任何ML算法)可能不只是在建模部分所使用,它們也可能在數據理解和數據準備的階段使用,填補缺失值就是一個例子。
2. 因為你將要更好地理解機器學習
我想當大家看到本篇的時候,第一個想要問的問題就是:為什么是邏輯回歸,而不是線性回歸。真相其實是都無所謂,理解了機器學習才是最終目的。說到這個問題,就要引出監督學習的兩個類型了,分類(邏輯回歸)和回歸(線性回歸)。當你使用邏輯回歸或者線性回歸建立你整個流程的時候(越簡單越好),你會慢慢地熟悉機器學習里的一些概念,例如監督學習v.s非監督學習,分類v.s回歸,線性v.s非線性等,以及更多問題。你也會知道如何準備你的數據,以及這過程中有什么挑戰(比如填補缺失值和特征選擇),如何度量評估模型,是該使用準確率,還是精準率和召回率,RUC AUC?又或者可能是 “均方差”和“皮爾遜相關”?所有的概念都都是數據科學學習過程中非常重要的知識點。等慢慢熟悉了這些概念以后,你就可以用更復雜的模型或者技巧(一旦你掌握了之后)來替代你之前的簡單模型了。
3. 因為邏輯回歸有的時候,已經足夠用了
邏輯回歸是一個非常強大的算法,甚至對于一些非常復雜的問題,它都可以做到游刃有余。拿MNIST舉例,你可以使用邏輯回歸獲得95%的準確率,這個數字可能并不是一個非常出色的結果,但是它對于保證你的整個流程工作來說已經足夠好了。實際上,如果說能夠選擇正確且有代表性的特征,邏輯回歸完全可以做的非常好。
當處理非線性的問題時,我們有時候會用可解釋的線性方式來處理原始數據。可以用一個簡單的例子來說明這種思想:現在我們想要基于這種思想來做一個簡單的分類任務。
X1x2|Y==================-201201-100100
如果我們將數據可視化,我們可以看到沒有一條直線可以將它們分開。
在這種情況下,如果不對數據做一些處理的話,邏輯回歸是無法幫到我們的,但是如果我們不用x2特征,而使用x12來代替,那么數據將會變成這樣:
X1x1^2|Y==================-241241-110110
現在,就存在一條直線可以將它們分開了。當然,這個簡單的例子只是為了說明這種思想,對于現實世界來講,很難發現或找到如何改變數據的方法以可以使用線性分類器來幫助你。但是,如果你可以在特征工程和特征選擇上多花些時間,那么很可能你的邏輯回歸是可以很好的勝任的。
4. 因為邏輯回歸是統計中的一個重要工具
線性回歸不僅僅可以用來預測。如果你有了一個訓練好的線性模型,你可以通過它學習到因變量和自變量之間的關系,或者用更多的ML語言來說,你可以學習到特征變量和目標變量的關系。一個簡單的例子,房價預測,我們有很多房屋特征,還有實際的房價。我們基于這些數據訓練一個線性回歸模型,然后得到了很好的結果。通過訓練,我們可以發現模型訓練后會給每個特征分配相應的權重。如果某個特征權重很高,我們就可以說這個特征比其它的特征更重要。比如房屋大小特征,對于房價的變化會有50%的權重,因為房屋大小每增加一平米房價就會增加10k。線性回歸是一個了解數據以及統計規律的非常強的工具,同理,邏輯回歸也可以給每個特征分配各自的權重,通過這個權重,我們就可以了解特征的重要性。
5. 因為邏輯回歸是學習神經元網絡很好的開始
當學習神經元網絡的時候,最開始學習的邏輯回歸對我幫助很大。你可以將網絡中的每個神經元當作一個邏輯回歸:它有輸入,有權重,和閾值,并可以通過點乘,然后再應用某個非線性的函數得到輸出。更多的是,一個神經元網絡的最后一層大多數情況下是一個簡單的線性模型,看一下最基本的神經元網絡:
如果我們更深入地觀察一下output層,可以看到這是一個簡單的線性(或者邏輯)回歸,有hidden layer 2作為輸入,有相應的權重,我們可以做一個點乘然后加上一個非線性函數(根據任務而定)。可以說,對于神經元網絡,一個非常好的思考方式是:將NN劃分為兩部分,一個是代表部分,一個是分類/回歸部分。
第一部分(左側)嘗試從數據中學習并具有很好的代表性,然后它會幫助第二個部分(右側)來完成一個線性的分類或者回歸任務。
總結
成為一個數據科學家你可能需要掌握很多知識,第一眼看上去,好像學習算法才是最重要的部分。實際的情況是:學習算法確實是所有情況中最復雜的部分,需要花費大量的時間和努力來理解,但它也只是數據科學中的一個部分,把握整體更為關鍵。
-
算法
+關注
關注
23文章
4607瀏覽量
92840 -
人工智能
+關注
關注
1791文章
47183瀏覽量
238265
原文標題:5個原因告訴你:為什么在成為數據科學家之前,“邏輯回歸”是第一個需要學習的
文章出處:【微信號:AI_shequ,微信公眾號:人工智能愛好者社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論