一文讀懂什麼是機器學習 1 機器學習是什麼

2021-09-07 18:35:33 字數 2712 閱讀 3298

一文讀懂什麼是機器學習--1. 機器學習是什麼?

一文讀懂什麼是機器學習--2. 機器學習的範圍?

一文讀懂什麼是機器學習--3. 機器學習的方法?

一文讀懂什麼是機器學習--4. 機器學習的應用及其子類?

圖1  機器學習界的執牛耳和網際網路界大鱷的聯姻

這三位都是目前業界炙手可熱的大牛,被網際網路界大鱷求賢若渴的聘請,足見他們的重要性。而他們的研究方向,則全部都是機器學習的子類--深度學習。

圖2 語音助手產品

通過上面兩圖,我相信大家可以看出機器學習似乎是乙個很重要的,有很多未知特性的技術。

機器學習這個詞是讓人疑惑的,首先它是英文名稱machine learning(簡稱ml)的直譯,在計算界machine一般指計算機。這個名字使用了擬人的手法,說明了這門技術是讓機器「學習」的技術。但是計算機是死的,怎麼可能像人類一樣「學習」呢?

傳統上如果我們想讓計算機工作,我們給它一串指令,然後它遵照這個指令一步步執行下去。有因有果,非常明確。但這樣的方式在機器學習中行不通。機器學習根本不接受你輸入的指令,相反,它接受你輸入的資料 !  也就是說,機器學習是一種讓計算機利用資料而不是指令來進行各種工作的方法。這聽起來非常不可思議,但結果上卻是非常可行的。

接下來這個例子**於我真實的生活經驗,我在思考這個問題的時候突然發現它的過程可以被擴充化為乙個完整的機器學習的過程,因此我決定使用這個例子作為所有介紹的開始。這個故事稱為「等人問題」。

我乙個朋友小y,他不是那麼守時,最常見的表現是他經常遲到。當有一次我跟他約好3點鐘在某個麥當勞見面時,在我出門的那一刻我突然想到乙個問題:我現在出發合適麼?我會不會又到了地點後,還要花上30分鐘去等他?

我決定採取乙個策略解決這個問題。

我把過往跟小y相約的經歷在腦海中重現一下,看看跟他相約的次數中,遲到佔了多大的比例。而我利用這來**他這次遲到的可能性。如果這個值超出了我心裡的某個界限(閾值),那我選擇等一會再出發。

假設我跟小y約過5次,他遲到的次數是1次,那麼他按時到的比例為80%,我心中的閾值為70%,我認為這次小y應該不會遲到,因此我按時出門。如果小y在5次遲到的次數中佔了4次,也就是他按時到達的比例為20%,由於這個值低於我的閾值,因此我選擇推遲出門的時間。

這個方法從它的利用層面來看,又稱為經驗法。在經驗法的思考過程中,我事實上利用了以往所有相約的資料。因此也可以稱之為依據 資料 做的判斷。依據資料所做的判斷跟機器學習的思想根本上是一致的。

剛才的思考過程我只考慮「頻次」這種屬性。在真實的機器學習中,這可能都不算是乙個應用。一般的機器學習模型至少考慮兩個量:乙個是因變數(是否遲到),也就是我們希望**的結果,在這個例子裡就是小y遲到與否的判斷。另乙個是自變數(為什麼遲到),也就是用來**小y是否遲到的量。

假設我把時間作為自變數,譬如我發現小y所有遲到的日子基本都是星期五,而在非星期五情況下他基本不遲到。於是我可以建立乙個模型,來模擬小y遲到與否跟日子是否是星期五的概率。見下圖:

圖3 決策樹模型

這樣的圖就是乙個最簡單的機器學習模型,稱之為決策樹。

當我們考慮的自變數只有乙個時,情況較為簡單。如果把我們的自變數再增加乙個。例如小y遲到的部分情況時是在他開車過來的時候(你可以理解為他開車水平較臭,或者路較堵)。於是我可以關聯考慮這些資訊。建立乙個更複雜的模型,這個模型包含兩個自變數與乙個因變數。

再更複雜一點,小y的遲到跟天氣也有一定的原因,例如下雨的時候,這時候我需要考慮三個自變數。

如果我希望能夠**小y遲到的具體時間,我可以把他每次遲到的時間跟雨量的大小以及前面考慮的自變數統一建立乙個模型。於是我的模型可以**值,例如他大概會遲到幾分鐘。這樣可以幫助我更好的規劃我出門的時間。在這樣的情況下,決策樹就無法很好地支撐了,因為決策樹只能**離散值。我們可以用一文讀懂什麼是機器學習--3. 機器學習的方法?所介紹的線型回歸方法建立這個模型。

如果我把這些建立模型的過程交給電腦。比如把所有的自變數和因變數輸入,然後讓計算機幫我生成乙個模型,同時讓計算機根據我當前的情況,給出我是否需要遲出門,需要遲幾分鐘的建議。那麼計算機執行這些輔助決策的過程就是機器學習的過程。

通過上面的分析,可以看出機器學習與人類思考的經驗過程是類似的,不過它能考慮更多的情況,執行更加複雜的計算。事實上,機器學習的乙個主要目的就是把人類思考歸納經驗的過程轉化為計算機通過對資料的處理計算得出模型的過程。經過計算機得出的模型能夠以近似於人的方式解決很多靈活複雜的問題。

讓我們把機器學習的過程與人類對歷史經驗歸納的過程做個比對。

圖4 機器學習與人類思考的模擬

機器學習中的「訓練」與「**」過程可以對應到人類的「歸納」和「推測」過程。通過這樣的對應,我們可以發現,機器學習的思想並不複雜,僅僅是對人類在生活中學習成長的乙個模擬。由於機器學習不是基於程式設計形成的結果,因此它的處理過程不是因果的邏輯,而是通過歸納思想得出的相關性結論。

機器學習1 什麼是機器學習

原文 arthur samuel定義機器學習為,在無特定程式設計的情況下,給予計算機學習能力的領域。這個定義不正式而又古老。tom mitchell提供了乙個更現代的定義 乙個程式被認為能從經驗e中學習,解決任務 t,達到 效能度量值p,當且僅當,有了經驗e後,經過p評判,程式在處理 t 時的效能有...

一文讀懂什麼是內網 公網和NAT

1 內網 公網和nat的定義 內網也叫區域網,從範圍上來講內網就是小部分的網路,一般指的是特定環境下組成網路,比如某乙個家庭多台計算機互聯成的網路,也可以學校和公司的大型區域網,內網的ip一般都是192.168.1.100,192.168.0.100,172.16.1.100 這些都是內網ip,內網...

機器學習基石 一 什麼是機器學習

機器學習 從data出發,最終目標是提高可以衡量的某方面表現。可以稱為機器學習的話,這個任務必須有如下三點 沒有簡單的可以定義的解決辦法途徑 例 桌面上有多少件物品是方形的?這件事情有明確定義,明確的規則,不需要機器學習來 如下圖所示 我們用文字再做一次表達 data集包括輸入x和輸出y,從x到y的...