0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

邏輯回歸的對于數(shù)據(jù)學習的關鍵

lviY_AI_shequ ? 來源:劉林華 ? 作者:電子發(fā)燒友 ? 2018-12-29 15:55 ? 次閱讀

在幾年之前,我踏進了數(shù)據(jù)科學的大門。之前還是軟件工程師的時候,我是最先開始在網(wǎng)上自學的(在開始我的碩士學位之前)。我記得當我搜集網(wǎng)上資源的時候,我看見的只有玲瑯滿目的算法名稱—線性回歸,支持向量機(SVM),決策樹(DT),隨即森林(RF),神經(jīng)網(wǎng)絡等。對于剛剛開始學習的我來說,這些算法都是非常有難度的。但是,后來我才發(fā)現(xiàn):要成為一名數(shù)據(jù)科學家,最重要的事情就是了解和學習整個的流程,比如,如何獲取和處理數(shù)據(jù),如何理解數(shù)據(jù),如何搭建模型,如何評估結果(模型和數(shù)據(jù)處理階段)和優(yōu)化。為了達到這個目的,我認為從邏輯回歸開始入門是非常不錯的選擇,這樣不但可以讓我們很快熟悉這個流程,而且不被那些高大上的算法所嚇倒。

因此,下面將要列出5條原因來說明為什么最開始學習邏輯回歸是入門最好的選擇。當然,這只是我個人的看法,對于其他人可能有更快捷的學習方式。

1. 因為模型算法只是整個流程的一部分

像我之前提到的一樣,數(shù)據(jù)科學工作不僅僅是建模,它還包括以下的步驟:

o4YBAFwnKYeAIpjzAAB5dS5UtLw815.png

可以看到,“建?!?只是這個重復過程的一部分而已。當開展一個數(shù)據(jù)產(chǎn)品的時候,一個非常好的實踐就是首先建立你的整個流程,讓它越簡單越好,清楚地明白你想要獲得什么,如何進行評估測試,以及你的baseline是什么。隨后在這基礎上,你就可以加入一些比較炫酷的機器學習算法,并知道你的效果是否變得更好。

順便說下,邏輯回歸(或者任何ML算法)可能不只是在建模部分所使用,它們也可能在數(shù)據(jù)理解和數(shù)據(jù)準備的階段使用,填補缺失值就是一個例子。

2. 因為你將要更好地理解機器學習

我想當大家看到本篇的時候,第一個想要問的問題就是:為什么是邏輯回歸,而不是線性回歸。真相其實是都無所謂,理解了機器學習才是最終目的。說到這個問題,就要引出監(jiān)督學習的兩個類型了,分類(邏輯回歸)和回歸(線性回歸)。當你使用邏輯回歸或者線性回歸建立你整個流程的時候(越簡單越好),你會慢慢地熟悉機器學習里的一些概念,例如監(jiān)督學習v.s非監(jiān)督學習,分類v.s回歸,線性v.s非線性等,以及更多問題。你也會知道如何準備你的數(shù)據(jù),以及這過程中有什么挑戰(zhàn)(比如填補缺失值和特征選擇),如何度量評估模型,是該使用準確率,還是精準率和召回率,RUC AUC?又或者可能是 “均方差”和“皮爾遜相關”?所有的概念都都是數(shù)據(jù)科學學習過程中非常重要的知識點。等慢慢熟悉了這些概念以后,你就可以用更復雜的模型或者技巧(一旦你掌握了之后)來替代你之前的簡單模型了。

3. 因為邏輯回歸有的時候,已經(jīng)足夠用了

邏輯回歸是一個非常強大的算法,甚至對于一些非常復雜的問題,它都可以做到游刃有余。拿MNIST舉例,你可以使用邏輯回歸獲得95%的準確率,這個數(shù)字可能并不是一個非常出色的結果,但是它對于保證你的整個流程工作來說已經(jīng)足夠好了。實際上,如果說能夠選擇正確且有代表性的特征,邏輯回歸完全可以做的非常好。

當處理非線性的問題時,我們有時候會用可解釋的線性方式來處理原始數(shù)據(jù)??梢杂靡粋€簡單的例子來說明這種思想:現(xiàn)在我們想要基于這種思想來做一個簡單的分類任務。

X1x2|Y==================-201201-100100

如果我們將數(shù)據(jù)可視化,我們可以看到?jīng)]有一條直線可以將它們分開。

在這種情況下,如果不對數(shù)據(jù)做一些處理的話,邏輯回歸是無法幫到我們的,但是如果我們不用x2特征,而使用x12來代替,那么數(shù)據(jù)將會變成這樣:

X1x1^2|Y==================-241241-110110

現(xiàn)在,就存在一條直線可以將它們分開了。當然,這個簡單的例子只是為了說明這種思想,對于現(xiàn)實世界來講,很難發(fā)現(xiàn)或找到如何改變數(shù)據(jù)的方法以可以使用線性分類器來幫助你。但是,如果你可以在特征工程和特征選擇上多花些時間,那么很可能你的邏輯回歸是可以很好的勝任的。

4. 因為邏輯回歸是統(tǒng)計中的一個重要工具

線性回歸不僅僅可以用來預測。如果你有了一個訓練好的線性模型,你可以通過它學習到因變量和自變量之間的關系,或者用更多的ML語言來說,你可以學習到特征變量和目標變量的關系。一個簡單的例子,房價預測,我們有很多房屋特征,還有實際的房價。我們基于這些數(shù)據(jù)訓練一個線性回歸模型,然后得到了很好的結果。通過訓練,我們可以發(fā)現(xiàn)模型訓練后會給每個特征分配相應的權重。如果某個特征權重很高,我們就可以說這個特征比其它的特征更重要。比如房屋大小特征,對于房價的變化會有50%的權重,因為房屋大小每增加一平米房價就會增加10k。線性回歸是一個了解數(shù)據(jù)以及統(tǒng)計規(guī)律的非常強的工具,同理,邏輯回歸也可以給每個特征分配各自的權重,通過這個權重,我們就可以了解特征的重要性。

5. 因為邏輯回歸是學習神經(jīng)元網(wǎng)絡很好的開始

當學習神經(jīng)元網(wǎng)絡的時候,最開始學習的邏輯回歸對我?guī)椭艽?。你可以將網(wǎng)絡中的每個神經(jīng)元當作一個邏輯回歸:它有輸入,有權重,和閾值,并可以通過點乘,然后再應用某個非線性的函數(shù)得到輸出。更多的是,一個神經(jīng)元網(wǎng)絡的最后一層大多數(shù)情況下是一個簡單的線性模型,看一下最基本的神經(jīng)元網(wǎng)絡:

如果我們更深入地觀察一下output層,可以看到這是一個簡單的線性(或者邏輯)回歸,有hidden layer 2作為輸入,有相應的權重,我們可以做一個點乘然后加上一個非線性函數(shù)(根據(jù)任務而定)??梢哉f,對于神經(jīng)元網(wǎng)絡,一個非常好的思考方式是:將NN劃分為兩部分,一個是代表部分,一個是分類/回歸部分。

第一部分(左側(cè))嘗試從數(shù)據(jù)中學習并具有很好的代表性,然后它會幫助第二個部分(右側(cè))來完成一個線性的分類或者回歸任務。

總結

成為一個數(shù)據(jù)科學家你可能需要掌握很多知識,第一眼看上去,好像學習算法才是最重要的部分。實際的情況是:學習算法確實是所有情況中最復雜的部分,需要花費大量的時間和努力來理解,但它也只是數(shù)據(jù)科學中的一個部分,把握整體更為關鍵。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 算法
    +關注

    關注

    23

    文章

    4552

    瀏覽量

    92024
  • 人工智能
    +關注

    關注

    1787

    文章

    46061

    瀏覽量

    235022

原文標題:5個原因告訴你:為什么在成為數(shù)據(jù)科學家之前,“邏輯回歸”是第一個需要學習的

文章出處:【微信號:AI_shequ,微信公眾號:人工智能愛好者社區(qū)】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    機器學習實戰(zhàn)之logistic回歸

    logistic回歸是一種廣義的線性回歸,通過構造回歸函數(shù),利用機器學習來實現(xiàn)分類或者預測。 原理 上一文簡單介紹了線性回歸,與
    的頭像 發(fā)表于 09-29 15:17 ?2255次閱讀
    機器<b class='flag-5'>學習</b>實戰(zhàn)之logistic<b class='flag-5'>回歸</b>

    回歸預測之入門

    式子吧,不然看一些相關的論文可就看不懂了,這個系列主要將會著重于去機器學習的數(shù)學描述這個部分,將會覆蓋但不一定局限于回歸、聚類、分類等算法。回歸與梯度下降:回歸在數(shù)學上來說是給定一個點
    發(fā)表于 10-15 10:19

    淺析邏輯回歸

    ML-邏輯回歸-公式推導- 多種實現(xiàn)
    發(fā)表于 04-25 15:35

    回歸算法之邏輯回歸的介紹

    回歸算法之邏輯回歸
    發(fā)表于 05-21 16:25

    回歸算法有哪些,常用回歸算法(3種)詳解

    隨機梯度下降來估計系數(shù)。損失函數(shù)通常被定義為交叉熵項: 邏輯回歸用于分類問題,例如,對于給定的醫(yī)療數(shù)據(jù),可以使用邏輯
    發(fā)表于 07-28 14:36

    TensorFlow邏輯回歸處理MNIST數(shù)據(jù)

    /get_started/mnist/beginners提供。大部分人已經(jīng)對 MNIST 數(shù)據(jù)集很熟悉了,它是機器學習的基礎,包含手寫數(shù)字的圖像及其標簽來說明它是哪個數(shù)字。對于邏輯
    發(fā)表于 08-11 19:36

    TensorFlow邏輯回歸處理MNIST數(shù)據(jù)

    /get_started/mnist/beginners提供。大部分人已經(jīng)對 MNIST 數(shù)據(jù)集很熟悉了,它是機器學習的基礎,包含手寫數(shù)字的圖像及其標簽來說明它是哪個數(shù)字。對于邏輯
    發(fā)表于 08-11 19:36

    Edge Impulse的回歸模型

    Edge Impulse的回歸模型可以從數(shù)據(jù)學習模式,并將其應用于新數(shù)據(jù)。 非常適合預測數(shù)字連續(xù)值。
    發(fā)表于 12-20 06:21

    使用KNN進行分類和回歸

    的模型,可以用于回歸和分類任務。大部分的機器學習算法都是用它的名字來描述的KNN也是一樣,使用一個空間來表示鄰居的度量,度量空間根據(jù)集合成員的特征定義它們之間的距離。對于每個測試實例,使用鄰域來估計響應
    發(fā)表于 10-28 14:44

    Python機器學習回歸部分的應用與教程

    install quandl 首先,對于我們將其用于機器學習而言,什么是回歸呢?它的目標是接受連續(xù)數(shù)據(jù),尋找最適合數(shù)據(jù)的方程,并能夠?qū)μ囟?/div>
    發(fā)表于 11-15 18:14 ?4757次閱讀
    Python機器<b class='flag-5'>學習</b><b class='flag-5'>回歸</b>部分的應用與教程

    對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

    對于機器學習/數(shù)據(jù)科學的初學者來說,線性回歸,或者Logistic回歸是許多人在建立預測模型時接觸的第一/第二種方法。由于這兩種算法適用性極
    的頭像 發(fā)表于 04-27 15:55 ?4210次閱讀

    DNN與邏輯回歸效果一樣?

    谷歌用深度學習分析電子病例的重磅論文給出了一個意外的實驗結果,DNN與邏輯回歸效果一樣,引發(fā)了熱烈討論。
    的頭像 發(fā)表于 06-28 16:01 ?6119次閱讀
    DNN與<b class='flag-5'>邏輯</b><b class='flag-5'>回歸</b>效果一樣?

    機器學習回歸分析和回歸方法

    根據(jù)受歡迎程度,線性回歸邏輯回歸經(jīng)常是我們做預測模型時,且第一個學習的算法。但是如果認為回歸就兩個算法,就大錯特錯了。事實上我們有許多類型
    的頭像 發(fā)表于 01-19 17:22 ?3779次閱讀

    機器學習:線性回歸邏輯回歸的理論與實戰(zhàn)

    1、基本概念 要進行機器學習,首先要有數(shù)據(jù)。從數(shù)據(jù)中學得模型的過程稱為“學習”或“訓練”。其對應的過程中有幾個基本術語需要知道。 (1)訓練集:模型訓練過程中使用的
    的頭像 發(fā)表于 12-26 09:58 ?1906次閱讀
    機器<b class='flag-5'>學習</b>:線性<b class='flag-5'>回歸</b>與<b class='flag-5'>邏輯</b><b class='flag-5'>回歸</b>的理論與實戰(zhàn)

    Python 梯度計算模塊如何實現(xiàn)一個邏輯回歸模型

    的標準數(shù)據(jù)庫下編寫的損失函數(shù),它就可以自動計算損失函數(shù)的導數(shù)(梯度)。 我們將從普通斜率計算開始,介紹到如何只使用它來實現(xiàn)一個邏輯回歸模型。 1.準備 開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,可以訪
    的頭像 發(fā)表于 10-21 11:01 ?418次閱讀
    Python 梯度計算模塊如何實現(xiàn)一個<b class='flag-5'>邏輯</b><b class='flag-5'>回歸</b>模型