- 機(jī)器學(xué)習(xí)(第2版)
- 趙衛(wèi)東 董亮編著
- 1814字
- 2025-01-16 17:43:23
1.5 機(jī)器學(xué)習(xí)的流程
機(jī)器學(xué)習(xí)的流程包括明確目標(biāo)任務(wù)、收集數(shù)據(jù)、數(shù)據(jù)預(yù)處理、數(shù)據(jù)建模、模型訓(xùn)練、模型評估、模型應(yīng)用等步驟。首先要從業(yè)務(wù)的角度分析,然后提取相關(guān)的數(shù)據(jù)進(jìn)行探查,發(fā)現(xiàn)其中的問題,再依據(jù)各算法的特點(diǎn)選擇合適的模型進(jìn)行實(shí)驗(yàn)驗(yàn)證,評估各模型的結(jié)果,最終選擇合適的模型進(jìn)行應(yīng)用。
1.明確目標(biāo)任務(wù)
應(yīng)用機(jī)器學(xué)習(xí)解決實(shí)際問題,首先要明確目標(biāo)任務(wù),這是機(jī)器學(xué)習(xí)算法選擇的關(guān)鍵。明確要解決的問題和業(yè)務(wù)需求,才可能基于現(xiàn)有數(shù)據(jù)設(shè)計(jì)或選擇算法。例如,在有監(jiān)督學(xué)習(xí)中對定性問題可用分類算法,對定量問題可用回歸算法;在無監(jiān)督學(xué)習(xí)中,如果有樣本細(xì)分則可應(yīng)用聚類算法,如需找出各數(shù)據(jù)項(xiàng)之間的內(nèi)在聯(lián)系,可應(yīng)用關(guān)聯(lián)分析。
2.收集數(shù)據(jù)
數(shù)據(jù)要有代表性并盡量覆蓋領(lǐng)域,否則容易出現(xiàn)過擬合或欠擬合。對于分類問題,如果樣本數(shù)據(jù)不平衡,不同類別的樣本數(shù)量比例過大,會影響模型的準(zhǔn)確性。還要對數(shù)據(jù)的量級進(jìn)行評估,包括樣本量和特征數(shù),可以估算出數(shù)據(jù)以及分析對內(nèi)存的消耗,判斷訓(xùn)練過程中內(nèi)存是否過大,否則需要改進(jìn)算法或使用一些降維技術(shù),或者使用分布式機(jī)器學(xué)習(xí)技術(shù)。
3.?dāng)?shù)據(jù)預(yù)處理
獲得數(shù)據(jù)以后,不必急于創(chuàng)建模型,可先對數(shù)據(jù)進(jìn)行一些探索,了解數(shù)據(jù)的大致結(jié)構(gòu)、數(shù)據(jù)的統(tǒng)計(jì)信息、數(shù)據(jù)噪聲及數(shù)據(jù)分布等。在此過程中,為了更好地探索數(shù)據(jù),可使用數(shù)據(jù)可視化方法。
通過數(shù)據(jù)探索后,可能會發(fā)現(xiàn)不少問題,如缺失數(shù)據(jù)、數(shù)據(jù)不規(guī)范、數(shù)據(jù)分布不均衡、數(shù)據(jù)異常、數(shù)據(jù)冗余等,這些問題都會影響數(shù)據(jù)質(zhì)量。為此,需要對數(shù)據(jù)進(jìn)行預(yù)處理,這部分工作在機(jī)器學(xué)習(xí)中非常重要,特別是在生產(chǎn)環(huán)境中的機(jī)器學(xué)習(xí),數(shù)據(jù)往往是原始、未加工和處理過的,數(shù)據(jù)預(yù)處理常常占據(jù)整個(gè)機(jī)器學(xué)習(xí)過程的大部分時(shí)間。歸一化、離散化、缺失值處理、去除共線性等,是機(jī)器學(xué)習(xí)常用的預(yù)處理方法。
4.?dāng)?shù)據(jù)建模
應(yīng)用特征選擇方法,可以從數(shù)據(jù)中提取出合適的特征,并將其應(yīng)用于模型中得到較好的結(jié)果。篩選出顯著特征需要理解業(yè)務(wù),并對數(shù)據(jù)進(jìn)行分析。特征選擇是否合適,往往會直接影響模型的結(jié)果。對于好的特征,使用簡單的算法也能得出良好、穩(wěn)定的結(jié)果。特征選擇時(shí)可應(yīng)用特征有效性分析技術(shù),如相關(guān)系數(shù)、卡方檢驗(yàn)、平均互信息、條件熵等方法。
訓(xùn)練模型前,一般會把數(shù)據(jù)集分為訓(xùn)練集和測試集,或?qū)τ?xùn)練集再細(xì)分為訓(xùn)練集和驗(yàn)證集,從而對模型的泛化能力進(jìn)行評估。
模型本身并沒有優(yōu)劣。在模型選擇時(shí),一般不存在在任何情況下都表現(xiàn)很好的算法,這又稱為“沒有免費(fèi)的午餐”原則。因此在實(shí)際選擇時(shí),一般會用幾種不同的方法來進(jìn)行模型訓(xùn)練,然后比較它們的性能,從中選擇最優(yōu)的一個(gè)。不同的模型使用不同的性能衡量指標(biāo)。
5.模型訓(xùn)練
在模型訓(xùn)練過程中,需要對模型超參數(shù)進(jìn)行調(diào)優(yōu),如果對算法原理理解不夠透徹,往往無法快速定位能決定模型優(yōu)劣的模型參數(shù),因此在訓(xùn)練過程中,對機(jī)器學(xué)習(xí)算法原理的要求較高,理解越深入,就越容易發(fā)現(xiàn)問題的原因,從而確定合理的調(diào)優(yōu)方案。
6.模型評估
使用訓(xùn)練數(shù)據(jù)構(gòu)建模型后,需使用測試數(shù)據(jù)對模型進(jìn)行測試和評估,測試模型對新數(shù)據(jù)的泛化能力。如果測試結(jié)果不理想,則分析原因并進(jìn)行模型優(yōu)化,如采用手動調(diào)節(jié)參數(shù)等方法。如果出現(xiàn)過擬合,特別是在回歸類問題中,則可以考慮使用正則化方法來降低模型的泛化誤差。可以對模型進(jìn)行診斷以確定模型調(diào)優(yōu)的方向與思路,過擬合、欠擬合判斷是模型診斷中重要的一步。常見的方法有交叉驗(yàn)證、繪制學(xué)習(xí)曲線等。過擬合的基本調(diào)優(yōu)思路是增加數(shù)據(jù)量,降低模型復(fù)雜度。欠擬合的基本調(diào)優(yōu)思路是提高特征數(shù)量和質(zhì)量,增加模型復(fù)雜度。
誤差分析是通過觀察產(chǎn)生誤差的樣本,分析誤差產(chǎn)生的原因。一般的分析流程是依次驗(yàn)證數(shù)據(jù)質(zhì)量、算法選擇、特征選擇、參數(shù)設(shè)置等,其中對數(shù)據(jù)質(zhì)量的檢查最容易忽視,常常在反復(fù)調(diào)參很久后才發(fā)現(xiàn)數(shù)據(jù)預(yù)處理沒有做好。一般情況下,模型調(diào)整后,需要重新訓(xùn)練和評估,因此機(jī)器學(xué)習(xí)的模型建立過程就是不斷地嘗試,并最終使模型達(dá)到最優(yōu)狀態(tài),從這一點(diǎn)看,機(jī)器學(xué)習(xí)具有一定的藝術(shù)性。
在工程實(shí)現(xiàn)上,提升算法準(zhǔn)確度可以通過特征清洗和預(yù)處理等方式,也可以通過模型集成的方式。一般情況下,直接調(diào)參的工作不會很多。畢竟大量數(shù)據(jù)訓(xùn)練起來很慢,而且效果難以保證。
這部分內(nèi)容將在本書第2章中詳細(xì)介紹。
7.模型應(yīng)用
模型應(yīng)用主要與工程實(shí)現(xiàn)的相關(guān)性比較大。工程上是結(jié)果導(dǎo)向,模型在線上運(yùn)行的效果直接決定模型的好壞,不單純包括其準(zhǔn)確程度、誤差等,還包括其運(yùn)行的速度(時(shí)間復(fù)雜度)、資源消耗程度(空間復(fù)雜度)、穩(wěn)定性是否可接受等。
- 機(jī)器人構(gòu)建實(shí)戰(zhàn)
- AI落地:讓人工智能為你所用
- 人工智能通識
- 2019年華北五省(市、自治區(qū))大學(xué)生機(jī)器人大賽:人工智能與機(jī)器人創(chuàng)意設(shè)計(jì)賽論文集
- 互聯(lián)網(wǎng)下半場
- 突破邊界:AI大模型驅(qū)動數(shù)智化能力變革
- 解碼智能時(shí)代2021:來自未來的數(shù)智圖譜
- 深度強(qiáng)化學(xué)習(xí)實(shí)踐(原書第2版)
- 深度學(xué)習(xí)詳解:基于李宏毅老師“機(jī)器學(xué)習(xí)”課程
- 大模型工程化:AI驅(qū)動下的數(shù)據(jù)體系
- 強(qiáng)化學(xué)習(xí):原理與Python實(shí)現(xiàn)
- 第五范式
- 圖解人工智能
- 智能體時(shí)代
- 機(jī)器人愛好者(第3輯)