初識機器學習——吳恩達《Machine Learning》學習筆記(一)


Machine Learning的定義

       AI發展出來的一個領域,計算機開發的一項新功能

        定義一:

        在沒有明確設置的情況下,使計算機具有學習能力的研究領域。                          ——Samuel(1959)

        定義二:

        一個適當的學習問題定義如下:計算機程序從經驗E中學習解決某一任務T進行某一性能度量P,通過P測定在T上的表現因經驗E而提高。                                                                                                              ——Tom Mitchell(1998)   

Machine Learning的應用領域

        1.數據挖掘(Database mining)

            ——Web click data,medical records,biology,engineering

        2.無法手動編寫的程序(Applications can't program by hand)

            ——自然語言處理(NLP),計算機視覺(Computer Vision),手寫識別(handwriting recognition),自動化(Autonomous)

        3.個性化推薦(self-customizing programs)

              ——商品推薦

        4.AI:像人類一樣學習(Understanding human learning(brain,real AI))

Machine Learning算法分類

        1.監督學習(Supervised learning)

        2.無監督學習(Unsupervised learning)

        3.強化學習(Reinforcement learning)

        4.推薦系統(recommender systems)

機器學習算法之——監督學習(Supervised learning)

        定義:監督學習是指我們給算法一個數據集,其中包含了“正確答案”,算法的目的是給出更多正確的答案。即根據數據進行結果預測,分為回歸(Regression)問題和分類(Classification)問題

        回歸(Regression):預測一個連續值的輸出(即具體的數值)

        分類(Classification):預測一個離散值的輸出(0 or 1),分類的結果可能有多種(1,2,3,4,and so on)

機器學習算法之——無監督學習(Unsupervised learning)

     定義:無監督學習(聚類算法),將所給的數據進行分簇,事先並沒有給出分簇的規則,即沒有給出“正確的答案”,這里不同於監督學習。(告訴計算機,這是一堆數據,我不知道這些數據是什么,不知道是什么類型以及有哪些類型的數據,你能自動找出這些數據的結構嗎?你能自動按得到的類型把這些數據分成簇嗎?)

      應用:大型計算機集群、社交網絡分析、市場分析、天文數據分析

      聚類只是無監督學習中的一種,比如還有,雞尾酒會問題算法

機器學習例子之——房價預測

       模型(model):

            m——表示訓練樣本的數量(Number of training examples)

             x——表示輸入變量(‘input’variable or features)

             y——表示輸出變量(‘output’variable or features)

           (x,y)——表示一個訓練樣本(one training example)

單變量線性回歸(Univariate linear regression)

 

假設函數(Hpothesis):

 

代價函數(Cost Function):

    ——其意義在於找到假設函數的最佳參數,從而確定最佳的假設函數。代價函數又稱為平方誤差函數,或者平方誤差代價函數,這是解決線性回歸問題常用的函數。這里需要用到均方誤差(square error cost function),所以,需要回去好好復習均方誤差。

 

均方誤差(square error cost function):

    定義:表示參數預估值與參數真值之差平方的期望值,記為MSE。機器學習中它經常被用於表示預測值和實際值相差的程度。

    數學表達式:

    

  梯度下降(Gradient descent):

    定義:梯度下降是迭代法中的一種,可以用於求解最小二乘問題。在求解機器學習算法的模型參數,即無約束優化問題時,梯度下降(Gradient Descent)是最常采用的方法之一,另一種常用的方法是最小二乘法。在求解損失函數的最小值時,可以通過梯度下降法來一步步的迭代求解,得到最小化的損失函數和模型參數值。反過來,如果我們需要求解損失函數的最大值,這時就需要用梯度上升法來迭代了。在機器學習中,基於基本的梯度下降法發展了兩種梯度下降方法,分別為隨機梯度下降法和批量梯度下降法。(百度百科)

 

等高線圖:將三維的空間圖轉化為二維圖形求兩個參數下的代價函數最小值。不同的梯度下降起始點可能會得到不同的局部最優點。

 

梯度下降算法:

    目的:尋找代價函數最小時的參數

    方法:找到梯度最大的方向

    結果:局部最優解

    注意:同步更新


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM