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

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

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

機器學習和深度學習算法流程

中服云工業(yè)新風向 ? 來源:工業(yè)新風向 ? 作者:工業(yè)新風向 ? 2022-04-26 15:07 ? 次閱讀

深度學習這幾年特別火,就像5年前的大數(shù)據(jù)一樣,不過深度學習其主要還是屬于機器學習的范疇領域內(nèi),所以這篇文章里面我們來嘮一嘮機器學習和深度學習的算法流程區(qū)別。

機器學習和深度學習算法流程

終于考上人工智能的研究僧啦,不知道機器學習和深度學習有啥區(qū)別,感覺一切都是深度學習。

挖槽,聽說學長已經(jīng)調(diào)了10個月的參數(shù)準備發(fā)有2000億參數(shù)的T9開天霹靂模型,我要調(diào)參發(fā)T10準備拿個Best Paper。

現(xiàn)在搞傳統(tǒng)機器學習相關的研究論文確實占比不太高,有的人吐槽深度學習就是個系統(tǒng)工程而已,沒有數(shù)學含金量。

但是無可否認的是深度學習實在太好用啦!極大地簡化了傳統(tǒng)機器學習的整體算法分析和學習流程,更重要的是在一些通用的領域任務刷新了傳統(tǒng)機器學習算法達不到的精度和準確率。

深度學習這幾年特別火,就像5年前的大數(shù)據(jù)一樣,不過深度學習其主要還是屬于機器學習的范疇領域內(nèi),所以這篇文章里面我們來嘮一嘮機器學習和深度學習的算法流程區(qū)別。

67db2eb8-c52c-11ec-bce3-dac502259ad0.png

—01—機器學習的算法流程

實際上機器學習研究的就是數(shù)據(jù)科學(聽上去有點無聊),下面是機器學習算法的主要流程:

(1)數(shù)據(jù)集準備

(2)探索性地對數(shù)據(jù)進行分析

(3)數(shù)據(jù)預處理

(4)數(shù)據(jù)分割

(5)機器學習算法建模

(6)選擇機器學習任務

(7)最后就是評價機器學習算法對實際數(shù)據(jù)的應用情況如何

680e095a-c52c-11ec-bce3-dac502259ad0.png

1.1數(shù)據(jù)集

首先我們要研究的是數(shù)據(jù)的問題,數(shù)據(jù)集是構建機器學習模型流程的起點。簡單來說,數(shù)據(jù)集本質上是一個M×N矩陣,其中M代表列(特征),N代表行(樣本)。

列可以分解為X和Y,X是可以指特征、獨立變量或者是輸入變量。Y也是可以指類別標簽、因變量和輸出變量。

68447968-c52c-11ec-bce3-dac502259ad0.png

1.2數(shù)據(jù)分析進行探索性數(shù)據(jù)分析(Exploratorydata analysis, EDA)是為了獲得對數(shù)據(jù)的初步了解。EDA主要的工作是:對數(shù)據(jù)進行清洗,對數(shù)據(jù)進行描述(描述統(tǒng)計量,圖表),查看數(shù)據(jù)的分布,比較數(shù)據(jù)之間的關系,培養(yǎng)對數(shù)據(jù)的直覺,對數(shù)據(jù)進行總結等。 探索性數(shù)據(jù)分析方法簡單來說就是去了解數(shù)據(jù),分析數(shù)據(jù),搞清楚數(shù)據(jù)的分布。主要注重數(shù)據(jù)的真實分布,強調(diào)數(shù)據(jù)的可視化,使分析者能一目了然看出數(shù)據(jù)中隱含的規(guī)律,從而得到啟發(fā),以此幫助分析者找到適合數(shù)據(jù)的模型。 在一個典型的機器學習算法流程和數(shù)據(jù)科學項目里面,我做的第一件事就是通過 "盯住數(shù)據(jù)",以便更好地了解數(shù)據(jù)。個人通常使用的三大EDA方法包括:描述性統(tǒng)計平均數(shù)、中位數(shù)、模式、標準差。

688b9582-c52c-11ec-bce3-dac502259ad0.png

數(shù)據(jù)可視化

熱力圖(辨別特征內(nèi)部相關性)、箱形圖(可視化群體差異)、散點圖(可視化特征之間的相關性)、主成分分析(可視化數(shù)據(jù)集中呈現(xiàn)的聚類分布)等。

68c75d10-c52c-11ec-bce3-dac502259ad0.png

數(shù)據(jù)整形

對數(shù)據(jù)進行透視、分組、過濾等。

68ff0576-c52c-11ec-bce3-dac502259ad0.png

1.3數(shù)據(jù)預處理

數(shù)據(jù)預處理,其實就是對數(shù)據(jù)進行清理、數(shù)據(jù)整理或普通數(shù)據(jù)處理。指對數(shù)據(jù)進行各種檢查和校正過程,以糾正缺失值、拼寫錯誤、使數(shù)值正常化/標準化以使其具有可比性、轉換數(shù)據(jù)(如對數(shù)轉換)等問題。

例如對圖像進行resize成統(tǒng)一的大小或者分辨率。

數(shù)據(jù)的質量將對機器學習算法模型的質量好壞產(chǎn)生很大的影響。因此,為了達到最好的機器學習模型質量,傳統(tǒng)的機器學習算法流程中,其實很大一部分工作就是在對數(shù)據(jù)進行分析和處理。

一般來說,數(shù)據(jù)預處理可以輕松地占到機器學習項目流程中80%的時間,而實際的模型建立階段和后續(xù)的模型分析大概僅占到剩余的20%。

1.4數(shù)據(jù)分割訓練集 & 測試集

在機器學習模型的開發(fā)流程中,希望訓練好的模型能在新的、未見過的數(shù)據(jù)上表現(xiàn)良好。為了模擬新的、未見過的數(shù)據(jù),對可用數(shù)據(jù)進行數(shù)據(jù)分割,從而將已經(jīng)處理好的數(shù)據(jù)集分割成2部分:訓練集合測試集。

第一部分是較大的數(shù)據(jù)子集,用作訓練集(如占原始數(shù)據(jù)的80%);第二部分通常是較小的子集,用作測試集(其余20%的數(shù)據(jù))。

接下來,利用訓練集建立預測模型,然后將這種訓練好的模型應用于測試集(即作為新的、未見過的數(shù)據(jù))上進行預測。根據(jù)模型在測試集上的表現(xiàn)來選擇最佳模型,為了獲得最佳模型,還可以進行超參數(shù)優(yōu)化。

695592b0-c52c-11ec-bce3-dac502259ad0.png

訓練集 & 驗證集 & 測試集

另一種常見的數(shù)據(jù)分割方法是將數(shù)據(jù)分割成3部分:

(1)訓練集

(2)驗證集

(3) 測試集

訓練集用于建立預測模型,同時對驗證集進行評估,據(jù)此進行預測,可以進行模型調(diào)優(yōu)(如超參數(shù)優(yōu)化),并根據(jù)驗證集的結果選擇性能最好的模型。

驗證集的操作方式跟訓練集類似。不過值得注意的是,測試集不參與機器學習模型的建立和準備,是機器學習模型訓練過程中單獨留出的樣本集,用于調(diào)整模型的超參數(shù)和對模型的能力進行初步評估。通常邊訓練邊驗證,這里的驗證就是用驗證集來檢驗模型的初步效果。

6984afd2-c52c-11ec-bce3-dac502259ad0.png

交叉驗證

實際上數(shù)據(jù)是機器學習流程中最寶貴的,為了更加經(jīng)濟地利用現(xiàn)有數(shù)據(jù),通常使用N倍交叉驗證,將數(shù)據(jù)集分割成N個。在這樣的N倍數(shù)據(jù)集中,其中一個被留作測試數(shù)據(jù),而其余的則被用作建立模型的訓練數(shù)據(jù)。通過反復交叉迭代的方式來對機器學習流程進行驗證。

這種交叉驗證的方法在機器學習流程中被廣泛的使用,但是深度學習中使用得比較少哈。

69a704d8-c52c-11ec-bce3-dac502259ad0.png

1.5機器學習算法建模下面是最有趣的部分啦,數(shù)據(jù)篩選和處理過程其實都是很枯燥乏味的,現(xiàn)在可以使用精心準備的數(shù)據(jù)來建模。根據(jù)taget變量(通常稱為Y變量)的數(shù)據(jù)類型,可以建立一個分類或回歸模型。機器學習算法

機器學習算法可以大致分為以下三種類型之一:

(1)監(jiān)督學習

是一種機器學習任務,建立輸入X和輸出Y變量之間的數(shù)學(映射)關系。這樣的(X、Y)對構成了用于建立模型的標簽數(shù)據(jù),以便學習如何從輸入中預測輸出。

(2)無監(jiān)督學習

是一種只利用輸入X變量的機器學習任務。X變量是未標記的數(shù)據(jù),學習算法在建模時使用的是數(shù)據(jù)的固有結構。

(3)強化學習

是一種決定下一步行動方案的機器學習任務,它通過試錯學習(trial and error learning)來實現(xiàn)這一目標,努力使reward回報最大化。

參數(shù)調(diào)優(yōu)

傳說中的調(diào)參俠主要干的就是這個工作啦。超參數(shù)本質上是機器學習算法的參數(shù),直接影響學習過程和預測性能。由于沒有萬能的超參數(shù)設置,可以普遍適用于所有數(shù)據(jù)集,因此需要進行超參數(shù)優(yōu)化。

以隨機森林為例。在使用randomForest時,通常會對兩個常見的超參數(shù)進行優(yōu)化,其中包括mtry和ntree參數(shù)。mtry(maxfeatures)代表在每次分裂時作為候選變量隨機采樣的變量數(shù)量,而ntree(nestimators)代表要生長的樹的數(shù)量。

另一種在10年前仍然非常主流的機器學習算法是支持向量機SVM。需要優(yōu)化的超參數(shù)是徑向基函數(shù)(RBF)內(nèi)核的C參數(shù)和gamma參數(shù)。C參數(shù)是一個限制過擬合的懲罰項,而gamma參數(shù)則控制RBF核的寬度。

調(diào)優(yōu)通常是為了得出超參數(shù)的較佳值集,很多時候不要去追求找到超參一個最優(yōu)值,其實調(diào)參俠只是調(diào)侃調(diào)侃,真正需要理解掌握算法原理,找到適合數(shù)據(jù)和模型的參數(shù)就可以啦。

特征選擇

特征選擇從字面上看就是從最初的大量特征中選擇一個特征子集的過程。除了實現(xiàn)高精度的模型外,機器學習模型構建最重要的一個方面是獲得可操作的見解,為了實現(xiàn)這一目標,能夠從大量的特征中選擇出重要的特征子集非常重要。

特征選擇的任務本身就可以構成一個全新的研究領域,在這個領域中,大量的努力都是為了設計新穎的算法和方法。從眾多可用的特征選擇算法中,一些經(jīng)典的方法是基于模擬退火和遺傳算法。除此之外,還有大量基于進化算法(如粒子群優(yōu)化、蟻群優(yōu)化等)和隨機方法(如蒙特卡洛)的方法。

69d5f6f8-c52c-11ec-bce3-dac502259ad0.png

1.6機器學習任務在監(jiān)督學習中,兩個常見的機器學習任務包括分類和回歸。分類一個訓練好的分類模型將一組變量作為輸入,并預測輸出的類標簽。下圖是由不同顏色和標簽表示的三個類。每一個小的彩色球體代表一個數(shù)據(jù)樣本。三類數(shù)據(jù)樣本在二維中的顯示,這種可視化圖可以通過執(zhí)行PCA分析并顯示前兩個主成分(PC)來創(chuàng)建;或者也可以選擇兩個變量的簡單散點圖可視化。

69f1c23e-c52c-11ec-bce3-dac502259ad0.png

性能指標如何知道訓練出來的機器學習模型表現(xiàn)好或壞?就是使用性能評價指標(metrics),一些常見的評估分類性能的指標包括準確率(AC)、靈敏度(SN)、特異性(SP)和馬太相關系數(shù)(MCC)。回歸最簡單的回歸模式,可以通過以下簡單等式很好地總結:Y = f(X)。其中,Y對應量化輸出變量,X指輸入變量,f指計算輸出值作為輸入特征的映射函數(shù)(從機器學習模型中得到)。

6a1abb4e-c52c-11ec-bce3-dac502259ad0.png

上面的回歸例子公式的實質是,如果X已知,就可以推導出Y。一旦Y被計算(預測)出來,一個流行的可視化方式是將實際值與預測值做一個簡單的散點圖,如下圖所示。 對回歸模型的性能進行評估,以評估擬合模型可以準確預測輸入數(shù)據(jù)值的程度。評估回歸模型性能的常用指標是確定系數(shù)(R2)。此外,均方誤差(MSE)以及均方根誤差(RMSE)也是衡量殘差或預測誤差的常用指標。 —02—深度學習算法流程

深度學習實際上是機器學習中的一種范式,所以他們的主要流程是差不多的。深度學習則是優(yōu)化了數(shù)據(jù)分析,建模過程的流程也是縮短了,由神經(jīng)網(wǎng)絡統(tǒng)一了原來機器學習中百花齊放的算法。

在深度學習正式大規(guī)模使用之前呢,機器學習算法流程中要花費很多時間去收集數(shù)據(jù),然后對數(shù)據(jù)進行篩選,嘗試各種不同的特征提取機器學習算法,或者結合多種不同的特征對數(shù)據(jù)進行分類和回歸。

6a4815c6-c52c-11ec-bce3-dac502259ad0.png

下面是機器學習算法的主要流程:主要從

(1)數(shù)據(jù)集準備 (2)數(shù)據(jù)預處理 (3)數(shù)據(jù)分割 (4)定義神經(jīng)網(wǎng)絡模型 (5)訓練網(wǎng)絡 深度學習不需要我們自己去提取特征,而是通過神經(jīng)網(wǎng)絡自動對數(shù)據(jù)進行高維抽象學習,減少了特征工程的構成,在這方面節(jié)約了很多時間。 但是同時因為引入了更加深、更復雜的網(wǎng)絡模型結構,所以調(diào)參工作變得更加繁重啦。例如:定義神經(jīng)網(wǎng)絡模型結構、確認損失函數(shù)、確定優(yōu)化器,最后就是反復調(diào)整模型參數(shù)的過程。

審核編輯 :李倩

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

原文標題:機器學習和深度學習的區(qū)別到底是什么?

文章出處:【微信號:cserversoft,微信公眾號:中服云工業(yè)新風向】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    人工智能、機器學習深度學習存在什么區(qū)別

    人工智能指的是在某種程度上顯示出類似人類智能的設備。AI有很多技術,但其中一個很大的子集是機器學習——讓算法從數(shù)據(jù)中學習。
    發(fā)表于 10-24 17:22 ?2423次閱讀
    人工智能、<b class='flag-5'>機器</b><b class='flag-5'>學習</b>和<b class='flag-5'>深度</b><b class='flag-5'>學習</b>存在什么區(qū)別

    AI大模型與深度學習的關系

    AI大模型與深度學習之間存在著密不可分的關系,它們互為促進,相輔相成。以下是對兩者關系的介紹: 一、深度學習是AI大模型的基礎 技術支撐 :深度
    的頭像 發(fā)表于 10-23 15:25 ?304次閱讀

    深度學習算法在嵌入式平臺上的部署

    隨著人工智能技術的飛速發(fā)展,深度學習算法在各個領域的應用日益廣泛。然而,將深度學習算法部署到資源
    的頭像 發(fā)表于 07-15 10:03 ?1097次閱讀

    利用Matlab函數(shù)實現(xiàn)深度學習算法

    在Matlab中實現(xiàn)深度學習算法是一個復雜但強大的過程,可以應用于各種領域,如圖像識別、自然語言處理、時間序列預測等。這里,我將概述一個基本的流程,包括環(huán)境設置、數(shù)據(jù)準備、模型設計、訓
    的頭像 發(fā)表于 07-14 14:21 ?1794次閱讀

    深度學習中的無監(jiān)督學習方法綜述

    深度學習作為機器學習領域的一個重要分支,近年來在多個領域取得了顯著的成果,特別是在圖像識別、語音識別、自然語言處理等領域。然而,深度
    的頭像 發(fā)表于 07-09 10:50 ?385次閱讀

    深度學習的基本原理與核心算法

    隨著大數(shù)據(jù)時代的到來,傳統(tǒng)機器學習方法在處理復雜模式上的局限性日益凸顯。深度學習(Deep Learning)作為一種新興的人工智能技術,以其強大的非線性表達能力和自
    的頭像 發(fā)表于 07-04 11:44 ?1546次閱讀

    人工智能、機器學習深度學習是什么

    在科技日新月異的今天,人工智能(Artificial Intelligence, AI)、機器學習(Machine Learning, ML)和深度學習(Deep Learning,
    的頭像 發(fā)表于 07-03 18:22 ?1014次閱讀

    機器學習算法原理詳解

    機器學習作為人工智能的一個重要分支,其目標是通過讓計算機自動從數(shù)據(jù)中學習并改進其性能,而無需進行明確的編程。本文將深入解讀幾種常見的機器學習
    的頭像 發(fā)表于 07-02 11:25 ?671次閱讀

    深度學習與傳統(tǒng)機器學習的對比

    在人工智能的浪潮中,機器學習深度學習無疑是兩大核心驅動力。它們各自以其獨特的方式推動著技術的進步,為眾多領域帶來了革命性的變化。然而,盡管它們都屬于
    的頭像 發(fā)表于 07-01 11:40 ?1100次閱讀

    機器學習的經(jīng)典算法與應用

    關于數(shù)據(jù)機器學習就是喂入算法和數(shù)據(jù),讓算法從數(shù)據(jù)中尋找一種相應的關系。Iris鳶尾花數(shù)據(jù)集是一個經(jīng)典數(shù)據(jù)集,在統(tǒng)計學習
    的頭像 發(fā)表于 06-27 08:27 ?1545次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學習</b>的經(jīng)典<b class='flag-5'>算法</b>與應用

    為什么深度學習的效果更好?

    導讀深度學習機器學習的一個子集,已成為人工智能領域的一項變革性技術,在從計算機視覺、自然語言處理到自動駕駛汽車等廣泛的應用中取得了顯著的成功。深度
    的頭像 發(fā)表于 03-09 08:26 ?579次閱讀
    為什么<b class='flag-5'>深度</b><b class='flag-5'>學習</b>的效果更好?

    【技術科普】主流的深度學習模型有哪些?AI開發(fā)工程師必備!

    深度學習在科學計算中獲得了廣泛的普及,其算法被廣泛用于解決復雜問題的行業(yè)。所有深度學習算法都使用
    的頭像 發(fā)表于 01-30 15:26 ?564次閱讀
    【技術科普】主流的<b class='flag-5'>深度</b><b class='flag-5'>學習</b>模型有哪些?AI開發(fā)工程師必備!

    什么是深度學習機器學習深度學習的主要差異

    2016年AlphaGo 擊敗韓國圍棋冠軍李世石,在媒體報道中,曾多次提及“深度學習”這個概念。
    的頭像 發(fā)表于 01-15 10:31 ?968次閱讀
    什么是<b class='flag-5'>深度</b><b class='flag-5'>學習</b>?<b class='flag-5'>機器</b><b class='flag-5'>學習</b>和<b class='flag-5'>深度</b><b class='flag-5'>學習</b>的主要差異

    目前主流的深度學習算法模型和應用案例

    深度學習在科學計算中獲得了廣泛的普及,其算法被廣泛用于解決復雜問題的行業(yè)。所有深度學習算法都使用
    的頭像 發(fā)表于 01-03 10:28 ?1649次閱讀
    目前主流的<b class='flag-5'>深度</b><b class='flag-5'>學習</b><b class='flag-5'>算法</b>模型和應用案例

    深度學習在人工智能中的 8 種常見應用

    深度學習簡介深度學習是人工智能(AI)的一個分支,它教神經(jīng)網(wǎng)絡學習和推理。近年來,它解決復雜問題并在各個領域提供尖端性能的能力引起了極大的興
    的頭像 發(fā)表于 12-01 08:27 ?3193次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>學習</b>在人工智能中的 8 種常見應用