討論問題的前提是概念的澄清,概念的混淆是研發(fā)溝通中的一大障礙,極大地影響了溝通的效率。在人工智能尤其是機器學習領域,算法和模型是兩個相關而又有區(qū)別的兩個概念,弄清二者的含義和聯(lián)系可以使我們討論的問題更加明確。
什么是算法?
在計算機領域,算法有著明確的定義。為了通俗起見,這里引用百度百科對算法的描述:
算法(Algorithm)是指解題方案的準確而完整的描述,是一系列解決問題的清晰指令,算法代表著用系統(tǒng)的方法描述解決問題的策略機制。
也就是說,對于算法而言,能夠?qū)σ欢ㄒ?guī)范的輸入,在有限時間內(nèi)獲得所要求的輸出。算法中的指令描述的是一個計算,當其運行時能從一個初始狀態(tài)和(可能為空的)初始輸入開始,經(jīng)過一系列有限而清晰定義的狀態(tài),最終產(chǎn)生輸出并停止于一個終態(tài)。
不同的算法可能用不同的時間、空間或效率來完成同樣的任務,一個算法的優(yōu)劣可以用空間復雜度與時間復雜度來衡量。
什么是模型?
模型是一個概念外延非常廣泛的詞,這里同樣引用百度百科中的描述:
通過主觀意識借助實體或者虛擬表現(xiàn),構(gòu)成客觀闡述形態(tài)結(jié)構(gòu)的一種表達目的的物件(物件并不等于物體,不局限于實體與虛擬、不限于平面與立體)。
模型可以是模型玩具,科學模型,經(jīng)濟學模型,邏輯模型等等,例如,地球儀就是就是地球的模型,理性人經(jīng)濟人是經(jīng)濟學關于人行為的模型,計算機網(wǎng)絡中的7層協(xié)議是網(wǎng)絡協(xié)議的模型等等。
其中,科學模型是科學研究中對一類研究方法的通稱,使用數(shù)學公式、電腦模擬或簡單的圖示來表示一個簡化的自然界,透過分析這個模型,以期能夠進一步了解科學,包括說明、驗證假說、或資料分析。依據(jù)不同需求,科學模型可以借由概念模型幫助了解現(xiàn)象,操作模型給出操作型定義,數(shù)學模型幫助量化,以及用圖像模型將抽象概念可視化。
需要重點關注的是數(shù)學模型。數(shù)學模型是關于部分現(xiàn)實世界以及為一種特殊目的而作的一個抽象的、簡化的結(jié)構(gòu),用字母、數(shù)字及其它數(shù)學符號建立起來的等式或不等式,以及圖表、圖像、框圖等描述客觀事物的特征及其內(nèi)在聯(lián)系的數(shù)學結(jié)構(gòu)表達式。
簡單來說, 模型是對事物的抽象。
機器學習中的算法與模型
在具體的機器學習領域,算法和模型也有著更為具體的定義。
機器學習中的"算法"
機器學習中的算法是指一種具體的計算方法,也就是如何求解全局最優(yōu)解,并使得這個過程高效而且準確,本質(zhì)上就是計算機算法。
機器學習算法執(zhí)行“模式識別”,從數(shù)據(jù)中“學習”,或者對數(shù)據(jù)集進行“擬合”。機器學習算法可以用偽代碼來描述,可以用任何一種現(xiàn)代編程語言來實現(xiàn),對算法效率的分析和描述也是如此。多種機器學習算法可以在一起實現(xiàn),并在具有標準應用程序編程接口(API)的庫中提供。一個流行的例子是 scikit-learn 庫,它提供了 Python 中許多分類、回歸和聚類等機器學習算法的實現(xiàn)。
機器學習中的“模型”
機器學習中的“模型”是運行在數(shù)據(jù)集上的機器學習算法的輸出,表示機器學習算法所學到的內(nèi)容,即用于進行預測所需的規(guī)則、數(shù)字和任何其他特定算法的數(shù)據(jù)結(jié)構(gòu)。也就是說,機器學習模型是一個由機器學習算法自動編寫、創(chuàng)建或?qū)W習的程序,用來解決一類具體的問題。在某種意義上看,數(shù)據(jù)結(jié)構(gòu)可以看作是一種模型,下面是BTree和神經(jīng)網(wǎng)絡模型的對比。
機器學習要考慮的主要問題是學習什么樣的模型。例如,在監(jiān)督學習過程中,模型就是所要學習的條件概率分布或決策函數(shù)。數(shù)據(jù)構(gòu)成的樣本空間中可能包含各種條件概率分布或者決策函數(shù),每一個都對應著一個模型,那么這個樣本空間中的模型個數(shù)就有多個。
機器學習中與模型相關的另一個概念是策略。策略是從樣本空間中挑選出參數(shù)最優(yōu)的模型的準則,模型的分類或預測結(jié)果與實際情況的誤差(損失函數(shù))越小,模型就越好。也就是說,策略就是通過引入損失函數(shù)的方式來度量模型的好壞。
機器學習中算法與模型的關系
算法和模型往往都是分不開的。算法是一類問題的解答,是模型建立流程的一個環(huán)節(jié),也是賦予模型“思考”能力的環(huán)節(jié)。而模型則是一系列算法的數(shù)學表達,同時包含了數(shù)據(jù)以及任務的概念。因此,我們評估一個模型的好壞,而不是評估算法的好壞,算法只有其適用環(huán)境和場景。
就機器學習而言,通俗來講,模型可以近似地理解為目標函數(shù),算法則是求解該目標函數(shù)的方法。所有問題都可以有多種建模的方法,比如分類問題可以用SVM或者NB來做,但它們的目標函數(shù)不同。例如,在決策樹中,其模型可以是二叉樹模型,如果寫成目標函數(shù),那么則是一個分段函數(shù)。有了這個目標函數(shù),怎么求解呢?一種典型的算法是貪心算法,或者叫啟發(fā)式算法,從根開始,采取一定的分裂原則進行分裂,這個分裂的原則是信息增益最大化,Gini系數(shù)方差最小。
基于決策樹的方案及其演化變種,到目前為止,其根本采用的方式都是啟發(fā)式分裂,無論是后續(xù)的Bagging,Boosting,隨機森林,深度森林,算法在本質(zhì)上都沒改變,只是采用的模型在變化而已。
小結(jié)
算法和模型都有著廣泛的一般性意義。具體地,在機器學習領域,算法是在代碼中實現(xiàn)并在數(shù)據(jù)上運行的過程。模型由算法輸出,由模型數(shù)據(jù)和預測算法組成。機器學習算法提供了一種自動編程的類型,其中機器學習模型代表程序。明晰了概念,就有了進一步學習和討論的基礎。
文章內(nèi)容僅供閱讀,不構(gòu)成投資建議,請謹慎對待。投資者據(jù)此操作,風險自擔。
2024年的Adobe MAX 2024發(fā)布會上,Adobe推出了最新版本的Adobe Creative Cloud。
奧維云網(wǎng)(AVC)推總數(shù)據(jù)顯示,2024年1-9月明火炊具線上零售額94.2億元,同比增加3.1%,其中抖音渠道表現(xiàn)優(yōu)異,同比有14%的漲幅,傳統(tǒng)電商略有下滑,同比降低2.3%。
“以前都要去窗口辦,一套流程下來都要半個月了,現(xiàn)在方便多了!”打開“重慶公積金”微信小程序,按照提示流程提交相關材料,僅幾秒鐘,重慶市民曾某的賬戶就打進了21600元。
華碩ProArt創(chuàng)藝27 Pro PA279CRV顯示器,憑借其優(yōu)秀的性能配置和精準的色彩呈現(xiàn)能力,為您的創(chuàng)作工作帶來實質(zhì)性的幫助,雙十一期間低至2799元,性價比很高,簡直是創(chuàng)作者們的首選。
9月14日,2024全球工業(yè)互聯(lián)網(wǎng)大會——工業(yè)互聯(lián)網(wǎng)標識解析專題論壇在沈陽成功舉辦。