機器學習學習筆記——基本知識

程序计算机人發表於2024-04-15

  被我們老師說一定要學AI相關的,所以開始認真學了。(但是仍然不知道學了有什麼用,吐槽)

  參考:

          有參考連結的,網站是這個https://www.showmeai.tech/article-detail/185。很推薦這個網站,看了第一篇就決定繼續看下去了。

  本篇只是一些知識概論,從這一篇開始設定重點不會從索引入手了,直接使用鮮明顏色標註,為了減少大腦負擔儘可能地抽象可以抽象的知識,顏色不會有很多,最多三種。還是建議去showmeAI網站看,更加詳細,還有圖片。

  關於字型顏色:

          藍色表示實踐體悟意思更好,紅色表示一定要記住,黑色表示看一遍就可以了(如果做題的時候遇到了再在自己的筆記改一下顏色就行,現階段不要讓腦子充斥那麼多資訊)

  1. 機器學習概述

    1)什麼是機器學習

        人工智慧(Artificial intelligence)是研究、開發用於模擬、延伸和擴充套件人的智慧的理論、方法、技術及應用系統的一門新的技術科學。有很長一段發展史。

        機器學習(Machine learning)是人工智慧的子集,是實現人工智慧的一種途徑,但並不是唯一的途徑。

        深度學習(Deep learning)是機器學習的子集,靈感來自人腦,由人工神經網路(ANN)組成,它模仿人腦中存在的相似結構。

        區別:機器學習是區別於顯式程式設計的,我們不需要編寫無數的規則,而是由人提供特徵,機器學會規則。

           深度學習是人類並不會給予特徵(比如說一個Dataframe),而是提供影像等讓機器自己尋找特徵,像人的眼睛一樣,自己得出特徵的定義。

        機器學習研究的是計算機怎樣模擬人類的學習行為,以獲取新的知識或技能,並重新組織已有的知識結構,使之不斷改善自身。

    2)機器學習三要素

        機器學習三要素包括資料、模型、演算法。

        可以抽象理解成資料,函式,函式實現具體方法。

    3)機器學習核心技術


        分類:應用以分類資料進行模型訓練,根據模型對新樣本進行精準分類與預測。
        聚類:從海量資料中識別資料的相似性與差異性,並按照最大共同點聚合為多個類別。
        異常檢測:對資料點的分佈規律進行分析,識別與正常資料及差異較大的離群點。
        迴歸:根據對已知屬性值資料的訓練,為模型尋找最佳擬合引數,基於模型預測新樣本的輸出值。

    4)機器學習基本流程

        機器學習工作流(WorkFlow)包含資料預處理(Processing)、模型學習(Learning)、模型評估(Evaluation)、新樣本預測(Prediction)幾個步驟。

        (在學習相關的演算法的時候會有更多的感悟,所以給個藍色)
        資料預處理:輸入(未處理的資料 + 標籤)→處理過程(特徵處理+幅度縮放、特徵選擇、維度約減、取樣)→輸出(測試集 + 訓練集)。
        模型學習:模型選擇、交叉驗證、結果評估、超參選擇。
        模型評估:瞭解模型對於資料集測試的得分。
        新樣本預測:預測測試集。

  2.機器學習基本名詞

      監督學習(Supervised Learning):訓練集有標記資訊,學習方式有分類和迴歸。
      無監督學習(Unsupervised Learning):訓練集沒有標記資訊,學習方式有聚類和降維。
      強化學習(Reinforcement Learning):有延遲和稀疏的反饋標籤的學習方式。

      示例/樣本:上面一條資料集中的一條資料。
      屬性/特徵:「色澤」「根蒂」等。
      屬性空間/樣本空間/輸入空間X:由全部屬性張成的空間。
      特徵向量:空間中每個點對應的一個座標向量。
      標記:關於示例結果的資訊,如((色澤=青綠,根蒂=蜷縮,敲聲=濁響),好瓜),其中「好瓜」稱為標記。
      分類:若要預測的是離散值,如「好瓜」,「壞瓜」,此類學習任務稱為分類。
      假設:學得模型對應了關於資料的某種潛在規律。
      真相:潛在規律自身。
      學習過程:是為了找出或逼近真相。
      泛化能力:學得模型適用於新樣本的能力。一般來說,訓練樣本越大,越有可能透過學習來獲得具有強泛化能力的模型。

  3.機器學習演算法分類

    2)分類問題

      二分類問題:表示分類任務中有兩個類別新的樣本屬於哪種已知的樣本類。
      多類分類(Multiclass classification)問題:表示分類任務中有多類別。
      多標籤分類(Multilabel classification)問題:給每個樣本一系列的目標標籤。

      其他演算法……

  4.機器學習模型評估與選擇

    1)機器學習與資料擬合

        機器學習最典型的監督學習為分類與迴歸問題。分類問題中,我們學習出來一條「決策邊界」完成資料區分;在迴歸問題中,我們學習出擬合樣本分佈的曲線。

    2)訓練集與資料集

        我們以房價預估為例,講述一下涉及的概念。

        訓練集(Training Set):幫助訓練模型,簡單的說就是透過訓練集的資料讓確定擬合曲線的引數。
        測試集(Test Set):為了測試已經訓練好的模型的精確度。

    3)經驗誤差

        在訓練集的資料上進行學習。模型在訓練集上的誤差稱為「經驗誤差」(Empirical Error)。但是經驗誤差並不是越小越好,因為我們希望在新的沒有見過的資料上,也能有好的預估結果。

    4)過擬合

        過擬合,指的是模型在訓練集上表現的很好,但是在交叉驗證集合測試集上表現一般,也就是說模型對未知樣本的預測表現一般,泛化(Generalization)能力較差。

        如何防止過擬合呢?一般的方法有Early Stopping、資料集擴增(Data Augmentation)、正則化、Dropout等。

        正則化:指的是在目標函式後面新增一個正則化項,一般有L1正則化與L2正則化。L1正則是基於L1範數,即在目標函式後面加上引數的L1範數和項,即引數絕對值和與引數的積項。

        資料集擴增:即需要得到更多的符合要求的資料,即和已有的資料是獨立同分布的,或者近似獨立同分布的。一般方法有:從資料來源頭採集更多資料、複製原有資料並加上隨機噪聲、重取樣、根據當前資料集估計資料分佈引數,使用該分佈產生更多資料等。

        DropOut:透過修改神經網路本身結構來實現的。

       (未標藍是因為在學演算法的時候我還沒有遇到過擬合)

    5)偏差

        偏差(Bias),它通常指的是模型擬合的偏差程度。給定無數套訓練集而期望擬合出來的模型就是平均模型。偏差就是真實模型和平均模型的差異。

        簡單模型是一組直線,平均之後得到的平均模型是一條直的虛線,與真實模型曲線的差別較大(灰色陰影部分較大)。因此,簡單模型通常高偏差 。

        複雜模型是一組起伏很大波浪線,平均之後最大值和最小組都會相互抵消,和真實模型的曲線差別較小,因此複雜模型通常低偏差(見黃色曲線和綠色虛線幾乎重合)。

    6)方差

        方差(Variance),它通常指的是模型的平穩程度(簡單程度)。簡單模型的對應的函式如出一轍,都是水平直線,而且平均模型的函式也是一條水平直線,因此簡單模型的方差很小,並且對資料的變動不敏感。

        複雜模型的對應的函式千奇百怪,毫無任何規則,但平均模型的函式也是一條平滑的曲線,因此複雜模型的方差很大,並且對資料的變動很敏感。

    7)偏差與方差的平衡

    8)效能度量指標

          效能度量是衡量模型泛化能力的數值評價標準,反映了當前問題(任務需求)。使用不同的效能度量可能會導致不同的評判結果。更詳細的內容可見 模型評估方法與準則(也就是原網站的下一篇,這裡應該會學習幾個演算法後再去看)

        (1)迴歸問題

            關於模型「好壞」的判斷,不僅取決於演算法和資料,還取決於當前任務需求。迴歸問題常用的效能度量指標有:平均絕對誤差、均方誤差、均方根誤差、R平方等。

機器學習基礎知識; 模型評估與選擇; 效能度量指標-迴歸問題 ;


平均絕對誤差(Mean Absolute Error,MAE),又叫平均絕對離差,是所有標籤值與迴歸模型預測值的偏差的絕對值的平均。
平均絕對百分誤差(Mean Absolute Percentage Error,MAPE)是對MAE的一種改進,考慮了絕對誤差相對真實值的比例。
均方誤差(Mean Square Error,MSE)相對於平均絕對誤差而言,均方誤差求的是所有標籤值與迴歸模型預測值的偏差的平方的平均。
均方根誤差(Root-Mean-Square Error,RMSE),也稱標準誤差,是在均方誤差的基礎上進行開方運算。RMSE會被用來衡量觀測值同真值之間的偏差。(KNN演算法使用)
R平方,決定係數,反映因變數的全部變異能透過目前的迴歸模型被模型中的自變數解釋的比例。比例越接近於1,表示當前的迴歸模型對資料的解釋越好,越能精確描述資料的真實分佈。

        (2)分類問題

            分類問題常用的效能度量指標包括錯誤率(Error Rate)、精確率(Accuracy)、查準率(Precision)、查全率(Recall)、F1、ROC曲線、AUC曲線和R平方等。


錯誤率:分類錯誤的樣本數佔樣本總數的比例。
精確率:分類正確的樣本數佔樣本總數的比例。
查準率(也稱準確率),即在檢索後返回的結果中,真正正確的個數佔你認為是正確的結果的比例。
查全率(也稱召回率),即在檢索結果中真正正確的個數,佔整個資料集(檢索到的和未檢索到的)中真正正確個數的比例。
F1是一個綜合考慮查準率與查全率的度量,其基於查準率與查全率的調和平均定義:即:F1度量的一般形式-Fβ,能讓我們表達出對查準率、查全率的不同偏好。


ROC曲線(Receiver Operating Characteristic Curve)全稱是「受試者工作特性曲線」。綜合考慮了機率預測排序的質量,體現了學習器在不同任務下的「期望泛化效能」的好壞。ROC曲線的縱軸是「真正例率」(TPR),橫軸是「假正例率」(FPR)。

    9)評估方法

          ……

    10)模型調優與選擇準則

          我們希望找到對當前問題表達能力好,且模型複雜度較低的模型

    11)如何選擇最優的模型

      (1)驗證集評估選擇

          切分資料為訓練集和驗證集。
          對於準備好的候選超引數,在訓練集上進行模型,在驗證集上評估。

      (2)網格搜尋/隨機搜尋交叉驗證

          透過網格搜尋/隨機搜尋產出候選的超引數組。
          對引數組的每一組超引數,使用交叉驗證評估效果。
          選出效果最好的超引數。

          (想了想還是標藍了)

      (3)貝葉斯最佳化

          基於貝葉斯最佳化的超引數調優。

轉載自:https://www.showmeai.tech/article-detail/185

相關文章