大家對AI抱有很高熱情,也有很多想象,但沒法比較準確地概括出AI,并做出一些判斷。以下知識可能是個很好的開始,不需要太多基礎,最多是高中數學就可以,只需要耐心地花上15-20分鐘,并跟著一起思考,相信對您加深對AI的理解會有一些幫助。 ? 那么,我們開始: ?
機器學習主要價值就是學習一個經驗E,根據這個學習到的經驗E去執行一個任務T,目標是優化執行任務T的表現P。 ? 比如:在銀行,根據數據,AI學習客戶表現和客戶信用之間的關系,這個關系是經驗E;然后為每個客戶實時計算更準確的信用卡額度,這個是任務T;目標P是在一定風險承擔范圍內,增加銀行信用卡收入。(因為之前一刀切的額度變更準則,遠遠不如AI指定的精細額度有效率。) ? 好了,了解了AI是干什么的,那AI是怎么干呢?
機器學習的基礎流程
具體流程如下圖,請大家明晰,這七步是在干什么,以什么邏輯和時間軸。后續的介紹將聚焦在其中一兩個步驟。但我們經?;煜?,比如混淆AI訓練和AI執行任務。 ?
1.????選擇算法。比如,剛才銀行的例子,我們先要對客戶進行分類找到黑名單,這是分類算法,也要通過客戶行為預測他的額度水平,這是回歸算法。前篇對于Transformer的討論,就是一個最新的高級一些的算法。
2.???準備高質量的數據,并進行特征工程。通常這些要花費很多時間,特別是工業界,往往沒有高質量的數據。這里數據質量有四個層面:一是絕對的數據量,這個好理解。二是樣本數據,比如,在銀行風控領域,如果只是交易數據,那不是樣本,必須有真正的欺詐數據;比如,在設備管理領域,不但要有設備的運行數據,還要有設備的故障數據,這樣機器才可以真正學習。三是數據的處理效率,對于AI真正有價值的往往是實時數據,這是發揮AI決策最大價值的關鍵。四是特征工程,只有數據是不夠的,要進行處理,拿出機器可以理解而且有價值的特征才是根本。最簡單的例子就是男、女要分別改成0或1。特征工程是AI計算最重要的領域,整個深度學習的神經網絡可以理解為就是在做數據的特征工程。
3.???對數據用算法進行訓練。這個訓練的過程才是讓機器有能力執行任務的關鍵步驟,而且很多計算算法的邏輯也針對的這部分。我們講算力是決定性因素,也往往指訓練階段的算力瓶頸。
4.??訓練結束一般還要做很多測試,確保這個經驗是能夠應對多種情況,從而真正形成經驗E。
5.???經驗E要用到生產系統,實時地執行任務T。比如,上面例子中,我們核心任務是對每個用戶的信用額度動態調整。
6.???評估執行表現。AI的表現相對于人工會提升多少,和計劃是否有偏差等。
7.???持續優化。這里的優化是全方位的,既要更新算法,提高數據質量,又要有更擬合的訓練結果及更實時地執行任務等。經常聽客戶說,AI可能在我們這里落地效果不好。其實AI在哪里落地,剛開始時效果都不會好,真正讓AI起作用,是需要持續優化。第四范式的很多AI驅動的客戶,也把這一條當做自己重要的核心競爭力,即持續迭代的能力。
機器學習的理論基礎
我們先從這個經驗E如何訓練出來談起。 ? 假設,這個經驗E可以抽象成一個線性關系(當然現實世界不一定是簡單的線性關系,這里只是簡單化處理),即設Y=f(x)=wx+b,x是銀行數據(比如:還款逾期率),Y是信用額度。我們要學習的經驗E,就是學習這個f( ),這個概念很重要,建議停下來稍加理解。 ? 要想得到f( ),需要先拿一些樣本(也就是我們事先知道一些x數據,以及對應的y)進行訓練。 ? 例如: ?
信用額度 | 還款逾期率 |
100000 | 0% |
20000 | 5% |
120000 | 15% |
100000 | 12.4% |
80000 | 35% |
我們希望利用這些x到y的樣本,反推出f(?)這個線性函數。
如圖1:在還款逾期率這個x和信用卡額度y這個空間里,我們有個很多樣本,需要預測的是這條直線y=wx+b長什么樣。
我們可以給機器設置一個規定的步長,窮舉出很多y=wx+b。但應該選擇哪個呢?
這里要引入:成本函數?J
成本函數的簡單定義:我們預測的直線到“每個樣本的距離之和”的平均值。
假設我們選定了一條直線或者說一個f(),那么在X(1)?給定情況下,y(1)是樣本對應的數值,是f()得出的數值。M為樣本個數。
這個函數就是這條我們預測的直線到每個樣本的距離之和的平均值。即我們應該找到一條直線,它距離每個樣本的平均距離最短。也就是對應成本函數最低的那個。
這里可能大家有些懵,我們梳理一下:
這里有幾個概念:真實世界發生的事件,被數據記錄下來,被記錄下來并拿來做
樣本的,這三個層次是不是逐漸縮小了?再往后,我們訓練產生一個y=wx+b,其目標是利用樣本數據訓練一個規律,從而可以預測真實世界。簡言之,第一件事是訓練出很多y=wx+b,第二件是比較哪個y=wx+b更好,第三件是選出那個最好的。
在實際操作中,計算機會算出各種可能的f( ),并算出相對應的成本函數,這個成本函數的取值就像圖3顯示的,是一個曲折的球面,機器利用規則在尋找那個山谷的最低點,也就是成本函數取值最小那個點,這個點所對應的f(),就是我們要找到的那個。這種方法就是梯度下降。
圖3
因此,計算機學習經驗E的過程,就是給定一部分x,y數據(樣本),預測總體上f( )長什么樣。利用的方法就是通過梯度下降的方法,找到成本函數最低的那個f( )。
所謂梯度下降,其原理就是提前設置一個學習率。學習率是告訴計算機該以什么變動頻率產生多個f( )用來比較。如果這個f( )是個線性方程,其中一個學習率就是這個斜率的變化。比如,機器預測這個方程式y=3x,如果學習率是0.1,那么下一個預測的就是y=3.1x。機器學習,就是這樣每得出一個方程,就計算一個相應的成本函數,然后通過梯度逐步下降原則,找到成本函數最小的方程。
通過梯度下降計算后,選出最優f( ),計算機就能夠完成任務T。在例子中就是,如果有新的還款逾期率數據,機器可以根據f( )預測相對應的信用卡額度,從而給出更合理的銀行客戶信用額度,因此提升了銀行服務客戶效率,帶來了信用卡對應收入的提高。
機器學習的數學基礎——向量
剛才那個例子,X是還款逾期率,也就是說只有一個變量。但現實生活中,影響信用額度的不只是一個變量。還會有性別、年齡、地區、年薪、存款額、信用卡交易額、違約次數等諸多特征,如下表(圖4)。 ?
圖4 ? 表格中是兩個樣本,每個樣本都是一組數據,是銀行客戶的基本畫像以及交易行為。銀行客戶的信用卡額度應該是這些信息綜合決定。 ? 這里每一行數據,稱為一個向量;可以表示為: ? ? 每個向量里都包含了各種特征數據。 ? 向量是高維空間的某個點,在這個例子中這個高維空間就是由這8個特征類別組成的高維空間。 ? 相比較y=f(x)在二維,y=f( )我們需要在這個高維空間去計算。 ? 這個從y=f(x)到y=f( )的轉換非常重要,是一定要理解的概念,整個AI的數學基礎都建立在最小的計算單元——向量上。 ? 為什么要升到這個高維度來看數據?這里有個背景,就是我們希望數學公式盡量是線性方程,而不是多元方程;只有當數據被放到一個非常大的維度中,數據才可以更容易呈現線性關系。 ? ? ?
機器學習的進階——神經網絡
另外,在開始之前,有必要再介紹一下神經網絡基礎概念
我們定義樣本數據:X(1)?X(2)?X(3)?X(4)…X(i)
每個樣本數據都是一個個向量形式,一共i個樣本,
比如
即每個樣本有8個特征
如果我們把y=f( )換一個形式表達,就如下圖
?
?
即每個X(1)的向量特征值參與計算,最后通過梯度下降的方法優化成本函數,得到f( )。
那么神經網絡,就是在圖5這個計算基礎中間,加入了幾個隱藏層,如圖6就是加入三層隱藏層的神經網絡。神經網絡的作用主要是進一步提取新的特征,特別是那些隱藏的以及非線性的特征。
我們舉個例子,還是信用額度計算問題(見圖7),加入我們設計一層隱藏層,這個隱藏層對應的四個節點,分別是掙錢能力、還錢能力、對銀行忠誠度、信用習慣,這四個特征是先前數據樣本里沒有提供的字段。這些節點要分別跟我們熟悉的八個特征逐一進行計算,找出其相關性,從而得到一個更精準的信用額度。
其中掙錢能力、還錢能力、對銀行的忠誠度、信用習慣是我們為了便于理解而人為設置的,現實中機器可以自動計算出相應的可能隱藏層。
在很多神經網絡里,這個隱藏層數可以達到幾十層。某種意義上神經網絡就是對數據原有特征的進一步補充,找出那些隱藏在數據里非線性的相關性,作為新的特征加以計算,提升模型能力,可謂之深度學習。深度學習是機器學習里面的一個分支,但目前在各行各業得到了廣泛的應用。
簡要總結
講到這里,我們把機器學習的最基本概念做一個簡要總結:
① 機器學習基礎流程中我們要搞清楚什么是訓練什么是執行,另外“持續優化”是重中之重;第四范式在這個層面上不斷掉坑不斷爬出來,有多年積累。未來企業的治理結構里很可能會設置核心競爭力北極星指標,并通過智能化加以實現;但真正的壁壘就是這個“持續優化”。
② 機器學習的“訓練”部分就是找到f( ),即成本函數按照梯度下降的方法找到最優的f( )。大家理解了找f(),才能進入各種算法討論。
③ 強調向量的概念。這里數學上的背景是,我們不希望總是處理多元方程或者叫非線性問題,往往把數據放到一個高維空間,總是可以找到線性關系,當然這增加了非常大的計算壓力。這個高維空間的新世界,是我們一定要有概念的,雖然這有些反直覺,而且也沒有物理上映射。
④ 神經網絡是在給定樣本,給定向量特征情況下,對數據特征進一步的補充和強化。神經網絡或者深度學習是未來的發展方向,不需要不明覺厲,但可能會越來越多地聽到。當然只從特征強化的角度,解釋神經網絡還是遠遠不夠的,但至少是個不錯的開始。
這樣介紹AI其實很大膽,跟經典教科書不太一樣,再次強調我是門外漢出身,只是學了一 點之后的經驗之談,會有很多錯誤也一定不全面,也許半年后回過頭我會有不同的感悟和心得,到時再給大家補充。
編輯:黃飛
?
評論
查看更多